CaDiCaL Modification – Watch Sat

Norbert Manthey
nmanthey@conp-solutions.com
Dresden, Germany

  CaDiCaL Modification – Watch Sat
 

Abstract—The solver CADICAL is different from other partic-
ipants in SAT competitions in many aspects. Porting an algorithm
detail from CADICAL to MERGESAT resulted in a performance
degradation. Hence, this solver modification brings CADICAL’s
behavior closer to other solvers again: when watching a satisfied
literal during unit propagation, the clause is moved to the
watch list of that literal. Previously, CADICAL just updated
the blocking literal of the clause and kept the clause in the
current watch list. The solver CADICAL-WATCH-SAT watches
the satisfied literal.

译文:因此,这个求解器修改使CADICAL的行为再次接近其他求解器:当在单位传播期间观察一个满意的文字时,子句被移动到该文字的观察列表中。

 

I. UNIT PROPAGATION IMPROVEMENTS

SAT solvers are used in many fields. Hence, some solvers
are heavily tuned to perform well for the target application.
Other research focusses on improving the overall solver perfor-
mance in general. Many heuristic and algorithmic extensions
to the core algorithm have been proposed [1]. The overall
runtime distributions among the algorithm components still
did not change significantly: unit propagation still takes a vast
majority of the overall runtime [6], [3].

译文:算法组件之间的总体运行时分布仍然没有显著变化:单元传播仍然占用绝大多数的总体运行时.

A. Watching Clauses in Propagation

This modification alters an implementation detail of unit
propagation that is different in CADICAL when being com-
pared to other SAT solvers that participate in competitive
events. The two watched literals scheme has been implemented
first in [7]. The next major improvement to skip processing
clauses early was to move literals from the clause into the
watch list data structure, so called blocking literals. MIN-
ISAT 2.2 2.1 [2] started to use a blocking literal. When
propagating a clause, first the current truth value blocking
literal is checked. In case the blocking literal is satisfied, the
related clause is known to be satisfied. Therefore, the clause
does not have to be processed further. This technique helps to
improve the performance of the SAT solver [6].

译文:早期跳过处理子句的下一个主要改进是将字面值从子句移到观察列表数据结构中,称为阻塞字面值。

译文:如果满足了阻塞字面量,则已知相关子句也满足了。因此,不需要进一步处理子句。该技术有助于提高SAT求解器[6]的性能。

B. How to Handle Satisfied Clauses

When a blocking literal is not satisfied, the clause has to be
processed. During this process, each clause of the watch list
for the current literal has to be iterated. For each clause, the
truth value of all literals has to be checked, in case we find a
conflict clause or unit clauses that force the extension of the
current truth assignment. For satisfied clauses, we only need
to process the literals until we find a satisfied clauses.

译文:对于每个子句,必须检查所有字面量的真值,以防我们发现冲突子句或单元子句强制扩展当前的真值赋值。

One difference between CADICAL and MINISAT 2.2 based
solvers is the way how they treat these satisfied clauses. MIN-
ISAT 2.2 based solvers watch the satisfied literal. CADICAL
implements further extensions, like memorizing the literal in
a clause that was tested when last processing the clause [4].

译文:CADICAL实现了进一步的扩展,比如记住上次处理子句[4]时测试的子句中的文字。

 

a) Always Watching the Satisfied Literal: When a satisfied literal is detected in a clause during propagating a literal,the clause is removed from the current watch list. As a next step, solvers append the clauses to the watch list of the satisfied literal. Both operations are constant time, but require accessing the other watch list, which can lead to a cache miss [6] and TLB miss [3]. The watch list of the other literal can be higher in the search tree, so that the clause will be touched less frequent in the remainder of the search. Restart might reduce the saving, on the other hand solver today use partial restarts [9], chronological backtracking [8] as well as trail saving [5]. All these technique give this saving back partially.

译文:当在传播文字的过程中在子句中检测到满足条件的文字时,子句将从当前观察列表中移除。

译文:下一步,解算器将子句附加到所满足的字面量的观察列表中。这两个操作都是常量时间,但需要访问另一个观察列表,这可能会导致缓存错过[6]和TLB错过[3]。


This approach is implemented by MINISAT 2.2 based solvers.

 

b) Just Update the Blocking Literal: As an alternative,
CADICAL keep watching the current literal, which is now
falsified, but updates the blocking literal to the satisfied literal.
While this breaks the assumption that falsified literals are only
watched for conflict clauses or unit clauses, we still know that
the clause is satisfied. Hence, breaking this assumption does
not have consequences. The positive effect is that the clause
does not have to be removed from the current watch list. This
results in no cache miss, nor a TLB miss. However, when the
search progresses, after backtracking, the same clause might
need to be processed again. In case the satisfied literal is
still satisfied, only the blocking literal has to be processed.
Otherwise, backtracking also removed the assignment for the
blocking literal, so that the whole clause needs to be processed
again.

 

译文:作为一种替代方法,CADICAL继续观察当前的字面量(它现在被伪造了),但是将阻塞字面量更新为满意的字面量。 虽然这打破了伪字面只被用于冲突子句或单位子句的假设,但我们仍然知道子句是满足的。

译文:因此,打破这一假设不会产生任何后果。积极的效果是,子句不必从当前观察列表中删除

译文:但是,当搜索进行时,在回溯之后,可能需要再次处理相同的子句。

译文:如果满足的字面量仍然满足,则只需要处理阻塞字面量。 否则,回溯还删除了对阻塞字面量的赋值,因此需要重新处理整个子句。

 

c) Watching the Satisfied Literal in CADICAL: Prelimi-
nary testing with MERGESAT when just updating the blocking
literal of a clause resulted in a performance degradation.
Hence, removing this technique for CADICAL might result in
a performance improvement. The solver CADICAL-WATCH-
SAT implements this modification.

译文:在仅仅更新子句的阻塞文字时,使用MERGESAT进行的初步测试会导致性能下降。

译文:因此,取消CADICAL的这种技术可能会提高性能。规划求解CADICAL-WATCH -SAT实现了这一修改。


Not processing a satisfied clause during propagation soon
again can result in a different order of propagated literals,
as well as different conflicts, and consequently in different
heuristic updates and many different follow-up search steps
of the solver. Hence, performance differences can not only be
attributed to less or more compute resource utilization.

译文:如果在传播过程中不处理满足条件的子句,可能会导致传播字面量的顺序不同,以及不同的冲突,从而导致求解器的不同启发式更新和许多不同的后续搜索步骤。译文:因此,性能差异不仅可以归因于计算资源利用率的减少或增加。

 

II. AVAILABILITY
The source of the modified CADICAL is publicly available
at
https://github.com/conp-solutions/cadical/tree/watch-sat.
The used version of the tool is “rel-1.4.0-1-gc09aa31”.

REFERENCES

[1] A. Biere, M. Heule, H. van Maaren, and T. Walsh, Eds., Handbook of
Satisfiability.
Amsterdam: IOS Press, 2009.
[2] N. E´en and N. S¨orensson, “An extensible SAT-solver,” in SAT 2003, ser.
LNCS, E. Giunchiglia and A. Tacchella, Eds., vol. 2919.
Heidelberg:
Springer, 2004, pp. 502–518.
[3] J. K. Fichte, N. Manthey, J. Stecklina, and A. Schidler, “Towards faster
reasoners by using transparent huge pages,” in Principles and Practice of
Constraint Programming, H. Simonis, Ed.
Cham: Springer International
Publishing, 2020, pp. 304–322.
[4] I. P. Gent, “Optimal implementation of watched literals and more general
techniques,” J. Artif. Intell. Res., vol. 48, pp. 231–251, 2013. [Online].
Available: https://doi.org/10.1613/jair.4016
[5] R. Hickey and F. Bacchus, “Trail saving on backtrack,” in Theory and
Applications of Satisfiability Testing – SAT 2020, L. Pulina and M. Seidl,
Eds.
Cham: Springer International Publishing, 2020, pp. 46–61.
[6] S. H¨olldobler, N. Manthey, and A. Saptawijaya, “Improving resource-
unaware SAT solvers,” ser. LNCS, C. G. Ferm¨uller and A. Voronkov,
Eds., vol. 6397.
Heidelberg: Springer, 2010, pp. 519–534.
[7] M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, and S. Malik,
“Chaff: Engineering an efficient SAT solver,” in DAC 2001.
New York:
ACM, 2001, pp. 530–535.
[8] A. Nadel and V. Ryvchin, “Chronological backtracking,” in Theory and
Applications of Satisfiability Testing – SAT 2018, O. Beyersdorff and
C. M. Wintersteiger, Eds. Cham: Springer International Publishing, 2018,
pp. 111–121.
[9] P. van der Tak, A. Ramos, and M. Heule, “Reusing the assignment trail
in cdcl solvers,” JSAT, vol. 7, no. 4, pp. 133–138, 2011.

   

 

HKIS, HCAD, PAKIS andPAINLESS EXMAPLELCMDISTCHRONOBT inthe SC21Rodrigue Konan Tchinda
Department of Mathematics and Computer Science
University of Dschang
Dschang, Cameroon
rodriguekonanktr@gmail.com

 

Abstract—This document describes the sequential solvers
HKIS,HCAD and the parallel solvers PAKIS and PAIN-
LESS EXMAPLELCMDISTCHRONOBT submitted to the 2021
SAT Competition.

I. INTRODUCTION

The results of the latest SAT competition showed very
good performances of the sequential solvers KISSAT [1] and
CADICAL [1], [2] in the main track. The highly optimized
data structures and algorithms used by these solvers make
them particularly efficient. However, this does not exclude
the possibility of improvements. We proposed for the 2021
edition of the SAT competition, versions of these solvers
that integrate the PSIDS heuristic [3] for choosing polari-
ties of decision variables. Moreover, we submitted a paral-
lel version of KISSAT built on top of the Painless frame-
work [4] as well as a slightly modified version of PAIN-
LESS EXMAPLELCMDISTCHRONOBT [5].

 

II. HKIS AND HCAD

HKIS and HCAD are both “hacks” of KISSAT and CAD-
ICAL [1], [2] respectively. They all integrate the PSIDS
heuristic [3] for selecting a polarity once a branching vari-
able chosen. PSDIS is enabled through the Boolean option
--psids. These solvers also change the default configuration
of the base solvers as follows:

• HCAD is submitted with two configurations:
– default where psids=0, target=2, chrono=0 and
walk=0;
– psids where psids=1, target=2, chrono=1 and
walk=0.
• HKIS is submitted with three configurations:
– default where psids=0, target=2 and chrono=0;
– psids where psids=1, target=2 and chrono=0;
– unsat where psids=0, target=1, walkinitially=1 and
chrono=1.

The default configuration of HCAD is submitted to the
new CADICAL Hack subtrack of the 2021 SAT Competition.

 

III. PAINLESS EXMAPLELCMDISTCHRONOBT
The parallel solver PAINLESS EXMAPLELCMDIST-
CHRONOBT is identical to that we submitted to the 2020
SAT Competition [5] except for a slight change where we
now load the input formula to the workers in parallel. The
version we submitted to the 2021 SAT Competition was
configured to launch 24 workers in parallel.


IV. PAKIS
In sequential SAT solvers, it is unlikely to find a single
configuration that is the most efficient on all benchmarks of
a given set.

译文:在连续SAT求解器中,不太可能找到在给定集合的所有基准上最有效的单一配置。

 

There are instances that can be easily solved by
specific configurations of a given solver that are not necessarily
its best configuration.

译文:有些实例可以通过给定求解器的特定配置轻松解决,但不一定是最佳配置。

 

 

Hence, running multiple configurations
of a solver in parallel may help speedup solving times.

译文:因此,并行运行一个求解器的多个配置可能有助于加快求解时间。

 

 

The goal of PAKIS is to select a number of configurations in
order to approximate the performance of the “Best Virtual
Configuration” of the solver KISSAT.

译文:PAKIS的目标是选择一些配置,以便接近“最佳虚拟”的性能解算器KISSAT的配置。

 

To achieve this, we used a test set consisting of the new instances submitted to the SAT Race 2019 and selected among a large number of possible configurations those that had the best results for SAT, UNSAT
and SAT+UNSAT.

译文:为此,我们使用了一个包含提交给SAT的新实例的测试集在2019年的比赛中,从大量可能的配置中选择那些在SAT, UNSAT和SAT+UNSAT中有最好的结果。

 

 

Table I gives the configurations for the 24
workers used in PAKIS. The meaning of each of the options
in this table can be obtained by running the solver KISSAT
with the traditional --help option.


In contrast to many parallel SAT solvers, PAKIS does not
allow any information sharing. This has some advantages
regarding for instance the determinism of the solver and the
production of DRAT proofs.

译文:与许多并行的SAT求解器相比,PAKIS不允许任何信息共享。这有一些优点,例如求解器的决定论和DRAT证明的产生。

 

REFERENCES 
[1] A. Biere, K. Fazekas, M. Fleury, and M. Heisinger, “CaDiCaL, Kissat,
Paracooba, Plingeling and Treengeling entering the SAT Competition
2020,” in Proc. of SAT Competition 2020 – Solver and Benchmark
Descriptions, ser. Department of Computer Science Report Series B,
T. Balyo, N. Froleyks, M. Heule, M. Iser, M. J
¨
arvisalo, and M. Suda,
Eds., vol. B-2020-1. University of Helsinki, 2020, pp. 51–53.
 
[2] A. Biere, “CaDiCaL at the SAT Race 2019,” in Proc. of SAT Race 20219
– Solver and Benchmark Descriptions, ser. Department of Computer
Science Report Series B, M. Heule, M. J
¨
arvisalo, and M. Suda, Eds.,
vol. B-2019-1. University of Helsinki, 2019, pp. 8–9.
 
[3] R. K. Tchinda and C. T. Djamegni, “Padc maplelcmdistchronobt, padc
maple lcm dist and psids maplelcmdistchronobt in the sr19,” SAT RACE
2019, p. 33.
 
[4] L. Le Frioux, S. Baarir, J. Sopena, and F. Kordon, “Painless: a framework
for parallel sat solving,” in International Conference on Theory and
Applications of Satisfifiability Testing. Springer, 2017, pp. 233–250.
 
[5] R. Konan Tchinda and C. Tayou Djamegni, “Exmaplelcmdistchronobt,
upglucose-3.0 padc and painless exmaplelcmdistchronobt in the sc20,” in
Proc. of SAT Competition 2020 – Solver and Benchmark Descriptions, ser.
Department of Computer Science Report Series B, T. Balyo, N. Froleyks,
M. Heule, M. Iser, M. J
¨
arvisalo, and M. Suda, Eds., vol. B-2020-1.
University of Helsinki, 2020, pp. 17–18.
 
[6] V. Ryvchin and A. Nadel, “Maple lcm dist chronobt: Featuring chrono
logical backtracking,” SAT COMPETITION 2018, p. 29, 2018.
 
[7] S. Kochemazov, O. Zaikin, V. Kondratiev, and A. Semenov,
“Maplelcmdistchronobt-dl, duplicate learnts heuristic-aided solvers at the
sat race 2019,” SAT RACE 2019, p. 24. 
 
   

 

PADC MapleLCMDistChronoBT, PADC Maple LCM Dist and

PSIDS MapleLCMDistChronoBT in the SR19

 
Rodrigue Konan Tchinda
Department of Mathematics and Computer Science
University of Dschang
Dschang, Cameroon
rodriguekonanktr@gmail.com
Cl
´
ementin Tayou Djamegni
Department of Mathematics and Computer Science
University of Dschang
Dschang, Cameroon
dtayou@gmail.com
 
Abstract—This document describes the solvers
PADC MapleLCMDistChronoBT, PADC Maple LCM Dist
and PSIDS MapleLCMDistChronoBT which integrate the
PADC (periodic aggressive learned clause database cleaning)
strategy and the PSIDS (Polarity State Independent Decaying
Sum) heuristic. 
 
I. INTRODUCTION
The boolean satisfifiability problem (SAT) has seen tremen
dous progresses in its resolution these last years thanks to
the integration of several features within the so-called CDCL
(Conflflict-Driven Clause Learning) [1]–[4] SAT solvers which
made them capable of effectively solving several previously
intractable instances. These features include clause learning,
effificient unit propagation through watched literals, effec
tive learned clause database management, dynamic branching
heuristics, restarts etc. SAT solvers nowadays implement many
heuristics and are highly sensible to slight modififications in
their source codes. That is, a simple change in the source
code can result in a solver with completely different perfor
mances. A typical example is the great number of solvers
that participated in the last SAT competitions, which are the
result of very simple modififications of Minisat [5]/Glucose [6],
[7] and which showed important performances improvement.
The methods we use in this document follows the same
idea, i.e. improving performances with slight modififications.
The fifirst is the PADC (periodic aggressive learned clause
database cleaning) strategy [8] and the second is the PSIDS
(Polarity State Independent Decaying Sum) polarity heuristic.
They have been integrated into the winners of the last two
SAT competitions namely MapleLCMDistChronoBT [9] and
Maple LCM Dist [10] in order to participate in the 2019 SAT
Race. The PADC strategy showed good performances in the
2018 SAT competition when integrated within Glucose-3.01
and its current integration into the winners of the previous
SAT Competitions revealed signifificant improvements during
preliminary experiments conducted on the latest competi
tions’ benchmarks. We are impatient this year to see how
our integration of PADC into MapleLCMDistChronoBT and
Maple
LCM Dist will perform on the new benchmark set.
PSIDS (Polarity State Independent Decaying Sum) as far as it
is concerned is a polarity heuristic which closely follows the
principle of the VSIDS branching heuristic [11]. 
 
II. PADC
The PADC (periodic aggressive learned clause database
cleaning) strategy [8] is an aggressive learned clause database
cleaning strategy which periodically deletes a large amount
of clauses in the learned clause database. This technique
allows the solver to periodically perform a deep cleaning of the
learned clause database. Concretely, after every
K − 1
executions of the cleaning procedure (i.e. at the Kth execu
tion after the previous deep cleaning step), all the learned
clauses are removed, except those of very high quality —
such as clauses with LBD ≤ 2 — and those that are
involved in the construction of the implication graph. This
aggressive learned clause database reduction has some posi
tive impact on the solver’s performances such as increasing
diversifification, reducing memory consumption and speeding
up unit propagations. We integrated this technique within
MapleLCMDistChronoBT and Maple LCM Dist and called
the resulting solvers PADC MapleLCMDistChronoBT and
PADC Maple LCM Dist respectively. Note that these solvers
use a three-tiered learned clauses database where the learned
clauses are divided into the following three sets : CORE,
TIER2 and LOCAL. CORE and TIER2 store clauses with
LBD ≤ 6, the best of which being stored in CORE while
LOCAL stores the others. We introduced in them a parameter
called ClearType in order to control which learned clause
database to clear during deep cleaning steps.
ClearType can
take three values :
0, 1 or 2 indicating respectively to clean the
LOCAL learned clause database only, the LOCAL and TIER2
databases and all databases.
 
III. PSIDS HEURISTIC 
 
Branching and polarity heuristics are known to be determi
nant for the performances of SAT solvers. Once the branching
heuristic has chosen the next variable to branch on, the polarity
heuristic comes into play to determine which polarity to set
for the latter. 
译文:分支和极性启发式被认为是决定了SAT求解器的性能。一旦分支启发式选择了下一个要分支的变量,极性启发式就开始发挥作用,以确定为后者设置哪个极性。
 
The de facto standard branching and polarity
heuristics today are VSIDS (Variable State Independent Decaying
Sum) [11] and progress saving [12] (also known as
phase saving) respectively.
译文:如今,事实上的标准分支和极性启发式方法是vsid(可变状态独立衰减)Sum)分别为[11]和进度保存[12](也称阶段保存)。
 
 
 
Although there have been several
attempts to replace it, VSIDS still remains a widely used
branching heuristic in modern SAT solvers. It operates by
choosing for branching, the most active unassigned variable
in the solver.
译文:虽然已经有很多尝试来取代它,但vsid仍然是现代SAT求解中广泛使用的一种分支启发式算法。它通过选择解算器中最活跃的未赋值变量进行分支操作。
 
 
Progress saving as for it was introduced to
prevent repeated work in solvers since upon non chronological
backtracking there can be some redundant rediscovery of some
sub-problems’ solutions lost while unassigning variables.
译文:进度保存的引入是为了防止求解器的重复工作,因为在非时间回溯的情况下,取消变量赋值时可能会丢失一些子问题的解,从而导致一些重复的重新发现。
 
 
 
The
limitation with progress saving is that it takes into account
only the saved polarities of the assignment preceding the
backjumping. 译文:进度保存的局限性在于,它只考虑回跳之前被保存的分配极性。
 
This can still lead to the rediscovery of some
sub-problems’ solutions as some polarities may change after
setting the asserting literal. The polarity that is frequently used
might be a good choice at this level since it might more
likely be the one which make the sub-problem satisfified: this
is the intuition behind the PSIDS (Polarity State Independent
Decaying Sum) heuristic.
译文:这仍然可能导致重新发现一些子问题的解决方案,因为在设置断言文字之后,一些极性可能会改变。在这个层次上,经常使用的极性可能是一个很好的选择,因为它更有可能使子问题得到满足:这是PSIDS(极性状态独立)背后的直觉腐烂的总和)启发式。
 
 
 
The PSIDS heuristic is similar to the
VSIDS heuristic but is used for polarities instead of variables.
译文:PSIDS启发式类似于VSIDS启发式,但用于极性而不是变量。
 
 
Concretely, we keep for each variable in the solver two scores
for its positive and negative polarities respectively. Each time
a polarity — of a variable — is set in the solver, the activity of
the latter is increased, and when a decision is made using the
branching heuristic, then the most active polarity is chosen. As
with VSIDS, we decrease from time to time the activities of all
polarities (of all variables) in order to favor most recent ones.
译文:具体地说,我们在求解器中为每个变量分别保留其正极性和负极性的两个分数。每次在求解器中设置一个变量的极性时,后者的活动就会增加,而当使用分支启发式决策时,则会选择最活跃的极性。与vsid一样,我们不时地减少所有极性(所有变量)的活动,以支持最近的极性。
 
 
This heuristic unlike progress saving [12] takes into account
the agility of the polarity of a variable in a longer period. 
译文:与进度保存[12]不同,这种启发式方法考虑了较长时间内变量极性的敏捷性。
 
 
IV. SAT RACE 2019 SPECIFICS 
We submitted two confifigurations of
PADC MapleLCMDistChronoBT : the fifirst with parameter
K set to 10 and with ClearType set to 0, and the second
with K set to 5 and ClearType set to 0 as well. As far as
PADC Maple LCM Dist is concerned, we set its parameter
K to 10 and ClearType to 0. We also integrated the PSIDS
heuristic within MapleLCMDistChronoBT and submitted
the resulting solver PSIDS MapleLCMDistChronoBT to the
2019 SAT Race. 
 
V. ACKNOWLEDGMENTS 
Many thanks to the authors of MapleLCMDistChronoBT
[9] and Maple LCM Dist [10]. 
 
REFERENCES
[1] J. Marques-Silva and K. Sakallah, “Grasp-a new search algorithm for
satisfifiability. iccad,” 1996.
 
[2] H. Zhang, “Sato: An effificient prepositional prover,” in Automated
DeductionCADE-14. Springer, 1997, pp. 272–275.
 
[3] L. Zhang, C. F. Madigan, M. H. Moskewicz, and S. Malik, “Effificient
conflflict driven learning in a boolean satisfifiability solver,” in Proceedings
of the 2001 IEEE/ACM international conference on Computer-aided
design. IEEE Press, 2001, pp. 279–285.
 
[4] C. P. Gomes, B. Selman, H. Kautz et al., “Boosting combinatorial search
through randomization,” AAAI/IAAI, vol. 98, pp. 431–437, 1998.
 
[5] N. E
´
en and N. S
¨
orensson, “An extensible sat-solver,” in
International
conference on theory and applications of satisfifiability testing. Springer,
2003, pp. 502–518.
 
[6] G. Audemard and L. Simon, “Glucose in the sat 2014 competition,” SAT
COMPETITION 2014, p. 31, 2014.
 
[7] ——, “On the glucose sat solver,” International Journal on Artifificial
Intelligence Tools, vol. 27, no. 01, p. 1840001, 2018.
 
[8] R. K. Tchinda and C. T. Djamegni, “Scalope, penelope mdlc and
glucose-3.0 padc in sc18,” SAT COMPETITION 2018, p. 42, 2018.
 
[9] V. Ryvchin and A. Nadel, “Maple lcm dist chronobt: Featuring chrono
logical backtracking,” SAT COMPETITION 2018, p. 29, 2018.
 
[10] F. Xiao, M. Luo, C.-M. Li, F. Manya, and Z. L
¨
u, “Maplelrb lcm, maple
lcm, maple lcm dist, maplelrb lcmoccrestart and glucose-3.0+ width in
sat competition 2017,” Proc. of SAT Competition, pp. 22–23, 2017.
 
[11] M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, and S. Malik,
“Chaff: Engineering an effificient sat solver,” in Proceedings of the 38th
annual Design Automation Conference. ACM, 2001, pp. 530–535.
 
[12] K. Pipatsrisawat and A. Darwiche, “A lightweight component caching
scheme for satisfifiability solvers,” in International conference on theory
and applications of satisfifiability testing. Springer, 2007, pp. 294–299. 
   

 

posted on 2022-05-30 15:16  海阔凭鱼跃越  阅读(227)  评论(0编辑  收藏  举报