<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>The SAT Museum</title>
    <description>The SAT museum is a web site dedicated to hosting the source code of historic SAT solvers.
</description>
    <link>http://satmuseum.github.io/</link>
    <atom:link href="http://satmuseum.github.io/feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Sat, 31 Oct 2015 15:36:22 +0000</pubDate>
    <lastBuildDate>Sat, 31 Oct 2015 15:36:22 +0000</lastBuildDate>
    <generator>Jekyll v2.4.0</generator>
    
      <item>
        <title>First solver in the Museum: GRASP</title>
        <description>&lt;p&gt;Joao Marques Silva provided to the museum the source code of the original GRASP back in 1996.&lt;/p&gt;

&lt;p&gt;It is available in &lt;a href=&quot;https://github.com/satmuseum/grasp&quot;&gt;a specific git repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;GRASP is important in the history of SAT because it is considered as the root of the Conflict Driven Clause Learning architecture: the authors of GRASP &lt;a href=&quot;http://logos.ucd.ie/~jpms/docs/cav-award-fmsd10.pdf&quot;&gt;received the 2009 CAV Award&lt;/a&gt; to recognise that major contribution to the current efficiency of SAT solvers.&lt;/p&gt;

&lt;p&gt;The solver was presented in the papers:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;João P. Marques Silva, Karem A. Sakallah: &lt;a href=&quot;http://eprints.soton.ac.uk/262032/1/jpms-tcomp99.pdf&quot;&gt;GRASP: A Search Algorithm for Propositional Satisfiability&lt;/a&gt;. IEEE Trans. Computers 48(5): 506-521 (1999)&lt;/li&gt;
  &lt;li&gt;João P. Marques Silva, Karem A. Sakallah: GRASP - a new search algorithm for satisfiability. ICCAD 1996: 220-227&lt;/li&gt;
  &lt;li&gt;João P. Marques Silva, Karem A. Sakallah: &lt;a href=&quot;http://eprints.soton.ac.uk/265008/1/jpms%2Dictai96.pdf&quot;&gt;Conflict Analysis in Search Algorithms for Satisfiability&lt;/a&gt;. ICTAI 1996: 467-469&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Joao Marques Silva developed the main ideas behind GRASP during his PhD titled &lt;a href=&quot;http://eprints.soton.ac.uk/265010/1/jpms-phd95.pdf&quot;&gt;Search Algorithms for Satisfiability Problems in Combinational Switching Circuits&lt;/a&gt;, defended at the University of Michigan, Electrical Engineering and Computer Science department in 1995.&lt;/p&gt;

&lt;p&gt;The solver is coded in C++ with a neat object oriented design. The main function &lt;code&gt;solve&lt;/code&gt;, abstracted in all CDCL presentations, can be &lt;a href=&quot;https://github.com/satmuseum/grasp/blob/master/src/libs/grasp/grp_SAT.cc#L153&quot;&gt;found in the GRASP_SAT class&lt;/a&gt;. Such class delegates to three different classes, &lt;a href=&quot;https://github.com/satmuseum/grasp/blob/master/src/libs/grasp/grp_BRE.hh&quot;&gt;BRE&lt;/a&gt; for Backward Reasoning Engine, &lt;a href=&quot;https://github.com/satmuseum/grasp/blob/master/src/libs/grasp/grp_Decide.hh&quot;&gt;DecisionEngine&lt;/a&gt; for the decision heuristics and &lt;a href=&quot;https://github.com/satmuseum/grasp/blob/master/src/libs/grasp/grp_FRE.hh&quot;&gt;FRE&lt;/a&gt; for Forward Reasoning Engine (aka Boolean Constraint Propagation).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/grasp.png&quot; alt=&quot;Grasp architecture&quot; /&gt;&lt;/p&gt;
</description>
        <pubDate>Fri, 30 Oct 2015 00:00:00 +0000</pubDate>
        <link>http://satmuseum.github.io/cdcl/2015/10/30/grasp.html</link>
        <guid isPermaLink="true">http://satmuseum.github.io/cdcl/2015/10/30/grasp.html</guid>
        
        
        <category>cdcl</category>
        
      </item>
    
  </channel>
</rss>
