Simon Cruanes
1779b7115a
wip: proof production (incl. better tracking of proofs in CC)
2021-10-11 14:27:14 -04:00
Simon Cruanes
0550f6fcfa
wip: proof production
2021-10-09 00:51:15 -04:00
Simon Cruanes
d3537f2c3f
wip: refactor proof
2021-10-07 20:49:39 -04:00
Simon Cruanes
bbb995b0d5
refactor some names related to proofs; wip add unit paramod
2021-10-03 20:32:37 -04:00
Simon Cruanes
04f1ba063d
wip: adapt CC to new proofs
2021-09-29 22:19:16 -04:00
Simon Cruanes
df40b5a5c1
wip: refactor(sat): generate detailed proofs again
...
because proofs now require hypotheses but not in a resolution order, we
can still do conflict minimization.
2021-09-29 22:18:36 -04:00
Simon Cruanes
4621cc948f
feat(core): change the way proofs work
...
Now a proof returns a `step_id` which identifies its resulting clause.
This might be a dummy value when proofs are disabled.
We attach a step_id to each new clause to make sure it's properly
tracked, but step_ids might outlive their clause (and the actual proof
data might be on disk, only keeping in ram a small unique identifier).
2021-09-29 22:16:22 -04:00
Simon Cruanes
313e9db026
feat(vec): add copy
2021-09-29 22:16:10 -04:00
Simon Cruanes
5e0652687a
wip: proof production using BARE for storage
2021-09-28 21:06:01 -04:00
Simon Cruanes
bbe366989c
perf(sat): use Atom.Vec for temporary atom array
2021-09-27 19:28:45 -04:00
Simon Cruanes
74326b39c0
feat(vec): factor a bit of code for auxiliary functions in vectors
2021-09-27 19:26:04 -04:00
Simon Cruanes
acc682c5af
refactor(cc): simple renaming
2021-09-27 19:26:04 -04:00
Simon Cruanes
86512dbed0
utils
2021-09-27 19:22:48 -04:00
Simon Cruanes
c9e257d40b
cleanup
2021-09-27 12:14:04 -04:00
Simon Cruanes
5bed2d1c5f
detail
2021-09-26 23:56:40 -04:00
Simon Cruanes
a22bfe06c1
remove debug msgs
2021-08-31 23:19:06 -04:00
Simon Cruanes
debd8bcaf8
fix warning
2021-08-31 23:06:48 -04:00
Simon Cruanes
350a23d99e
feat: minimize conflicts
...
similar to minisat's level 2 of minimization.
2021-08-31 23:04:32 -04:00
Simon Cruanes
5080195c5b
feat: conflict minimization à la minisat
2021-08-31 22:59:38 -04:00
Simon Cruanes
521340a23f
feat: first full implem of clause pools
2021-08-31 22:56:42 -04:00
Simon Cruanes
10dca21f59
refactor: remove history in conflict resolution; remove simpls
...
no need to simplify reasons anymore, we rely on DRUP for that.
2021-08-31 22:56:11 -04:00
Simon Cruanes
f86498b386
feat: make it compile
2021-08-31 18:59:44 -04:00
Simon Cruanes
16bb65ebfa
wip: clause pools
2021-08-31 09:30:28 -04:00
Simon Cruanes
4a2367b1bd
refactor: use Atom.Vec (a VecI32) for atom vectors
2021-08-31 09:30:05 -04:00
Simon Cruanes
1877c00c02
wip: clauses pools
2021-08-30 09:32:32 -04:00
Simon Cruanes
81caf4824e
wip: feat: additional clause allocators in SAT
2021-08-30 09:03:37 -04:00
Simon Cruanes
73b39fe075
fix more warnings
2021-08-27 21:34:26 -04:00
Simon Cruanes
e7e8873295
fix more warnings
2021-08-27 09:28:59 -04:00
Simon Cruanes
b33f5fa5b1
fix tests
2021-08-26 09:19:21 -04:00
Simon Cruanes
782afa4415
feat: move Int_id into its own module
2021-08-25 23:52:08 -04:00
Simon Cruanes
68250603c4
fix compat
2021-08-24 19:41:36 -04:00
Simon Cruanes
5017d9f8bf
Merge branch 'wip-drup-check'
2021-08-24 18:09:31 -04:00
Simon Cruanes
5505ece5fb
chore: fix warning
2021-08-23 10:49:12 -04:00
Simon Cruanes
07d512badc
fix: remove dep on mtime in checker
2021-08-23 10:17:51 -04:00
Simon Cruanes
28fad1e408
chore: ci on all branches
2021-08-23 10:03:16 -04:00
Simon Cruanes
d841090e1c
feat(checker): ability to read .drup.gz files
2021-08-23 00:10:37 -04:00
Simon Cruanes
2f41a54719
feat(main): for pure SAT, emit proofs into file or locally
2021-08-23 00:10:34 -04:00
Simon Cruanes
bb682b8080
fix(sat): emit proofs where needed
2021-08-23 00:08:09 -04:00
Simon Cruanes
fa04cb7997
refactor(th-bool): remove cache and most recursion
...
the preprocessing framework already takes care of both.
2021-08-22 15:50:42 -04:00
Simon Cruanes
baecce0946
feat: use Stat in SAT solver
2021-08-22 01:56:54 -04:00
Simon Cruanes
672f828c82
perf: return to default-pol=true
...
previous commit fixed sign error (move from `negated` to `same_sign`
so restore good behavior
2021-08-22 01:44:37 -04:00
Simon Cruanes
9aee35c6ce
fix other issue in th-bool preprocessing
2021-08-22 01:31:59 -04:00
Simon Cruanes
27796da5a8
fix preprocessing in th-bool
2021-08-22 01:29:01 -04:00
Simon Cruanes
e93e084eac
refactor: eager proofs; stronger preprocessing
...
proofs are now directly emitted (almost) everywhere, which simplifies
a lot of things. preprocessing is more recursive (a bit too much
really).
2021-08-22 01:13:41 -04:00
Simon Cruanes
0668f28ac7
try to fix boolean terms not decided by SAT solver
2021-08-21 14:00:31 -04:00
Simon Cruanes
075e251aed
fix: bad sign in SAT solver
2021-08-21 13:41:30 -04:00
Simon Cruanes
0e77c9ef33
perf(solver): default-pol=false
2021-08-20 18:49:15 -04:00
Simon Cruanes
22638a0c0b
tmp: use dummy proof in pure sat solver
2021-08-20 18:49:15 -04:00
Simon Cruanes
4cada7e7b6
perf
2021-08-20 18:18:30 -04:00
Simon Cruanes
1ab7d34a7d
refactor: make it compile again
2021-08-20 18:18:30 -04:00