SAT-Pol-0.1.0.0

Safe HaskellNone
LanguageHaskell2010

Heuristics

Synopsis

Documentation

type Heuristics = Set PolF2 -> [PolF2] -> [PolF2] Source #

The Heuristic data type indicates the order in which variables are forgotten.

monomialOrd :: Heuristics Source #

( monomialOrd ps vs ) is the list of variables which occurs in ps in the monomial order induced by the data type PolF2. For example:

>>> [x1,x2] = map var ["x1","x2"] :: [PolF2]
>>> monomialOrd (S.fromList [x1,x2,x1+1]) [x1,x2]
[x1,x2]

frequency :: Heuristics Source #

( frequency ps vs ) is the list of variables vs sorted by frequency of occurrence in ps. For example:

>>> [x1,x2] = map var ["x1","x2"] :: [PolF2]
>>> frequency (S.fromList [x1,x2,x1+1]) [x1,x2]
[x2,x1]

revFreq :: Heuristics Source #

( revFreq ps vs ) is the list of variables vs ordered in reverse order of frequency in ps. For example:

>>> [x1,x2] = map var ["x1","x2"] :: [PolF2]
>>> revFreq (S.fromList [x1,x2,x1+1]) [x1,x2]
[x1,x2]