Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data ScalExp
- data Error
- simplify :: ScalExp -> RangesRep -> ScalExp
- mkSuffConds :: ScalExp -> RangesRep -> Either Error [[ScalExp]]
- type RangesRep = Map VName (Int, Maybe ScalExp, Maybe ScalExp)
- ppRangesRep :: RangesRep -> String
- linFormScalE :: VName -> ScalExp -> RangesRep -> Either Error (Maybe (ScalExp, ScalExp))
- pickSymToElim :: RangesRep -> Set VName -> ScalExp -> Maybe VName
Documentation
Representation of a scalar expression, which is:
(i) an algebraic expression, e.g., min(a+b, a*b),
(ii) a relational expression: a+b < 5,
(iii) a logical expression: e1 and (not (a+b>5)
mkSuffConds :: ScalExp -> RangesRep -> Either Error [[ScalExp]] Source #
Extracts sufficient conditions for a LTH0 relation to hold
ppRangesRep :: RangesRep -> String Source #
Prettyprint a RangesRep
. Do not rely on the format of this
string. Does not include the loop nesting depth information.