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.BV
Description
Documentation
newtype IntN (n :: Nat) Source #
Signed bit vector type. Indexed with the bit width. Signedness affects the semantics of the operations, including comparison/extension, etc.
>>>
3 + 5 :: IntN 5
0b01000>>>
sizedBVConcat (0b101 :: IntN 3) (0b110 :: IntN 3)
0b101110>>>
sizedBVExt (Proxy @6) (0b101 :: IntN 3)
0b111101>>>
(8 :: IntN 4) < (7 :: IntN 4)
True
More operations are available. Please refer to Grisette.Core for more information.
Instances
newtype WordN (n :: Nat) Source #
Unsigned bit vector type. Indexed with the bit width. Signedness affect the semantics of the operations, including comparison/extension, etc.
>>>
3 + 5 :: WordN 5
0b01000>>>
sizedBVConcat (0b101 :: WordN 3) (0b110 :: WordN 3)
0b101110>>>
sizedBVExt (Proxy @6) (0b101 :: WordN 3)
0b000101>>>
(8 :: WordN 4) < (7 :: WordN 4)
False
More operations are available. Please refer to Grisette.Core for more information.
Instances
SizedBV WordN Source # | |||||
Defined in Grisette.Internal.SymPrim.BV Methods sizedBVConcat :: forall (l :: Nat) (r :: Nat). (KnownNat l, KnownNat r, 1 <= l, 1 <= r) => WordN l -> WordN r -> WordN (l + r) Source # sizedBVZext :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> WordN l -> WordN r Source # sizedBVSext :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> WordN l -> WordN r Source # sizedBVExt :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, KnownNat r, l <= r) => proxy r -> WordN l -> WordN 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 -> WordN n -> WordN w Source # sizedBVFromIntegral :: forall a (n :: Nat). (Integral a, KnownNat n, 1 <= n) => a -> WordN n Source # | |||||
FromBits SomeWordN Source # | |||||
ConvertibleBound WordN Source # | |||||
Defined in Grisette.Internal.SymPrim.FP Methods convertibleLowerBound :: forall (eb :: Nat) (sb :: Nat) (n :: Nat). (ValidFP eb sb, KnownNat n, 1 <= n) => WordN n -> FPRoundingMode -> FP eb sb Source # convertibleUpperBound :: forall (eb :: Nat) (sb :: Nat) (n :: Nat). (ValidFP eb sb, KnownNat n, 1 <= n) => WordN n -> FPRoundingMode -> FP eb sb Source # | |||||
PEvalBVTerm WordN Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.BVPEval Methods pevalBVConcatTerm :: forall (l :: Nat) (r :: Nat). (KnownNat l, KnownNat r, 1 <= l, 1 <= r) => Term (WordN l) -> Term (WordN r) -> Term (WordN (l + r)) Source # pevalBVExtendTerm :: forall (l :: Nat) (r :: Nat) proxy. (KnownNat l, KnownNat r, 1 <= l, 1 <= r, l <= r) => Bool -> proxy r -> Term (WordN l) -> Term (WordN r) Source # pevalBVSelectTerm :: 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 -> Term (WordN n) -> Term (WordN w) Source # sbvBVConcatTerm :: forall (l :: Nat) (r :: Nat) p1 p2. (KnownNat l, KnownNat r, 1 <= l, 1 <= r) => p1 l -> p2 r -> SBVType (WordN l) -> SBVType (WordN r) -> SBVType (WordN (l + r)) Source # sbvBVExtendTerm :: forall (l :: Nat) (r :: Nat) p1 p2. (KnownNat l, KnownNat r, 1 <= l, 1 <= r, l <= r) => p1 l -> p2 r -> Bool -> SBVType (WordN l) -> SBVType (WordN r) Source # sbvBVSelectTerm :: forall (ix :: Nat) (w :: Nat) (n :: Nat) p1 p2 p3. (KnownNat ix, KnownNat w, KnownNat n, 1 <= n, 1 <= w, (ix + w) <= n) => p1 ix -> p2 w -> p3 n -> SBVType (WordN n) -> SBVType (WordN w) Source # | |||||
BitCast WordN32 Float Source # | |||||
BitCast WordN64 Double Source # | |||||
BitCast Double WordN64 Source # | |||||
BitCast Float WordN32 Source # | |||||
UnifiedFiniteBits 'C SomeWordN Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFiniteBits Methods withBaseFiniteBits :: (If (IsConMode 'C) (FiniteBits SomeWordN, FromBits SomeWordN) (SymFiniteBits SomeWordN) => r) -> r Source # | |||||
(KnownNat n, 1 <= n) => UnifiedBVImpl 'C WordN IntN n (WordN n) (IntN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedFromIntegral 'C Integer (WordN n) Source # | |||||
(MonadError ArithException m, UnifiedBranching mode m, KnownNat n, 1 <= n) => UnifiedSafeDiv mode ArithException (WordN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeDiv Methods withBaseSafeDiv :: (SafeDiv ArithException (WordN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching mode m, KnownNat n, 1 <= n) => UnifiedSafeLinearArith mode ArithException (WordN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeLinearArith Methods withBaseSafeLinearArith :: (SafeLinearArith ArithException (WordN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching mode m, KnownNat n, 1 <= n) => UnifiedSafeSymRotate mode ArithException (WordN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymRotate Methods withBaseSafeSymRotate :: (SafeSymRotate ArithException (WordN n) m => r) -> r Source # | |||||
(MonadError ArithException m, UnifiedBranching mode m, KnownNat n, 1 <= n) => UnifiedSafeSymShift mode ArithException (WordN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymShift Methods withBaseSafeSymShift :: (SafeSymShift ArithException (WordN n) m => r) -> r Source # | |||||
(MonadError NotRepresentableFPError m, UnifiedBranching mode m, ValidFP eb sb, KnownNat n, 1 <= n) => UnifiedSafeFromFP mode NotRepresentableFPError (WordN n) (FP eb sb) FPRoundingMode m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeFromFP Methods withBaseSafeFromFP :: (SafeFromFP NotRepresentableFPError (WordN n) (FP eb sb) FPRoundingMode m => r) -> r Source # | |||||
(MonadError NotRepresentableFPError m, UnifiedBranching mode m, ValidFP eb sb, KnownNat n, 1 <= n, n ~ (eb + sb)) => UnifiedSafeBitCast mode NotRepresentableFPError (FP eb sb) (WordN n) m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeBitCast Methods withBaseSafeBitCast :: (SafeBitCast NotRepresentableFPError (FP eb sb) (WordN n) m => r) -> r Source # | |||||
BitCast Int16 (WordN 16) Source # | |||||
BitCast Int32 (WordN 32) Source # | |||||
BitCast Int64 (WordN 64) Source # | |||||
BitCast Int8 (WordN 8) Source # | |||||
BitCast Word16 (WordN 16) Source # | |||||
BitCast Word32 (WordN 32) Source # | |||||
BitCast Word64 (WordN 64) Source # | |||||
BitCast Word8 (WordN 8) Source # | |||||
BitCast Bool (WordN 1) Source # | |||||
(DecideEvalMode mode, KnownNat a, 1 <= a) => UnifiedSymEq mode (WordN a) Source # | |||||
(DecideEvalMode mode, KnownNat a, 1 <= a) => UnifiedSymOrd mode (WordN a) Source # | |||||
PEvalBitCastTerm Bool (WordN 1) Source # | |||||
(KnownNat n, 1 <= n) => PEvalFromIntegralTerm Integer (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedFiniteBits 'C (WordN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedFiniteBits Methods withBaseFiniteBits :: (If (IsConMode 'C) (FiniteBits (WordN n), FromBits (WordN n)) (SymFiniteBits (WordN n)) => r) -> r Source # | |||||
Lift (WordN n :: Type) Source # | |||||
(MonadError ArithException m, TryMerge m, KnownNat n, 1 <= n) => SafeLinearArith ArithException (WordN n) m Source # | |||||
(MonadError ArithException m, TryMerge m, KnownNat n, 1 <= n) => SafeSymRotate ArithException (WordN n) m Source # | |||||
(MonadError ArithException m, TryMerge m, KnownNat n, 1 <= n) => SafeSymShift ArithException (WordN n) m Source # | |||||
(MonadError ArithException m, TryMerge m, KnownNat n, 1 <= n) => SafeDiv ArithException (WordN n) m Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SafeDiv Methods safeDiv :: WordN n -> WordN n -> m (WordN n) Source # safeMod :: WordN n -> WordN n -> m (WordN n) Source # safeDivMod :: WordN n -> WordN n -> m (WordN n, WordN n) Source # safeQuot :: WordN n -> WordN n -> m (WordN n) Source # safeRem :: WordN n -> WordN n -> m (WordN n) Source # safeQuotRem :: WordN n -> WordN n -> m (WordN n, WordN n) Source # | |||||
(KnownNat n', 1 <= n') => UnifiedFromIntegral 'C (WordN n') AlgReal Source # | |||||
(KnownNat n', 1 <= n') => UnifiedFromIntegral 'C (WordN n') Integer Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'C (IntN n') (WordN n) Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'C (WordN n') (IntN n) Source # | |||||
(KnownNat n', 1 <= n', KnownNat n, 1 <= n) => UnifiedFromIntegral 'C (WordN n') (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedSolvable 'C (WordN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => UnifiedSolvable 'S (SymWordN n) (WordN n) Source # | |||||
(KnownNat n', 1 <= n', ValidFP eb sb) => UnifiedFromIntegral 'C (WordN n') (FP eb sb) Source # | |||||
(MonadError NotRepresentableFPError m, TryMerge m, ValidFP eb sb, KnownNat n, 1 <= n) => SafeFromFP NotRepresentableFPError (WordN n) (FP eb sb) FPRoundingMode m Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SafeFromFP Methods safeFromFP :: FPRoundingMode -> FP eb sb -> m (WordN n) Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching mode m) => UnifiedSafeDiv mode (Either SomeBVException ArithException) SomeWordN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeDiv Methods withBaseSafeDiv :: (SafeDiv (Either SomeBVException ArithException) SomeWordN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching mode m) => UnifiedSafeLinearArith mode (Either SomeBVException ArithException) SomeWordN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeLinearArith Methods withBaseSafeLinearArith :: (SafeLinearArith (Either SomeBVException ArithException) SomeWordN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching mode m) => UnifiedSafeSymRotate mode (Either SomeBVException ArithException) SomeWordN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymRotate Methods withBaseSafeSymRotate :: (SafeSymRotate (Either SomeBVException ArithException) SomeWordN m => r) -> r Source # | |||||
(MonadError (Either SomeBVException ArithException) m, UnifiedBranching mode m) => UnifiedSafeSymShift mode (Either SomeBVException ArithException) SomeWordN m Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedSafeSymShift Methods withBaseSafeSymShift :: (SafeSymShift (Either SomeBVException ArithException) SomeWordN m => r) -> r Source # | |||||
(ValidFP eb sb, r ~ (eb + sb), KnownNat r, 1 <= r, TryMerge m, MonadError NotRepresentableFPError m) => SafeBitCast NotRepresentableFPError (FP eb sb) (WordN r) m Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.SafeBitCast Methods safeBitCast :: FP eb sb -> m (WordN r) Source # | |||||
(KnownNat n, 1 <= n) => Arbitrary (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => Binary (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => Serial (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
(KnownNat n, 1 <= n) => Serialize (WordN n) Source # | |||||
NFData (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
(KnownNat n, 1 <= n) => Bits (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV Methods (.&.) :: WordN n -> WordN n -> WordN n # (.|.) :: WordN n -> WordN n -> WordN n # xor :: WordN n -> WordN n -> WordN n # complement :: WordN n -> WordN n # shift :: WordN n -> Int -> WordN n # rotate :: WordN n -> Int -> WordN n # setBit :: WordN n -> Int -> WordN n # clearBit :: WordN n -> Int -> WordN n # complementBit :: WordN n -> Int -> WordN n # testBit :: WordN n -> Int -> Bool # bitSizeMaybe :: WordN n -> Maybe Int # shiftL :: WordN n -> Int -> WordN n # unsafeShiftL :: WordN n -> Int -> WordN n # shiftR :: WordN n -> Int -> WordN n # unsafeShiftR :: WordN n -> Int -> WordN n # rotateL :: WordN n -> Int -> WordN n # | |||||
(KnownNat n, 1 <= n) => FiniteBits (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV Methods finiteBitSize :: WordN n -> Int # countLeadingZeros :: WordN n -> Int # countTrailingZeros :: WordN n -> Int # | |||||
(KnownNat n, 1 <= n) => Bounded (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => Enum (WordN n) Source # | |||||
Generic (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV Associated Types
| |||||
(KnownNat n, 1 <= n) => Num (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => Read (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => Integral (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
(KnownNat n, 1 <= n) => Real (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV Methods toRational :: WordN n -> Rational # | |||||
(KnownNat n, 1 <= n) => Show (WordN n) Source # | |||||
Eq (WordN n) Source # | |||||
Ord (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
Apply (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => FromBits (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => SymRotate (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => SymShift (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => EvalSym (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => ExtractSym (WordN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.ExtractSym Methods extractSym :: WordN n -> AnySymbolSet Source # extractSymMaybe :: forall (knd :: SymbolKind). IsSymbolKind knd => WordN n -> Maybe (SymbolSet knd) Source # | |||||
(KnownNat n, 1 <= n) => Mergeable (WordN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.Mergeable Methods rootStrategy :: MergingStrategy (WordN n) Source # sortIndices :: WordN n -> [DynamicSortedIdx] Source # | |||||
(KnownNat n, 1 <= n) => PPrint (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => DivOr (WordN n) Source # | |||||
Defined in Grisette.Internal.Internal.Impl.Core.Data.Class.SafeDiv Methods divOr :: WordN n -> WordN n -> WordN n -> WordN n Source # modOr :: WordN n -> WordN n -> WordN n -> WordN n Source # divModOr :: (WordN n, WordN n) -> WordN n -> WordN n -> (WordN n, WordN n) Source # quotOr :: WordN n -> WordN n -> WordN n -> WordN n Source # remOr :: WordN n -> WordN n -> WordN n -> WordN n Source # quotRemOr :: (WordN n, WordN n) -> WordN n -> WordN n -> (WordN n, WordN n) Source # | |||||
(KnownNat n, 1 <= n) => SubstSym (WordN 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 -> WordN n -> WordN n Source # | |||||
(KnownNat n, 1 <= n) => SymEq (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => SymOrd (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => AllSyms (WordN n) Source # | |||||
(KnownNat w, 1 <= w) => NonFuncSBVRep (WordN w) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.SupportedPrim Associated Types
| |||||
(KnownNat n, 1 <= n) => PEvalBitwiseTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalBitwiseTerm Methods pevalAndBitsTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalOrBitsTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalXorBitsTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalComplementBitsTerm :: Term (WordN n) -> Term (WordN n) Source # withSbvBitwiseTermConstraint :: (Bits (SBVType (WordN n)) => r) -> r Source # sbvAndBitsTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvOrBitsTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvXorBitsTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvComplementBitsTerm :: SBVType (WordN n) -> SBVType (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalDivModIntegralTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalDivModIntegralTerm Methods pevalDivIntegralTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalModIntegralTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalQuotIntegralTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalRemIntegralTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # withSbvDivModIntegralTermConstraint :: (SDivisible (SBVType (WordN n)) => r) -> r Source # sbvDivIntegralTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvModIntegralTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvQuotIntegralTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvRemIntegralTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalIEEEFPConvertibleTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalIEEEFPConvertibleTerm Methods pevalFromFPOrTerm :: forall (eb :: Nat) (sb :: Nat). ValidFP eb sb => Term (WordN n) -> Term FPRoundingMode -> Term (FP eb sb) -> Term (WordN n) Source # pevalToFPTerm :: forall (eb :: Nat) (sb :: Nat). ValidFP eb sb => Term FPRoundingMode -> Term (WordN n) -> Term (FP eb sb) Source # sbvFromFPOrTerm :: forall (eb :: Nat) (sb :: Nat). ValidFP eb sb => SBVType (WordN n) -> SBVType FPRoundingMode -> SBVType (FP eb sb) -> SBVType (WordN n) Source # sbvToFPTerm :: forall (eb :: Nat) (sb :: Nat). ValidFP eb sb => SBVType FPRoundingMode -> SBVType (WordN n) -> SBVType (FP eb sb) Source # | |||||
(KnownNat n, 1 <= n) => PEvalNumTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalNumTerm Methods pevalAddNumTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalNegNumTerm :: Term (WordN n) -> Term (WordN n) Source # pevalMulNumTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalAbsNumTerm :: Term (WordN n) -> Term (WordN n) Source # pevalSignumNumTerm :: Term (WordN n) -> Term (WordN n) Source # withSbvNumTermConstraint :: (Num (SBVType (WordN n)) => r) -> r Source # sbvAddNumTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvNegNumTerm :: SBVType (WordN n) -> SBVType (WordN n) Source # sbvMulNumTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvAbsNumTerm :: SBVType (WordN n) -> SBVType (WordN n) Source # sbvSignumNumTerm :: SBVType (WordN n) -> SBVType (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalOrdTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalOrdTerm Methods pevalLtOrdTerm :: Term (WordN n) -> Term (WordN n) -> Term Bool Source # pevalLeOrdTerm :: Term (WordN n) -> Term (WordN n) -> Term Bool Source # withSbvOrdTermConstraint :: (OrdSymbolic (SBVType (WordN n)) => r) -> r Source # sbvLtOrdTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBV Bool Source # sbvLeOrdTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBV Bool Source # | |||||
(KnownNat n, 1 <= n) => PEvalRotateTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalRotateTerm Methods pevalRotateLeftTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalRotateRightTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # withSbvRotateTermConstraint :: (SIntegral (NonFuncSBVBaseType (WordN n)) => r) -> r Source # sbvRotateLeftTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvRotateRightTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalShiftTerm (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.PEvalShiftTerm Methods pevalShiftLeftTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # pevalShiftRightTerm :: Term (WordN n) -> Term (WordN n) -> Term (WordN n) Source # withSbvShiftTermConstraint :: (SIntegral (NonFuncSBVBaseType (WordN n)) => r) -> r Source # sbvShiftLeftTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # sbvShiftRightTerm :: SBVType (WordN n) -> SBVType (WordN n) -> SBVType (WordN n) Source # | |||||
(KnownNat w, 1 <= w) => SBVRep (WordN w) Source # | |||||
(KnownNat w, 1 <= w) => SupportedNonFuncPrim (WordN w) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.SupportedPrim Methods conNonFuncSBVTerm :: WordN w -> SBV (NonFuncSBVBaseType (WordN w)) Source # symNonFuncSBVTerm :: SBVFreshMonad m => String -> m (SBV (NonFuncSBVBaseType (WordN w))) Source # withNonFuncPrim :: (NonFuncPrimConstraint (WordN w) => r) -> r Source # | |||||
(KnownNat w, 1 <= w) => SupportedPrim (WordN w) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.SupportedPrim Methods primTypeRep :: TypeRep (WordN w) Source # sameCon :: WordN w -> WordN w -> Bool Source # hashConWithSalt :: Int -> WordN w -> Int Source # pformatCon :: WordN w -> String Source # defaultValue :: WordN w Source # pevalITETerm :: Term Bool -> Term (WordN w) -> Term (WordN w) -> Term (WordN w) Source # pevalEqTerm :: Term (WordN w) -> Term (WordN w) -> Term Bool Source # pevalDistinctTerm :: NonEmpty (Term (WordN w)) -> Term Bool Source # conSBVTerm :: WordN w -> SBVType (WordN w) Source # symSBVName :: TypedSymbol 'AnyKind (WordN w) -> Int -> String Source # symSBVTerm :: SBVFreshMonad m => String -> m (SBVType (WordN w)) Source # withPrim :: ((PrimConstraint (WordN w), SMTDefinable (SBVType (WordN w)), Mergeable (SBVType (WordN w)), Typeable (SBVType (WordN w))) => a) -> a Source # sbvIte :: SBV Bool -> SBVType (WordN w) -> SBVType (WordN w) -> SBVType (WordN w) Source # sbvEq :: SBVType (WordN w) -> SBVType (WordN w) -> SBV Bool Source # sbvDistinct :: NonEmpty (SBVType (WordN w)) -> SBV Bool Source # parseSMTModelResult :: Int -> ([([CV], CV)], CV) -> WordN w Source # castTypedSymbol :: forall (knd' :: SymbolKind) (knd :: SymbolKind). IsSymbolKind knd' => TypedSymbol knd (WordN w) -> Maybe (TypedSymbol knd' (WordN w)) Source # funcDummyConstraint :: SBVType (WordN w) -> SBV Bool Source # | |||||
(KnownNat w, 1 <= w) => SupportedPrimConstraint (WordN w) Source # | |||||
Defined in Grisette.Internal.SymPrim.Prim.Internal.Instances.SupportedPrim Associated Types
| |||||
(KnownNat n, 1 <= n) => SymRep (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
(KnownNat n, 1 <= n) => UnifiedConRep (WordN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
(KnownNat n, 1 <= n) => UnifiedSymRep (WordN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
Hashable (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
BitCast (WordN 1) Bool Source # | |||||
BitCast (WordN 8) Int8 Source # | |||||
BitCast (WordN 8) Word8 Source # | |||||
BitCast (WordN 16) Int16 Source # | |||||
BitCast (WordN 16) Word16 Source # | |||||
BitCast (WordN 32) Int32 Source # | |||||
BitCast (WordN 32) Word32 Source # | |||||
BitCast (WordN 64) Int64 Source # | |||||
BitCast (WordN 64) Word64 Source # | |||||
PEvalBitCastTerm (WordN 1) Bool Source # | |||||
(KnownNat n, 1 <= n) => PEvalFromIntegralTerm (WordN n) AlgReal Source # | |||||
(KnownNat n, 1 <= n) => PEvalFromIntegralTerm (WordN n) Integer Source # | |||||
(KnownNat n, 1 <= n) => BitCast (IntN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => BitCast (WordN n) (IntN n) Source # | |||||
(KnownNat n, 1 <= n) => GenSym (WordN n) (WordN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym | |||||
(KnownNat n, 1 <= n) => GenSymSimple (WordN n) (WordN n) Source # | |||||
Defined in Grisette.Internal.Core.Data.Class.GenSym Methods simpleFresh :: MonadFresh m => WordN n -> m (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => SignConversion (WordN n) (IntN n) Source # | |||||
(KnownNat n, 1 <= n) => Solvable (WordN n) (SymWordN n) Source # | |||||
(KnownNat n, 1 <= n) => ToCon (WordN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => ToCon (SymWordN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (Union (WordN n)) (SymWordN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (WordN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => ToSym (WordN n) (SymWordN n) Source # | |||||
(KnownNat n, 1 <= n) => LinkedRep (WordN n) (SymWordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalBitCastTerm (IntN n) (WordN n) Source # | |||||
(KnownNat n, 1 <= n) => PEvalBitCastTerm (WordN n) (IntN n) Source # | |||||
(KnownNat n, 1 <= n, KnownNat m, 1 <= m) => PEvalFromIntegralTerm (IntN n) (WordN m) Source # | |||||
(KnownNat n, 1 <= n, KnownNat m, 1 <= m) => PEvalFromIntegralTerm (WordN n) (IntN m) Source # | |||||
(KnownNat n, 1 <= n, KnownNat m, 1 <= m) => PEvalFromIntegralTerm (WordN n) (WordN m) Source # | |||||
(ValidFP eb sb, r ~ (eb + sb)) => BitCast (WordN r) (FP eb sb) Source # | |||||
(n ~ (eb + sb), ValidFP eb sb, KnownNat n, 1 <= n) => PEvalBitCastTerm (WordN n) (FP eb sb) Source # | |||||
(KnownNat n, 1 <= n, ValidFP eb sb) => PEvalFromIntegralTerm (WordN n) (FP eb sb) Source # | |||||
(ValidFP eb sb, KnownNat n, 1 <= n) => IEEEFPConvertible (WordN n) (FP eb sb) FPRoundingMode Source # | |||||
Defined in Grisette.Internal.SymPrim.FP | |||||
(ValidFP eb sb, n ~ (eb + sb)) => BitCastCanonical (FP eb sb) (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.FP Methods bitCastCanonicalValue :: proxy (FP eb sb) -> WordN n Source # | |||||
(ValidFP eb sb, r ~ (eb + sb)) => BitCastOr (FP eb sb) (WordN r) Source # | |||||
(n ~ (eb + sb), ValidFP eb sb, KnownNat n, 1 <= n) => PEvalBitCastOrTerm (FP eb sb) (WordN n) Source # | |||||
type Rep (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
type FunType (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.BV | |||||
type NonFuncSBVBaseType (WordN w) Source # | |||||
type PrimConstraint (WordN w) Source # | |||||
type SBVType (WordN w) Source # | |||||
type SymType (WordN n) Source # | |||||
Defined in Grisette.Internal.SymPrim.SymBV | |||||
type ConType (WordN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep | |||||
type SymType (WordN n) Source # | |||||
Defined in Grisette.Internal.Unified.Class.UnifiedRep |
readBinary :: Num a => ReadPrec a Source #
Read a binary number.