PySMT 0.7.5__tar.gz → 0.9.1.dev161__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- opt/hostedtoolcache/Python/3.8.12/x64/bin/pysmt-install +33 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/PySMT-0.9.1.dev161-py3.8.egg-info}/PKG-INFO +1 -3
- {PySMT-0.7.5/PySMT.egg-info → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/PySMT-0.9.1.dev161-py3.8.egg-info}/SOURCES.txt +7 -2
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/PySMT-0.9.1.dev161-py3.8.egg-info/entry_points.txt +3 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/__init__.py +21 -24
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__main__.py +35 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/__main__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/configuration.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/constants.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/decorators.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/environment.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/exceptions.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/factory.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/fnode.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/formula.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/logics.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/operators.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/oracles.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/parsing.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/printers.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/rewritings.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/shortcuts.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/simplifier.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/substituter.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/type_checker.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/typing.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/__pycache__/utils.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/__pycache__/check_version.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/__pycache__/install.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/__pycache__/shell.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/check_version.py +1 -1
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/install.py +31 -29
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/base.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/bdd.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/btor.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/cvc4.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/msat.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/pico.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/yices.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/__pycache__/z3.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/base.py +94 -12
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/bdd.py +9 -24
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/btor.py +105 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/cmd/installers/cvc4.py +92 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/msat.py +7 -1
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/pico.py +2 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/yices.py +9 -5
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/z3.py +23 -11
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/shell.py +2 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/configuration.py +1 -1
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/constants.py +5 -17
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/environment.py +11 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/exceptions.py +1 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/factory.py +9 -15
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/fnode.py +101 -29
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/formula.py +78 -36
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/logics.py +2 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/operators.py +1 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/oracles.py +17 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/printers.py +4 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/rewritings.py +215 -8
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/shortcuts.py +66 -35
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/simplifier.py +354 -93
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/annotations.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/commands.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/printers.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/script.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/solver.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/__pycache__/utils.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/annotations.py +4 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/parser/__init__.py +1 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/parser/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/parser/__pycache__/parser.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/parser/parser.py +278 -166
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/printers.py +89 -11
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/script.py +29 -9
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/solver.py +28 -15
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/smtlib/utils.py +56 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/bdd.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/btor.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/cvc4.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/eager.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/interpolation.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/msat.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/options.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/pico.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/portfolio.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/qelim.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/smtlib.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/solver.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/yices.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/solvers/__pycache__/z3.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/bdd.py +2 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/btor.py +166 -149
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/cvc4.py +2 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/msat.py +45 -46
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/pico.py +5 -8
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/portfolio.py +4 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/solver.py +61 -23
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/yices.py +8 -8
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/z3.py +40 -71
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/substituter.py +138 -20
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/__init__.py +1 -1
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/examples.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_array.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_back.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_bdd.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_bv.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_bv_simplification.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_cnf.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_configuration.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_constants.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_cvc4_quantifiers.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_dwf.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_eager_model.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_env.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_euf.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_formula.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_hr_parsing.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_imports.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_int.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_interpolation.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_lira.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_logics.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_models.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_native_qe.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_nia.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_nlira.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_oracles.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_portfolio.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_printing.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_qe.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_regressions.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_rewritings.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_shannon_expansion.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_simplify.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_size.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_solving.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_sorts.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_string.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_typechecker.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_unsat_cores.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_walker_ext.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/__pycache__/test_walkers.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/examples.py +7 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/parser_utils.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_annotations.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_fuzzed.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_generic_wrapper.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_griggio.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_model_validation.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_examples.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_extensibility.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_lra.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_arrays.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_lia.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_lira.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_lra.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_nia.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_nra.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_uf.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_qf_ufbv.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_parser_type_error.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/__pycache__/test_smtlibscript.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/parser_utils.py +28 -8
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_annotations.py +5 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_fuzzed.py +4 -3
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_generic_wrapper.py +55 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_griggio.py +1 -1
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/test_model_validation.py +103 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/test_parser_examples.py +225 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_extensibility.py +5 -5
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_lra.py +6 -8
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/test_parser_qf_arrays.py +24 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_lia.py +6 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_lira.py +6 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_lra.py +7 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_nia.py +6 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_nra.py +6 -7
- PySMT-0.7.5/pysmt/test/smtlib/test_parser_qf_arrays.py → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/smtlib/test_parser_qf_uf.py +7 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_qf_ufbv.py +6 -7
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_smtlibscript.py +64 -11
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_bv.py +15 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/test_bv_simplification.py +433 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_cnf.py +2 -2
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_constants.py +1 -6
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_eager_model.py +2 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_formula.py +136 -139
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_interpolation.py +0 -8
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/test_nia.py +190 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_nlira.py +17 -5
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_oracles.py +10 -1
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_portfolio.py +3 -5
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_printing.py +31 -8
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_regressions.py +113 -23
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/test/test_rewritings.py +393 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_simplify.py +90 -5
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_solving.py +92 -60
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_sorts.py +1 -1
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_unsat_cores.py +22 -3
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_walkers.py +1 -3
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/typing.py +0 -20
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/utils.py +0 -11
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/walkers/__pycache__/__init__.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/walkers/__pycache__/dag.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/walkers/__pycache__/generic.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/walkers/__pycache__/identitydag.cpython-38.pyc +0 -0
- opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/pysmt/walkers/__pycache__/tree.cpython-38.pyc +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/walkers/generic.py +8 -4
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/walkers/identitydag.py +3 -0
- PySMT-0.7.5/LICENSE +0 -202
- PySMT-0.7.5/MANIFEST.in +0 -2
- PySMT-0.7.5/PySMT.egg-info/PKG-INFO +0 -52
- PySMT-0.7.5/PySMT.egg-info/entry_points.txt +0 -5
- PySMT-0.7.5/PySMT.egg-info/requires.txt +0 -1
- PySMT-0.7.5/README.rst +0 -223
- PySMT-0.7.5/docs/CHANGES.rst +0 -949
- PySMT-0.7.5/docs/api_ref.rst +0 -97
- PySMT-0.7.5/docs/development.rst +0 -429
- PySMT-0.7.5/docs/getting_started.rst +0 -232
- PySMT-0.7.5/docs/index.rst +0 -65
- PySMT-0.7.5/docs/tutorials.rst +0 -62
- PySMT-0.7.5/pysmt/cmd/installers/btor.py +0 -86
- PySMT-0.7.5/pysmt/cmd/installers/cvc4.py +0 -78
- PySMT-0.7.5/pysmt/cmd/installers/cvc4gpl.py +0 -80
- PySMT-0.7.5/pysmt/test/smtlib/test_parser_examples.py +0 -151
- PySMT-0.7.5/pysmt/test/test_bv_simplification.py +0 -99
- PySMT-0.7.5/pysmt/test/test_rewritings.py +0 -184
- PySMT-0.7.5/setup.cfg +0 -4
- PySMT-0.7.5/setup.py +0 -70
- {PySMT-0.7.5/PySMT.egg-info → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/PySMT-0.9.1.dev161-py3.8.egg-info}/dependency_links.txt +0 -0
- {PySMT-0.7.5/PySMT.egg-info → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/PySMT-0.9.1.dev161-py3.8.egg-info}/top_level.txt +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/cmd/installers/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/decorators.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/parsing.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/smtlib/commands.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/eager.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/interpolation.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/options.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/qelim.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/solvers/smtlib.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/smtlib/test_parser_type_error.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_array.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_back.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_bdd.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_configuration.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_cvc4_quantifiers.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_dwf.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_env.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_euf.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_hr_parsing.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_imports.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_int.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_lira.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_logics.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_models.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_native_qe.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_qe.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_shannon_expansion.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_size.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_string.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_typechecker.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/test/test_walker_ext.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/type_checker.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/walkers/__init__.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/walkers/dag.py +0 -0
- {PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/walkers/tree.py +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
#!/opt/hostedtoolcache/Python/3.8.12/x64/bin/python
|
|
2
|
+
# EASY-INSTALL-ENTRY-SCRIPT: 'PySMT==0.9.1.dev161','console_scripts','pysmt-install'
|
|
3
|
+
import re
|
|
4
|
+
import sys
|
|
5
|
+
|
|
6
|
+
# for compatibility with easy_install; see #2198
|
|
7
|
+
__requires__ = 'PySMT==0.9.1.dev161'
|
|
8
|
+
|
|
9
|
+
try:
|
|
10
|
+
from importlib.metadata import distribution
|
|
11
|
+
except ImportError:
|
|
12
|
+
try:
|
|
13
|
+
from importlib_metadata import distribution
|
|
14
|
+
except ImportError:
|
|
15
|
+
from pkg_resources import load_entry_point
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def importlib_load_entry_point(spec, group, name):
|
|
19
|
+
dist_name, _, _ = spec.partition('==')
|
|
20
|
+
matches = (
|
|
21
|
+
entry_point
|
|
22
|
+
for entry_point in distribution(dist_name).entry_points
|
|
23
|
+
if entry_point.group == group and entry_point.name == name
|
|
24
|
+
)
|
|
25
|
+
return next(matches).load()
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
globals().setdefault('load_entry_point', importlib_load_entry_point)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
if __name__ == '__main__':
|
|
32
|
+
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
|
33
|
+
sys.exit(load_entry_point('PySMT==0.9.1.dev161', 'console_scripts', 'pysmt-install')())
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: PySMT
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.1.dev161
|
|
4
4
|
Summary: A solver-agnostic library for SMT Formulae manipulation and solving
|
|
5
5
|
Home-page: http://www.pysmt.org
|
|
6
6
|
Author: PySMT Team
|
|
@@ -41,8 +41,6 @@ Description: ============================================================
|
|
|
41
41
|
PySMT assumes that the python bindings for the SMT Solver are installed and
|
|
42
42
|
accessible from your PYTHONPATH.
|
|
43
43
|
|
|
44
|
-
pySMT works on both Python 3 and Python 2.
|
|
45
|
-
|
|
46
44
|
|
|
47
45
|
Wanna know more?
|
|
48
46
|
================
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
LICENSE
|
|
2
2
|
MANIFEST.in
|
|
3
|
+
NOTICE
|
|
3
4
|
README.rst
|
|
4
5
|
setup.py
|
|
5
6
|
PySMT.egg-info/PKG-INFO
|
|
6
7
|
PySMT.egg-info/SOURCES.txt
|
|
7
8
|
PySMT.egg-info/dependency_links.txt
|
|
8
9
|
PySMT.egg-info/entry_points.txt
|
|
9
|
-
PySMT.egg-info/requires.txt
|
|
10
10
|
PySMT.egg-info/top_level.txt
|
|
11
11
|
docs/CHANGES.rst
|
|
12
12
|
docs/api_ref.rst
|
|
@@ -14,7 +14,9 @@ docs/development.rst
|
|
|
14
14
|
docs/getting_started.rst
|
|
15
15
|
docs/index.rst
|
|
16
16
|
docs/tutorials.rst
|
|
17
|
+
docs/tutorials/boolean_logic.rst
|
|
17
18
|
pysmt/__init__.py
|
|
19
|
+
pysmt/__main__.py
|
|
18
20
|
pysmt/configuration.py
|
|
19
21
|
pysmt/constants.py
|
|
20
22
|
pysmt/decorators.py
|
|
@@ -44,7 +46,6 @@ pysmt/cmd/installers/base.py
|
|
|
44
46
|
pysmt/cmd/installers/bdd.py
|
|
45
47
|
pysmt/cmd/installers/btor.py
|
|
46
48
|
pysmt/cmd/installers/cvc4.py
|
|
47
|
-
pysmt/cmd/installers/cvc4gpl.py
|
|
48
49
|
pysmt/cmd/installers/msat.py
|
|
49
50
|
pysmt/cmd/installers/pico.py
|
|
50
51
|
pysmt/cmd/installers/yices.py
|
|
@@ -55,6 +56,7 @@ pysmt/smtlib/commands.py
|
|
|
55
56
|
pysmt/smtlib/printers.py
|
|
56
57
|
pysmt/smtlib/script.py
|
|
57
58
|
pysmt/smtlib/solver.py
|
|
59
|
+
pysmt/smtlib/utils.py
|
|
58
60
|
pysmt/smtlib/parser/__init__.py
|
|
59
61
|
pysmt/smtlib/parser/parser.py
|
|
60
62
|
pysmt/solvers/__init__.py
|
|
@@ -96,6 +98,7 @@ pysmt/test/test_lira.py
|
|
|
96
98
|
pysmt/test/test_logics.py
|
|
97
99
|
pysmt/test/test_models.py
|
|
98
100
|
pysmt/test/test_native_qe.py
|
|
101
|
+
pysmt/test/test_nia.py
|
|
99
102
|
pysmt/test/test_nlira.py
|
|
100
103
|
pysmt/test/test_oracles.py
|
|
101
104
|
pysmt/test/test_portfolio.py
|
|
@@ -119,6 +122,7 @@ pysmt/test/smtlib/test_annotations.py
|
|
|
119
122
|
pysmt/test/smtlib/test_fuzzed.py
|
|
120
123
|
pysmt/test/smtlib/test_generic_wrapper.py
|
|
121
124
|
pysmt/test/smtlib/test_griggio.py
|
|
125
|
+
pysmt/test/smtlib/test_model_validation.py
|
|
122
126
|
pysmt/test/smtlib/test_parser_examples.py
|
|
123
127
|
pysmt/test/smtlib/test_parser_extensibility.py
|
|
124
128
|
pysmt/test/smtlib/test_parser_lra.py
|
|
@@ -128,6 +132,7 @@ pysmt/test/smtlib/test_parser_qf_lira.py
|
|
|
128
132
|
pysmt/test/smtlib/test_parser_qf_lra.py
|
|
129
133
|
pysmt/test/smtlib/test_parser_qf_nia.py
|
|
130
134
|
pysmt/test/smtlib/test_parser_qf_nra.py
|
|
135
|
+
pysmt/test/smtlib/test_parser_qf_uf.py
|
|
131
136
|
pysmt/test/smtlib/test_parser_qf_ufbv.py
|
|
132
137
|
pysmt/test/smtlib/test_parser_type_error.py
|
|
133
138
|
pysmt/test/smtlib/test_smtlibscript.py
|
{PySMT-0.7.5 → opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages}/pysmt/__init__.py
RENAMED
|
@@ -16,30 +16,27 @@
|
|
|
16
16
|
# limitations under the License.
|
|
17
17
|
#
|
|
18
18
|
|
|
19
|
-
VERSION = (0,
|
|
19
|
+
VERSION = (0, 9, 1, "dev", 161)
|
|
20
20
|
|
|
21
|
-
#
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
E.g. v0.5.1-4-g49a49f2-wip
|
|
30
|
-
* 4 commits after tag v0.5.1
|
|
31
|
-
* Latest commit "49a49f2"
|
|
32
|
-
* -wip: Working tree is dirty (non committed stuff)
|
|
33
|
-
See: https://git-scm.com/docs/git-describe
|
|
34
|
-
|
|
35
|
-
If the command fails we return __version__
|
|
36
|
-
"""
|
|
21
|
+
# Try to provide human-readable version of latest commit for dev versions
|
|
22
|
+
# E.g. v0.5.1-4-g49a49f2-wip
|
|
23
|
+
# * 4 commits after tag v0.5.1
|
|
24
|
+
# * Latest commit "49a49f2"
|
|
25
|
+
# * -wip: Working tree is dirty (non committed stuff)
|
|
26
|
+
# See: https://git-scm.com/docs/git-describe
|
|
27
|
+
if len(VERSION) == 5:
|
|
28
|
+
import subprocess
|
|
37
29
|
try:
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
git_version = subprocess.check_output(["git", "describe",
|
|
31
|
+
"--dirty=-wip"],
|
|
40
32
|
stderr=subprocess.STDOUT)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
commits_from_tag = git_version.strip().decode('ascii')
|
|
34
|
+
commits_from_tag = commits_from_tag.split("-")[1]
|
|
35
|
+
commits_from_tag = int(commits_from_tag)
|
|
36
|
+
VERSION = VERSION[:4] + (commits_from_tag,)
|
|
37
|
+
except Exception as ex:
|
|
38
|
+
pass
|
|
39
|
+
|
|
40
|
+
# PEP440 Format
|
|
41
|
+
__version__ = "%d.%d.%d.%s%d" % VERSION if len(VERSION) == 5 else \
|
|
42
|
+
"%d.%d.%d" % VERSION
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#
|
|
2
|
+
# This file is part of pySMT.
|
|
3
|
+
#
|
|
4
|
+
# Copyright 2014 Andrea Micheli and Marco Gario
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
def error():
|
|
20
|
+
print("Invalid option try 'install' or 'shell'")
|
|
21
|
+
exit(-1)
|
|
22
|
+
|
|
23
|
+
if __name__ == "__main__":
|
|
24
|
+
import sys
|
|
25
|
+
|
|
26
|
+
cmd = error
|
|
27
|
+
if len(sys.argv) >= 2:
|
|
28
|
+
sys.argv = sys.argv[1:]
|
|
29
|
+
if sys.argv[0] == 'install':
|
|
30
|
+
import pysmt.cmd.install
|
|
31
|
+
cmd = pysmt.cmd.install.main
|
|
32
|
+
elif sys.argv[0] == 'shell':
|
|
33
|
+
import pysmt.cmd.shell
|
|
34
|
+
cmd = pysmt.cmd.shell.main
|
|
35
|
+
cmd()
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -12,8 +12,6 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
from six.moves import input
|
|
16
|
-
|
|
17
15
|
import os
|
|
18
16
|
import argparse
|
|
19
17
|
import sys
|
|
@@ -24,20 +22,29 @@ from collections import namedtuple
|
|
|
24
22
|
from pysmt.cmd.installers import MSatInstaller, Z3Installer, PicoSATInstaller
|
|
25
23
|
from pysmt.cmd.installers import CVC4Installer, YicesInstaller, BtorInstaller
|
|
26
24
|
from pysmt.cmd.installers import CuddInstaller
|
|
25
|
+
from pysmt.cmd.installers.base import solver_install_site
|
|
27
26
|
|
|
28
27
|
from pysmt.environment import get_env
|
|
29
28
|
from pysmt.exceptions import PysmtException
|
|
30
|
-
from pysmt import
|
|
29
|
+
from pysmt import __version__ as pysmt_version
|
|
31
30
|
|
|
32
31
|
# Build a list of installers, one for each solver
|
|
33
|
-
Installer = namedtuple("Installer",
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
32
|
+
Installer = namedtuple("Installer",
|
|
33
|
+
["InstallerClass", "version", "extra_params"])
|
|
34
|
+
INSTALLERS = [
|
|
35
|
+
Installer(MSatInstaller, "5.6.1", {}),
|
|
36
|
+
Installer(CVC4Installer, "1.7-prerelease",
|
|
37
|
+
{"git_version" : "391ab9df6c3fd9a3771864900c1718534c1e4666"}),
|
|
38
|
+
Installer(Z3Installer, "4.8.7", {"osx": "10.14.6"}),
|
|
39
|
+
Installer(YicesInstaller, "2.6.2",
|
|
40
|
+
{"yicespy_version": "f0768ffeec15ea310f830d10878971c9998454ac"}),
|
|
41
|
+
Installer(BtorInstaller, "3.2.1", {}),
|
|
42
|
+
Installer(PicoSATInstaller, "965",
|
|
43
|
+
{"pypicosat_minor_version" : "1708010052"}),
|
|
44
|
+
Installer(CuddInstaller, "2.0.3",
|
|
45
|
+
{"git_version" : "ecb03d6d231273343178f566cc4d7258dcce52b4"}),
|
|
46
|
+
]
|
|
47
|
+
|
|
41
48
|
|
|
42
49
|
|
|
43
50
|
def get_requested_solvers():
|
|
@@ -108,7 +115,7 @@ def parse_options():
|
|
|
108
115
|
' variable PYSMT_SOLVER if not already '
|
|
109
116
|
'instaled on the system.')
|
|
110
117
|
parser.add_argument('--version', action='version',
|
|
111
|
-
version='%(prog)s {version}'.format(version=
|
|
118
|
+
version='%(prog)s {version}'.format(version=pysmt_version))
|
|
112
119
|
|
|
113
120
|
for i in INSTALLERS:
|
|
114
121
|
name = i.InstallerClass.SOLVER
|
|
@@ -137,19 +144,20 @@ def parse_options():
|
|
|
137
144
|
|
|
138
145
|
parser.add_argument('--confirm-agreement', dest='skip_intro',
|
|
139
146
|
action='store_true', default=False,
|
|
140
|
-
help='Confirm that you agree with the licenses of the
|
|
141
|
-
|
|
147
|
+
help='Confirm that you agree with the licenses of the'
|
|
148
|
+
' solvers and skip the interactive question')
|
|
142
149
|
|
|
143
150
|
install_path_default = os.path.join("~", ".smt_solvers")
|
|
144
151
|
parser.add_argument('--install-path', dest='install_path',
|
|
145
152
|
type=str, default=install_path_default,
|
|
146
|
-
help='The folder to use for the installation'
|
|
153
|
+
help='The folder to use for the installation'
|
|
154
|
+
' (defaults to: {!r})'.format(install_path_default))
|
|
147
155
|
|
|
148
|
-
py_bindings =
|
|
149
|
-
"python-bindings-%d.%d" % sys.version_info[0:2])
|
|
156
|
+
py_bindings = solver_install_site(plat_specific=True)
|
|
150
157
|
parser.add_argument('--bindings-path', dest='bindings_path',
|
|
151
158
|
type=str, default=py_bindings,
|
|
152
|
-
help='The folder to use for the bindings'
|
|
159
|
+
help='The folder to use for the bindings (defaults to the'
|
|
160
|
+
' relevant site-packages directory: {!r})'.format(py_bindings))
|
|
153
161
|
|
|
154
162
|
options = parser.parse_args()
|
|
155
163
|
return options
|
|
@@ -185,14 +193,14 @@ def main():
|
|
|
185
193
|
mirror_url += "/{archive_name}"
|
|
186
194
|
|
|
187
195
|
# This should work on any platform
|
|
188
|
-
install_dir= os.path.expanduser(options.install_path)
|
|
196
|
+
install_dir = os.path.expanduser(options.install_path)
|
|
189
197
|
if not os.path.exists(install_dir):
|
|
190
|
-
os.
|
|
198
|
+
os.makedirs(install_dir)
|
|
191
199
|
|
|
192
200
|
# This should work on any platform
|
|
193
|
-
bindings_dir= os.path.expanduser(options.bindings_path)
|
|
201
|
+
bindings_dir = os.path.expanduser(options.bindings_path)
|
|
194
202
|
if not os.path.exists(bindings_dir):
|
|
195
|
-
os.
|
|
203
|
+
os.makedirs(bindings_dir)
|
|
196
204
|
|
|
197
205
|
solvers_to_install = []
|
|
198
206
|
all_solvers = options.all_solvers
|
|
@@ -225,13 +233,11 @@ def main():
|
|
|
225
233
|
if platform.system().lower() == "windows":
|
|
226
234
|
if options.powershell:
|
|
227
235
|
print('$env:PythonPath += ";%s"' % bindings_dir)
|
|
228
|
-
print('$env:Path += ";%s"' % bindings_dir)
|
|
229
236
|
else:
|
|
230
237
|
print("set PYTHONPATH=" + bindings_dir + ";%PYTHONPATH%")
|
|
231
|
-
print("set PATH=" + bindings_dir + ";%PATH%")
|
|
232
238
|
else:
|
|
233
239
|
print("export PYTHONPATH=\"" + bindings_dir + ":${PYTHONPATH}\"")
|
|
234
|
-
|
|
240
|
+
|
|
235
241
|
|
|
236
242
|
else:
|
|
237
243
|
if len(solvers_to_install) == 0:
|
|
@@ -249,7 +255,3 @@ def main():
|
|
|
249
255
|
mirror_link=mirror_url,
|
|
250
256
|
**i.extra_params)
|
|
251
257
|
installer.install(force_redo=options.force_redo)
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
if __name__ == "__main__":
|
|
255
|
-
main()
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -17,16 +17,15 @@ import sys
|
|
|
17
17
|
import shutil
|
|
18
18
|
import zipfile
|
|
19
19
|
import tarfile
|
|
20
|
-
import six
|
|
21
20
|
import struct
|
|
22
21
|
import subprocess
|
|
22
|
+
import urllib.request
|
|
23
23
|
|
|
24
24
|
from contextlib import contextmanager
|
|
25
25
|
from distutils import spawn
|
|
26
|
+
from distutils.dist import Distribution
|
|
26
27
|
|
|
27
|
-
import
|
|
28
|
-
from six.moves import xrange
|
|
29
|
-
from six.moves.urllib.error import HTTPError, URLError
|
|
28
|
+
from urllib.error import HTTPError, URLError
|
|
30
29
|
|
|
31
30
|
|
|
32
31
|
@contextmanager
|
|
@@ -101,7 +100,7 @@ class SolverInstaller(object):
|
|
|
101
100
|
def download(self):
|
|
102
101
|
"""Downloads the archive from one of the mirrors"""
|
|
103
102
|
if not os.path.exists(self.archive_path):
|
|
104
|
-
for turn in
|
|
103
|
+
for turn in range(self.trials_404):
|
|
105
104
|
for i, link in enumerate(self.download_links()):
|
|
106
105
|
try:
|
|
107
106
|
return self.do_download(link, self.archive_path)
|
|
@@ -109,10 +108,11 @@ class SolverInstaller(object):
|
|
|
109
108
|
if e.code != 404:
|
|
110
109
|
raise
|
|
111
110
|
print("HTTP 404 while trying to get the archive using link" \
|
|
112
|
-
"
|
|
111
|
+
" '%s' (trial %d/%d)" % (link, turn+1, self.trials_404))
|
|
113
112
|
except URLError as e:
|
|
114
113
|
print("Error while trying to get the archive using link" \
|
|
115
|
-
"
|
|
114
|
+
" '%s' (trial %d/%d)" % (link, turn+1, self.trials_404))
|
|
115
|
+
raise e
|
|
116
116
|
|
|
117
117
|
def unpack(self):
|
|
118
118
|
"""Unpacks the archive"""
|
|
@@ -161,7 +161,7 @@ class SolverInstaller(object):
|
|
|
161
161
|
@staticmethod
|
|
162
162
|
def do_download(url, file_name):
|
|
163
163
|
"""Downloads the given url into the given file name"""
|
|
164
|
-
u =
|
|
164
|
+
u = urllib.request.urlopen(url)
|
|
165
165
|
f = open(file_name, 'wb')
|
|
166
166
|
meta = u.info()
|
|
167
167
|
if meta.get("Content-Length") and len(meta.get("Content-Length")) > 0:
|
|
@@ -203,18 +203,33 @@ class SolverInstaller(object):
|
|
|
203
203
|
get_output=get_output)
|
|
204
204
|
|
|
205
205
|
@staticmethod
|
|
206
|
-
def run(program, directory=None, env_variables=None, get_output=False
|
|
206
|
+
def run(program, directory=None, env_variables=None, get_output=False,
|
|
207
|
+
suppress_stderr=False):
|
|
207
208
|
"""Executes an arbitrary program"""
|
|
208
209
|
environment = os.environ.copy()
|
|
209
210
|
if env_variables is not None:
|
|
210
|
-
for k,v in
|
|
211
|
+
for k,v in env_variables.items():
|
|
211
212
|
environment[k] = v
|
|
212
213
|
|
|
214
|
+
stderr = None
|
|
215
|
+
if suppress_stderr:
|
|
216
|
+
stderr = open(os.devnull, 'w')
|
|
217
|
+
if isinstance(program, str):
|
|
218
|
+
program = program.split()
|
|
213
219
|
if get_output:
|
|
214
|
-
output = subprocess.check_output(program
|
|
220
|
+
output = subprocess.check_output(program,
|
|
221
|
+
env=environment,
|
|
222
|
+
cwd=directory,
|
|
223
|
+
stderr=stderr)
|
|
224
|
+
if suppress_stderr:
|
|
225
|
+
stderr.close()
|
|
215
226
|
return output.decode("ascii")
|
|
216
227
|
else:
|
|
217
|
-
subprocess.check_call(program
|
|
228
|
+
subprocess.check_call(program, env=environment,
|
|
229
|
+
cwd=directory, stderr=stderr)
|
|
230
|
+
if suppress_stderr:
|
|
231
|
+
stderr.close()
|
|
232
|
+
|
|
218
233
|
|
|
219
234
|
@staticmethod
|
|
220
235
|
def clean_dir(path):
|
|
@@ -293,3 +308,70 @@ class SolverInstaller(object):
|
|
|
293
308
|
if command is not None:
|
|
294
309
|
break
|
|
295
310
|
return command
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
def package_install_site(name='', user=False, plat_specific=False):
|
|
314
|
+
"""pip-inspired, distutils-based method for fetching the
|
|
315
|
+
default install location (site-packages path).
|
|
316
|
+
|
|
317
|
+
Returns virtual environment or system site-packages, unless
|
|
318
|
+
`user=True` in which case returns user-site (typ. under `~/.local/
|
|
319
|
+
on linux).
|
|
320
|
+
|
|
321
|
+
If there's a distinction (on a particular system) between platform
|
|
322
|
+
specific and pure python package locations, set `plat_specific=True`
|
|
323
|
+
to retrieve the former.
|
|
324
|
+
"""
|
|
325
|
+
|
|
326
|
+
dist = Distribution({'name': name})
|
|
327
|
+
dist.parse_config_files()
|
|
328
|
+
inst = dist.get_command_obj('install', create=True)
|
|
329
|
+
# NOTE: specifying user=True will create user-site
|
|
330
|
+
if user:
|
|
331
|
+
inst.user = user
|
|
332
|
+
inst.prefix = ""
|
|
333
|
+
inst.finalize_options()
|
|
334
|
+
|
|
335
|
+
# platform-specific site vs. purelib (platform-independent) site
|
|
336
|
+
if plat_specific:
|
|
337
|
+
loc = inst.install_platlib
|
|
338
|
+
else:
|
|
339
|
+
loc = inst.install_purelib
|
|
340
|
+
|
|
341
|
+
# install_lib specified in setup.cfg has highest precedence
|
|
342
|
+
if 'install_lib' in dist.get_option_dict('install'):
|
|
343
|
+
loc = inst.install_lib
|
|
344
|
+
|
|
345
|
+
return loc
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
def running_under_virtualenv():
|
|
349
|
+
"""
|
|
350
|
+
Return True if we're running inside a virtualenv, False otherwise.
|
|
351
|
+
|
|
352
|
+
Note: copied from pip.
|
|
353
|
+
"""
|
|
354
|
+
|
|
355
|
+
if hasattr(sys, 'real_prefix'):
|
|
356
|
+
return True
|
|
357
|
+
elif sys.prefix != getattr(sys, "base_prefix", sys.prefix):
|
|
358
|
+
return True
|
|
359
|
+
|
|
360
|
+
return False
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
def solver_install_site(plat_specific=False):
|
|
364
|
+
"""Determine solver's install site similarly to pip behaviour on Debian."""
|
|
365
|
+
|
|
366
|
+
# install to local user-site, unless in virtualenv or running as root
|
|
367
|
+
default_user = True
|
|
368
|
+
if running_under_virtualenv():
|
|
369
|
+
default_user = False
|
|
370
|
+
try:
|
|
371
|
+
if os.geteuid() == 0:
|
|
372
|
+
default_user = False
|
|
373
|
+
except:
|
|
374
|
+
# getuid/geteuid not supported on windows
|
|
375
|
+
pass
|
|
376
|
+
|
|
377
|
+
return package_install_site(user=default_user, plat_specific=plat_specific)
|
|
@@ -12,9 +12,6 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
import os
|
|
15
|
-
import subprocess
|
|
16
|
-
|
|
17
|
-
from six import PY2
|
|
18
15
|
|
|
19
16
|
from pysmt.cmd.installers.base import SolverInstaller
|
|
20
17
|
|
|
@@ -42,28 +39,16 @@ class CuddInstaller(SolverInstaller):
|
|
|
42
39
|
if self.architecture == "x86_64":
|
|
43
40
|
makefile = "Makefile_64bit"
|
|
44
41
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
print("Found python-config in %s" % command)
|
|
51
|
-
|
|
52
|
-
# Build the pycudd
|
|
53
|
-
prefix = None
|
|
54
|
-
p = subprocess.Popen([command, '--includes'], stdout=subprocess.PIPE, stderr=None)
|
|
55
|
-
prefix = p.stdout.read()
|
|
56
|
-
if PY2:
|
|
57
|
-
pass # Prefix is already a string
|
|
58
|
-
else:
|
|
59
|
-
# > PY3 Prefix is binary data
|
|
60
|
-
prefix = prefix.decode()
|
|
61
|
-
|
|
62
|
-
if not prefix or len(prefix) == 0:
|
|
63
|
-
prefix = "/usr"
|
|
42
|
+
swig = "swig"
|
|
43
|
+
swig_version = SolverInstaller.run("swig -version", get_output=True)
|
|
44
|
+
if '4.0.1' in swig_version or '4.0.0' in swig_version:
|
|
45
|
+
print("WARNING: the BDD solver does not work with Swig4 < 4.0.2. Fallback to Swig3")
|
|
46
|
+
swig = "swig3.0" # This is the Ubuntu naming of the executable
|
|
64
47
|
|
|
65
|
-
|
|
66
|
-
|
|
48
|
+
import distutils.sysconfig as sysconfig
|
|
49
|
+
PYTHON_INCLUDE_DIR = sysconfig.get_python_inc()
|
|
50
|
+
SolverInstaller.run("make -C %s -f %s PYTHON_INCL=-I%s SWIG=%s" %
|
|
51
|
+
(self.extract_path, makefile, PYTHON_INCLUDE_DIR, swig))
|
|
67
52
|
|
|
68
53
|
|
|
69
54
|
def move(self):
|