Maintainer | bastiaan.heeren@ou.nl |
---|---|
Stability | provisional |
Portability | portable (depends on ghc) |
Safe Haskell | None |
Language | Haskell98 |
some of these help functions may have a broader scope and could be moved to other parts of the framework (eg. Common)
Synopsis
- exhaustiveStrategy :: IsTerm a => [Rule a] -> Strategy (Context a)
- exhaustiveUse :: (IsTerm a, IsTerm b) => [Rule a] -> Strategy (Context b)
- exhaustiveSomewhere :: IsStrategy f => [f (Context a)] -> Strategy (Context a)
- smartRule :: Rule Expr -> Rule Expr
- mergeConstantsWith :: (Expr -> Bool) -> Expr -> Expr
- mergeConstants :: Expr -> Expr
- plainNatView :: View Expr Integer
- myIntegerView :: View Expr Integer
- plainRationalView :: View Rational (Integer, Integer)
- eqView :: View a b -> View (Equation a) (b, b)
- relationView :: View (Equation a) (Relation a)
- naturalRules :: [Rule Expr]
- rationalRules :: [Rule Expr]
- coverUpRulesX :: [Rule (Equation Expr)]
- sortExpr :: Expr -> Expr
- sortEquation :: Equation Expr -> Equation Expr
- sortOrList :: OrList (Equation Expr) -> OrList (Equation Expr)
- class SemEq a where
- takeRoot :: Integer -> Integer -> Maybe Integer
- swap :: (a, b) -> (b, a)
- split :: Eq a => (a -> a -> t) -> [a] -> [(t, [a])]
- toMaybe :: (a -> Bool) -> a -> Maybe a
- joinBy :: Eq a => (a -> a -> Bool) -> [a] -> [[a]]
- dropUntil :: (a -> a -> Bool) -> [a] -> [a]
- holes :: [a] -> [(a, [a], a -> [a])]
- twoNonAdjacentHoles :: [a] -> [((a, a), a -> [a])]
Documentation
exhaustiveStrategy :: IsTerm a => [Rule a] -> Strategy (Context a) Source #
Strategy functions -------------------------------------------------------
exhaustiveSomewhere :: IsStrategy f => [f (Context a)] -> Strategy (Context a) Source #
smartRule :: Rule Expr -> Rule Expr Source #
Rule functions -----------------------------------------------------------
mergeConstants :: Expr -> Expr Source #
plainNatView :: View Expr Integer Source #
View functions -----------------------------------------------------------
naturalRules :: [Rule Expr] Source #
Rule collections ---------------------------------------------------------
rationalRules :: [Rule Expr] Source #
sortExpr :: Expr -> Expr Source #
Common functions ---------------------------------------------------------
twoNonAdjacentHoles :: [a] -> [((a, a), a -> [a])] Source #