singletons-presburger

Presburger Arithmetic Solver for GHC Type-level natural numbers with Singletons package.

https://github.com/konn/ghc-typelits-presburger#readme

Version on this page:0.7.2.0
LTS Haskell 22.36:0.7.4.0
Stackage Nightly 2024-10-05:0.7.4.0
Latest on Hackage:0.7.4.0

See all snapshots singletons-presburger appears in

BSD-3-Clause licensed by Hiromi ISHII
Maintained by konn.jinro _at_ gmail.com
This version can be pinned in stack with:singletons-presburger-0.7.2.0@sha256:bab047b2ce2a8afa15f82e7772a594c60929872e6828137f0664f851c02e66dd,2736

Module documentation for 0.7.2.0

The singletons-presburger plugin augments GHC type-system with Presburger Arithmetic Solver for Type-level natural numbers, with integration with singletons package.

You can use by adding this package to dependencies and add the following pragma to the head of .hs files:

OPTIONS_GHC -fplugin Data.Singletons.TypeNats.Presburger

Changes

Changelog

0.7.2.0

  • Supports GHC 9.6

0.7.1.0

  • Proper Support of GHC 9.4 (Now can solve Assert properly)

0.7.0.0

  • Support GHC 9.4
  • The plugin can solve constraints involving type-level Assert, Not, (&&), (||), and/or If from new base.

0.6.0.0

  • Stop discharging redundant constraints
  • Support GHC 9.0.1
  • Drop a support for GHC <8.6

0.4.0.0

  • Fixes constraint solving (fixes #9); this may change the previous (unsound) behaviour, and hence it is breaking change.

0.3.0.1

  • Supports GHC >= 8.10.

0.3.0.0

  • Initial release: separated singletons support from ghc-typelits-presburger