src/HOL/SAT.thy
author wenzelm
Mon Jul 27 23:17:40 2009 +0200 (2009-07-27)
changeset 32232 6c394343360f
parent 30549 d2d7874648bd
child 34120 f9920a3ddf50
permissions -rw-r--r--
proper context for SAT tactics;
eliminated METAHYPS;
tuned signatures;
webertj@17618
     1
(*  Title:      HOL/SAT.thy
webertj@17618
     2
    Author:     Alwen Tiu, Tjark Weber
webertj@17618
     3
    Copyright   2005
webertj@17618
     4
webertj@17627
     5
Basic setup for the 'sat' and 'satx' tactic.
webertj@17618
     6
*)
webertj@17618
     7
webertj@17618
     8
header {* Reconstructing external resolution proofs for propositional logic *}
webertj@17618
     9
haftmann@26521
    10
theory SAT
haftmann@26521
    11
imports Refute
wenzelm@17722
    12
uses
haftmann@26521
    13
  "Tools/cnf_funcs.ML"
haftmann@26521
    14
  "Tools/sat_funcs.ML"
webertj@17618
    15
begin
webertj@17618
    16
wenzelm@17722
    17
text {* \medskip Late package setup: default values for refute, see
wenzelm@21588
    18
  also theory @{theory Refute}. *}
wenzelm@17722
    19
wenzelm@17722
    20
refute_params
wenzelm@17722
    21
 ["itself"=1,
wenzelm@17722
    22
  minsize=1,
wenzelm@17722
    23
  maxsize=8,
wenzelm@17722
    24
  maxvars=10000,
wenzelm@17722
    25
  maxtime=60,
wenzelm@17722
    26
  satsolver="auto"]
wenzelm@17722
    27
wenzelm@32232
    28
ML {* structure sat = SATFunc(cnf) *}
webertj@17618
    29
wenzelm@32232
    30
method_setup sat = {* Scan.succeed (SIMPLE_METHOD' o sat.sat_tac) *}
webertj@17618
    31
  "SAT solver"
webertj@17618
    32
wenzelm@32232
    33
method_setup satx = {* Scan.succeed (SIMPLE_METHOD' o sat.satx_tac) *}
webertj@17618
    34
  "SAT solver (with definitional CNF)"
webertj@17618
    35
webertj@17618
    36
end