Copyright | (c) Sirui Lu 2024 |
---|---|
License | BSD-3-Clause (see the LICENSE file) |
Maintainer | siruilu@cs.washington.edu |
Stability | Experimental |
Portability | GHC only |
Safe Haskell | None |
Language | Haskell2010 |
Grisette.Internal.SymPrim.SymFP
Contents
Description
Documentation
newtype SymFP (eb :: Nat) (sb :: Nat) Source #
Symbolic IEEE 754 floating-point number with eb
exponent bits and sb
significand bits.
>>>
"a" + 2.0 :: SymFP 11 53
(+ a 2.0)>>>
fpAdd rne "a" 2.0 :: SymFP 11 53
(fp.add rne a 2.0)
More operations are available. Please refer to Grisette.Core for more information.
Instances
newtype SymFPRoundingMode Source #
Symbolic floating-point rounding mode.
Constructors
SymFPRoundingMode (Term FPRoundingMode) |
Instances
NFData SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods rnf :: SymFPRoundingMode -> () # | |||||||||
IsString SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods fromString :: String -> SymFPRoundingMode # | |||||||||
Generic SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Associated Types
Methods from :: SymFPRoundingMode -> Rep SymFPRoundingMode x # to :: Rep SymFPRoundingMode x -> SymFPRoundingMode # | |||||||||
Show SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods showsPrec :: Int -> SymFPRoundingMode -> ShowS # show :: SymFPRoundingMode -> String # showList :: [SymFPRoundingMode] -> ShowS # | |||||||||
Eq SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods (==) :: SymFPRoundingMode -> SymFPRoundingMode -> Bool # (/=) :: SymFPRoundingMode -> SymFPRoundingMode -> Bool # | |||||||||
Apply SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Associated Types
Methods apply :: SymFPRoundingMode -> FunType SymFPRoundingMode Source # | |||||||||
IEEEFPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods rne :: SymFPRoundingMode Source # rna :: SymFPRoundingMode Source # rtp :: SymFPRoundingMode Source # | |||||||||
ITEOp SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.ITEOp Methods symIte :: SymBool -> SymFPRoundingMode -> SymFPRoundingMode -> SymFPRoundingMode Source # | |||||||||
EvalSym SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.EvalSym Methods evalSym :: Bool -> Model -> SymFPRoundingMode -> SymFPRoundingMode Source # | |||||||||
ExtractSym SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ExtractSym Methods extractSym :: SymFPRoundingMode -> AnySymbolSet Source # extractSymMaybe :: forall (knd :: SymbolKind). IsSymbolKind knd => SymFPRoundingMode -> Maybe (SymbolSet knd) Source # | |||||||||
Mergeable SymFPRoundingMode Source # | |||||||||
PPrint SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.PPrint Methods pformat :: SymFPRoundingMode -> Doc ann Source # pformatPrec :: Int -> SymFPRoundingMode -> Doc ann Source # pformatList :: [SymFPRoundingMode] -> Doc ann Source # | |||||||||
SimpleMergeable SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SimpleMergeable Methods mrgIte :: SymBool -> SymFPRoundingMode -> SymFPRoundingMode -> SymFPRoundingMode Source # | |||||||||
SubstSym SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SubstSym Methods substSym :: forall cb sb (knd :: SymbolKind). (LinkedRep cb sb, IsSymbolKind knd) => TypedSymbol knd cb -> sb -> SymFPRoundingMode -> SymFPRoundingMode Source # | |||||||||
SymEq SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymEq Methods (.==) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # (./=) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # symDistinct :: [SymFPRoundingMode] -> SymBool Source # | |||||||||
SymOrd SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymOrd Methods (.<) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # (.<=) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # (.>) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # (.>=) :: SymFPRoundingMode -> SymFPRoundingMode -> SymBool Source # symCompare :: SymFPRoundingMode -> SymFPRoundingMode -> Union Ordering Source # | |||||||||
AllSyms SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
ConRep SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Associated Types
| |||||||||
Hashable SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
GenSym SymFPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods fresh :: MonadFresh m => SymFPRoundingMode -> m (Union SymFPRoundingMode) Source # | |||||||||
GenSym () SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods fresh :: MonadFresh m => () -> m (Union SymFPRoundingMode) Source # | |||||||||
GenSymSimple SymFPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods simpleFresh :: MonadFresh m => SymFPRoundingMode -> m SymFPRoundingMode Source # | |||||||||
GenSymSimple () SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods simpleFresh :: MonadFresh m => () -> m SymFPRoundingMode Source # | |||||||||
Solvable FPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods con :: FPRoundingMode -> SymFPRoundingMode Source # conView :: SymFPRoundingMode -> Maybe FPRoundingMode Source # sym :: Symbol -> SymFPRoundingMode Source # ssym :: Identifier -> SymFPRoundingMode Source # isym :: Identifier -> Int -> SymFPRoundingMode Source # | |||||||||
ToCon SymFPRoundingMode FPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon Methods | |||||||||
ToCon SymFPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon Methods toCon :: SymFPRoundingMode -> Maybe SymFPRoundingMode Source # | |||||||||
ToSym FPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym Methods | |||||||||
ToSym SymFPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym Methods | |||||||||
LinkedRep FPRoundingMode SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods underlyingTerm :: SymFPRoundingMode -> Term FPRoundingMode Source # wrapTerm :: Term FPRoundingMode -> SymFPRoundingMode Source # | |||||||||
Lift SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods lift :: Quote m => SymFPRoundingMode -> m Exp # liftTyped :: forall (m :: Type -> Type). Quote m => SymFPRoundingMode -> Code m SymFPRoundingMode # | |||||||||
ValidFP eb sb => UnifiedFPImpl 'S SymFP eb sb (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP Associated Types
| |||||||||
(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP Methods withBaseSafeFromFP :: (SafeFromFP NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m => r) -> r Source # | |||||||||
(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP Methods withBaseSafeFromFP :: (SafeFromFP NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m => r) -> r Source # | |||||||||
(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP Methods withBaseSafeFromFP :: (SafeFromFP NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m => r) -> r Source # | |||||||||
(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymWordN n) (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP Methods withBaseSafeFromFP :: (SafeFromFP NotRepresentableFPError (SymWordN n) (SymFP eb sb) SymFPRoundingMode m => r) -> r Source # | |||||||||
(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.SafeFromFP Methods safeFromFP :: SymFPRoundingMode -> SymFP eb sb -> m SymAlgReal Source # | |||||||||
(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.SafeFromFP Methods safeFromFP :: SymFPRoundingMode -> SymFP eb sb -> m SymInteger Source # | |||||||||
(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb, KnownNat n, 1 <= n) => SafeFromFP NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.SafeFromFP Methods safeFromFP :: SymFPRoundingMode -> SymFP eb sb -> m (SymIntN n) Source # | |||||||||
(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb, KnownNat n, 1 <= n) => SafeFromFP NotRepresentableFPError (SymWordN n) (SymFP eb sb) SymFPRoundingMode m Source # | |||||||||
Defined in Grisette.Internal.Core.Data.Class.SafeFromFP Methods safeFromFP :: SymFPRoundingMode -> SymFP eb sb -> m (SymWordN n) Source # | |||||||||
ValidFP eb sb => IEEEFPConvertible SymAlgReal (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods fromFPOr :: SymAlgReal -> SymFPRoundingMode -> SymFP eb sb -> SymAlgReal Source # toFP :: SymFPRoundingMode -> SymAlgReal -> SymFP eb sb Source # | |||||||||
ValidFP eb sb => IEEEFPConvertible SymInteger (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods fromFPOr :: SymInteger -> SymFPRoundingMode -> SymFP eb sb -> SymInteger Source # toFP :: SymFPRoundingMode -> SymInteger -> SymFP eb sb Source # | |||||||||
ValidFP eb sb => IEEEFPToAlgReal SymAlgReal (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods fpToAlgReal :: SymAlgReal -> SymFP eb sb -> SymAlgReal Source # | |||||||||
(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymIntN n) (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymWordN n) (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
ValidFP eb sb => IEEEFPRoundingOp (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP Methods fpAdd :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source # fpSub :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source # fpMul :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source # fpDiv :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source # fpFMA :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source # fpSqrt :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb Source # fpRoundToIntegral :: SymFPRoundingMode -> SymFP eb sb -> SymFP eb sb Source # | |||||||||
(ValidFP eb sb, ValidFP eb' sb') => IEEEFPConvertible (SymFP eb' sb') (SymFP eb sb) SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
type Rep SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP type Rep SymFPRoundingMode = D1 ('MetaData "SymFPRoundingMode" "Grisette.Internal.SymPrim.SymFP" "grisette-0.11.0.0-HndeEPlDvvDHSETLw6O8c" 'True) (C1 ('MetaCons "SymFPRoundingMode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term FPRoundingMode)))) | |||||||||
type FunType SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP | |||||||||
type ConType SymFPRoundingMode Source # | |||||||||
Defined in Grisette.Internal.SymPrim.SymFP |
Orphan instances
SymRep FPRoundingMode Source # | |||||
Associated Types
| |||||
LinkedRep FPRoundingMode SymFPRoundingMode Source # | |||||
Methods underlyingTerm :: SymFPRoundingMode -> Term FPRoundingMode Source # wrapTerm :: Term FPRoundingMode -> SymFPRoundingMode Source # | |||||
ValidFP eb sb => SymRep (FP eb sb) Source # | |||||
ValidFP eb sb => LinkedRep (FP eb sb) (SymFP eb sb) Source # | |||||