Guillaume Bury
3e30a77569
Some more comments
2016-07-22 17:28:12 +02:00
Simon Cruanes
c4beb7054b
spurious assertion
2016-07-22 16:51:45 +02:00
Simon Cruanes
895cb9cbfb
some additional comments and cleanup
2016-07-22 16:40:22 +02:00
Simon Cruanes
891f764ee8
some more cleanup
2016-07-22 16:31:00 +02:00
Simon Cruanes
c3cfe67696
cleanup boolean propagation
2016-07-22 16:00:02 +02:00
Simon Cruanes
c1915ba2d3
wip: cleanup and documentation of internal.ml
2016-07-22 15:42:17 +02:00
Simon Cruanes
8b1d657695
remove Either
2016-07-22 13:19:16 +02:00
Simon Cruanes
51f10d7ad5
update some files
2016-07-22 11:31:17 +02:00
Simon Cruanes
e251799f8e
add some array utils for pre-4.03 compat
2016-07-22 11:25:00 +02:00
Guillaume Bury
216ca82fe7
Ensure pushed clauses are added after if_sat slice
2016-07-20 11:45:13 +02:00
Guillaume Bury
d1ebc59856
Avoid unnecessary atoms array to list conversions
2016-07-18 18:49:28 +02:00
Guillaume Bury
38b4fde5c1
Clause atoms are now in an array instead of a vec
2016-07-18 18:42:15 +02:00
Guillaume Bury
933943c4e3
Merge branch '0.3.1'
2016-07-18 18:13:48 +02:00
Guillaume Bury
9dadb67fc9
[bugfix] Sort false atoms by levels in new clauses
...
When a new clauses is added and it is a conflict (i.e all atoms
are false), one must take care of which literals to watch.
In order to work, the watched literals must be those with the higher
decision levels, or else the watched literals might not react when
needed. This is fixed by sorting the literals in decreasing order of
decision level when adding a new clause which happens to be false in the
current trail.
2016-07-16 15:55:26 +02:00
Guillaume Bury
1acecc0815
Small printing upgrades
2016-07-13 18:14:23 +02:00
Guillaume Bury
2ff1279f26
Better perfs for unsat_core
2016-07-13 18:14:18 +02:00
Guillaume Bury
ef49d5eaaa
Slightly better formatting for clause printing
2016-07-13 17:07:03 +02:00
Guillaume Bury
c159a60d9b
Better premises for clauses
2016-07-13 16:48:14 +02:00
Guillaume Bury
245941efdb
Remember more added clauses
2016-07-13 16:23:34 +02:00
Guillaume Bury
9be4c66911
[bugfix] Clause level now computed at creation
...
Apart from new assumptions, clause level can always
be computed from the histoy of the clause, so it is
better to do it in Solver_types when creating clauses.
Aditionally, it seems there was an error in the manual
computing of clause level somewhere, this fixes the bug.
2016-07-09 03:20:38 +02:00
Guillaume Bury
dcc410c8a0
Added stack to delay adding of pushed clauses
2016-07-09 03:20:38 +02:00
Guillaume Bury
510a8aaa34
[bugfix] Clause level now computed at creation
...
Apart from new assumptions, clause level can always
be computed from the histoy of the clause, so it is
better to do it in Solver_types when creating clauses.
Aditionally, it seems there was an error in the manual
computing of clause level somewhere, this fixes the bug.
2016-07-09 03:06:21 +02:00
Simon Cruanes
291a9d9a7f
tags
2016-07-09 00:36:37 +02:00
Guillaume Bury
eba84fba42
Aliased def of negated in Expr_intf
2016-07-08 17:34:46 +02:00
Guillaume Bury
b56e4e3355
Added if_sat to Theory_intf
2016-07-08 16:15:05 +02:00
Guillaume Bury
eb2850caa6
Moved some type def outside Plugins/Theories
2016-07-08 14:29:45 +02:00
Guillaume Bury
46b621269c
Merlin update
2016-07-08 14:29:36 +02:00
Guillaume Bury
bbbc29948d
Added src directory, moved some files around
2016-07-07 15:48:50 +02:00
Guillaume Bury
599a59dda9
Removed unused modules
2016-07-07 14:55:48 +02:00
Simon Cruanes
6e6503e793
cleanup: remove labels, use a sum type for negated formulas
2016-07-01 15:48:21 +02:00
Simon Cruanes
403347ddaf
avoid duplicating the definition of slices in Theory_intf
2016-07-01 15:25:10 +02:00
Guillaume Bury
66740e5de8
Adding documentation comments in Internal
2016-07-01 12:07:49 +02:00
Guillaume Bury
34b1cda760
Updated README
2016-07-01 09:34:34 +02:00
Guillaume Bury
553d320368
Fixed compilation. Refactored some code in external
2016-06-30 09:54:21 +02:00
Guillaume Bury
49267897e8
Fixed bad tabls in dot backend
2016-06-29 21:30:44 +02:00
Guillaume Bury
f19c6b9b77
Fixed dot printing bug
2016-06-29 21:30:44 +02:00
Guillaume Bury
1e2dc299ce
WIP: add dedukti output (not functional yet)
2016-05-20 17:03:22 +02:00
Guillaume Bury
d06de43789
Removed color flag (because ocaml < 4.03)
2016-05-20 16:26:03 +02:00
Guillaume Bury
6d706f55e5
Tags update + optimizations for ocaml 4.03
2016-05-20 16:21:06 +02:00
Guillaume Bury
fd4d52b7a6
Better syntax for functor signature in solver_types
2016-04-24 14:14:46 +02:00
Guillaume Bury
1a0fc95147
Fixed functor syntax for ocaml 4.00.1 in solver_types
2016-04-23 20:18:25 +02:00
Simon Cruanes
22ebead17a
missing change
2016-04-15 14:05:42 +02:00
Guillaume Bury
1ce3973f9e
[feature] Allow arbitrary proof types in DummyTheory
2016-04-15 14:03:13 +02:00
Guillaume Bury
2e6ff522e5
Update to Msat.Solver arguments in readme
2016-04-15 13:41:41 +02:00
Guillaume Bury
e3fc66919d
Put info about Msat.Solver higher in the readme
2016-04-15 13:39:09 +02:00
Guillaume Bury
f88a5dd514
[bugfix/minor] Ensure generativity of solver_types
...
This ensures that the same solver_types module is not reused
for two different solvers, which would be problematic.
Marked minor because of the low use of multiple instances of a solver.
2016-04-15 13:30:46 +02:00
Guillaume Bury
dcde8de10d
[bugfix/medium] Fixed printing of the new reasons
2016-04-15 13:30:20 +02:00
Guillaume Bury
63d8dc1dc2
[bugfix/major] Clauses can be added at level > 0
2016-04-15 12:49:38 +02:00
Guillaume Bury
ec7c6602e9
Merge branch 'master' of github.com:Gbury/mSAT
2016-04-15 12:11:38 +02:00
Guillaume Bury
815098dde4
Propagation reasons are now far more explicit
2016-04-15 12:09:23 +02:00