Copyright | (c) Sirui Lu 2021-2023 |
---|---|
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.SymBV
Contents
Description
Synopsis
- newtype SymWordN (n :: Nat) = SymWordN (Term (WordN n))
- type SymWordN8 = SymWordN 8
- type SymWordN16 = SymWordN 16
- type SymWordN32 = SymWordN 32
- type SymWordN64 = SymWordN 64
- type SymWordNKey (n :: Nat) = AsKey (SymWordN n)
- type SymWordN8Key = SymWordNKey 8
- type SymWordN16Key = SymWordNKey 16
- type SymWordN32Key = SymWordNKey 32
- type SymWordN64Key = SymWordNKey 64
- newtype SymIntN (n :: Nat) = SymIntN (Term (IntN n))
- type SymIntN8 = SymIntN 8
- type SymIntN16 = SymIntN 16
- type SymIntN32 = SymIntN 32
- type SymIntN64 = SymIntN 64
- type SymIntNKey (n :: Nat) = AsKey (SymIntN n)
- type SymIntN8Key = SymIntNKey 8
- type SymIntN16Key = SymIntNKey 16
- type SymIntN32Key = SymIntNKey 32
- type SymIntN64Key = SymIntNKey 64
Documentation
newtype SymWordN (n :: Nat) Source #
Symbolic unsigned bit vector type. Indexed with the bit width. Signedness affects the semantics of the operations, including comparison/extension, etc.
>>>
"a" + 5 :: SymWordN 5
(+ 0b00101 a)>>>
sizedBVConcat (con 0b101 :: SymWordN 3) (con 0b110 :: SymWordN 3)
0b101110>>>
sizedBVExt (Proxy @6) (con 0b101 :: SymWordN 3)
0b000101>>>
(8 :: SymWordN 4) .< (7 :: SymWordN 4)
false
More operations are available. Please refer to Grisette.Core for more information.
Instances
type SymWordN16 = SymWordN 16 Source #
Symbolic 16-bit unsigned bit-vector.
type SymWordN32 = SymWordN 32 Source #
Symbolic 32-bit unsigned bit-vector.
type SymWordN64 = SymWordN 64 Source #
Symbolic 64-bit unsigned bit-vector.
type SymWordN8Key = SymWordNKey 8 Source #
SymWordN
8@ type with identity equality.
type SymWordN16Key = SymWordNKey 16 Source #
SymWordN
16@ type with identity equality.
type SymWordN32Key = SymWordNKey 32 Source #
SymWordN
32@ type with identity equality.
type SymWordN64Key = SymWordNKey 64 Source #
SymWordN
64@ type with identity equality.
newtype SymIntN (n :: Nat) Source #
Symbolic signed bit vector type. Indexed with the bit width. Signedness affects the semantics of the operations, including comparison/extension, etc.
>>>
"a" + 5 :: SymIntN 5
(+ 0b00101 a)>>>
sizedBVConcat (con 0b101 :: SymIntN 3) (con 0b110 :: SymIntN 3)
0b101110>>>
sizedBVExt (Proxy @6) (con 0b101 :: SymIntN 3)
0b111101>>>
(8 :: SymIntN 4) .< (7 :: SymIntN 4)
true
More operations are available. Please refer to Grisette.Core for more information.
Instances
SizedBV SymIntN Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods sizedBVConcat :: forall (l :: Nat) (r :: Nat). (KnownNat l, KnownNat r, 1 <= l, 1 <= r) => SymIntN l -> SymIntN r -> SymIntN (l + r) Source # sizedBVZext :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> SymIntN l -> SymIntN r Source # sizedBVSext :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> SymIntN l -> SymIntN r Source # sizedBVExt :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> SymIntN l -> SymIntN r Source # sizedBVSelect :: forall (n :: Nat) (ix :: Nat) (w :: Nat) p q. (KnownNat n, KnownNat ix, KnownNat w, 1 <= n, 1 <= w, (ix + w) <= n) => p ix -> q w -> SymIntN n -> SymIntN w Source # sizedBVFromIntegral :: forall a (n :: Nat). (Integral a, KnownNat n, 1 <= n) => a -> SymIntN n Source # | |||||
UnifiedFiniteBits 'S SomeSymIntN Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFiniteBits Methods withBaseFiniteBits :: (If (IsConMode 'S) (FiniteBits SomeSymIntN, FromBits SomeSymIntN) (SymFiniteBits SomeSymIntN) => r) -> r Source # | |||||
(KnownNat n, 1 <= n) => UnifiedBVImpl 'S SymWordN SymIntN n (SymWordN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedFromIntegral 'S SymInteger (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral Methods withBaseFromIntegral :: (If (IsConMode 'S) (Integral SymInteger, Num (SymIntN n)) (SymFromIntegral SymInteger (SymIntN n)) => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching 'S m, KnownNat n, 1 <= n) => UnifiedSafeDiv 'S ArithException (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeDiv Methods withBaseSafeDiv :: (SafeDiv ArithException (SymIntN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching 'S m, KnownNat n, 1 <= n) => UnifiedSafeLinearArith 'S ArithException (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeLinearArith Methods withBaseSafeLinearArith :: (SafeLinearArith ArithException (SymIntN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching 'S m, KnownNat n, 1 <= n) => UnifiedSafeSymRotate 'S ArithException (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymRotate Methods withBaseSafeSymRotate :: (SafeSymRotate ArithException (SymIntN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching 'S m, KnownNat n, 1 <= n) => UnifiedSafeSymShift 'S ArithException (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymShift Methods withBaseSafeSymShift :: (SafeSymShift ArithException (SymIntN n) 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, n ~ (eb + sb)) => UnifiedSafeBitCast 'S NotRepresentableFPError (SymFP eb sb) (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeBitCast Methods withBaseSafeBitCast :: (SafeBitCast NotRepresentableFPError (SymFP eb sb) (SymIntN n) m => r) -> r Source # | |||||
BitCast SymBool (SymIntN 1) Source # | |||||
(KnownNat n, 1 <= n) => GenSym () (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym | |||||
(KnownNat n, 1 <= n) => GenSymSimple () (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods simpleFresh :: MonadFresh m => () -> m (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SymFromIntegral SymInteger (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymInteger -> SymIntN n Source # | |||||
ToSym Int16 (SymIntN 16) Source # | |||||
ToSym Int32 (SymIntN 32) Source # | |||||
ToSym Int64 (SymIntN 64) Source # | |||||
ToSym Int8 (SymIntN 8) Source # | |||||
ToSym Int (SymIntN 64) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedFiniteBits 'S (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFiniteBits Methods withBaseFiniteBits :: (If (IsConMode 'S) (FiniteBits (SymIntN n), FromBits (SymIntN n)) (SymFiniteBits (SymIntN n)) => r) -> r Source # | |||||
Lift (SymIntN n :: Type) Source # | |||||
(MonadError ArithException m, MonadUnion m, KnownNat n, 1 <= n) => SafeLinearArith ArithException (SymIntN n) m Source # | |||||
(MonadError ArithException m, MonadUnion m, KnownNat n, 1 <= n) => SafeSymRotate ArithException (SymIntN n) m Source # | |||||
(MonadError ArithException m, MonadUnion m, KnownNat n, 1 <= n) => SafeSymShift ArithException (SymIntN n) m Source # | |||||
(MonadError ArithException m, MonadUnion m, KnownNat n, 1 <= n) => SafeDiv ArithException (SymIntN n) m Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SafeDiv Methods safeDiv :: SymIntN n -> SymIntN n -> m (SymIntN n) Source # safeMod :: SymIntN n -> SymIntN n -> m (SymIntN n) Source # safeDivMod :: SymIntN n -> SymIntN n -> m (SymIntN n, SymIntN n) Source # safeQuot :: SymIntN n -> SymIntN n -> m (SymIntN n) Source # safeRem :: SymIntN n -> SymIntN n -> m (SymIntN n) Source # safeQuotRem :: SymIntN n -> SymIntN n -> m (SymIntN n, SymIntN n) Source # | |||||
(KnownNat n', 1 <= n') => UnifiedFromIntegral 'S (SymIntN n') SymAlgReal Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral Methods withBaseFromIntegral :: (If (IsConMode 'S) (Integral (SymIntN n'), Num SymAlgReal) (SymFromIntegral (SymIntN n') SymAlgReal) => r) -> r Source # | |||||
(KnownNat n', 1 <= n') => UnifiedFromIntegral 'S (SymIntN n') SymInteger Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFromIntegral Methods withBaseFromIntegral :: (If (IsConMode 'S) (Integral (SymIntN n'), Num SymInteger) (SymFromIntegral (SymIntN n') SymInteger) => r) -> r Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'S (SymIntN n') (SymIntN n) Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'S (SymIntN n') (SymWordN n) Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'S (SymWordN n') (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedSolvable 'S (SymIntN n) (IntN n) Source # | |||||
(KnownNat n', 1 <= n', ValidFP eb sb) => UnifiedFromIntegral 'S (SymIntN n') (SymFP eb sb) 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 (Either SomeBVException ArithException) m, UnifiedBranching 'S m) => UnifiedSafeDiv 'S (Either SomeBVException ArithException) SomeSymIntN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeDiv Methods withBaseSafeDiv :: (SafeDiv (Either SomeBVException ArithException) SomeSymIntN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching 'S m) => UnifiedSafeLinearArith 'S (Either SomeBVException ArithException) SomeSymIntN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeLinearArith Methods withBaseSafeLinearArith :: (SafeLinearArith (Either SomeBVException ArithException) SomeSymIntN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching 'S m) => UnifiedSafeSymRotate 'S (Either SomeBVException ArithException) SomeSymIntN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymRotate Methods withBaseSafeSymRotate :: (SafeSymRotate (Either SomeBVException ArithException) SomeSymIntN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching 'S m) => UnifiedSafeSymShift 'S (Either SomeBVException ArithException) SomeSymIntN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymShift Methods withBaseSafeSymShift :: (SafeSymShift (Either SomeBVException ArithException) SomeSymIntN m => r) -> r Source # | |||||
(ValidFP eb sb, r ~ (eb + sb), KnownNat r, 1 <= r, MonadUnion m, MonadError NotRepresentableFPError m) => SafeBitCast NotRepresentableFPError (SymFP eb sb) (SymIntN r) m Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SafeBitCast Methods safeBitCast :: SymFP eb sb -> m (SymIntN r) Source # | |||||
(KnownNat n, 1 <= n) => Binary (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => Serial (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => Serialize (SymIntN n) Source # | |||||
NFData (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => Bits (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods (.&.) :: SymIntN n -> SymIntN n -> SymIntN n # (.|.) :: SymIntN n -> SymIntN n -> SymIntN n # xor :: SymIntN n -> SymIntN n -> SymIntN n # complement :: SymIntN n -> SymIntN n # shift :: SymIntN n -> Int -> SymIntN n # rotate :: SymIntN n -> Int -> SymIntN n # setBit :: SymIntN n -> Int -> SymIntN n # clearBit :: SymIntN n -> Int -> SymIntN n # complementBit :: SymIntN n -> Int -> SymIntN n # testBit :: SymIntN n -> Int -> Bool # bitSizeMaybe :: SymIntN n -> Maybe Int # isSigned :: SymIntN n -> Bool # shiftL :: SymIntN n -> Int -> SymIntN n # unsafeShiftL :: SymIntN n -> Int -> SymIntN n # shiftR :: SymIntN n -> Int -> SymIntN n # unsafeShiftR :: SymIntN n -> Int -> SymIntN n # rotateL :: SymIntN n -> Int -> SymIntN n # | |||||
(KnownNat n, 1 <= n) => FiniteBits (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods finiteBitSize :: SymIntN n -> Int # countLeadingZeros :: SymIntN n -> Int # countTrailingZeros :: SymIntN n -> Int # | |||||
(KnownNat n, 1 <= n) => IsString (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods fromString :: String -> SymIntN n # | |||||
(KnownNat n, 1 <= n) => Bounded (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => Enum (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods succ :: SymIntN n -> SymIntN n # pred :: SymIntN n -> SymIntN n # fromEnum :: SymIntN n -> Int # enumFrom :: SymIntN n -> [SymIntN n] # enumFromThen :: SymIntN n -> SymIntN n -> [SymIntN n] # enumFromTo :: SymIntN n -> SymIntN n -> [SymIntN n] # enumFromThenTo :: SymIntN n -> SymIntN n -> SymIntN n -> [SymIntN n] # | |||||
Generic (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Associated Types
| |||||
(KnownNat n, 1 <= n) => Num (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => Integral (SymIntN n) Source # | The functions are total and will not throw errors. The result is considered undefined if the divisor is 0. It is the responsibility of the caller to ensure that the divisor is not
zero with the symbolic constraints, or use the | ||||
Defined in Grisette.Internal.SymPrim.SymBV Methods quot :: SymIntN n -> SymIntN n -> SymIntN n # rem :: SymIntN n -> SymIntN n -> SymIntN n # div :: SymIntN n -> SymIntN n -> SymIntN n # mod :: SymIntN n -> SymIntN n -> SymIntN n # quotRem :: SymIntN n -> SymIntN n -> (SymIntN n, SymIntN n) # divMod :: SymIntN n -> SymIntN n -> (SymIntN n, SymIntN n) # | |||||
(KnownNat n, 1 <= n) => Real (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV Methods toRational :: SymIntN n -> Rational # | |||||
(KnownNat n, 1 <= n) => Show (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => Eq (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => Ord (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => KeyEq (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => KeyHashable (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => Apply (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ITEOp (SymIntN n) Source # | |||||
SymFiniteBits (SomeBV SymIntN) Source # | |||||
(KnownNat n, 1 <= n) => SymFiniteBits (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SymRotate (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SymShift (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => EvalSym (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ExtractSym (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ExtractSym Methods extractSym :: SymIntN n -> AnySymbolSet Source # extractSymMaybe :: forall (knd :: SymbolKind). IsSymbolKind knd => SymIntN n -> Maybe (SymbolSet knd) Source # | |||||
(KnownNat n, 1 <= n) => Mergeable (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.Mergeable Methods rootStrategy :: MergingStrategy (SymIntN n) Source # sortIndices :: SymIntN n -> [DynamicSortedIdx] Source # | |||||
(KnownNat n, 1 <= n) => PPrint (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => DivOr (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SafeDiv Methods divOr :: SymIntN n -> SymIntN n -> SymIntN n -> SymIntN n Source # modOr :: SymIntN n -> SymIntN n -> SymIntN n -> SymIntN n Source # divModOr :: (SymIntN n, SymIntN n) -> SymIntN n -> SymIntN n -> (SymIntN n, SymIntN n) Source # quotOr :: SymIntN n -> SymIntN n -> SymIntN n -> SymIntN n Source # remOr :: SymIntN n -> SymIntN n -> SymIntN n -> SymIntN n Source # quotRemOr :: (SymIntN n, SymIntN n) -> SymIntN n -> SymIntN n -> (SymIntN n, SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SimpleMergeable (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SubstSym (SymIntN n) 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 -> SymIntN n -> SymIntN n Source # | |||||
(KnownNat n, 1 <= n) => SymEq (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SymOrd (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => AllSyms (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ConRep (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => UnifiedConRep (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
(KnownNat n, 1 <= n) => UnifiedSymRep (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
BitCast (SymIntN 1) SymBool Source # | |||||
(KnownNat n, 1 <= n) => SymFromIntegral (SymIntN n) SymAlgReal Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymIntN n -> SymAlgReal Source # | |||||
(KnownNat n, 1 <= n) => SymFromIntegral (SymIntN n) SymInteger Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymIntN n -> SymInteger Source # | |||||
ToCon (SymIntN 8) Int8 Source # | |||||
ToCon (SymIntN 16) Int16 Source # | |||||
ToCon (SymIntN 32) Int32 Source # | |||||
ToCon (SymIntN 64) Int64 Source # | |||||
ToCon (SymIntN 64) Int Source # | |||||
(KnownNat n, 1 <= n) => BitCast (SymIntN n) (SymWordN n) Source # | |||||
(KnownNat n, 1 <= n) => BitCast (SymWordN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => GenSym (SymIntN n) (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym | |||||
(KnownNat n, 1 <= n) => GenSymSimple (SymIntN n) (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods simpleFresh :: MonadFresh m => SymIntN n -> m (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => SignConversion (SymWordN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => Solvable (IntN n) (SymIntN n) Source # | |||||
(KnownNat n, KnownNat m, 1 <= n, 1 <= m) => SymFromIntegral (SymIntN n) (SymIntN m) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymIntN n -> SymIntN m Source # | |||||
(KnownNat n, KnownNat m, 1 <= n, 1 <= m) => SymFromIntegral (SymIntN n) (SymWordN m) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymIntN n -> SymWordN m Source # | |||||
(KnownNat n, KnownNat m, 1 <= n, 1 <= m) => SymFromIntegral (SymWordN n) (SymIntN m) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymWordN n -> SymIntN m Source # | |||||
(KnownNat n, 1 <= n) => ToCon (SymIntN n) (IntN n) Source # | |||||
ToCon (SymIntN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (Union (IntN n)) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (IntN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (SymIntN n) (SymIntN n) Source # | |||||
(KnownNat n, 1 <= n) => LinkedRep (IntN n) (SymIntN n) Source # | |||||
(ValidFP eb sb, r ~ (eb + sb)) => BitCast (SymIntN r) (SymFP eb sb) Source # | |||||
(KnownNat n, 1 <= n, ValidFP eb sb) => SymFromIntegral (SymIntN n) (SymFP eb sb) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SymFromIntegral Methods symFromIntegral :: SymIntN n -> SymFP eb sb 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, r ~ (eb + sb)) => BitCastCanonical (SymFP eb sb) (SymIntN r) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymFP Methods bitCastCanonicalValue :: proxy (SymFP eb sb) -> SymIntN r Source # | |||||
(ValidFP eb sb, r ~ (eb + sb)) => BitCastOr (SymFP eb sb) (SymIntN r) Source # | |||||
type Rep (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
type FunType (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
type ConType (SymIntN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
type ConType (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
type SymType (SymIntN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep |
type SymIntN8Key = SymIntNKey 8 Source #
type with identity equality.SymIntN
8
type SymIntN16Key = SymIntNKey 16 Source #
type with identity equality.SymIntN
16
type SymIntN32Key = SymIntNKey 32 Source #
type with identity equality.SymIntN
32
type SymIntN64Key = SymIntNKey 64 Source #
type with identity equality.SymIntN
64