CookBook/Package/Ind_Prelims.thy
changeset 165 890fbfef6d6b
parent 129 e0d368a45537
--- a/CookBook/Package/Ind_Prelims.thy	Tue Mar 10 13:20:46 2009 +0000
+++ b/CookBook/Package/Ind_Prelims.thy	Wed Mar 11 01:43:28 2009 +0000
@@ -75,10 +75,10 @@
 *}
 
 lemma %linenos trcl_induct:
-  assumes asm: "trcl R x y"
+  assumes "trcl R x y"
   shows "(\<And>x. P x x) \<Longrightarrow> (\<And>x y z. R x y \<Longrightarrow> P y z \<Longrightarrow> P x z) \<Longrightarrow> P x y"
 apply(atomize (full))
-apply(cut_tac asm)
+apply(cut_tac prems)
 apply(unfold trcl_def)
 apply(drule spec[where x=P])
 apply(assumption)
@@ -212,11 +212,11 @@
 *}
 
 simple_inductive
-  even\<iota> and odd\<iota>
+  even and odd
 where
-  even0: "even\<iota> 0"
-| evenS: "odd\<iota> n \<Longrightarrow> even\<iota> (Suc n)"
-| oddS: "even\<iota> n \<Longrightarrow> odd\<iota> (Suc n)"
+  even0: "even 0"
+| evenS: "odd n \<Longrightarrow> even (Suc n)"
+| oddS: "even n \<Longrightarrow> odd (Suc n)"
 
 text {*
   Since the predicates @{term even} and @{term odd} are mutually inductive, each 
@@ -224,11 +224,11 @@
   below @{text "P"} and @{text "Q"}).
 *}
 
-definition "even \<equiv> 
+definition "even\<iota> \<equiv> 
   \<lambda>n. \<forall>P Q. P 0 \<longrightarrow> (\<forall>m. Q m \<longrightarrow> P (Suc m)) 
                  \<longrightarrow> (\<forall>m. P m \<longrightarrow> Q (Suc m)) \<longrightarrow> P n"
 
-definition "odd \<equiv>
+definition "odd\<iota> \<equiv>
   \<lambda>n. \<forall>P Q. P 0 \<longrightarrow> (\<forall>m. Q m \<longrightarrow> P (Suc m)) 
                  \<longrightarrow> (\<forall>m. P m \<longrightarrow> Q (Suc m)) \<longrightarrow> Q n"
 
@@ -238,11 +238,11 @@
 *}
 
 lemma even_induct:
-  assumes asm: "even n"
+  assumes "even n"
   shows "P 0 \<Longrightarrow> 
              (\<And>m. Q m \<Longrightarrow> P (Suc m)) \<Longrightarrow> (\<And>m. P m \<Longrightarrow> Q (Suc m)) \<Longrightarrow> P n"
 apply(atomize (full))
-apply(cut_tac asm)
+apply(cut_tac prems)
 apply(unfold even_def)
 apply(drule spec[where x=P])
 apply(drule spec[where x=Q])
@@ -263,7 +263,7 @@
 apply (unfold odd_def even_def)
 apply (rule allI impI)+
 proof -
-  case (goal1 P)
+  case (goal1 P Q)
   have p1: "\<forall>P Q. P 0 \<longrightarrow> (\<forall>m. Q m \<longrightarrow> P (Suc m)) 
                              \<longrightarrow> (\<forall>m. P m \<longrightarrow> Q (Suc m)) \<longrightarrow> Q m" by fact
   have r1: "P 0" by fact
@@ -303,10 +303,10 @@
 *}
 
 lemma accpart_induct:
-  assumes asm: "accpart R x"
+  assumes "accpart R x"
   shows "(\<And>x. (\<And>y. R y x \<Longrightarrow> P y) \<Longrightarrow> P x) \<Longrightarrow> P x"
 apply(atomize (full))
-apply(cut_tac asm)
+apply(cut_tac prems)
 apply(unfold accpart_def)
 apply(drule spec[where x=P])
 apply(assumption)