Exemple #1
0
 def get_installed_version(self):
     with TemporaryPath([self.bindings_dir]):
         try:
             import mathsat
             version_str = mathsat.msat_get_version()
             m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$", version_str)
             if m is None:
                 return None
             return m.group(1)
         except ImportError:
             if "mathsat" in sys.modules:
                 del sys.modules["mathsat"]
             return None
Exemple #2
0
 def get_installed_version(self):
     with TemporaryPath([self.bindings_dir]):
         version = None
         try:
             import mathsat
             version_str = mathsat.msat_get_version()
             m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$", version_str)
             if m is not None:
                 version = m.group(1)
         finally:
             if "mathsat" in sys.modules:
                 del sys.modules["mathsat"]
             return version
Exemple #3
0
 def get_installed_version(self):
     with TemporaryPath([self.bindings_dir]):
         version = None
         try:
             import mathsat
             version_str = mathsat.msat_get_version()
             m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$", version_str)
             if m is not None:
                 version = m.group(1)
         finally:
             if "mathsat" in sys.modules:
                 del sys.modules["mathsat"]
             # Return None, without raising an exception
             # pylint: disable=lost-exception
             return version
Exemple #4
0
 def get_installed_version(self):
     with TemporaryPath([self.bindings_dir]):
         version = None
         try:
             import mathsat
             version_str = mathsat.msat_get_version()
             m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$",
                          version_str)
             if m is not None:
                 version = m.group(1)
         finally:
             if "mathsat" in sys.modules:
                 del sys.modules["mathsat"]
             # Return None, without raising an exception
             # pylint: disable=lost-exception
             return version
Exemple #5
0
def check_version(module):
    try:
        if module == "z3":
            import z3
            (major, minor, ver, _) = z3.get_version()
            version = "%d.%d.%d" % (major, minor, ver)

        elif module == "msat":
            import mathsat
            version_str = mathsat.msat_get_version()
            m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$", version_str)
            if m is not None:
                version = m.group(1)

        elif module == "cudd":
            import repycudd
            doc = repycudd.DOCSTRING
            m = re.match(r"^PyCUDD (\d+\.\d+\.\d+).*", doc)
            if m is not None:
                version = m.group(1)

        elif module == "btor":
            import pyboolector
            version = "OK"  # Just checking if import succeeds

        elif module == "cvc4":
            import CVC4
            version = CVC4.Configuration_getVersionString()

        elif module == "picosat":
            import picosat
            version = picosat.picosat_version()

        elif module == "yices":
            import yicespy
            v = yicespy.__dict__['__YICES_VERSION']
            m = yicespy.__dict__['__YICES_VERSION_MAJOR']
            p = yicespy.__dict__['__YICES_VERSION_PATCHLEVEL']
            version = "%d.%d.%d" % (v, m, p)
        else:
            print("Invalid argument '%s'" % module)
            exit(-2)

    except ImportError:
        version = None

    return version
Exemple #6
0
def check_version(module):
    try:
        if module == "z3":
            import z3
            (major, minor, ver, _) = z3.get_version()
            version = "%d.%d.%d" % (major, minor, ver)

        elif module == "msat":
            import mathsat
            version_str = mathsat.msat_get_version()
            m = re.match(r"^MathSAT5 version (\d+\.\d+\.\d+) .*$", version_str)
            if m is not None:
                version = m.group(1)

        elif module == "cudd":
            import repycudd
            doc = repycudd.DOCSTRING
            m = re.match(r"^PyCUDD (\d+\.\d+\.\d+).*", doc)
            if m is not None:
                version = m.group(1)

        elif module == "btor":
            import boolector
            version = "OK" # Just checking if import succeeds

        elif module == "cvc4":
            import CVC4
            version = CVC4.Configuration_getVersionString()

        elif module == "picosat":
            import picosat
            version = picosat.picosat_version()

        elif module == "yices":
            import yicespy
            v = yicespy.__dict__['__YICES_VERSION']
            m = yicespy.__dict__['__YICES_VERSION_MAJOR']
            p = yicespy.__dict__['__YICES_VERSION_PATCHLEVEL']
            version = "%d.%d.%d" % (v, m, p)
        else:
            print("Invalid argument '%s'"  % module)
            exit(-2)

    except ImportError:
        version = None

    return version