src/ZF/OrdQuant.thy
changeset 13162 660a71e712af
parent 13149 773657d466cb
child 13169 394a6c649547
     1.1 --- a/src/ZF/OrdQuant.thy	Fri May 17 16:48:11 2002 +0200
     1.2 +++ b/src/ZF/OrdQuant.thy	Fri May 17 16:54:25 2002 +0200
     1.3 @@ -73,11 +73,11 @@
     1.4  lemma trans_imp_trans_on: "trans(r) ==> trans[A](r)"
     1.5  by (unfold trans_def trans_on_def, blast)
     1.6  
     1.7 -lemma image_is_UN: "\<lbrakk>function(g); x <= domain(g)\<rbrakk> \<Longrightarrow> g``x = (UN k:x. {g`k})"
     1.8 +lemma image_is_UN: "[| function(g); x <= domain(g) |] ==> g``x = (UN k:x. {g`k})"
     1.9  by (blast intro: function_apply_equality [THEN sym] function_apply_Pair) 
    1.10  
    1.11  lemma functionI: 
    1.12 -     "\<lbrakk>!!x y y'. \<lbrakk><x,y>:r; <x,y'>:r\<rbrakk> \<Longrightarrow> y=y'\<rbrakk> \<Longrightarrow> function(r)"
    1.13 +     "[| !!x y y'. [| <x,y>:r; <x,y'>:r |] ==> y=y' |] ==> function(r)"
    1.14  by (simp add: function_def, blast) 
    1.15  
    1.16  lemma function_lam: "function (lam x:A. b(x))"
    1.17 @@ -92,7 +92,7 @@
    1.18  (** These mostly belong to theory Ordinal **)
    1.19  
    1.20  lemma Union_upper_le:
    1.21 -     "\<lbrakk>j: J;  i\<le>j;  Ord(\<Union>(J))\<rbrakk> \<Longrightarrow> i \<le> \<Union>J"
    1.22 +     "[| j: J;  i\<le>j;  Ord(\<Union>(J)) |] ==> i \<le> \<Union>J"
    1.23  apply (subst Union_eq_UN)  
    1.24  apply (rule UN_upper_le, auto)
    1.25  done
    1.26 @@ -100,29 +100,29 @@
    1.27  lemma zero_not_Limit [iff]: "~ Limit(0)"
    1.28  by (simp add: Limit_def)
    1.29  
    1.30 -lemma Limit_has_1: "Limit(i) \<Longrightarrow> 1 < i"
    1.31 +lemma Limit_has_1: "Limit(i) ==> 1 < i"
    1.32  by (blast intro: Limit_has_0 Limit_has_succ)
    1.33  
    1.34 -lemma Limit_Union [rule_format]: "\<lbrakk>I \<noteq> 0;  \<forall>i\<in>I. Limit(i)\<rbrakk> \<Longrightarrow> Limit(\<Union>I)"
    1.35 +lemma Limit_Union [rule_format]: "[| I \<noteq> 0;  \<forall>i\<in>I. Limit(i) |] ==> Limit(\<Union>I)"
    1.36  apply (simp add: Limit_def lt_def)
    1.37  apply (blast intro!: equalityI)
    1.38  done
    1.39  
    1.40 -lemma increasing_LimitI: "\<lbrakk>0<l; \<forall>x\<in>l. \<exists>y\<in>l. x<y\<rbrakk> \<Longrightarrow> Limit(l)"
    1.41 +lemma increasing_LimitI: "[| 0<l; \<forall>x\<in>l. \<exists>y\<in>l. x<y |] ==> Limit(l)"
    1.42  apply (simp add: Limit_def lt_Ord2, clarify)
    1.43  apply (drule_tac i=y in ltD) 
    1.44  apply (blast intro: lt_trans1 [OF _ ltI] lt_Ord2)
    1.45  done
    1.46  
    1.47  lemma UN_upper_lt:
    1.48 -     "\<lbrakk>a\<in>A;  i < b(a);  Ord(\<Union>x\<in>A. b(x))\<rbrakk> \<Longrightarrow> i < (\<Union>x\<in>A. b(x))"
    1.49 +     "[| a\<in>A;  i < b(a);  Ord(\<Union>x\<in>A. b(x)) |] ==> i < (\<Union>x\<in>A. b(x))"
    1.50  by (unfold lt_def, blast) 
    1.51  
    1.52 -lemma lt_imp_0_lt: "j<i \<Longrightarrow> 0<i"
    1.53 +lemma lt_imp_0_lt: "j<i ==> 0<i"
    1.54  by (blast intro: lt_trans1 Ord_0_le [OF lt_Ord]) 
    1.55  
    1.56  lemma Ord_set_cases:
    1.57 -   "\<forall>i\<in>I. Ord(i) \<Longrightarrow> I=0 \<or> \<Union>(I) \<in> I \<or> (\<Union>(I) \<notin> I \<and> Limit(\<Union>(I)))"
    1.58 +   "\<forall>i\<in>I. Ord(i) ==> I=0 \<or> \<Union>(I) \<in> I \<or> (\<Union>(I) \<notin> I \<and> Limit(\<Union>(I)))"
    1.59  apply (clarify elim!: not_emptyE) 
    1.60  apply (cases "\<Union>(I)" rule: Ord_cases) 
    1.61     apply (blast intro: Ord_Union)
    1.62 @@ -140,10 +140,10 @@
    1.63  by (drule Ord_set_cases, auto)
    1.64  
    1.65  (*See also Transset_iff_Union_succ*)
    1.66 -lemma Ord_Union_succ_eq: "Ord(i) \<Longrightarrow> \<Union>(succ(i)) = i"
    1.67 +lemma Ord_Union_succ_eq: "Ord(i) ==> \<Union>(succ(i)) = i"
    1.68  by (blast intro: Ord_trans)
    1.69  
    1.70 -lemma lt_Union_iff: "\<forall>i\<in>A. Ord(i) \<Longrightarrow> (j < \<Union>(A)) <-> (\<exists>i\<in>A. j<i)"
    1.71 +lemma lt_Union_iff: "\<forall>i\<in>A. Ord(i) ==> (j < \<Union>(A)) <-> (\<exists>i\<in>A. j<i)"
    1.72  by (auto simp: lt_def Ord_Union)
    1.73  
    1.74  lemma Un_upper1_lt: "[|k < i; Ord(j)|] ==> k < i Un j"
    1.75 @@ -153,15 +153,15 @@
    1.76  by (simp add: lt_def) 
    1.77  
    1.78  lemma Ord_OUN [intro,simp]:
    1.79 -     "\<lbrakk>!!x. x<A \<Longrightarrow> Ord(B(x))\<rbrakk> \<Longrightarrow> Ord(\<Union>x<A. B(x))"
    1.80 +     "[| !!x. x<A ==> Ord(B(x)) |] ==> Ord(\<Union>x<A. B(x))"
    1.81  by (simp add: OUnion_def ltI Ord_UN) 
    1.82  
    1.83  lemma OUN_upper_lt:
    1.84 -     "\<lbrakk>a<A;  i < b(a);  Ord(\<Union>x<A. b(x))\<rbrakk> \<Longrightarrow> i < (\<Union>x<A. b(x))"
    1.85 +     "[| a<A;  i < b(a);  Ord(\<Union>x<A. b(x)) |] ==> i < (\<Union>x<A. b(x))"
    1.86  by (unfold OUnion_def lt_def, blast )
    1.87  
    1.88  lemma OUN_upper_le:
    1.89 -     "\<lbrakk>a<A;  i\<le>b(a);  Ord(\<Union>x<A. b(x))\<rbrakk> \<Longrightarrow> i \<le> (\<Union>x<A. b(x))"
    1.90 +     "[| a<A;  i\<le>b(a);  Ord(\<Union>x<A. b(x)) |] ==> i \<le> (\<Union>x<A. b(x))"
    1.91  apply (unfold OUnion_def, auto)
    1.92  apply (rule UN_upper_le )
    1.93  apply (auto simp add: lt_def)