Portability | unportable |
---|---|
Stability | unstable |
Maintainer | Andreas Schnabl <andreas.schnabl@uibk.ac.at> |
Safe Haskell | Safe-Infered |
This module defines the processor for polynomial interpretations with natural coefficients.
- simplePolynomial :: ProcessorInstance NaturalPI
- linearPolynomial :: ProcessorInstance NaturalPI
- stronglyLinearPolynomial :: ProcessorInstance NaturalPI
- simpleMixedPolynomial :: ProcessorInstance NaturalPI
- quadraticPolynomial :: ProcessorInstance NaturalPI
- customPolynomial :: ([Variable] -> [SimpleMonomial]) -> ProcessorInstance NaturalPI
Documentation
simplePolynomial :: ProcessorInstance NaturalPI
Options for simple
polynomial interpretations.
linearPolynomial :: ProcessorInstance NaturalPI
Options for linear
polynomial interpretations.
stronglyLinearPolynomial :: ProcessorInstance NaturalPI
Options for strongly linear
polynomial interpretations.
simpleMixedPolynomial :: ProcessorInstance NaturalPI
Options for simple mixed
polynomial interpretations.
quadraticPolynomial :: ProcessorInstance NaturalPI
Options for quadratic mixed
polynomial interpretations.
customPolynomial :: ([Variable] -> [SimpleMonomial]) -> ProcessorInstance NaturalPI
Option for polynomials of custom shape, as defined by the first argument.
This function receives a list of variables
denoting the n
arguments of the interpretation function. The return value of type [SimpleMonomial
]
corresponds to the list of monomials of the constructed interpretation function.
A polynomial is a list of unique SimpleMonomial
, where SimpleMonomial
are
considered equal if the set variables together with powers match.
SimpleMonomial
can be build using ^^^
, constant
and mono
.
For instance, linear interpretations are constructed using the function
vs -> [constant] ++ [ v^^^1 | v <- vs]
.