expandshort
authorlcp
Thu, 13 Apr 1995 15:08:39 +0200
changeset 1046 9d2261a3e682
parent 1045 0cdf86973c49
child 1047 5133479a37cf
expandshort
src/HOL/ex/Acc.ML
src/HOL/ex/LList.ML
--- a/src/HOL/ex/Acc.ML	Thu Apr 13 15:06:25 1995 +0200
+++ b/src/HOL/ex/Acc.ML	Thu Apr 13 15:08:39 1995 +0200
@@ -33,7 +33,7 @@
 by (resolve_tac acc.intrs 1);
 by (rewtac pred_def);
 by (fast_tac set_cs 2);
-be (Int_lower1 RS Pow_mono RS subsetD) 1;
+by (etac (Int_lower1 RS Pow_mono RS subsetD) 1);
 qed "acc_induct";
 
 
@@ -46,8 +46,8 @@
 
 val [major] = goal Acc.thy "wf(r) ==> ALL x. (x,y): r | (y,x):r --> y: acc(r)";
 by (rtac (major RS wf_induct) 1);
-br (impI RS allI) 1;
-br accI 1;
+by (rtac (impI RS allI) 1);
+by (rtac accI 1);
 by (fast_tac set_cs 1);
 qed "acc_wfD_lemma";
 
--- a/src/HOL/ex/LList.ML	Thu Apr 13 15:06:25 1995 +0200
+++ b/src/HOL/ex/LList.ML	Thu Apr 13 15:08:39 1995 +0200
@@ -40,9 +40,9 @@
 
 goalw LList.thy [list_Fun_def]
     "!!M. [| M : X;  X <= list_Fun A (X Un llist(A)) |] ==>  M : llist(A)";
-be llist.coinduct 1;
-be (subsetD RS CollectD) 1;
-ba 1;
+by (etac llist.coinduct 1);
+by (etac (subsetD RS CollectD) 1);
+by (assume_tac 1);
 qed "llist_coinduct";
 
 goalw LList.thy [list_Fun_def, NIL_def] "NIL: list_Fun A X";
@@ -197,9 +197,9 @@
 
 goalw LList.thy [LListD_Fun_def]
     "!!M. [| M : X;  X <= LListD_Fun r (X Un LListD(r)) |] ==>  M : LListD(r)";
-be LListD.coinduct 1;
-be (subsetD RS CollectD) 1;
-ba 1;
+by (etac LListD.coinduct 1);
+by (etac (subsetD RS CollectD) 1);
+by (assume_tac 1);
 qed "LListD_coinduct";
 
 goalw LList.thy [LListD_Fun_def,NIL_def] "(NIL,NIL) : LListD_Fun r s";
@@ -223,8 +223,8 @@
 by (rtac subsetI 1);
 by (etac LListD_coinduct 1);
 by (rtac subsetI 1);
-by (eresolve_tac [diagE] 1);
-by (eresolve_tac [ssubst] 1);
+by (etac diagE 1);
+by (etac ssubst 1);
 by (eresolve_tac [llist.elim] 1);
 by (ALLGOALS
     (asm_simp_tac (llist_ss addsimps [diagI, LListD_Fun_NIL_I,
@@ -239,7 +239,7 @@
 goal LList.thy 
     "!!M N. M: llist(A) ==> (M,M) : LListD_Fun (diag A) (X Un diag(llist(A)))";
 by (rtac (LListD_eq_diag RS subst) 1);
-br LListD_Fun_LListD_I 1;
+by (rtac LListD_Fun_LListD_I 1);
 by (asm_simp_tac (HOL_ss addsimps [LListD_eq_diag, diagI]) 1);
 qed "LListD_Fun_diag_I";
 
@@ -425,14 +425,14 @@
 \                                   diag(llist(A)))		\
 \ |] ==> f(M) = g(M)";
 by (rtac LList_equalityI 1);
-br (Mlist RS imageI) 1;
+by (rtac (Mlist RS imageI) 1);
 by (rtac subsetI 1);
 by (etac imageE 1);
 by (etac ssubst 1);
 by (etac llist.elim 1);
 by (etac ssubst 1);
 by (stac NILcase 1);
-br (gMlist RS LListD_Fun_diag_I) 1;
+by (rtac (gMlist RS LListD_Fun_diag_I) 1);
 by (etac ssubst 1);
 by (REPEAT (ares_tac [CONScase] 1));
 qed "LList_fun_equalityI";
@@ -543,9 +543,9 @@
 goal LList.thy
     "!!M N. [| M: llist(A); N: llist(A) |] ==> Lappend M N: llist(A)";
 by (res_inst_tac [("X", "(%u.Lappend u N)``llist(A)")] llist_coinduct 1);
-be imageI 1;
-br subsetI 1;
-be imageE 1;
+by (etac imageI 1);
+by (rtac subsetI 1);
+by (etac imageE 1);
 by (eres_inst_tac [("a", "u")] llist.elim 1);
 by (asm_simp_tac (Lappend_ss addsimps [Lappend_NIL, list_Fun_llist_I]) 1);
 by (asm_simp_tac Lappend_ss 1);
@@ -639,7 +639,7 @@
 goal LList.thy
     "prod_fun Rep_llist  Rep_llist `` range(%x. (x, x)) = \
 \    diag(llist(range(Leaf)))";
-br equalityI 1;
+by (rtac equalityI 1);
 by (fast_tac (univ_cs addIs [Rep_llist]) 1);
 by (fast_tac (univ_cs addSEs [Abs_llist_inverse RS subst]) 1);
 qed "prod_fun_range_eq_diag";
@@ -677,11 +677,11 @@
 (*Utilise the "strong" part, i.e. gfp(f)*)
 goalw LList.thy [llistD_Fun_def]
      "!!l. (l,l) : llistD_Fun(r Un range(%x.(x,x)))";
-br (Rep_llist_inverse RS subst) 1;
-br prod_fun_imageI 1;
+by (rtac (Rep_llist_inverse RS subst) 1);
+by (rtac prod_fun_imageI 1);
 by (rtac (image_Un RS ssubst) 1);
 by (stac prod_fun_range_eq_diag 1);
-br (Rep_llist RS LListD_Fun_diag_I) 1;
+by (rtac (Rep_llist RS LListD_Fun_diag_I) 1);
 qed "llistD_Fun_range_I";
 
 (*A special case of list_equality for functions over lazy lists*)
@@ -754,8 +754,8 @@
 qed "lmap_iterates";
 
 goal LList.thy "iterates f x = LCons x (lmap f (iterates f x))";
-br (lmap_iterates RS ssubst) 1;
-br iterates 1;
+by (rtac (lmap_iterates RS ssubst) 1);
+by (rtac iterates 1);
 qed "iterates_lmap";
 
 (*** A rather complex proof about iterates -- cf Andy Pitts ***)
@@ -781,7 +781,7 @@
   for all u and all n::nat.*)
 val [prem] = goal LList.thy
     "(!!x. h(x) = LCons x (lmap f (h x))) ==> h = iterates(f)";
-br ext 1;
+by (rtac ext 1);
 by (res_inst_tac [("r", 
    "UN u. range(%n. (nat_rec n (h u) (%m y.lmap f y), \
 \                    nat_rec n (iterates f u) (%m y.lmap f y)))")] 
@@ -792,12 +792,12 @@
 by (stac prem 1);
 by (stac fun_power_lmap 1);
 by (stac fun_power_lmap 1);
-br llistD_Fun_LCons_I 1;
+by (rtac llistD_Fun_LCons_I 1);
 by (rtac (lmap_iterates RS subst) 1);
 by (stac fun_power_Suc 1);
 by (stac fun_power_Suc 1);
-br (UN1_I RS UnI1) 1;
-br rangeI 1;
+by (rtac (UN1_I RS UnI1) 1);
+by (rtac rangeI 1);
 qed "iterates_equality";