libghc-ghc-typelits-natnormalise-prof

GHC typechecker plugin for types of kind GHC.TypeLits.Nat; profiling libraries

Description

A type checker plugin for GHC that can solve equalities and inequalities of types of kind @Nat@, where these types are either:

  * Type-level naturals

  * Type variables

  * Applications of the arithmetic expressions (+,-,*,^).

It solves these equalities by normalising them to sort-of SOP (Sum-of-Products) form, and then perform a simple syntactic equality.

For example, this solver can prove the equality between:

(x + 2)^(y + 2)

and

4*x*(2 + x)^y + 4*(2 + x)^y + (2 + x)^y*x^2

Because the latter is actually the SOP normal form of the former.

To use the plugin, add the

OPTIONS_GHC -fplugin GHC.TypeLits.Normalise

Pragma to the header of your file.

This package provides a library for the Haskell programming language, compiled for profiling. See http://www.haskell.org/ for more information on Haskell.

Upload more screenshots

Please help extend the collection of screenshots. Just make a screenshot and upload it here. You don't need to register or anything.

Upload a screenshot

Hint: upload an image here from your clipboard with Ctrl-V


Homepage

https://www.clash-lang.org/


Install this software package

If the package is available for the distribution you are currently using on your computer then install the software by clicking on…

Install libghc-ghc-typelits-natnormalise-prof