You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- A new method for generation constraint graphs of formulas
24
45
- A SAT encoding of the SET COVER problem
25
46
- New explicit data structure for cardinality constraints
26
-
- New formula functions for
27
-
- Computing the depth of a formula
28
-
- Computing a minimum prime implicant of a formula
47
+
- New formula functions for
48
+
- Computing the depth of a formula
49
+
- Computing a minimum prime implicant of a formula
29
50
- New formula predicates for
30
-
- Pseudo Boolean Constraint containment
31
-
- Fast evaluation to a constant
51
+
- Pseudo Boolean Constraint containment
52
+
- Fast evaluation to a constant
32
53
- New formula transformations for
33
-
- Literal substitution
34
-
- Expansion of pseudo-Boolean constraints
54
+
- Literal substitution
55
+
- Expansion of pseudo-Boolean constraints
35
56
- New solver function for optimizing the current formula on the solver (wrt. the number of positive/negative literals)
36
57
- New formula randomizer and corner case generator, especially useful for testing
37
-
- Configuration object for formula factory which can be used to allow trivial contradictions and tautologies in formulas and to specify
38
-
a default merge strategy for formulas from different factories
58
+
- Configuration object for formula factory which can be used to allow trivial contradictions and tautologies in formulas and to specify a default merge strategy
59
+
for formulas from different factories
39
60
- New helper classes for collections
40
61
- Stream operators on formulas
41
-
62
+
42
63
### Changed
64
+
43
65
- Changed Java Version to JDK 8
44
66
- switched to ANTLR 4.8
45
67
- switched to JUnit 5
46
68
- PBC and CC methods in the formula factory return `Formula` objects now (not `PBConstraint` objects) and can simplify the constraints
47
69
- Moved BDD package to `knowledgecompilation`
48
70
- Reorganized `explanations` package
49
71
- Reorganized code location in the BDD package and simplified the `BDDFactory`
50
-
- Reorganized code location in the SAT Solver package, introduced solver functions which allow better separation of code for functions
51
-
of the solver
72
+
- Reorganized code location in the SAT Solver package, introduced solver functions which allow better separation of code for functions of the solver
52
73
- Propositions now hold a simple formula, no `ImmutableFormulaList` anymore
53
74
- fixed a spelling problem: propositions now have a correct `backpack`
54
75
- More classes are `protected` now and can be extended from outside
55
76
- Moved parser grammars from `resources` to `antlr`
56
77
57
78
### Removed
79
+
58
80
- CleaneLing solver
59
81
-`ImmutableFormulaList` class
60
82
61
-
62
83
## [1.6.2] - 2020-01-18
84
+
63
85
### Added
86
+
64
87
- New BDD handlers
65
88
66
89
### Changed
67
-
- Some improvements to handlers for computations
68
90
91
+
- Some improvements to handlers for computations
69
92
70
93
## [1.6.1] - 2019-09-16
94
+
71
95
### Added
96
+
72
97
- A new method for solving a formula with a given literal ordering.
73
98
74
99
### Changed
100
+
75
101
- Minor refactoring of the Formatter super class (no effects on callers).
76
102
77
103
### Fixed
78
-
- Fixed the behaviour of model enumeration with additional variables.
79
104
105
+
- Fixed the behaviour of model enumeration with additional variables.
80
106
81
107
## [1.6.0] - 2019-09-04
108
+
82
109
### Added
83
-
- A new method for generating CNFs directly on the solver instead of using the formula factory.
84
-
This often leads to a faster generation and reduced Heap consumption but with the loss of
85
-
caching
110
+
111
+
- A new method for generating CNFs directly on the solver instead of using the formula factory. This often leads to a faster generation and reduced Heap
112
+
consumption but with the loss of caching
86
113
- The current formula on a MiniSat-based solver can be extracted
87
-
114
+
88
115
### Changed
89
-
- The standard MiniSat-based solvers can now directly efficiently compute a backone. No extra solver
90
-
is required anymore
91
-
- BDD factory can now be extended externally
92
116
117
+
- The standard MiniSat-based solvers can now directly efficiently compute a backone. No extra solver is required anymore
118
+
- BDD factory can now be extended externally
93
119
94
120
## [1.5.2] - 2019-07-15
121
+
95
122
### Changed
123
+
96
124
- Clarified behaviour of the `Backbone` object
97
125
98
126
### Fixed
99
-
- Fixed caching behaviour when using a `sat()` call without assumptions after a call with assumptions
100
127
128
+
- Fixed caching behaviour when using a `sat()` call without assumptions after a call with assumptions
101
129
102
130
## [1.5.1] - 2019-05-08
131
+
103
132
### Added
133
+
104
134
- Introduced a new `FormulaHelper` class for small utility methods on formulas
105
135
- Added a new NNF predicate
106
136
107
137
### Fixed
138
+
108
139
- Fixed an unspecified behaviour in `SATPredicate`
109
140
- Fixed a small performance issue in the new backbone solver
110
141
- Fixed a bug in a special case of the CNF transformation of a pseudo-Boolean constraint
111
142
112
-
113
143
## [1.5.0] - 2019-03-17
144
+
114
145
### Added
146
+
115
147
- Algorithm & data structures for efficiently computing backbones of formulas
116
148
- Data structures for UBTrees in order to efficiently identify sub- and supersets
117
149
- CNF and DNF subsumption as formula transformations
118
150
- Backbone simplifier (compute and propagate the backbone of a formula)
119
151
- A new sorted formula formatter which respects a given variable ordering when printing formulas
120
152
121
-
### Changed
153
+
### Changed
154
+
122
155
- Minor code refactorings and improvements
123
156
124
157
### Deprecated
125
-
- Deprecation of CleaneLing - this solver will be removed in future versions.
126
158
159
+
- Deprecation of CleaneLing - this solver will be removed in future versions.
127
160
128
161
## [1.4.1] - 2018-12-07
162
+
129
163
### Changed
164
+
130
165
- Some refactorings for unit tests on Windows regarding encodings
131
166
- The Quine-McCluskey implementation does not yield CNF auxiliary variables anymore
132
167
133
168
### Fixed
134
-
- Fixed a minor bug in the generation of incremental cardinality constraints
135
169
170
+
- Fixed a minor bug in the generation of incremental cardinality constraints
136
171
137
172
## [1.4.0] - 2018-06-03
173
+
138
174
### Added
175
+
139
176
- BDD package (based on Buddy) for creating, manipulating, and writing BDDs
- Different static variable ordering heuristics (FORCE, DFS, BFS, MinMax)
182
+
- Writing BDDs in the GraphViz .dot format
146
183
- Quine-McCluskey Implementation for minimizing canonical DNFs
147
184
- New formula transformation for anonymizing formulas
148
185
149
186
### Changed
150
-
- Internal parser and IO improvements. Variables can now start with a digit.
151
187
188
+
- Internal parser and IO improvements. Variables can now start with a digit.
152
189
153
190
## [1.3.1] - 2018-01-28
191
+
154
192
### Added
193
+
155
194
- New formula transformation which imports formulas in another formula factory
156
195
157
196
### Changed
197
+
158
198
- Huge performance boost in the model enumeration of MiniSat
159
199
160
200
### Fixed
161
-
- Small bugfix for a trivial case in DRUP
162
201
202
+
- Small bugfix for a trivial case in DRUP
163
203
164
204
## [1.3.0] - 2017-10-25
205
+
165
206
### Added
166
-
- MiniSat and Glucose have a new option for proof tracing. A DRUP implementation stores all the necessary information for generating a proof for unsatisfiable formulas after solving them. The new method can be found in the SAT solver class: `unsatCore()`
207
+
208
+
- MiniSat and Glucose have a new option for proof tracing. A DRUP implementation stores all the necessary information for generating a proof for unsatisfiable
209
+
formulas after solving them. The new method can be found in the SAT solver class: `unsatCore()`
167
210
- A new simplifier which applies the distributive law was added: `DistributiveSimplifier`
168
211
169
212
### Changed
213
+
170
214
- Unsat Cores are now parametrized with the proposition type
171
215
172
216
### Fixed
173
-
- Some minor bug-fixes in handling corner cases of cardinality and pseudo-Boolean constraints
174
217
218
+
- Some minor bug-fixes in handling corner cases of cardinality and pseudo-Boolean constraints
175
219
176
220
## [1.2.0] - 2017-07-14
221
+
177
222
### Added
223
+
178
224
- Introduced an extended formula factory which is able to return to a previously saved state and delete old formulas (and get them garbage collected)
179
225
- A simple data structure for generic graphs including algorithms for connected components and maximal cliques
180
226
- Improved IO (Writers for formulas, Dimacs CNFs, and graphs)
181
227
182
228
### Changed
229
+
183
230
- SAT solvers can now track the currently known variables
184
231
- Updated to ANTLR 4.7
185
232
186
233
### Fixed
187
-
- Various smaller bugfixes
188
234
235
+
- Various smaller bugfixes
189
236
190
237
## [1.1.0] - 2016-08-29
238
+
191
239
### Added
240
+
192
241
- Implemented cardinality constraint encodings and pseudo-Boolean constraints encodings of PBLib
193
242
- Incremental cardinality constraints, including the possibility to add cardinaliy constraints to the solver without introducing new formula factory variables
0 commit comments