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.Prim.Internal.Instances.PEvalShiftTerm
Contents
Description
Synopsis
- pevalFiniteBitsSymShiftShiftLeftTerm :: forall bv (n :: Nat). (forall (m :: Nat). (KnownNat m, 1 <= m) => Integral (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SymShift (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SupportedPrim (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => PEvalShiftTerm (bv m), PEvalBVTerm bv, KnownNat n, 1 <= n) => Term (bv n) -> Term (bv n) -> Term (bv n)
- pevalFiniteBitsSymShiftShiftRightTerm :: forall bv (n :: Nat). (forall (m :: Nat). (KnownNat m, 1 <= m) => Integral (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SymShift (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SupportedPrim (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => PEvalShiftTerm (bv m), PEvalBVTerm bv, KnownNat n, 1 <= n) => Term (bv n) -> Term (bv n) -> Term (bv n)
Documentation
pevalFiniteBitsSymShiftShiftLeftTerm :: forall bv (n :: Nat). (forall (m :: Nat). (KnownNat m, 1 <= m) => Integral (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SymShift (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SupportedPrim (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => PEvalShiftTerm (bv m), PEvalBVTerm bv, KnownNat n, 1 <= n) => Term (bv n) -> Term (bv n) -> Term (bv n) Source #
Partial evaluation of symbolic shift left term for finite bits types.
pevalFiniteBitsSymShiftShiftRightTerm :: forall bv (n :: Nat). (forall (m :: Nat). (KnownNat m, 1 <= m) => Integral (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SymShift (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => SupportedPrim (bv m), forall (m :: Nat). (KnownNat m, 1 <= m) => PEvalShiftTerm (bv m), PEvalBVTerm bv, KnownNat n, 1 <= n) => Term (bv n) -> Term (bv n) -> Term (bv n) Source #
Partial evaluation of symbolic shift right term for finite bits types.
Orphan instances
(KnownNat n, 1 <= n) => PEvalShiftTerm (IntN n) Source # | |
Methods pevalShiftLeftTerm :: Term (IntN n) -> Term (IntN n) -> Term (IntN n) Source # pevalShiftRightTerm :: Term (IntN n) -> Term (IntN n) -> Term (IntN n) Source # withSbvShiftTermConstraint :: (SIntegral (NonFuncSBVBaseType (IntN n)) => r) -> r Source # sbvShiftLeftTerm :: SBVType (IntN n) -> SBVType (IntN n) -> SBVType (IntN n) Source # sbvShiftRightTerm :: SBVType (IntN n) -> SBVType (IntN n) -> SBVType (IntN n) Source # | |
(KnownNat n, 1 <= n) => PEvalShiftTerm (WordN n) Source # | |
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 # |