python-sat 0.1.8.dev10__cp310-cp310-win_amd64.whl → 1.8.dev26__cp310-cp310-win_amd64.whl
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.
Potentially problematic release.
This version of python-sat might be problematic. Click here for more details.
- pycard.cp310-win_amd64.pyd +0 -0
- pysat/__init__.py +4 -4
- pysat/_fileio.py +30 -14
- pysat/allies/approxmc.py +22 -22
- pysat/allies/unigen.py +435 -0
- pysat/card.py +13 -12
- pysat/engines.py +1302 -0
- pysat/examples/bbscan.py +663 -0
- pysat/examples/bica.py +691 -0
- pysat/examples/fm.py +12 -8
- pysat/examples/genhard.py +24 -23
- pysat/examples/hitman.py +53 -37
- pysat/examples/lbx.py +56 -15
- pysat/examples/lsu.py +28 -14
- pysat/examples/mcsls.py +53 -15
- pysat/examples/models.py +6 -4
- pysat/examples/musx.py +15 -7
- pysat/examples/optux.py +71 -32
- pysat/examples/primer.py +620 -0
- pysat/examples/rc2.py +268 -69
- pysat/formula.py +3241 -229
- pysat/pb.py +85 -37
- pysat/process.py +16 -2
- pysat/solvers.py +2119 -724
- pysolvers.cp310-win_amd64.pyd +0 -0
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/approxmc.py +22 -22
- python_sat-1.8.dev26.data/scripts/bbscan.py +663 -0
- python_sat-1.8.dev26.data/scripts/bica.py +691 -0
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/fm.py +12 -8
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/genhard.py +24 -23
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/lbx.py +56 -15
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/lsu.py +28 -14
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/mcsls.py +53 -15
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/models.py +6 -4
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/musx.py +15 -7
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/optux.py +71 -32
- python_sat-1.8.dev26.data/scripts/primer.py +620 -0
- {python_sat-0.1.8.dev10.data → python_sat-1.8.dev26.data}/scripts/rc2.py +268 -69
- python_sat-1.8.dev26.data/scripts/unigen.py +435 -0
- {python_sat-0.1.8.dev10.dist-info → python_sat-1.8.dev26.dist-info}/METADATA +19 -5
- python_sat-1.8.dev26.dist-info/RECORD +48 -0
- {python_sat-0.1.8.dev10.dist-info → python_sat-1.8.dev26.dist-info}/WHEEL +1 -1
- python_sat-0.1.8.dev10.dist-info/RECORD +0 -39
- {python_sat-0.1.8.dev10.dist-info → python_sat-1.8.dev26.dist-info/licenses}/LICENSE.txt +0 -0
- {python_sat-0.1.8.dev10.dist-info → python_sat-1.8.dev26.dist-info}/top_level.txt +0 -0
pysolvers.cp310-win_amd64.pyd
CHANGED
|
Binary file
|
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
Module description
|
|
23
23
|
==================
|
|
24
24
|
|
|
25
|
-
This module provides interface `ApproxMCv4
|
|
25
|
+
This module provides interface to `ApproxMCv4
|
|
26
26
|
<https://github.com/meelgroup/approxmc/>`_, a state-of-the-art
|
|
27
27
|
*approximate* model counter utilising an improved version of CryptoMiniSat
|
|
28
|
-
give approximate model counts to problems of size and complexity that
|
|
29
|
-
out of reach for earlier approximate model counters. The original work
|
|
30
|
-
ApproxMCv4 has been published in [1]_ and [2]_.
|
|
28
|
+
to give approximate model counts to problems of size and complexity that
|
|
29
|
+
are out of reach for earlier approximate model counters. The original work
|
|
30
|
+
on ApproxMCv4 has been published in [1]_ and [2]_.
|
|
31
31
|
|
|
32
32
|
.. [1] Mate Soos, Kuldeep S. Meel. *BIRD: Engineering an Efficient CNF-XOR
|
|
33
33
|
SAT Solver and Its Applications to Approximate Model Counting*. AAAI
|
|
@@ -47,17 +47,17 @@
|
|
|
47
47
|
The interface gives access to :class:`Counter`, which expects a formula in
|
|
48
48
|
:class:`.CNF` as input. Given a few additional (optional) arguments,
|
|
49
49
|
including a random seed, *tolerance factor* :math:`\\varepsilon`, and
|
|
50
|
-
*confidence* :math
|
|
50
|
+
*confidence* :math:`\\delta`, the class can be used to get an approximate
|
|
51
51
|
number of models of the formula, subject to the given tolerance factor and
|
|
52
52
|
confidence parameter.
|
|
53
53
|
|
|
54
|
-
Namely, given a CNF formula :math
|
|
55
|
-
as the exact number of models, and parameters
|
|
56
|
-
and :math
|
|
57
|
-
:math:`C`, which is an approximate number of
|
|
58
|
-
:math
|
|
59
|
-
:math:`\\textrm{Pr}
|
|
60
|
-
(1+\\varepsilon)
|
|
54
|
+
Namely, given a CNF formula :math:`\\mathcal{F}` with
|
|
55
|
+
:math:`\\#\\mathcal{F}` as the exact number of models, and parameters
|
|
56
|
+
:math:`\\varepsilon\\in(0,1]` and :math:`\\delta\\in[0,1)`, the counter
|
|
57
|
+
computes and reports a value :math:`C`, which is an approximate number of
|
|
58
|
+
models of :math:`\\mathcal{F}`, such that
|
|
59
|
+
:math:`\\textrm{Pr}\\left[\\frac{1}{1+\\varepsilon}\\#\\mathcal{F}\\leq
|
|
60
|
+
C\\leq (1+\\varepsilon)\\#\\mathcal{F}\\right]\\geq 1-\\delta`.
|
|
61
61
|
|
|
62
62
|
The implementation can be used as an executable (the list of available
|
|
63
63
|
command-line options can be shown using ``approxmc.py -h``) in the
|
|
@@ -131,13 +131,13 @@ class Counter(object):
|
|
|
131
131
|
models of the formula, subject to *tolerance factor* ``epsilon`` and
|
|
132
132
|
*confidence parameter* ``delta``.
|
|
133
133
|
|
|
134
|
-
Namely, given a CNF formula :math
|
|
135
|
-
:math:`\\varepsilon
|
|
136
|
-
computes and reports a value :math:`C` such that
|
|
137
|
-
:math:`\\textrm{Pr}
|
|
138
|
-
C
|
|
139
|
-
:math
|
|
140
|
-
:math
|
|
134
|
+
Namely, given a CNF formula :math:`\\mathcal{F}` and parameters
|
|
135
|
+
:math:`\\varepsilon\\in(0,1]` and :math:`\\delta\\in[0,1)`, the
|
|
136
|
+
counter computes and reports a value :math:`C` such that
|
|
137
|
+
:math:`\\textrm{Pr}\\left[\\frac{1}{1+\\varepsilon}\\#\\mathcal{F}\\leq
|
|
138
|
+
C\\leq (1+\\varepsilon)\\#\\mathcal{F}\\right]\\geq 1-\\delta`. Here,
|
|
139
|
+
:math:`\\#\\mathcal{F}` denotes the exact model count for formula
|
|
140
|
+
:math:`\\mathcal{F}`.
|
|
141
141
|
|
|
142
142
|
The ``formula`` argument can be left unspecified at this stage. In
|
|
143
143
|
this case, a user is expected to add all the relevant clauses using
|
|
@@ -147,7 +147,7 @@ class Counter(object):
|
|
|
147
147
|
used by ApproxMC. The value of ``seed`` is set to ``1`` by default.
|
|
148
148
|
|
|
149
149
|
:param formula: CNF formula
|
|
150
|
-
:param seed:
|
|
150
|
+
:param seed: integer seed value
|
|
151
151
|
:param epsilon: tolerance factor
|
|
152
152
|
:param delta: confidence parameter
|
|
153
153
|
:param verbose: verbosity level
|
|
@@ -241,7 +241,7 @@ class Counter(object):
|
|
|
241
241
|
of :class:`Counter` or through a series of calls to
|
|
242
242
|
:meth:`add_clause`, this method runs the ApproxMC counter with the
|
|
243
243
|
specified values of tolerance :math:`\\varepsilon` and confidence
|
|
244
|
-
:math
|
|
244
|
+
:math:`\\delta` parameters, as well as the random ``seed`` value,
|
|
245
245
|
and returns the number of models estimated.
|
|
246
246
|
|
|
247
247
|
A user may specify an argument ``projection``, which is a list of
|
|
@@ -371,7 +371,7 @@ if __name__ == '__main__':
|
|
|
371
371
|
delta, epsilon, projection, seed, verbose, files = parse_options()
|
|
372
372
|
|
|
373
373
|
# parsing the input formula
|
|
374
|
-
if files and re.search('\.cnf(\.(gz|bz2|lzma|xz))?$', files[0]):
|
|
374
|
+
if files and re.search(r'\.cnf(\.(gz|bz2|lzma|xz))?$', files[0]):
|
|
375
375
|
formula = CNF(from_file=files[0])
|
|
376
376
|
|
|
377
377
|
# creating the counter object
|