Floating point over nullables, sort-erased #
One lifted constructor per liftable operator, <id>?, each answering none unless every argument
is some.
A rounding-mode argument becomes nullable along with the rest: fpAdd? takes a rounding mode of
sort (Nullable RoundingMode), as every argument of a lifted operator is nullable.
fpRem lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpRem? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_REM #[lft, rgt]
Instances For
fpOfBits lifted over nullables, strictly: none unless every argument is some.
Equations
- sign.fpOfBits? exponent significand = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_FP #[sign, exponent, significand]
Instances For
fpMax lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpMax? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_MAX #[lft, rgt]
Instances For
fpIsSubnormal lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsSubnormal? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_SUBNORMAL #[fp]
Instances For
fpDiv lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpDiv? lft rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_DIV #[rm, lft, rgt]
Instances For
fpSqrt lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpSqrt? fp = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_SQRT #[rm, fp]
Instances For
fpGt lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpGt? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_GT #[lft, rgt]
Instances For
fpIsNan lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsNan? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_NAN #[fp]
Instances For
fpFma lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpFma? a b c = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_FMA #[rm, a, b, c]
Instances For
fpLe lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpLe? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_LEQ #[lft, rgt]
Instances For
fpToReal lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpToReal? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_TO_REAL #[fp]
Instances For
fpRti lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpRti? fp = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_RTI #[rm, fp]
Instances For
fpGe lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpGe? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_GEQ #[lft, rgt]
Instances For
fpAbs lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpAbs? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_ABS #[fp]
Instances For
fpEq lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpEq? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_EQ #[lft, rgt]
Instances For
fpSub lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpSub? lft rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_SUB #[rm, lft, rgt]
Instances For
fpIsNeg lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsNeg? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_NEG #[fp]
Instances For
fpMul lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpMul? lft rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_MULT #[rm, lft, rgt]
Instances For
fpIsPos lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsPos? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_POS #[fp]
Instances For
fpNeg lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpNeg? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_NEG #[fp]
Instances For
fpMin lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpMin? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_MIN #[lft, rgt]
Instances For
fpIsZero lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsZero? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_ZERO #[fp]
Instances For
fpLt lifted over nullables, strictly: none unless every argument is some.
Equations
- lft.fpLt? rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_LT #[lft, rgt]
Instances For
fpAdd lifted over nullables, strictly: none unless every argument is some.
Equations
- rm.fpAdd? lft rgt = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_ADD #[rm, lft, rgt]
Instances For
fpIsNormal lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsNormal? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_NORMAL #[fp]
Instances For
fpIsInf lifted over nullables, strictly: none unless every argument is some.
Equations
- fp.fpIsInf? = Cvc.runUnsafe✝ fun (tm : cvc5.TermManager) => tm.mkNullableLift cvc5.Kind.FLOATINGPOINT_IS_INF #[fp]