| 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 | Safe-Inferred |
| Language | Haskell2010 |
Grisette.Internal.Backend.SymBiMap
Description
Synopsis
- data SymBiMap = SymBiMap {}
- emptySymBiMap :: SymBiMap
- sizeBiMap :: SymBiMap -> Int
- addBiMap :: HasCallStack => SomeTerm -> Dynamic -> String -> SomeTypedSymbol -> SymBiMap -> SymBiMap
- addBiMapIntermediate :: HasCallStack => SomeTerm -> Dynamic -> SymBiMap -> SymBiMap
- findStringToSymbol :: String -> SymBiMap -> Maybe SomeTypedSymbol
- lookupTerm :: HasCallStack => SomeTerm -> SymBiMap -> Maybe Dynamic
Documentation
A bidirectional map between symbolic Grisette terms and sbv terms.
Constructors
| SymBiMap | |
Fields | |
Instances
| Show SymBiMap Source # | |
| MonadIO m => MonadicSolver (SBVIncrementalT n m) Source # | |
Defined in Grisette.Internal.Backend.Solving Methods monadicSolverPush :: Int -> SBVIncrementalT n m () Source # monadicSolverPop :: Int -> SBVIncrementalT n m () Source # monadicSolverResetAssertions :: SBVIncrementalT n m () Source # monadicSolverAssert :: SymBool -> SBVIncrementalT n m () Source # monadicSolverCheckSat :: SBVIncrementalT n m (Either SolvingFailure Model) Source # | |
emptySymBiMap :: SymBiMap Source #
An empty bidirectional map.
addBiMap :: HasCallStack => SomeTerm -> Dynamic -> String -> SomeTypedSymbol -> SymBiMap -> SymBiMap Source #
Add a new entry to the bidirectional map.
addBiMapIntermediate :: HasCallStack => SomeTerm -> Dynamic -> SymBiMap -> SymBiMap Source #
Add a new entry to the bidirectional map for intermediate values.
findStringToSymbol :: String -> SymBiMap -> Maybe SomeTypedSymbol Source #
Find a symbolic Grisette term from a string.
lookupTerm :: HasCallStack => SomeTerm -> SymBiMap -> Maybe Dynamic Source #
Look up an sbv value with a symbolic Grisette term in the bidirectional map.