src/HOL/SAT.thy
author huffman
Sun, 25 Apr 2010 11:58:39 -0700
changeset 36358 246493d61204
parent 34120 f9920a3ddf50
child 39036 dff91b90d74c
permissions -rw-r--r--
define nets directly as filters, instead of as filter bases

(*  Title:      HOL/SAT.thy
    Author:     Alwen Tiu, Tjark Weber
    Copyright   2005

Basic setup for the 'sat' and 'satx' tactic.
*)

header {* Reconstructing external resolution proofs for propositional logic *}

theory SAT
imports Refute
uses
  "Tools/cnf_funcs.ML"
  "Tools/sat_funcs.ML"
begin

text {* \medskip Late package setup: default values for refute, see
  also theory @{theory Refute}. *}

refute_params
 ["itself"=1,
  minsize=1,
  maxsize=8,
  maxvars=10000,
  maxtime=60,
  satsolver="auto",
  no_assms="false"]

ML {* structure sat = SATFunc(cnf) *}

method_setup sat = {* Scan.succeed (SIMPLE_METHOD' o sat.sat_tac) *}
  "SAT solver"

method_setup satx = {* Scan.succeed (SIMPLE_METHOD' o sat.satx_tac) *}
  "SAT solver (with definitional CNF)"

end