src/ZF/AC/DC.thy
changeset 12891 92af5c3a10fb
parent 12820 02e2ff3e4d37
child 13175 81082cfa5618
--- a/src/ZF/AC/DC.thy	Thu Feb 14 20:30:49 2002 +0100
+++ b/src/ZF/AC/DC.thy	Fri Feb 15 12:07:27 2002 +0100
@@ -57,12 +57,8 @@
 by (simp add: domain_cons succ_def)
 
 lemma restrict_cons_eq: "g \<in> n->X ==> restrict(cons(<n,x>, g), n) = g"
-apply (unfold restrict_def)
-apply (rule fun_extension)
-apply (rule lam_type)
-apply (erule cons_fun_type [THEN apply_type])
-apply (erule succI2, assumption)
-apply (simp add: cons_val_k)
+apply (simp add: restrict_def Pi_iff)
+apply (blast intro: elim: mem_irrefl)  
 done
 
 lemma succ_in_succ: "[| Ord(k); i \<in> k |] ==> succ(i) \<in> succ(k)"
@@ -71,10 +67,9 @@
 done
 
 lemma restrict_eq_imp_val_eq: 
-      "[| restrict(f, domain(g)) = g; x \<in> domain(g) |] ==> f`x = g`x"
-apply (unfold restrict_def) 
-apply (erule subst, simp)
-done
+      "[|restrict(f, domain(g)) = g; x \<in> domain(g)|] 
+       ==> f`x = g`x" 
+by (erule subst, simp add: restrict)
 
 lemma domain_eq_imp_fun_type: "[| domain(f)=A; f \<in> B->C |] ==> f \<in> A->C"
 by (frule domain_of_fun, fast)
@@ -220,7 +215,7 @@
  apply (simp add: RR_def)
 apply (drule lemma2, assumption+)
 apply (blast dest!: domain_of_fun 
-             intro: nat_into_Ord OrdmemD [THEN subsetD])
+	     intro: nat_into_Ord OrdmemD [THEN subsetD])
 done
 
 lemma (in DC0_imp) lemma3:
@@ -370,11 +365,9 @@
      "[| restrict(h, domain(u))=u;  h \<in> n->X;  domain(u) \<subseteq> n |]   
       ==> restrict(cons(<n, y>, h), domain(u)) = u"
 apply (unfold restrict_def)
+apply (simp add: restrict_def Pi_iff)
 apply (erule sym [THEN trans, symmetric])
-apply (rule fun_extension)
-apply (fast intro!: lam_type)
-apply (fast intro!: lam_type)
-apply (simp add: subsetD [THEN cons_val_k])
+apply (blast elim: mem_irrefl)  
 done
 
 lemma (in imp_DC0) all_in_image_restrict_eq: