src/HOL/SAT.thy
author blanchet
Mon Dec 14 12:14:12 2009 +0100 (2009-12-14)
changeset 34120 f9920a3ddf50
parent 32232 6c394343360f
child 39036 dff91b90d74c
permissions -rw-r--r--
added "no_assms" option to Refute, and include structured proof assumptions by default;
will do the same for Quickcheck unless there are objections
     1 (*  Title:      HOL/SAT.thy
     2     Author:     Alwen Tiu, Tjark Weber
     3     Copyright   2005
     4 
     5 Basic setup for the 'sat' and 'satx' tactic.
     6 *)
     7 
     8 header {* Reconstructing external resolution proofs for propositional logic *}
     9 
    10 theory SAT
    11 imports Refute
    12 uses
    13   "Tools/cnf_funcs.ML"
    14   "Tools/sat_funcs.ML"
    15 begin
    16 
    17 text {* \medskip Late package setup: default values for refute, see
    18   also theory @{theory Refute}. *}
    19 
    20 refute_params
    21  ["itself"=1,
    22   minsize=1,
    23   maxsize=8,
    24   maxvars=10000,
    25   maxtime=60,
    26   satsolver="auto",
    27   no_assms="false"]
    28 
    29 ML {* structure sat = SATFunc(cnf) *}
    30 
    31 method_setup sat = {* Scan.succeed (SIMPLE_METHOD' o sat.sat_tac) *}
    32   "SAT solver"
    33 
    34 method_setup satx = {* Scan.succeed (SIMPLE_METHOD' o sat.satx_tac) *}
    35   "SAT solver (with definitional CNF)"
    36 
    37 end