mods due to changed 1-point simprocs (quantifier1).
authornipkow
Mon, 17 Dec 2001 14:27:18 +0100
changeset 12526 1b9db2581fe2
parent 12525 4ad978c8f550
child 12527 d6c91bc3e49c
mods due to changed 1-point simprocs (quantifier1).
src/FOL/IsaMakefile
src/FOL/simpdata.ML
--- a/src/FOL/IsaMakefile	Mon Dec 17 14:24:11 2001 +0100
+++ b/src/FOL/IsaMakefile	Mon Dec 17 14:27:18 2001 +0100
@@ -29,7 +29,7 @@
 $(OUT)/FOL: $(OUT)/Pure $(SRC)/Provers/blast.ML	$(SRC)/Provers/make_elim.ML \
   $(SRC)/Provers/clasimp.ML $(SRC)/Provers/classical.ML \
   $(SRC)/Provers/hypsubst.ML $(SRC)/Provers/ind.ML $(SRC)/Provers/induct_method.ML \
-  $(SRC)/Provers/simplifier.ML $(SRC)/Provers/splitter.ML \
+  $(SRC)/Provers/simplifier.ML $(SRC)/Provers/splitter.ML $(SRC)/Provers/quantifier1.ML\
   FOL.ML FOL.thy FOL_lemmas1.ML FOL_lemmas2.ML IFOL.ML IFOL.thy \
   IFOL_lemmas.ML ROOT.ML blastdata.ML cladata.ML document/root.tex \
   fologic.ML hypsubstdata.ML intprover.ML simpdata.ML
--- a/src/FOL/simpdata.ML	Mon Dec 17 14:24:11 2001 +0100
+++ b/src/FOL/simpdata.ML	Mon Dec 17 14:27:18 2001 +0100
@@ -225,6 +225,14 @@
 val iff_allI = allI RS
     prove_goal (the_context()) "ALL x. P(x) <-> Q(x) ==> (ALL x. P(x)) <-> (ALL x. Q(x))"
                (fn prems => [cut_facts_tac prems 1, Blast_tac 1])
+val iff_exI = allI RS
+    prove_goal (the_context()) "ALL x. P(x) <-> Q(x) ==> (EX x. P(x)) <-> (EX x. Q(x))"
+               (fn prems => [cut_facts_tac prems 1, Blast_tac 1])
+
+val all_comm = prove_goal (the_context()) "(ALL x y. P(x,y)) <-> (ALL y x. P(x,y))"
+               (fn _ => [Blast_tac 1])
+val ex_comm = prove_goal (the_context()) "(EX x y. P(x,y)) <-> (EX y x. P(x,y))"
+               (fn _ => [Blast_tac 1])
 in
 
 (** make simplification procedures for quantifier elimination **)
@@ -242,6 +250,7 @@
   (*rules*)
   val iff_reflection = iff_reflection
   val iffI = iffI
+  val iff_trans = iff_trans
   val conjI= conjI
   val conjE= conjE
   val impI = impI
@@ -250,6 +259,9 @@
   val exI  = exI
   val exE  = exE
   val iff_allI = iff_allI
+  val iff_exI = iff_exI
+  val all_comm = all_comm
+  val ex_comm = ex_comm
 end);
 
 end;
@@ -257,10 +269,10 @@
 local
 
 val ex_pattern =
-  read_cterm (Theory.sign_of (the_context ())) ("EX x. P(x) & Q(x)", FOLogic.oT)
+  read_cterm (Theory.sign_of (the_context ())) ("EX x. P(x)", FOLogic.oT)
 
 val all_pattern =
-  read_cterm (Theory.sign_of (the_context ())) ("ALL x. P(x) --> Q(x)", FOLogic.oT)
+  read_cterm (Theory.sign_of (the_context ())) ("ALL x. P(x)", FOLogic.oT)
 
 in
 val defEX_regroup =