rename quantified variables earlier in the new skolemizer, to ensure consistent naming later (in the absence of the choice axiom)
(*  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/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