mythril.laser.smt.solver package¶
Submodules¶
mythril.laser.smt.solver.independence_solver module¶
-
class
mythril.laser.smt.solver.independence_solver.
DependenceBucket
(variables=None, conditions=None)[source]¶ Bases:
object
Bucket object to contain a set of conditions that are dependent on each other
-
class
mythril.laser.smt.solver.independence_solver.
DependenceMap
[source]¶ Bases:
object
DependenceMap object that maintains a set of dependence buckets, used to separate independent smt queries
-
class
mythril.laser.smt.solver.independence_solver.
IndependenceSolver
[source]¶ Bases:
object
An SMT solver object that uses independence optimization
-
add
(*constraints) → None[source]¶ Adds the constraints to this solver.
Parameters: constraints – constraints to add
-
append
(*constraints) → None[source]¶ Adds the constraints to this solver.
Parameters: constraints – constraints to add
-
check
(**kwargs)¶
-
mythril.laser.smt.solver.solver module¶
This module contains an abstract SMT representation of an SMT solver.
-
class
mythril.laser.smt.solver.solver.
BaseSolver
(raw: T)[source]¶ Bases:
typing.Generic
-
add
(*constraints) → None[source]¶ Adds the constraints to this solver.
Parameters: constraints – Returns:
-
append
(*constraints) → None[source]¶ Adds the constraints to this solver.
Parameters: constraints – Returns:
-
check
(**kwargs)¶
-
-
class
mythril.laser.smt.solver.solver.
Optimize
[source]¶ Bases:
mythril.laser.smt.solver.solver.BaseSolver
An optimizing smt solver.