src/HOL/SAT.thy
author webertj
Sat Sep 24 13:54:35 2005 +0200 (2005-09-24)
changeset 17627 ff1923b1978b
parent 17625 1539d18e3e9f
child 17631 152ab92e1009
permissions -rw-r--r--
cnf_struct renamed to cnf
webertj@17618
     1
(*  Title:      HOL/SAT.thy
webertj@17618
     2
    ID:         $Id$
webertj@17618
     3
    Author:     Alwen Tiu, Tjark Weber
webertj@17618
     4
    Copyright   2005
webertj@17618
     5
webertj@17627
     6
Basic setup for the 'sat' and 'satx' tactic.
webertj@17618
     7
*)
webertj@17618
     8
webertj@17618
     9
header {* Reconstructing external resolution proofs for propositional logic *}
webertj@17618
    10
webertj@17618
    11
theory SAT imports HOL
webertj@17618
    12
webertj@17618
    13
uses "Tools/sat_solver.ML"
webertj@17618
    14
     "Tools/cnf_funcs.ML"
webertj@17618
    15
     "Tools/sat_funcs.ML"
webertj@17618
    16
webertj@17618
    17
begin
webertj@17618
    18
webertj@17627
    19
ML {* structure sat = SATFunc(structure cnf = cnf); *}
webertj@17618
    20
webertj@17618
    21
method_setup sat = {* Method.no_args (Method.SIMPLE_METHOD sat.sat_tac) *}
webertj@17618
    22
  "SAT solver"
webertj@17618
    23
webertj@17618
    24
method_setup satx = {* Method.no_args (Method.SIMPLE_METHOD sat.satx_tac) *}
webertj@17618
    25
  "SAT solver (with definitional CNF)"
webertj@17618
    26
webertj@17627
    27
(*
webertj@17618
    28
method_setup cnf = {* Method.no_args (Method.SIMPLE_METHOD cnf.cnf_tac) *}
webertj@17618
    29
  "Transforming hypotheses in a goal into CNF"
webertj@17618
    30
webertj@17618
    31
method_setup cnf_concl = {* Method.no_args (Method.SIMPLE_METHOD cnf.cnf_concl_tac) *}
webertj@17618
    32
  "Transforming the conclusion of a goal to CNF"
webertj@17618
    33
webertj@17618
    34
method_setup cnf_thin = {* Method.no_args (Method.SIMPLE_METHOD cnf.cnf_thin_tac) *}
webertj@17618
    35
  "Same as cnf, but remove the original hypotheses"
webertj@17618
    36
webertj@17618
    37
method_setup cnfx_thin = {* Method.no_args (Method.SIMPLE_METHOD cnf.cnfx_thin_tac) *}
webertj@17618
    38
  "Same as cnf_thin, but may introduce extra variables"
webertj@17618
    39
*)
webertj@17618
    40
webertj@17618
    41
end