grisette-0.11.0.0: Symbolic evaluation as a library
Copyright(c) Sirui Lu 2024
LicenseBSD-3-Clause (see the LICENSE file)
Maintainersiruilu@cs.washington.edu
StabilityExperimental
PortabilityGHC only
Safe HaskellNone
LanguageHaskell2010

Grisette.Internal.SymPrim.SymFP

Description

 
Synopsis

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.

Constructors

SymFP (Term (FP eb sb)) 

Instances

Instances details
ToCon SymFP32 Float Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

ToCon SymFP64 Double Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

ToSym Double SymFP64 Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

Methods

toSym :: Double -> SymFP64 Source #

ToSym Float SymFP32 Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

Methods

toSym :: Float -> SymFP32 Source #

ValidFP eb sb => UnifiedFPImpl 'S SymFP eb sb (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

Associated Types

type GetFP 'S 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

type GetFP 'S = SymFP
type GetFPRoundingMode 'S 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymWordN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

ValidFP eb sb => UnifiedFromIntegral 'S SymInteger (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeFromFP

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n, n ~ (eb + sb)) => UnifiedSafeBitCast 'S NotRepresentableFPError (SymFP eb sb) (SymIntN n) m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeBitCast

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n, n ~ (eb + sb)) => UnifiedSafeBitCast 'S NotRepresentableFPError (SymFP eb sb) (SymWordN n) m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeBitCast

(KnownNat n', 1 <= n', ValidFP eb sb) => UnifiedFromIntegral 'S (SymIntN n') (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral

Methods

withBaseFromIntegral :: (If (IsConMode 'S) (Integral (SymIntN n'), Num (SymFP eb sb)) (SymFromIntegral (SymIntN n') (SymFP eb sb)) => r) -> r Source #

(KnownNat n', 1 <= n', ValidFP eb sb) => UnifiedFromIntegral 'S (SymWordN n') (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral

Methods

withBaseFromIntegral :: (If (IsConMode 'S) (Integral (SymWordN n'), Num (SymFP eb sb)) (SymFromIntegral (SymWordN n') (SymFP eb sb)) => r) -> r Source #

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb, KnownNat n, 1 <= n) => SafeFromFP NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeFromFP

Methods

safeFromFP :: SymFPRoundingMode -> SymFP eb sb -> m (SymWordN n) Source #

ValidFP eb sb => GenSym () (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Methods

fresh :: MonadFresh m => () -> m (Union (SymFP eb sb)) Source #

ValidFP eb sb => GenSymSimple () (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Methods

simpleFresh :: MonadFresh m => () -> m (SymFP eb sb) Source #

ValidFP eb sb => SymFromIntegral SymInteger (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral

Lift (SymFP eb sb :: Type) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

lift :: Quote m => SymFP eb sb -> m Exp #

liftTyped :: forall (m :: Type -> Type). Quote m => SymFP eb sb -> Code m (SymFP eb sb) #

ValidFP eb sb => IEEEFPConvertible SymAlgReal (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPConvertible SymInteger (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPToAlgReal SymAlgReal (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

(ValidFP eb sb, r ~ (eb + sb), KnownNat r, 1 <= r, MonadUnion m, MonadError NotRepresentableFPError m) => SafeBitCast NotRepresentableFPError (SymFP eb sb) (SymIntN r) m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeBitCast

Methods

safeBitCast :: SymFP eb sb -> m (SymIntN r) Source #

(ValidFP eb sb, r ~ (eb + sb), KnownNat r, 1 <= r, MonadUnion m, MonadError NotRepresentableFPError m) => SafeBitCast NotRepresentableFPError (SymFP eb sb) (SymWordN r) m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeBitCast

Methods

safeBitCast :: SymFP eb sb -> m (SymWordN r) Source #

ValidFP eb sb => UnifiedSolvable 'S (SymFP eb sb) (FP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSolvable

Methods

withBaseSolvable :: (If (IsConMode 'S) (SymFP eb sb ~ FP eb sb) (Solvable (FP eb sb) (SymFP eb sb)) => r) -> r Source #

(ValidFP eb sb, r ~ (eb + sb)) => BitCast (SymIntN r) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCast :: SymIntN r -> SymFP eb sb Source #

(ValidFP eb sb, r ~ (eb + sb)) => BitCast (SymWordN r) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCast :: SymWordN r -> SymFP eb sb Source #

(KnownNat n, 1 <= n, ValidFP eb sb) => SymFromIntegral (SymIntN n) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral

Methods

symFromIntegral :: SymIntN n -> SymFP eb sb Source #

(KnownNat n, 1 <= n, ValidFP eb sb) => SymFromIntegral (SymWordN n) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral

Methods

symFromIntegral :: SymWordN n -> SymFP eb sb Source #

(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymIntN n) (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymWordN n) (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => Binary (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

put :: SymFP eb sb -> Put #

get :: Get (SymFP eb sb) #

putList :: [SymFP eb sb] -> Put #

ValidFP eb sb => Serial (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

serialize :: MonadPut m => SymFP eb sb -> m () #

deserialize :: MonadGet m => m (SymFP eb sb) #

ValidFP eb sb => Serialize (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

put :: Putter (SymFP eb sb) #

get :: Get (SymFP eb sb) #

NFData (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

rnf :: SymFP eb sb -> () #

ValidFP eb sb => IsString (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

fromString :: String -> SymFP eb sb #

ValidFP eb sb => Floating (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

pi :: SymFP eb sb #

exp :: SymFP eb sb -> SymFP eb sb #

log :: SymFP eb sb -> SymFP eb sb #

sqrt :: SymFP eb sb -> SymFP eb sb #

(**) :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

logBase :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

sin :: SymFP eb sb -> SymFP eb sb #

cos :: SymFP eb sb -> SymFP eb sb #

tan :: SymFP eb sb -> SymFP eb sb #

asin :: SymFP eb sb -> SymFP eb sb #

acos :: SymFP eb sb -> SymFP eb sb #

atan :: SymFP eb sb -> SymFP eb sb #

sinh :: SymFP eb sb -> SymFP eb sb #

cosh :: SymFP eb sb -> SymFP eb sb #

tanh :: SymFP eb sb -> SymFP eb sb #

asinh :: SymFP eb sb -> SymFP eb sb #

acosh :: SymFP eb sb -> SymFP eb sb #

atanh :: SymFP eb sb -> SymFP eb sb #

log1p :: SymFP eb sb -> SymFP eb sb #

expm1 :: SymFP eb sb -> SymFP eb sb #

log1pexp :: SymFP eb sb -> SymFP eb sb #

log1mexp :: SymFP eb sb -> SymFP eb sb #

Generic (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Associated Types

type Rep (SymFP eb sb) 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type Rep (SymFP eb sb) = D1 ('MetaData "SymFP" "Grisette.Internal.SymPrim.SymFP" "grisette-0.11.0.0-HndeEPlDvvDHSETLw6O8c" 'True) (C1 ('MetaCons "SymFP" 'PrefixI 'True) (S1 ('MetaSel ('Just "underlyingFPTerm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term (FP eb sb)))))

Methods

from :: SymFP eb sb -> Rep (SymFP eb sb) x #

to :: Rep (SymFP eb sb) x -> SymFP eb sb #

ValidFP eb sb => Num (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

(+) :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

(-) :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

(*) :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

negate :: SymFP eb sb -> SymFP eb sb #

abs :: SymFP eb sb -> SymFP eb sb #

signum :: SymFP eb sb -> SymFP eb sb #

fromInteger :: Integer -> SymFP eb sb #

ValidFP eb sb => Fractional (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

(/) :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb #

recip :: SymFP eb sb -> SymFP eb sb #

fromRational :: Rational -> SymFP eb sb #

ValidFP eb sb => Show (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

showsPrec :: Int -> SymFP eb sb -> ShowS #

show :: SymFP eb sb -> String #

showList :: [SymFP eb sb] -> ShowS #

ValidFP eb sb => Eq (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

(==) :: SymFP eb sb -> SymFP eb sb -> Bool #

(/=) :: SymFP eb sb -> SymFP eb sb -> Bool #

ValidFP eb sb => Apply (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Associated Types

type FunType (SymFP eb sb) 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type FunType (SymFP eb sb) = SymFP eb sb

Methods

apply :: SymFP eb sb -> FunType (SymFP eb sb) Source #

ValidFP eb sb => IEEEFPConstants (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPOp (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

fpAbs :: SymFP eb sb -> SymFP eb sb Source #

fpNeg :: SymFP eb sb -> SymFP eb sb Source #

fpRem :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

fpMinimum :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

fpMinimumNumber :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

fpMaximum :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

fpMaximumNumber :: SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

ValidFP eb sb => ITEOp (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.ITEOp

Methods

symIte :: SymBool -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

ValidFP eb sb => SymIEEEFPTraits (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => EvalSym (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.EvalSym

Methods

evalSym :: Bool -> Model -> SymFP eb sb -> SymFP eb sb Source #

ValidFP eb fb => ExtractSym (SymFP eb fb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ExtractSym

Methods

extractSym :: SymFP eb fb -> AnySymbolSet Source #

extractSymMaybe :: forall (knd :: SymbolKind). IsSymbolKind knd => SymFP eb fb -> Maybe (SymbolSet knd) Source #

ValidFP eb sb => Mergeable (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.Mergeable

ValidFP eb sb => PPrint (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.PPrint

Methods

pformat :: SymFP eb sb -> Doc ann Source #

pformatPrec :: Int -> SymFP eb sb -> Doc ann Source #

pformatList :: [SymFP eb sb] -> Doc ann Source #

ValidFP eb sb => SimpleMergeable (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SimpleMergeable

Methods

mrgIte :: SymBool -> SymFP eb sb -> SymFP eb sb -> SymFP eb sb Source #

ValidFP eb sb => SubstSym (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SubstSym

Methods

substSym :: forall cb sb0 (knd :: SymbolKind). (LinkedRep cb sb0, IsSymbolKind knd) => TypedSymbol knd cb -> sb0 -> SymFP eb sb -> SymFP eb sb Source #

ValidFP eb sb => SymEq (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymEq

Methods

(.==) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

(./=) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

symDistinct :: [SymFP eb sb] -> SymBool Source #

ValidFP eb sb => SymOrd (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymOrd

Methods

(.<) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

(.<=) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

(.>) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

(.>=) :: SymFP eb sb -> SymFP eb sb -> SymBool Source #

symCompare :: SymFP eb sb -> SymFP eb sb -> Union Ordering Source #

ValidFP eb sb => AllSyms (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

allSymsS :: SymFP eb sb -> [SomeSym] -> [SomeSym] Source #

allSyms :: SymFP eb sb -> [SomeSym] Source #

ConRep (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Associated Types

type ConType (SymFP eb sb) 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type ConType (SymFP eb sb) = FP eb sb
ValidFP eb sb => UnifiedConRep (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

Associated Types

type ConType (SymFP eb sb) 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

type ConType (SymFP eb sb) = FP eb sb
ValidFP eb sb => UnifiedSymRep (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

Associated Types

type SymType (SymFP eb sb) 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

type SymType (SymFP eb sb) = SymFP eb sb
ValidFP eb sb => Hashable (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

hashWithSalt :: Int -> SymFP eb sb -> Int #

hash :: SymFP eb sb -> Int #

ValidFP eb sb => IEEEFPRoundingOp (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

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, r ~ (eb + sb)) => BitCastCanonical (SymFP eb sb) (SymIntN r) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCastCanonicalValue :: proxy (SymFP eb sb) -> SymIntN r Source #

(ValidFP eb sb, r ~ (eb + sb)) => BitCastCanonical (SymFP eb sb) (SymWordN r) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCastCanonicalValue :: proxy (SymFP eb sb) -> SymWordN r Source #

(ValidFP eb sb, r ~ (eb + sb)) => BitCastOr (SymFP eb sb) (SymIntN r) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCastOr :: SymIntN r -> SymFP eb sb -> SymIntN r Source #

(ValidFP eb sb, r ~ (eb + sb)) => BitCastOr (SymFP eb sb) (SymWordN r) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

bitCastOr :: SymWordN r -> SymFP eb sb -> SymWordN r Source #

ValidFP eb sb => GenSym (SymFP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Methods

fresh :: MonadFresh m => SymFP eb sb -> m (Union (SymFP eb sb)) Source #

ValidFP eb sb => GenSymSimple (SymFP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Methods

simpleFresh :: MonadFresh m => SymFP eb sb -> m (SymFP eb sb) Source #

ValidFP eb sb => Solvable (FP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

con :: FP eb sb -> SymFP eb sb Source #

conView :: SymFP eb sb -> Maybe (FP eb sb) Source #

sym :: Symbol -> SymFP eb sb Source #

ssym :: Identifier -> SymFP eb sb Source #

isym :: Identifier -> Int -> SymFP eb sb Source #

ValidFP eb sb => ToCon (SymFP eb sb) (FP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

Methods

toCon :: SymFP eb sb -> Maybe (FP eb sb) Source #

ValidFP eb sb => ToCon (SymFP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

Methods

toCon :: SymFP eb sb -> Maybe (SymFP eb sb) Source #

ValidFP eb sb => ToSym (FP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

Methods

toSym :: FP eb sb -> SymFP eb sb Source #

ValidFP eb sb => ToSym (SymFP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

Methods

toSym :: SymFP eb sb -> SymFP eb sb Source #

ValidFP eb sb => LinkedRep (FP eb sb) (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

underlyingTerm :: SymFP eb sb -> Term (FP eb sb) Source #

wrapTerm :: Term (FP eb sb) -> SymFP eb sb Source #

(ValidFP eb sb, ValidFP eb' sb') => IEEEFPConvertible (SymFP eb' sb') (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

fromFPOr :: SymFP eb' sb' -> SymFPRoundingMode -> SymFP eb sb -> SymFP eb' sb' Source #

toFP :: SymFPRoundingMode -> SymFP eb' sb' -> SymFP eb sb Source #

type Rep (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type Rep (SymFP eb sb) = D1 ('MetaData "SymFP" "Grisette.Internal.SymPrim.SymFP" "grisette-0.11.0.0-HndeEPlDvvDHSETLw6O8c" 'True) (C1 ('MetaCons "SymFP" 'PrefixI 'True) (S1 ('MetaSel ('Just "underlyingFPTerm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term (FP eb sb)))))
type FunType (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type FunType (SymFP eb sb) = SymFP eb sb
type ConType (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type ConType (SymFP eb sb) = FP eb sb
type ConType (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

type ConType (SymFP eb sb) = FP eb sb
type SymType (SymFP eb sb) Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedRep

type SymType (SymFP eb sb) = SymFP eb sb

type SymFP16 = SymFP 5 11 Source #

Symbolic IEEE 754 half-precision floating-point number.

type SymFP32 = SymFP 8 24 Source #

Symbolic IEEE 754 single-precision floating-point number.

type SymFP64 = SymFP 11 53 Source #

Symbolic IEEE 754 double-precision floating-point number.

newtype SymFPRoundingMode Source #

Symbolic floating-point rounding mode.

Instances

Instances details
NFData SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

rnf :: SymFPRoundingMode -> () #

IsString SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Generic SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Associated Types

type Rep SymFPRoundingMode 
Instance details

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))))
Show SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Eq SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Apply SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

IEEEFPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ITEOp SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.ITEOp

EvalSym SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.EvalSym

ExtractSym SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ExtractSym

Mergeable SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.Mergeable

PPrint SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.PPrint

SimpleMergeable SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SimpleMergeable

SubstSym SymFPRoundingMode Source # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymEq

SymOrd SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SymOrd

AllSyms SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ConRep SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Associated Types

type ConType SymFPRoundingMode 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Hashable SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

GenSym SymFPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

GenSym () SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Methods

fresh :: MonadFresh m => () -> m (Union SymFPRoundingMode) Source #

GenSymSimple SymFPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

GenSymSimple () SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.GenSym

Solvable FPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ToCon SymFPRoundingMode FPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

ToCon SymFPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToCon

ToSym FPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

ToSym SymFPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ToSym

LinkedRep FPRoundingMode SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Lift SymFPRoundingMode Source # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

Associated Types

type GetFP 'S 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

type GetFP 'S = SymFP
type GetFPRoundingMode 'S 
Instance details

Defined in Grisette.Internal.Internal.Impl.Unified.UnifiedFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb) => UnifiedSafeFromFP 'S NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, UnifiedBranching 'S m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP 'S NotRepresentableFPError (SymWordN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymAlgReal (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeFromFP

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb) => SafeFromFP NotRepresentableFPError SymInteger (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

Defined in Grisette.Internal.Core.Data.Class.SafeFromFP

(MonadError NotRepresentableFPError m, MonadUnion m, ValidFP eb sb, KnownNat n, 1 <= n) => SafeFromFP NotRepresentableFPError (SymIntN n) (SymFP eb sb) SymFPRoundingMode m Source # 
Instance details

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 # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPConvertible SymInteger (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPToAlgReal SymAlgReal (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymIntN n) (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (SymWordN n) (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

ValidFP eb sb => IEEEFPRoundingOp (SymFP eb sb) SymFPRoundingMode Source # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Methods

fromFPOr :: SymFP eb' sb' -> SymFPRoundingMode -> SymFP eb sb -> SymFP eb' sb' Source #

toFP :: SymFPRoundingMode -> SymFP eb' sb' -> SymFP eb sb Source #

type Rep SymFPRoundingMode Source # 
Instance details

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 # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type ConType SymFPRoundingMode Source # 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

Orphan instances

SymRep FPRoundingMode Source # 
Instance details

Associated Types

type SymType FPRoundingMode 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

LinkedRep FPRoundingMode SymFPRoundingMode Source # 
Instance details

ValidFP eb sb => SymRep (FP eb sb) Source # 
Instance details

Associated Types

type SymType (FP eb sb) 
Instance details

Defined in Grisette.Internal.SymPrim.SymFP

type SymType (FP eb sb) = SymFP eb sb
ValidFP eb sb => LinkedRep (FP eb sb) (SymFP eb sb) Source # 
Instance details

Methods

underlyingTerm :: SymFP eb sb -> Term (FP eb sb) Source #

wrapTerm :: Term (FP eb sb) -> SymFP eb sb Source #