Beispiel #1
0
 def __init__(self, environment, logic=None):
     QuantifierEliminator.__init__(self)
     self.environment = environment
     self.logic = logic
     self.ddmanager = repycudd.DdManager()
     self.converter = BddConverter(environment=environment,
                                   ddmanager=self.ddmanager)
Beispiel #2
0
 def __init__(self, environment, logic=None):
     QuantifierEliminator.__init__(self)
     self.environment = environment
     self.logic = logic
     self.converter = Z3Converter(environment, z3.main_ctx())
     self._cache = {}
     self._cache_term = {}
Beispiel #3
0
 def __init__(self, environment, logic=None):
     QuantifierEliminator.__init__(self)
     self.environment = environment
     self.logic = logic
     self.ddmanager = repycudd.DdManager()
     self.converter = BddConverter(environment=environment,
                                   ddmanager=self.ddmanager)
Beispiel #4
0
        def __init__(self, environment, logic=None, algorithm='fm'):
            """Initialize the Quantifier Eliminator using 'fm' or 'lw'.

            fm: Fourier-Motzkin (default)
            lw: Loos-Weisspfenning
            """
            if algorithm not in ['fm', 'lw']:
                raise ValueError("Algorithm can be either 'fm' or 'lw'")
            QuantifierEliminator.__init__(self)
            IdentityDagWalker.__init__(self, env=environment)
            self.msat_config = mathsat.msat_create_default_config("QF_LRA")
            self.msat_env = MSatEnv(self.msat_config)
            mathsat.msat_destroy_config(self.msat_config)

            self.set_function(self.walk_identity, op.SYMBOL, op.REAL_CONSTANT,
                              op.BOOL_CONSTANT, op.INT_CONSTANT)
            self.logic = logic
            self.algorithm = algorithm
            self.converter = MSatConverter(environment, self.msat_env)
Beispiel #5
0
 def __init__(self, environment, logic=None):
     QuantifierEliminator.__init__(self)
     self.environment = environment
     self.logic = logic
     self.converter = Z3Converter(environment, z3.main_ctx())
Beispiel #6
0
 def __init__(self, environment, logic=None):
     QuantifierEliminator.__init__(self)
     self.environment = environment
     self.logic = logic
     self.converter = Z3Converter(environment, z3._get_ctx(None))