isatool fixgoal;
authorwenzelm
Mon Jun 22 17:13:09 1998 +0200 (1998-06-22)
changeset 5068fb28eaa07e01
parent 5067 62b6288e6005
child 5069 3ea049f7979d
isatool fixgoal;
src/HOLCF/Discrete.ML
src/HOLCF/Discrete0.ML
src/HOLCF/Discrete1.ML
src/HOLCF/Fix.ML
src/HOLCF/IMP/Denotational.ML
src/HOLCF/IOA/ABP/Action.ML
src/HOLCF/IOA/ABP/Correctness.ML
src/HOLCF/IOA/NTP/Abschannel.ML
src/HOLCF/IOA/NTP/Action.ML
src/HOLCF/IOA/NTP/Correctness.ML
src/HOLCF/IOA/NTP/Impl.ML
src/HOLCF/IOA/NTP/Multiset.ML
src/HOLCF/IOA/NTP/Packet.ML
src/HOLCF/IOA/NTP/Receiver.ML
src/HOLCF/IOA/NTP/Sender.ML
src/HOLCF/IOA/meta_theory/Abstraction.ML
src/HOLCF/IOA/meta_theory/Asig.ML
src/HOLCF/IOA/meta_theory/Automata.ML
src/HOLCF/IOA/meta_theory/CompoExecs.ML
src/HOLCF/IOA/meta_theory/CompoScheds.ML
src/HOLCF/IOA/meta_theory/CompoTraces.ML
src/HOLCF/IOA/meta_theory/Compositionality.ML
src/HOLCF/IOA/meta_theory/Deadlock.ML
src/HOLCF/IOA/meta_theory/LiveIOA.ML
src/HOLCF/IOA/meta_theory/RefCorrectness.ML
src/HOLCF/IOA/meta_theory/RefMappings.ML
src/HOLCF/IOA/meta_theory/Seq.ML
src/HOLCF/IOA/meta_theory/Sequence.ML
src/HOLCF/IOA/meta_theory/ShortExecutions.ML
src/HOLCF/IOA/meta_theory/SimCorrectness.ML
src/HOLCF/IOA/meta_theory/Simulations.ML
src/HOLCF/IOA/meta_theory/TL.ML
src/HOLCF/IOA/meta_theory/TLS.ML
src/HOLCF/IOA/meta_theory/Traces.ML
src/HOLCF/IOA/meta_theory/TrivEx.ML
src/HOLCF/IOA/meta_theory/TrivEx2.ML
src/HOLCF/Lift.ML
src/HOLCF/Lift1.ML
src/HOLCF/Lift2.ML
src/HOLCF/Lift3.ML
src/HOLCF/Porder.ML
src/HOLCF/Porder0.ML
src/HOLCF/Tr.ML
src/ZF/AC/AC15_WO6.ML
src/ZF/AC/AC16_WO4.ML
src/ZF/AC/AC16_lemmas.ML
src/ZF/AC/AC17_AC1.ML
src/ZF/AC/AC18_AC19.ML
src/ZF/AC/AC1_AC17.ML
src/ZF/AC/AC1_WO2.ML
src/ZF/AC/AC2_AC6.ML
src/ZF/AC/AC7_AC9.ML
src/ZF/AC/AC_Equiv.ML
src/ZF/AC/Cardinal_aux.ML
src/ZF/AC/DC.ML
src/ZF/AC/DC_lemmas.ML
src/ZF/AC/HH.ML
src/ZF/AC/Hartog.ML
src/ZF/AC/WO1_AC.ML
src/ZF/AC/WO1_WO6.ML
src/ZF/AC/WO1_WO7.ML
src/ZF/AC/WO1_WO8.ML
src/ZF/AC/WO2_AC16.ML
src/ZF/AC/WO6_WO1.ML
src/ZF/AC/WO_AC.ML
src/ZF/AC/recfunAC16.ML
src/ZF/Coind/ECR.ML
src/ZF/Coind/MT.ML
src/ZF/Coind/Map.ML
src/ZF/Coind/Types.ML
src/ZF/Coind/Values.ML
src/ZF/IMP/Equiv.ML
src/ZF/Resid/Confluence.ML
src/ZF/Resid/Conversion.ML
src/ZF/Resid/Cube.ML
src/ZF/Resid/Redex.ML
src/ZF/Resid/Reduction.ML
src/ZF/Resid/Residuals.ML
src/ZF/Resid/SubUnion.ML
src/ZF/Resid/Substitution.ML
src/ZF/Resid/Terms.ML
src/ZF/ex/Acc.ML
src/ZF/ex/BT.ML
src/ZF/ex/Bin.ML
src/ZF/ex/Brouwer.ML
src/ZF/ex/CoUnit.ML
src/ZF/ex/Comb.ML
src/ZF/ex/Data.ML
src/ZF/ex/Enum.ML
src/ZF/ex/Integ.ML
src/ZF/ex/LList.ML
src/ZF/ex/Limit.ML
src/ZF/ex/ListN.ML
src/ZF/ex/Mutil.ML
src/ZF/ex/Ntree.ML
src/ZF/ex/Primes.ML
src/ZF/ex/Primrec.ML
src/ZF/ex/PropLog.ML
src/ZF/ex/Ramsey.ML
src/ZF/ex/Rmap.ML
src/ZF/ex/TF.ML
src/ZF/ex/Term.ML
src/ZF/ex/misc.ML
     1.1 --- a/src/HOLCF/Discrete.ML	Mon Jun 22 17:12:27 1998 +0200
     1.2 +++ b/src/HOLCF/Discrete.ML	Mon Jun 22 17:13:09 1998 +0200
     1.3 @@ -4,17 +4,17 @@
     1.4      Copyright   1997 TUM
     1.5  *)
     1.6  
     1.7 -goalw thy [undiscr_def] "undiscr(Discr x) = x";
     1.8 +Goalw [undiscr_def] "undiscr(Discr x) = x";
     1.9  by (Simp_tac 1);
    1.10  qed "undiscr_Discr";
    1.11  Addsimps [undiscr_Discr];
    1.12  
    1.13 -goal thy
    1.14 +Goal
    1.15   "!!S::nat=>('a::term)discr. chain(S) ==> range(%i. f(S i)) = {f(S 0)}";
    1.16  by (fast_tac (claset() addDs [discr_chain0] addEs [arg_cong]) 1);
    1.17  qed "discr_chain_f_range0";
    1.18  
    1.19 -goalw thy [cont,is_lub,is_ub] "cont(%x::('a::term)discr. f x)";
    1.20 +Goalw [cont,is_lub,is_ub] "cont(%x::('a::term)discr. f x)";
    1.21  by (simp_tac (simpset() addsimps [discr_chain_f_range0]) 1);
    1.22  qed "cont_discr";
    1.23  AddIffs [cont_discr];
     2.1 --- a/src/HOLCF/Discrete0.ML	Mon Jun 22 17:12:27 1998 +0200
     2.2 +++ b/src/HOLCF/Discrete0.ML	Mon Jun 22 17:13:09 1998 +0200
     2.3 @@ -6,17 +6,17 @@
     2.4  Proves that 'a discr is a po
     2.5  *)
     2.6  
     2.7 -goalw thy [less_discr_def] "(x::('a::term)discr) << x";
     2.8 +Goalw [less_discr_def] "(x::('a::term)discr) << x";
     2.9  by (rtac refl 1);
    2.10  qed "less_discr_refl";
    2.11  
    2.12 -goalw thy [less_discr_def]
    2.13 +Goalw [less_discr_def]
    2.14    "!!x. [| (x::('a::term)discr) << y; y << z |] ==> x <<  z";
    2.15  by (etac trans 1);
    2.16  by (assume_tac 1);
    2.17  qed "less_discr_trans";
    2.18  
    2.19 -goalw thy [less_discr_def]
    2.20 +Goalw [less_discr_def]
    2.21    "!!x. [| (x::('a::term)discr) << y; y << x |] ==> x=y";
    2.22  by (assume_tac 1);
    2.23  qed "less_discr_antisym";
     3.1 --- a/src/HOLCF/Discrete1.ML	Mon Jun 22 17:12:27 1998 +0200
     3.2 +++ b/src/HOLCF/Discrete1.ML	Mon Jun 22 17:13:09 1998 +0200
     3.3 @@ -6,12 +6,12 @@
     3.4  Proves that 'a discr is a cpo
     3.5  *)
     3.6  
     3.7 -goalw thy [less_discr_def] "((x::('a::term)discr) << y) = (x=y)";
     3.8 +Goalw [less_discr_def] "((x::('a::term)discr) << y) = (x=y)";
     3.9  by (rtac refl 1);
    3.10  qed "discr_less_eq";
    3.11  AddIffs [discr_less_eq];
    3.12  
    3.13 -goalw thy [chain]
    3.14 +Goalw [chain]
    3.15   "!!S::nat=>('a::term)discr. chain S ==> S i = S 0";
    3.16  by (nat_ind_tac "i" 1);
    3.17  by (rtac refl 1);
    3.18 @@ -20,13 +20,13 @@
    3.19  by (Fast_tac 1);
    3.20  qed "discr_chain0";
    3.21  
    3.22 -goal thy
    3.23 +Goal
    3.24   "!!S::nat=>('a::term)discr. chain(S) ==> range(S) = {S 0}";
    3.25  by (fast_tac (claset() addEs [discr_chain0]) 1);
    3.26  qed "discr_chain_range0";
    3.27  Addsimps [discr_chain_range0];
    3.28  
    3.29 -goalw thy [is_lub,is_ub]
    3.30 +Goalw [is_lub,is_ub]
    3.31   "!!S. chain S ==> ? x::('a::term)discr. range(S) <<| x";
    3.32  by (Asm_simp_tac 1);
    3.33  qed "discr_cpo";
     4.1 --- a/src/HOLCF/Fix.ML	Mon Jun 22 17:12:27 1998 +0200
     4.2 +++ b/src/HOLCF/Fix.ML	Mon Jun 22 17:13:09 1998 +0200
     4.3 @@ -884,7 +884,7 @@
     4.4          (Simp_tac 1)
     4.5          ]);
     4.6  
     4.7 -goal Fix.thy "!! P. [| adm (%x. P x --> Q x); adm (%x. Q x --> P x) |] \
     4.8 +Goal "!! P. [| adm (%x. P x --> Q x); adm (%x. Q x --> P x) |] \
     4.9  \           ==> adm (%x. P x = Q x)";
    4.10  by (subgoal_tac "(%x. P x = Q x) = (%x. (P x --> Q x) & (Q x --> P x))" 1);
    4.11  by (Asm_simp_tac 1);
     5.1 --- a/src/HOLCF/IMP/Denotational.ML	Mon Jun 22 17:12:27 1998 +0200
     5.2 +++ b/src/HOLCF/IMP/Denotational.ML	Mon Jun 22 17:13:09 1998 +0200
     5.3 @@ -6,29 +6,29 @@
     5.4  Equivalence of Denotational Semantics in HOLCF and Evaluation Semantics in HOL
     5.5  *)
     5.6  
     5.7 -goalw thy [dlift_def] "dlift f`(Def x) = f`(Discr x)";
     5.8 +Goalw [dlift_def] "dlift f`(Def x) = f`(Discr x)";
     5.9  by (Simp_tac 1);
    5.10  qed "dlift_Def";
    5.11  Addsimps [dlift_Def];
    5.12  
    5.13 -goalw thy [dlift_def] "cont(%f. dlift f)";
    5.14 +Goalw [dlift_def] "cont(%f. dlift f)";
    5.15  by (Simp_tac 1);
    5.16  qed "cont_dlift";
    5.17  AddIffs [cont_dlift];
    5.18  
    5.19 -goalw thy [dlift_def]
    5.20 +Goalw [dlift_def]
    5.21   "(dlift f`l = Def y) = (? x. l = Def x & f`(Discr x) = Def y)";
    5.22  by (simp_tac (simpset() addsplits [split_lift_case]) 1);
    5.23  qed "dlift_is_Def";
    5.24  Addsimps [dlift_is_Def];
    5.25  
    5.26 -goal thy "!!c. <c,s> -c-> t ==> D c`(Discr s) = (Def t)";
    5.27 +Goal "!!c. <c,s> -c-> t ==> D c`(Discr s) = (Def t)";
    5.28  by (etac evalc.induct 1);
    5.29        by (ALLGOALS Asm_simp_tac);
    5.30   by (ALLGOALS (stac fix_eq THEN' Asm_full_simp_tac));
    5.31  qed_spec_mp "eval_implies_D";
    5.32  
    5.33 -goal thy "!s t. D c`(Discr s) = (Def t) --> <c,s> -c-> t";
    5.34 +Goal "!s t. D c`(Discr s) = (Def t) --> <c,s> -c-> t";
    5.35  by (com.induct_tac "c" 1);
    5.36      by (fast_tac ((HOL_cs addSIs evalc.intrs) addss simpset()) 1);
    5.37     by (fast_tac ((HOL_cs addSIs evalc.intrs) addss simpset()) 1);
    5.38 @@ -46,6 +46,6 @@
    5.39  qed_spec_mp "D_implies_eval";
    5.40  
    5.41  
    5.42 -goal thy "(D c`(Discr s) = (Def t)) = (<c,s> -c-> t)";
    5.43 +Goal "(D c`(Discr s) = (Def t)) = (<c,s> -c-> t)";
    5.44  by (fast_tac (HOL_cs addSEs [D_implies_eval,eval_implies_D]) 1);
    5.45  qed "D_is_eval";
     6.1 --- a/src/HOLCF/IOA/ABP/Action.ML	Mon Jun 22 17:12:27 1998 +0200
     6.2 +++ b/src/HOLCF/IOA/ABP/Action.ML	Mon Jun 22 17:13:09 1998 +0200
     6.3 @@ -6,7 +6,7 @@
     6.4  Derived rules for actions
     6.5  *)
     6.6  
     6.7 -goal Action.thy "!!x. x = y ==> action_case a b c d e f g x =     \
     6.8 +Goal "!!x. x = y ==> action_case a b c d e f g x =     \
     6.9  \                               action_case a b c d e f g y";
    6.10  by (Asm_simp_tac 1);
    6.11  
     7.1 --- a/src/HOLCF/IOA/ABP/Correctness.ML	Mon Jun 22 17:12:27 1998 +0200
     7.2 +++ b/src/HOLCF/IOA/ABP/Correctness.ML	Mon Jun 22 17:13:09 1998 +0200
     7.3 @@ -42,7 +42,7 @@
     7.4  
     7.5  (* lemmas about reduce *)
     7.6  
     7.7 -goal Correctness.thy "(reduce(l)=[]) = (l=[])";  
     7.8 +Goal "(reduce(l)=[]) = (l=[])";  
     7.9   by (rtac iffI 1);
    7.10   by (subgoal_tac "(l~=[]) --> (reduce(l)~=[])" 1);
    7.11   by (Fast_tac 1); 
    7.12 @@ -59,7 +59,7 @@
    7.13   by (Asm_full_simp_tac 1);
    7.14  val l_iff_red_nil = result();
    7.15  
    7.16 -goal Correctness.thy "s~=[] --> hd(s)=hd(reduce(s))";
    7.17 +Goal "s~=[] --> hd(s)=hd(reduce(s))";
    7.18  by (List.list.induct_tac "s" 1);
    7.19  by (Simp_tac 1);
    7.20  by (case_tac "list =[]" 1);
    7.21 @@ -79,7 +79,7 @@
    7.22  qed"hd_is_reduce_hd";
    7.23  
    7.24  (* to be used in the following Lemma *)
    7.25 -goal Correctness.thy "l~=[] --> reverse(reduce(l))~=[]";
    7.26 +Goal "l~=[] --> reverse(reduce(l))~=[]";
    7.27  by (List.list.induct_tac "l" 1);
    7.28  by (Simp_tac 1);
    7.29  by (case_tac "list =[]" 1);
    7.30 @@ -97,7 +97,7 @@
    7.31  qed"rev_red_not_nil";
    7.32  
    7.33  (* shows applicability of the induction hypothesis of the following Lemma 1 *)
    7.34 -goal Correctness.thy "!!l.[| l~=[] |] ==>   \
    7.35 +Goal "!!l.[| l~=[] |] ==>   \
    7.36  \   hd(reverse(reduce(a#l))) = hd(reverse(reduce(l)))";
    7.37   by (Simp_tac 1);
    7.38   by (rtac (split_list_case RS iffD2) 1);
    7.39 @@ -112,7 +112,7 @@
    7.40  val impl_ss = simpset() delsimps [reduce_Cons];
    7.41  
    7.42  (* Main Lemma 1 for S_pkt in showing that reduce is refinement  *) 
    7.43 -goal Correctness.thy 
    7.44 +Goal 
    7.45     "if x=hd(reverse(reduce(l))) & reduce(l)~=[] then   \
    7.46  \      reduce(l@[x])=reduce(l) else                  \
    7.47  \      reduce(l@[x])=reduce(l)@[x]"; 
    7.48 @@ -145,7 +145,7 @@
    7.49  
    7.50  
    7.51  (* Main Lemma 2 for R_pkt in showing that reduce is refinement *)
    7.52 -goal Correctness.thy 
    7.53 +Goal 
    7.54    "!! s. [| s~=[] |] ==>  \
    7.55  \    if hd(s)=hd(tl(s)) & tl(s)~=[] then    \
    7.56  \      reduce(tl(s))=reduce(s) else      \
    7.57 @@ -168,7 +168,7 @@
    7.58   *******************************************************************)
    7.59  
    7.60  Delsplits [split_if];
    7.61 -goal Correctness.thy 
    7.62 +Goal 
    7.63        "is_weak_ref_map reduce ch_ioa ch_fin_ioa";
    7.64  by (simp_tac (simpset() addsimps [is_weak_ref_map_def]) 1);
    7.65  (* ---------------- main-part ------------------- *)
    7.66 @@ -194,13 +194,13 @@
    7.67  by (etac reduce_tl 1);
    7.68  qed"channel_abstraction";
    7.69  
    7.70 -goal Correctness.thy 
    7.71 +Goal 
    7.72        "is_weak_ref_map reduce srch_ioa srch_fin_ioa";
    7.73  by (simp_tac (list_ss addsimps [srch_fin_ioa_def,rsch_fin_ioa_def,
    7.74   srch_ioa_def,rsch_ioa_def,rename_through_pmap,channel_abstraction]) 1);
    7.75  qed"sender_abstraction";
    7.76  
    7.77 -goal Correctness.thy 
    7.78 +Goal 
    7.79        "is_weak_ref_map reduce rsch_ioa rsch_fin_ioa";
    7.80  by (simp_tac (list_ss addsimps [srch_fin_ioa_def,rsch_fin_ioa_def,
    7.81   srch_ioa_def,rsch_ioa_def,rename_through_pmap,channel_abstraction]) 1);
    7.82 @@ -209,7 +209,7 @@
    7.83  
    7.84  (* 3 thms that do not hold generally! The lucky restriction here is 
    7.85     the absence of internal actions. *)
    7.86 -goal Correctness.thy 
    7.87 +Goal 
    7.88        "is_weak_ref_map (%id. id) sender_ioa sender_ioa";
    7.89  by (simp_tac (simpset() addsimps [is_weak_ref_map_def]) 1);
    7.90  by (TRY(
    7.91 @@ -225,7 +225,7 @@
    7.92  qed"sender_unchanged";
    7.93  
    7.94  (* 2 copies of before *)
    7.95 -goal Correctness.thy 
    7.96 +Goal 
    7.97        "is_weak_ref_map (%id. id) receiver_ioa receiver_ioa";
    7.98  by (simp_tac (simpset() addsimps [is_weak_ref_map_def]) 1);
    7.99  by (TRY(
   7.100 @@ -240,7 +240,7 @@
   7.101  by (ALLGOALS(simp_tac (simpset() addsimps [externals_def] addsplits [split_if])));
   7.102  qed"receiver_unchanged";
   7.103  
   7.104 -goal Correctness.thy 
   7.105 +Goal 
   7.106        "is_weak_ref_map (%id. id) env_ioa env_ioa";
   7.107  by (simp_tac (simpset() addsimps [is_weak_ref_map_def]) 1);
   7.108  by (TRY(
   7.109 @@ -256,7 +256,7 @@
   7.110  qed"env_unchanged";
   7.111  Addsplits [split_if];
   7.112  
   7.113 -goal Correctness.thy "compatible srch_ioa rsch_ioa"; 
   7.114 +Goal "compatible srch_ioa rsch_ioa"; 
   7.115  by (simp_tac (simpset() addsimps [compatible_def,Int_def,empty_def]) 1);
   7.116  by (rtac set_ext 1);
   7.117  by (Action.action.induct_tac "x" 1);
   7.118 @@ -264,7 +264,7 @@
   7.119  val compat_single_ch = result();
   7.120  
   7.121  (* totally the same as before *)
   7.122 -goal Correctness.thy "compatible srch_fin_ioa rsch_fin_ioa"; 
   7.123 +Goal "compatible srch_fin_ioa rsch_fin_ioa"; 
   7.124  by (simp_tac (simpset() addsimps [compatible_def,Int_def,empty_def]) 1);
   7.125  by (rtac set_ext 1);
   7.126  by (Action.action.induct_tac "x" 1);
   7.127 @@ -278,7 +278,7 @@
   7.128                        rsch_ioa_def, Sender.sender_trans_def,
   7.129                        Receiver.receiver_trans_def] @ set_lemmas);
   7.130  
   7.131 -goal Correctness.thy "compatible receiver_ioa (srch_ioa || rsch_ioa)";
   7.132 +Goal "compatible receiver_ioa (srch_ioa || rsch_ioa)";
   7.133  by (simp_tac (ss addsimps [empty_def,compatible_def,
   7.134                             asig_of_par,asig_comp_def,actions_def,
   7.135                             Int_def]) 1);
   7.136 @@ -289,7 +289,7 @@
   7.137  val compat_rec = result();
   7.138  
   7.139  (* 5 proofs totally the same as before *)
   7.140 -goal Correctness.thy "compatible receiver_ioa (srch_fin_ioa || rsch_fin_ioa)";
   7.141 +Goal "compatible receiver_ioa (srch_fin_ioa || rsch_fin_ioa)";
   7.142  by (simp_tac (ss addsimps [empty_def,compatible_def,asig_of_par,asig_comp_def,actions_def,Int_def]) 1);
   7.143  by (Simp_tac 1);
   7.144  by (rtac set_ext 1);
   7.145 @@ -297,7 +297,7 @@
   7.146  by (ALLGOALS Simp_tac);
   7.147  val compat_rec_fin =result();
   7.148  
   7.149 -goal Correctness.thy "compatible sender_ioa \
   7.150 +Goal "compatible sender_ioa \
   7.151  \      (receiver_ioa || srch_ioa || rsch_ioa)";
   7.152  by (simp_tac (ss addsimps [empty_def,compatible_def,asig_of_par,asig_comp_def,actions_def,Int_def]) 1);
   7.153  by (Simp_tac 1);
   7.154 @@ -306,7 +306,7 @@
   7.155  by (ALLGOALS(Simp_tac));
   7.156  val compat_sen=result();
   7.157  
   7.158 -goal Correctness.thy "compatible sender_ioa\
   7.159 +Goal "compatible sender_ioa\
   7.160  \      (receiver_ioa || srch_fin_ioa || rsch_fin_ioa)";
   7.161  by (simp_tac (ss addsimps [empty_def,  compatible_def,asig_of_par,asig_comp_def,actions_def,Int_def]) 1);
   7.162  by (Simp_tac 1);
   7.163 @@ -315,7 +315,7 @@
   7.164  by (ALLGOALS(Simp_tac));
   7.165  val compat_sen_fin =result();
   7.166  
   7.167 -goal Correctness.thy "compatible env_ioa\
   7.168 +Goal "compatible env_ioa\
   7.169  \      (sender_ioa || receiver_ioa || srch_ioa || rsch_ioa)";
   7.170  by (simp_tac (ss addsimps [empty_def,compatible_def,asig_of_par,asig_comp_def,actions_def,Int_def]) 1);
   7.171  by (Simp_tac 1);
   7.172 @@ -324,7 +324,7 @@
   7.173  by (ALLGOALS(Simp_tac));
   7.174  val compat_env=result();
   7.175  
   7.176 -goal Correctness.thy "compatible env_ioa\
   7.177 +Goal "compatible env_ioa\
   7.178  \      (sender_ioa || receiver_ioa || srch_fin_ioa || rsch_fin_ioa)";
   7.179  by (simp_tac (ss addsimps [empty_def,compatible_def,asig_of_par,asig_comp_def,actions_def,Int_def]) 1);
   7.180  by (Simp_tac 1);
   7.181 @@ -335,7 +335,7 @@
   7.182  
   7.183  
   7.184  (* lemmata about externals of channels *)
   7.185 -goal Correctness.thy 
   7.186 +Goal 
   7.187   "externals(asig_of(srch_fin_ioa)) = externals(asig_of(srch_ioa)) &  \
   7.188  \ externals(asig_of(rsch_fin_ioa)) = externals(asig_of(rsch_ioa))";
   7.189     by (simp_tac (simpset() addsimps [externals_def]) 1);
   7.190 @@ -363,7 +363,7 @@
   7.191  (* FIX: this proof should be done with compositionality on trace level, not on 
   7.192          weak_ref_map level, as done here with fxg_is_weak_ref_map_of_product_IOA 
   7.193  
   7.194 -goal Correctness.thy 
   7.195 +Goal 
   7.196       "is_weak_ref_map  abs  system_ioa  system_fin_ioa";
   7.197  
   7.198  by (simp_tac (impl_ss delsimps ([srch_ioa_def, rsch_ioa_def, srch_fin_ioa_def,
     8.1 --- a/src/HOLCF/IOA/NTP/Abschannel.ML	Mon Jun 22 17:12:27 1998 +0200
     8.2 +++ b/src/HOLCF/IOA/NTP/Abschannel.ML	Mon Jun 22 17:13:09 1998 +0200
     8.3 @@ -14,7 +14,7 @@
     8.4     actions_def, srch_trans_def, rsch_trans_def, ch_trans_def,starts_of_def, 
     8.5     trans_of_def] @ asig_projections;
     8.6  
     8.7 -goal Abschannel.thy
     8.8 +Goal
     8.9       "S_msg(m) ~: actions(srch_asig)        &    \
    8.10       \ R_msg(m) ~: actions(srch_asig)        &    \
    8.11       \ S_pkt(pkt) : actions(srch_asig)    &    \
    8.12 @@ -28,7 +28,7 @@
    8.13  by (simp_tac (simpset() addsimps unfold_renaming) 1);
    8.14  qed"in_srch_asig";
    8.15  
    8.16 -goal Abschannel.thy
    8.17 +Goal
    8.18        "S_msg(m) ~: actions(rsch_asig)         & \
    8.19       \ R_msg(m) ~: actions(rsch_asig)         & \
    8.20       \ S_pkt(pkt) ~: actions(rsch_asig)    & \
    8.21 @@ -43,14 +43,14 @@
    8.22  by (simp_tac (simpset() addsimps unfold_renaming) 1);
    8.23  qed"in_rsch_asig";
    8.24  
    8.25 -goal Abschannel.thy "srch_ioa = \
    8.26 +Goal "srch_ioa = \
    8.27  \   (srch_asig, {{|}}, srch_trans,srch_wfair,srch_sfair)";
    8.28  by (simp_tac (simpset() addsimps [srch_asig_def,srch_trans_def, asig_of_def, trans_of_def,
    8.29                wfair_of_def, sfair_of_def,srch_wfair_def,srch_sfair_def]) 1);
    8.30  by (simp_tac (simpset() addsimps unfold_renaming) 1);
    8.31  qed"srch_ioa_thm";
    8.32  
    8.33 -goal Abschannel.thy "rsch_ioa = \
    8.34 +Goal "rsch_ioa = \
    8.35  \    (rsch_asig, {{|}}, rsch_trans,rsch_wfair,rsch_sfair)";
    8.36  by (simp_tac (simpset() addsimps [rsch_asig_def,rsch_trans_def, asig_of_def, trans_of_def,
    8.37                wfair_of_def, sfair_of_def,rsch_wfair_def,rsch_sfair_def]) 1);
     9.1 --- a/src/HOLCF/IOA/NTP/Action.ML	Mon Jun 22 17:12:27 1998 +0200
     9.2 +++ b/src/HOLCF/IOA/NTP/Action.ML	Mon Jun 22 17:13:09 1998 +0200
     9.3 @@ -6,7 +6,7 @@
     9.4  Derived rules for actions
     9.5  *)
     9.6  
     9.7 -goal Action.thy "!!x. x = y ==> action_case a b c d e f g h i j x =     \
     9.8 +Goal "!!x. x = y ==> action_case a b c d e f g h i j x =     \
     9.9  \                               action_case a b c d e f g h i j y";
    9.10  by (Asm_simp_tac 1);
    9.11  
    10.1 --- a/src/HOLCF/IOA/NTP/Correctness.ML	Mon Jun 22 17:12:27 1998 +0200
    10.2 +++ b/src/HOLCF/IOA/NTP/Correctness.ML	Mon Jun 22 17:13:09 1998 +0200
    10.3 @@ -27,7 +27,7 @@
    10.4  (* A lemma about restricting the action signature of the implementation
    10.5   * to that of the specification.
    10.6   ****************************)
    10.7 -goal Correctness.thy
    10.8 +Goal
    10.9   "a:externals(asig_of(restrict impl_ioa (externals spec_sig))) = \
   10.10  \ (case a of                  \
   10.11  \     S_msg(m) => True        \
   10.12 @@ -66,7 +66,7 @@
   10.13  
   10.14  
   10.15  (* Proof of correctness *)
   10.16 -goalw Correctness.thy [Spec.ioa_def, is_weak_ref_map_def]
   10.17 +Goalw [Spec.ioa_def, is_weak_ref_map_def]
   10.18    "is_weak_ref_map hom (restrict impl_ioa (externals spec_sig)) spec_ioa";
   10.19  by (simp_tac (simpset() delsplits [split_if] addsimps 
   10.20      [Correctness.hom_def, cancel_restrict, externals_lemma]) 1);
    11.1 --- a/src/HOLCF/IOA/NTP/Impl.ML	Mon Jun 22 17:12:27 1998 +0200
    11.2 +++ b/src/HOLCF/IOA/NTP/Impl.ML	Mon Jun 22 17:13:09 1998 +0200
    11.3 @@ -28,7 +28,7 @@
    11.4            in_rsch_asig];
    11.5  Addcongs [let_weak_cong];
    11.6  
    11.7 -goal Impl.thy
    11.8 +Goal
    11.9    "fst(x) = sen(x)            & \
   11.10  \  fst(snd(x)) = rec(x)       & \
   11.11  \  fst(snd(snd(x))) = srch(x) & \
   11.12 @@ -37,7 +37,7 @@
   11.13               [sen_def,rec_def,srch_def,rsch_def]) 1);
   11.14  Addsimps [result()];
   11.15  
   11.16 -goal Impl.thy "a:actions(sender_asig)   \
   11.17 +Goal "a:actions(sender_asig)   \
   11.18  \            | a:actions(receiver_asig) \
   11.19  \            | a:actions(srch_asig)     \
   11.20  \            | a:actions(rsch_asig)";
   11.21 @@ -67,7 +67,7 @@
   11.22  
   11.23  (* INVARIANT 1 *)
   11.24  
   11.25 -goalw Impl.thy impl_ioas "invariant impl_ioa inv1";
   11.26 +Goalw impl_ioas "invariant impl_ioa inv1";
   11.27  by (rtac invariantI 1);
   11.28  by (asm_full_simp_tac (simpset()
   11.29     addsimps [inv1_def, hdr_sum_def, Sender.srcvd_def,
   11.30 @@ -150,7 +150,7 @@
   11.31  
   11.32  (* INVARIANT 2 *)
   11.33  
   11.34 -  goal Impl.thy "invariant impl_ioa inv2";
   11.35 +Goal "invariant impl_ioa inv2";
   11.36  
   11.37    by (rtac invariantI1 1); 
   11.38    (* Base case *)
   11.39 @@ -212,7 +212,7 @@
   11.40  
   11.41  (* INVARIANT 3 *)
   11.42  
   11.43 -goal Impl.thy "invariant impl_ioa inv3";
   11.44 +Goal "invariant impl_ioa inv3";
   11.45  
   11.46    by (rtac invariantI 1); 
   11.47    (* Base case *)
   11.48 @@ -278,7 +278,7 @@
   11.49  
   11.50  (* INVARIANT 4 *)
   11.51  
   11.52 -goal Impl.thy "invariant impl_ioa inv4";
   11.53 +Goal "invariant impl_ioa inv4";
   11.54  
   11.55    by (rtac invariantI 1); 
   11.56    (* Base case *)
    12.1 --- a/src/HOLCF/IOA/NTP/Multiset.ML	Mon Jun 22 17:12:27 1998 +0200
    12.2 +++ b/src/HOLCF/IOA/NTP/Multiset.ML	Mon Jun 22 17:13:09 1998 +0200
    12.3 @@ -7,22 +7,22 @@
    12.4  Should be done as a subtype and moved to a global place.
    12.5  *)
    12.6  
    12.7 -goalw Multiset.thy [Multiset.count_def, Multiset.countm_empty_def]
    12.8 +Goalw [Multiset.count_def, Multiset.countm_empty_def]
    12.9     "count {|} x = 0";
   12.10   by (rtac refl 1);
   12.11  qed "count_empty";
   12.12  
   12.13 -goal Multiset.thy 
   12.14 +Goal 
   12.15       "count (addm M x) y = (if y=x then Suc(count M y) else count M y)";
   12.16    by (asm_simp_tac (simpset() addsimps 
   12.17                      [Multiset.count_def,Multiset.countm_nonempty_def]) 1);
   12.18  qed "count_addm_simp";
   12.19  
   12.20 -goal Multiset.thy "count M y <= count (addm M x) y";
   12.21 +Goal "count M y <= count (addm M x) y";
   12.22    by (simp_tac (simpset() addsimps [count_addm_simp]) 1);
   12.23  qed "count_leq_addm";
   12.24  
   12.25 -goalw Multiset.thy [Multiset.count_def] 
   12.26 +Goalw [Multiset.count_def] 
   12.27       "count (delm M x) y = (if y=x then count M y - 1 else count M y)";
   12.28  by (res_inst_tac [("M","M")] Multiset.induction 1);
   12.29  by (asm_simp_tac (simpset() 
   12.30 @@ -34,14 +34,14 @@
   12.31  by (Asm_full_simp_tac 1);
   12.32  qed "count_delm_simp";
   12.33  
   12.34 -goal Multiset.thy "!!M. (!x. P(x) --> Q(x)) ==> (countm M P <= countm M Q)";
   12.35 +Goal "!!M. (!x. P(x) --> Q(x)) ==> (countm M P <= countm M Q)";
   12.36  by (res_inst_tac [("M","M")] Multiset.induction 1);
   12.37   by (simp_tac (simpset() addsimps [Multiset.countm_empty_def]) 1);
   12.38  by (simp_tac (simpset() addsimps[Multiset.countm_nonempty_def]) 1);
   12.39  auto();
   12.40  qed "countm_props";
   12.41  
   12.42 -goal Multiset.thy "!!P. ~P(obj) ==> countm M P = countm (delm M obj) P";
   12.43 +Goal "!!P. ~P(obj) ==> countm M P = countm (delm M obj) P";
   12.44    by (res_inst_tac [("M","M")] Multiset.induction 1);
   12.45    by (simp_tac (simpset() addsimps [Multiset.delm_empty_def,
   12.46                                     Multiset.countm_empty_def]) 1);
   12.47 @@ -50,7 +50,7 @@
   12.48  qed "countm_spurious_delm";
   12.49  
   12.50  
   12.51 -goal Multiset.thy "!!P. P(x) ==> 0<count M x --> 0<countm M P";
   12.52 +Goal "!!P. P(x) ==> 0<count M x --> 0<countm M P";
   12.53    by (res_inst_tac [("M","M")] Multiset.induction 1);
   12.54    by (simp_tac (simpset() addsimps 
   12.55                            [Multiset.delm_empty_def,Multiset.count_def,
   12.56 @@ -60,7 +60,7 @@
   12.57                          Multiset.countm_nonempty_def]) 1);
   12.58  qed_spec_mp "pos_count_imp_pos_countm";
   12.59  
   12.60 -goal Multiset.thy
   12.61 +Goal
   12.62     "!!P. P(x) ==> 0<count M x --> countm (delm M x) P = countm M P - 1";
   12.63    by (res_inst_tac [("M","M")] Multiset.induction 1);
   12.64    by (simp_tac (simpset() addsimps 
    13.1 --- a/src/HOLCF/IOA/NTP/Packet.ML	Mon Jun 22 17:12:27 1998 +0200
    13.2 +++ b/src/HOLCF/IOA/NTP/Packet.ML	Mon Jun 22 17:13:09 1998 +0200
    13.3 @@ -8,7 +8,7 @@
    13.4  
    13.5  
    13.6  (* Instantiation of a tautology? *)
    13.7 -goal Packet.thy "!x. x = packet --> hdr(x) = hdr(packet)";
    13.8 +Goal "!x. x = packet --> hdr(x) = hdr(packet)";
    13.9   by (simp_tac (simpset() addsimps [Packet.hdr_def]) 1);
   13.10  qed "eq_packet_imp_eq_hdr"; 
   13.11  
    14.1 --- a/src/HOLCF/IOA/NTP/Receiver.ML	Mon Jun 22 17:12:27 1998 +0200
    14.2 +++ b/src/HOLCF/IOA/NTP/Receiver.ML	Mon Jun 22 17:13:09 1998 +0200
    14.3 @@ -4,7 +4,7 @@
    14.4      Copyright   1994  TU Muenchen
    14.5  *)
    14.6  
    14.7 -goal Receiver.thy
    14.8 +Goal
    14.9   "S_msg(m) ~: actions(receiver_asig)      &   \
   14.10  \ R_msg(m) : actions(receiver_asig)       &   \
   14.11  \ S_pkt(pkt) ~: actions(receiver_asig) &   \
    15.1 --- a/src/HOLCF/IOA/NTP/Sender.ML	Mon Jun 22 17:12:27 1998 +0200
    15.2 +++ b/src/HOLCF/IOA/NTP/Sender.ML	Mon Jun 22 17:13:09 1998 +0200
    15.3 @@ -4,7 +4,7 @@
    15.4      Copyright   1994  TU Muenchen
    15.5  *)
    15.6  
    15.7 -goal Sender.thy
    15.8 +Goal
    15.9   "S_msg(m) : actions(sender_asig)       &   \
   15.10  \ R_msg(m) ~: actions(sender_asig)      &   \
   15.11  \ S_pkt(pkt) : actions(sender_asig)  &   \
    16.1 --- a/src/HOLCF/IOA/meta_theory/Abstraction.ML	Mon Jun 22 17:12:27 1998 +0200
    16.2 +++ b/src/HOLCF/IOA/meta_theory/Abstraction.ML	Mon Jun 22 17:13:09 1998 +0200
    16.3 @@ -14,15 +14,15 @@
    16.4  (*                             cex_abs                              *)
    16.5  (* ---------------------------------------------------------------- *)
    16.6  
    16.7 -goal thy "cex_abs f (s,UU) = (f s, UU)";
    16.8 +Goal "cex_abs f (s,UU) = (f s, UU)";
    16.9  by (simp_tac (simpset() addsimps [cex_abs_def]) 1);
   16.10  qed"cex_abs_UU";
   16.11  
   16.12 -goal thy "cex_abs f (s,nil) = (f s, nil)";
   16.13 +Goal "cex_abs f (s,nil) = (f s, nil)";
   16.14  by (simp_tac (simpset() addsimps [cex_abs_def]) 1);
   16.15  qed"cex_abs_nil";
   16.16  
   16.17 -goal thy "cex_abs f (s,(a,t)>>ex) = (f s, (a,f t) >> (snd (cex_abs f (t,ex))))";
   16.18 +Goal "cex_abs f (s,(a,t)>>ex) = (f s, (a,f t) >> (snd (cex_abs f (t,ex))))";
   16.19  by (simp_tac (simpset() addsimps [cex_abs_def]) 1);
   16.20  qed"cex_abs_cons";
   16.21  
   16.22 @@ -36,13 +36,13 @@
   16.23  (*                           Lemmas                                 *)
   16.24  (* ---------------------------------------------------------------- *)
   16.25  
   16.26 -goal thy "temp_weakening Q P h = (! ex. (ex |== P) --> (cex_abs h ex |== Q))";
   16.27 +Goal "temp_weakening Q P h = (! ex. (ex |== P) --> (cex_abs h ex |== Q))";
   16.28  by (simp_tac (simpset() addsimps [temp_weakening_def,temp_strengthening_def,
   16.29       NOT_def,temp_sat_def,satisfies_def]) 1);
   16.30  auto();
   16.31  qed"temp_weakening_def2";
   16.32  
   16.33 -goal thy "state_weakening Q P h = (! s t a. P (s,a,t) --> Q (h(s),a,h(t)))";
   16.34 +Goal "state_weakening Q P h = (! s t a. P (s,a,t) --> Q (h(s),a,h(t)))";
   16.35  by (simp_tac (simpset() addsimps [state_weakening_def,state_strengthening_def,
   16.36       NOT_def]) 1);
   16.37  auto();
   16.38 @@ -56,7 +56,7 @@
   16.39  (* ---------------------------------------------------------------- *)
   16.40  
   16.41  
   16.42 -goalw thy [cex_abs_def]
   16.43 +Goalw [cex_abs_def]
   16.44   "!!h.[| is_abstraction h C A |] ==>\
   16.45  \ !s. reachable C s & is_exec_frag C (s,xs) \
   16.46  \ --> is_exec_frag A (cex_abs h (s,xs))"; 
   16.47 @@ -72,7 +72,7 @@
   16.48  qed"exec_frag_abstraction";
   16.49  
   16.50  
   16.51 -goal thy "!!A. is_abstraction h C A ==> weakeningIOA A C h";
   16.52 +Goal "!!A. is_abstraction h C A ==> weakeningIOA A C h";
   16.53  by (asm_full_simp_tac (simpset() addsimps [weakeningIOA_def])1);
   16.54  auto();
   16.55  by (asm_full_simp_tac (simpset() addsimps [executions_def]) 1);
   16.56 @@ -85,7 +85,7 @@
   16.57  qed"abs_is_weakening";
   16.58  
   16.59  
   16.60 -goal thy "!!A. [|is_abstraction h C A; validIOA A Q; temp_strengthening Q P h |] \
   16.61 +Goal "!!A. [|is_abstraction h C A; validIOA A Q; temp_strengthening Q P h |] \
   16.62  \         ==> validIOA C P";
   16.63  bd abs_is_weakening 1;
   16.64  by (asm_full_simp_tac (simpset() addsimps [weakeningIOA_def, 
   16.65 @@ -97,26 +97,26 @@
   16.66  
   16.67  (* FIX: Nach TLS.ML *)
   16.68  
   16.69 -goal thy "(ex |== P .--> Q) = ((ex |== P) --> (ex |== Q))";
   16.70 +Goal "(ex |== P .--> Q) = ((ex |== P) --> (ex |== Q))";
   16.71  by (simp_tac (simpset() addsimps [IMPLIES_def,temp_sat_def, satisfies_def])1);
   16.72  qed"IMPLIES_temp_sat";
   16.73  
   16.74 -goal thy "(ex |== P .& Q) = ((ex |== P) & (ex |== Q))";
   16.75 +Goal "(ex |== P .& Q) = ((ex |== P) & (ex |== Q))";
   16.76  by (simp_tac (simpset() addsimps [AND_def,temp_sat_def, satisfies_def])1);
   16.77  qed"AND_temp_sat";
   16.78  
   16.79 -goal thy "(ex |== P .| Q) = ((ex |== P) | (ex |== Q))";
   16.80 +Goal "(ex |== P .| Q) = ((ex |== P) | (ex |== Q))";
   16.81  by (simp_tac (simpset() addsimps [OR_def,temp_sat_def, satisfies_def])1);
   16.82  qed"OR_temp_sat";
   16.83  
   16.84 -goal thy "(ex |== .~ P) = (~ (ex |== P))";
   16.85 +Goal "(ex |== .~ P) = (~ (ex |== P))";
   16.86  by (simp_tac (simpset() addsimps [NOT_def,temp_sat_def, satisfies_def])1);
   16.87  qed"NOT_temp_sat";
   16.88  
   16.89  Addsimps [IMPLIES_temp_sat,AND_temp_sat,OR_temp_sat,NOT_temp_sat];
   16.90  
   16.91  
   16.92 -goalw thy [is_live_abstraction_def]
   16.93 +Goalw [is_live_abstraction_def]
   16.94     "!!A. [|is_live_abstraction h (C,L) (A,M); \
   16.95  \         validLIOA (A,M) Q;  temp_strengthening Q P h |] \
   16.96  \         ==> validLIOA (C,L) P";
   16.97 @@ -129,7 +129,7 @@
   16.98  qed"AbsRuleT2";
   16.99  
  16.100  
  16.101 -goalw thy [is_live_abstraction_def]
  16.102 +Goalw [is_live_abstraction_def]
  16.103     "!!A. [|is_live_abstraction h (C,L) (A,M); \
  16.104  \         validLIOA (A,M) (H1 .--> Q);  temp_strengthening Q P h; \
  16.105  \         temp_weakening H1 H2 h; validLIOA (C,L) H2 |] \
  16.106 @@ -150,7 +150,7 @@
  16.107  (* ---------------------------------------------------------------- *)
  16.108  
  16.109  
  16.110 -goalw thy [is_abstraction_def,is_ref_map_def] 
  16.111 +Goalw [is_abstraction_def,is_ref_map_def] 
  16.112  "!! h. is_abstraction h C A ==> is_ref_map h C A";
  16.113  by (safe_tac set_cs);
  16.114  by (res_inst_tac[("x","(a,h t)>>nil")] exI 1);
  16.115 @@ -158,7 +158,7 @@
  16.116  qed"abstraction_is_ref_map";
  16.117  
  16.118  
  16.119 -goal thy "!! h. [| inp(C)=inp(A); out(C)=out(A); \
  16.120 +Goal "!! h. [| inp(C)=inp(A); out(C)=out(A); \
  16.121  \                  is_abstraction h C A |] \
  16.122  \               ==> C =<| A";
  16.123  by (asm_full_simp_tac (simpset() addsimps [ioa_implements_def]) 1);
  16.124 @@ -178,7 +178,7 @@
  16.125  
  16.126  (* Reduces to Filter (Map fst x) = Filter (Map fst (Map (%(a,t). (a,x)) x),
  16.127     that is to special Map Lemma *)
  16.128 -goalw thy [cex_abs_def,mk_trace_def,filter_act_def]
  16.129 +Goalw [cex_abs_def,mk_trace_def,filter_act_def]
  16.130    "!! f. ext C = ext A \
  16.131  \        ==> mk_trace C`xs = mk_trace A`(snd (cex_abs f (s,xs)))";
  16.132  by (Asm_full_simp_tac 1);
  16.133 @@ -186,7 +186,7 @@
  16.134  qed"traces_coincide_abs";
  16.135  
  16.136  
  16.137 -goalw thy [cex_abs_def]
  16.138 +Goalw [cex_abs_def]
  16.139   "!!f.[| is_abstraction h C A |] ==>\
  16.140  \ !s. reachable C s & is_exec_frag C (s,xs) \
  16.141  \ --> is_exec_frag A (cex_abs h (s,xs))"; 
  16.142 @@ -210,7 +210,7 @@
  16.143     is_live_abstraction includes temp_strengthening which is necessarily based
  16.144     on cex_abs and not on corresp_ex. Thus, the proof is redoone in a more specific
  16.145     way for cex_abs *)
  16.146 -goal thy "!! h. [| inp(C)=inp(A); out(C)=out(A); \
  16.147 +Goal "!! h. [| inp(C)=inp(A); out(C)=out(A); \
  16.148  \                  is_live_abstraction h (C,M) (A,L) |] \
  16.149  \               ==> live_implements (C,M) (A,L)";
  16.150  
  16.151 @@ -242,7 +242,7 @@
  16.152  
  16.153  (* FIX: NAch Traces.ML bringen *)
  16.154  
  16.155 -goalw thy [ioa_implements_def] 
  16.156 +Goalw [ioa_implements_def] 
  16.157  "!! A. [| A =<| B; B =<| C|] ==> A =<| C"; 
  16.158  auto();
  16.159  qed"implements_trans";
  16.160 @@ -254,7 +254,7 @@
  16.161  (*                Abstraction Rules for Automata                    *)
  16.162  (* ---------------------------------------------------------------- *)
  16.163  
  16.164 -goal thy "!! C. [| inp(C)=inp(A); out(C)=out(A); \
  16.165 +Goal "!! C. [| inp(C)=inp(A); out(C)=out(A); \
  16.166  \                  inp(Q)=inp(P); out(Q)=out(P); \
  16.167  \                  is_abstraction h1 C A; \
  16.168  \                  A =<| Q ; \
  16.169 @@ -270,7 +270,7 @@
  16.170  qed"AbsRuleA1";
  16.171  
  16.172  
  16.173 -goal thy "!! C. [| inp(C)=inp(A); out(C)=out(A); \
  16.174 +Goal "!! C. [| inp(C)=inp(A); out(C)=out(A); \
  16.175  \                  inp(Q)=inp(P); out(Q)=out(P); \
  16.176  \                  is_live_abstraction h1 (C,LC) (A,LA); \
  16.177  \                  live_implements (A,LA) (Q,LQ) ; \
  16.178 @@ -295,28 +295,28 @@
  16.179  (*                Localizing Temproal Strengthenings - 1               *)
  16.180  (* ---------------------------------------------------------------- *)
  16.181  
  16.182 -goalw thy [temp_strengthening_def]
  16.183 +Goalw [temp_strengthening_def]
  16.184  "!! h. [| temp_strengthening P1 Q1 h; \
  16.185  \         temp_strengthening P2 Q2 h |] \
  16.186  \      ==> temp_strengthening (P1 .& P2) (Q1 .& Q2) h";
  16.187  auto();
  16.188  qed"strength_AND";
  16.189  
  16.190 -goalw thy [temp_strengthening_def]
  16.191 +Goalw [temp_strengthening_def]
  16.192  "!! h. [| temp_strengthening P1 Q1 h; \
  16.193  \         temp_strengthening P2 Q2 h |] \
  16.194  \      ==> temp_strengthening (P1 .| P2) (Q1 .| Q2) h";
  16.195  auto();
  16.196  qed"strength_OR";
  16.197  
  16.198 -goalw thy [temp_strengthening_def]
  16.199 +Goalw [temp_strengthening_def]
  16.200  "!! h. [| temp_weakening P Q h |] \
  16.201  \      ==> temp_strengthening (.~ P) (.~ Q) h";
  16.202  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2])1);
  16.203  auto();
  16.204  qed"strength_NOT";
  16.205  
  16.206 -goalw thy [temp_strengthening_def]
  16.207 +Goalw [temp_strengthening_def]
  16.208  "!! h. [| temp_weakening P1 Q1 h; \
  16.209  \         temp_strengthening P2 Q2 h |] \
  16.210  \      ==> temp_strengthening (P1 .--> P2) (Q1 .--> Q2) h";
  16.211 @@ -329,28 +329,28 @@
  16.212  (*                Localizing Temproal Weakenings - Part 1           *)
  16.213  (* ---------------------------------------------------------------- *)
  16.214  
  16.215 -goal thy
  16.216 +Goal
  16.217  "!! h. [| temp_weakening P1 Q1 h; \
  16.218  \         temp_weakening P2 Q2 h |] \
  16.219  \      ==> temp_weakening (P1 .& P2) (Q1 .& Q2) h";
  16.220  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2])1);
  16.221  qed"weak_AND";
  16.222  
  16.223 -goal thy 
  16.224 +Goal 
  16.225  "!! h. [| temp_weakening P1 Q1 h; \
  16.226  \         temp_weakening P2 Q2 h |] \
  16.227  \      ==> temp_weakening (P1 .| P2) (Q1 .| Q2) h";
  16.228  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2])1);
  16.229  qed"weak_OR";
  16.230  
  16.231 -goalw thy [temp_strengthening_def]
  16.232 +Goalw [temp_strengthening_def]
  16.233  "!! h. [| temp_strengthening P Q h |] \
  16.234  \      ==> temp_weakening (.~ P) (.~ Q) h";
  16.235  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2])1);
  16.236  auto();
  16.237  qed"weak_NOT";
  16.238  
  16.239 -goalw thy [temp_strengthening_def]
  16.240 +Goalw [temp_strengthening_def]
  16.241  "!! h. [| temp_strengthening P1 Q1 h; \
  16.242  \         temp_weakening P2 Q2 h |] \
  16.243  \      ==> temp_weakening (P1 .--> P2) (Q1 .--> Q2) h";
  16.244 @@ -366,12 +366,12 @@
  16.245  (* ------------------ Box ----------------------------*)
  16.246  
  16.247  (* FIX: should be same as nil_is_Conc2 when all nils are turned to right side !! *)
  16.248 -goal thy "(UU = x @@ y) = (((x::'a Seq)= UU) | (x=nil & y=UU))";
  16.249 +Goal "(UU = x @@ y) = (((x::'a Seq)= UU) | (x=nil & y=UU))";
  16.250  by (Seq_case_simp_tac "x" 1);
  16.251  by Auto_tac;
  16.252  qed"UU_is_Conc";
  16.253  
  16.254 -goal thy 
  16.255 +Goal 
  16.256  "Finite s1 --> \
  16.257  \ (! ex. (s~=nil & s~=UU & ex2seq ex = s1 @@ s) --> (? ex'. s = ex2seq ex'))";
  16.258  by (rtac impI 1);
  16.259 @@ -392,7 +392,7 @@
  16.260  
  16.261  (* important property of ex2seq: can be shiftet, as defined "pointwise" *)
  16.262  
  16.263 -goalw thy [tsuffix_def,suffix_def]
  16.264 +Goalw [tsuffix_def,suffix_def]
  16.265  "!!s. tsuffix s (ex2seq ex) ==> ? ex'. s = (ex2seq ex')";
  16.266  auto();
  16.267  bd ex2seqConc 1;
  16.268 @@ -400,11 +400,11 @@
  16.269  qed"ex2seq_tsuffix";
  16.270  
  16.271  
  16.272 -goal thy "(Map f`s = nil) = (s=nil)";
  16.273 +Goal "(Map f`s = nil) = (s=nil)";
  16.274  by (Seq_case_simp_tac "s" 1);
  16.275  qed"Mapnil";
  16.276  
  16.277 -goal thy "(Map f`s = UU) = (s=UU)";
  16.278 +Goal "(Map f`s = UU) = (s=UU)";
  16.279  by (Seq_case_simp_tac "s" 1);
  16.280  qed"MapUU";
  16.281  
  16.282 @@ -412,7 +412,7 @@
  16.283  (* important property of cex_absSeq: As it is a 1to1 correspondence, 
  16.284    properties carry over *)
  16.285  
  16.286 -goalw thy [tsuffix_def,suffix_def,cex_absSeq_def]
  16.287 +Goalw [tsuffix_def,suffix_def,cex_absSeq_def]
  16.288  "!! s. tsuffix s t ==> tsuffix (cex_absSeq h s) (cex_absSeq h t)";
  16.289  auto();
  16.290  by (asm_full_simp_tac (simpset() addsimps [Mapnil])1);
  16.291 @@ -422,7 +422,7 @@
  16.292  qed"cex_absSeq_tsuffix";
  16.293  
  16.294  
  16.295 -goalw thy [temp_strengthening_def,state_strengthening_def, temp_sat_def,
  16.296 +Goalw [temp_strengthening_def,state_strengthening_def, temp_sat_def,
  16.297  satisfies_def,Box_def]
  16.298  "!! h. [| temp_strengthening P Q h |]\
  16.299  \      ==> temp_strengthening ([] P) ([] Q) h";
  16.300 @@ -436,7 +436,7 @@
  16.301  
  16.302  (* ------------------ Init ----------------------------*)
  16.303  
  16.304 -goalw thy [temp_strengthening_def,state_strengthening_def,
  16.305 +Goalw [temp_strengthening_def,state_strengthening_def,
  16.306  temp_sat_def,satisfies_def,Init_def,unlift_def]
  16.307  "!! h. [| state_strengthening P Q h |]\
  16.308  \      ==> temp_strengthening (Init P) (Init Q) h";
  16.309 @@ -449,7 +449,7 @@
  16.310  
  16.311  (* ------------------ Next ----------------------------*)
  16.312  
  16.313 -goal thy 
  16.314 +Goal 
  16.315  "(TL`(ex2seq (cex_abs h ex))=UU) = (TL`(ex2seq ex)=UU)";
  16.316  by (pair_tac "ex" 1);
  16.317  by (Seq_case_simp_tac "y" 1);
  16.318 @@ -458,7 +458,7 @@
  16.319  by (pair_tac "a" 1);
  16.320  qed"TL_ex2seq_UU";
  16.321  
  16.322 -goal thy 
  16.323 +Goal 
  16.324  "(TL`(ex2seq (cex_abs h ex))=nil) = (TL`(ex2seq ex)=nil)";
  16.325  by (pair_tac "ex" 1);
  16.326  by (Seq_case_simp_tac "y" 1);
  16.327 @@ -468,21 +468,21 @@
  16.328  qed"TL_ex2seq_nil";
  16.329  
  16.330  (* FIX: put to Sequence Lemmas *)
  16.331 -goal thy "Map f`(TL`s) = TL`(Map f`s)";
  16.332 +Goal "Map f`(TL`s) = TL`(Map f`s)";
  16.333  by (Seq_induct_tac "s" [] 1);
  16.334  qed"MapTL";
  16.335  
  16.336  (* important property of cex_absSeq: As it is a 1to1 correspondence, 
  16.337    properties carry over *)
  16.338  
  16.339 -goalw thy [cex_absSeq_def]
  16.340 +Goalw [cex_absSeq_def]
  16.341  "cex_absSeq h (TL`s) = (TL`(cex_absSeq h s))";
  16.342  by (simp_tac (simpset() addsimps [MapTL]) 1);
  16.343  qed"cex_absSeq_TL";
  16.344  
  16.345  (* important property of ex2seq: can be shiftet, as defined "pointwise" *)
  16.346  
  16.347 -goal thy "!!ex. [| (snd ex)~=UU ; (snd ex)~=nil |] ==> (? ex'. TL`(ex2seq ex) = ex2seq ex')";
  16.348 +Goal "!!ex. [| (snd ex)~=UU ; (snd ex)~=nil |] ==> (? ex'. TL`(ex2seq ex) = ex2seq ex')";
  16.349  by (pair_tac "ex" 1);
  16.350  by (Seq_case_simp_tac "y" 1);
  16.351  by (pair_tac "a" 1);
  16.352 @@ -490,7 +490,7 @@
  16.353  qed"TLex2seq";
  16.354  
  16.355  
  16.356 -goal thy "(TL`(ex2seq ex)~=UU) = ((snd ex)~=UU)";
  16.357 +Goal "(TL`(ex2seq ex)~=UU) = ((snd ex)~=UU)";
  16.358  by (pair_tac "ex" 1);
  16.359  by (Seq_case_simp_tac "y" 1);
  16.360  by (pair_tac "a" 1);
  16.361 @@ -498,7 +498,7 @@
  16.362  by (pair_tac "a" 1);
  16.363  qed"ex2seqUUTL";
  16.364  
  16.365 -goal thy "(TL`(ex2seq ex)~=nil) = ((snd ex)~=nil)";
  16.366 +Goal "(TL`(ex2seq ex)~=nil) = ((snd ex)~=nil)";
  16.367  by (pair_tac "ex" 1);
  16.368  by (Seq_case_simp_tac "y" 1);
  16.369  by (pair_tac "a" 1);
  16.370 @@ -507,7 +507,7 @@
  16.371  qed"ex2seqnilTL";
  16.372  
  16.373  
  16.374 -goalw thy [temp_strengthening_def,state_strengthening_def,
  16.375 +Goalw [temp_strengthening_def,state_strengthening_def,
  16.376  temp_sat_def, satisfies_def,Next_def]
  16.377  "!! h. [| temp_strengthening P Q h |]\
  16.378  \      ==> temp_strengthening (Next P) (Next Q) h";
  16.379 @@ -532,7 +532,7 @@
  16.380  (* ---------------------------------------------------------------- *)
  16.381  
  16.382  
  16.383 -goal thy 
  16.384 +Goal 
  16.385  "!! h. [| state_weakening P Q h |]\
  16.386  \      ==> temp_weakening (Init P) (Init Q) h";
  16.387  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2,
  16.388 @@ -548,7 +548,7 @@
  16.389  
  16.390  (* analog to strengthening thm above, with analog lemmas used  *)
  16.391  
  16.392 -goalw thy [state_weakening_def]
  16.393 +Goalw [state_weakening_def]
  16.394  "!! h. [| temp_weakening P Q h |]\
  16.395  \      ==> temp_weakening ([] P) ([] Q) h";
  16.396  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2,
  16.397 @@ -556,7 +556,7 @@
  16.398  
  16.399  (* analog to strengthening thm above, with analog lemmas used  *)
  16.400  
  16.401 -goalw thy [state_weakening_def]
  16.402 +Goalw [state_weakening_def]
  16.403  "!! h. [| temp_weakening P Q h |]\
  16.404  \      ==> temp_weakening (Next P) (Next Q) h";
  16.405  by (asm_full_simp_tac (simpset() addsimps [temp_weakening_def2,
  16.406 @@ -569,7 +569,7 @@
  16.407  (* ---------------------------------------------------------------- *)
  16.408  
  16.409  
  16.410 -goalw thy [Diamond_def]
  16.411 +Goalw [Diamond_def]
  16.412  "!! h. [| temp_strengthening P Q h |]\
  16.413  \      ==> temp_strengthening (<> P) (<> Q) h";
  16.414  br strength_NOT 1;
  16.415 @@ -577,7 +577,7 @@
  16.416  be weak_NOT 1;
  16.417  qed"strength_Diamond";
  16.418  
  16.419 -goalw thy [Leadsto_def]
  16.420 +Goalw [Leadsto_def]
  16.421  "!! h. [| temp_weakening P1 P2 h;\
  16.422  \         temp_strengthening Q1 Q2 h |]\
  16.423  \      ==> temp_strengthening (P1 ~> Q1) (P2 ~> Q2) h";
  16.424 @@ -592,7 +592,7 @@
  16.425  (* ---------------------------------------------------------------- *)
  16.426  
  16.427  
  16.428 -goalw thy [Diamond_def]
  16.429 +Goalw [Diamond_def]
  16.430  "!! h. [| temp_weakening P Q h |]\
  16.431  \      ==> temp_weakening (<> P) (<> Q) h";
  16.432  br weak_NOT 1;
  16.433 @@ -600,7 +600,7 @@
  16.434  be strength_NOT 1;
  16.435  qed"weak_Diamond";
  16.436  
  16.437 -goalw thy [Leadsto_def]
  16.438 +Goalw [Leadsto_def]
  16.439  "!! h. [| temp_strengthening P1 P2 h;\
  16.440  \         temp_weakening Q1 Q2 h |]\
  16.441  \      ==> temp_weakening (P1 ~> Q1) (P2 ~> Q2) h";
  16.442 @@ -609,7 +609,7 @@
  16.443  be weak_Diamond 1;
  16.444  qed"weak_Leadsto";
  16.445  
  16.446 -goalw thy [WF_def]
  16.447 +Goalw [WF_def]
  16.448    " !!A. [| !! s. Enabled A acts (h s) ==> Enabled C acts s|] \ 
  16.449  \   ==> temp_weakening (WF A acts) (WF C acts) h";
  16.450  br weak_IMPLIES 1;
  16.451 @@ -624,7 +624,7 @@
  16.452                               xt2_def,plift_def,option_lift_def,NOT_def]));
  16.453  qed"weak_WF";
  16.454  
  16.455 -goalw thy [SF_def]
  16.456 +Goalw [SF_def]
  16.457    " !!A. [| !! s. Enabled A acts (h s) ==> Enabled C acts s|] \ 
  16.458  \   ==> temp_weakening (SF A acts) (SF C acts) h";
  16.459  br weak_IMPLIES 1;
    17.1 --- a/src/HOLCF/IOA/meta_theory/Asig.ML	Mon Jun 22 17:12:27 1998 +0200
    17.2 +++ b/src/HOLCF/IOA/meta_theory/Asig.ML	Mon Jun 22 17:13:09 1998 +0200
    17.3 @@ -10,48 +10,48 @@
    17.4  
    17.5  val asig_projections = [asig_inputs_def, asig_outputs_def, asig_internals_def];
    17.6  
    17.7 -goal thy
    17.8 +Goal
    17.9   "(outputs    (a,b,c) = b)   & \
   17.10  \ (inputs     (a,b,c) = a) & \
   17.11  \ (internals  (a,b,c) = c)";
   17.12    by (simp_tac (simpset() addsimps asig_projections) 1);
   17.13  qed "asig_triple_proj";
   17.14  
   17.15 -goal thy "!!a.[| a~:internals(S) ;a~:externals(S)|] ==> a~:actions(S)";
   17.16 +Goal "!!a.[| a~:internals(S) ;a~:externals(S)|] ==> a~:actions(S)";
   17.17  by (asm_full_simp_tac (simpset() addsimps [externals_def,actions_def]) 1);
   17.18  qed"int_and_ext_is_act";
   17.19  
   17.20 -goal thy "!!a.[|a:externals(S)|] ==> a:actions(S)";
   17.21 +Goal "!!a.[|a:externals(S)|] ==> a:actions(S)";
   17.22  by (asm_full_simp_tac (simpset() addsimps [externals_def,actions_def]) 1);
   17.23  qed"ext_is_act";
   17.24  
   17.25 -goal thy "!!a.[|a:internals S|] ==> a:actions S";
   17.26 +Goal "!!a.[|a:internals S|] ==> a:actions S";
   17.27  by (asm_full_simp_tac (simpset() addsimps [asig_internals_def,actions_def]) 1);
   17.28  qed"int_is_act";
   17.29  
   17.30 -goal thy "!!a.[|a:inputs S|] ==> a:actions S";
   17.31 +Goal "!!a.[|a:inputs S|] ==> a:actions S";
   17.32  by (asm_full_simp_tac (simpset() addsimps [asig_inputs_def,actions_def]) 1);
   17.33  qed"inp_is_act";
   17.34  
   17.35 -goal thy "!!a.[|a:outputs S|] ==> a:actions S";
   17.36 +Goal "!!a.[|a:outputs S|] ==> a:actions S";
   17.37  by (asm_full_simp_tac (simpset() addsimps [asig_outputs_def,actions_def]) 1);
   17.38  qed"out_is_act";
   17.39  
   17.40 -goal thy "(x: actions S & x : externals S) = (x: externals S)";
   17.41 +Goal "(x: actions S & x : externals S) = (x: externals S)";
   17.42  by (fast_tac (claset() addSIs [ext_is_act]) 1 );
   17.43  qed"ext_and_act";
   17.44   
   17.45 -goal thy "!!S. [|is_asig S;x: actions S|] ==> (x~:externals S) = (x: internals S)";
   17.46 +Goal "!!S. [|is_asig S;x: actions S|] ==> (x~:externals S) = (x: internals S)";
   17.47  by (asm_full_simp_tac (simpset() addsimps [actions_def,is_asig_def,externals_def]) 1);
   17.48  by (best_tac (set_cs addEs [equalityCE]) 1);
   17.49  qed"not_ext_is_int";
   17.50  
   17.51 -goal thy "!!S. is_asig S ==> (x~:externals S) = (x: internals S | x~:actions S)";
   17.52 +Goal "!!S. is_asig S ==> (x~:externals S) = (x: internals S | x~:actions S)";
   17.53  by (asm_full_simp_tac (simpset() addsimps [actions_def,is_asig_def,externals_def]) 1);
   17.54  by (best_tac (set_cs addEs [equalityCE]) 1);
   17.55  qed"not_ext_is_int_or_not_act";
   17.56  
   17.57 -goalw thy  [externals_def,actions_def,is_asig_def]
   17.58 +Goalw  [externals_def,actions_def,is_asig_def]
   17.59   "!! x. [| is_asig (S); x:internals S |] ==> x~:externals S";
   17.60  by (Asm_full_simp_tac 1);
   17.61  by (best_tac (set_cs addEs [equalityCE]) 1);
    18.1 --- a/src/HOLCF/IOA/meta_theory/Automata.ML	Mon Jun 22 17:12:27 1998 +0200
    18.2 +++ b/src/HOLCF/IOA/meta_theory/Automata.ML	Mon Jun 22 17:13:09 1998 +0200
    18.3 @@ -19,7 +19,7 @@
    18.4  section "asig_of, starts_of, trans_of";
    18.5  
    18.6  
    18.7 -goal thy
    18.8 +Goal
    18.9   "((asig_of (x,y,z,w,s)) = x)   & \
   18.10  \ ((starts_of (x,y,z,w,s)) = y) & \
   18.11  \ ((trans_of (x,y,z,w,s)) = z)  & \
   18.12 @@ -28,19 +28,19 @@
   18.13    by (simp_tac (simpset() addsimps ioa_projections) 1);
   18.14  qed "ioa_triple_proj";
   18.15  
   18.16 -goalw thy [is_trans_of_def,actions_def, is_asig_def]
   18.17 +Goalw [is_trans_of_def,actions_def, is_asig_def]
   18.18    "!!A. [| is_trans_of A; (s1,a,s2):trans_of(A) |] ==> a:act A";
   18.19    by (REPEAT(etac conjE 1));
   18.20    by (EVERY1[etac allE, etac impE, atac]);
   18.21    by (Asm_full_simp_tac 1);
   18.22  qed "trans_in_actions";
   18.23  
   18.24 -goal thy
   18.25 +Goal
   18.26  "starts_of(A || B) = {p. fst(p):starts_of(A) & snd(p):starts_of(B)}";
   18.27    by (simp_tac (simpset() addsimps (par_def::ioa_projections)) 1);
   18.28  qed "starts_of_par";
   18.29  
   18.30 -goal thy
   18.31 +Goal
   18.32  "trans_of(A || B) = {tr. let s = fst(tr); a = fst(snd(tr)); t = snd(snd(tr)) \       
   18.33  \            in (a:act A | a:act B) & \
   18.34  \               (if a:act A then       \                
   18.35 @@ -60,7 +60,7 @@
   18.36  section "actions and par";
   18.37  
   18.38  
   18.39 -goal thy 
   18.40 +Goal 
   18.41  "actions(asig_comp a b) = actions(a) Un actions(b)";
   18.42    by (simp_tac (simpset() addsimps
   18.43                 ([actions_def,asig_comp_def]@asig_projections)) 1);
   18.44 @@ -68,12 +68,12 @@
   18.45  qed "actions_asig_comp";
   18.46  
   18.47  
   18.48 -goal thy "asig_of(A || B) = asig_comp (asig_of A) (asig_of B)";
   18.49 +Goal "asig_of(A || B) = asig_comp (asig_of A) (asig_of B)";
   18.50    by (simp_tac (simpset() addsimps (par_def::ioa_projections)) 1);
   18.51  qed "asig_of_par";
   18.52  
   18.53  
   18.54 -goal thy "ext (A1||A2) =    \
   18.55 +Goal "ext (A1||A2) =    \
   18.56  \  (ext A1) Un (ext A2)";
   18.57  by (asm_full_simp_tac (simpset() addsimps [externals_def,asig_of_par,asig_comp_def,
   18.58        asig_inputs_def,asig_outputs_def,Un_def,set_diff_def]) 1);
   18.59 @@ -81,7 +81,7 @@
   18.60  by (fast_tac set_cs 1);
   18.61  qed"externals_of_par"; 
   18.62  
   18.63 -goal thy "act (A1||A2) =    \
   18.64 +Goal "act (A1||A2) =    \
   18.65  \  (act A1) Un (act A2)";
   18.66  by (asm_full_simp_tac (simpset() addsimps [actions_def,asig_of_par,asig_comp_def,
   18.67        asig_inputs_def,asig_outputs_def,asig_internals_def,Un_def,set_diff_def]) 1);
   18.68 @@ -89,19 +89,19 @@
   18.69  by (fast_tac set_cs 1);
   18.70  qed"actions_of_par"; 
   18.71  
   18.72 -goal thy "inp (A1||A2) =\
   18.73 +Goal "inp (A1||A2) =\
   18.74  \         ((inp A1) Un (inp A2)) - ((out A1) Un (out A2))";
   18.75  by (asm_full_simp_tac (simpset() addsimps [actions_def,asig_of_par,asig_comp_def,
   18.76        asig_inputs_def,asig_outputs_def,Un_def,set_diff_def]) 1);
   18.77  qed"inputs_of_par";
   18.78    
   18.79 -goal thy "out (A1||A2) =\
   18.80 +Goal "out (A1||A2) =\
   18.81  \         (out A1) Un (out A2)";
   18.82  by (asm_full_simp_tac (simpset() addsimps [actions_def,asig_of_par,asig_comp_def,
   18.83        asig_outputs_def,Un_def,set_diff_def]) 1);
   18.84  qed"outputs_of_par";
   18.85  
   18.86 -goal thy "int (A1||A2) =\
   18.87 +Goal "int (A1||A2) =\
   18.88  \         (int A1) Un (int A2)";
   18.89  by (asm_full_simp_tac (simpset() addsimps [actions_def,asig_of_par,asig_comp_def,
   18.90        asig_inputs_def,asig_outputs_def,asig_internals_def,Un_def,set_diff_def]) 1);
   18.91 @@ -111,19 +111,19 @@
   18.92  
   18.93  section "actions and compatibility"; 
   18.94  
   18.95 -goal thy"compatible A B = compatible B A";
   18.96 +Goal"compatible A B = compatible B A";
   18.97  by (asm_full_simp_tac (simpset() addsimps [compatible_def,Int_commute]) 1);
   18.98  by Auto_tac;
   18.99  qed"compat_commute";
  18.100  
  18.101 -goalw thy [externals_def,actions_def,compatible_def]
  18.102 +Goalw [externals_def,actions_def,compatible_def]
  18.103   "!! a. [| compatible A1 A2; a:ext A1|] ==> a~:int A2";
  18.104  by (Asm_full_simp_tac 1);
  18.105  by (best_tac (set_cs addEs [equalityCE]) 1);
  18.106  qed"ext1_is_not_int2";
  18.107  
  18.108  (* just commuting the previous one: better commute compatible *)
  18.109 -goalw thy [externals_def,actions_def,compatible_def]
  18.110 +Goalw [externals_def,actions_def,compatible_def]
  18.111   "!! a. [| compatible A2 A1 ; a:ext A1|] ==> a~:int A2";
  18.112  by (Asm_full_simp_tac 1);
  18.113  by (best_tac (set_cs addEs [equalityCE]) 1);
  18.114 @@ -132,20 +132,20 @@
  18.115  bind_thm("ext1_ext2_is_not_act2",ext1_is_not_int2 RS int_and_ext_is_act);
  18.116  bind_thm("ext1_ext2_is_not_act1",ext2_is_not_int1 RS int_and_ext_is_act);
  18.117  
  18.118 -goalw thy  [externals_def,actions_def,compatible_def]
  18.119 +Goalw  [externals_def,actions_def,compatible_def]
  18.120   "!! x. [| compatible A B; x:int A |] ==> x~:ext B";
  18.121  by (Asm_full_simp_tac 1);
  18.122  by (best_tac (set_cs addEs [equalityCE]) 1);
  18.123  qed"intA_is_not_extB";
  18.124  
  18.125 -goalw thy [externals_def,actions_def,compatible_def,is_asig_def,asig_of_def]
  18.126 +Goalw [externals_def,actions_def,compatible_def,is_asig_def,asig_of_def]
  18.127  "!! a. [| compatible A B; a:int A |] ==> a ~: act B";
  18.128  by (Asm_full_simp_tac 1);
  18.129  by (best_tac (set_cs addEs [equalityCE]) 1);
  18.130  qed"intA_is_not_actB";
  18.131  
  18.132  (* the only one that needs disjointness of outputs and of internals and _all_ acts *)
  18.133 -goalw thy [asig_outputs_def,asig_internals_def,actions_def,asig_inputs_def,
  18.134 +Goalw [asig_outputs_def,asig_internals_def,actions_def,asig_inputs_def,
  18.135      compatible_def,is_asig_def,asig_of_def]
  18.136  "!! a. [| compatible A B; a:out A ;a:act B|] ==> a : inp B";
  18.137  by (Asm_full_simp_tac 1);
  18.138 @@ -153,7 +153,7 @@
  18.139  qed"outAactB_is_inpB";
  18.140  
  18.141  (* needed for propagation of input_enabledness from A,B to A||B *)
  18.142 -goalw thy [asig_outputs_def,asig_internals_def,actions_def,asig_inputs_def,
  18.143 +Goalw [asig_outputs_def,asig_internals_def,actions_def,asig_inputs_def,
  18.144      compatible_def,is_asig_def,asig_of_def]
  18.145  "!! a. [| compatible A B; a:inp A ;a:act B|] ==> a : inp B | a: out B";
  18.146  by (Asm_full_simp_tac 1);
  18.147 @@ -168,7 +168,7 @@
  18.148  (* ugly case distinctions. Heart of proof: 
  18.149       1. inpAAactB_is_inpBoroutB ie. internals are really hidden.
  18.150       2. inputs_of_par: outputs are no longer inputs of par. This is important here *)
  18.151 -goalw thy [input_enabled_def] 
  18.152 +Goalw [input_enabled_def] 
  18.153  "!!A. [| compatible A B; input_enabled A; input_enabled B|] \
  18.154  \     ==> input_enabled (A||B)";
  18.155  by (asm_full_simp_tac (simpset()addsimps[Let_def,inputs_of_par,trans_of_par])1);
  18.156 @@ -267,12 +267,12 @@
  18.157  section "restrict";
  18.158  
  18.159  
  18.160 -goal thy "starts_of(restrict ioa acts) = starts_of(ioa) &     \
  18.161 +Goal "starts_of(restrict ioa acts) = starts_of(ioa) &     \
  18.162  \         trans_of(restrict ioa acts) = trans_of(ioa)";
  18.163  by (simp_tac (simpset() addsimps ([restrict_def]@ioa_projections)) 1);
  18.164  qed "cancel_restrict_a";
  18.165  
  18.166 -goal thy "reachable (restrict ioa acts) s = reachable ioa s";
  18.167 +Goal "reachable (restrict ioa acts) s = reachable ioa s";
  18.168  by (rtac iffI 1);
  18.169  by (etac reachable.induct 1);
  18.170  by (asm_full_simp_tac (simpset() addsimps [cancel_restrict_a,reachable_0]) 1);
  18.171 @@ -286,14 +286,14 @@
  18.172  by (asm_full_simp_tac (simpset() addsimps [cancel_restrict_a]) 1);
  18.173  qed "cancel_restrict_b";
  18.174  
  18.175 -goal thy "act (restrict A acts) = act A";
  18.176 +Goal "act (restrict A acts) = act A";
  18.177  by (simp_tac (simpset() addsimps [actions_def,asig_internals_def,
  18.178          asig_outputs_def,asig_inputs_def,externals_def,asig_of_def,restrict_def,
  18.179          restrict_asig_def]) 1);
  18.180  by Auto_tac;
  18.181  qed"acts_restrict";
  18.182  
  18.183 -goal thy "starts_of(restrict ioa acts) = starts_of(ioa) &     \
  18.184 +Goal "starts_of(restrict ioa acts) = starts_of(ioa) &     \
  18.185  \         trans_of(restrict ioa acts) = trans_of(ioa) & \
  18.186  \         reachable (restrict ioa acts) s = reachable ioa s & \
  18.187  \         act (restrict A acts) = act A";
  18.188 @@ -306,12 +306,12 @@
  18.189  
  18.190  
  18.191  
  18.192 -goal thy "!!f. s -a--(rename C f)-> t ==> (? x. Some(x) = f(a) & s -x--C-> t)";
  18.193 +Goal "!!f. s -a--(rename C f)-> t ==> (? x. Some(x) = f(a) & s -x--C-> t)";
  18.194  by (asm_full_simp_tac (simpset() addsimps [Let_def,rename_def,trans_of_def]) 1);
  18.195  qed"trans_rename";
  18.196  
  18.197  
  18.198 -goal thy "!!s.[| reachable (rename C g) s |] ==> reachable C s";
  18.199 +Goal "!!s.[| reachable (rename C g) s |] ==> reachable C s";
  18.200  by (etac reachable.induct 1);
  18.201  by (rtac reachable_0 1);
  18.202  by (asm_full_simp_tac (simpset() addsimps [rename_def]@ioa_projections) 1);
  18.203 @@ -329,44 +329,44 @@
  18.204  section "trans_of(A||B)";
  18.205  
  18.206  
  18.207 -goal thy "!!A.[|(s,a,t):trans_of (A||B); a:act A|] \
  18.208 +Goal "!!A.[|(s,a,t):trans_of (A||B); a:act A|] \
  18.209  \             ==> (fst s,a,fst t):trans_of A";
  18.210  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.211  qed"trans_A_proj";
  18.212  
  18.213 -goal thy "!!A.[|(s,a,t):trans_of (A||B); a:act B|] \
  18.214 +Goal "!!A.[|(s,a,t):trans_of (A||B); a:act B|] \
  18.215  \             ==> (snd s,a,snd t):trans_of B";
  18.216  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.217  qed"trans_B_proj";
  18.218  
  18.219 -goal thy "!!A.[|(s,a,t):trans_of (A||B); a~:act A|]\
  18.220 +Goal "!!A.[|(s,a,t):trans_of (A||B); a~:act A|]\
  18.221  \             ==> fst s = fst t";
  18.222  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.223  qed"trans_A_proj2";
  18.224  
  18.225 -goal thy "!!A.[|(s,a,t):trans_of (A||B); a~:act B|]\
  18.226 +Goal "!!A.[|(s,a,t):trans_of (A||B); a~:act B|]\
  18.227  \             ==> snd s = snd t";
  18.228  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.229  qed"trans_B_proj2";
  18.230  
  18.231 -goal thy "!!A.(s,a,t):trans_of (A||B) \
  18.232 +Goal "!!A.(s,a,t):trans_of (A||B) \
  18.233  \              ==> a :act A | a :act B";
  18.234  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.235  qed"trans_AB_proj";
  18.236  
  18.237 -goal thy "!!A. [|a:act A;a:act B;\
  18.238 +Goal "!!A. [|a:act A;a:act B;\
  18.239  \      (fst s,a,fst t):trans_of A;(snd s,a,snd t):trans_of B|]\
  18.240  \  ==> (s,a,t):trans_of (A||B)";
  18.241  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.242  qed"trans_AB";
  18.243  
  18.244 -goal thy "!!A. [|a:act A;a~:act B;\
  18.245 +Goal "!!A. [|a:act A;a~:act B;\
  18.246  \      (fst s,a,fst t):trans_of A;snd s=snd t|]\
  18.247  \  ==> (s,a,t):trans_of (A||B)";
  18.248  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.249  qed"trans_A_notB";
  18.250  
  18.251 -goal thy "!!A. [|a~:act A;a:act B;\
  18.252 +Goal "!!A. [|a~:act A;a:act B;\
  18.253  \      (snd s,a,snd t):trans_of B;fst s=fst t|]\
  18.254  \  ==> (s,a,t):trans_of (A||B)";
  18.255  by (asm_full_simp_tac (simpset() addsimps [Let_def,par_def,trans_of_def]) 1);
  18.256 @@ -377,7 +377,7 @@
  18.257                        trans_B_proj2,trans_AB_proj];
  18.258  
  18.259  
  18.260 -goal thy 
  18.261 +Goal 
  18.262  "(s,a,t) : trans_of(A || B || C || D) =                                      \
  18.263  \ ((a:actions(asig_of(A)) | a:actions(asig_of(B)) | a:actions(asig_of(C)) |  \
  18.264  \   a:actions(asig_of(D))) &                                                 \
  18.265 @@ -402,16 +402,16 @@
  18.266  section "proof obligation generator for IOA requirements";  
  18.267  
  18.268  (* without assumptions on A and B because is_trans_of is also incorporated in ||def *)
  18.269 -goalw thy [is_trans_of_def] "is_trans_of (A||B)";
  18.270 +Goalw [is_trans_of_def] "is_trans_of (A||B)";
  18.271  by (simp_tac (simpset() addsimps [Let_def,actions_of_par,trans_of_par]) 1);
  18.272  qed"is_trans_of_par";
  18.273  
  18.274 -goalw thy [is_trans_of_def] 
  18.275 +Goalw [is_trans_of_def] 
  18.276  "!!A. is_trans_of A ==> is_trans_of (restrict A acts)";
  18.277  by (asm_simp_tac (simpset() addsimps [cancel_restrict,acts_restrict])1);
  18.278  qed"is_trans_of_restrict";
  18.279  
  18.280 -goalw thy [is_trans_of_def,restrict_def,restrict_asig_def] 
  18.281 +Goalw [is_trans_of_def,restrict_def,restrict_asig_def] 
  18.282  "!!A. is_trans_of A ==> is_trans_of (rename A f)";
  18.283  by (asm_full_simp_tac
  18.284      (simpset() addsimps [Let_def,actions_def,trans_of_def, asig_internals_def,
  18.285 @@ -420,7 +420,7 @@
  18.286  by (Blast_tac 1);
  18.287  qed"is_trans_of_rename";
  18.288  
  18.289 -goal thy "!! A. [| is_asig_of A; is_asig_of B; compatible A B|]  \
  18.290 +Goal "!! A. [| is_asig_of A; is_asig_of B; compatible A B|]  \
  18.291  \         ==> is_asig_of (A||B)";
  18.292  by (asm_full_simp_tac (simpset() addsimps [is_asig_of_def,asig_of_par,
  18.293         asig_comp_def,compatible_def,asig_internals_def,asig_outputs_def,
  18.294 @@ -430,7 +430,7 @@
  18.295  by (REPEAT (best_tac (set_cs addEs [equalityCE]) 1));
  18.296  qed"is_asig_of_par";
  18.297  
  18.298 -goalw thy [is_asig_of_def,is_asig_def,asig_of_def,restrict_def,restrict_asig_def,
  18.299 +Goalw [is_asig_of_def,is_asig_def,asig_of_def,restrict_def,restrict_asig_def,
  18.300             asig_internals_def,asig_outputs_def,asig_inputs_def,externals_def,o_def] 
  18.301  "!! A. is_asig_of A ==> is_asig_of (restrict A f)";
  18.302  by (Asm_full_simp_tac 1);
  18.303 @@ -438,7 +438,7 @@
  18.304  by (REPEAT (best_tac (set_cs addEs [equalityCE]) 1));
  18.305  qed"is_asig_of_restrict";
  18.306  
  18.307 -goal thy "!! A. is_asig_of A ==> is_asig_of (rename A f)";
  18.308 +Goal "!! A. is_asig_of A ==> is_asig_of (rename A f)";
  18.309  by (asm_full_simp_tac (simpset() addsimps [is_asig_of_def,
  18.310       rename_def,rename_set_def,asig_internals_def,asig_outputs_def,
  18.311       asig_inputs_def,actions_def,is_asig_def,asig_of_def]) 1);
  18.312 @@ -452,7 +452,7 @@
  18.313            is_trans_of_par,is_trans_of_restrict,is_trans_of_rename];
  18.314  
  18.315  
  18.316 -goalw thy [compatible_def]
  18.317 +Goalw [compatible_def]
  18.318  "!! A. [|compatible A B; compatible A C |]==> compatible A (B||C)";
  18.319  by (asm_full_simp_tac (simpset() addsimps [internals_of_par, 
  18.320     outputs_of_par,actions_of_par]) 1);
  18.321 @@ -461,7 +461,7 @@
  18.322  qed"compatible_par";
  18.323  
  18.324  (* FIX: better derive by previous one and compat_commute *)
  18.325 -goalw thy [compatible_def]
  18.326 +Goalw [compatible_def]
  18.327  "!! A. [|compatible A C; compatible B C |]==> compatible (A||B) C";
  18.328  by (asm_full_simp_tac (simpset() addsimps [internals_of_par, 
  18.329     outputs_of_par,actions_of_par]) 1);
  18.330 @@ -469,7 +469,7 @@
  18.331  by (REPEAT (best_tac (set_cs addEs [equalityCE]) 1));
  18.332  qed"compatible_par2";
  18.333  
  18.334 -goalw thy [compatible_def]
  18.335 +Goalw [compatible_def]
  18.336  "!! A. [| compatible A B; (ext B - S) Int ext A = {}|] \
  18.337  \     ==> compatible A (restrict B S)";
  18.338  by (asm_full_simp_tac (simpset() addsimps [ioa_triple_proj,asig_triple_proj,
    19.1 --- a/src/HOLCF/IOA/meta_theory/CompoExecs.ML	Mon Jun 22 17:12:27 1998 +0200
    19.2 +++ b/src/HOLCF/IOA/meta_theory/CompoExecs.ML	Mon Jun 22 17:13:09 1998 +0200
    19.3 @@ -20,15 +20,15 @@
    19.4  (* ---------------------------------------------------------------- *)
    19.5  
    19.6  
    19.7 -goal thy  "ProjA2`UU = UU";
    19.8 +Goal  "ProjA2`UU = UU";
    19.9  by (simp_tac (simpset() addsimps [ProjA2_def]) 1);
   19.10  qed"ProjA2_UU";
   19.11  
   19.12 -goal thy  "ProjA2`nil = nil";
   19.13 +Goal  "ProjA2`nil = nil";
   19.14  by (simp_tac (simpset() addsimps [ProjA2_def]) 1);
   19.15  qed"ProjA2_nil";
   19.16  
   19.17 -goal thy "ProjA2`((a,t)>>xs) = (a,fst t) >> ProjA2`xs";
   19.18 +Goal "ProjA2`((a,t)>>xs) = (a,fst t) >> ProjA2`xs";
   19.19  by (simp_tac (simpset() addsimps [ProjA2_def]) 1);
   19.20  qed"ProjA2_cons";
   19.21  
   19.22 @@ -38,15 +38,15 @@
   19.23  (* ---------------------------------------------------------------- *)
   19.24  
   19.25  
   19.26 -goal thy  "ProjB2`UU = UU";
   19.27 +Goal  "ProjB2`UU = UU";
   19.28  by (simp_tac (simpset() addsimps [ProjB2_def]) 1);
   19.29  qed"ProjB2_UU";
   19.30  
   19.31 -goal thy  "ProjB2`nil = nil";
   19.32 +Goal  "ProjB2`nil = nil";
   19.33  by (simp_tac (simpset() addsimps [ProjB2_def]) 1);
   19.34  qed"ProjB2_nil";
   19.35  
   19.36 -goal thy "ProjB2`((a,t)>>xs) = (a,snd t) >> ProjB2`xs";
   19.37 +Goal "ProjB2`((a,t)>>xs) = (a,snd t) >> ProjB2`xs";
   19.38  by (simp_tac (simpset() addsimps [ProjB2_def]) 1);
   19.39  qed"ProjB2_cons";
   19.40  
   19.41 @@ -57,15 +57,15 @@
   19.42  (* ---------------------------------------------------------------- *)
   19.43  
   19.44  
   19.45 -goal thy "Filter_ex2 sig`UU=UU";
   19.46 +Goal "Filter_ex2 sig`UU=UU";
   19.47  by (simp_tac (simpset() addsimps [Filter_ex2_def]) 1);
   19.48  qed"Filter_ex2_UU";
   19.49  
   19.50 -goal thy "Filter_ex2 sig`nil=nil";
   19.51 +Goal "Filter_ex2 sig`nil=nil";
   19.52  by (simp_tac (simpset() addsimps [Filter_ex2_def]) 1);
   19.53  qed"Filter_ex2_nil";
   19.54  
   19.55 -goal thy "Filter_ex2 sig`(at >> xs) =    \
   19.56 +Goal "Filter_ex2 sig`(at >> xs) =    \
   19.57  \            (if (fst at:actions sig)    \       
   19.58  \                 then at >> (Filter_ex2 sig`xs) \   
   19.59  \                 else        Filter_ex2 sig`xs)";
   19.60 @@ -79,7 +79,7 @@
   19.61  (* ---------------------------------------------------------------- *)
   19.62  
   19.63  
   19.64 -goal thy "stutter2 sig = (LAM ex. (%s. case ex of \
   19.65 +Goal "stutter2 sig = (LAM ex. (%s. case ex of \
   19.66  \      nil => TT \
   19.67  \    | x##xs => (flift1 \ 
   19.68  \            (%p.(If Def ((fst p)~:actions sig) \
   19.69 @@ -95,17 +95,17 @@
   19.70  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   19.71  qed"stutter2_unfold";
   19.72  
   19.73 -goal thy "(stutter2 sig`UU) s=UU";
   19.74 +Goal "(stutter2 sig`UU) s=UU";
   19.75  by (stac stutter2_unfold 1);
   19.76  by (Simp_tac 1);
   19.77  qed"stutter2_UU";
   19.78  
   19.79 -goal thy "(stutter2 sig`nil) s = TT";
   19.80 +Goal "(stutter2 sig`nil) s = TT";
   19.81  by (stac stutter2_unfold 1);
   19.82  by (Simp_tac 1);
   19.83  qed"stutter2_nil";
   19.84  
   19.85 -goal thy "(stutter2 sig`(at>>xs)) s = \
   19.86 +Goal "(stutter2 sig`(at>>xs)) s = \
   19.87  \              ((if (fst at)~:actions sig then Def (s=snd at) else TT) \
   19.88  \                andalso (stutter2 sig`xs) (snd at))"; 
   19.89  by (rtac trans 1);
   19.90 @@ -122,15 +122,15 @@
   19.91  (*                             stutter                              *)
   19.92  (* ---------------------------------------------------------------- *)
   19.93  
   19.94 -goal thy "stutter sig (s, UU)";
   19.95 +Goal "stutter sig (s, UU)";
   19.96  by (simp_tac (simpset() addsimps [stutter_def]) 1);
   19.97  qed"stutter_UU";
   19.98  
   19.99 -goal thy "stutter sig (s, nil)";
  19.100 +Goal "stutter sig (s, nil)";
  19.101  by (simp_tac (simpset() addsimps [stutter_def]) 1);
  19.102  qed"stutter_nil";
  19.103  
  19.104 -goal thy "stutter sig (s, (a,t)>>ex) = \
  19.105 +Goal "stutter sig (s, (a,t)>>ex) = \
  19.106  \     ((a~:actions sig --> (s=t)) & stutter sig (t,ex))";
  19.107  by (simp_tac (simpset() addsimps [stutter_def]) 1);
  19.108  qed"stutter_cons";
  19.109 @@ -158,7 +158,7 @@
  19.110  (*  Lemma_1_1a : is_ex_fr propagates from A||B to Projections A and B    *)
  19.111  (* --------------------------------------------------------------------- *)
  19.112  
  19.113 -goal thy "!s. is_exec_frag (A||B) (s,xs) \
  19.114 +Goal "!s. is_exec_frag (A||B) (s,xs) \
  19.115  \      -->  is_exec_frag A (fst s, Filter_ex2 (asig_of A)`(ProjA2`xs)) &\
  19.116  \           is_exec_frag B (snd s, Filter_ex2 (asig_of B)`(ProjB2`xs))";
  19.117  
  19.118 @@ -174,7 +174,7 @@
  19.119  (*  Lemma_1_1b : is_ex_fr (A||B) implies stuttering on Projections       *)
  19.120  (* --------------------------------------------------------------------- *)
  19.121  
  19.122 -goal thy "!s. is_exec_frag (A||B) (s,xs) \
  19.123 +Goal "!s. is_exec_frag (A||B) (s,xs) \
  19.124  \      --> stutter (asig_of A) (fst s,ProjA2`xs)  &\
  19.125  \          stutter (asig_of B) (snd s,ProjB2`xs)"; 
  19.126  
  19.127 @@ -189,7 +189,7 @@
  19.128  (*  Lemma_1_1c : Executions of A||B have only  A- or B-actions           *)
  19.129  (* --------------------------------------------------------------------- *)
  19.130  
  19.131 -goal thy "!s. (is_exec_frag (A||B) (s,xs) \
  19.132 +Goal "!s. (is_exec_frag (A||B) (s,xs) \
  19.133  \  --> Forall (%x. fst x:act (A||B)) xs)";
  19.134  
  19.135  by (pair_induct_tac "xs" [Forall_def,sforall_def,is_exec_frag_def] 1);
  19.136 @@ -204,7 +204,7 @@
  19.137  (*  Lemma_1_2 : ex A, exB, stuttering and forall a:A|B implies ex (A||B)   *)
  19.138  (* ----------------------------------------------------------------------- *)
  19.139  
  19.140 -goal thy 
  19.141 +Goal 
  19.142  "!s. is_exec_frag A (fst s,Filter_ex2 (asig_of A)`(ProjA2`xs)) &\
  19.143  \    is_exec_frag B (snd s,Filter_ex2 (asig_of B)`(ProjB2`xs)) &\
  19.144  \    stutter (asig_of A) (fst s,(ProjA2`xs)) & \
  19.145 @@ -230,7 +230,7 @@
  19.146  (* ------------------------------------------------------------------ *)
  19.147  
  19.148  
  19.149 -goal thy 
  19.150 +Goal 
  19.151  "ex:executions(A||B) =\
  19.152  \(Filter_ex (asig_of A) (ProjA ex) : executions A &\
  19.153  \ Filter_ex (asig_of B) (ProjB ex) : executions B &\
  19.154 @@ -256,7 +256,7 @@
  19.155  (*                            For Modules                             *)
  19.156  (* ------------------------------------------------------------------ *)
  19.157  
  19.158 -goalw thy [Execs_def,par_execs_def]
  19.159 +Goalw [Execs_def,par_execs_def]
  19.160  
  19.161  "Execs (A||B) = par_execs (Execs A) (Execs B)";
  19.162  
    20.1 --- a/src/HOLCF/IOA/meta_theory/CompoScheds.ML	Mon Jun 22 17:12:27 1998 +0200
    20.2 +++ b/src/HOLCF/IOA/meta_theory/CompoScheds.ML	Mon Jun 22 17:13:09 1998 +0200
    20.3 @@ -56,17 +56,17 @@
    20.4  \      )))");
    20.5  
    20.6  
    20.7 -goal thy "(mkex2 A B`UU`exA`exB) s t = UU";
    20.8 +Goal "(mkex2 A B`UU`exA`exB) s t = UU";
    20.9  by (stac mkex2_unfold 1);
   20.10  by (Simp_tac 1);
   20.11  qed"mkex2_UU";
   20.12  
   20.13 -goal thy "(mkex2 A B`nil`exA`exB) s t= nil";
   20.14 +Goal "(mkex2 A B`nil`exA`exB) s t= nil";
   20.15  by (stac mkex2_unfold 1);
   20.16  by (Simp_tac 1);
   20.17  qed"mkex2_nil";
   20.18  
   20.19 -goal thy "!!x.[| x:act A; x~:act B; HD`exA=Def a|] \
   20.20 +Goal "!!x.[| x:act A; x~:act B; HD`exA=Def a|] \
   20.21  \   ==> (mkex2 A B`(x>>sch)`exA`exB) s t =   \
   20.22  \       (x,snd a,t) >> (mkex2 A B`sch`(TL`exA)`exB) (snd a) t";
   20.23  by (rtac trans 1);
   20.24 @@ -75,7 +75,7 @@
   20.25  by (asm_full_simp_tac (simpset() addsimps [Cons_def]) 1);
   20.26  qed"mkex2_cons_1";
   20.27  
   20.28 -goal thy "!!x.[| x~:act A; x:act B; HD`exB=Def b|] \
   20.29 +Goal "!!x.[| x~:act A; x:act B; HD`exB=Def b|] \
   20.30  \   ==> (mkex2 A B`(x>>sch)`exA`exB) s t = \
   20.31  \       (x,s,snd b) >> (mkex2 A B`sch`exA`(TL`exB)) s (snd b)";
   20.32  by (rtac trans 1);
   20.33 @@ -84,7 +84,7 @@
   20.34  by (asm_full_simp_tac (simpset() addsimps [Cons_def]) 1);
   20.35  qed"mkex2_cons_2";
   20.36  
   20.37 -goal thy "!!x.[| x:act A; x:act B; HD`exA=Def a;HD`exB=Def b|] \
   20.38 +Goal "!!x.[| x:act A; x:act B; HD`exA=Def a;HD`exB=Def b|] \
   20.39  \   ==> (mkex2 A B`(x>>sch)`exA`exB) s t =  \
   20.40  \        (x,snd a,snd b) >> \
   20.41  \           (mkex2 A B`sch`(TL`exA)`(TL`exB)) (snd a) (snd b)";
   20.42 @@ -101,15 +101,15 @@
   20.43  (*                             mkex                                 *)
   20.44  (* ---------------------------------------------------------------- *)
   20.45  
   20.46 -goal thy "mkex A B UU  (s,exA) (t,exB) = ((s,t),UU)";
   20.47 +Goal "mkex A B UU  (s,exA) (t,exB) = ((s,t),UU)";
   20.48  by (simp_tac (simpset() addsimps [mkex_def]) 1);
   20.49  qed"mkex_UU";
   20.50  
   20.51 -goal thy "mkex A B nil (s,exA) (t,exB) = ((s,t),nil)";
   20.52 +Goal "mkex A B nil (s,exA) (t,exB) = ((s,t),nil)";
   20.53  by (simp_tac (simpset() addsimps [mkex_def]) 1);
   20.54  qed"mkex_nil";
   20.55  
   20.56 -goal thy "!!x.[| x:act A; x~:act B |] \
   20.57 +Goal "!!x.[| x:act A; x~:act B |] \
   20.58  \   ==> mkex A B (x>>sch) (s,a>>exA) (t,exB)  =  \
   20.59  \       ((s,t), (x,snd a,t) >> snd (mkex A B sch (snd a,exA) (t,exB)))";
   20.60  by (simp_tac (simpset() addsimps [mkex_def]) 1);
   20.61 @@ -117,7 +117,7 @@
   20.62  by Auto_tac;
   20.63  qed"mkex_cons_1";
   20.64  
   20.65 -goal thy "!!x.[| x~:act A; x:act B |] \
   20.66 +Goal "!!x.[| x~:act A; x:act B |] \
   20.67  \   ==> mkex A B (x>>sch) (s,exA) (t,b>>exB) =  \ 
   20.68  \       ((s,t), (x,s,snd b) >> snd (mkex A B sch (s,exA) (snd b,exB)))";
   20.69  by (simp_tac (simpset() addsimps [mkex_def]) 1);
   20.70 @@ -125,7 +125,7 @@
   20.71  by Auto_tac;
   20.72  qed"mkex_cons_2";
   20.73  
   20.74 -goal thy "!!x.[| x:act A; x:act B |]  \
   20.75 +Goal "!!x.[| x:act A; x:act B |]  \
   20.76  \   ==>  mkex A B (x>>sch) (s,a>>exA) (t,b>>exB) = \
   20.77  \        ((s,t), (x,snd a,snd b) >> snd (mkex A B sch (snd a,exA) (snd b,exB)))";
   20.78  by (simp_tac (simpset() addsimps [mkex_def]) 1);
   20.79 @@ -155,7 +155,7 @@
   20.80  (*    Lemma_2_1 :  tfilter(ex) and filter_act are commutative            *)
   20.81  (* --------------------------------------------------------------------- *)
   20.82  
   20.83 -goalw thy [filter_act_def,Filter_ex2_def]
   20.84 +Goalw [filter_act_def,Filter_ex2_def]
   20.85     "filter_act`(Filter_ex2 (asig_of A)`xs)=\
   20.86  \   Filter (%a. a:act A)`(filter_act`xs)";
   20.87  
   20.88 @@ -167,7 +167,7 @@
   20.89  (*    Lemma_2_2 : State-projections do not affect filter_act             *)
   20.90  (* --------------------------------------------------------------------- *)
   20.91  
   20.92 -goal thy 
   20.93 +Goal 
   20.94     "filter_act`(ProjA2`xs) =filter_act`xs &\
   20.95  \   filter_act`(ProjB2`xs) =filter_act`xs";
   20.96  
   20.97 @@ -183,7 +183,7 @@
   20.98     an ex is in A or B, but after projecting it onto the action schedule. Of course, this
   20.99     is the same proposition, but we cannot change this one, when then rather lemma_1_1c  *)
  20.100  
  20.101 -goal thy "!s. is_exec_frag (A||B) (s,xs) \
  20.102 +Goal "!s. is_exec_frag (A||B) (s,xs) \
  20.103  \  --> Forall (%x. x:act (A||B)) (filter_act`xs)";
  20.104  
  20.105  by (pair_induct_tac "xs" [is_exec_frag_def,Forall_def,sforall_def] 1);
  20.106 @@ -203,7 +203,7 @@
  20.107                               structural induction
  20.108    --------------------------------------------------------------------------- *)
  20.109  
  20.110 -goal thy "! exA exB s t. \
  20.111 +Goal "! exA exB s t. \
  20.112  \ Forall (%x. x:act (A||B)) sch  & \
  20.113  \ Filter (%a. a:act A)`sch << filter_act`exA &\
  20.114  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.115 @@ -266,7 +266,7 @@
  20.116    --------------------------------------------------------------------------- *)
  20.117  
  20.118  
  20.119 -goal thy "! exA exB s t. \
  20.120 +Goal "! exA exB s t. \
  20.121  \ Forall (%x. x:act (A||B)) sch & \
  20.122  \ Filter (%a. a:act A)`sch << filter_act`exA &\
  20.123  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.124 @@ -277,7 +277,7 @@
  20.125  qed"stutterA_mkex";
  20.126  
  20.127  
  20.128 -goal thy "!! sch.[|  \
  20.129 +Goal "!! sch.[|  \
  20.130  \ Forall (%x. x:act (A||B)) sch ; \
  20.131  \ Filter (%a. a:act A)`sch << filter_act`(snd exA) ;\
  20.132  \ Filter (%a. a:act B)`sch << filter_act`(snd exB) |] \
  20.133 @@ -297,7 +297,7 @@
  20.134                               structural induction
  20.135    --------------------------------------------------------------------------- *)
  20.136  
  20.137 -goal thy "! exA exB s t. \
  20.138 +Goal "! exA exB s t. \
  20.139  \ Forall (%x. x:act (A||B)) sch & \
  20.140  \ Filter (%a. a:act A)`sch << filter_act`exA &\
  20.141  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.142 @@ -308,7 +308,7 @@
  20.143  qed"stutterB_mkex";
  20.144  
  20.145  
  20.146 -goal thy "!! sch.[|  \
  20.147 +Goal "!! sch.[|  \
  20.148  \ Forall (%x. x:act (A||B)) sch ; \
  20.149  \ Filter (%a. a:act A)`sch << filter_act`(snd exA) ;\
  20.150  \ Filter (%a. a:act B)`sch << filter_act`(snd exB) |] \
  20.151 @@ -330,7 +330,7 @@
  20.152                               structural induction
  20.153    --------------------------------------------------------------------------- *)
  20.154  
  20.155 -goal thy "! exA exB s t. \
  20.156 +Goal "! exA exB s t. \
  20.157  \ Forall (%x. x:act (A||B)) sch & \
  20.158  \ Filter (%a. a:act A)`sch << filter_act`exA  &\
  20.159  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.160 @@ -346,7 +346,7 @@
  20.161                      lemma for admissibility problems         
  20.162    --------------------------------------------------------------------------- *)
  20.163  
  20.164 -goal thy  "Zip`(Map fst`y)`(Map snd`y) = y";
  20.165 +Goal  "Zip`(Map fst`y)`(Map snd`y) = y";
  20.166  by (Seq_induct_tac "y" [] 1);
  20.167  qed"Zip_Map_fst_snd";
  20.168  
  20.169 @@ -356,7 +356,7 @@
  20.170           lemma for eliminating non admissible equations in assumptions      
  20.171    --------------------------------------------------------------------------- *)
  20.172  
  20.173 -goal thy "!! sch ex. \
  20.174 +Goal "!! sch ex. \
  20.175  \ Filter (%a. a:act AB)`sch = filter_act`ex  \
  20.176  \ ==> ex = Zip`(Filter (%a. a:act AB)`sch)`(Map snd`ex)";
  20.177  by (asm_full_simp_tac (simpset() addsimps [filter_act_def]) 1);
  20.178 @@ -369,7 +369,7 @@
  20.179    --------------------------------------------------------------------------- *)
  20.180  
  20.181  
  20.182 -goal thy "!!sch exA exB.\
  20.183 +Goal "!!sch exA exB.\
  20.184  \ [| Forall (%a. a:act (A||B)) sch ; \
  20.185  \ Filter (%a. a:act A)`sch = filter_act`(snd exA)  ;\
  20.186  \ Filter (%a. a:act B)`sch = filter_act`(snd exB) |]\
  20.187 @@ -394,7 +394,7 @@
  20.188    --------------------------------------------------------------------------- *)
  20.189  
  20.190  
  20.191 -goal thy "! exA exB s t. \
  20.192 +Goal "! exA exB s t. \
  20.193  \ Forall (%x. x:act (A||B)) sch & \
  20.194  \ Filter (%a. a:act A)`sch << filter_act`exA  &\
  20.195  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.196 @@ -413,7 +413,7 @@
  20.197    --------------------------------------------------------------------------- *)
  20.198  
  20.199  
  20.200 -goal thy "!!sch exA exB.\
  20.201 +Goal "!!sch exA exB.\
  20.202  \ [| Forall (%a. a:act (A||B)) sch ; \
  20.203  \ Filter (%a. a:act A)`sch = filter_act`(snd exA)  ;\
  20.204  \ Filter (%a. a:act B)`sch = filter_act`(snd exB) |]\
  20.205 @@ -434,7 +434,7 @@
  20.206  (* --------------------------------------------------------------------- *)
  20.207  
  20.208  
  20.209 -goal thy "!s t exA exB. \
  20.210 +Goal "!s t exA exB. \
  20.211  \ Forall (%x. x : act (A || B)) sch &\
  20.212  \ Filter (%a. a:act A)`sch << filter_act`exA  &\
  20.213  \ Filter (%a. a:act B)`sch << filter_act`exB \
  20.214 @@ -451,7 +451,7 @@
  20.215  (*                          Main Theorem                              *)
  20.216  (* ------------------------------------------------------------------ *)
  20.217  
  20.218 -goal thy  
  20.219 +Goal  
  20.220  "sch : schedules (A||B) = \
  20.221  \ (Filter (%a. a:act A)`sch : schedules A &\
  20.222  \  Filter (%a. a:act B)`sch : schedules B &\
  20.223 @@ -500,7 +500,7 @@
  20.224  (*                            For Modules                             *)
  20.225  (* ------------------------------------------------------------------ *)
  20.226  
  20.227 -goalw thy [Scheds_def,par_scheds_def]
  20.228 +Goalw [Scheds_def,par_scheds_def]
  20.229  
  20.230  "Scheds (A||B) = par_scheds (Scheds A) (Scheds B)";
  20.231  
    21.1 --- a/src/HOLCF/IOA/meta_theory/CompoTraces.ML	Mon Jun 22 17:12:27 1998 +0200
    21.2 +++ b/src/HOLCF/IOA/meta_theory/CompoTraces.ML	Mon Jun 22 17:13:09 1998 +0200
    21.3 @@ -50,17 +50,17 @@
    21.4  \       ))");
    21.5  
    21.6  
    21.7 -goal thy "mksch A B`UU`schA`schB = UU";
    21.8 +Goal "mksch A B`UU`schA`schB = UU";
    21.9  by (stac mksch_unfold 1);
   21.10  by (Simp_tac 1);
   21.11  qed"mksch_UU";
   21.12  
   21.13 -goal thy "mksch A B`nil`schA`schB = nil";
   21.14 +Goal "mksch A B`nil`schA`schB = nil";
   21.15  by (stac mksch_unfold 1);
   21.16  by (Simp_tac 1);
   21.17  qed"mksch_nil";
   21.18  
   21.19 -goal thy "!!x.[|x:act A;x~:act B|]  \
   21.20 +Goal "!!x.[|x:act A;x~:act B|]  \
   21.21  \   ==> mksch A B`(x>>tr)`schA`schB = \
   21.22  \         (Takewhile (%a. a:int A)`schA) \
   21.23  \         @@ (x>>(mksch A B`tr`(TL`(Dropwhile (%a. a:int A)`schA)) \
   21.24 @@ -71,7 +71,7 @@
   21.25  by (simp_tac (simpset() addsimps [Cons_def]) 1);
   21.26  qed"mksch_cons1";
   21.27  
   21.28 -goal thy "!!x.[|x~:act A;x:act B|] \
   21.29 +Goal "!!x.[|x~:act A;x:act B|] \
   21.30  \   ==> mksch A B`(x>>tr)`schA`schB = \
   21.31  \        (Takewhile (%a. a:int B)`schB)  \
   21.32  \         @@ (x>>(mksch A B`tr`schA`(TL`(Dropwhile (%a. a:int B)`schB))  \
   21.33 @@ -82,7 +82,7 @@
   21.34  by (simp_tac (simpset() addsimps [Cons_def]) 1);
   21.35  qed"mksch_cons2";
   21.36  
   21.37 -goal thy "!!x.[|x:act A;x:act B|] \
   21.38 +Goal "!!x.[|x:act A;x:act B|] \
   21.39  \   ==> mksch A B`(x>>tr)`schA`schB = \
   21.40  \            (Takewhile (%a. a:int A)`schA) \
   21.41  \         @@ ((Takewhile (%a. a:int B)`schB)  \
   21.42 @@ -114,7 +114,7 @@
   21.43     the compatibility of IOA, in particular out of the condition that internals are 
   21.44     really hidden. *)
   21.45  
   21.46 -goal thy "(eB & ~eA --> ~A) -->       \
   21.47 +Goal "(eB & ~eA --> ~A) -->       \
   21.48  \         (A & (eA | eB)) = (eA & A)";
   21.49  by (Fast_tac 1);
   21.50  qed"compatibility_consequence1";
   21.51 @@ -122,7 +122,7 @@
   21.52  
   21.53  (* very similar to above, only the commutativity of | is used to make a slight change *)
   21.54  
   21.55 -goal thy "(eB & ~eA --> ~A) -->       \
   21.56 +Goal "(eB & ~eA --> ~A) -->       \
   21.57  \         (A & (eB | eA)) = (eA & A)";
   21.58  by (Fast_tac 1);
   21.59  qed"compatibility_consequence2";
   21.60 @@ -146,7 +146,7 @@
   21.61  qed"subst_lemma2";
   21.62  
   21.63  
   21.64 -goal thy "!!A B. compatible A B ==> \
   21.65 +Goal "!!A B. compatible A B ==> \
   21.66  \   ! schA schB. Forall (%x. x:act (A||B)) tr \
   21.67  \   --> Forall (%x. x:act (A||B)) (mksch A B`tr`schA`schB)";
   21.68  by (Seq_induct_tac "tr" [Forall_def,sforall_def,mksch_def] 1); 
   21.69 @@ -173,7 +173,7 @@
   21.70  by Auto_tac;
   21.71  qed_spec_mp"ForallAorB_mksch";
   21.72  
   21.73 -goal thy "!!A B. compatible B A  ==> \
   21.74 +Goal "!!A B. compatible B A  ==> \
   21.75  \   ! schA schB.  (Forall (%x. x:act B & x~:act A) tr \
   21.76  \   --> Forall (%x. x:act B & x~:act A) (mksch A B`tr`schA`schB))";
   21.77  
   21.78 @@ -184,7 +184,7 @@
   21.79                              intA_is_not_actB,int_is_act]) 1);
   21.80  qed_spec_mp "ForallBnAmksch";
   21.81  
   21.82 -goal thy "!!A B. compatible A B ==> \
   21.83 +Goal "!!A B. compatible A B ==> \
   21.84  \   ! schA schB.  (Forall (%x. x:act A & x~:act B) tr \
   21.85  \   --> Forall (%x. x:act A & x~:act B) (mksch A B`tr`schA`schB))";
   21.86  
   21.87 @@ -199,7 +199,7 @@
   21.88  (* safe-tac makes too many case distinctions with this lemma in the next proof *)
   21.89  Delsimps [FiniteConc];
   21.90  
   21.91 -goal thy "!! tr. [| Finite tr; is_asig(asig_of A); is_asig(asig_of B) |] ==> \
   21.92 +Goal "!! tr. [| Finite tr; is_asig(asig_of A); is_asig(asig_of B) |] ==> \
   21.93  \   ! x y. Forall (%x. x:act A) x & Forall (%x. x:act B) y & \
   21.94  \          Filter (%a. a:ext A)`x = Filter (%a. a:act A)`tr & \
   21.95  \          Filter (%a. a:ext B)`y = Filter (%a. a:act B)`tr &\
   21.96 @@ -272,7 +272,7 @@
   21.97  (* otherwise subst_lemma2 does not fit exactly, just to avoid a subst_lemma3 *)
   21.98  Delsimps [FilterConc]; 
   21.99  
  21.100 -goal thy " !!bs. [| Finite bs; is_asig(asig_of A); is_asig(asig_of B);compatible A B|] ==>  \
  21.101 +Goal " !!bs. [| Finite bs; is_asig(asig_of A); is_asig(asig_of B);compatible A B|] ==>  \
  21.102  \! y. Forall (%x. x:act B) y & Forall (%x. x:act B & x~:act A) bs &\
  21.103  \    Filter (%a. a:ext B)`y = Filter (%a. a:act B)`(bs @@ z) \
  21.104  \    --> (? y1 y2.  (mksch A B`(bs @@ z)`x`y) = (y1 @@ (mksch A B`z`x`y2)) & \
  21.105 @@ -326,7 +326,7 @@
  21.106  Delsimps [FilterConc]; 
  21.107  
  21.108  
  21.109 -goal thy " !!as. [| Finite as; is_asig(asig_of A); is_asig(asig_of B);compatible A B|] ==>  \
  21.110 +Goal " !!as. [| Finite as; is_asig(asig_of A); is_asig(asig_of B);compatible A B|] ==>  \
  21.111  \! x. Forall (%x. x:act A) x & Forall (%x. x:act A & x~:act B) as &\
  21.112  \    Filter (%a. a:ext A)`x = Filter (%a. a:act A)`(as @@ z) \
  21.113  \    --> (? x1 x2.  (mksch A B`(as @@ z)`x`y) = (x1 @@ (mksch A B`z`x2`y)) & \
  21.114 @@ -379,7 +379,7 @@
  21.115  (*
  21.116  
  21.117  
  21.118 -goal thy "!! y.Finite y ==> ! z tr. Forall (%a.a:ext (A||B)) tr & \
  21.119 +Goal "!! y.Finite y ==> ! z tr. Forall (%a.a:ext (A||B)) tr & \
  21.120  \                             y = z @@ mksch A B`tr`a`b\
  21.121  \                             --> Finite tr";
  21.122  by (etac Seq_Finite_ind  1);
  21.123 @@ -438,19 +438,19 @@
  21.124  
  21.125  
  21.126  
  21.127 -goal thy "(x>>xs = y @@ z) = ((y=nil & x>>xs=z) | (? ys. y=x>>ys & xs=ys@@z))";
  21.128 +Goal "(x>>xs = y @@ z) = ((y=nil & x>>xs=z) | (? ys. y=x>>ys & xs=ys@@z))";
  21.129  by (Seq_case_simp_tac "y" 1);
  21.130  by Auto_tac;
  21.131  qed"Conc_Conc_eq";
  21.132  
  21.133 -goal thy "!! (y::'a Seq).Finite y ==> ~ y= x@@UU";
  21.134 +Goal "!! (y::'a Seq).Finite y ==> ~ y= x@@UU";
  21.135  by (etac Seq_Finite_ind 1);
  21.136  by (Seq_case_simp_tac "x" 1);
  21.137  by (Seq_case_simp_tac "x" 1);
  21.138  by Auto_tac;
  21.139  qed"FiniteConcUU1";
  21.140  
  21.141 -goal thy "~ Finite ((x::'a Seq)@@UU)";
  21.142 +Goal "~ Finite ((x::'a Seq)@@UU)";
  21.143  by (rtac (FiniteConcUU1 COMP rev_contrapos) 1);
  21.144  by Auto_tac;
  21.145  qed"FiniteConcUU";
  21.146 @@ -466,7 +466,7 @@
  21.147  (*                             structural induction
  21.148    ------------------------------------------------------------------------------------- *)
  21.149  
  21.150 -goal thy 
  21.151 +Goal 
  21.152  "!! A B. [| compatible A B; compatible B A;\
  21.153  \           is_asig(asig_of A); is_asig(asig_of B) |] ==> \
  21.154  \ ! schA schB. Forall (%x. x:act A) schA & Forall (%x. x:act B) schB & \
  21.155 @@ -543,7 +543,7 @@
  21.156                               take lemma
  21.157    --------------------------------------------------------------------------- *)
  21.158  
  21.159 -goal thy "!! A B. [| compatible A B; compatible B A; \
  21.160 +Goal "!! A B. [| compatible A B; compatible B A; \
  21.161  \ is_asig(asig_of A); is_asig(asig_of B) |] ==> \
  21.162  \ Forall (%x. x:ext (A||B)) tr & \
  21.163  \ Forall (%x. x:act A) schA & Forall (%x. x:act B) schB & \
  21.164 @@ -677,7 +677,7 @@
  21.165  
  21.166  
  21.167  
  21.168 -goal thy "!! A B. [| compatible A B; compatible B A; \
  21.169 +Goal "!! A B. [| compatible A B; compatible B A; \
  21.170  \ is_asig(asig_of A); is_asig(asig_of B) |] ==> \
  21.171  \ Forall (%x. x:ext (A||B)) tr & \
  21.172  \ Forall (%x. x:act A) schA & Forall (%x. x:act B) schB & \
  21.173 @@ -917,7 +917,7 @@
  21.174  
  21.175  
  21.176  
  21.177 -goal thy "!! A B. [| compatible A B; compatible B A; \
  21.178 +Goal "!! A B. [| compatible A B; compatible B A; \
  21.179  \ is_asig(asig_of A); is_asig(asig_of B) |] ==> \
  21.180  \ Forall (%x. x:ext (A||B)) tr & \
  21.181  \ Forall (%x. x:act A) schA & Forall (%x. x:act B) schB & \
  21.182 @@ -1155,7 +1155,7 @@
  21.183           section"COMPOSITIONALITY on TRACE Level -- Main Theorem";
  21.184  (* ------------------------------------------------------------------ *)
  21.185   
  21.186 -goal thy 
  21.187 +Goal 
  21.188  "!! A B. [| is_trans_of A; is_trans_of B; compatible A B; compatible B A; \
  21.189  \           is_asig(asig_of A); is_asig(asig_of B)|] \
  21.190  \       ==>  tr: traces(A||B) = \
  21.191 @@ -1218,7 +1218,7 @@
  21.192  (*                            For Modules                             *)
  21.193  (* ------------------------------------------------------------------ *)
  21.194  
  21.195 -goalw thy [Traces_def,par_traces_def]
  21.196 +Goalw [Traces_def,par_traces_def]
  21.197  
  21.198  "!! A B. [| is_trans_of A; is_trans_of B; compatible A B; compatible B A; \
  21.199  \           is_asig(asig_of A); is_asig(asig_of B)|] \
    22.1 --- a/src/HOLCF/IOA/meta_theory/Compositionality.ML	Mon Jun 22 17:12:27 1998 +0200
    22.2 +++ b/src/HOLCF/IOA/meta_theory/Compositionality.ML	Mon Jun 22 17:13:09 1998 +0200
    22.3 @@ -8,12 +8,12 @@
    22.4  
    22.5  
    22.6  
    22.7 -goal thy "!! A. [|eA --> A ; eB & ~eA --> ~A|] ==> (eA | eB) --> A=eA";
    22.8 +Goal "!! A. [|eA --> A ; eB & ~eA --> ~A|] ==> (eA | eB) --> A=eA";
    22.9  by Auto_tac;
   22.10  qed"compatibility_consequence3";
   22.11  
   22.12  
   22.13 -goal thy 
   22.14 +Goal 
   22.15  "!! A B. [| compatible A B; Forall (%a. a: ext A | a: ext B) tr |] ==> \
   22.16  \           Filter (%a. a: act A)`tr= Filter (%a. a: ext A)`tr";
   22.17  by (rtac ForallPFilterQR 1);
   22.18 @@ -28,11 +28,11 @@
   22.19  (* the next two theorems are only necessary, as there is no theorem ext (A||B) = ext (B||A)
   22.20      or even better A||B= B||A, FIX *)
   22.21  
   22.22 -goal thy "!! A. [|eA --> A ; eB & ~eA --> ~A|] ==> (eB | eA) --> A=eA";
   22.23 +Goal "!! A. [|eA --> A ; eB & ~eA --> ~A|] ==> (eB | eA) --> A=eA";
   22.24  by Auto_tac;
   22.25  qed"compatibility_consequence4";
   22.26  
   22.27 -goal thy 
   22.28 +Goal 
   22.29  "!! A B. [| compatible A B; Forall (%a. a: ext B | a: ext A) tr |] ==> \
   22.30  \           Filter (%a. a: act A)`tr= Filter (%a. a: ext A)`tr";
   22.31  by (rtac ForallPFilterQR 1);
   22.32 @@ -49,7 +49,7 @@
   22.33  
   22.34  
   22.35  
   22.36 -goal thy "!! A1 A2 B1 B2. \
   22.37 +Goal "!! A1 A2 B1 B2. \
   22.38  \         [| is_trans_of A1; is_trans_of A2; is_trans_of B1; is_trans_of B2;\
   22.39  \            is_asig_of A1; is_asig_of A2; \
   22.40  \            is_asig_of B1; is_asig_of B2; \
    23.1 --- a/src/HOLCF/IOA/meta_theory/Deadlock.ML	Mon Jun 22 17:12:27 1998 +0200
    23.2 +++ b/src/HOLCF/IOA/meta_theory/Deadlock.ML	Mon Jun 22 17:13:09 1998 +0200
    23.3 @@ -10,7 +10,7 @@
    23.4                 input actions may always be added to a schedule
    23.5  **********************************************************************************)
    23.6  
    23.7 -goal thy "!! sch. [| Filter (%x. x:act A)`sch : schedules A; a:inp A; input_enabled A; Finite sch|] \
    23.8 +Goal "!! sch. [| Filter (%x. x:act A)`sch : schedules A; a:inp A; input_enabled A; Finite sch|] \
    23.9  \         ==> Filter (%x. x:act A)`sch @@ a>>nil : schedules A";
   23.10  by (asm_full_simp_tac (simpset() addsimps [schedules_def,has_schedule_def]) 1);
   23.11  by (safe_tac set_cs);
   23.12 @@ -51,7 +51,7 @@
   23.13                      and distributivity of is_exec_frag over @@
   23.14  **********************************************************************************)
   23.15  Delsplits [split_if];
   23.16 -goal thy "!! sch. [| a : local A; Finite sch; sch : schedules (A||B); \
   23.17 +Goal "!! sch. [| a : local A; Finite sch; sch : schedules (A||B); \
   23.18  \            Filter (%x. x:act A)`(sch @@ a>>nil) : schedules A; compatible A B; input_enabled B |] \
   23.19  \          ==> (sch @@ a>>nil) : schedules (A||B)";
   23.20  
    24.1 --- a/src/HOLCF/IOA/meta_theory/LiveIOA.ML	Mon Jun 22 17:12:27 1998 +0200
    24.2 +++ b/src/HOLCF/IOA/meta_theory/LiveIOA.ML	Mon Jun 22 17:13:09 1998 +0200
    24.3 @@ -9,7 +9,7 @@
    24.4  
    24.5  Delsimps [split_paired_Ex];
    24.6  
    24.7 -goalw thy [live_implements_def] 
    24.8 +Goalw [live_implements_def] 
    24.9  "!! A. [| live_implements (A,LA) (B,LB); live_implements (B,LB) (C,LC) |] \
   24.10  \     ==> live_implements (A,LA) (C,LC)"; 
   24.11  auto();
   24.12 @@ -24,7 +24,7 @@
   24.13  (* ---------------------------------------------------------------- *)
   24.14  
   24.15  
   24.16 -goal thy "!! f. [| inp(C)=inp(A); out(C)=out(A); \
   24.17 +Goal "!! f. [| inp(C)=inp(A); out(C)=out(A); \
   24.18  \                  is_live_ref_map f (C,M) (A,L) |] \
   24.19  \               ==> live_implements (C,M) (A,L)";
   24.20  
   24.21 @@ -59,7 +59,7 @@
   24.22  
   24.23  (* Classical Fairness and Fairness by Temporal Formula coincide *)
   24.24   
   24.25 -goal thy "!! ex. Finite (snd ex) ==> \
   24.26 +Goal "!! ex. Finite (snd ex) ==> \
   24.27  \          (ex |== WF A acts) = (~ Enabled A acts (laststate ex))";
   24.28  
   24.29  In 3 steps:
    25.1 --- a/src/HOLCF/IOA/meta_theory/RefCorrectness.ML	Mon Jun 22 17:12:27 1998 +0200
    25.2 +++ b/src/HOLCF/IOA/meta_theory/RefCorrectness.ML	Mon Jun 22 17:13:09 1998 +0200
    25.3 @@ -18,7 +18,7 @@
    25.4  (* ---------------------------------------------------------------- *)
    25.5  
    25.6  
    25.7 -goal thy "corresp_exC A f  = (LAM ex. (%s. case ex of \
    25.8 +Goal "corresp_exC A f  = (LAM ex. (%s. case ex of \
    25.9  \      nil =>  nil   \
   25.10  \    | x##xs => (flift1 (%pr. (@cex. move A cex (f s) (fst pr) (f (snd pr)))   \
   25.11  \                              @@ ((corresp_exC A f `xs) (snd pr)))   \
   25.12 @@ -30,17 +30,17 @@
   25.13  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   25.14  qed"corresp_exC_unfold";
   25.15  
   25.16 -goal thy "(corresp_exC A f`UU) s=UU";
   25.17 +Goal "(corresp_exC A f`UU) s=UU";
   25.18  by (stac corresp_exC_unfold 1);
   25.19  by (Simp_tac 1);
   25.20  qed"corresp_exC_UU";
   25.21  
   25.22 -goal thy "(corresp_exC A f`nil) s = nil";
   25.23 +Goal "(corresp_exC A f`nil) s = nil";
   25.24  by (stac corresp_exC_unfold 1);
   25.25  by (Simp_tac 1);
   25.26  qed"corresp_exC_nil";
   25.27  
   25.28 -goal thy "(corresp_exC A f`(at>>xs)) s = \
   25.29 +Goal "(corresp_exC A f`(at>>xs)) s = \
   25.30  \          (@cex. move A cex (f s) (fst at) (f (snd at)))  \
   25.31  \          @@ ((corresp_exC A f`xs) (snd at))";
   25.32  by (rtac trans 1);
   25.33 @@ -61,7 +61,7 @@
   25.34  
   25.35  section"properties of move";
   25.36  
   25.37 -goalw thy [is_ref_map_def]
   25.38 +Goalw [is_ref_map_def]
   25.39     "!!f. [|is_ref_map f C A; reachable C s; (s,a,t):trans_of C|] ==>\
   25.40  \     move A (@x. move A x (f s) a (f t)) (f s) a (f t)";
   25.41  
   25.42 @@ -72,7 +72,7 @@
   25.43  by (assume_tac 1);
   25.44  qed"move_is_move";
   25.45  
   25.46 -goal thy
   25.47 +Goal
   25.48     "!!f. [|is_ref_map f C A; reachable C s; (s,a,t):trans_of C|] ==>\
   25.49  \    is_exec_frag A (f s,@x. move A x (f s) a (f t))";
   25.50  by (cut_inst_tac [] move_is_move 1);
   25.51 @@ -80,7 +80,7 @@
   25.52  by (asm_full_simp_tac (simpset() addsimps [move_def]) 1);
   25.53  qed"move_subprop1";
   25.54  
   25.55 -goal thy
   25.56 +Goal
   25.57     "!!f. [|is_ref_map f C A; reachable C s; (s,a,t):trans_of C|] ==>\
   25.58  \    Finite ((@x. move A x (f s) a (f t)))";
   25.59  by (cut_inst_tac [] move_is_move 1);
   25.60 @@ -88,7 +88,7 @@
   25.61  by (asm_full_simp_tac (simpset() addsimps [move_def]) 1);
   25.62  qed"move_subprop2";
   25.63  
   25.64 -goal thy
   25.65 +Goal
   25.66     "!!f. [|is_ref_map f C A; reachable C s; (s,a,t):trans_of C|] ==>\
   25.67  \    laststate (f s,@x. move A x (f s) a (f t)) = (f t)";
   25.68  by (cut_inst_tac [] move_is_move 1);
   25.69 @@ -96,7 +96,7 @@
   25.70  by (asm_full_simp_tac (simpset() addsimps [move_def]) 1);
   25.71  qed"move_subprop3";
   25.72  
   25.73 -goal thy
   25.74 +Goal
   25.75     "!!f. [|is_ref_map f C A; reachable C s; (s,a,t):trans_of C|] ==>\
   25.76  \     mk_trace A`((@x. move A x (f s) a (f t))) = \
   25.77  \       (if a:ext A then a>>nil else nil)";
   25.78 @@ -119,7 +119,7 @@
   25.79  (* --------------------------------------------------- *)
   25.80  
   25.81  
   25.82 -goal thy "mk_trace C`(ex1 @@ ex2)= (mk_trace C`ex1) @@ (mk_trace C`ex2)";
   25.83 +Goal "mk_trace C`(ex1 @@ ex2)= (mk_trace C`ex1) @@ (mk_trace C`ex2)";
   25.84  by (simp_tac (simpset() addsimps [mk_trace_def,filter_act_def,
   25.85                                   FilterConc,MapConc]) 1);
   25.86  qed"mk_traceConc";
   25.87 @@ -130,7 +130,7 @@
   25.88                   Lemma 1 :Traces coincide  
   25.89     ------------------------------------------------------- *)
   25.90  Delsplits[split_if];
   25.91 -goalw thy [corresp_ex_def]
   25.92 +Goalw [corresp_ex_def]
   25.93    "!!f.[|is_ref_map f C A; ext C = ext A|] ==>  \     
   25.94  \        !s. reachable C s & is_exec_frag C (s,xs) --> \
   25.95  \            mk_trace C`xs = mk_trace A`(snd (corresp_ex A f (s,xs)))";
   25.96 @@ -159,7 +159,7 @@
   25.97  (*                   Lemma 2.1                        *)
   25.98  (* -------------------------------------------------- *)
   25.99  
  25.100 -goal thy 
  25.101 +Goal 
  25.102  "Finite xs --> \
  25.103  \(!s .is_exec_frag A (s,xs) & is_exec_frag A (t,ys) & \ 
  25.104  \     t = laststate (s,xs) \
  25.105 @@ -179,7 +179,7 @@
  25.106  
  25.107  
  25.108  
  25.109 -goalw thy [corresp_ex_def]
  25.110 +Goalw [corresp_ex_def]
  25.111   "!!f.[| is_ref_map f C A |] ==>\
  25.112  \ !s. reachable C s & is_exec_frag C (s,xs) \
  25.113  \ --> is_exec_frag A (corresp_ex A f (s,xs))"; 
  25.114 @@ -220,7 +220,7 @@
  25.115  (* -------------------------------------------------------------------------------- *)
  25.116  
  25.117  
  25.118 -goalw thy [traces_def]
  25.119 +Goalw [traces_def]
  25.120    "!!f. [| ext C = ext A; is_ref_map f C A |] \
  25.121  \          ==> traces C <= traces A"; 
  25.122  
  25.123 @@ -255,19 +255,19 @@
  25.124  (* -------------------------------------------------------------------------------- *)
  25.125  
  25.126  
  25.127 -goalw thy [fin_often_def] "(~inf_often P s) = fin_often P s";
  25.128 +Goalw [fin_often_def] "(~inf_often P s) = fin_often P s";
  25.129  auto();
  25.130  qed"fininf";
  25.131  
  25.132  
  25.133 -goal thy 
  25.134 +Goal 
  25.135  "is_wfair A W (s,ex) = \
  25.136  \ (fin_often (%x. ~Enabled A W (snd x)) ex --> inf_often (%x. fst x :W) ex)";
  25.137  by (asm_full_simp_tac (simpset() addsimps [is_wfair_def,fin_often_def])1);
  25.138  auto();
  25.139  qed"WF_alt";
  25.140  
  25.141 -goal thy  
  25.142 +Goal  
  25.143  "!! ex. [|is_wfair A W (s,ex); inf_often (%x. Enabled A W (snd x)) ex; \
  25.144  \         en_persistent A W|] \
  25.145  \   ==> inf_often (%x. fst x :W) ex";
  25.146 @@ -278,7 +278,7 @@
  25.147  qed"WF_persistent";
  25.148  
  25.149  
  25.150 -goal thy "!! C A. \
  25.151 +Goal "!! C A. \
  25.152  \         [| is_ref_map f C A; ext C = ext A; \
  25.153  \         !! ex. [| ex:executions C; fair_ex C ex|] ==> fair_ex A (corresp_ex A f ex) |] \
  25.154  \         ==> fairtraces C <= fairtraces A";
  25.155 @@ -308,7 +308,7 @@
  25.156  auto();
  25.157  qed"fair_trace_inclusion";
  25.158  
  25.159 -goal thy "!! C A. \
  25.160 +Goal "!! C A. \
  25.161  \         [| inp(C) = inp(A); out(C)=out(A); \
  25.162  \            is_fair_ref_map f C A |] \
  25.163  \         ==> fair_implements C A";
    26.1 --- a/src/HOLCF/IOA/meta_theory/RefMappings.ML	Mon Jun 22 17:12:27 1998 +0200
    26.2 +++ b/src/HOLCF/IOA/meta_theory/RefMappings.ML	Mon Jun 22 17:13:09 1998 +0200
    26.3 @@ -15,21 +15,21 @@
    26.4  section "transitions and moves";
    26.5  
    26.6  
    26.7 -goal thy"!!f. s -a--A-> t ==> ? ex. move A ex s a t";
    26.8 +Goal"!!f. s -a--A-> t ==> ? ex. move A ex s a t";
    26.9  
   26.10  by (res_inst_tac [("x","(a,t)>>nil")] exI 1);
   26.11  by (asm_full_simp_tac (simpset() addsimps [move_def]) 1);
   26.12  qed"transition_is_ex";
   26.13   
   26.14  
   26.15 -goal thy"!!f. (~a:ext A) & s=t ==> ? ex. move A ex s a t";
   26.16 +Goal"!!f. (~a:ext A) & s=t ==> ? ex. move A ex s a t";
   26.17  
   26.18  by (res_inst_tac [("x","nil")] exI 1);
   26.19  by (asm_full_simp_tac (simpset() addsimps [move_def]) 1);
   26.20  qed"nothing_is_ex";
   26.21  
   26.22  
   26.23 -goal thy"!!f. (s -a--A-> s') & (s' -a'--A-> s'') & (~a':ext A) \
   26.24 +Goal"!!f. (s -a--A-> s') & (s' -a'--A-> s'') & (~a':ext A) \
   26.25  \        ==> ? ex. move A ex s a s''";
   26.26  
   26.27  by (res_inst_tac [("x","(a,s')>>(a',s'')>>nil")] exI 1);
   26.28 @@ -37,7 +37,7 @@
   26.29  qed"ei_transitions_are_ex";
   26.30  
   26.31  
   26.32 -goal thy
   26.33 +Goal
   26.34  "!!f. (s1 -a1--A-> s2) & (s2 -a2--A-> s3) & (s3 -a3--A-> s4) &\
   26.35  \     (~a2:ext A) & (~a3:ext A) ==> \
   26.36  \     ? ex. move A ex s1 a1 s4";
   26.37 @@ -52,7 +52,7 @@
   26.38  section "weak_ref_map and ref_map";
   26.39  
   26.40  
   26.41 -goalw thy [is_weak_ref_map_def,is_ref_map_def]
   26.42 +Goalw [is_weak_ref_map_def,is_ref_map_def]
   26.43    "!!f. [| ext C = ext A; \
   26.44  \    is_weak_ref_map f C A |] ==> is_ref_map f C A";
   26.45  by (safe_tac set_cs);
   26.46 @@ -69,7 +69,7 @@
   26.47  val lemma = result();
   26.48  
   26.49  Delsplits [split_if];
   26.50 -goal thy "!!f.[| is_weak_ref_map f C A |]\
   26.51 +Goal "!!f.[| is_weak_ref_map f C A |]\
   26.52  \                      ==> (is_weak_ref_map f (rename C g) (rename A g))";
   26.53  by (asm_full_simp_tac (simpset() addsimps [is_weak_ref_map_def]) 1);
   26.54  by (rtac conjI 1);
    27.1 --- a/src/HOLCF/IOA/meta_theory/Seq.ML	Mon Jun 22 17:12:27 1998 +0200
    27.2 +++ b/src/HOLCF/IOA/meta_theory/Seq.ML	Mon Jun 22 17:13:09 1998 +0200
    27.3 @@ -9,7 +9,7 @@
    27.4  
    27.5  
    27.6  (* Instead of adding UU_neq_nil every equation UU~=x could be changed to x~=UU *)
    27.7 -goal thy "UU ~=nil";
    27.8 +Goal "UU ~=nil";
    27.9  by (res_inst_tac [("s1","UU"),("t1","nil")]  (sym RS rev_contrapos) 1);
   27.10  by (REPEAT (Simp_tac 1));
   27.11  qed"UU_neq_nil";
   27.12 @@ -36,17 +36,17 @@
   27.13   \                         nil  => nil \
   27.14   \                       | x##xs => f`x ## smap`f`xs)");
   27.15  
   27.16 -goal thy "smap`f`nil=nil"; 
   27.17 +Goal "smap`f`nil=nil"; 
   27.18  by (stac smap_unfold 1);
   27.19  by (Simp_tac 1);
   27.20  qed"smap_nil";
   27.21  
   27.22 -goal thy "smap`f`UU=UU"; 
   27.23 +Goal "smap`f`UU=UU"; 
   27.24  by (stac smap_unfold 1);
   27.25  by (Simp_tac 1);
   27.26  qed"smap_UU";
   27.27  
   27.28 -goal thy 
   27.29 +Goal 
   27.30  "!!x.[|x~=UU|] ==> smap`f`(x##xs)= (f`x)##smap`f`xs"; 
   27.31  by (rtac trans 1);
   27.32  by (stac smap_unfold 1);
   27.33 @@ -63,17 +63,17 @@
   27.34   \         nil   => nil \
   27.35   \       | x##xs => If P`x then x##(sfilter`P`xs) else sfilter`P`xs fi)");
   27.36  
   27.37 -goal thy "sfilter`P`nil=nil";
   27.38 +Goal "sfilter`P`nil=nil";
   27.39  by (stac sfilter_unfold 1);
   27.40  by (Simp_tac 1);
   27.41  qed"sfilter_nil";
   27.42  
   27.43 -goal thy "sfilter`P`UU=UU";
   27.44 +Goal "sfilter`P`UU=UU";
   27.45  by (stac sfilter_unfold 1);
   27.46  by (Simp_tac 1);
   27.47  qed"sfilter_UU";
   27.48  
   27.49 -goal thy 
   27.50 +Goal 
   27.51  "!!x. x~=UU ==> sfilter`P`(x##xs)=   \
   27.52  \             (If P`x then x##(sfilter`P`xs) else sfilter`P`xs fi)";
   27.53  by (rtac trans 1);
   27.54 @@ -91,17 +91,17 @@
   27.55   \                         nil   => TT \
   27.56   \                       | x##xs => (P`x andalso sforall2`P`xs))");
   27.57  
   27.58 -goal thy "sforall2`P`nil=TT"; 
   27.59 +Goal "sforall2`P`nil=TT"; 
   27.60  by (stac sforall2_unfold 1);
   27.61  by (Simp_tac 1);
   27.62  qed"sforall2_nil";
   27.63  
   27.64 -goal thy "sforall2`P`UU=UU"; 
   27.65 +Goal "sforall2`P`UU=UU"; 
   27.66  by (stac sforall2_unfold 1);
   27.67  by (Simp_tac 1);
   27.68  qed"sforall2_UU";
   27.69  
   27.70 -goal thy 
   27.71 +Goal 
   27.72  "!!x. x~=UU ==> sforall2`P`(x##xs)= ((P`x) andalso sforall2`P`xs)";
   27.73  by (rtac trans 1);
   27.74  by (stac sforall2_unfold 1);
   27.75 @@ -120,17 +120,17 @@
   27.76   \                         nil   => nil \
   27.77   \                       | x##xs => (If P`x then x##(stakewhile`P`xs) else nil fi))");
   27.78  
   27.79 -goal thy "stakewhile`P`nil=nil"; 
   27.80 +Goal "stakewhile`P`nil=nil"; 
   27.81  by (stac stakewhile_unfold 1);
   27.82  by (Simp_tac 1);
   27.83  qed"stakewhile_nil";
   27.84  
   27.85 -goal thy "stakewhile`P`UU=UU"; 
   27.86 +Goal "stakewhile`P`UU=UU"; 
   27.87  by (stac stakewhile_unfold 1);
   27.88  by (Simp_tac 1);
   27.89  qed"stakewhile_UU";
   27.90  
   27.91 -goal thy 
   27.92 +Goal 
   27.93  "!!x. x~=UU ==> stakewhile`P`(x##xs) =   \
   27.94  \             (If P`x then x##(stakewhile`P`xs) else nil fi)";
   27.95  by (rtac trans 1);
   27.96 @@ -149,17 +149,17 @@
   27.97   \                         nil   => nil \
   27.98   \                       | x##xs => (If P`x then sdropwhile`P`xs else tr fi))");
   27.99  
  27.100 -goal thy "sdropwhile`P`nil=nil"; 
  27.101 +Goal "sdropwhile`P`nil=nil"; 
  27.102  by (stac sdropwhile_unfold 1);
  27.103  by (Simp_tac 1);
  27.104  qed"sdropwhile_nil";
  27.105  
  27.106 -goal thy "sdropwhile`P`UU=UU"; 
  27.107 +Goal "sdropwhile`P`UU=UU"; 
  27.108  by (stac sdropwhile_unfold 1);
  27.109  by (Simp_tac 1);
  27.110  qed"sdropwhile_UU";
  27.111  
  27.112 -goal thy 
  27.113 +Goal 
  27.114  "!!x. x~=UU ==> sdropwhile`P`(x##xs) =   \
  27.115  \             (If P`x then sdropwhile`P`xs else x##xs fi)";
  27.116  by (rtac trans 1);
  27.117 @@ -180,17 +180,17 @@
  27.118   \                       | x##xs => (If is_nil`xs then x else slast`xs fi))");
  27.119  
  27.120  
  27.121 -goal thy "slast`nil=UU"; 
  27.122 +Goal "slast`nil=UU"; 
  27.123  by (stac slast_unfold 1);
  27.124  by (Simp_tac 1);
  27.125  qed"slast_nil";
  27.126  
  27.127 -goal thy "slast`UU=UU"; 
  27.128 +Goal "slast`UU=UU"; 
  27.129  by (stac slast_unfold 1);
  27.130  by (Simp_tac 1);
  27.131  qed"slast_UU";
  27.132  
  27.133 -goal thy 
  27.134 +Goal 
  27.135  "!!x. x~=UU ==> slast`(x##xs)= (If is_nil`xs then x else slast`xs fi)";
  27.136  by (rtac trans 1);
  27.137  by (stac slast_unfold 1);
  27.138 @@ -209,17 +209,17 @@
  27.139   \                       | x##xs => x ## (xs @@ t2))");
  27.140  
  27.141  
  27.142 -goal thy "nil @@ y = y"; 
  27.143 +Goal "nil @@ y = y"; 
  27.144  by (stac sconc_unfold 1);
  27.145  by (Simp_tac 1);
  27.146  qed"sconc_nil";
  27.147  
  27.148 -goal thy "UU @@ y=UU"; 
  27.149 +Goal "UU @@ y=UU"; 
  27.150  by (stac sconc_unfold 1);
  27.151  by (Simp_tac 1);
  27.152  qed"sconc_UU";
  27.153  
  27.154 -goal thy "(x##xs) @@ y=x##(xs @@ y)";
  27.155 +Goal "(x##xs) @@ y=x##(xs @@ y)";
  27.156  by (rtac trans 1);
  27.157  by (stac sconc_unfold 1);
  27.158  by (Asm_full_simp_tac 1);
  27.159 @@ -239,17 +239,17 @@
  27.160   \                         nil   => nil \
  27.161   \                       | x##xs => x @@ sflat`xs)");
  27.162  
  27.163 -goal thy "sflat`nil=nil"; 
  27.164 +Goal "sflat`nil=nil"; 
  27.165  by (stac sflat_unfold 1);
  27.166  by (Simp_tac 1);
  27.167  qed"sflat_nil";
  27.168  
  27.169 -goal thy "sflat`UU=UU"; 
  27.170 +Goal "sflat`UU=UU"; 
  27.171  by (stac sflat_unfold 1);
  27.172  by (Simp_tac 1);
  27.173  qed"sflat_UU";
  27.174  
  27.175 -goal thy "sflat`(x##xs)= x@@(sflat`xs)"; 
  27.176 +Goal "sflat`(x##xs)= x@@(sflat`xs)"; 
  27.177  by (rtac trans 1);
  27.178  by (stac sflat_unfold 1);
  27.179  by (Asm_full_simp_tac 1);
  27.180 @@ -271,30 +271,30 @@
  27.181  \                          nil => UU    \
  27.182  \                        | y##ys => <x,y>##(szip`xs`ys)))");
  27.183  
  27.184 -goal thy "szip`nil`y=nil"; 
  27.185 +Goal "szip`nil`y=nil"; 
  27.186  by (stac szip_unfold 1);
  27.187  by (Simp_tac 1);
  27.188  qed"szip_nil";
  27.189  
  27.190 -goal thy "szip`UU`y=UU"; 
  27.191 +Goal "szip`UU`y=UU"; 
  27.192  by (stac szip_unfold 1);
  27.193  by (Simp_tac 1);
  27.194  qed"szip_UU1";
  27.195  
  27.196 -goal thy "!!x. x~=nil ==> szip`x`UU=UU"; 
  27.197 +Goal "!!x. x~=nil ==> szip`x`UU=UU"; 
  27.198  by (stac szip_unfold 1);
  27.199  by (Asm_full_simp_tac 1);
  27.200  by (res_inst_tac [("x","x")] seq.casedist 1);
  27.201  by (REPEAT (Asm_full_simp_tac 1));
  27.202  qed"szip_UU2";
  27.203  
  27.204 -goal thy "!!x. x~=UU ==> szip`(x##xs)`nil=UU";
  27.205 +Goal "!!x. x~=UU ==> szip`(x##xs)`nil=UU";
  27.206  by (rtac trans 1);
  27.207  by (stac szip_unfold 1);
  27.208  by (REPEAT (Asm_full_simp_tac 1));
  27.209  qed"szip_cons_nil";
  27.210  
  27.211 -goal thy "!!x.[| x~=UU; y~=UU|] ==> szip`(x##xs)`(y##ys) = <x,y>##szip`xs`ys";
  27.212 +Goal "!!x.[| x~=UU; y~=UU|] ==> szip`(x##xs)`(y##ys) = <x,y>##szip`xs`ys";
  27.213  by (rtac trans 1);
  27.214  by (stac szip_unfold 1);
  27.215  by (REPEAT (Asm_full_simp_tac 1));
  27.216 @@ -316,14 +316,14 @@
  27.217  
  27.218  section "scons, nil";
  27.219  
  27.220 -goal thy 
  27.221 +Goal 
  27.222   "!!x. [|x~=UU;y~=UU|]==> (x##xs=y##ys) = (x=y & xs=ys)";
  27.223  by (rtac iffI 1);
  27.224  by (etac (hd seq.injects) 1);
  27.225  by Auto_tac;
  27.226  qed"scons_inject_eq";
  27.227  
  27.228 -goal thy "!!x. nil<<x ==> nil=x";
  27.229 +Goal "!!x. nil<<x ==> nil=x";
  27.230  by (res_inst_tac [("x","x")] seq.casedist 1);
  27.231  by (hyp_subst_tac 1);
  27.232  by (etac antisym_less 1);
  27.233 @@ -338,7 +338,7 @@
  27.234  section "sfilter, sforall, sconc";
  27.235  
  27.236  
  27.237 -goal thy  "(if b then tr1 else tr2) @@ tr \
  27.238 +Goal  "(if b then tr1 else tr2) @@ tr \
  27.239          \= (if b then tr1 @@ tr else tr2 @@ tr)";
  27.240  by (res_inst_tac [("P","b"),("Q","b")] impCE 1);
  27.241  by (fast_tac HOL_cs 1);
  27.242 @@ -348,7 +348,7 @@
  27.243  Addsimps [if_and_sconc];
  27.244  
  27.245  
  27.246 -goal thy "sfilter`P`(x @@ y) = (sfilter`P`x @@ sfilter`P`y)";
  27.247 +Goal "sfilter`P`(x @@ y) = (sfilter`P`x @@ sfilter`P`y)";
  27.248  
  27.249  by (res_inst_tac[("x","x")] seq.ind 1);
  27.250  (* adm *)
  27.251 @@ -360,7 +360,7 @@
  27.252  by (asm_full_simp_tac (simpset() setloop split_If_tac) 1);
  27.253  qed"sfiltersconc";
  27.254  
  27.255 -goal thy "sforall P (stakewhile`P`x)";
  27.256 +Goal "sforall P (stakewhile`P`x)";
  27.257  by (simp_tac (simpset() addsimps [sforall_def]) 1);
  27.258  by (res_inst_tac[("x","x")] seq.ind 1);
  27.259  (* adm *)
  27.260 @@ -372,7 +372,7 @@
  27.261  by (asm_full_simp_tac (simpset() setloop split_If_tac) 1);
  27.262  qed"sforallPstakewhileP";
  27.263  
  27.264 -goal thy "sforall P (sfilter`P`x)";
  27.265 +Goal "sforall P (sfilter`P`x)";
  27.266  by (simp_tac (simpset() addsimps [sforall_def]) 1);
  27.267  by (res_inst_tac[("x","x")] seq.ind 1);
  27.268  (* adm *)
  27.269 @@ -398,26 +398,26 @@
  27.270  (* 3. a~=UU==> Finite(a##x)=Finite(x)                  *)
  27.271  (* ----------------------------------------------------  *)
  27.272  
  27.273 -goal thy "Finite x --> x~=UU";
  27.274 +Goal "Finite x --> x~=UU";
  27.275  by (rtac impI 1);
  27.276  by (etac sfinite.induct 1);
  27.277   by (Asm_full_simp_tac 1);
  27.278  by (Asm_full_simp_tac 1);
  27.279  qed"Finite_UU_a";
  27.280  
  27.281 -goal thy "~(Finite UU)";
  27.282 +Goal "~(Finite UU)";
  27.283  by (cut_inst_tac [("x","UU")]Finite_UU_a  1);
  27.284  by (fast_tac HOL_cs 1);
  27.285  qed"Finite_UU";
  27.286  
  27.287 -goal thy "Finite x --> a~=UU --> x=a##xs --> Finite xs";
  27.288 +Goal "Finite x --> a~=UU --> x=a##xs --> Finite xs";
  27.289  by (strip_tac 1);
  27.290  by (etac sfinite.elim 1);
  27.291  by (fast_tac (HOL_cs addss simpset()) 1);
  27.292  by (fast_tac (HOL_cs addSDs seq.injects) 1);
  27.293  qed"Finite_cons_a";
  27.294  
  27.295 -goal thy "!!x. a~=UU ==>(Finite (a##x)) = (Finite x)";
  27.296 +Goal "!!x. a~=UU ==>(Finite (a##x)) = (Finite x)";
  27.297  by (rtac iffI 1);
  27.298  by (rtac (Finite_cons_a RS mp RS mp RS mp) 1);
  27.299  by (REPEAT (assume_tac 1));
  27.300 @@ -449,7 +449,7 @@
  27.301          ]);
  27.302  
  27.303  
  27.304 -goal  thy 
  27.305 +Goal 
  27.306  "!!P.[|P(UU);P(nil);\
  27.307  \  !! x s1.[|x~=UU;P(s1)|] ==> P(x##s1)\
  27.308  \  |] ==> seq_finite(s) --> P(s)";
  27.309 @@ -470,13 +470,13 @@
  27.310     Deshalb Finite jetzt induktiv und nicht mehr rekursiv definiert! 
  27.311     ------------------------------------------------------------------ *)
  27.312  
  27.313 -goal thy "seq_finite nil";
  27.314 +Goal "seq_finite nil";
  27.315  by (simp_tac (simpset() addsimps [seq.sfinite_def]) 1);
  27.316  by (res_inst_tac [("x","Suc 0")] exI 1);
  27.317  by (simp_tac (simpset() addsimps seq.rews) 1);
  27.318  qed"seq_finite_nil";
  27.319  
  27.320 -goal thy "seq_finite UU";
  27.321 +Goal "seq_finite UU";
  27.322  by (simp_tac (simpset() addsimps [seq.sfinite_def]) 1);
  27.323  qed"seq_finite_UU";
  27.324  
  27.325 @@ -487,7 +487,7 @@
  27.326  qed"logic_lemma";
  27.327  
  27.328  
  27.329 -goal thy "!!P.[| P nil; \
  27.330 +Goal "!!P.[| P nil; \
  27.331  \                !!a t. [|a~=UU;Finite t; P t|] ==> P (a##t)|]\
  27.332  \            ==> Finite x --> P x";
  27.333  
  27.334 @@ -500,7 +500,7 @@
  27.335  qed"Finite_ind";
  27.336  
  27.337  
  27.338 -goal thy "Finite tr --> seq_finite tr";
  27.339 +Goal "Finite tr --> seq_finite tr";
  27.340  by (rtac seq.ind 1);
  27.341  (* adm *)
  27.342  (* hier grosses Problem !!!!!!!!!!!!!!! *)
    28.1 --- a/src/HOLCF/IOA/meta_theory/Sequence.ML	Mon Jun 22 17:12:27 1998 +0200
    28.2 +++ b/src/HOLCF/IOA/meta_theory/Sequence.ML	Mon Jun 22 17:13:09 1998 +0200
    28.3 @@ -18,15 +18,15 @@
    28.4  (*                               Map                                *)
    28.5  (* ---------------------------------------------------------------- *)
    28.6  
    28.7 -goal thy "Map f`UU =UU";
    28.8 +Goal "Map f`UU =UU";
    28.9  by (simp_tac (simpset() addsimps [Map_def]) 1);
   28.10  qed"Map_UU";
   28.11  
   28.12 -goal thy "Map f`nil =nil";
   28.13 +Goal "Map f`nil =nil";
   28.14  by (simp_tac (simpset() addsimps [Map_def]) 1);
   28.15  qed"Map_nil";
   28.16  
   28.17 -goal thy "Map f`(x>>xs)=(f x) >> Map f`xs";
   28.18 +Goal "Map f`(x>>xs)=(f x) >> Map f`xs";
   28.19  by (simp_tac (simpset() addsimps [Map_def, Cons_def,flift2_def]) 1);
   28.20  qed"Map_cons";
   28.21  
   28.22 @@ -34,15 +34,15 @@
   28.23  (*                               Filter                             *)
   28.24  (* ---------------------------------------------------------------- *)
   28.25  
   28.26 -goal thy "Filter P`UU =UU";
   28.27 +Goal "Filter P`UU =UU";
   28.28  by (simp_tac (simpset() addsimps [Filter_def]) 1);
   28.29  qed"Filter_UU";
   28.30  
   28.31 -goal thy "Filter P`nil =nil";
   28.32 +Goal "Filter P`nil =nil";
   28.33  by (simp_tac (simpset() addsimps [Filter_def]) 1);
   28.34  qed"Filter_nil";
   28.35  
   28.36 -goal thy "Filter P`(x>>xs)= (if P x then x>>(Filter P`xs) else Filter P`xs)"; 
   28.37 +Goal "Filter P`(x>>xs)= (if P x then x>>(Filter P`xs) else Filter P`xs)"; 
   28.38  by (simp_tac (simpset() addsimps [Filter_def, Cons_def,flift2_def,If_and_if]) 1);
   28.39  qed"Filter_cons";
   28.40  
   28.41 @@ -50,15 +50,15 @@
   28.42  (*                               Forall                             *)
   28.43  (* ---------------------------------------------------------------- *)
   28.44  
   28.45 -goal thy "Forall P UU";
   28.46 +Goal "Forall P UU";
   28.47  by (simp_tac (simpset() addsimps [Forall_def,sforall_def]) 1);
   28.48  qed"Forall_UU";
   28.49  
   28.50 -goal thy "Forall P nil";
   28.51 +Goal "Forall P nil";
   28.52  by (simp_tac (simpset() addsimps [Forall_def,sforall_def]) 1);
   28.53  qed"Forall_nil";
   28.54  
   28.55 -goal thy "Forall P (x>>xs)= (P x & Forall P xs)";
   28.56 +Goal "Forall P (x>>xs)= (P x & Forall P xs)";
   28.57  by (simp_tac (simpset() addsimps [Forall_def, sforall_def,
   28.58                                   Cons_def,flift2_def]) 1);
   28.59  qed"Forall_cons";
   28.60 @@ -68,7 +68,7 @@
   28.61  (* ---------------------------------------------------------------- *)
   28.62  
   28.63  
   28.64 -goal thy "(x>>xs) @@ y = x>>(xs @@y)"; 
   28.65 +Goal "(x>>xs) @@ y = x>>(xs @@y)"; 
   28.66  by (simp_tac (simpset() addsimps [Cons_def]) 1);
   28.67  qed"Conc_cons";
   28.68  
   28.69 @@ -76,15 +76,15 @@
   28.70  (*                               Takewhile                          *)
   28.71  (* ---------------------------------------------------------------- *)
   28.72  
   28.73 -goal thy "Takewhile P`UU =UU";
   28.74 +Goal "Takewhile P`UU =UU";
   28.75  by (simp_tac (simpset() addsimps [Takewhile_def]) 1);
   28.76  qed"Takewhile_UU";
   28.77  
   28.78 -goal thy "Takewhile P`nil =nil";
   28.79 +Goal "Takewhile P`nil =nil";
   28.80  by (simp_tac (simpset() addsimps [Takewhile_def]) 1);
   28.81  qed"Takewhile_nil";
   28.82  
   28.83 -goal thy "Takewhile P`(x>>xs)= (if P x then x>>(Takewhile P`xs) else nil)"; 
   28.84 +Goal "Takewhile P`(x>>xs)= (if P x then x>>(Takewhile P`xs) else nil)"; 
   28.85  by (simp_tac (simpset() addsimps [Takewhile_def, Cons_def,flift2_def,If_and_if]) 1);
   28.86  qed"Takewhile_cons";
   28.87  
   28.88 @@ -92,15 +92,15 @@
   28.89  (*                               Dropwhile                          *)
   28.90  (* ---------------------------------------------------------------- *)
   28.91  
   28.92 -goal thy "Dropwhile P`UU =UU";
   28.93 +Goal "Dropwhile P`UU =UU";
   28.94  by (simp_tac (simpset() addsimps [Dropwhile_def]) 1);
   28.95  qed"Dropwhile_UU";
   28.96  
   28.97 -goal thy "Dropwhile P`nil =nil";
   28.98 +Goal "Dropwhile P`nil =nil";
   28.99  by (simp_tac (simpset() addsimps [Dropwhile_def]) 1);
  28.100  qed"Dropwhile_nil";
  28.101  
  28.102 -goal thy "Dropwhile P`(x>>xs)= (if P x then Dropwhile P`xs else x>>xs)"; 
  28.103 +Goal "Dropwhile P`(x>>xs)= (if P x then Dropwhile P`xs else x>>xs)"; 
  28.104  by (simp_tac (simpset() addsimps [Dropwhile_def, Cons_def,flift2_def,If_and_if]) 1);
  28.105  qed"Dropwhile_cons";
  28.106  
  28.107 @@ -109,15 +109,15 @@
  28.108  (* ---------------------------------------------------------------- *)
  28.109  
  28.110  
  28.111 -goal thy "Last`UU =UU";
  28.112 +Goal "Last`UU =UU";
  28.113  by (simp_tac (simpset() addsimps [Last_def]) 1);
  28.114  qed"Last_UU";
  28.115  
  28.116 -goal thy "Last`nil =UU";
  28.117 +Goal "Last`nil =UU";
  28.118  by (simp_tac (simpset() addsimps [Last_def]) 1);
  28.119  qed"Last_nil";
  28.120  
  28.121 -goal thy "Last`(x>>xs)= (if xs=nil then Def x else Last`xs)"; 
  28.122 +Goal "Last`(x>>xs)= (if xs=nil then Def x else Last`xs)"; 
  28.123  by (simp_tac (simpset() addsimps [Last_def, Cons_def]) 1);
  28.124  by (res_inst_tac [("x","xs")] seq.casedist 1);
  28.125  by (Asm_simp_tac 1);
  28.126 @@ -129,15 +129,15 @@
  28.127  (*                               Flat                               *)
  28.128  (* ---------------------------------------------------------------- *)
  28.129  
  28.130 -goal thy "Flat`UU =UU";
  28.131 +Goal "Flat`UU =UU";
  28.132  by (simp_tac (simpset() addsimps [Flat_def]) 1);
  28.133  qed"Flat_UU";
  28.134  
  28.135 -goal thy "Flat`nil =nil";
  28.136 +Goal "Flat`nil =nil";
  28.137  by (simp_tac (simpset() addsimps [Flat_def]) 1);
  28.138  qed"Flat_nil";
  28.139  
  28.140 -goal thy "Flat`(x##xs)= x @@ (Flat`xs)"; 
  28.141 +Goal "Flat`(x##xs)= x @@ (Flat`xs)"; 
  28.142  by (simp_tac (simpset() addsimps [Flat_def, Cons_def]) 1);
  28.143  qed"Flat_cons";
  28.144  
  28.145 @@ -146,7 +146,7 @@
  28.146  (*                               Zip                                *)
  28.147  (* ---------------------------------------------------------------- *)
  28.148  
  28.149 -goal thy "Zip = (LAM t1 t2. case t1 of \
  28.150 +Goal "Zip = (LAM t1 t2. case t1 of \
  28.151  \               nil   => nil \
  28.152  \             | x##xs => (case t2 of \ 
  28.153  \                          nil => UU  \
  28.154 @@ -162,29 +162,29 @@
  28.155  by (Simp_tac 1);
  28.156  qed"Zip_unfold";
  28.157  
  28.158 -goal thy "Zip`UU`y =UU";
  28.159 +Goal "Zip`UU`y =UU";
  28.160  by (stac Zip_unfold 1);
  28.161  by (Simp_tac 1);
  28.162  qed"Zip_UU1";
  28.163  
  28.164 -goal thy "!! x. x~=nil ==> Zip`x`UU =UU";
  28.165 +Goal "!! x. x~=nil ==> Zip`x`UU =UU";
  28.166  by (stac Zip_unfold 1);
  28.167  by (Simp_tac 1);
  28.168  by (res_inst_tac [("x","x")] seq.casedist 1);
  28.169  by (REPEAT (Asm_full_simp_tac 1));
  28.170  qed"Zip_UU2";
  28.171  
  28.172 -goal thy "Zip`nil`y =nil";
  28.173 +Goal "Zip`nil`y =nil";
  28.174  by (stac Zip_unfold 1);
  28.175  by (Simp_tac 1);
  28.176  qed"Zip_nil";
  28.177  
  28.178 -goal thy "Zip`(x>>xs)`nil= UU"; 
  28.179 +Goal "Zip`(x>>xs)`nil= UU"; 
  28.180  by (stac Zip_unfold 1);
  28.181  by (simp_tac (simpset() addsimps [Cons_def]) 1);
  28.182  qed"Zip_cons_nil";
  28.183  
  28.184 -goal thy "Zip`(x>>xs)`(y>>ys)= (x,y) >> Zip`xs`ys"; 
  28.185 +Goal "Zip`(x>>xs)`(y>>ys)= (x,y) >> Zip`xs`ys"; 
  28.186  by (rtac trans 1);
  28.187  by (stac Zip_unfold 1);
  28.188  by (Simp_tac 1);
  28.189 @@ -218,7 +218,7 @@
  28.190  
  28.191  Can Filter with HOL predicate directly be defined as fixpoint ?
  28.192  
  28.193 -goal thy "Filter2 P = (LAM tr. case tr of  \
  28.194 +Goal "Filter2 P = (LAM tr. case tr of  \
  28.195   \         nil   => nil \
  28.196   \       | x##xs => (case x of Undef => UU | Def y => \
  28.197  \                   (if P y then y>>(Filter2 P`xs) else Filter2 P`xs)))";
  28.198 @@ -239,18 +239,18 @@
  28.199  
  28.200  section "Cons";
  28.201  
  28.202 -goal thy "a>>s = (Def a)##s";
  28.203 +Goal "a>>s = (Def a)##s";
  28.204  by (simp_tac (simpset() addsimps [Cons_def]) 1);
  28.205  qed"Cons_def2";
  28.206  
  28.207 -goal thy "x = UU | x = nil | (? a s. x = a >> s)";
  28.208 +Goal "x = UU | x = nil | (? a s. x = a >> s)";
  28.209  by (simp_tac (simpset() addsimps [Cons_def2]) 1);
  28.210  by (cut_facts_tac [seq.exhaust] 1);
  28.211  by (fast_tac (HOL_cs addDs [not_Undef_is_Def RS iffD1]) 1);
  28.212  qed"Seq_exhaust";
  28.213  
  28.214  
  28.215 -goal thy "!!P. [| x = UU ==> P; x = nil ==> P; !!a s. x = a >> s  ==> P |] ==> P";
  28.216 +Goal "!!P. [| x = UU ==> P; x = nil ==> P; !!a s. x = a >> s  ==> P |] ==> P";
  28.217  by (cut_inst_tac [("x","x")] Seq_exhaust 1);
  28.218  by (etac disjE 1);
  28.219  by (Asm_full_simp_tac 1);
  28.220 @@ -268,36 +268,36 @@
  28.221                                               THEN Asm_full_simp_tac (i+1)
  28.222                                               THEN Asm_full_simp_tac i;
  28.223  
  28.224 -goal thy "a>>s ~= UU";
  28.225 +Goal "a>>s ~= UU";
  28.226  by (stac Cons_def2 1);
  28.227  by (resolve_tac seq.con_rews 1);
  28.228  by (rtac Def_not_UU 1);
  28.229  qed"Cons_not_UU";
  28.230  
  28.231  
  28.232 -goal thy "~(a>>x) << UU";
  28.233 +Goal "~(a>>x) << UU";
  28.234  by (rtac notI 1);
  28.235  by (dtac antisym_less 1);
  28.236  by (Simp_tac 1);
  28.237  by (asm_full_simp_tac (simpset() addsimps [Cons_not_UU]) 1);
  28.238  qed"Cons_not_less_UU";
  28.239  
  28.240 -goal thy "~a>>s << nil";
  28.241 +Goal "~a>>s << nil";
  28.242  by (stac Cons_def2 1);
  28.243  by (resolve_tac seq.rews 1);
  28.244  by (rtac Def_not_UU 1);
  28.245  qed"Cons_not_less_nil";
  28.246  
  28.247 -goal thy "a>>s ~= nil";
  28.248 +Goal "a>>s ~= nil";
  28.249  by (stac Cons_def2 1);
  28.250  by (resolve_tac seq.rews 1);
  28.251  qed"Cons_not_nil";
  28.252  
  28.253 -goal thy "nil ~= a>>s";
  28.254 +Goal "nil ~= a>>s";
  28.255  by (simp_tac (simpset() addsimps [Cons_def2]) 1);
  28.256  qed"Cons_not_nil2";
  28.257  
  28.258 -goal thy "(a>>s = b>>t) = (a = b & s = t)";
  28.259 +Goal "(a>>s = b>>t) = (a = b & s = t)";
  28.260  by (simp_tac (HOL_ss addsimps [Cons_def2]) 1);
  28.261  by (stac (hd lift.inject RS sym) 1);
  28.262  back(); back();
  28.263 @@ -305,7 +305,7 @@
  28.264  by (REPEAT(rtac Def_not_UU 1));
  28.265  qed"Cons_inject_eq";
  28.266  
  28.267 -goal thy "(a>>s<<b>>t) = (a = b & s<<t)";
  28.268 +Goal "(a>>s<<b>>t) = (a = b & s<<t)";
  28.269  by (simp_tac (simpset() addsimps [Cons_def2]) 1);
  28.270  by (stac (Def_inject_less_eq RS sym) 1);
  28.271  back();
  28.272 @@ -319,7 +319,7 @@
  28.273  by (etac monofun_cfun_arg 1);
  28.274  qed"Cons_inject_less_eq";
  28.275  
  28.276 -goal thy "seq_take (Suc n)`(a>>x) = a>> (seq_take n`x)";
  28.277 +Goal "seq_take (Suc n)`(a>>x) = a>> (seq_take n`x)";
  28.278  by (simp_tac (simpset() addsimps [Cons_def]) 1);
  28.279  qed"seq_take_Cons";
  28.280  
  28.281 @@ -327,7 +327,7 @@
  28.282            Cons_not_UU,Cons_not_less_UU,Cons_not_less_nil,Cons_not_nil];
  28.283  
  28.284  (* Instead of adding UU_neq_Cons every equation UU~=x could be changed to x~=UU *)
  28.285 -goal thy "UU ~= x>>xs";
  28.286 +Goal "UU ~= x>>xs";
  28.287  by (res_inst_tac [("s1","UU"),("t1","x>>xs")]  (sym RS rev_contrapos) 1);
  28.288  by (REPEAT (Simp_tac 1));
  28.289  qed"UU_neq_Cons";
  28.290 @@ -339,14 +339,14 @@
  28.291  
  28.292  section "induction";
  28.293  
  28.294 -goal thy "!! P. [| adm P; P UU; P nil; !! a s. P s ==> P (a>>s)|] ==> P x";
  28.295 +Goal "!! P. [| adm P; P UU; P nil; !! a s. P s ==> P (a>>s)|] ==> P x";
  28.296  by (etac seq.ind 1);
  28.297  by (REPEAT (atac 1));
  28.298  by (def_tac 1);
  28.299  by (asm_full_simp_tac (simpset() addsimps [Cons_def]) 1);
  28.300  qed"Seq_induct";
  28.301  
  28.302 -goal thy "!! P.[|P UU;P nil; !! a s. P s ==> P(a>>s) |]  \
  28.303 +Goal "!! P.[|P UU;P nil; !! a s. P s ==> P(a>>s) |]  \
  28.304  \               ==> seq_finite x --> P x";
  28.305  by (etac seq_finite_ind 1);
  28.306  by (REPEAT (atac 1));
  28.307 @@ -354,7 +354,7 @@
  28.308  by (asm_full_simp_tac (simpset() addsimps [Cons_def]) 1);
  28.309  qed"Seq_FinitePartial_ind";
  28.310  
  28.311 -goal thy "!! P.[| Finite x; P nil; !! a s. [| Finite s; P s|] ==> P (a>>s) |] ==> P x";
  28.312 +Goal "!! P.[| Finite x; P nil; !! a s. [| Finite s; P s|] ==> P (a>>s) |] ==> P x";
  28.313  by (etac sfinite.induct 1);
  28.314  by (assume_tac 1);
  28.315  by (def_tac 1);
  28.316 @@ -386,11 +386,11 @@
  28.317  
  28.318  section "HD,TL";
  28.319  
  28.320 -goal thy "HD`(x>>y) = Def x";
  28.321 +Goal "HD`(x>>y) = Def x";
  28.322  by (simp_tac (simpset() addsimps [Cons_def]) 1);
  28.323  qed"HD_Cons";
  28.324  
  28.325 -goal thy "TL`(x>>y) = y";
  28.326 +Goal "TL`(x>>y) = y";
  28.327  by (simp_tac (simpset() addsimps [Cons_def]) 1);
  28.328  qed"TL_Cons";
  28.329  
  28.330 @@ -400,16 +400,16 @@
  28.331  
  28.332  section "Finite, Partial, Infinite";
  28.333  
  28.334 -goal thy "Finite (a>>xs) = Finite xs";
  28.335 +Goal "Finite (a>>xs) = Finite xs";
  28.336  by (simp_tac (simpset() addsimps [Cons_def2,Finite_cons]) 1);
  28.337  qed"Finite_Cons";
  28.338  
  28.339  Addsimps [Finite_Cons];
  28.340 -goal thy "!! x. Finite (x::'a Seq) ==> Finite y --> Finite (x@@y)";
  28.341 +Goal "!! x. Finite (x::'a Seq) ==> Finite y --> Finite (x@@y)";
  28.342  by (Seq_Finite_induct_tac 1);
  28.343  qed"FiniteConc_1";
  28.344  
  28.345 -goal thy "!! z. Finite (z::'a Seq) ==> !x y. z= x@@y --> (Finite x & Finite y)";
  28.346 +Goal "!! z. Finite (z::'a Seq) ==> !x y. z= x@@y --> (Finite x & Finite y)";
  28.347  by (Seq_Finite_induct_tac 1);
  28.348  (* nil*)
  28.349  by (strip_tac 1);
  28.350 @@ -425,7 +425,7 @@
  28.351  by (Asm_full_simp_tac 1);
  28.352  qed"FiniteConc_2";
  28.353  
  28.354 -goal thy "Finite(x@@y) = (Finite (x::'a Seq) & Finite y)";
  28.355 +Goal "Finite(x@@y) = (Finite (x::'a Seq) & Finite y)";
  28.356  by (rtac iffI 1);
  28.357  by (etac (FiniteConc_2 RS spec RS spec RS mp) 1);
  28.358  by (rtac refl 1);
  28.359 @@ -436,11 +436,11 @@
  28.360  Addsimps [FiniteConc];
  28.361  
  28.362  
  28.363 -goal thy "!! s. Finite s ==> Finite (Map f`s)";
  28.364 +Goal "!! s. Finite s ==> Finite (Map f`s)";
  28.365  by (Seq_Finite_induct_tac 1);
  28.366  qed"FiniteMap1";
  28.367  
  28.368 -goal thy "!! s. Finite s ==> ! t. (s = Map f`t) --> Finite t";
  28.369 +Goal "!! s. Finite s ==> ! t. (s = Map f`t) --> Finite t";
  28.370  by (Seq_Finite_induct_tac 1);
  28.371  by (strip_tac 1);
  28.372  by (Seq_case_simp_tac "t" 1);
  28.373 @@ -451,7 +451,7 @@
  28.374  by (Asm_full_simp_tac 1);
  28.375  qed"FiniteMap2";
  28.376  
  28.377 -goal thy "Finite (Map f`s) = Finite s";
  28.378 +Goal "Finite (Map f`s) = Finite s";
  28.379  by Auto_tac;
  28.380  by (etac (FiniteMap2 RS spec RS mp) 1);
  28.381  by (rtac refl 1);
  28.382 @@ -459,7 +459,7 @@
  28.383  qed"Map2Finite";
  28.384  
  28.385  
  28.386 -goal thy "!! s. Finite s ==> Finite (Filter P`s)";
  28.387 +Goal "!! s. Finite s ==> Finite (Filter P`s)";
  28.388  by (Seq_Finite_induct_tac 1);
  28.389  qed"FiniteFilter";
  28.390  
  28.391 @@ -473,7 +473,7 @@
  28.392     Then the assumption that an _infinite_ chain exists (from admI2) is set to a contradiction 
  28.393     to Finite_flat *)
  28.394  
  28.395 -goal thy "!! (x:: 'a Seq). Finite x ==> !y. Finite (y:: 'a Seq) & x<<y --> x=y";
  28.396 +Goal "!! (x:: 'a Seq). Finite x ==> !y. Finite (y:: 'a Seq) & x<<y --> x=y";
  28.397  by (Seq_Finite_induct_tac 1);
  28.398  by (strip_tac 1);
  28.399  by (etac conjE 1);
  28.400 @@ -485,7 +485,7 @@
  28.401  qed_spec_mp"Finite_flat";
  28.402  
  28.403  
  28.404 -goal thy "adm(%(x:: 'a Seq).Finite x)";
  28.405 +Goal "adm(%(x:: 'a Seq).Finite x)";
  28.406  by (rtac admI2 1);
  28.407  by (eres_inst_tac [("x","0")] allE 1);
  28.408  back();
  28.409 @@ -506,15 +506,15 @@
  28.410  
  28.411  section "Conc";
  28.412  
  28.413 -goal thy "!! x::'a Seq. Finite x ==> ((x @@ y) = (x @@ z)) = (y = z)";
  28.414 +Goal "!! x::'a Seq. Finite x ==> ((x @@ y) = (x @@ z)) = (y = z)";
  28.415  by (Seq_Finite_induct_tac 1);
  28.416  qed"Conc_cong";
  28.417  
  28.418 -goal thy "(x @@ y) @@ z = (x::'a Seq) @@ y @@ z";
  28.419 +Goal "(x @@ y) @@ z = (x::'a Seq) @@ y @@ z";
  28.420  by (Seq_induct_tac "x" [] 1);
  28.421  qed"Conc_assoc";
  28.422  
  28.423 -goal thy "s@@ nil = s";
  28.424 +Goal "s@@ nil = s";
  28.425  by (res_inst_tac[("x","s")] seq.ind 1);
  28.426  by (Simp_tac 1);
  28.427  by (Simp_tac 1);
  28.428 @@ -525,12 +525,12 @@
  28.429  Addsimps [nilConc];
  28.430  
  28.431  (* FIX: should be same as nil_is_Conc2 when all nils are turned to right side !! *)
  28.432 -goal thy "(nil = x @@ y) = ((x::'a Seq)= nil & y = nil)";
  28.433 +Goal "(nil = x @@ y) = ((x::'a Seq)= nil & y = nil)";
  28.434  by (Seq_case_simp_tac "x" 1);
  28.435  by Auto_tac;
  28.436  qed"nil_is_Conc";
  28.437  
  28.438 -goal thy "(x @@ y = nil) = ((x::'a Seq)= nil & y = nil)";
  28.439 +Goal "(x @@ y = nil) = ((x::'a Seq)= nil & y = nil)";
  28.440  by (Seq_case_simp_tac "x" 1);
  28.441  by Auto_tac;
  28.442  qed"nil_is_Conc2";
  28.443 @@ -540,11 +540,11 @@
  28.444  
  28.445  section "Last";
  28.446  
  28.447 -goal thy "!! s. Finite s ==> s~=nil --> Last`s~=UU";
  28.448 +Goal "!! s. Finite s ==> s~=nil --> Last`s~=UU";
  28.449  by (Seq_Finite_induct_tac  1);
  28.450  qed"Finite_Last1";
  28.451  
  28.452 -goal thy "!! s. Finite s ==> Last`s=UU --> s=nil";
  28.453 +Goal "!! s. Finite s ==> Last`s=UU --> s=nil";
  28.454  by (Seq_Finite_induct_tac  1);
  28.455  by (fast_tac HOL_cs 1);
  28.456  qed"Finite_Last2";
  28.457 @@ -556,11 +556,11 @@
  28.458  section "Filter, Conc";
  28.459  
  28.460  
  28.461 -goal thy "Filter P`(Filter Q`s) = Filter (%x. P x & Q x)`s";
  28.462 +Goal "Filter P`(Filter Q`s) = Filter (%x. P x & Q x)`s";
  28.463  by (Seq_induct_tac "s" [Filter_def] 1);
  28.464  qed"FilterPQ";
  28.465  
  28.466 -goal thy "Filter P`(x @@ y) = (Filter P`x @@ Filter P`y)";
  28.467 +Goal "Filter P`(x @@ y) = (Filter P`x @@ Filter P`y)";
  28.468  by (simp_tac (simpset() addsimps [Filter_def,sfiltersconc]) 1);
  28.469  qed"FilterConc";
  28.470  
  28.471 @@ -568,24 +568,24 @@
  28.472  
  28.473  section "Map";
  28.474  
  28.475 -goal thy "Map f`(Map g`s) = Map (f o g)`s";
  28.476 +Goal "Map f`(Map g`s) = Map (f o g)`s";
  28.477  by (Seq_induct_tac "s" [] 1);
  28.478  qed"MapMap";
  28.479  
  28.480 -goal thy "Map f`(x@@y) = (Map f`x) @@ (Map f`y)";
  28.481 +Goal "Map f`(x@@y) = (Map f`x) @@ (Map f`y)";
  28.482  by (Seq_induct_tac "x" [] 1);
  28.483  qed"MapConc";
  28.484  
  28.485 -goal thy "Filter P`(Map f`x) = Map f`(Filter (P o f)`x)";
  28.486 +Goal "Filter P`(Map f`x) = Map f`(Filter (P o f)`x)";
  28.487  by (Seq_induct_tac "x" [] 1);
  28.488  qed"MapFilter";
  28.489  
  28.490 -goal thy "nil = (Map f`s) --> s= nil";
  28.491 +Goal "nil = (Map f`s) --> s= nil";
  28.492  by (Seq_case_simp_tac "s" 1);
  28.493  qed"nilMap";
  28.494  
  28.495  
  28.496 -goal thy "Forall P (Map f`s) = Forall (P o f) s";
  28.497 +Goal "Forall P (Map f`s) = Forall (P o f) s";
  28.498  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.499  qed"ForallMap";
  28.500  
  28.501 @@ -597,30 +597,30 @@
  28.502  section "Forall";
  28.503  
  28.504  
  28.505 -goal thy "Forall P ys & (! x. P x --> Q x) \
  28.506 +Goal "Forall P ys & (! x. P x --> Q x) \
  28.507  \         --> Forall Q ys";
  28.508  by (Seq_induct_tac "ys" [Forall_def,sforall_def] 1);
  28.509  qed"ForallPForallQ1";
  28.510  
  28.511  bind_thm ("ForallPForallQ",impI RSN (2,allI RSN (2,conjI RS (ForallPForallQ1 RS mp))));
  28.512  
  28.513 -goal thy "(Forall P x & Forall P y) --> Forall P (x @@ y)";
  28.514 +Goal "(Forall P x & Forall P y) --> Forall P (x @@ y)";
  28.515  by (Seq_induct_tac "x" [Forall_def,sforall_def] 1);
  28.516  qed"Forall_Conc_impl";
  28.517  
  28.518 -goal thy "!! x. Finite x ==> Forall P (x @@ y) = (Forall P x & Forall P y)";
  28.519 +Goal "!! x. Finite x ==> Forall P (x @@ y) = (Forall P x & Forall P y)";
  28.520  by (Seq_Finite_induct_tac  1);
  28.521  qed"Forall_Conc";
  28.522  
  28.523  Addsimps [Forall_Conc];
  28.524  
  28.525 -goal thy "Forall P s  --> Forall P (TL`s)";
  28.526 +Goal "Forall P s  --> Forall P (TL`s)";
  28.527  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.528  qed"ForallTL1";
  28.529  
  28.530  bind_thm ("ForallTL",ForallTL1 RS mp);
  28.531  
  28.532 -goal thy "Forall P s  --> Forall P (Dropwhile Q`s)";
  28.533 +Goal "Forall P s  --> Forall P (Dropwhile Q`s)";
  28.534  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.535  qed"ForallDropwhile1";
  28.536  
  28.537 @@ -629,7 +629,7 @@
  28.538  
  28.539  (* only admissible in t, not if done in s *)
  28.540  
  28.541 -goal thy "! s. Forall P s --> t<<s --> Forall P t";
  28.542 +Goal "! s. Forall P s --> t<<s --> Forall P t";
  28.543  by (Seq_induct_tac "t" [Forall_def,sforall_def] 1);
  28.544  by (strip_tac 1); 
  28.545  by (Seq_case_simp_tac "sa" 1);
  28.546 @@ -640,12 +640,12 @@
  28.547  bind_thm ("Forall_prefixclosed",Forall_prefix RS spec RS mp RS mp);
  28.548  
  28.549  
  28.550 -goal thy "!! h. [| Finite h; Forall P s; s= h @@ t |] ==> Forall P t";
  28.551 +Goal "!! h. [| Finite h; Forall P s; s= h @@ t |] ==> Forall P t";
  28.552  by Auto_tac;
  28.553  qed"Forall_postfixclosed";
  28.554  
  28.555  
  28.556 -goal thy "((! x. P x --> (Q x = R x)) & Forall P tr) --> Filter Q`tr = Filter R`tr";
  28.557 +Goal "((! x. P x --> (Q x = R x)) & Forall P tr) --> Filter Q`tr = Filter R`tr";
  28.558  by (Seq_induct_tac "tr" [Forall_def,sforall_def] 1);
  28.559  qed"ForallPFilterQR1";
  28.560  
  28.561 @@ -657,12 +657,12 @@
  28.562  section "Forall, Filter";
  28.563  
  28.564  
  28.565 -goal thy "Forall P (Filter P`x)";
  28.566 +Goal "Forall P (Filter P`x)";
  28.567  by (simp_tac (simpset() addsimps [Filter_def,Forall_def,forallPsfilterP]) 1);
  28.568  qed"ForallPFilterP";
  28.569  
  28.570  (* holds also in other direction, then equal to forallPfilterP *)
  28.571 -goal thy "Forall P x --> Filter P`x = x";
  28.572 +Goal "Forall P x --> Filter P`x = x";
  28.573  by (Seq_induct_tac "x" [Forall_def,sforall_def,Filter_def] 1);
  28.574  qed"ForallPFilterPid1";
  28.575  
  28.576 @@ -670,7 +670,7 @@
  28.577  
  28.578  
  28.579  (* holds also in other direction *)
  28.580 -goal thy "!! ys . Finite ys ==> \
  28.581 +Goal "!! ys . Finite ys ==> \
  28.582  \   Forall (%x. ~P x) ys --> Filter P`ys = nil ";
  28.583  by (Seq_Finite_induct_tac 1);
  28.584  qed"ForallnPFilterPnil1";
  28.585 @@ -679,7 +679,7 @@
  28.586  
  28.587  
  28.588  (* holds also in other direction *)
  28.589 -goal thy   "!! P. ~Finite ys & Forall (%x. ~P x) ys \
  28.590 +Goal   "!! P. ~Finite ys & Forall (%x. ~P x) ys \
  28.591  \                  --> Filter P`ys = UU ";
  28.592  by (Seq_induct_tac "ys" [Forall_def,sforall_def] 1);
  28.593  qed"ForallnPFilterPUU1";
  28.594 @@ -689,7 +689,7 @@
  28.595  
  28.596  (* inverse of ForallnPFilterPnil *)
  28.597  
  28.598 -goal thy "!! ys . Filter P`ys = nil --> \
  28.599 +Goal "!! ys . Filter P`ys = nil --> \
  28.600  \   (Forall (%x. ~P x) ys & Finite ys)";
  28.601  by (res_inst_tac[("x","ys")] Seq_induct 1);
  28.602  (* adm *)
  28.603 @@ -706,15 +706,15 @@
  28.604  
  28.605  (* inverse of ForallnPFilterPUU. proved by 2 lemmas because of adm problems *)
  28.606  
  28.607 -goal thy "!! ys. Finite ys ==> Filter P`ys ~= UU";
  28.608 +Goal "!! ys. Finite ys ==> Filter P`ys ~= UU";
  28.609  by (Seq_Finite_induct_tac 1);
  28.610  qed"FilterUU_nFinite_lemma1";
  28.611  
  28.612 -goal thy "~ Forall (%x. ~P x) ys --> Filter P`ys ~= UU";
  28.613 +Goal "~ Forall (%x. ~P x) ys --> Filter P`ys ~= UU";
  28.614  by (Seq_induct_tac "ys" [Forall_def,sforall_def] 1);
  28.615  qed"FilterUU_nFinite_lemma2";
  28.616  
  28.617 -goal thy   "!! P. Filter P`ys = UU ==> \
  28.618 +Goal   "!! P. Filter P`ys = UU ==> \
  28.619  \                (Forall (%x. ~P x) ys  & ~Finite ys)";
  28.620  by (rtac conjI 1);
  28.621  by (cut_inst_tac [] (FilterUU_nFinite_lemma2 RS mp COMP rev_contrapos) 1);
  28.622 @@ -723,14 +723,14 @@
  28.623  qed"FilternPUUForallP";
  28.624  
  28.625  
  28.626 -goal thy  "!! Q P.[| Forall Q ys; Finite ys; !!x. Q x ==> ~P x|] \
  28.627 +Goal  "!! Q P.[| Forall Q ys; Finite ys; !!x. Q x ==> ~P x|] \
  28.628  \   ==> Filter P`ys = nil";
  28.629  by (etac ForallnPFilterPnil 1);
  28.630  by (etac ForallPForallQ 1);
  28.631  by Auto_tac;
  28.632  qed"ForallQFilterPnil";
  28.633  
  28.634 -goal thy "!! Q P. [| ~Finite ys; Forall Q ys;  !!x. Q x ==> ~P x|] \
  28.635 +Goal "!! Q P. [| ~Finite ys; Forall Q ys;  !!x. Q x ==> ~P x|] \
  28.636  \   ==> Filter P`ys = UU ";
  28.637  by (etac ForallnPFilterPUU 1);
  28.638  by (etac ForallPForallQ 1);
  28.639 @@ -744,19 +744,19 @@
  28.640  section "Takewhile, Forall, Filter";
  28.641  
  28.642  
  28.643 -goal thy "Forall P (Takewhile P`x)";
  28.644 +Goal "Forall P (Takewhile P`x)";
  28.645  by (simp_tac (simpset() addsimps [Forall_def,Takewhile_def,sforallPstakewhileP]) 1);
  28.646  qed"ForallPTakewhileP";
  28.647  
  28.648  
  28.649 -goal thy"!! P. [| !!x. Q x==> P x |] ==> Forall P (Takewhile Q`x)";
  28.650 +Goal"!! P. [| !!x. Q x==> P x |] ==> Forall P (Takewhile Q`x)";
  28.651  by (rtac ForallPForallQ 1);
  28.652  by (rtac ForallPTakewhileP 1);
  28.653  by Auto_tac;
  28.654  qed"ForallPTakewhileQ";
  28.655  
  28.656  
  28.657 -goal thy  "!! Q P.[| Finite (Takewhile Q`ys); !!x. Q x ==> ~P x |] \
  28.658 +Goal  "!! Q P.[| Finite (Takewhile Q`ys); !!x. Q x ==> ~P x |] \
  28.659  \   ==> Filter P`(Takewhile Q`ys) = nil";
  28.660  by (etac ForallnPFilterPnil 1);
  28.661  by (rtac ForallPForallQ 1);
  28.662 @@ -764,7 +764,7 @@
  28.663  by Auto_tac;
  28.664  qed"FilterPTakewhileQnil";
  28.665  
  28.666 -goal thy "!! Q P. [| !!x. Q x ==> P x |] ==> \
  28.667 +Goal "!! Q P. [| !!x. Q x ==> P x |] ==> \
  28.668  \            Filter P`(Takewhile Q`ys) = (Takewhile Q`ys)";
  28.669  by (rtac ForallPFilterPid 1);
  28.670  by (rtac ForallPForallQ 1);
  28.671 @@ -775,28 +775,28 @@
  28.672  Addsimps [ForallPTakewhileP,ForallPTakewhileQ,
  28.673            FilterPTakewhileQnil,FilterPTakewhileQid];
  28.674  
  28.675 -goal thy "Takewhile P`(Takewhile P`s) = Takewhile P`s";
  28.676 +Goal "Takewhile P`(Takewhile P`s) = Takewhile P`s";
  28.677  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.678  qed"Takewhile_idempotent";
  28.679  
  28.680 -goal thy "Forall P s --> Takewhile (%x. Q x | (~P x))`s = Takewhile Q`s";
  28.681 +Goal "Forall P s --> Takewhile (%x. Q x | (~P x))`s = Takewhile Q`s";
  28.682  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.683  qed"ForallPTakewhileQnP";
  28.684  
  28.685 -goal thy "Forall P s --> Dropwhile (%x. Q x | (~P x))`s = Dropwhile Q`s";
  28.686 +Goal "Forall P s --> Dropwhile (%x. Q x | (~P x))`s = Dropwhile Q`s";
  28.687  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.688  qed"ForallPDropwhileQnP";
  28.689  
  28.690  Addsimps [ForallPTakewhileQnP RS mp, ForallPDropwhileQnP RS mp];
  28.691  
  28.692  
  28.693 -goal thy "Forall P s --> Takewhile P`(s @@ t) = s @@ (Takewhile P`t)";
  28.694 +Goal "Forall P s --> Takewhile P`(s @@ t) = s @@ (Takewhile P`t)";
  28.695  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.696  qed"TakewhileConc1";
  28.697  
  28.698  bind_thm("TakewhileConc",TakewhileConc1 RS mp);
  28.699  
  28.700 -goal thy "!! s. Finite s ==> Forall P s --> Dropwhile P`(s @@ t) = Dropwhile P`t";
  28.701 +Goal "!! s. Finite s ==> Forall P s --> Dropwhile P`(s @@ t) = Dropwhile P`t";
  28.702  by (Seq_Finite_induct_tac 1);
  28.703  qed"DropwhileConc1";
  28.704  
  28.705 @@ -809,7 +809,7 @@
  28.706  section "coinductive characterizations of Filter";
  28.707  
  28.708  
  28.709 -goal thy "HD`(Filter P`y) = Def x \
  28.710 +Goal "HD`(Filter P`y) = Def x \
  28.711  \         --> y = ((Takewhile (%x. ~P x)`y) @@ (x >> TL`(Dropwhile (%a.~P a)`y)))  \
  28.712  \             & Finite (Takewhile (%x. ~ P x)`y)  & P x";
  28.713  
  28.714 @@ -825,7 +825,7 @@
  28.715  by (Asm_full_simp_tac 1); 
  28.716  qed"divide_Seq_lemma";
  28.717  
  28.718 -goal thy "!! x. (x>>xs) << Filter P`y  \
  28.719 +Goal "!! x. (x>>xs) << Filter P`y  \
  28.720  \   ==> y = ((Takewhile (%a. ~ P a)`y) @@ (x >> TL`(Dropwhile (%a.~P a)`y))) \
  28.721  \      & Finite (Takewhile (%a. ~ P a)`y)  & P x";
  28.722  by (rtac (divide_Seq_lemma RS mp) 1);
  28.723 @@ -834,14 +834,14 @@
  28.724  qed"divide_Seq";
  28.725  
  28.726   
  28.727 -goal thy "~Forall P y --> (? x. HD`(Filter (%a. ~P a)`y) = Def x)";
  28.728 +Goal "~Forall P y --> (? x. HD`(Filter (%a. ~P a)`y) = Def x)";
  28.729  (* Pay attention: is only admissible with chain-finite package to be added to 
  28.730          adm test *)
  28.731  by (Seq_induct_tac "y" [Forall_def,sforall_def] 1);
  28.732  qed"nForall_HDFilter";
  28.733  
  28.734  
  28.735 -goal thy "!!y. ~Forall P y  \
  28.736 +Goal "!!y. ~Forall P y  \
  28.737  \  ==> ? x. y= (Takewhile P`y @@ (x >> TL`(Dropwhile P`y))) & \
  28.738  \      Finite (Takewhile P`y) & (~ P x)";
  28.739  by (dtac (nForall_HDFilter RS mp) 1);
  28.740 @@ -852,7 +852,7 @@
  28.741  qed"divide_Seq2";
  28.742  
  28.743  
  28.744 -goal thy  "!! y. ~Forall P y \
  28.745 +Goal  "!! y. ~Forall P y \
  28.746  \  ==> ? x bs rs. y= (bs @@ (x>>rs)) & Finite bs & Forall P bs & (~ P x)";
  28.747  by (cut_inst_tac [] divide_Seq2 1);
  28.748  (*Auto_tac no longer proves it*)
  28.749 @@ -867,13 +867,13 @@
  28.750  
  28.751  section "take_lemma";
  28.752  
  28.753 -goal thy "(!n. seq_take n`x = seq_take n`x') = (x = x')";
  28.754 +Goal "(!n. seq_take n`x = seq_take n`x') = (x = x')";
  28.755  by (rtac iffI 1);
  28.756  by (resolve_tac seq.take_lemmas 1);
  28.757  by Auto_tac;
  28.758  qed"seq_take_lemma";
  28.759  
  28.760 -goal thy 
  28.761 +Goal 
  28.762  "  ! n. ((! k. k < n --> seq_take k`y1 = seq_take k`y2) \
  28.763  \   --> seq_take n`(x @@ (t>>y1)) =  seq_take n`(x @@ (t>>y2)))";
  28.764  by (Seq_induct_tac "x" [] 1);
  28.765 @@ -885,7 +885,7 @@
  28.766  qed"take_reduction1";
  28.767  
  28.768  
  28.769 -goal thy "!! n.[| x=y; s=t;!! k. k<n ==> seq_take k`y1 = seq_take k`y2|] \
  28.770 +Goal "!! n.[| x=y; s=t;!! k. k<n ==> seq_take k`y1 = seq_take k`y2|] \
  28.771  \ ==> seq_take n`(x @@ (s>>y1)) =  seq_take n`(y @@ (t>>y2))";
  28.772  
  28.773  by (auto_tac (claset() addSIs [take_reduction1 RS spec RS mp],simpset()));
  28.774 @@ -895,7 +895,7 @@
  28.775            take-lemma and take_reduction for << instead of = 
  28.776     ------------------------------------------------------------------ *)
  28.777  
  28.778 -goal thy 
  28.779 +Goal 
  28.780  "  ! n. ((! k. k < n --> seq_take k`y1 << seq_take k`y2) \
  28.781  \   --> seq_take n`(x @@ (t>>y1)) <<  seq_take n`(x @@ (t>>y2)))";
  28.782  by (Seq_induct_tac "x" [] 1);
  28.783 @@ -907,7 +907,7 @@
  28.784  qed"take_reduction_less1";
  28.785  
  28.786  
  28.787 -goal thy "!! n.[| x=y; s=t;!! k. k<n ==> seq_take k`y1 << seq_take k`y2|] \
  28.788 +Goal "!! n.[| x=y; s=t;!! k. k<n ==> seq_take k`y1 << seq_take k`y2|] \
  28.789  \ ==> seq_take n`(x @@ (s>>y1)) <<  seq_take n`(y @@ (t>>y2))";
  28.790  by (auto_tac (claset() addSIs [take_reduction_less1 RS spec RS mp],simpset()));
  28.791  qed"take_reduction_less";
  28.792 @@ -931,7 +931,7 @@
  28.793  qed"take_lemma_less1";
  28.794  
  28.795  
  28.796 -goal thy "(!n. seq_take n`x << seq_take n`x') = (x << x')";
  28.797 +Goal "(!n. seq_take n`x << seq_take n`x') = (x << x')";
  28.798  by (rtac iffI 1);
  28.799  by (rtac take_lemma_less1 1);
  28.800  by Auto_tac;
  28.801 @@ -942,7 +942,7 @@
  28.802            take-lemma proof principles
  28.803     ------------------------------------------------------------------ *)
  28.804  
  28.805 -goal thy "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.806 +Goal "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.807  \           !! s1 s2 y. [| Forall Q s1; Finite s1; ~ Q y; A (s1 @@ y>>s2)|] \
  28.808  \                         ==> (f (s1 @@ y>>s2)) = (g (s1 @@ y>>s2)) |] \
  28.809  \              ==> A x --> (f x)=(g x)";
  28.810 @@ -950,7 +950,7 @@
  28.811  by (auto_tac (claset() addSDs [divide_Seq3],simpset()));
  28.812  qed"take_lemma_principle1";
  28.813  
  28.814 -goal thy "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.815 +Goal "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.816  \           !! s1 s2 y. [| Forall Q s1; Finite s1; ~ Q y; A (s1 @@ y>>s2)|] \
  28.817  \                         ==> ! n. seq_take n`(f (s1 @@ y>>s2)) \
  28.818  \                                = seq_take n`(g (s1 @@ y>>s2)) |] \
  28.819 @@ -970,7 +970,7 @@
  28.820           to be imbuilt into the rule, as induction has to be done early and the take lemma 
  28.821           has to be used in the trivial direction afterwards for the (Forall Q x) case.  *)
  28.822  
  28.823 -goal thy 
  28.824 +Goal 
  28.825  "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.826  \        !! s1 s2 y n. [| ! t. A t --> seq_take n`(f t) = seq_take n`(g t);\
  28.827  \                         Forall Q s1; Finite s1; ~ Q y; A (s1 @@ y>>s2) |] \
  28.828 @@ -992,7 +992,7 @@
  28.829  qed"take_lemma_induct";
  28.830  
  28.831  
  28.832 -goal thy 
  28.833 +Goal 
  28.834  "!! Q. [|!! s. [| Forall Q s; A s |] ==> (f s) = (g s) ; \
  28.835  \        !! s1 s2 y n. [| ! t m. m < n --> A t --> seq_take m`(f t) = seq_take m`(g t);\
  28.836  \                         Forall Q s1; Finite s1; ~ Q y; A (s1 @@ y>>s2) |] \
  28.837 @@ -1044,7 +1044,7 @@
  28.838  end;
  28.839  
  28.840  
  28.841 -goal thy 
  28.842 +Goal 
  28.843  "!! Q. [|!! s h1 h2. [| Forall Q s; A s h1 h2|] ==> (f s h1 h2) = (g s h1 h2) ; \
  28.844  \  !! s1 s2 y n. [| ! t h1 h2 m. m < n --> (A t h1 h2) --> seq_take m`(f t h1 h2) = seq_take m`(g t h1 h2);\
  28.845  \                         Forall Q s1; Finite s1; ~ Q y; A (s1 @@ y>>s2) h1 h2|] \
  28.846 @@ -1068,7 +1068,7 @@
  28.847  
  28.848  
  28.849  
  28.850 -goal thy 
  28.851 +Goal 
  28.852  "!! Q. [|!! s. Forall Q s ==> P ((f s) = (g s)) ; \
  28.853  \        !! s1 s2 y n. [| ! t m. m < n --> P (seq_take m`(f t) = seq_take m`(g t));\
  28.854  \                         Forall Q s1; Finite s1; ~ Q y|] \
  28.855 @@ -1097,7 +1097,7 @@
  28.856  *)
  28.857  
  28.858  
  28.859 -goal thy 
  28.860 +Goal 
  28.861  "!! Q. [| A UU  ==> (f UU) = (g UU) ; \
  28.862  \         A nil ==> (f nil) = (g nil) ; \
  28.863  \         !! s y n. [| ! t. A t --> seq_take n`(f t) = seq_take n`(g t);\
  28.864 @@ -1131,27 +1131,27 @@
  28.865  
  28.866  (* In general: How to do this case without the same adm problems 
  28.867     as for the entire proof ? *) 
  28.868 -goal thy "Forall (%x.~(P x & Q x)) s \
  28.869 +Goal "Forall (%x.~(P x & Q x)) s \
  28.870  \         --> Filter P`(Filter Q`s) =\
  28.871  \             Filter (%x. P x & Q x)`s";
  28.872  
  28.873  by (Seq_induct_tac "s" [Forall_def,sforall_def] 1);
  28.874  qed"Filter_lemma1";
  28.875  
  28.876 -goal thy "!! s. Finite s ==>  \
  28.877 +Goal "!! s. Finite s ==>  \
  28.878  \         (Forall (%x. (~P x) | (~ Q x)) s  \
  28.879  \         --> Filter P`(Filter Q`s) = nil)";
  28.880  by (Seq_Finite_induct_tac 1);
  28.881  qed"Filter_lemma2";
  28.882  
  28.883 -goal thy "!! s. Finite s ==>  \
  28.884 +Goal "!! s. Finite s ==>  \
  28.885  \         Forall (%x. (~P x) | (~ Q x)) s  \
  28.886  \         --> Filter (%x. P x & Q x)`s = nil";
  28.887  by (Seq_Finite_induct_tac 1);
  28.888  qed"Filter_lemma3";
  28.889  
  28.890  
  28.891 -goal thy "Filter P`(Filter Q`s) = Filter (%x. P x & Q x)`s";
  28.892 +Goal "Filter P`(Filter Q`s) = Filter (%x. P x & Q x)`s";
  28.893  by (res_inst_tac [("A1","%x. True") 
  28.894                   ,("Q1","%x.~(P x & Q x)"),("x1","s")]
  28.895                   (take_lemma_induct RS mp) 1);
  28.896 @@ -1170,7 +1170,7 @@
  28.897  
  28.898  
  28.899  
  28.900 -goal thy "Map f`(x@@y) = (Map f`x) @@ (Map f`y)";
  28.901 +Goal "Map f`(x@@y) = (Map f`x) @@ (Map f`y)";
  28.902  by (res_inst_tac [("A1","%x. True"), ("x1","x")]
  28.903      (take_lemma_in_eq_out RS mp) 1);
  28.904  by Auto_tac;
    29.1 --- a/src/HOLCF/IOA/meta_theory/ShortExecutions.ML	Mon Jun 22 17:12:27 1998 +0200
    29.2 +++ b/src/HOLCF/IOA/meta_theory/ShortExecutions.ML	Mon Jun 22 17:13:09 1998 +0200
    29.3 @@ -34,17 +34,17 @@
    29.4  \      )\
    29.5  \    )");
    29.6  
    29.7 -goal thy "oraclebuild P`sch`UU = UU";
    29.8 +Goal "oraclebuild P`sch`UU = UU";
    29.9  by (stac oraclebuild_unfold 1);
   29.10  by (Simp_tac 1);
   29.11  qed"oraclebuild_UU";
   29.12  
   29.13 -goal thy "oraclebuild P`sch`nil = nil";
   29.14 +Goal "oraclebuild P`sch`nil = nil";
   29.15  by (stac oraclebuild_unfold 1);
   29.16  by (Simp_tac 1);
   29.17  qed"oraclebuild_nil";
   29.18  
   29.19 -goal thy "oraclebuild P`s`(x>>t) = \
   29.20 +Goal "oraclebuild P`s`(x>>t) = \
   29.21  \         (Takewhile (%a.~ P a)`s)   \
   29.22  \          @@ (x>>(oraclebuild P`(TL`(Dropwhile (%a.~ P a)`s))`t))";     
   29.23  by (rtac trans 1);
   29.24 @@ -60,7 +60,7 @@
   29.25                     section "Cut rewrite rules";
   29.26  (* ---------------------------------------------------------------- *)
   29.27  
   29.28 -goalw thy [Cut_def]
   29.29 +Goalw [Cut_def]
   29.30  "!! s. [| Forall (%a.~ P a) s; Finite s|] \
   29.31  \           ==> Cut P s =nil";
   29.32  by (subgoal_tac "Filter P`s = nil" 1);
   29.33 @@ -69,7 +69,7 @@
   29.34  by (REPEAT (atac 1));
   29.35  qed"Cut_nil";
   29.36  
   29.37 -goalw thy [Cut_def]
   29.38 +Goalw [Cut_def]
   29.39  "!! s. [| Forall (%a.~ P a) s; ~Finite s|] \
   29.40  \           ==> Cut P s =UU";
   29.41  by (subgoal_tac "Filter P`s= UU" 1);
   29.42 @@ -78,7 +78,7 @@
   29.43  by (REPEAT (atac 1));
   29.44  qed"Cut_UU";
   29.45  
   29.46 -goalw thy [Cut_def]
   29.47 +Goalw [Cut_def]
   29.48  "!! s. [| P t;  Forall (%x.~ P x) ss; Finite ss|] \
   29.49  \           ==> Cut P (ss @@ (t>> rs)) \
   29.50  \                = ss @@ (t >> Cut P rs)";
   29.51 @@ -93,7 +93,7 @@
   29.52  (* ---------------------------------------------------------------- *)
   29.53  
   29.54  
   29.55 -goal thy "Filter P`s = Filter P`(Cut P s)";
   29.56 +Goal "Filter P`s = Filter P`(Cut P s)";
   29.57  
   29.58  by (res_inst_tac [("A1","%x. True")
   29.59                   ,("Q1","%x.~ P x"), ("x1","s")]
   29.60 @@ -110,7 +110,7 @@
   29.61  qed"FilterCut";
   29.62  
   29.63  
   29.64 -goal thy "Cut P (Cut P s) = (Cut P s)";
   29.65 +Goal "Cut P (Cut P s) = (Cut P s)";
   29.66  
   29.67  by (res_inst_tac [("A1","%x. True")
   29.68                   ,("Q1","%x.~ P x"), ("x1","s")]
   29.69 @@ -128,7 +128,7 @@
   29.70  qed"Cut_idemp";
   29.71  
   29.72  
   29.73 -goal thy "Map f`(Cut (P o f) s) = Cut P (Map f`s)";
   29.74 +Goal "Map f`(Cut (P o f) s) = Cut P (Map f`s)";
   29.75  
   29.76  by (res_inst_tac [("A1","%x. True")
   29.77                   ,("Q1","%x.~ P (f x)"), ("x1","s")]
   29.78 @@ -152,7 +152,7 @@
   29.79  qed"MapCut";
   29.80  
   29.81  
   29.82 -goal thy "~Finite s --> Cut P s << s";
   29.83 +Goal "~Finite s --> Cut P s << s";
   29.84  by (strip_tac 1);
   29.85  by (rtac (take_lemma_less RS iffD1) 1);
   29.86  by (strip_tac 1);
   29.87 @@ -181,7 +181,7 @@
   29.88  
   29.89  (*
   29.90  
   29.91 -goal thy "Finite s --> (? y. s = Cut P s @@ y)";
   29.92 +Goal "Finite s --> (? y. s = Cut P s @@ y)";
   29.93  by (strip_tac 1);
   29.94  by (rtac exI 1);
   29.95  by (resolve_tac seq.take_lemmas 1);
   29.96 @@ -209,7 +209,7 @@
   29.97  
   29.98  
   29.99  
  29.100 -goal thy "!!ex .is_exec_frag A (s,ex) ==> is_exec_frag A (s,Cut P ex)";
  29.101 +Goal "!!ex .is_exec_frag A (s,ex) ==> is_exec_frag A (s,Cut P ex)";
  29.102  by (case_tac "Finite ex" 1);
  29.103  by (cut_inst_tac [("s","ex"),("P","P")] Cut_prefixcl_Finite 1);
  29.104  by (assume_tac 1);
  29.105 @@ -229,7 +229,7 @@
  29.106  
  29.107  
  29.108  
  29.109 -goalw thy [schedules_def,has_schedule_def]
  29.110 +Goalw [schedules_def,has_schedule_def]
  29.111   "!! sch. [|sch : schedules A ; tr = Filter (%a. a:ext A)`sch|] \
  29.112  \   ==> ? sch. sch : schedules A & \
  29.113  \              tr = Filter (%a. a:ext A)`sch &\
  29.114 @@ -268,7 +268,7 @@
  29.115                     section "Further Cut lemmas";
  29.116  (* ---------------------------------------------------------------- *)
  29.117  
  29.118 -goalw  thy [LastActExtsch_def]
  29.119 +Goalw [LastActExtsch_def]
  29.120    "!! A. [| LastActExtsch A sch; Filter (%x. x:ext A)`sch = nil |] \
  29.121  \   ==> sch=nil";
  29.122  by (dtac FilternPnilForallP 1);
  29.123 @@ -278,7 +278,7 @@
  29.124  by (Asm_full_simp_tac 1);
  29.125  qed"LastActExtimplnil";
  29.126  
  29.127 -goalw  thy [LastActExtsch_def]
  29.128 +Goalw [LastActExtsch_def]
  29.129    "!! A. [| LastActExtsch A sch; Filter (%x. x:ext A)`sch = UU |] \
  29.130  \   ==> sch=UU";
  29.131  by (dtac FilternPUUForallP 1);
    30.1 --- a/src/HOLCF/IOA/meta_theory/SimCorrectness.ML	Mon Jun 22 17:12:27 1998 +0200
    30.2 +++ b/src/HOLCF/IOA/meta_theory/SimCorrectness.ML	Mon Jun 22 17:13:09 1998 +0200
    30.3 @@ -18,7 +18,7 @@
    30.4  (* ---------------------------------------------------------------- *)
    30.5  
    30.6  
    30.7 -goal thy "corresp_ex_simC A R  = (LAM ex. (%s. case ex of \
    30.8 +Goal "corresp_ex_simC A R  = (LAM ex. (%s. case ex of \
    30.9  \      nil =>  nil   \
   30.10  \    | x##xs => (flift1 (%pr. let a = (fst pr); t = (snd pr); \
   30.11  \                                 T' = @t'. ? ex1. (t,t'):R & move A ex1 s a t' \
   30.12 @@ -33,17 +33,17 @@
   30.13  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   30.14  qed"corresp_ex_simC_unfold";
   30.15  
   30.16 -goal thy "(corresp_ex_simC A R`UU) s=UU";
   30.17 +Goal "(corresp_ex_simC A R`UU) s=UU";
   30.18  by (stac corresp_ex_simC_unfold 1);
   30.19  by (Simp_tac 1);
   30.20  qed"corresp_ex_simC_UU";
   30.21  
   30.22 -goal thy "(corresp_ex_simC A R`nil) s = nil";
   30.23 +Goal "(corresp_ex_simC A R`nil) s = nil";
   30.24  by (stac corresp_ex_simC_unfold 1);
   30.25  by (Simp_tac 1);
   30.26  qed"corresp_ex_simC_nil";
   30.27  
   30.28 -goal thy "(corresp_ex_simC A R`((a,t)>>xs)) s = \
   30.29 +Goal "(corresp_ex_simC A R`((a,t)>>xs)) s = \
   30.30  \          (let T' = @t'. ? ex1. (t,t'):R & move A ex1 s a t' \
   30.31  \           in  \
   30.32  \            (@cex. move A cex s a T')  \ 
   30.33 @@ -68,7 +68,7 @@
   30.34  
   30.35  Delsimps [Let_def];
   30.36  
   30.37 -goalw thy [is_simulation_def]
   30.38 +Goalw [is_simulation_def]
   30.39     "!!f. [|is_simulation R C A; reachable C s; s -a--C-> t; (s,s'):R|] ==>\
   30.40  \     let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.41  \     (t,T'): R & move A (@ex2. move A ex2 s' a T') s' a T'";
   30.42 @@ -98,7 +98,7 @@
   30.43  
   30.44  Addsimps [Let_def];
   30.45  
   30.46 -goal thy
   30.47 +Goal
   30.48     "!!f. [|is_simulation R C A; reachable C s; s-a--C-> t; (s,s'):R|] ==>\
   30.49  \   let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.50  \    is_exec_frag A (s',@x. move A x s' a T')";
   30.51 @@ -107,7 +107,7 @@
   30.52  by (asm_full_simp_tac (simpset() addsimps [move_def,Let_def]) 1);
   30.53  qed"move_subprop1_sim";
   30.54  
   30.55 -goal thy
   30.56 +Goal
   30.57     "!!f. [|is_simulation R C A; reachable C s; s-a--C-> t; (s,s'):R|] ==>\
   30.58  \   let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.59  \   Finite (@x. move A x s' a T')";
   30.60 @@ -116,7 +116,7 @@
   30.61  by (asm_full_simp_tac (simpset() addsimps [move_def,Let_def]) 1);
   30.62  qed"move_subprop2_sim";
   30.63  
   30.64 -goal thy
   30.65 +Goal
   30.66     "!!f. [|is_simulation R C A; reachable C s; s-a--C-> t; (s,s'):R|] ==>\
   30.67  \   let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.68  \    laststate (s',@x. move A x s' a T') = T'";
   30.69 @@ -125,7 +125,7 @@
   30.70  by (asm_full_simp_tac (simpset() addsimps [move_def,Let_def]) 1);
   30.71  qed"move_subprop3_sim";
   30.72  
   30.73 -goal thy
   30.74 +Goal
   30.75     "!!f. [|is_simulation R C A; reachable C s; s-a--C-> t; (s,s'):R|] ==>\
   30.76  \   let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.77  \     mk_trace A`((@x. move A x s' a T')) = \
   30.78 @@ -135,7 +135,7 @@
   30.79  by (asm_full_simp_tac (simpset() addsimps [move_def,Let_def]) 1);
   30.80  qed"move_subprop4_sim";
   30.81  
   30.82 -goal thy
   30.83 +Goal
   30.84     "!!f. [|is_simulation R C A; reachable C s; s-a--C-> t; (s,s'):R|] ==>\
   30.85  \   let T' = @t'. ? ex1. (t,t'):R & move A ex1 s' a t' in \
   30.86  \     (t,T'):R";
   30.87 @@ -157,7 +157,7 @@
   30.88     ------------------------------------------------------- *)
   30.89  
   30.90  Delsplits[split_if];
   30.91 -goal thy 
   30.92 +Goal 
   30.93    "!!f.[|is_simulation R C A; ext C = ext A|] ==>  \     
   30.94  \        !s s'. reachable C s & is_exec_frag C (s,ex) & (s,s'): R --> \
   30.95  \            mk_trace C`ex = mk_trace A`((corresp_ex_simC A R`ex) s')";
   30.96 @@ -187,7 +187,7 @@
   30.97  (* ----------------------------------------------------------- *)
   30.98  
   30.99  
  30.100 -goal thy 
  30.101 +Goal 
  30.102   "!!f.[| is_simulation R C A |] ==>\
  30.103  \ !s s'. reachable C s & is_exec_frag C (s,ex) & (s,s'):R  \
  30.104  \ --> is_exec_frag A (s',(corresp_ex_simC A R`ex) s')"; 
  30.105 @@ -239,7 +239,7 @@
  30.106       traces_coincide_sim, the second for the start state case. 
  30.107       S':= @s'. (s,s'):R & s':starts_of A, where s:starts_of C  *)
  30.108  
  30.109 -goal thy 
  30.110 +Goal 
  30.111  "!!C. [| is_simulation R C A; s:starts_of C |] \
  30.112  \ ==> let S' = @s'. (s,s'):R & s':starts_of A in \
  30.113  \     (s,S'):R & S':starts_of A";
  30.114 @@ -258,7 +258,7 @@
  30.115  bind_thm("sim_starts2",(rewrite_rule [Let_def] simulation_starts) RS conjunct2);
  30.116  
  30.117  
  30.118 -goalw thy [traces_def]
  30.119 +Goalw [traces_def]
  30.120    "!!f. [| ext C = ext A; is_simulation R C A |] \
  30.121  \          ==> traces C <= traces A"; 
  30.122  
    31.1 --- a/src/HOLCF/IOA/meta_theory/Simulations.ML	Mon Jun 22 17:12:27 1998 +0200
    31.2 +++ b/src/HOLCF/IOA/meta_theory/Simulations.ML	Mon Jun 22 17:13:09 1998 +0200
    31.3 @@ -8,17 +8,17 @@
    31.4  
    31.5  
    31.6  
    31.7 -goal thy "(A~={}) = (? x. x:A)";
    31.8 +Goal "(A~={}) = (? x. x:A)";
    31.9  by (safe_tac set_cs);
   31.10  auto();
   31.11  qed"set_non_empty";
   31.12  
   31.13 -goal thy "(A Int B ~= {}) = (? x. x: A & x:B)";
   31.14 +Goal "(A Int B ~= {}) = (? x. x: A & x:B)";
   31.15  by (simp_tac (simpset() addsimps [set_non_empty]) 1);
   31.16  qed"Int_non_empty";
   31.17  
   31.18  
   31.19 -goalw thy [Image_def]
   31.20 +Goalw [Image_def]
   31.21  "(R^^{x} Int S ~= {}) = (? y. (x,y):R & y:S)";
   31.22  by (simp_tac (simpset() addsimps [Int_non_empty]) 1);
   31.23  qed"Sim_start_convert";
   31.24 @@ -26,7 +26,7 @@
   31.25  Addsimps [Sim_start_convert];
   31.26  
   31.27  
   31.28 -goalw thy [is_ref_map_def,is_simulation_def]
   31.29 +Goalw [is_ref_map_def,is_simulation_def]
   31.30  "!! f. is_ref_map f C A ==> is_simulation {p. (snd p) = f (fst p)} C A";
   31.31  (* start states *)
   31.32  by (Asm_full_simp_tac 1);
    32.1 --- a/src/HOLCF/IOA/meta_theory/TL.ML	Mon Jun 22 17:12:27 1998 +0200
    32.2 +++ b/src/HOLCF/IOA/meta_theory/TL.ML	Mon Jun 22 17:13:09 1998 +0200
    32.3 @@ -7,24 +7,24 @@
    32.4  *)   
    32.5  
    32.6  
    32.7 -goal thy "[] <> (.~ P) = (.~ <> [] P)";
    32.8 +Goal "[] <> (.~ P) = (.~ <> [] P)";
    32.9  br ext 1;
   32.10  by (simp_tac (simpset() addsimps [Diamond_def,NOT_def,Box_def])1);
   32.11  auto();
   32.12  qed"simple_try";
   32.13  
   32.14 -goal thy "nil |= [] P";
   32.15 +Goal "nil |= [] P";
   32.16  by (asm_full_simp_tac (simpset() addsimps [satisfies_def,
   32.17       Box_def,tsuffix_def,suffix_def,nil_is_Conc])1);
   32.18  qed"Boxnil";
   32.19  
   32.20 -goal thy "~(nil |= <> P)";
   32.21 +Goal "~(nil |= <> P)";
   32.22  by (simp_tac (simpset() addsimps [Diamond_def,satisfies_def,NOT_def])1);
   32.23  by (cut_inst_tac [] Boxnil 1);
   32.24  by (asm_full_simp_tac (simpset() addsimps [satisfies_def])1);
   32.25  qed"Diamondnil";
   32.26  
   32.27 -goal thy "(<> F) s = (? s2. tsuffix s2 s & F s2)";
   32.28 +Goal "(<> F) s = (? s2. tsuffix s2 s & F s2)";
   32.29  by (simp_tac (simpset() addsimps [Diamond_def,NOT_def,Box_def])1);
   32.30  qed"Diamond_def2";
   32.31  
   32.32 @@ -36,13 +36,13 @@
   32.33  (*                 TLA Axiomatization by Merz                       *)
   32.34  (* ---------------------------------------------------------------- *)
   32.35  
   32.36 -goal thy "suffix s s";
   32.37 +Goal "suffix s s";
   32.38  by (simp_tac (simpset() addsimps [suffix_def])1);
   32.39  by (res_inst_tac [("x","nil")] exI 1);
   32.40  auto();
   32.41  qed"suffix_refl";
   32.42  
   32.43 -goal thy "s~=UU & s~=nil --> (s |= [] F .--> F)";
   32.44 +Goal "s~=UU & s~=nil --> (s |= [] F .--> F)";
   32.45  by (simp_tac (simpset() addsimps [satisfies_def,IMPLIES_def,Box_def])1);
   32.46  by (REPEAT (rtac impI 1));
   32.47  by (eres_inst_tac [("x","s")] allE 1);
   32.48 @@ -50,7 +50,7 @@
   32.49  qed"reflT";
   32.50  
   32.51  
   32.52 -goal thy "!!x. [| suffix y x ; suffix z y |]  ==> suffix z x";
   32.53 +Goal "!!x. [| suffix y x ; suffix z y |]  ==> suffix z x";
   32.54  by (asm_full_simp_tac (simpset() addsimps [suffix_def])1);
   32.55  auto();
   32.56  by (res_inst_tac [("x","s1 @@ s1a")] exI 1);
   32.57 @@ -58,7 +58,7 @@
   32.58  by (simp_tac (simpset() addsimps [Conc_assoc]) 1); 
   32.59  qed"suffix_trans";
   32.60  
   32.61 -goal thy "s |= [] F .--> [] [] F";
   32.62 +Goal "s |= [] F .--> [] [] F";
   32.63  by (simp_tac (simpset() addsimps [satisfies_def,IMPLIES_def,Box_def,tsuffix_def])1);
   32.64  auto();
   32.65  bd suffix_trans 1;
   32.66 @@ -68,13 +68,13 @@
   32.67  qed"transT";
   32.68  
   32.69  
   32.70 -goal thy "s |= [] (F .--> G) .--> [] F .--> [] G";
   32.71 +Goal "s |= [] (F .--> G) .--> [] F .--> [] G";
   32.72  by (simp_tac (simpset() addsimps [satisfies_def,IMPLIES_def,Box_def])1);
   32.73  qed"normalT";
   32.74  
   32.75  
   32.76  (*
   32.77 -goal thy "s |= <> F .& <> G .--> (<> (F .& <> G) .| <> (G .& <> F))";
   32.78 +Goal "s |= <> F .& <> G .--> (<> (F .& <> G) .| <> (G .& <> F))";
   32.79  by (simp_tac (simpset() addsimps [satisfies_def,IMPLIES_def,AND_def,OR_def,Diamond_def2])1);
   32.80  br impI 1;
   32.81  be conjE 1;
   32.82 @@ -84,7 +84,7 @@
   32.83  
   32.84  br disjI1 1;
   32.85  
   32.86 -goal thy "!!s. [| tsuffix s1 s ; tsuffix s2 s|] ==> tsuffix s2 s1 | tsuffix s1 s2";
   32.87 +Goal "!!s. [| tsuffix s1 s ; tsuffix s2 s|] ==> tsuffix s2 s1 | tsuffix s1 s2";
   32.88  by (asm_full_simp_tac (simpset() addsimps [tsuffix_def,suffix_def])1);
   32.89  by (REPEAT (etac conjE 1));
   32.90  by (REPEAT (etac exE 1));
   32.91 @@ -100,15 +100,15 @@
   32.92  (*                      TLA Rules by Lamport                        *)
   32.93  (* ---------------------------------------------------------------- *)
   32.94  
   32.95 -goal thy "!! P. validT P ==> validT ([] P)";
   32.96 +Goal "!! P. validT P ==> validT ([] P)";
   32.97  by (asm_full_simp_tac (simpset() addsimps [validT_def,satisfies_def,Box_def,tsuffix_def])1);
   32.98  qed"STL1a";
   32.99  
  32.100 -goal thy "!! P. valid P ==> validT (Init P)";
  32.101 +Goal "!! P. valid P ==> validT (Init P)";
  32.102  by (asm_full_simp_tac (simpset() addsimps [valid_def,validT_def,satisfies_def,Init_def])1);
  32.103  qed"STL1b";
  32.104  
  32.105 -goal thy "!! P. valid P ==> validT ([] (Init P))";
  32.106 +Goal "!! P. valid P ==> validT ([] (Init P))";
  32.107  br STL1a 1;
  32.108  be STL1b 1;
  32.109  qed"STL1";
  32.110 @@ -116,7 +116,7 @@
  32.111  
  32.112  
  32.113  (* Note that unlift and HD is not at all used !!! *)
  32.114 -goal thy "!! P. valid (P .--> Q)  ==> validT ([] (Init P) .--> [] (Init Q))";
  32.115 +Goal "!! P. valid (P .--> Q)  ==> validT ([] (Init P) .--> [] (Init Q))";
  32.116  by (asm_full_simp_tac (simpset() addsimps [valid_def,validT_def,satisfies_def,IMPLIES_def,Box_def,Init_def])1);
  32.117  qed"STL4";
  32.118  
  32.119 @@ -128,7 +128,7 @@
  32.120  (* ---------------------------------------------------------------- *)
  32.121  
  32.122  
  32.123 -goalw thy [tsuffix_def,suffix_def]
  32.124 +Goalw [tsuffix_def,suffix_def]
  32.125  "s~=UU & s~=nil --> tsuffix s2 (TL`s) --> tsuffix s2 s";
  32.126  auto();
  32.127  by (Seq_case_simp_tac "s" 1);
  32.128 @@ -139,7 +139,7 @@
  32.129  val tsuffix_TL2 = conjI RS tsuffix_TL;
  32.130  
  32.131  Delsplits[split_if];
  32.132 -goalw thy [Next_def,satisfies_def,NOT_def,IMPLIES_def,AND_def,Box_def] 
  32.133 +Goalw [Next_def,satisfies_def,NOT_def,IMPLIES_def,AND_def,Box_def] 
  32.134     "s~=UU & s~=nil --> (s |= [] F .--> (F .& (Next ([] F))))";
  32.135  auto();
  32.136  (* []F .--> F *)
  32.137 @@ -155,22 +155,22 @@
  32.138  Addsplits[split_if];
  32.139  
  32.140  
  32.141 -goalw thy [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.142 +Goalw [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.143      "s |= .~ (Next F) .--> (Next (.~ F))";
  32.144  by (Asm_full_simp_tac 1);
  32.145  qed"LTL2a";
  32.146  
  32.147 -goalw thy [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.148 +Goalw [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.149      "s |= (Next (.~ F)) .--> (.~ (Next F))";
  32.150  by (Asm_full_simp_tac 1);
  32.151  qed"LTL2b";
  32.152  
  32.153 -goalw thy [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.154 +Goalw [Next_def,satisfies_def,NOT_def,IMPLIES_def] 
  32.155  "ex |= (Next (F .--> G)) .--> (Next F) .--> (Next G)";
  32.156  by (Asm_full_simp_tac 1);
  32.157  qed"LTL3";
  32.158  
  32.159 -goalw thy [Next_def,satisfies_def,Box_def,NOT_def,IMPLIES_def] 
  32.160 +Goalw [Next_def,satisfies_def,Box_def,NOT_def,IMPLIES_def] 
  32.161   "s |= [] (F .--> Next F) .--> F .--> []F";
  32.162  by (Asm_full_simp_tac 1);
  32.163  auto();
  32.164 @@ -182,11 +182,11 @@
  32.165  
  32.166  
  32.167  
  32.168 -goal thy "!! P. [| validT (P .--> Q); validT P |] ==> validT Q";
  32.169 +Goal "!! P. [| validT (P .--> Q); validT P |] ==> validT Q";
  32.170  by (asm_full_simp_tac (simpset() addsimps [validT_def,satisfies_def,IMPLIES_def])1);
  32.171  qed"ModusPonens";
  32.172  
  32.173  (* works only if validT is defined without restriction to s~=UU, s~=nil *)
  32.174 -goal thy "!! P. validT P ==> validT (Next P)";
  32.175 +Goal "!! P. validT P ==> validT (Next P)";
  32.176  by (asm_full_simp_tac (simpset() addsimps [validT_def,satisfies_def,Next_def])1);
  32.177  (* qed"NextTauto"; *)
    33.1 --- a/src/HOLCF/IOA/meta_theory/TLS.ML	Mon Jun 22 17:12:27 1998 +0200
    33.2 +++ b/src/HOLCF/IOA/meta_theory/TLS.ML	Mon Jun 22 17:13:09 1998 +0200
    33.3 @@ -17,7 +17,7 @@
    33.4  (*                                 ex2seqC                          *)
    33.5  (* ---------------------------------------------------------------- *)
    33.6  
    33.7 -goal thy "ex2seqC  = (LAM ex. (%s. case ex of \
    33.8 +Goal "ex2seqC  = (LAM ex. (%s. case ex of \
    33.9  \      nil =>  (s,None,s)>>nil   \
   33.10  \    | x##xs => (flift1 (%pr. \
   33.11  \                (s,Some (fst pr), snd pr)>> (ex2seqC`xs) (snd pr))  \
   33.12 @@ -30,17 +30,17 @@
   33.13  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   33.14  qed"ex2seqC_unfold";
   33.15  
   33.16 -goal thy "(ex2seqC `UU) s=UU";
   33.17 +Goal "(ex2seqC `UU) s=UU";
   33.18  by (stac ex2seqC_unfold 1);
   33.19  by (Simp_tac 1);
   33.20  qed"ex2seqC_UU";
   33.21  
   33.22 -goal thy "(ex2seqC `nil) s = (s,None,s)>>nil";
   33.23 +Goal "(ex2seqC `nil) s = (s,None,s)>>nil";
   33.24  by (stac ex2seqC_unfold 1);
   33.25  by (Simp_tac 1);
   33.26  qed"ex2seqC_nil";
   33.27  
   33.28 -goal thy "(ex2seqC `((a,t)>>xs)) s = \
   33.29 +Goal "(ex2seqC `((a,t)>>xs)) s = \
   33.30  \          (s,Some a,t)>> ((ex2seqC`xs) t)";
   33.31  by (rtac trans 1);
   33.32  by (stac ex2seqC_unfold 1);
   33.33 @@ -51,15 +51,15 @@
   33.34  Addsimps [ex2seqC_UU,ex2seqC_nil,ex2seqC_cons];
   33.35  
   33.36  
   33.37 -goal thy "ex2seq (s, UU) = UU";
   33.38 +Goal "ex2seq (s, UU) = UU";
   33.39  by (simp_tac (simpset() addsimps [ex2seq_def]) 1);
   33.40  qed"ex2seq_UU";
   33.41  
   33.42 -goal thy "ex2seq (s, nil) = (s,None,s)>>nil";
   33.43 +Goal "ex2seq (s, nil) = (s,None,s)>>nil";
   33.44  by (simp_tac (simpset() addsimps [ex2seq_def]) 1);
   33.45  qed"ex2seq_nil";
   33.46  
   33.47 -goal thy "ex2seq (s, (a,t)>>ex) = (s,Some a,t) >> ex2seq (t, ex)";
   33.48 +Goal "ex2seq (s, (a,t)>>ex) = (s,Some a,t) >> ex2seq (t, ex)";
   33.49  by (simp_tac (simpset() addsimps [ex2seq_def]) 1);
   33.50  qed"ex2seq_cons";
   33.51  
   33.52 @@ -69,17 +69,17 @@
   33.53  
   33.54  
   33.55  (* FIX: Not true for UU, as ex2seq is defined continously !!!!! *)
   33.56 -goal thy "ex2seq exec ~= UU & ex2seq exec ~= nil";
   33.57 +Goal "ex2seq exec ~= UU & ex2seq exec ~= nil";
   33.58  
   33.59  
   33.60 -goal thy "ex |== [] P .--> P";
   33.61 +Goal "ex |== [] P .--> P";
   33.62  
   33.63  
   33.64  (* ----------------------------------------------------------- *)
   33.65  (*           Interface TL -- TLS                               *)
   33.66  (* ---------------------------------------------------------- *)
   33.67  
   33.68 -goalw thy [Init_def,Next_def,temp_sat_def,satisfies_def,IMPLIES_def,AND_def]
   33.69 +Goalw [Init_def,Next_def,temp_sat_def,satisfies_def,IMPLIES_def,AND_def]
   33.70   "!! s. (P s) & s-a--A-> t --> (Q t) \
   33.71  \  ==> ex |== (Init (%(s,a,t). P s) .& Init (%(s,a,t). s -a--A-> t) \
   33.72  \             .--> (Next (Init (%(s,a,t).Q s))))";
    34.1 --- a/src/HOLCF/IOA/meta_theory/Traces.ML	Mon Jun 22 17:12:27 1998 +0200
    34.2 +++ b/src/HOLCF/IOA/meta_theory/Traces.ML	Mon Jun 22 17:13:09 1998 +0200
    34.3 @@ -26,15 +26,15 @@
    34.4  (* ---------------------------------------------------------------- *)
    34.5  
    34.6  
    34.7 -goal thy  "filter_act`UU = UU";
    34.8 +Goal  "filter_act`UU = UU";
    34.9  by (simp_tac (simpset() addsimps [filter_act_def]) 1);
   34.10  qed"filter_act_UU";
   34.11  
   34.12 -goal thy  "filter_act`nil = nil";
   34.13 +Goal  "filter_act`nil = nil";
   34.14  by (simp_tac (simpset() addsimps [filter_act_def]) 1);
   34.15  qed"filter_act_nil";
   34.16  
   34.17 -goal thy "filter_act`(x>>xs) = (fst x) >> filter_act`xs";
   34.18 +Goal "filter_act`(x>>xs) = (fst x) >> filter_act`xs";
   34.19  by (simp_tac (simpset() addsimps [filter_act_def]) 1);
   34.20  qed"filter_act_cons";
   34.21  
   34.22 @@ -45,15 +45,15 @@
   34.23  (*                             mk_trace                             *)
   34.24  (* ---------------------------------------------------------------- *)
   34.25  
   34.26 -goal thy "mk_trace A`UU=UU";
   34.27 +Goal "mk_trace A`UU=UU";
   34.28  by (simp_tac (simpset() addsimps [mk_trace_def]) 1);
   34.29  qed"mk_trace_UU";
   34.30  
   34.31 -goal thy "mk_trace A`nil=nil";
   34.32 +Goal "mk_trace A`nil=nil";
   34.33  by (simp_tac (simpset() addsimps [mk_trace_def]) 1);
   34.34  qed"mk_trace_nil";
   34.35  
   34.36 -goal thy "mk_trace A`(at >> xs) =    \
   34.37 +Goal "mk_trace A`(at >> xs) =    \
   34.38  \            (if ((fst at):ext A)    \       
   34.39  \                 then (fst at) >> (mk_trace A`xs) \   
   34.40  \                 else mk_trace A`xs)";
   34.41 @@ -68,7 +68,7 @@
   34.42  (* ---------------------------------------------------------------- *)
   34.43  
   34.44  
   34.45 -goal thy "is_exec_fragC A = (LAM ex. (%s. case ex of \
   34.46 +Goal "is_exec_fragC A = (LAM ex. (%s. case ex of \
   34.47  \      nil => TT \
   34.48  \    | x##xs => (flift1 \ 
   34.49  \            (%p. Def ((s,p):trans_of A) andalso (is_exec_fragC A`xs) (snd p)) \
   34.50 @@ -81,17 +81,17 @@
   34.51  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   34.52  qed"is_exec_fragC_unfold";
   34.53  
   34.54 -goal thy "(is_exec_fragC A`UU) s=UU";
   34.55 +Goal "(is_exec_fragC A`UU) s=UU";
   34.56  by (stac is_exec_fragC_unfold 1);
   34.57  by (Simp_tac 1);
   34.58  qed"is_exec_fragC_UU";
   34.59  
   34.60 -goal thy "(is_exec_fragC A`nil) s = TT";
   34.61 +Goal "(is_exec_fragC A`nil) s = TT";
   34.62  by (stac is_exec_fragC_unfold 1);
   34.63  by (Simp_tac 1);
   34.64  qed"is_exec_fragC_nil";
   34.65  
   34.66 -goal thy "(is_exec_fragC A`(pr>>xs)) s = \
   34.67 +Goal "(is_exec_fragC A`(pr>>xs)) s = \
   34.68  \                        (Def ((s,pr):trans_of A) \
   34.69  \                andalso (is_exec_fragC A`xs)(snd pr))";
   34.70  by (rtac trans 1);
   34.71 @@ -108,15 +108,15 @@
   34.72  (*                        is_exec_frag                              *)
   34.73  (* ---------------------------------------------------------------- *)
   34.74  
   34.75 -goal thy "is_exec_frag A (s, UU)";
   34.76 +Goal "is_exec_frag A (s, UU)";
   34.77  by (simp_tac (simpset() addsimps [is_exec_frag_def]) 1);
   34.78  qed"is_exec_frag_UU";
   34.79  
   34.80 -goal thy "is_exec_frag A (s, nil)";
   34.81 +Goal "is_exec_frag A (s, nil)";
   34.82  by (simp_tac (simpset() addsimps [is_exec_frag_def]) 1);
   34.83  qed"is_exec_frag_nil";
   34.84  
   34.85 -goal thy "is_exec_frag A (s, (a,t)>>ex) = \
   34.86 +Goal "is_exec_frag A (s, (a,t)>>ex) = \
   34.87  \                               (((s,a,t):trans_of A) & \
   34.88  \                               is_exec_frag A (t, ex))";
   34.89  by (simp_tac (simpset() addsimps [is_exec_frag_def]) 1);
   34.90 @@ -130,15 +130,15 @@
   34.91                             section "laststate";
   34.92  (* ---------------------------------------------------------------------------- *)
   34.93  
   34.94 -goal thy "laststate (s,UU) = s";
   34.95 +Goal "laststate (s,UU) = s";
   34.96  by (simp_tac (simpset() addsimps [laststate_def]) 1); 
   34.97  qed"laststate_UU";
   34.98  
   34.99 -goal thy "laststate (s,nil) = s";
  34.100 +Goal "laststate (s,nil) = s";
  34.101  by (simp_tac (simpset() addsimps [laststate_def]) 1);
  34.102  qed"laststate_nil";
  34.103  
  34.104 -goal thy "!! ex. Finite ex ==> laststate (s,at>>ex) = laststate (snd at,ex)";
  34.105 +Goal "!! ex. Finite ex ==> laststate (s,at>>ex) = laststate (snd at,ex)";
  34.106  by (simp_tac (simpset() addsimps [laststate_def]) 1);
  34.107  by (case_tac "ex=nil" 1);
  34.108  by (Asm_simp_tac 1);
  34.109 @@ -150,7 +150,7 @@
  34.110  
  34.111  Addsimps [laststate_UU,laststate_nil,laststate_cons];
  34.112  
  34.113 -goal thy "!!ex. Finite ex ==> (! s. ? u. laststate (s,ex)=u)";
  34.114 +Goal "!!ex. Finite ex ==> (! s. ? u. laststate (s,ex)=u)";
  34.115  by (Seq_Finite_induct_tac 1);
  34.116  qed"exists_laststate";
  34.117  
  34.118 @@ -162,7 +162,7 @@
  34.119  (* alternative definition of has_trace tailored for the refinement proof, as it does not 
  34.120     take the detour of schedules *)
  34.121  
  34.122 -goalw thy  [executions_def,mk_trace_def,has_trace_def,schedules_def,has_schedule_def] 
  34.123 +Goalw  [executions_def,mk_trace_def,has_trace_def,schedules_def,has_schedule_def] 
  34.124  "has_trace A b = (? ex:executions A. b = mk_trace A`(snd ex))";
  34.125  
  34.126  by (safe_tac set_cs);
  34.127 @@ -193,7 +193,7 @@
  34.128     For executions of parallel automata this assumption is not needed, as in par_def
  34.129     this condition is included once more. (see Lemmas 1.1.1c in CompoExecs for example) *)
  34.130  
  34.131 -goal thy 
  34.132 +Goal 
  34.133    "!! A. is_trans_of A ==> \
  34.134  \ ! s. is_exec_frag A (s,xs) --> Forall (%a. a:act A) (filter_act`xs)";
  34.135  
  34.136 @@ -204,7 +204,7 @@
  34.137  by (REPEAT (asm_full_simp_tac (simpset() addsimps [is_trans_of_def]) 1));
  34.138  qed"execfrag_in_sig";
  34.139  
  34.140 -goal thy 
  34.141 +Goal 
  34.142    "!! A.[|  is_trans_of A; x:executions A |] ==> \
  34.143  \ Forall (%a. a:act A) (filter_act`(snd x))";
  34.144  
  34.145 @@ -214,7 +214,7 @@
  34.146  by Auto_tac;
  34.147  qed"exec_in_sig";
  34.148  
  34.149 -goalw thy [schedules_def,has_schedule_def]
  34.150 +Goalw [schedules_def,has_schedule_def]
  34.151    "!! A.[|  is_trans_of A; x:schedules A |] ==> \
  34.152  \   Forall (%a. a:act A) x";
  34.153  
  34.154 @@ -225,7 +225,7 @@
  34.155  
  34.156  is ok but needs ForallQFilterP which has to been proven first (is trivial also)
  34.157  
  34.158 -goalw thy [traces_def,has_trace_def]
  34.159 +Goalw [traces_def,has_trace_def]
  34.160    "!! A.[| x:traces A |] ==> \
  34.161  \   Forall (%a. a:act A) x";
  34.162   by (safe_tac set_cs );
  34.163 @@ -240,7 +240,7 @@
  34.164  section "executions are prefix closed";
  34.165  
  34.166  (* only admissible in y, not if done in x !! *)
  34.167 -goal thy "!x s. is_exec_frag A (s,x) & y<<x  --> is_exec_frag A (s,y)";
  34.168 +Goal "!x s. is_exec_frag A (s,x) & y<<x  --> is_exec_frag A (s,y)";
  34.169  by (pair_induct_tac "y" [is_exec_frag_def] 1);
  34.170  by (strip_tac 1);
  34.171  by (Seq_case_simp_tac "xa" 1);
  34.172 @@ -253,7 +253,7 @@
  34.173  
  34.174  (* second prefix notion for Finite x *)
  34.175  
  34.176 -goal thy "! y s. is_exec_frag A (s,x@@y) --> is_exec_frag A (s,x)";
  34.177 +Goal "! y s. is_exec_frag A (s,x@@y) --> is_exec_frag A (s,x)";
  34.178  by (pair_induct_tac "x" [is_exec_frag_def] 1);
  34.179  by (strip_tac 1);
  34.180  by (Seq_case_simp_tac "s" 1);
    35.1 --- a/src/HOLCF/IOA/meta_theory/TrivEx.ML	Mon Jun 22 17:12:27 1998 +0200
    35.2 +++ b/src/HOLCF/IOA/meta_theory/TrivEx.ML	Mon Jun 22 17:13:09 1998 +0200
    35.3 @@ -11,7 +11,7 @@
    35.4  qed "imp_conj_lemma";
    35.5  
    35.6  
    35.7 -goalw  thy [is_abstraction_def] 
    35.8 +Goalw [is_abstraction_def] 
    35.9  "is_abstraction h_abs C_ioa A_ioa";
   35.10  by (rtac conjI 1);
   35.11  (* ------------- start states ------------ *)
   35.12 @@ -28,7 +28,7 @@
   35.13  qed"h_abs_is_abstraction";
   35.14  
   35.15  
   35.16 -goal thy "validIOA C_ioa (<>[] <%(n,a,m). n~=0>)";
   35.17 +Goal "validIOA C_ioa (<>[] <%(n,a,m). n~=0>)";
   35.18  br AbsRuleT1 1;
   35.19  br h_abs_is_abstraction 1;
   35.20  br MC_result 1;
    36.1 --- a/src/HOLCF/IOA/meta_theory/TrivEx2.ML	Mon Jun 22 17:12:27 1998 +0200
    36.2 +++ b/src/HOLCF/IOA/meta_theory/TrivEx2.ML	Mon Jun 22 17:13:09 1998 +0200
    36.3 @@ -11,7 +11,7 @@
    36.4  qed "imp_conj_lemma";
    36.5  
    36.6  
    36.7 -goalw  thy [is_abstraction_def] 
    36.8 +Goalw [is_abstraction_def] 
    36.9  "is_abstraction h_abs C_ioa A_ioa";
   36.10  by (rtac conjI 1);
   36.11  (* ------------- start states ------------ *)
   36.12 @@ -29,21 +29,21 @@
   36.13  
   36.14  
   36.15  (*
   36.16 -goalw thy [xt2_def,plift,option_lift]
   36.17 +Goalw [xt2_def,plift,option_lift]
   36.18    "(xt2 (plift afun)) (s,a,t) = (afun a)";
   36.19  (* !!!!!!!!!!!!! Occurs check !!!! *)
   36.20  by (option.induct_tac "a" 1);
   36.21  
   36.22  *)
   36.23  
   36.24 -goalw thy [Enabled_def, enabled_def, h_abs_def,A_ioa_def,C_ioa_def,A_trans_def,
   36.25 +Goalw [Enabled_def, enabled_def, h_abs_def,A_ioa_def,C_ioa_def,A_trans_def,
   36.26             C_trans_def,trans_of_def] 
   36.27  "!!s. Enabled A_ioa {INC} (h_abs s) ==> Enabled C_ioa {INC} s";
   36.28  auto();
   36.29  qed"Enabled_implication";
   36.30  
   36.31  
   36.32 -goalw thy [is_live_abstraction_def]
   36.33 +Goalw [is_live_abstraction_def]
   36.34  "is_live_abstraction h_abs (C_ioa, WF C_ioa {INC}) (A_ioa, WF A_ioa {INC})";
   36.35  auto();
   36.36  (* is_abstraction *)
   36.37 @@ -54,7 +54,7 @@
   36.38  qed"h_abs_is_liveabstraction";
   36.39  
   36.40  
   36.41 -goalw thy [C_live_ioa_def]
   36.42 +Goalw [C_live_ioa_def]
   36.43  "validLIOA C_live_ioa (<>[] <%(n,a,m). n~=0>)";
   36.44  br AbsRuleT2 1;
   36.45  br h_abs_is_liveabstraction 1;
   36.46 @@ -65,7 +65,7 @@
   36.47  
   36.48  
   36.49  (*
   36.50 -goal thy "validIOA aut_ioa (Box (Init (%(s,a,t). a= Some(Alarm(APonR)))) 
   36.51 +Goal "validIOA aut_ioa (Box (Init (%(s,a,t). a= Some(Alarm(APonR)))) 
   36.52  IMPLIES (Next (Init (%(s,a,t). info_comp(s) = APonR))))";
   36.53  
   36.54  *)
    37.1 --- a/src/HOLCF/Lift.ML	Mon Jun 22 17:12:27 1998 +0200
    37.2 +++ b/src/HOLCF/Lift.ML	Mon Jun 22 17:13:09 1998 +0200
    37.3 @@ -14,7 +14,7 @@
    37.4  
    37.5  
    37.6  (* flift1 is continuous in its argument itself*)
    37.7 -goal thy "cont (lift_case UU f)"; 
    37.8 +Goal "cont (lift_case UU f)"; 
    37.9  by (rtac flatdom_strict2cont 1);
   37.10  by (Simp_tac 1);
   37.11  qed"cont_flift1_arg";
   37.12 @@ -22,7 +22,7 @@
   37.13  (* flift1 is continuous in a variable that occurs only 
   37.14     in the Def branch *)
   37.15  
   37.16 -goal thy "!!f. [| !! a. cont (%y. (f y) a) |] ==> \
   37.17 +Goal "!!f. [| !! a. cont (%y. (f y) a) |] ==> \
   37.18  \          cont (%y. lift_case UU (f y))";
   37.19  by (rtac cont2cont_CF1L_rev 1);
   37.20  by (strip_tac 1);
   37.21 @@ -34,7 +34,7 @@
   37.22  (* flift1 is continuous in a variable that occurs either 
   37.23     in the Def branch or in the argument *)
   37.24  
   37.25 -goal thy "!!f. [| !! a. cont (%y. (f y) a); cont g|] ==> \
   37.26 +Goal "!!f. [| !! a. cont (%y. (f y) a); cont g|] ==> \
   37.27  \   cont (%y. lift_case UU (f y) (g y))";
   37.28  by (rtac cont2cont_app 1);
   37.29  back();
   37.30 @@ -46,7 +46,7 @@
   37.31  
   37.32  (* flift2 is continuous in its argument itself *)
   37.33  
   37.34 -goal thy "cont (lift_case UU (%y. Def (f y)))";
   37.35 +Goal "cont (lift_case UU (%y. Def (f y)))";
   37.36  by (rtac flatdom_strict2cont 1);
   37.37  by (Simp_tac 1);
   37.38  qed"cont_flift2_arg";
   37.39 @@ -82,25 +82,25 @@
   37.40  (* ---------------------------------------------------------- *)
   37.41  
   37.42  
   37.43 -goal thy "flift1 f`(Def x) = (f x)";
   37.44 +Goal "flift1 f`(Def x) = (f x)";
   37.45  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   37.46  qed"flift1_Def";
   37.47  
   37.48 -goal thy "flift2 f`(Def x) = Def (f x)";
   37.49 +Goal "flift2 f`(Def x) = Def (f x)";
   37.50  by (simp_tac (simpset() addsimps [flift2_def]) 1);
   37.51  qed"flift2_Def";
   37.52  
   37.53 -goal thy "flift1 f`UU = UU";
   37.54 +Goal "flift1 f`UU = UU";
   37.55  by (simp_tac (simpset() addsimps [flift1_def]) 1);
   37.56  qed"flift1_UU";
   37.57  
   37.58 -goal thy "flift2 f`UU = UU";
   37.59 +Goal "flift2 f`UU = UU";
   37.60  by (simp_tac (simpset() addsimps [flift2_def]) 1);
   37.61  qed"flift2_UU";
   37.62  
   37.63  Addsimps [flift1_Def,flift2_Def,flift1_UU,flift2_UU];
   37.64  
   37.65 -goal thy "!!x. x~=UU ==> (flift2 f)`x~=UU";
   37.66 +Goal "!!x. x~=UU ==> (flift2 f)`x~=UU";
   37.67  by (def_tac 1);
   37.68  qed"flift2_nUU";
   37.69  
    38.1 --- a/src/HOLCF/Lift1.ML	Mon Jun 22 17:12:27 1998 +0200
    38.2 +++ b/src/HOLCF/Lift1.ML	Mon Jun 22 17:13:09 1998 +0200
    38.3 @@ -13,7 +13,7 @@
    38.4  (* less_lift is a partial order on type 'a -> 'b                            *)
    38.5  (* ------------------------------------------------------------------------ *)
    38.6  
    38.7 -goalw thy [less_lift_def] "(x::'a lift) << x";
    38.8 +Goalw [less_lift_def] "(x::'a lift) << x";
    38.9  by (fast_tac HOL_cs 1);
   38.10  qed"refl_less_lift";
   38.11  
    39.1 --- a/src/HOLCF/Lift2.ML	Mon Jun 22 17:12:27 1998 +0200
    39.2 +++ b/src/HOLCF/Lift2.ML	Mon Jun 22 17:13:09 1998 +0200
    39.3 @@ -20,7 +20,7 @@
    39.4  (* type ('a)lift is pointed                                                *)
    39.5  (* ------------------------------------------------------------------------ *)
    39.6  
    39.7 -goal Lift2.thy  "Undef << x";
    39.8 +Goal  "Undef << x";
    39.9  by (simp_tac (simpset() addsimps [inst_lift_po]) 1);
   39.10  qed"minimal_lift";
   39.11  
   39.12 @@ -44,7 +44,7 @@
   39.13  
   39.14  (* Tailoring notUU_I of Pcpo.ML to Undef *)
   39.15  
   39.16 -goal Lift2.thy "!!x. [| x<<y; ~x=Undef |] ==> ~y=Undef";
   39.17 +Goal "!!x. [| x<<y; ~x=Undef |] ==> ~y=Undef";
   39.18  by (etac contrapos 1);
   39.19  by (hyp_subst_tac 1);
   39.20  by (rtac antisym_less 1);
   39.21 @@ -55,7 +55,7 @@
   39.22  
   39.23  (* Tailoring chain_mono2 of Pcpo.ML to Undef *)
   39.24  
   39.25 -goal Lift2.thy
   39.26 +Goal
   39.27  "!!Y. [|? j.~Y(j)=Undef;chain(Y::nat=>('a)lift)|] \
   39.28  \ ==> ? j.!i. j<i-->~Y(i)=Undef";
   39.29  by Safe_tac;
   39.30 @@ -70,7 +70,7 @@
   39.31  
   39.32  (* Tailoring flat_imp_chfin of Fix.ML to lift *)
   39.33  
   39.34 -goal Lift2.thy
   39.35 +Goal
   39.36          "(! Y. chain(Y::nat=>('a)lift)-->(? n. max_in_chain n Y))";
   39.37  by (rewtac max_in_chain_def);  
   39.38  by (strip_tac 1);
   39.39 @@ -109,7 +109,7 @@
   39.40  
   39.41  (* Main Lemma: cpo_lift *)
   39.42  
   39.43 -goal Lift2.thy  
   39.44 +Goal  
   39.45    "!!Y. chain(Y::nat=>('a)lift) ==> ? x. range(Y) <<|x";
   39.46  by (cut_inst_tac [] flat_imp_chfin_poo 1);
   39.47  by (Step_tac 1);
    40.1 --- a/src/HOLCF/Lift3.ML	Mon Jun 22 17:12:27 1998 +0200
    40.2 +++ b/src/HOLCF/Lift3.ML	Mon Jun 22 17:13:09 1998 +0200
    40.3 @@ -70,7 +70,7 @@
    40.4                section"less_lift";
    40.5  (* --------------------------------------------------------*)
    40.6  
    40.7 -goal thy "(x::'a lift) << y = (x=y | x=UU)";
    40.8 +Goal "(x::'a lift) << y = (x=y | x=UU)";
    40.9  by (stac inst_lift_po 1);
   40.10  by (Simp_tac 1);
   40.11  qed"less_lift";
   40.12 @@ -80,7 +80,7 @@
   40.13                   section"UU and Def";             
   40.14  (* ---------------------------------------------------------- *)
   40.15  
   40.16 -goal thy "x=UU | (? y. x=Def y)"; 
   40.17 +Goal "x=UU | (? y. x=Def y)"; 
   40.18  by (lift.induct_tac "x" 1);
   40.19  by (Asm_simp_tac 1);
   40.20  by (rtac disjI2 1);
   40.21 @@ -94,7 +94,7 @@
   40.22  by (fast_tac (HOL_cs addSEs prems) 1);
   40.23  qed"Lift_cases";
   40.24  
   40.25 -goal thy "(x~=UU)=(? y. x=Def y)";
   40.26 +Goal "(x~=UU)=(? y. x=Def y)";
   40.27  by (rtac iffI 1);
   40.28  by (rtac Lift_cases 1);
   40.29  by (REPEAT (fast_tac (HOL_cs addSIs lift.distinct) 1));
   40.30 @@ -115,7 +115,7 @@
   40.31  by (fast_tac (HOL_cs addSDs [DefE]) 1);
   40.32  qed"DefE2";
   40.33  
   40.34 -goal thy "Def x << Def y = (x = y)";
   40.35 +Goal "Def x << Def y = (x = y)";
   40.36  by (stac (hd lift.inject RS sym) 1);
   40.37  back();
   40.38  by (rtac iffI 1);
   40.39 @@ -123,7 +123,7 @@
   40.40  by (etac (antisym_less_inverse RS conjunct1) 1);
   40.41  qed"Def_inject_less_eq";
   40.42  
   40.43 -goal thy "Def x << y = (Def x = y)";
   40.44 +Goal "Def x << y = (Def x = y)";
   40.45  by (simp_tac (simpset() addsimps [less_lift]) 1);
   40.46  qed"Def_less_is_eq";
   40.47  
   40.48 @@ -133,19 +133,19 @@
   40.49                section"Lift is flat";
   40.50  (* ---------------------------------------------------------- *)
   40.51  
   40.52 -goal thy "! x y::'a lift. x << y --> x = UU | x = y";
   40.53 +Goal "! x y::'a lift. x << y --> x = UU | x = y";
   40.54  by (simp_tac (simpset() addsimps [less_lift]) 1);
   40.55  qed"ax_flat_lift";
   40.56  
   40.57  (* Two specific lemmas for the combination of LCF and HOL terms *)
   40.58  
   40.59 -goal thy "!!f.[|cont g; cont f|] ==> cont(%x. ((f x)`(g x)) s)";
   40.60 +Goal "!!f.[|cont g; cont f|] ==> cont(%x. ((f x)`(g x)) s)";
   40.61  by (rtac cont2cont_CF1L 1);
   40.62  by (REPEAT (resolve_tac cont_lemmas1 1));
   40.63  by Auto_tac;
   40.64  qed"cont_fapp_app";
   40.65  
   40.66 -goal thy "!!f.[|cont g; cont f|] ==> cont(%x. ((f x)`(g x)) s t)";
   40.67 +Goal "!!f.[|cont g; cont f|] ==> cont(%x. ((f x)`(g x)) s t)";
   40.68  by (rtac cont2cont_CF1L 1);
   40.69  by (etac cont_fapp_app 1);
   40.70  by (assume_tac 1);
    41.1 --- a/src/HOLCF/Porder.ML	Mon Jun 22 17:12:27 1998 +0200
    41.2 +++ b/src/HOLCF/Porder.ML	Mon Jun 22 17:13:09 1998 +0200
    41.3 @@ -112,7 +112,7 @@
    41.4          ]);
    41.5  
    41.6  
    41.7 -goal thy "lub{x} = x";
    41.8 +Goal "lub{x} = x";
    41.9  by (rtac thelubI 1);
   41.10  by (simp_tac (simpset() addsimps [is_lub,is_ub]) 1);
   41.11  qed "lub_singleton";
    42.1 --- a/src/HOLCF/Porder0.ML	Mon Jun 22 17:12:27 1998 +0200
    42.2 +++ b/src/HOLCF/Porder0.ML	Mon Jun 22 17:13:09 1998 +0200
    42.3 @@ -47,6 +47,6 @@
    42.4          (atac 1)
    42.5          ]);
    42.6  
    42.7 -goal Porder0.thy "((x::'a::po)=y) = (x << y & y << x)";
    42.8 +Goal "((x::'a::po)=y) = (x << y & y << x)";
    42.9  by (fast_tac (HOL_cs addSEs [antisym_less_inverse] addSIs [antisym_less]) 1);
   42.10  qed "po_eq_conv";
    43.1 --- a/src/HOLCF/Tr.ML	Mon Jun 22 17:12:27 1998 +0200
    43.2 +++ b/src/HOLCF/Tr.ML	Mon Jun 22 17:13:09 1998 +0200
    43.3 @@ -95,7 +95,7 @@
    43.4  (*  split-tac for If via If2 because the constant has to be a constant *)
    43.5  (* ------------------------------------------------------------------- *)
    43.6    
    43.7 -goalw thy [If2_def] 
    43.8 +Goalw [If2_def] 
    43.9    "P (If2 Q x y ) = ((Q=UU --> P UU) & (Q=TT --> P x) & (Q=FF --> P y))";
   43.10  by (res_inst_tac [("p","Q")] trE 1);
   43.11  by (REPEAT (Asm_full_simp_tac 1));
   43.12 @@ -111,7 +111,7 @@
   43.13  (* ----------------------------------------------------------------- *)
   43.14  
   43.15  
   43.16 -goal thy
   43.17 +Goal
   43.18  "!!t.[|t~=UU|]==> ((t andalso s)=FF)=(t=FF | s=FF)";
   43.19  by (rtac iffI 1);
   43.20  by (res_inst_tac [("p","t")] trE 1);
   43.21 @@ -120,7 +120,7 @@
   43.22  by Auto_tac;
   43.23  qed"andalso_or";
   43.24  
   43.25 -goal thy "!!t.[|t~=UU|]==> ((t andalso s)~=FF)=(t~=FF & s~=FF)";
   43.26 +Goal "!!t.[|t~=UU|]==> ((t andalso s)~=FF)=(t~=FF & s~=FF)";
   43.27  by (rtac iffI 1);
   43.28  by (res_inst_tac [("p","t")] trE 1);
   43.29  by Auto_tac;
   43.30 @@ -128,23 +128,23 @@
   43.31  by Auto_tac;
   43.32  qed"andalso_and";
   43.33  
   43.34 -goal thy "(Def x ~=FF)= x";
   43.35 +Goal "(Def x ~=FF)= x";
   43.36  by (simp_tac (simpset() addsimps [FF_def]) 1);
   43.37  qed"Def_bool1";
   43.38  
   43.39 -goal thy "(Def x = FF) = (~x)";
   43.40 +Goal "(Def x = FF) = (~x)";
   43.41  by (simp_tac (simpset() addsimps [FF_def]) 1);
   43.42  qed"Def_bool2";
   43.43  
   43.44 -goal thy "(Def x = TT) = x";
   43.45 +Goal "(Def x = TT) = x";
   43.46  by (simp_tac (simpset() addsimps [TT_def]) 1);
   43.47  qed"Def_bool3";
   43.48  
   43.49 -goal thy "(Def x ~= TT) = (~x)";
   43.50 +Goal "(Def x ~= TT) = (~x)";
   43.51  by (simp_tac (simpset() addsimps [TT_def]) 1);
   43.52  qed"Def_bool4";
   43.53  
   43.54 -goal thy 
   43.55 +Goal 
   43.56    "(If Def P then A else B fi)= (if P then A else B)";
   43.57  by (res_inst_tac [("p","Def P")]  trE 1);
   43.58  by (Asm_full_simp_tac 1);
   43.59 @@ -163,12 +163,12 @@
   43.60     replaced by a more general admissibility test that also checks 
   43.61     chain-finiteness, of which these lemmata are specific examples *)
   43.62  
   43.63 -goal thy "x~=FF = (x=TT|x=UU)";
   43.64 +Goal "x~=FF = (x=TT|x=UU)";
   43.65  by (res_inst_tac [("p","x")] trE 1);
   43.66  by (TRYALL (Asm_full_simp_tac));
   43.67  qed"adm_trick_1";
   43.68  
   43.69 -goal thy "x~=TT = (x=FF|x=UU)";
   43.70 +Goal "x~=TT = (x=FF|x=UU)";
   43.71  by (res_inst_tac [("p","x")] trE 1);
   43.72  by (TRYALL (Asm_full_simp_tac));
   43.73  qed"adm_trick_2";
   43.74 @@ -176,12 +176,12 @@
   43.75  val adm_tricks = [adm_trick_1,adm_trick_2];
   43.76  
   43.77  
   43.78 -goal thy "!!f. cont(f) ==> adm (%x. (f x)~=TT)";
   43.79 +Goal "!!f. cont(f) ==> adm (%x. (f x)~=TT)";
   43.80  by (simp_tac (HOL_basic_ss addsimps adm_tricks) 1);
   43.81  by (REPEAT ((resolve_tac (adm_lemmas@cont_lemmas1) 1) ORELSE atac 1));
   43.82  qed"adm_nTT";
   43.83  
   43.84 -goal thy "!!f. cont(f) ==> adm (%x. (f x)~=FF)";
   43.85 +Goal "!!f. cont(f) ==> adm (%x. (f x)~=FF)";
   43.86  by (simp_tac (HOL_basic_ss addsimps adm_tricks) 1);
   43.87  by (REPEAT ((resolve_tac (adm_lemmas@cont_lemmas1) 1) ORELSE atac 1));
   43.88  qed"adm_nFF";
    44.1 --- a/src/ZF/AC/AC15_WO6.ML	Mon Jun 22 17:12:27 1998 +0200
    44.2 +++ b/src/ZF/AC/AC15_WO6.ML	Mon Jun 22 17:13:09 1998 +0200
    44.3 @@ -7,7 +7,7 @@
    44.4  
    44.5  open AC15_WO6;
    44.6  
    44.7 -goal thy "!!x. Ord(x) ==> (UN a<x. F(a)) = (UN a:x. F(a))";
    44.8 +Goal "!!x. Ord(x) ==> (UN a<x. F(a)) = (UN a:x. F(a))";
    44.9  by (fast_tac (claset() addSIs [ltI] addSDs [ltD]) 1);
   44.10  qed "OUN_eq_UN";
   44.11  
   44.12 @@ -30,7 +30,7 @@
   44.13                  addSDs [HH_subset_x_imp_subset_Diff_UN RS not_emptyI2]) 1);
   44.14  val lemma2 = result();
   44.15  
   44.16 -goalw thy [AC15_def, WO6_def] "!!Z. AC15 ==> WO6";
   44.17 +Goalw [AC15_def, WO6_def] "!!Z. AC15 ==> WO6";
   44.18  by (rtac allI 1);
   44.19  by (eres_inst_tac [("x","Pow(A)-{0}")] allE 1);
   44.20  by (etac impE 1);
    45.1 --- a/src/ZF/AC/AC16_WO4.ML	Mon Jun 22 17:12:27 1998 +0200
    45.2 +++ b/src/ZF/AC/AC16_WO4.ML	Mon Jun 22 17:13:09 1998 +0200
    45.3 @@ -11,7 +11,7 @@
    45.4  (* The case of finite set                                                 *)
    45.5  (* ********************************************************************** *)
    45.6  
    45.7 -goalw thy [Finite_def] "!!A. [| Finite(A); 0<m; m:nat |] ==>  \
    45.8 +Goalw [Finite_def] "!!A. [| Finite(A); 0<m; m:nat |] ==>  \
    45.9  \       EX a f. Ord(a) & domain(f) = a &  \
   45.10  \               (UN b<a. f`b) = A & (ALL b<a. f`b lepoll m)";
   45.11  by (etac bexE 1);
   45.12 @@ -34,16 +34,16 @@
   45.13  (* well_ord(x,r) ==> well_ord({{y,z}. y:x}, Something(x,z))  **)
   45.14  bind_thm ("well_ord_paired", (paired_bij RS bij_is_inj RS well_ord_rvimage));
   45.15  
   45.16 -goal thy "!!A. [| A lepoll B; ~ A lepoll C |] ==> ~ B lepoll C";
   45.17 +Goal "!!A. [| A lepoll B; ~ A lepoll C |] ==> ~ B lepoll C";
   45.18  by (fast_tac (claset() addEs [notE, lepoll_trans]) 1);
   45.19  qed "lepoll_trans1";
   45.20  
   45.21 -goalw thy [lepoll_def]
   45.22 +Goalw [lepoll_def]
   45.23          "!!X.[| Y lepoll X; well_ord(X, R) |] ==> EX S. well_ord(Y, S)";
   45.24  by (fast_tac (claset() addSEs [well_ord_rvimage]) 1);
   45.25  qed "well_ord_lepoll";
   45.26  
   45.27 -goal thy "!!X. [| well_ord(X,R); well_ord(Y,S)  \
   45.28 +Goal "!!X. [| well_ord(X,R); well_ord(Y,S)  \
   45.29  \               |] ==> EX T. well_ord(X Un Y, T)";
   45.30  by (eresolve_tac [well_ord_radd RS (Un_lepoll_sum RS well_ord_lepoll)] 1);
   45.31  by (assume_tac 1);
   45.32 @@ -53,7 +53,7 @@
   45.33  (* There exists a well ordered set y such that ...                        *)
   45.34  (* ********************************************************************** *)
   45.35  
   45.36 -goal thy "EX y R. well_ord(y,R) & x Int y = 0 & ~y lepoll z & ~Finite(y)";
   45.37 +Goal "EX y R. well_ord(y,R) & x Int y = 0 & ~y lepoll z & ~Finite(y)";
   45.38  by (res_inst_tac [("x","{{a,x}. a:nat Un  Hartog(z)}")] exI 1);
   45.39  by (resolve_tac [transfer thy Ord_nat RS well_ord_Memrel RS (Ord_Hartog RS
   45.40                  well_ord_Memrel RSN (2, well_ord_Un)) RS exE] 1);
   45.41 @@ -85,7 +85,7 @@
   45.42  (* ********************************************************************** *)
   45.43  
   45.44  (*Proof simplified by LCP*)
   45.45 -goal thy "!!A. [| ~(EX x:A. f`x=y); f : inj(A, B); y:B |]  \
   45.46 +Goal "!!A. [| ~(EX x:A. f`x=y); f : inj(A, B); y:B |]  \
   45.47  \       ==> (lam a:succ(A). if(a=A, y, f`a)) : inj(succ(A), B)";
   45.48  by (res_inst_tac [("d","%z. if(z=y, A, converse(f)`z)")] lam_injective 1);
   45.49  by (ALLGOALS
   45.50 @@ -94,7 +94,7 @@
   45.51        setloop (split_tac [expand_if] ORELSE' Step_tac))));
   45.52  qed "succ_not_lepoll_lemma";
   45.53  
   45.54 -goalw thy [lepoll_def, eqpoll_def, bij_def, surj_def]
   45.55 +Goalw [lepoll_def, eqpoll_def, bij_def, surj_def]
   45.56          "!!A. [| ~A eqpoll B; A lepoll B |] ==> succ(A) lepoll B";
   45.57  by (fast_tac (claset() addSEs [succ_not_lepoll_lemma, inj_is_fun]) 1);
   45.58  qed "succ_not_lepoll_imp_eqpoll";
   45.59 @@ -115,7 +115,7 @@
   45.60  (* There is a k-2 element subset of y                                     *)
   45.61  (* ********************************************************************** *)
   45.62  
   45.63 -goalw thy [lepoll_def, eqpoll_def]
   45.64 +Goalw [lepoll_def, eqpoll_def]
   45.65          "!!X. [| n:nat; nat lepoll X |] ==> EX Y. Y<=X & n eqpoll Y";
   45.66  by (fast_tac (FOL_cs addSDs [Ord_nat RSN (2, OrdmemD) RSN (2, restrict_inj)]
   45.67          addSIs [subset_refl]
   45.68 @@ -125,7 +125,7 @@
   45.69  val ordertype_eqpoll =
   45.70          ordermap_bij RS (exI RS (eqpoll_def RS def_imp_iff RS iffD2));
   45.71  
   45.72 -goal thy "!!y. [| well_ord(y,R); ~Finite(y); n:nat  \
   45.73 +Goal "!!y. [| well_ord(y,R); ~Finite(y); n:nat  \
   45.74  \       |] ==> EX z. z<=y & n eqpoll z";
   45.75  by (etac nat_lepoll_imp_ex_eqpoll_n 1);
   45.76  by (resolve_tac [ordertype_eqpoll RS eqpoll_sym RS eqpoll_imp_lepoll
   45.77 @@ -135,14 +135,14 @@
   45.78                          RS lepoll_infinite]) 1);
   45.79  qed "ex_subset_eqpoll_n";
   45.80  
   45.81 -goalw thy [lesspoll_def] "!!n. n: nat ==> n lesspoll nat";
   45.82 +Goalw [lesspoll_def] "!!n. n: nat ==> n lesspoll nat";
   45.83  by (fast_tac (claset() addSEs [Ord_nat RSN (2, ltI) RS leI RS le_imp_lepoll,
   45.84          eqpoll_sym RS eqpoll_imp_lepoll]
   45.85          addIs [Ord_nat RSN (2, nat_succI RS ltI) RS leI
   45.86          RS le_imp_lepoll RS lepoll_trans RS succ_lepoll_natE]) 1);
   45.87  qed "n_lesspoll_nat";
   45.88  
   45.89 -goal thy "!!y. [| well_ord(y,R); ~Finite(y); k eqpoll a; a <= y; k: nat |]  \
   45.90 +Goal "!!y. [| well_ord(y,R); ~Finite(y); k eqpoll a; a <= y; k: nat |]  \
   45.91  \       ==> y - a eqpoll y";
   45.92  by (fast_tac (empty_cs addIs [lepoll_lesspoll_lesspoll]
   45.93          addSIs [Card_cardinal, Diff_lesspoll_eqpoll_Card RS eqpoll_trans,
   45.94 @@ -156,31 +156,31 @@
   45.95                  RS lepoll_infinite]) 1);
   45.96  qed "Diff_Finite_eqpoll";
   45.97  
   45.98 -goal thy "!!x. [| a<=y; b:y-a; u:x |] ==> cons(b, cons(u, a)) : Pow(x Un y)";
   45.99 +Goal "!!x. [| a<=y; b:y-a; u:x |] ==> cons(b, cons(u, a)) : Pow(x Un y)";
  45.100  by (Fast_tac 1);
  45.101  qed "cons_cons_subset";
  45.102  
  45.103 -goal thy "!!x. [| a eqpoll k; a<=y; b:y-a; u:x; x Int y = 0  \
  45.104 +Goal "!!x. [| a eqpoll k; a<=y; b:y-a; u:x; x Int y = 0  \
  45.105  \       |] ==> cons(b, cons(u, a)) eqpoll succ(succ(k))";
  45.106  by (fast_tac (claset() addSIs [cons_eqpoll_succ] addEs [equals0D]) 1);
  45.107  qed "cons_cons_eqpoll";
  45.108  
  45.109 -goalw thy [s_u_def] "s_u(u, t_n, k, y) <= t_n";
  45.110 +Goalw [s_u_def] "s_u(u, t_n, k, y) <= t_n";
  45.111  by (Fast_tac 1);
  45.112  qed "s_u_subset";
  45.113  
  45.114 -goalw thy [s_u_def, succ_def]
  45.115 +Goalw [s_u_def, succ_def]
  45.116          "!!w. [| w:t_n; cons(b,cons(u,a)) <= w; a <= y; b : y-a; k eqpoll a  \
  45.117  \       |] ==> w: s_u(u, t_n, succ(k), y)";
  45.118  by (fast_tac (claset() addDs [eqpoll_imp_lepoll RS cons_lepoll_cong]
  45.119                  addSEs [subset_imp_lepoll RSN (2, lepoll_trans)]) 1);
  45.120  qed "s_uI";
  45.121  
  45.122 -goalw thy [s_u_def] "!!v. v : s_u(u, t_n, k, y) ==> u : v";
  45.123 +Goalw [s_u_def] "!!v. v : s_u(u, t_n, k, y) ==> u : v";
  45.124  by (Fast_tac 1);
  45.125  qed "in_s_u_imp_u_in";
  45.126  
  45.127 -goal thy
  45.128 +Goal
  45.129          "!!y. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(succ(k))}.  \
  45.130  \       EX! w. w:t_n & z <= w; \
  45.131  \       k eqpoll a; a <= y; b : y - a; u : x; x Int y = 0 |]  \
  45.132 @@ -201,7 +201,7 @@
  45.133  by (fast_tac (claset() addSEs [s_u_subset RS subsetD, in_s_u_imp_u_in]) 1);
  45.134  qed "ex1_superset_a";
  45.135  
  45.136 -goal thy
  45.137 +Goal
  45.138          "!!A. [| succ(k) eqpoll A; k eqpoll B; B <= A; a : A-B; k:nat  \
  45.139  \       |] ==> A = cons(a, B)";
  45.140  by (rtac equalityI 1);
  45.141 @@ -218,7 +218,7 @@
  45.142          (lepoll_trans RS lepoll_trans) RS succ_lepoll_natE]) 1);
  45.143  qed "set_eq_cons";
  45.144  
  45.145 -goal thy
  45.146 +Goal
  45.147          "!!y. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(succ(k))}.  \
  45.148  \       EX! w. w:t_n & z <= w; \
  45.149  \       ALL v:s_u(u, t_n, succ(k), y). succ(k) eqpoll v Int y;  \
  45.150 @@ -230,15 +230,15 @@
  45.151  by (REPEAT (Fast_tac 1));
  45.152  qed "the_eq_cons";
  45.153  
  45.154 -goal thy "!!a. [| cons(x,a) = cons(y,a); x~: a |] ==> x = y ";
  45.155 +Goal "!!a. [| cons(x,a) = cons(y,a); x~: a |] ==> x = y ";
  45.156  by (fast_tac (claset() addSEs [equalityE]) 1);
  45.157  qed "cons_eqE";
  45.158  
  45.159 -goal thy "!!A. A = B ==> A Int C = B Int C";
  45.160 +Goal "!!A. A = B ==> A Int C = B Int C";
  45.161  by (Asm_simp_tac 1);
  45.162  qed "eq_imp_Int_eq";
  45.163  
  45.164 -goal thy "!!a. [| a=b; a=c; b=d |] ==> c=d";
  45.165 +Goal "!!a. [| a=b; a=c; b=d |] ==> c=d";
  45.166  by (Asm_full_simp_tac 1);
  45.167  qed "msubst";
  45.168  
  45.169 @@ -247,7 +247,7 @@
  45.170  (*      where a is certain k-2 element subset of y                        *)
  45.171  (* ********************************************************************** *)
  45.172  
  45.173 -goal thy
  45.174 +Goal
  45.175          "!!y. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(succ(k))}.  \
  45.176  \       EX! w. w:t_n & z <= w; \
  45.177  \       ALL v:s_u(u, t_n, succ(k), y). succ(k) eqpoll v Int y;  \
  45.178 @@ -281,7 +281,7 @@
  45.179  (* some arithmetic                                                        *)
  45.180  (* ********************************************************************** *)
  45.181  
  45.182 -goal thy 
  45.183 +Goal 
  45.184          "!!k. [| k:nat; m:nat |] ==>  \
  45.185  \       ALL A B. A eqpoll k #+ m & k lepoll B & B<=A --> A-B lepoll m";
  45.186  by (eres_inst_tac [("n","k")] nat_induct 1);
  45.187 @@ -300,7 +300,7 @@
  45.188  by (Fast_tac 1);
  45.189  qed "eqpoll_sum_imp_Diff_lepoll_lemma";
  45.190  
  45.191 -goal thy "!!k. [| A eqpoll succ(k #+ m); B<=A; succ(k) lepoll B;  \
  45.192 +Goal "!!k. [| A eqpoll succ(k #+ m); B<=A; succ(k) lepoll B;  \
  45.193  \       k:nat; m:nat |]  \
  45.194  \       ==> A-B lepoll m";
  45.195  by (dresolve_tac [add_succ RS ssubst] 1);
  45.196 @@ -313,7 +313,7 @@
  45.197  (* similar properties for eqpoll                                          *)
  45.198  (* ********************************************************************** *)
  45.199  
  45.200 -goal thy 
  45.201 +Goal 
  45.202          "!!k. [| k:nat; m:nat |] ==>  \
  45.203  \       ALL A B. A eqpoll k #+ m & k eqpoll B & B<=A --> A-B eqpoll m";
  45.204  by (eres_inst_tac [("n","k")] nat_induct 1);
  45.205 @@ -332,7 +332,7 @@
  45.206  by (Fast_tac 1);
  45.207  qed "eqpoll_sum_imp_Diff_eqpoll_lemma";
  45.208  
  45.209 -goal thy "!!k. [| A eqpoll succ(k #+ m); B<=A; succ(k) eqpoll B;  \
  45.210 +Goal "!!k. [| A eqpoll succ(k #+ m); B<=A; succ(k) eqpoll B;  \
  45.211  \       k:nat; m:nat |]  \
  45.212  \       ==> A-B eqpoll m";
  45.213  by (dresolve_tac [add_succ RS ssubst] 1);
  45.214 @@ -345,12 +345,12 @@
  45.215  (* back to the second part                                                *)
  45.216  (* ********************************************************************** *)
  45.217  
  45.218 -goal thy "!!w. [| x Int y = 0; w <= x Un y |]  \
  45.219 +Goal "!!w. [| x Int y = 0; w <= x Un y |]  \
  45.220  \        ==> w Int (x - {u}) = w - cons(u, w Int y)";
  45.221  by (fast_tac (claset() addEs [equals0D]) 1);
  45.222  qed "w_Int_eq_w_Diff";
  45.223  
  45.224 -goal thy "!!w. [| w:{v:s_u(u, t_n, succ(l), y). a <= v};  \
  45.225 +Goal "!!w. [| w:{v:s_u(u, t_n, succ(l), y). a <= v};  \
  45.226  \       l eqpoll a; t_n <= {v:Pow(x Un y). v eqpoll succ(succ(l) #+ m)};  \
  45.227  \       m:nat; l:nat; x Int y = 0; u : x;  \
  45.228  \       ALL v:s_u(u, t_n, succ(l), y). succ(l) eqpoll v Int y  \
  45.229 @@ -364,12 +364,12 @@
  45.230          addSIs [nat_succI, eqpoll_sum_imp_Diff_eqpoll]) 1);
  45.231  qed "w_Int_eqpoll_m";
  45.232  
  45.233 -goal thy "!!m. [| 0<m; x eqpoll m; m:nat |] ==> x ~= 0";
  45.234 +Goal "!!m. [| 0<m; x eqpoll m; m:nat |] ==> x ~= 0";
  45.235  by (fast_tac (empty_cs
  45.236          addSEs [mem_irrefl, ltE, eqpoll_succ_imp_not_empty, natE]) 1);
  45.237  qed "eqpoll_m_not_empty";
  45.238  
  45.239 -goal thy
  45.240 +Goal
  45.241          "!!z. [| z : xa Int (x - {u}); l eqpoll a; a <= y; x Int y = 0; u:x  \
  45.242  \       |] ==> cons(z, cons(u, a)) : {v: Pow(x Un y). v eqpoll succ(succ(l))}";
  45.243  by (fast_tac (claset() addSIs [cons_eqpoll_succ] addEs [equals0D, eqpoll_sym]) 1);
  45.244 @@ -380,7 +380,7 @@
  45.245  (*      to {v:Pow(x). v eqpoll n-k}                                       *)
  45.246  (* ********************************************************************** *)
  45.247  
  45.248 -goal thy 
  45.249 +Goal 
  45.250          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(succ(l))}.  \
  45.251  \       EX! w. w:t_n & z <= w; \
  45.252  \       t_n <= {v:Pow(x Un y). v eqpoll succ(succ(l) #+ m)};  \
  45.253 @@ -410,13 +410,13 @@
  45.254  by (fast_tac (claset() addSEs [s_u_subset RS subsetD, in_s_u_imp_u_in]) 1);
  45.255  qed "subset_s_u_lepoll_w";
  45.256  
  45.257 -goal thy "!!k. [| 0<k; k:nat |] ==> EX l:nat. k = succ(l)";
  45.258 +Goal "!!k. [| 0<k; k:nat |] ==> EX l:nat. k = succ(l)";
  45.259  by (etac natE 1);
  45.260  by (fast_tac (empty_cs addSEs [ltE, mem_irrefl]) 1);
  45.261  by (fast_tac (empty_cs addSIs [refl, bexI]) 1);
  45.262  qed "ex_eq_succ";
  45.263  
  45.264 -goal thy
  45.265 +Goal
  45.266   "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(k)}.  \
  45.267  \                  EX! w. w:t_n & z <= w; \
  45.268  \         well_ord(y,R); ~Finite(y); u:x; x Int y = 0;  \
  45.269 @@ -438,12 +438,12 @@
  45.270  (* LL can be well ordered                                                 *)
  45.271  (* ********************************************************************** *)
  45.272  
  45.273 -goal thy "{x:Pow(X). x lepoll 0} = {0}";
  45.274 +Goal "{x:Pow(X). x lepoll 0} = {0}";
  45.275  by (fast_tac (claset() addSDs [lepoll_0_is_0]
  45.276                        addSIs [lepoll_refl]) 1);
  45.277  qed "subsets_lepoll_0_eq_unit";
  45.278  
  45.279 -goal thy "!!X. [| well_ord(X, R); ~Finite(X); n:nat |]  \
  45.280 +Goal "!!X. [| well_ord(X, R); ~Finite(X); n:nat |]  \
  45.281  \               ==> EX S. well_ord({Y: Pow(X) . Y eqpoll succ(n)}, S)";
  45.282  by (resolve_tac [well_ord_infinite_subsets_eqpoll_X
  45.283          RS (eqpoll_def RS def_imp_iff RS iffD1) RS exE] 1
  45.284 @@ -451,14 +451,14 @@
  45.285  by (fast_tac (claset() addSEs [bij_is_inj RS well_ord_rvimage]) 1);
  45.286  qed "well_ord_subsets_eqpoll_n";
  45.287  
  45.288 -goal thy "!!n. n:nat ==> {z:Pow(y). z lepoll succ(n)} =  \
  45.289 +Goal "!!n. n:nat ==> {z:Pow(y). z lepoll succ(n)} =  \
  45.290  \       {z:Pow(y). z lepoll n} Un {z:Pow(y). z eqpoll succ(n)}";
  45.291  by (fast_tac (claset() addIs [le_refl, leI, le_imp_lepoll]
  45.292                  addSDs [lepoll_succ_disj]
  45.293                  addSEs [nat_into_Ord, lepoll_trans, eqpoll_imp_lepoll]) 1);
  45.294  qed "subsets_lepoll_succ";
  45.295  
  45.296 -goal thy "!!n. n:nat ==>  \
  45.297 +Goal "!!n. n:nat ==>  \
  45.298  \       {z:Pow(y). z lepoll n} Int {z:Pow(y). z eqpoll succ(n)} = 0";
  45.299  by (fast_tac (claset() addSEs [eqpoll_sym RS eqpoll_imp_lepoll 
  45.300                  RS lepoll_trans RS succ_lepoll_natE]
  45.301 @@ -469,16 +469,16 @@
  45.302  (* unit set is well-ordered by the empty relation                         *)
  45.303  (* ********************************************************************** *)
  45.304  
  45.305 -goalw thy [irrefl_def, trans_on_def, part_ord_def, linear_def, tot_ord_def]
  45.306 +Goalw [irrefl_def, trans_on_def, part_ord_def, linear_def, tot_ord_def]
  45.307          "tot_ord({a},0)";
  45.308  by (Simp_tac 1);
  45.309  qed "tot_ord_unit";
  45.310  
  45.311 -goalw thy [wf_on_def, wf_def] "wf[{a}](0)";
  45.312 +Goalw [wf_on_def, wf_def] "wf[{a}](0)";
  45.313  by (Fast_tac 1);
  45.314  qed "wf_on_unit";
  45.315  
  45.316 -goalw thy [well_ord_def] "well_ord({a},0)";
  45.317 +Goalw [well_ord_def] "well_ord({a},0)";
  45.318  by (simp_tac (simpset() addsimps [tot_ord_unit, wf_on_unit]) 1);
  45.319  qed "well_ord_unit";
  45.320  
  45.321 @@ -486,7 +486,7 @@
  45.322  (* well_ord_subsets_lepoll_n                                              *)
  45.323  (* ********************************************************************** *)
  45.324  
  45.325 -goal thy "!!y r. [| well_ord(y,r); ~Finite(y); n:nat |] ==>  \
  45.326 +Goal "!!y r. [| well_ord(y,r); ~Finite(y); n:nat |] ==>  \
  45.327  \       EX R. well_ord({z:Pow(y). z lepoll n}, R)";
  45.328  by (etac nat_induct 1);
  45.329  by (fast_tac (claset() addSIs [well_ord_unit]
  45.330 @@ -501,7 +501,7 @@
  45.331  by (fast_tac (claset() addSEs [bij_is_inj RS well_ord_rvimage]) 1);
  45.332  qed "well_ord_subsets_lepoll_n";
  45.333  
  45.334 -goalw thy [LL_def, MM_def]
  45.335 +Goalw [LL_def, MM_def]
  45.336          "!!x. t_n <= {v:Pow(x Un y). v eqpoll n}  \
  45.337  \               ==> LL(t_n, k, y) <= {z:Pow(y). z lepoll n}";
  45.338  by (fast_tac (claset() addSEs [RepFunE]
  45.339 @@ -509,7 +509,7 @@
  45.340                  RSN (2, lepoll_trans))]) 1);
  45.341  qed "LL_subset";
  45.342  
  45.343 -goal thy "!!x. [| t_n <= {v:Pow(x Un y). v eqpoll n}; \
  45.344 +Goal "!!x. [| t_n <= {v:Pow(x Un y). v eqpoll n}; \
  45.345  \               well_ord(y, R); ~Finite(y); n:nat  \
  45.346  \               |] ==> EX S. well_ord(LL(t_n, k, y), S)";
  45.347  by (fast_tac (FOL_cs addIs [exI]
  45.348 @@ -521,7 +521,7 @@
  45.349  (* every element of LL is a contained in exactly one element of MM        *)
  45.350  (* ********************************************************************** *)
  45.351  
  45.352 -goalw thy [MM_def, LL_def]
  45.353 +Goalw [MM_def, LL_def]
  45.354          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll k}. EX! w. w:t_n & z <= w; \
  45.355  \       t_n <= {v:Pow(x Un y). v eqpoll n}; \
  45.356  \       v:LL(t_n, k, y)  \
  45.357 @@ -546,7 +546,7 @@
  45.358  (* The union of appropriate values is the whole x                         *)
  45.359  (* ********************************************************************** *)
  45.360  
  45.361 -goal thy
  45.362 +Goal
  45.363          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(k)}.  \
  45.364  \       EX! w. w:t_n & z <= w; \
  45.365  \       well_ord(y,R); ~Finite(y); u:x; x Int y = 0;  \
  45.366 @@ -559,15 +559,15 @@
  45.367  by (Fast_tac 1);
  45.368  qed "exists_in_MM";
  45.369  
  45.370 -goalw thy [LL_def] "!!w. w : MM(t_n, k, y) ==> w Int y : LL(t_n, k, y)";
  45.371 +Goalw [LL_def] "!!w. w : MM(t_n, k, y) ==> w Int y : LL(t_n, k, y)";
  45.372  by (Fast_tac 1);
  45.373  qed "Int_in_LL";
  45.374  
  45.375 -goalw thy [MM_def] "MM(t_n, k, y) <= t_n";
  45.376 +Goalw [MM_def] "MM(t_n, k, y) <= t_n";
  45.377  by (Fast_tac 1);
  45.378  qed "MM_subset";
  45.379  
  45.380 -goal thy 
  45.381 +Goal 
  45.382          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll succ(k)}.  \
  45.383  \       EX! w. w:t_n & z <= w; \
  45.384  \       well_ord(y,R); ~Finite(y); u:x; x Int y = 0;  \
  45.385 @@ -585,7 +585,7 @@
  45.386  by (REPEAT (fast_tac (claset() addEs [equals0D] addSEs [Int_in_LL]) 1));
  45.387  qed "exists_in_LL";
  45.388  
  45.389 -goalw thy [LL_def] 
  45.390 +Goalw [LL_def] 
  45.391          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll k}. EX! w. w:t_n & z <= w; \
  45.392  \       t_n <= {v:Pow(x Un y). v eqpoll n};  \
  45.393  \       v : LL(t_n, k, y) |]  \
  45.394 @@ -594,7 +594,7 @@
  45.395                  unique_superset_in_MM RS the_equality2 RS ssubst]) 1);
  45.396  qed "in_LL_eq_Int";
  45.397  
  45.398 -goal thy  
  45.399 +Goal  
  45.400          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll k}. EX! w. w:t_n & z <= w; \
  45.401  \       t_n <= {v:Pow(x Un y). v eqpoll n};  \
  45.402  \       v : LL(t_n, k, y) |]  \
  45.403 @@ -603,7 +603,7 @@
  45.404          (MM_subset RS subsetD)]) 1);
  45.405  qed "the_in_MM_subset";
  45.406  
  45.407 -goalw thy [GG_def] 
  45.408 +Goalw [GG_def] 
  45.409          "!!x. [| ALL z:{z: Pow(x Un y) . z eqpoll k}. EX! w. w:t_n & z <= w; \
  45.410  \       t_n <= {v:Pow(x Un y). v eqpoll n};  \
  45.411  \       v : LL(t_n, k, y) |]  \
  45.412 @@ -617,7 +617,7 @@
  45.413  by (fast_tac (claset() addEs [ssubst]) 1);
  45.414  qed "GG_subset";
  45.415  
  45.416 -goal thy  
  45.417 +Goal  
  45.418          "!!x. [| well_ord(LL(t_n, succ(k), y), S);  \
  45.419  \       ALL z:{z: Pow(x Un y) . z eqpoll succ(k)}. EX! w. w:t_n & z <= w; \
  45.420  \       well_ord(y,R); ~Finite(y); x Int y = 0;  \
  45.421 @@ -646,18 +646,18 @@
  45.422  (* Every element of the family is less than or equipollent to n-k (m)     *)
  45.423  (* ********************************************************************** *)
  45.424  
  45.425 -goalw thy [MM_def]
  45.426 +Goalw [MM_def]
  45.427          "!!w. [| w : MM(t_n, k, y); t_n <= {v:Pow(x Un y). v eqpoll n}  \
  45.428  \       |] ==> w eqpoll n";
  45.429  by (Fast_tac 1);
  45.430  qed "in_MM_eqpoll_n";
  45.431  
  45.432 -goalw thy [LL_def, MM_def]
  45.433 +Goalw [LL_def, MM_def]
  45.434          "!!w. w : LL(t_n, k, y) ==> k lepoll w";
  45.435  by (Fast_tac 1);
  45.436  qed "in_LL_eqpoll_n";
  45.437  
  45.438 -goalw thy [GG_def] 
  45.439 +Goalw [GG_def] 
  45.440          "!!x. [|  \
  45.441  \       ALL z:{z: Pow(x Un y) . z eqpoll succ(k)}. EX! w. w:t_n & z <= w; \
  45.442  \       t_n <= {v:Pow(x Un y). v eqpoll succ(k #+ m)};  \
  45.443 @@ -684,7 +684,7 @@
  45.444  (* The main theorem AC16(n, k) ==> WO4(n-k)                               *)
  45.445  (* ********************************************************************** *)
  45.446  
  45.447 -goalw thy [AC16_def,WO4_def]
  45.448 +Goalw [AC16_def,WO4_def]
  45.449          "!!n k. [| AC16(k #+ m, k); 0 < k; 0 < m; k:nat; m:nat |] ==> WO4(m)";
  45.450  by (rtac allI 1);
  45.451  by (excluded_middle_tac "Finite(A)" 1);
    46.1 --- a/src/ZF/AC/AC16_lemmas.ML	Mon Jun 22 17:12:27 1998 +0200
    46.2 +++ b/src/ZF/AC/AC16_lemmas.ML	Mon Jun 22 17:13:09 1998 +0200
    46.3 @@ -7,11 +7,11 @@
    46.4  
    46.5  open AC16_lemmas;
    46.6  
    46.7 -goal thy "!!a. a~:A ==> cons(a,A)-{a}=A";
    46.8 +Goal "!!a. a~:A ==> cons(a,A)-{a}=A";
    46.9  by (Fast_tac 1);
   46.10  qed "cons_Diff_eq";
   46.11  
   46.12 -goalw thy [lepoll_def] "1 lepoll X <-> (EX x. x:X)";
   46.13 +Goalw [lepoll_def] "1 lepoll X <-> (EX x. x:X)";
   46.14  by (rtac iffI 1);
   46.15  by (fast_tac (claset() addIs [inj_is_fun RS apply_type]) 1);
   46.16  by (etac exE 1);
   46.17 @@ -19,7 +19,7 @@
   46.18  by (fast_tac (claset() addSIs [lam_injective]) 1);
   46.19  qed "nat_1_lepoll_iff";
   46.20  
   46.21 -goal thy "X eqpoll 1 <-> (EX x. X={x})";
   46.22 +Goal "X eqpoll 1 <-> (EX x. X={x})";
   46.23  by (rtac iffI 1);
   46.24  by (etac eqpollE 1);
   46.25  by (dresolve_tac [nat_1_lepoll_iff RS iffD1] 1);
   46.26 @@ -27,12 +27,12 @@
   46.27  by (fast_tac (claset() addSIs [singleton_eqpoll_1]) 1);
   46.28  qed "eqpoll_1_iff_singleton";
   46.29  
   46.30 -goalw thy [succ_def] 
   46.31 +Goalw [succ_def] 
   46.32        "!!x. [| x eqpoll n; y~:x |] ==> cons(y,x) eqpoll succ(n)";
   46.33  by (fast_tac (claset() addSEs [cons_eqpoll_cong, mem_irrefl]) 1);
   46.34  qed "cons_eqpoll_succ";
   46.35  
   46.36 -goal thy "{Y:Pow(X). Y eqpoll 1} = {{x}. x:X}";
   46.37 +Goal "{Y:Pow(X). Y eqpoll 1} = {{x}. x:X}";
   46.38  by (rtac equalityI 1);
   46.39  by (rtac subsetI 1);
   46.40  by (etac CollectE 1);
   46.41 @@ -45,7 +45,7 @@
   46.42  by (fast_tac (claset() addSIs [singleton_eqpoll_1]) 1);
   46.43  qed "subsets_eqpoll_1_eq";
   46.44  
   46.45 -goalw thy [eqpoll_def, bij_def] "X eqpoll {{x}. x:X}";
   46.46 +Goalw [eqpoll_def, bij_def] "X eqpoll {{x}. x:X}";
   46.47  by (res_inst_tac [("x","lam x:X. {x}")] exI 1);
   46.48  by (rtac IntI 1);
   46.49  by (rewrite_goals_tac [inj_def, surj_def]);
   46.50 @@ -56,12 +56,12 @@
   46.51  by (fast_tac (claset() addSIs [lam_type]) 1);
   46.52  qed "eqpoll_RepFun_sing";
   46.53  
   46.54 -goal thy "{Y:Pow(X). Y eqpoll 1} eqpoll X";
   46.55 +Goal "{Y:Pow(X). Y eqpoll 1} eqpoll X";
   46.56  by (resolve_tac [subsets_eqpoll_1_eq RS ssubst] 1);
   46.57  by (resolve_tac [eqpoll_RepFun_sing RS eqpoll_sym] 1);
   46.58  qed "subsets_eqpoll_1_eqpoll";
   46.59  
   46.60 -goal thy "!!x. [| InfCard(x); y:Pow(x); y eqpoll succ(z) |]  \
   46.61 +Goal "!!x. [| InfCard(x); y:Pow(x); y eqpoll succ(z) |]  \
   46.62  \               ==> (LEAST i. i:y) : y";
   46.63  by (eresolve_tac [eqpoll_sym RS eqpoll_imp_lepoll RS 
   46.64                  succ_lepoll_imp_not_empty RS not_emptyE] 1);
   46.65 @@ -70,7 +70,7 @@
   46.66          addEs [Ord_in_Ord]) 1);
   46.67  qed "InfCard_Least_in";
   46.68  
   46.69 -goalw thy [lepoll_def] "!!i. [| InfCard(x); n:nat |] ==>  \
   46.70 +Goalw [lepoll_def] "!!i. [| InfCard(x); n:nat |] ==>  \
   46.71  \       {y:Pow(x). y eqpoll succ(succ(n))} lepoll  \
   46.72  \       x*{y:Pow(x). y eqpoll succ(n)}";
   46.73  by (res_inst_tac [("x","lam y:{y:Pow(x). y eqpoll succ(succ(n))}. \
   46.74 @@ -104,7 +104,7 @@
   46.75  by (fast_tac (claset() addSEs [leE,ltE]) 1);
   46.76  qed "set_of_Ord_succ_Union";
   46.77  
   46.78 -goal thy "!!i. j<=i ==> i ~: j";
   46.79 +Goal "!!i. j<=i ==> i ~: j";
   46.80  by (fast_tac (claset() addSEs [mem_irrefl]) 1);
   46.81  qed "subset_not_mem";
   46.82  
   46.83 @@ -113,19 +113,19 @@
   46.84  by (eresolve_tac prems 1);
   46.85  qed "succ_Union_not_mem";
   46.86  
   46.87 -goal thy "Union(cons(succ(Union(z)),z)) = succ(Union(z))";
   46.88 +Goal "Union(cons(succ(Union(z)),z)) = succ(Union(z))";
   46.89  by (Fast_tac 1);
   46.90  qed "Union_cons_eq_succ_Union";
   46.91  
   46.92 -goal thy "!!i. [| Ord(i); Ord(j) |] ==> i Un j = i | i Un j = j";
   46.93 +Goal "!!i. [| Ord(i); Ord(j) |] ==> i Un j = i | i Un j = j";
   46.94  by (fast_tac (claset() addSDs [le_imp_subset] addEs [Ord_linear_le]) 1);
   46.95  qed "Un_Ord_disj";
   46.96  
   46.97 -goal thy "!!X. x:X ==> Union(X) = x Un Union(X-{x})";
   46.98 +Goal "!!X. x:X ==> Union(X) = x Un Union(X-{x})";
   46.99  by (Fast_tac 1);
  46.100  qed "Union_eq_Un";
  46.101  
  46.102 -goal thy "!!n. n:nat ==>  \
  46.103 +Goal "!!n. n:nat ==>  \
  46.104  \       ALL z. (ALL y:z. Ord(y)) & z eqpoll n & z~=0 --> Union(z) : z";
  46.105  by (etac nat_induct 1);
  46.106  by (fast_tac (claset() addSDs [eqpoll_imp_lepoll RS lepoll_0_is_0]) 1);
  46.107 @@ -149,13 +149,13 @@
  46.108  by (rtac subst_elem 1 THEN (TRYALL assume_tac));
  46.109  qed "Union_in_lemma";
  46.110  
  46.111 -goal thy "!!z. [| ALL x:z. Ord(x); z eqpoll n; z~=0; n:nat |]  \
  46.112 +Goal "!!z. [| ALL x:z. Ord(x); z eqpoll n; z~=0; n:nat |]  \
  46.113  \               ==> Union(z) : z";
  46.114  by (dtac Union_in_lemma 1);
  46.115  by (fast_tac FOL_cs 1);
  46.116  qed "Union_in";
  46.117  
  46.118 -goal thy "!!x. [| InfCard(x); z:Pow(x); z eqpoll n; n:nat |]  \
  46.119 +Goal "!!x. [| InfCard(x); z:Pow(x); z eqpoll n; n:nat |]  \
  46.120  \               ==> succ(Union(z)) : x";
  46.121  by (resolve_tac [Limit_has_succ RS ltE] 1 THEN (assume_tac 3));
  46.122  by (etac InfCard_is_Limit 1);
  46.123 @@ -170,7 +170,7 @@
  46.124  		 (2, InfCard_is_Card RS Card_is_Ord RS Ord_in_Ord)]) 1);
  46.125  qed "succ_Union_in_x";
  46.126  
  46.127 -goalw thy [lepoll_def] "!!X. [| InfCard(x); n:nat |] ==>  \
  46.128 +Goalw [lepoll_def] "!!X. [| InfCard(x); n:nat |] ==>  \
  46.129  \       {y:Pow(x). y eqpoll succ(n)} lepoll  \
  46.130  \       {y:Pow(x). y eqpoll succ(succ(n))}";
  46.131  by (res_inst_tac [("x","lam z:{y:Pow(x). y eqpoll succ(n)}.  \
  46.132 @@ -188,7 +188,7 @@
  46.133  by (fast_tac (claset() addSIs [succ_Union_in_x, nat_succI]) 1);
  46.134  qed "succ_lepoll_succ_succ";
  46.135  
  46.136 -goal thy "!!X. [| InfCard(X); n:nat |]  \
  46.137 +Goal "!!X. [| InfCard(X); n:nat |]  \
  46.138  \       ==> {Y:Pow(X). Y eqpoll succ(n)} eqpoll X";
  46.139  by (etac nat_induct 1);
  46.140  by (rtac subsets_eqpoll_1_eqpoll 1);
  46.141 @@ -205,18 +205,18 @@
  46.142          addSIs [succ_lepoll_succ_succ]) 1);
  46.143  qed "subsets_eqpoll_X";
  46.144  
  46.145 -goalw thy [surj_def] "!!f. [| f:surj(A,B); y<=B |]  \
  46.146 +Goalw [surj_def] "!!f. [| f:surj(A,B); y<=B |]  \
  46.147  \       ==> f``(converse(f)``y) = y";
  46.148  by (fast_tac (claset() addDs [apply_equality2]
  46.149  	              addEs [apply_iff RS iffD2]) 1);
  46.150  qed "image_vimage_eq";
  46.151  
  46.152 -goal thy "!!f. [| f:inj(A,B); y<=A |] ==> converse(f)``(f``y) = y";
  46.153 +Goal "!!f. [| f:inj(A,B); y<=A |] ==> converse(f)``(f``y) = y";
  46.154  by (fast_tac (claset() addSEs [inj_is_fun RS apply_Pair]
  46.155                  addDs [inj_equality]) 1);
  46.156  qed "vimage_image_eq";
  46.157  
  46.158 -goalw thy [eqpoll_def] "!!A B. A eqpoll B  \
  46.159 +Goalw [eqpoll_def] "!!A B. A eqpoll B  \
  46.160  \       ==> {Y:Pow(A). Y eqpoll n} eqpoll {Y:Pow(B). Y eqpoll n}";
  46.161  by (etac exE 1);
  46.162  by (res_inst_tac [("x","lam X:{Y:Pow(A). EX f. f : bij(Y, n)}. f``X")] exI 1);
  46.163 @@ -232,22 +232,22 @@
  46.164  by (fast_tac (claset() addSEs [bij_is_surj RS image_vimage_eq]) 1);
  46.165  qed "subsets_eqpoll";
  46.166  
  46.167 -goalw thy [WO2_def] "!!X. WO2 ==> EX a. Card(a) & X eqpoll a";
  46.168 +Goalw [WO2_def] "!!X. WO2 ==> EX a. Card(a) & X eqpoll a";
  46.169  by (REPEAT (eresolve_tac [allE,exE,conjE] 1));
  46.170  by (fast_tac (claset() addSEs [well_ord_Memrel RS well_ord_cardinal_eqpoll RS
  46.171                  (eqpoll_sym RSN (2, eqpoll_trans)) RS eqpoll_sym]
  46.172                  addSIs [Card_cardinal]) 1);
  46.173  qed "WO2_imp_ex_Card";
  46.174  
  46.175 -goal thy "!!X. [| X lepoll Y; ~Finite(X) |] ==> ~Finite(Y)";
  46.176 +Goal "!!X. [| X lepoll Y; ~Finite(X) |] ==> ~Finite(Y)";
  46.177  by (fast_tac (empty_cs addEs [notE, lepoll_Finite] addSIs [notI]) 1); 
  46.178  qed "lepoll_infinite";
  46.179  
  46.180 -goalw thy [InfCard_def] "!!X. [| ~Finite(X); Card(X) |] ==> InfCard(X)";
  46.181 +Goalw [InfCard_def] "!!X. [| ~Finite(X); Card(X) |] ==> InfCard(X)";
  46.182  by (fast_tac (claset() addSEs [Card_is_Ord RS nat_le_infinite_Ord]) 1);
  46.183  qed "infinite_Card_is_InfCard";
  46.184  
  46.185 -goal thy "!!X n. [| WO2; n:nat; ~Finite(X) |]  \
  46.186 +Goal "!!X n. [| WO2; n:nat; ~Finite(X) |]  \
  46.187  \       ==> {Y:Pow(X). Y eqpoll succ(n)} eqpoll X";
  46.188  by (dtac WO2_imp_ex_Card 1);
  46.189  by (REPEAT (eresolve_tac [allE,exE,conjE] 1));
  46.190 @@ -259,12 +259,12 @@
  46.191  by (etac eqpoll_sym 1);
  46.192  qed "WO2_infinite_subsets_eqpoll_X";
  46.193  
  46.194 -goal thy "!!X. well_ord(X,R) ==> EX a. Card(a) & X eqpoll a";
  46.195 +Goal "!!X. well_ord(X,R) ==> EX a. Card(a) & X eqpoll a";
  46.196  by (fast_tac (claset() addSEs [well_ord_cardinal_eqpoll RS eqpoll_sym]
  46.197                  addSIs [Card_cardinal]) 1);
  46.198  qed "well_ord_imp_ex_Card";
  46.199  
  46.200 -goal thy "!!X n. [| well_ord(X,R); n:nat; ~Finite(X) |]  \
  46.201 +Goal "!!X n. [| well_ord(X,R); n:nat; ~Finite(X) |]  \
  46.202  \               ==> {Y:Pow(X). Y eqpoll succ(n)} eqpoll X";
  46.203  by (dtac well_ord_imp_ex_Card 1);
  46.204  by (REPEAT (eresolve_tac [allE,exE,conjE] 1));
    47.1 --- a/src/ZF/AC/AC17_AC1.ML	Mon Jun 22 17:12:27 1998 +0200
    47.2 +++ b/src/ZF/AC/AC17_AC1.ML	Mon Jun 22 17:13:09 1998 +0200
    47.3 @@ -11,7 +11,7 @@
    47.4  (* more properties of HH                                                   *)
    47.5  (* *********************************************************************** *)
    47.6  
    47.7 -goal thy "!!f. [| x - (UN j:LEAST i. HH(lam X:Pow(x)-{0}. {f`X}, x, i) = {x}. \
    47.8 +Goal "!!f. [| x - (UN j:LEAST i. HH(lam X:Pow(x)-{0}. {f`X}, x, i) = {x}. \
    47.9  \       HH(lam X:Pow(x)-{0}. {f`X}, x, j)) = 0;  \
   47.10  \       f : Pow(x)-{0} -> x |]  \
   47.11  \       ==> EX r. well_ord(x,r)";
   47.12 @@ -25,7 +25,7 @@
   47.13  (* theorems closer to the proof                                            *)
   47.14  (* *********************************************************************** *)
   47.15  
   47.16 -goalw thy AC_defs "!!Z. ~AC1 ==>  \
   47.17 +Goalw AC_defs "!!Z. ~AC1 ==>  \
   47.18  \               EX A. ALL f:Pow(A)-{0} -> A. EX u:Pow(A)-{0}. f`u ~: u";
   47.19  by (etac swap 1);
   47.20  by (rtac allI 1);
   47.21 @@ -37,7 +37,7 @@
   47.22  by (fast_tac (claset() addSIs [restrict_type]) 1);
   47.23  qed "not_AC1_imp_ex";
   47.24  
   47.25 -goal thy "!!x. [| ALL f:Pow(x) - {0} -> x. EX u: Pow(x) - {0}. f`u~:u;  \
   47.26 +Goal "!!x. [| ALL f:Pow(x) - {0} -> x. EX u: Pow(x) - {0}. f`u~:u;  \
   47.27  \       EX f: Pow(x)-{0}->x. \
   47.28  \       x - (UN a:(LEAST i. HH(lam X:Pow(x)-{0}. {f`X},x,i)={x}).  \
   47.29  \       HH(lam X:Pow(x)-{0}. {f`X},x,a)) = 0 |] \
   47.30 @@ -53,24 +53,24 @@
   47.31  by (Fast_tac 1);
   47.32  val lemma1 = result();
   47.33  
   47.34 -goal thy "!!x. ~ (EX f: Pow(x)-{0}->x. x - F(f) = 0)  \
   47.35 +Goal "!!x. ~ (EX f: Pow(x)-{0}->x. x - F(f) = 0)  \
   47.36  \       ==> (lam f: Pow(x)-{0}->x. x - F(f))  \
   47.37  \               : (Pow(x) -{0} -> x) -> Pow(x) - {0}";
   47.38  by (fast_tac (claset() addSIs [lam_type] addSDs [Diff_eq_0_iff RS iffD1]) 1);
   47.39  val lemma2 = result();
   47.40  
   47.41 -goal thy "!!f. [| f`Z : Z; Z:Pow(x)-{0} |] ==>  \
   47.42 +Goal "!!f. [| f`Z : Z; Z:Pow(x)-{0} |] ==>  \
   47.43  \       (lam X:Pow(x)-{0}. {f`X})`Z : Pow(Z)-{0}";
   47.44  by (Asm_full_simp_tac 1);
   47.45  by (fast_tac (claset() addSDs [equals0D]) 1);
   47.46  val lemma3 = result();
   47.47  
   47.48 -goal thy "!!z. EX f:F. f`((lam f:F. Q(f))`f) : (lam f:F. Q(f))`f  \
   47.49 +Goal "!!z. EX f:F. f`((lam f:F. Q(f))`f) : (lam f:F. Q(f))`f  \
   47.50  \       ==> EX f:F. f`Q(f) : Q(f)";
   47.51  by (Asm_full_simp_tac 1);
   47.52  val lemma4 = result();
   47.53  
   47.54 -goalw thy [AC17_def] "!!Z. AC17 ==> AC1";
   47.55 +Goalw [AC17_def] "!!Z. AC17 ==> AC1";
   47.56  by (rtac classical 1);
   47.57  by (eresolve_tac [not_AC1_imp_ex RS exE] 1);
   47.58  by (excluded_middle_tac
    48.1 --- a/src/ZF/AC/AC18_AC19.ML	Mon Jun 22 17:12:27 1998 +0200
    48.2 +++ b/src/ZF/AC/AC18_AC19.ML	Mon Jun 22 17:13:09 1998 +0200
    48.3 @@ -11,7 +11,7 @@
    48.4  (* AC1 ==> AC18                                                           *)
    48.5  (* ********************************************************************** *)
    48.6  
    48.7 -goal thy "!!f. [| f: (PROD b:{P(a). a:A}. b); ALL a:A. P(a)<=Q(a) |]  \
    48.8 +Goal "!!f. [| f: (PROD b:{P(a). a:A}. b); ALL a:A. P(a)<=Q(a) |]  \
    48.9  \               ==> (lam a:A. f`P(a)):(PROD a:A. Q(a))";
   48.10  by (rtac lam_type 1);
   48.11  by (dtac apply_type 1);
   48.12 @@ -20,7 +20,7 @@
   48.13  by (etac subsetD 1 THEN (assume_tac 1));
   48.14  qed "PROD_subsets";
   48.15  
   48.16 -goal thy "!!X. [| ALL A. 0 ~: A --> (EX f. f : (PROD X:A. X)); A ~= 0 |] ==>  \
   48.17 +Goal "!!X. [| ALL A. 0 ~: A --> (EX f. f : (PROD X:A. X)); A ~= 0 |] ==>  \
   48.18  \  (INT a:A. UN b:B(a). X(a, b)) <= (UN f:PROD a:A. B(a). INT a:A. X(a, f`a))";
   48.19  by (rtac subsetI 1);
   48.20  by (eres_inst_tac [("x","{{b:B(a). x:X(a,b)}. a:A}")] allE 1);
   48.21 @@ -55,14 +55,14 @@
   48.22  (* AC19 ==> AC1                                                           *)
   48.23  (* ********************************************************************** *)
   48.24  
   48.25 -goalw thy [u_def]
   48.26 +Goalw [u_def]
   48.27          "!!A. [| A ~= 0; 0 ~: A |] ==> {u_(a). a:A} ~= 0 & 0 ~: {u_(a). a:A}";
   48.28  by (fast_tac (claset() addSIs [not_emptyI, RepFunI]
   48.29                  addSEs [not_emptyE, RepFunE]
   48.30                  addSDs [sym RS (RepFun_eq_0_iff RS iffD1)]) 1);
   48.31  qed "RepRep_conj";
   48.32  
   48.33 -goal thy "!!c. [|c : a; x = c Un {0}; x ~: a |] ==> x - {0} : a";
   48.34 +Goal "!!c. [|c : a; x = c Un {0}; x ~: a |] ==> x - {0} : a";
   48.35  by (hyp_subst_tac 1);
   48.36  by (rtac subst_elem 1 THEN (assume_tac 1));
   48.37  by (rtac equalityI 1);
   48.38 @@ -73,14 +73,14 @@
   48.39  by (fast_tac (claset() addEs [notE, subst_elem])  1);
   48.40  val lemma1_1 = result();
   48.41  
   48.42 -goalw thy [u_def]
   48.43 +Goalw [u_def]
   48.44          "!!a. [| f`(u_(a)) ~: a; f: (PROD B:{u_(a). a:A}. B); a:A |]  \
   48.45  \               ==> f`(u_(a))-{0} : a";
   48.46  by (fast_tac (claset() addSEs [RepFunI, RepFunE, lemma1_1]
   48.47                  addSDs [apply_type]) 1);
   48.48  val lemma1_2 = result();
   48.49  
   48.50 -goal thy  "!!A. EX f. f: (PROD B:{u_(a). a:A}. B) ==> EX f. f: (PROD B:A. B)";
   48.51 +Goal  "!!A. EX f. f: (PROD B:{u_(a). a:A}. B) ==> EX f. f: (PROD B:A. B)";
   48.52  by (etac exE 1);
   48.53  by (res_inst_tac
   48.54          [("x","lam a:A. if(f`(u_(a)) : a, f`(u_(a)), f`(u_(a))-{0})")] exI 1);
   48.55 @@ -91,21 +91,21 @@
   48.56  by (fast_tac (claset() addSEs [lemma1_2]) 1);
   48.57  val lemma1 = result();
   48.58  
   48.59 -goalw thy [u_def] "!!a. a~=0 ==> 0: (UN b:u_(a). b)";
   48.60 +Goalw [u_def] "!!a. a~=0 ==> 0: (UN b:u_(a). b)";
   48.61  by (fast_tac (claset() addSEs [not_emptyE] addSIs [UN_I, RepFunI]) 1);
   48.62  val lemma2_1 = result();
   48.63  
   48.64 -goal thy "!!A C. [| A~=0; 0~:A |] ==> (INT x:{u_(a). a:A}. UN b:x. b) ~= 0";
   48.65 +Goal "!!A C. [| A~=0; 0~:A |] ==> (INT x:{u_(a). a:A}. UN b:x. b) ~= 0";
   48.66  by (etac not_emptyE 1);
   48.67  by (res_inst_tac [("a","0")] not_emptyI 1);
   48.68  by (fast_tac (claset() addSIs [INT_I, RepFunI, lemma2_1] addSEs [RepFunE]) 1);
   48.69  val lemma2 = result();
   48.70  
   48.71 -goal thy "!!F. (UN f:F. P(f)) ~= 0 ==> F ~= 0";
   48.72 +Goal "!!F. (UN f:F. P(f)) ~= 0 ==> F ~= 0";
   48.73  by (fast_tac (claset() addSEs [not_emptyE]) 1);
   48.74  val lemma3 = result();
   48.75  
   48.76 -goalw thy AC_defs "!!Z. AC19 ==> AC1";
   48.77 +Goalw AC_defs "!!Z. AC19 ==> AC1";
   48.78  by (REPEAT (resolve_tac [allI,impI] 1));
   48.79  by (excluded_middle_tac "A=0" 1);
   48.80  by (fast_tac (claset() addSIs [exI, empty_fun]) 2);
    49.1 --- a/src/ZF/AC/AC1_AC17.ML	Mon Jun 22 17:12:27 1998 +0200
    49.2 +++ b/src/ZF/AC/AC1_AC17.ML	Mon Jun 22 17:13:09 1998 +0200
    49.3 @@ -5,13 +5,13 @@
    49.4  The proof of AC1 ==> AC17
    49.5  *)
    49.6  
    49.7 -goal thy "!!f. f : (PROD X:Pow(A) - {0}. X) ==> f : (Pow(A) - {0} -> A)";
    49.8 +Goal "!!f. f : (PROD X:Pow(A) - {0}. X) ==> f : (Pow(A) - {0} -> A)";
    49.9  by (rtac Pi_type 1 THEN (assume_tac 1));
   49.10  by (dtac apply_type 1 THEN (assume_tac 1));
   49.11  by (Fast_tac 1);
   49.12  val lemma1 = result();
   49.13  
   49.14 -goalw thy AC_defs "!!Z. AC1 ==> AC17";
   49.15 +Goalw AC_defs "!!Z. AC1 ==> AC17";
   49.16  by (rtac allI 1);
   49.17  by (rtac ballI 1);
   49.18  by (eres_inst_tac [("x","Pow(A)-{0}")] allE 1);
    50.1 --- a/src/ZF/AC/AC1_WO2.ML	Mon Jun 22 17:12:27 1998 +0200
    50.2 +++ b/src/ZF/AC/AC1_WO2.ML	Mon Jun 22 17:13:09 1998 +0200
    50.3 @@ -17,7 +17,7 @@
    50.4  by (fast_tac (claset() addSIs [prem RS Pi_weaken_type]) 1);
    50.5  val lemma1 = uresult() |> standard;
    50.6  
    50.7 -goalw thy [AC1_def, WO2_def, eqpoll_def] "!!Z. AC1 ==> WO2";
    50.8 +Goalw [AC1_def, WO2_def, eqpoll_def] "!!Z. AC1 ==> WO2";
    50.9  by (rtac allI 1);
   50.10  by (eres_inst_tac [("x","Pow(A)-{0}")] allE 1);
   50.11  by (fast_tac (claset() addSDs [lemma1] addSIs [Ord_Least]) 1);
    51.1 --- a/src/ZF/AC/AC2_AC6.ML	Mon Jun 22 17:12:27 1998 +0200
    51.2 +++ b/src/ZF/AC/AC2_AC6.ML	Mon Jun 22 17:13:09 1998 +0200
    51.3 @@ -14,17 +14,17 @@
    51.4  (* AC1 ==> AC2                                                            *)
    51.5  (* ********************************************************************** *)
    51.6  
    51.7 -goal thy "!!B. [| B:A; f:(PROD X:A. X); 0~:A |]  \
    51.8 +Goal "!!B. [| B:A; f:(PROD X:A. X); 0~:A |]  \
    51.9  \               ==> {f`B} <= B Int {f`C. C:A}";
   51.10  by (fast_tac (claset() addSEs [apply_type]) 1);
   51.11  val lemma1 = result();
   51.12  
   51.13 -goalw thy [pairwise_disjoint_def]
   51.14 +Goalw [pairwise_disjoint_def]
   51.15          "!!A. [| pairwise_disjoint(A); B:A; C:A; D:B; D:C |] ==> f`B = f`C";
   51.16  by (fast_tac (claset() addSEs [equals0D]) 1);
   51.17  val lemma2 = result();
   51.18  
   51.19 -goalw thy AC_defs "!!Z. AC1 ==> AC2"; 
   51.20 +Goalw AC_defs "!!Z. AC1 ==> AC2"; 
   51.21  by (rtac allI 1);
   51.22  by (rtac impI 1);
   51.23  by (REPEAT (eresolve_tac [asm_rl,conjE,allE,exE,impE] 1));
   51.24 @@ -38,12 +38,12 @@
   51.25  (* AC2 ==> AC1                                                            *)
   51.26  (* ********************************************************************** *)
   51.27  
   51.28 -goal thy "!!A. 0~:A ==> 0 ~: {B*{B}. B:A}";
   51.29 +Goal "!!A. 0~:A ==> 0 ~: {B*{B}. B:A}";
   51.30  by (fast_tac (claset() addSDs [sym RS (Sigma_empty_iff RS iffD1)]
   51.31          addSEs [RepFunE, equals0D]) 1);
   51.32  val lemma1 = result();
   51.33  
   51.34 -goal thy "!!A. [| X*{X} Int C = {y}; X:A |]  \
   51.35 +Goal "!!A. [| X*{X} Int C = {y}; X:A |]  \
   51.36  \               ==> (THE y. X*{X} Int C = {y}): X*A";
   51.37  by (rtac subst_elem 1);
   51.38  by (fast_tac (claset() addSIs [the_equality]
   51.39 @@ -51,7 +51,7 @@
   51.40  by (fast_tac (claset() addSEs [equalityE, make_elim singleton_subsetD]) 1);
   51.41  val lemma2 = result();
   51.42  
   51.43 -goal thy "!!A. ALL D:{E*{E}. E:A}. EX y. D Int C = {y}  \
   51.44 +Goal "!!A. ALL D:{E*{E}. E:A}. EX y. D Int C = {y}  \
   51.45  \       ==> (lam x:A. fst(THE z. (x*{x} Int C = {z}))) :  \
   51.46  \               (PROD X:A. X) ";
   51.47  by (fast_tac (claset() addSEs [lemma2]
   51.48 @@ -59,7 +59,7 @@
   51.49                  addSDs [bspec]) 1);
   51.50  val lemma3 = result();
   51.51  
   51.52 -goalw thy (AC_defs@AC_aux_defs) "!!Z. AC2 ==> AC1";
   51.53 +Goalw (AC_defs@AC_aux_defs) "!!Z. AC2 ==> AC1";
   51.54  by (REPEAT (resolve_tac [allI, impI] 1));
   51.55  by (REPEAT (eresolve_tac [allE, impE] 1));
   51.56  by (fast_tac (claset() addSEs [lemma3]) 2);
   51.57 @@ -71,11 +71,11 @@
   51.58  (* AC1 ==> AC4                                                            *)
   51.59  (* ********************************************************************** *)
   51.60  
   51.61 -goal thy "!!R. 0 ~: {R``{x}. x:domain(R)}";
   51.62 +Goal "!!R. 0 ~: {R``{x}. x:domain(R)}";
   51.63  by (fast_tac (claset() addEs [sym RS equals0D]) 1);
   51.64  val lemma = result();
   51.65  
   51.66 -goalw thy AC_defs "!!Z. AC1 ==> AC4";
   51.67 +Goalw AC_defs "!!Z. AC1 ==> AC4";
   51.68  by (REPEAT (resolve_tac [allI, impI] 1));
   51.69  by (REPEAT (eresolve_tac [allE, lemma RSN (2, impE), exE] 1));
   51.70  by (best_tac (claset() addSIs [lam_type] addSEs [apply_type]) 1);
   51.71 @@ -86,19 +86,19 @@
   51.72  (* AC4 ==> AC3                                                            *)
   51.73  (* ********************************************************************** *)
   51.74  
   51.75 -goal thy "!!f. f:A->B ==> (UN z:A. {z}*f`z) <= A*Union(B)";
   51.76 +Goal "!!f. f:A->B ==> (UN z:A. {z}*f`z) <= A*Union(B)";
   51.77  by (fast_tac (claset() addSDs [apply_type]) 1);
   51.78  val lemma1 = result();
   51.79  
   51.80 -goal thy "!!f. domain(UN z:A. {z}*f(z)) = {a:A. f(a)~=0}";
   51.81 +Goal "!!f. domain(UN z:A. {z}*f(z)) = {a:A. f(a)~=0}";
   51.82  by (fast_tac (claset() addSIs [not_emptyI] addDs [range_type]) 1);
   51.83  val lemma2 = result();
   51.84  
   51.85 -goal thy "!!f. x:A ==> (UN z:A. {z}*f(z))``{x} = f(x)";
   51.86 +Goal "!!f. x:A ==> (UN z:A. {z}*f(z))``{x} = f(x)";
   51.87  by (Fast_tac 1);
   51.88  val lemma3 = result();
   51.89  
   51.90 -goalw thy AC_defs "!!Z. AC4 ==> AC3";
   51.91 +Goalw AC_defs "!!Z. AC4 ==> AC3";
   51.92  by (REPEAT (resolve_tac [allI,ballI] 1));
   51.93  by (REPEAT (eresolve_tac [allE,impE] 1));
   51.94  by (etac lemma1 1);
   51.95 @@ -110,13 +110,13 @@
   51.96  (* AC3 ==> AC1                                                            *)
   51.97  (* ********************************************************************** *)
   51.98  
   51.99 -goal thy "!!A. b~:A ==> (PROD x:{a:A. id(A)`a~=b}. id(A)`x) = (PROD x:A. x)";
  51.100 +Goal "!!A. b~:A ==> (PROD x:{a:A. id(A)`a~=b}. id(A)`x) = (PROD x:A. x)";
  51.101  by (asm_full_simp_tac (simpset() addsimps [id_def] addcongs [Pi_cong]) 1);
  51.102  by (res_inst_tac [("b","A")] subst_context 1);
  51.103  by (Fast_tac 1);
  51.104  val lemma = result();
  51.105  
  51.106 -goalw thy AC_defs "!!Z. AC3 ==> AC1";
  51.107 +Goalw AC_defs "!!Z. AC3 ==> AC1";
  51.108  by (REPEAT (resolve_tac [allI, impI] 1));
  51.109  by (REPEAT (eresolve_tac [allE, ballE] 1));
  51.110  by (fast_tac (claset() addSIs [id_type]) 2);
  51.111 @@ -127,7 +127,7 @@
  51.112  (* AC4 ==> AC5                                                            *)
  51.113  (* ********************************************************************** *)
  51.114  
  51.115 -goalw thy (range_def::AC_defs) "!!Z. AC4 ==> AC5";
  51.116 +Goalw (range_def::AC_defs) "!!Z. AC4 ==> AC5";
  51.117  by (REPEAT (resolve_tac [allI,ballI] 1));
  51.118  by (REPEAT (eresolve_tac [allE,impE] 1));
  51.119  by (eresolve_tac [fun_is_rel RS converse_type] 1);
  51.120 @@ -148,11 +148,11 @@
  51.121  (* AC5 ==> AC4, Rubin & Rubin, p. 11                                      *)
  51.122  (* ********************************************************************** *)
  51.123  
  51.124 -goal thy "!!A. R <= A*B ==> (lam x:R. fst(x)) : R -> A";
  51.125 +Goal "!!A. R <= A*B ==> (lam x:R. fst(x)) : R -> A";
  51.126  by (fast_tac (claset() addSIs [lam_type, fst_type]) 1);
  51.127  val lemma1 = result();
  51.128  
  51.129 -goalw thy [range_def] "!!A. R <= A*B ==> range(lam x:R. fst(x)) = domain(R)";
  51.130 +Goalw [range_def] "!!A. R <= A*B ==> range(lam x:R. fst(x)) = domain(R)";
  51.131  by (rtac equalityI 1);
  51.132  by (fast_tac (claset() addSEs [lamE]
  51.133                  addEs [subst_elem]
  51.134 @@ -163,13 +163,13 @@
  51.135  by (fast_tac (claset() addSEs [lamI RS subst_elem] addIs [fst_conv RS ssubst]) 1);
  51.136  val lemma2 = result();
  51.137  
  51.138 -goal thy "!!A. [| EX f: A->C. P(f,domain(f)); A=B |] ==>  EX f: B->C. P(f,B)";
  51.139 +Goal "!!A. [| EX f: A->C. P(f,domain(f)); A=B |] ==>  EX f: B->C. P(f,B)";
  51.140  by (etac bexE 1);
  51.141  by (forward_tac [domain_of_fun] 1);
  51.142  by (Fast_tac 1);
  51.143  val lemma3 = result();
  51.144  
  51.145 -goal thy "!!g. [| R <= A*B; g: C->R; ALL x:C. (lam z:R. fst(z))` (g`x) = x |] \
  51.146 +Goal "!!g. [| R <= A*B; g: C->R; ALL x:C. (lam z:R. fst(z))` (g`x) = x |] \
  51.147  \               ==> (lam x:C. snd(g`x)): (PROD x:C. R``{x})";
  51.148  by (rtac lam_type 1);
  51.149  by (dtac apply_type 1 THEN (assume_tac 1));
  51.150 @@ -180,7 +180,7 @@
  51.151  by (Asm_full_simp_tac 1);
  51.152  val lemma4 = result();
  51.153  
  51.154 -goalw thy AC_defs "!!Z. AC5 ==> AC4";
  51.155 +Goalw AC_defs "!!Z. AC5 ==> AC4";
  51.156  by (REPEAT (resolve_tac [allI,impI] 1));
  51.157  by (REPEAT (eresolve_tac [allE,ballE] 1));
  51.158  by (eresolve_tac [lemma1 RSN (2, notE)] 2 THEN (assume_tac 2));
  51.159 @@ -193,7 +193,7 @@
  51.160  (* AC1 <-> AC6                                                            *)
  51.161  (* ********************************************************************** *)
  51.162  
  51.163 -goalw thy AC_defs "AC1 <-> AC6";
  51.164 +Goalw AC_defs "AC1 <-> AC6";
  51.165  by (fast_tac (claset() addDs [equals0D] addSEs [not_emptyE]) 1);
  51.166  qed "AC1_iff_AC6";
  51.167  
    52.1 --- a/src/ZF/AC/AC7_AC9.ML	Mon Jun 22 17:12:27 1998 +0200
    52.2 +++ b/src/ZF/AC/AC7_AC9.ML	Mon Jun 22 17:13:09 1998 +0200
    52.3 @@ -17,26 +17,26 @@
    52.4  by (Fast_tac 1);
    52.5  qed "mem_not_eq_not_mem";
    52.6  
    52.7 -goal thy "!!A. [| 0~:A; B:A |] ==> (nat->Union(A))*B ~= 0";
    52.8 +Goal "!!A. [| 0~:A; B:A |] ==> (nat->Union(A))*B ~= 0";
    52.9  by (fast_tac (claset() addSDs [Sigma_empty_iff RS iffD1]
   52.10                  addDs [fun_space_emptyD, mem_not_eq_not_mem]
   52.11                  addEs [equals0D]
   52.12                  addSIs [equals0I,UnionI]) 1);
   52.13  qed "Sigma_fun_space_not0";
   52.14  
   52.15 -goal thy "!!A C. (ALL B:A. B eqpoll C) ==> (ALL B1:A. ALL B2:A. B1 eqpoll B2)";
   52.16 +Goal "!!A C. (ALL B:A. B eqpoll C) ==> (ALL B1:A. ALL B2:A. B1 eqpoll B2)";
   52.17  by (REPEAT (rtac ballI 1));
   52.18  by (resolve_tac [bspec RS (bspec RSN (2, eqpoll_sym RSN (2, eqpoll_trans)))] 1
   52.19          THEN REPEAT (assume_tac 1));
   52.20  qed "all_eqpoll_imp_pair_eqpoll";
   52.21  
   52.22 -goal thy "!!A. [| ALL a:A. if(a=b, P(a), Q(a)) = if(a=b, R(a), S(a)); b:A   \
   52.23 +Goal "!!A. [| ALL a:A. if(a=b, P(a), Q(a)) = if(a=b, R(a), S(a)); b:A   \
   52.24  \       |] ==> P(b)=R(b)";
   52.25  by (dtac bspec 1 THEN (assume_tac 1));
   52.26  by (Asm_full_simp_tac 1);
   52.27  qed "if_eqE1";
   52.28  
   52.29 -goal thy "!!A. ALL a:A. if(a=b, P(a), Q(a)) = if(a=b, R(a), S(a))  \
   52.30 +Goal "!!A. ALL a:A. if(a=b, P(a), Q(a)) = if(a=b, R(a), S(a))  \
   52.31  \       ==> ALL a:A. a~=b --> Q(a)=S(a)";
   52.32  by (rtac ballI 1);
   52.33  by (rtac impI 1);
   52.34 @@ -44,13 +44,13 @@
   52.35  by (Asm_full_simp_tac 1);
   52.36  qed "if_eqE2";
   52.37  
   52.38 -goal thy "!!A. [| (lam x:A. f(x))=(lam x:A. g(x)); a:A |] ==> f(a)=g(a)";
   52.39 +Goal "!!A. [| (lam x:A. f(x))=(lam x:A. g(x)); a:A |] ==> f(a)=g(a)";
   52.40  by (fast_tac (claset() addDs [subsetD]
   52.41                  addSIs [lamI]
   52.42                  addEs [equalityE, lamE]) 1);
   52.43  qed "lam_eqE";
   52.44  
   52.45 -goalw thy [inj_def]
   52.46 +Goalw [inj_def]
   52.47          "!!A. C:A ==> (lam g:(nat->Union(A))*C.  \
   52.48  \               (lam n:nat. if(n=0, snd(g), fst(g)`(n #- 1))))  \
   52.49  \               : inj((nat->Union(A))*C, (nat->Union(A)) ) ";
   52.50 @@ -70,7 +70,7 @@
   52.51  by (asm_full_simp_tac (simpset() addsimps [succ_not_0 RS if_not_P]) 1);
   52.52  val lemma = result();
   52.53  
   52.54 -goal thy "!!A. [| C:A; 0~:A |] ==> (nat->Union(A)) * C eqpoll (nat->Union(A))";
   52.55 +Goal "!!A. [| C:A; 0~:A |] ==> (nat->Union(A)) * C eqpoll (nat->Union(A))";
   52.56  by (rtac eqpollI 1);
   52.57  by (fast_tac (claset() addSEs [prod_lepoll_self, not_sym RS not_emptyE,
   52.58                  subst_elem] addEs [swap]) 2);
   52.59 @@ -83,7 +83,7 @@
   52.60  (* AC6 ==> AC7                                                            *)
   52.61  (* ********************************************************************** *)
   52.62  
   52.63 -goalw thy AC_defs "!!Z. AC6 ==> AC7";
   52.64 +Goalw AC_defs "!!Z. AC6 ==> AC7";
   52.65  by (Fast_tac 1);
   52.66  qed "AC6_AC7";
   52.67  
   52.68 @@ -93,27 +93,27 @@
   52.69  (* the proof.                                                             *)
   52.70  (* ********************************************************************** *)
   52.71  
   52.72 -goal thy "!!y. y: (PROD B:A. Y*B) ==> (lam B:A. snd(y`B)): (PROD B:A. B)";
   52.73 +Goal "!!y. y: (PROD B:A. Y*B) ==> (lam B:A. snd(y`B)): (PROD B:A. B)";
   52.74  by (fast_tac (claset() addSIs [lam_type, snd_type, apply_type]) 1);
   52.75  val lemma1_1 = result();
   52.76  
   52.77 -goal thy "!!A. y: (PROD B:{Y*C. C:A}. B)  \
   52.78 +Goal "!!A. y: (PROD B:{Y*C. C:A}. B)  \
   52.79  \               ==> (lam B:A. y`(Y*B)): (PROD B:A. Y*B)";
   52.80  by (fast_tac (claset() addSIs [lam_type, apply_type]) 1);
   52.81  val lemma1_2 = result();
   52.82  
   52.83 -goal thy "!!A. (PROD B:{(nat->Union(A))*C. C:A}. B) ~= 0  \
   52.84 +Goal "!!A. (PROD B:{(nat->Union(A))*C. C:A}. B) ~= 0  \
   52.85  \               ==> (PROD B:A. B) ~= 0";
   52.86  by (fast_tac (claset() addSIs [equals0I,lemma1_1, lemma1_2]
   52.87                  addSEs [equals0D]) 1);
   52.88  val lemma1 = result();
   52.89  
   52.90 -goal thy "!!A. 0 ~: A ==> 0 ~: {(nat -> Union(A)) * C. C:A}";
   52.91 +Goal "!!A. 0 ~: A ==> 0 ~: {(nat -> Union(A)) * C. C:A}";
   52.92  by (fast_tac (claset() addEs [RepFunE,
   52.93                  Sigma_fun_space_not0 RS not_sym RS notE]) 1);
   52.94  val lemma2 = result();
   52.95  
   52.96 -goalw thy AC_defs "!!Z. AC7 ==> AC6";
   52.97 +Goalw AC_defs "!!Z. AC7 ==> AC6";
   52.98  by (rtac allI 1);
   52.99  by (rtac impI 1);
  52.100  by (excluded_middle_tac "A=0" 1);
  52.101 @@ -131,7 +131,7 @@
  52.102  (* AC1 ==> AC8                                                            *)
  52.103  (* ********************************************************************** *)
  52.104  
  52.105 -goalw thy [eqpoll_def]
  52.106 +Goalw [eqpoll_def]
  52.107          "!!A. ALL B:A. EX B1 B2. B=<B1,B2> & B1 eqpoll B2  \
  52.108  \       ==> 0 ~: { bij(fst(B),snd(B)). B:A }";
  52.109  by (rtac notI 1);
  52.110 @@ -142,13 +142,13 @@
  52.111  by (Asm_full_simp_tac 1);
  52.112  val lemma1 = result();
  52.113  
  52.114 -goal thy "!!A. [| f: (PROD X:RepFun(A,p). X); D:A |]  \
  52.115 +Goal "!!A. [| f: (PROD X:RepFun(A,p). X); D:A |]  \
  52.116  \               ==> (lam x:A. f`p(x))`D : p(D)";
  52.117  by (resolve_tac [beta RS ssubst] 1 THEN (assume_tac 1));
  52.118  by (fast_tac (claset() addSEs [apply_type]) 1);
  52.119  val lemma2 = result();
  52.120  
  52.121 -goalw thy AC_defs "!!Z. AC1 ==> AC8";
  52.122 +Goalw AC_defs "!!Z. AC1 ==> AC8";
  52.123  by (rtac allI 1);
  52.124  by (etac allE 1);
  52.125  by (rtac impI 1);
  52.126 @@ -164,16 +164,16 @@
  52.127  (*    AC8 ==> AC1 and AC1 ==> AC9                                         *)
  52.128  (* ********************************************************************** *)
  52.129  
  52.130 -goal thy "!!A. ALL B1:A. ALL B2:A. B1 eqpoll B2 ==>  \
  52.131 +Goal "!!A. ALL B1:A. ALL B2:A. B1 eqpoll B2 ==>  \
  52.132  \               ALL B:A*A. EX B1 B2. B=<B1,B2> & B1 eqpoll B2";
  52.133  by (Fast_tac 1);
  52.134  val lemma1 = result();
  52.135  
  52.136 -goal thy "!!f. f:bij(fst(<a,b>),snd(<a,b>)) ==> f:bij(a,b)";
  52.137 +Goal "!!f. f:bij(fst(<a,b>),snd(<a,b>)) ==> f:bij(a,b)";
  52.138  by (Asm_full_simp_tac 1);
  52.139  val lemma2 = result();
  52.140  
  52.141 -goalw thy AC_defs "!!Z. AC8 ==> AC9";
  52.142 +Goalw AC_defs "!!Z. AC8 ==> AC9";
  52.143  by (rtac allI 1);
  52.144  by (rtac impI 1);
  52.145  by (etac allE 1);
  52.146 @@ -196,7 +196,7 @@
  52.147          ((prod_commute_eqpoll RS eqpoll_imp_lepoll) RSN (2,lepoll_trans));
  52.148  
  52.149  
  52.150 -goal thy "!!A. [| 0~:A; A~=0 |]  \
  52.151 +Goal "!!A. [| 0~:A; A~=0 |]  \
  52.152  \       ==> ALL B1: ({((nat->Union(A))*B)*nat. B:A}  \
  52.153  \               Un {cons(0,((nat->Union(A))*B)*nat). B:A}).  \
  52.154  \       ALL B2: ({((nat->Union(A))*B)*nat. B:A}  \
  52.155 @@ -209,7 +209,7 @@
  52.156                          (2, prod_eqpoll_cong), Sigma_fun_space_eqpoll]) 1);
  52.157  val lemma1 = result();
  52.158  
  52.159 -goal thy "!!A. ALL B1:{(F*B)*N. B:A} Un {cons(0,(F*B)*N). B:A}.  \
  52.160 +Goal "!!A. ALL B1:{(F*B)*N. B:A} Un {cons(0,(F*B)*N). B:A}.  \
  52.161  \       ALL B2:{(F*B)*N. B:A}  \
  52.162  \       Un {cons(0,(F*B)*N). B:A}. f`<B1,B2> : bij(B1, B2)  \
  52.163  \       ==> (lam B:A. snd(fst((f`<cons(0,(F*B)*N),(F*B)*N>)`0))) :  \
  52.164 @@ -221,7 +221,7 @@
  52.165  by (fast_tac (claset() addSIs [fun_weaken_type, bij_is_fun]) 1);
  52.166  val lemma2 = result();
  52.167  
  52.168 -goalw thy AC_defs "!!Z. AC9 ==> AC1";
  52.169 +Goalw AC_defs "!!Z. AC9 ==> AC1";
  52.170  by (rtac allI 1);
  52.171  by (rtac impI 1);
  52.172  by (etac allE 1);
    53.1 --- a/src/ZF/AC/AC_Equiv.ML	Mon Jun 22 17:12:27 1998 +0200
    53.2 +++ b/src/ZF/AC/AC_Equiv.ML	Mon Jun 22 17:13:09 1998 +0200
    53.3 @@ -38,7 +38,7 @@
    53.4  (*             lemmas concerning FOL and pure ZF theory                   *)
    53.5  (* ********************************************************************** *)
    53.6  
    53.7 -goal thy "!!X. (A->X)=0 ==> X=0";
    53.8 +Goal "!!X. (A->X)=0 ==> X=0";
    53.9  by (fast_tac (claset() addSIs [equals0I] addEs [lam_type RSN (2, equals0D)]) 1);
   53.10  qed "fun_space_emptyD";
   53.11  
   53.12 @@ -95,12 +95,12 @@
   53.13  by (asm_simp_tac (simpset() addsimps [Card_is_Ord RS nat_le_infinite_Ord]) 1);
   53.14  qed "Inf_Card_is_InfCard";
   53.15  
   53.16 -goal thy "(THE z. {x}={z}) = x";
   53.17 +Goal "(THE z. {x}={z}) = x";
   53.18  by (fast_tac (claset() addSIs [the_equality]
   53.19                  addSEs [singleton_eq_iff RS iffD1 RS sym]) 1);
   53.20  qed "the_element";
   53.21  
   53.22 -goal thy "(lam x:A. {x}) : bij(A, {{x}. x:A})";
   53.23 +Goal "(lam x:A. {x}) : bij(A, {{x}. x:A})";
   53.24  by (res_inst_tac [("d","%z. THE x. z={x}")] lam_bijective 1);
   53.25  by (TRYALL (eresolve_tac [RepFunI, RepFunE]));
   53.26  by (REPEAT (asm_full_simp_tac (simpset() addsimps [the_element]) 1));
   53.27 @@ -118,15 +118,15 @@
   53.28          addSIs [major RS CollectD1 RS Pi_type, major RS CollectD2]) 1);
   53.29  qed "inj_strengthen_type";
   53.30  
   53.31 -goal thy "A*B=0 <-> A=0 | B=0";
   53.32 +Goal "A*B=0 <-> A=0 | B=0";
   53.33  by (fast_tac (claset() addSIs [equals0I] addEs [equals0D]) 1);
   53.34  qed "Sigma_empty_iff";
   53.35  
   53.36 -goalw thy [Finite_def] "!!n. n:nat ==> Finite(n)";
   53.37 +Goalw [Finite_def] "!!n. n:nat ==> Finite(n)";
   53.38  by (fast_tac (claset() addSIs [eqpoll_refl]) 1);
   53.39  qed "nat_into_Finite";
   53.40  
   53.41 -goalw thy [Finite_def] "~Finite(nat)";
   53.42 +Goalw [Finite_def] "~Finite(nat)";
   53.43  by (fast_tac (claset() addSDs [eqpoll_imp_lepoll]
   53.44                  addIs [Ord_nat RSN (2, ltI) RS lt_not_lepoll RS notE]) 1);
   53.45  qed "nat_not_Finite";
   53.46 @@ -137,7 +137,7 @@
   53.47  (* Another elimination rule for EX!                                       *)
   53.48  (* ********************************************************************** *)
   53.49  
   53.50 -goal thy "!!x. [| EX! x. P(x); P(x); P(y) |] ==> x=y";
   53.51 +Goal "!!x. [| EX! x. P(x); P(x); P(y) |] ==> x=y";
   53.52  by (etac ex1E 1);
   53.53  by (res_inst_tac [("b","xa")] (sym RSN (2, trans)) 1);
   53.54  by (Fast_tac 1);
   53.55 @@ -148,7 +148,7 @@
   53.56  (* image of a surjection                                                  *)
   53.57  (* ********************************************************************** *)
   53.58  
   53.59 -goalw thy [surj_def] "!!f. f : surj(A, B) ==> f``A = B";
   53.60 +Goalw [surj_def] "!!f. f : surj(A, B) ==> f``A = B";
   53.61  by (etac CollectE 1);
   53.62  by (resolve_tac [subset_refl RSN (2, image_fun) RS ssubst] 1 
   53.63      THEN (assume_tac 1));
   53.64 @@ -156,11 +156,11 @@
   53.65  qed "surj_image_eq";
   53.66  
   53.67  
   53.68 -goal thy "!!y. succ(x) lepoll y ==> y ~= 0";
   53.69 +Goal "!!y. succ(x) lepoll y ==> y ~= 0";
   53.70  by (fast_tac (claset() addSDs [lepoll_0_is_0]) 1);
   53.71  qed "succ_lepoll_imp_not_empty";
   53.72  
   53.73 -goal thy "!!x. x eqpoll succ(n) ==> x ~= 0";
   53.74 +Goal "!!x. x eqpoll succ(n) ==> x ~= 0";
   53.75  by (fast_tac (claset() addSEs [eqpoll_sym RS eqpoll_0_is_0 RS succ_neq_0]) 1);
   53.76  qed "eqpoll_succ_imp_not_empty";
   53.77  
    54.1 --- a/src/ZF/AC/Cardinal_aux.ML	Mon Jun 22 17:12:27 1998 +0200
    54.2 +++ b/src/ZF/AC/Cardinal_aux.ML	Mon Jun 22 17:13:09 1998 +0200
    54.3 @@ -26,7 +26,7 @@
    54.4  by (fast_tac (claset() addSDs [lepoll_imp_ex_le_eqpoll] addSEs [leE]) 1);
    54.5  qed "lesspoll_imp_ex_lt_eqpoll";
    54.6  
    54.7 -goalw thy [InfCard_def] "!!i. [| ~Finite(i); Ord(i) |] ==> InfCard(|i|)";
    54.8 +Goalw [InfCard_def] "!!i. [| ~Finite(i); Ord(i) |] ==> InfCard(|i|)";
    54.9  by (rtac conjI 1);
   54.10  by (rtac Card_cardinal 1);
   54.11  by (resolve_tac [Card_nat RS (Card_def RS def_imp_iff RS iffD1 RS ssubst)] 1);
   54.12 @@ -39,12 +39,12 @@
   54.13          asm_rl, lepoll_refl] MRS (prod_lepoll_mono RSN (2, lepoll_trans))
   54.14          |> standard;
   54.15  
   54.16 -goal thy "!!A. [| A lepoll B; 2 lepoll A |] ==> A+B lepoll A*B";
   54.17 +Goal "!!A. [| A lepoll B; 2 lepoll A |] ==> A+B lepoll A*B";
   54.18  by (REPEAT (ares_tac [[sum_lepoll_mono, sum_lepoll_prod]
   54.19                  MRS lepoll_trans, lepoll_refl] 1));
   54.20  qed "lepoll_imp_sum_lepoll_prod";
   54.21  
   54.22 -goal thy "!!A. [| A eqpoll i; B eqpoll i; ~Finite(i); Ord(i) |]  \
   54.23 +Goal "!!A. [| A eqpoll i; B eqpoll i; ~Finite(i); Ord(i) |]  \
   54.24  \               ==> A Un B eqpoll i";
   54.25  by (rtac eqpollI 1);
   54.26  by (eresolve_tac [subset_imp_lepoll RSN (2, eqpoll_sym RS eqpoll_imp_lepoll
   54.27 @@ -78,22 +78,22 @@
   54.28  by (fast_tac (claset() addSIs [the_equality] addEs [equalityE]) 1);
   54.29  qed "paired_bij_lemma";
   54.30  
   54.31 -goal thy "(lam y:{{y,z}. y:x}. if(y-{z}=0, z, THE w. y-{z}={w}))  \
   54.32 +Goal "(lam y:{{y,z}. y:x}. if(y-{z}=0, z, THE w. y-{z}={w}))  \
   54.33  \               : bij({{y,z}. y:x}, x)";
   54.34  by (res_inst_tac [("d","%a. {a,z}")] lam_bijective 1);
   54.35  by (TRYALL (fast_tac (claset() addSEs [RepFunE] addSIs [RepFunI] 
   54.36                  addss (simpset() addsimps [paired_bij_lemma]))));
   54.37  qed "paired_bij";
   54.38  
   54.39 -goalw thy [eqpoll_def] "{{y,z}. y:x} eqpoll x";
   54.40 +Goalw [eqpoll_def] "{{y,z}. y:x} eqpoll x";
   54.41  by (fast_tac (claset() addSIs [paired_bij]) 1);
   54.42  qed "paired_eqpoll";
   54.43  
   54.44 -goal thy "!!A. EX B. B eqpoll A & B Int C = 0";
   54.45 +Goal "!!A. EX B. B eqpoll A & B Int C = 0";
   54.46  by (fast_tac (claset() addSIs [paired_eqpoll, equals0I] addEs [mem_asym]) 1);
   54.47  qed "ex_eqpoll_disjoint";
   54.48  
   54.49 -goal thy "!!A. [| A lepoll i; B lepoll i; ~Finite(i); Ord(i) |]  \
   54.50 +Goal "!!A. [| A lepoll i; B lepoll i; ~Finite(i); Ord(i) |]  \
   54.51  \               ==> A Un B lepoll i";
   54.52  by (res_inst_tac [("A1","i"), ("C1","i")] (ex_eqpoll_disjoint RS exE) 1);
   54.53  by (etac conjE 1);
   54.54 @@ -105,7 +105,7 @@
   54.55          THEN (REPEAT (assume_tac 1)));
   54.56  qed "Un_lepoll_Inf_Ord";
   54.57  
   54.58 -goal thy "!!P. [| P(i); i:j; Ord(j) |] ==> (LEAST i. P(i)) : j";
   54.59 +Goal "!!P. [| P(i); i:j; Ord(j) |] ==> (LEAST i. P(i)) : j";
   54.60  by (eresolve_tac [Least_le RS leE] 1);
   54.61  by (etac Ord_in_Ord 1 THEN (assume_tac 1));
   54.62  by (etac ltE 1);
   54.63 @@ -113,7 +113,7 @@
   54.64  by (etac subst_elem 1 THEN (assume_tac 1));
   54.65  qed "Least_in_Ord";
   54.66  
   54.67 -goal thy "!!x. [| well_ord(x,r); y<=x; y lepoll succ(n); n:nat |]  \
   54.68 +Goal "!!x. [| well_ord(x,r); y<=x; y lepoll succ(n); n:nat |]  \
   54.69  \       ==> y-{THE b. first(b,y,r)} lepoll n";
   54.70  by (res_inst_tac [("Q","y=0")] (excluded_middle RS disjE) 1);
   54.71  by (fast_tac (claset() addSIs [Diff_sing_lepoll, the_first_in]) 1);
   54.72 @@ -122,18 +122,18 @@
   54.73  by (Fast_tac 1);
   54.74  qed "Diff_first_lepoll";
   54.75  
   54.76 -goal thy "(UN x:X. P(x)) <= (UN x:X. P(x)-Q(x)) Un (UN x:X. Q(x))";
   54.77 +Goal "(UN x:X. P(x)) <= (UN x:X. P(x)-Q(x)) Un (UN x:X. Q(x))";
   54.78  by (Fast_tac 1);
   54.79  qed "UN_subset_split";
   54.80  
   54.81 -goalw thy [lepoll_def] "!!a. Ord(a) ==> (UN x:a. {P(x)}) lepoll a";
   54.82 +Goalw [lepoll_def] "!!a. Ord(a) ==> (UN x:a. {P(x)}) lepoll a";
   54.83  by (res_inst_tac [("x","lam z:(UN x:a. {P(x)}). (LEAST i. P(i)=z)")] exI 1);
   54.84  by (res_inst_tac [("d","%z. P(z)")] lam_injective 1);
   54.85  by (fast_tac (claset() addSIs [Least_in_Ord]) 1);
   54.86  by (fast_tac (claset() addIs [LeastI] addSEs [Ord_in_Ord]) 1);
   54.87  qed "UN_sing_lepoll";
   54.88  
   54.89 -goal thy "!!a T. [| well_ord(T, R); ~Finite(a); Ord(a); n:nat |] ==>  \
   54.90 +Goal "!!a T. [| well_ord(T, R); ~Finite(a); Ord(a); n:nat |] ==>  \
   54.91  \       ALL f. (ALL b:a. f`b lepoll n & f`b <= T) --> (UN b:a. f`b) lepoll a";
   54.92  by (etac nat_induct 1);
   54.93  by (rtac allI 1);
   54.94 @@ -155,13 +155,13 @@
   54.95  by (etac UN_sing_lepoll 1);
   54.96  qed "UN_fun_lepoll_lemma";
   54.97  
   54.98 -goal thy "!!a f. [| ALL b:a. f`b lepoll n & f`b <= T; well_ord(T, R);  \
   54.99 +Goal "!!a f. [| ALL b:a. f`b lepoll n & f`b <= T; well_ord(T, R);  \
  54.100  \       ~Finite(a); Ord(a); n:nat |] ==> (UN b:a. f`b) lepoll a";
  54.101  by (eresolve_tac [UN_fun_lepoll_lemma RS allE] 1 THEN (REPEAT (assume_tac 1)));
  54.102  by (Fast_tac 1);
  54.103  qed "UN_fun_lepoll";
  54.104  
  54.105 -goal thy "!!a f. [| ALL b:a. F(b) lepoll n & F(b) <= T; well_ord(T, R);  \
  54.106 +Goal "!!a f. [| ALL b:a. F(b) lepoll n & F(b) <= T; well_ord(T, R);  \
  54.107  \       ~Finite(a); Ord(a); n:nat |] ==> (UN b:a. F(b)) lepoll a";
  54.108  by (rtac impE 1 THEN (assume_tac 3));
  54.109  by (res_inst_tac [("f","lam b:a. F(b)")] (UN_fun_lepoll) 2 
  54.110 @@ -170,7 +170,7 @@
  54.111  by (Asm_full_simp_tac 1);
  54.112  qed "UN_lepoll";
  54.113  
  54.114 -goal thy "!!a. Ord(a) ==> (UN b:a. F(b)) = (UN b:a. F(b) - (UN c:b. F(c)))";
  54.115 +Goal "!!a. Ord(a) ==> (UN b:a. F(b)) = (UN b:a. F(b) - (UN c:b. F(c)))";
  54.116  by (rtac equalityI 1);
  54.117  by (Fast_tac 2);
  54.118  by (rtac subsetI 1);
  54.119 @@ -185,7 +185,7 @@
  54.120  by (eresolve_tac [Ord_Least RSN (2, ltI)] 1);
  54.121  qed "UN_eq_UN_Diffs";
  54.122  
  54.123 -goalw thy [eqpoll_def] "!!A B. A Int B = 0 ==> A Un B eqpoll A + B";
  54.124 +Goalw [eqpoll_def] "!!A B. A Int B = 0 ==> A Un B eqpoll A + B";
  54.125  by (res_inst_tac [("x","lam a:A Un B. if(a:A,Inl(a),Inr(a))")] exI 1);
  54.126  by (res_inst_tac [("d","%z. case(%x. x, %x. x, z)")] lam_bijective 1);
  54.127  by (fast_tac (claset() addSIs [if_type, InlI, InrI]) 1);
  54.128 @@ -195,7 +195,7 @@
  54.129  by (fast_tac (claset() addDs [equals0D]) 1);
  54.130  qed "disj_Un_eqpoll_sum";
  54.131  
  54.132 -goalw thy [lepoll_def, eqpoll_def]
  54.133 +Goalw [lepoll_def, eqpoll_def]
  54.134          "!!X a. a lepoll X ==> EX Y. Y<=X & a eqpoll Y";
  54.135  by (etac exE 1);
  54.136  by (forward_tac [subset_refl RSN (2, restrict_bij)] 1);
  54.137 @@ -207,7 +207,7 @@
  54.138  (* Diff_lesspoll_eqpoll_Card                                              *)
  54.139  (* ********************************************************************** *)
  54.140  
  54.141 -goal thy "!!A B. [| A eqpoll a; ~Finite(a); Card(a); B lesspoll a;  \
  54.142 +Goal "!!A B. [| A eqpoll a; ~Finite(a); Card(a); B lesspoll a;  \
  54.143  \               A-B lesspoll a |] ==> P";
  54.144  by (REPEAT (eresolve_tac [lesspoll_imp_ex_lt_eqpoll RS exE,
  54.145          Card_is_Ord, conjE] 1));
  54.146 @@ -237,7 +237,7 @@
  54.147  by (fast_tac (claset() addSDs [lesspoll_def RS def_imp_iff RS iffD1]) 1);
  54.148  qed "Diff_lesspoll_eqpoll_Card_lemma";
  54.149  
  54.150 -goal thy "!!A. [| A eqpoll a; ~Finite(a); Card(a); B lesspoll a |]  \
  54.151 +Goal "!!A. [| A eqpoll a; ~Finite(a); Card(a); B lesspoll a |]  \
  54.152  \       ==> A - B eqpoll a";
  54.153  by (rtac swap 1 THEN (Fast_tac 1));
  54.154  by (rtac Diff_lesspoll_eqpoll_Card_lemma 1 THEN (REPEAT (assume_tac 1)));
    55.1 --- a/src/ZF/AC/DC.ML	Mon Jun 22 17:12:27 1998 +0200
    55.2 +++ b/src/ZF/AC/DC.ML	Mon Jun 22 17:13:09 1998 +0200
    55.3 @@ -33,12 +33,12 @@
    55.4  (*                                                                        *)
    55.5  (* ********************************************************************** *)
    55.6  
    55.7 -goal thy "{<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
    55.8 +Goal "{<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
    55.9  \       & restrict(z2, domain(z1)) = z1} <= XX*XX";
   55.10  by (Fast_tac 1);
   55.11  val lemma1_1 = result();
   55.12  
   55.13 -goal thy "!!X. ALL Y:Pow(X). Y lesspoll nat --> (EX x:X. <Y, x> : R)  \
   55.14 +Goal "!!X. ALL Y:Pow(X). Y lesspoll nat --> (EX x:X. <Y, x> : R)  \
   55.15  \       ==> {<z1,z2>: (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R}) *  \
   55.16  \               (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R}).  \
   55.17  \               domain(z2)=succ(domain(z1))  \
   55.18 @@ -58,7 +58,7 @@
   55.19                  singleton_0]) 1);
   55.20  val lemma1_2 = result();
   55.21  
   55.22 -goal thy "!!X. ALL Y:Pow(X). Y lesspoll nat --> (EX x:X. <Y, x> : R)  \
   55.23 +Goal "!!X. ALL Y:Pow(X). Y lesspoll nat --> (EX x:X. <Y, x> : R)  \
   55.24  \       ==> range({<z1,z2>: (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R}) *  \
   55.25  \               (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R}).  \
   55.26  \               domain(z2)=succ(domain(z1))  \
   55.27 @@ -92,7 +92,7 @@
   55.28          addsimps [domain_cons, domain_of_fun, succ_def, restrict_cons_eq]) 1);
   55.29  val lemma1_3 = result();
   55.30  
   55.31 -goal thy "!!X. [| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.32 +Goal "!!X. [| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.33  \       RR = {<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
   55.34  \       & restrict(z2, domain(z1)) = z1};  \
   55.35  \       ALL Y:Pow(X). Y lesspoll nat --> (EX x:X. <Y, x> : R)  \
   55.36 @@ -100,7 +100,7 @@
   55.37  by (fast_tac (claset() addSIs [lemma1_1] addSEs [lemma1_2, lemma1_3]) 1);
   55.38  val lemma1 = result();
   55.39  
   55.40 -goal thy
   55.41 +Goal
   55.42  "!!X.[| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.43  \       ALL n:nat. <f`n, f`succ(n)> :  \
   55.44  \       {<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
   55.45 @@ -136,7 +136,7 @@
   55.46  by (deepen_tac (claset() addDs [domain_of_fun RS sym RS trans]) 0 1);
   55.47  val lemma2 = result();
   55.48  
   55.49 -goal thy 
   55.50 +Goal 
   55.51  "!!X.[| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.52  \       ALL n:nat. <f`n, f`succ(n)> :  \
   55.53  \       {<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
   55.54 @@ -162,12 +162,12 @@
   55.55          addSEs [bexE, nat_into_Ord RSN (2, OrdmemD) RS subsetD]) 1);
   55.56  val lemma3_1 = result();
   55.57  
   55.58 -goal thy "!!n. ALL x:n. f`succ(n)`x = f`succ(x)`x   \
   55.59 +Goal "!!n. ALL x:n. f`succ(n)`x = f`succ(x)`x   \
   55.60  \       ==> {f`succ(x)`x. x:n} = {f`succ(n)`x. x:n}";
   55.61  by (Asm_full_simp_tac 1);
   55.62  val lemma3_2 = result();
   55.63  
   55.64 -goal thy "!!X. [| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.65 +Goal "!!X. [| XX = (UN n:nat. {f:n->X. ALL k:n. <f``k, f`k> : R});  \
   55.66  \       ALL n:nat. <f`n, f`succ(n)> :  \
   55.67  \       {<z1,z2>:XX*XX. domain(z2)=succ(domain(z1))  \
   55.68  \       & restrict(z2, domain(z1)) = z1};  \
   55.69 @@ -186,12 +186,12 @@
   55.70                              (2, image_fun RS sym)]) 1);
   55.71  val lemma3 = result();
   55.72  
   55.73 -goal thy "!!f. [| f:A->B; B<=C |] ==> f:A->C";
   55.74 +Goal "!!f. [| f:A->B; B<=C |] ==> f:A->C";
   55.75  by (rtac Pi_type 1 THEN (assume_tac 1));
   55.76  by (fast_tac (claset() addSEs [apply_type]) 1);
   55.77  qed "fun_type_gen";
   55.78  
   55.79 -goalw thy [DC_def, DC0_def] "!!Z. DC0 ==> DC(nat)";
   55.80 +Goalw [DC_def, DC0_def] "!!Z. DC0 ==> DC(nat)";
   55.81  by (REPEAT (resolve_tac [allI, impI] 1));
   55.82  by (REPEAT (eresolve_tac [conjE, allE] 1));
   55.83  by (eresolve_tac [[refl, refl] MRS lemma1 RSN (2, impE)] 1
   55.84 @@ -241,13 +241,13 @@
   55.85                                                                            
   55.86  ************************************************************************* *)
   55.87  
   55.88 -goalw thy [lesspoll_def, Finite_def]
   55.89 +Goalw [lesspoll_def, Finite_def]
   55.90          "!!A. A lesspoll nat ==> Finite(A)";
   55.91  by (fast_tac (claset() addSDs [ltD, lepoll_imp_ex_le_eqpoll]
   55.92          addSIs [Ord_nat]) 1);
   55.93  qed "lesspoll_nat_is_Finite";
   55.94  
   55.95 -goal thy "!!n. n:nat ==> ALL A. (A eqpoll n & A <= X) --> A : Fin(X)";
   55.96 +Goal "!!n. n:nat ==> ALL A. (A eqpoll n & A <= X) --> A : Fin(X)";
   55.97  by (etac nat_induct 1);
   55.98  by (rtac allI 1);
   55.99  by (fast_tac (claset() addSIs [Fin.emptyI]
  55.100 @@ -266,7 +266,7 @@
  55.101  by (asm_full_simp_tac (simpset() addsimps [cons_Diff]) 1);
  55.102  qed "Finite_Fin_lemma";
  55.103  
  55.104 -goalw thy [Finite_def] "!!A. [| Finite(A); A <= X |] ==> A : Fin(X)";
  55.105 +Goalw [Finite_def] "!!A. [| Finite(A); A <= X |] ==> A : Fin(X)";
  55.106  by (etac bexE 1);
  55.107  by (dtac Finite_Fin_lemma 1);
  55.108  by (etac allE 1);
  55.109 @@ -275,14 +275,14 @@
  55.110  by (Fast_tac 1);
  55.111  qed "Finite_Fin";
  55.112  
  55.113 -goal thy "!!x. x: X  \
  55.114 +Goal "!!x. x: X  \
  55.115  \ ==> {<0,x>}: (UN n:nat. {f:succ(n)->X. ALL k:n. <f`k, f`succ(k)> : R})";
  55.116  by (rtac (nat_0I RS UN_I) 1);
  55.117  by (fast_tac (claset() addSIs [singleton_fun RS Pi_type]
  55.118          addss (simpset() addsimps [singleton_0 RS sym])) 1);
  55.119  qed "singleton_in_funs";
  55.120  
  55.121 -goal thy
  55.122 +Goal
  55.123          "!!X. [| XX = (UN n:nat.  \
  55.124  \               {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.125  \       RR = {<z1,z2>:Fin(XX)*XX. (domain(z2)=succ(UN f:z1. domain(f))  \
  55.126 @@ -307,31 +307,31 @@
  55.127                                       cons_fun_type2, empty_fun]) 1);
  55.128  val lemma4 = result();
  55.129  
  55.130 -goal thy "!!f. [| f:nat->X; n:nat |] ==>  \
  55.131 +Goal "!!f. [| f:nat->X; n:nat |] ==>  \
  55.132  \       (UN x:f``succ(n). P(x)) =  P(f`n) Un (UN x:f``n. P(x))";
  55.133  by (asm_full_simp_tac (simpset()
  55.134          addsimps [Ord_nat RSN (2, OrdmemD) RSN (2, image_fun),
  55.135          [nat_succI, Ord_nat] MRS OrdmemD RSN (2, image_fun)]) 1);
  55.136  qed "UN_image_succ_eq";
  55.137  
  55.138 -goal thy "!!f. [| (UN x:f``n. P(x)) = y; P(f`n) = succ(y);  \
  55.139 +Goal "!!f. [| (UN x:f``n. P(x)) = y; P(f`n) = succ(y);  \
  55.140  \       f:nat -> X; n:nat |] ==> (UN x:f``succ(n). P(x)) = succ(y)";
  55.141  by (asm_full_simp_tac (simpset() addsimps [UN_image_succ_eq]) 1);
  55.142  by (Fast_tac 1);
  55.143  qed "UN_image_succ_eq_succ";
  55.144  
  55.145 -goal thy "!!f. [| f:succ(n) -> D;  n:nat;  \
  55.146 +Goal "!!f. [| f:succ(n) -> D;  n:nat;  \
  55.147  \       domain(f)=succ(x); x=y |] ==> f`y : D";
  55.148  by (fast_tac (claset() addEs [apply_type]
  55.149          addSDs [[sym, domain_of_fun] MRS trans]) 1);
  55.150  qed "apply_domain_type";
  55.151  
  55.152 -goal thy "!!f. [| f : nat -> X; n:nat |] ==> f``succ(n) = cons(f`n, f``n)";
  55.153 +Goal "!!f. [| f : nat -> X; n:nat |] ==> f``succ(n) = cons(f`n, f``n)";
  55.154  by (asm_full_simp_tac (simpset()
  55.155          addsimps [nat_succI, Ord_nat RSN (2, OrdmemD), image_fun]) 1);
  55.156  qed "image_fun_succ";
  55.157  
  55.158 -goal thy "!!f. [| domain(f`n) = succ(u); f : nat -> (UN n:nat.  \
  55.159 +Goal "!!f. [| domain(f`n) = succ(u); f : nat -> (UN n:nat.  \
  55.160  \       {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.161  \       u=k; n:nat  \
  55.162  \       |] ==> f`n : succ(k) -> domain(R)";
  55.163 @@ -339,7 +339,7 @@
  55.164  by (fast_tac (claset() addEs [UN_E, domain_eq_imp_fun_type]) 1);
  55.165  qed "f_n_type";
  55.166  
  55.167 -goal thy "!!f. [| f : nat -> (UN n:nat.  \
  55.168 +Goal "!!f. [| f : nat -> (UN n:nat.  \
  55.169  \       {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.170  \       domain(f`n) = succ(k); n:nat  \
  55.171  \       |] ==> ALL i:k. <f`n`i, f`n`succ(i)> : R";
  55.172 @@ -350,7 +350,7 @@
  55.173  by (Asm_full_simp_tac 1);
  55.174  qed "f_n_pairs_in_R";
  55.175  
  55.176 -goalw thy [restrict_def]
  55.177 +Goalw [restrict_def]
  55.178          "!!f. [| restrict(f, domain(x))=x; f:n->X; domain(x) <= n  \
  55.179  \       |] ==> restrict(cons(<n, y>, f), domain(x)) = x";
  55.180  by (eresolve_tac [sym RS trans RS sym] 1);
  55.181 @@ -360,7 +360,7 @@
  55.182  by (asm_full_simp_tac (simpset() addsimps [subsetD RS cons_val_k]) 1);
  55.183  qed "restrict_cons_eq_restrict";
  55.184  
  55.185 -goal thy "!!f. [| ALL x:f``n. restrict(f`n, domain(x))=x;  \
  55.186 +Goal "!!f. [| ALL x:f``n. restrict(f`n, domain(x))=x;  \
  55.187  \       f : nat -> (UN n:nat.  \
  55.188  \       {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.189  \       n:nat; domain(f`n) = succ(n);  \
  55.190 @@ -375,7 +375,7 @@
  55.191  by (fast_tac (claset() addSEs [restrict_cons_eq_restrict]) 1);
  55.192  qed "all_in_image_restrict_eq";
  55.193  
  55.194 -goal thy
  55.195 +Goal
  55.196  "!!X.[| ALL b<nat. <f``b, f`b> :  \
  55.197  \       {<z1,z2>:Fin(XX)*XX. (domain(z2)=succ(UN f:z1. domain(f))  & \
  55.198  \                            (ALL f:z1. restrict(z2, domain(f)) = f)) |  \
  55.199 @@ -436,7 +436,7 @@
  55.200  qed "simplify_recursion";
  55.201  
  55.202  
  55.203 -goal thy "!!X. [| XX = (UN n:nat.  \
  55.204 +Goal "!!X. [| XX = (UN n:nat.  \
  55.205  \               {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.206  \       ALL b<nat. <f``b, f`b> :  \
  55.207  \       {<z1,z2>:Fin(XX)*XX. (domain(z2)=succ(UN f:z1. domain(f))  \
  55.208 @@ -455,7 +455,7 @@
  55.209  by (fast_tac (FOL_cs addSEs [conjE, f_n_pairs_in_R, trans, subst_context]) 1);
  55.210  val lemma2 = result();
  55.211  
  55.212 -goal thy 
  55.213 +Goal 
  55.214  "!!n. [| XX = (UN n:nat.  \
  55.215  \                {f:succ(n)->domain(R). ALL k:n. <f`k, f`succ(k)> : R});  \
  55.216  \       ALL b<nat. <f``b, f`b> :  \
  55.217 @@ -478,7 +478,7 @@
  55.218  val lemma3 = result();
  55.219  
  55.220  
  55.221 -goalw thy [DC_def, DC0_def] "!!Z. DC(nat) ==> DC0";
  55.222 +Goalw [DC_def, DC0_def] "!!Z. DC(nat) ==> DC0";
  55.223  by (REPEAT (resolve_tac [allI, impI] 1));
  55.224  by (REPEAT (eresolve_tac [asm_rl, conjE, ex_in_domain RS exE, allE] 1));
  55.225  by (eresolve_tac [[refl, refl] MRS lemma4 RSN (2, impE)] 1
  55.226 @@ -501,7 +501,7 @@
  55.227  (* ALL K. Card(K) --> DC(K) ==> WO3                                       *)
  55.228  (* ********************************************************************** *)
  55.229  
  55.230 -goalw thy [lesspoll_def]
  55.231 +Goalw [lesspoll_def]
  55.232          "!!A. [| ~ A lesspoll B; C lesspoll B |] ==> A - C ~= 0";
  55.233  by (fast_tac (claset() addSDs [Diff_eq_0_iff RS iffD1 RS subset_imp_lepoll]
  55.234          addSIs [eqpollI] addEs [notE] addSEs [eqpollE, lepoll_trans]) 1);
  55.235 @@ -518,11 +518,11 @@
  55.236  by (REPEAT (fast_tac (claset() addDs [not_eq, not_eq RS not_sym]) 1));
  55.237  qed "fun_Ord_inj";
  55.238  
  55.239 -goal thy "!!a. [| f:X->Y; A<=X; a:A |] ==> f`a : f``A";
  55.240 +Goal "!!a. [| f:X->Y; A<=X; a:A |] ==> f`a : f``A";
  55.241  by (fast_tac (claset() addSEs [image_fun RS ssubst]) 1);
  55.242  qed "value_in_image";
  55.243  
  55.244 -goalw thy [DC_def, WO3_def]
  55.245 +Goalw [DC_def, WO3_def]
  55.246          "!!Z. ALL K. Card(K) --> DC(K) ==> WO3";
  55.247  by (rtac allI 1);
  55.248  by (excluded_middle_tac "A lesspoll Hartog(A)" 1);
  55.249 @@ -551,7 +551,7 @@
  55.250  (* WO1 ==> ALL K. Card(K) --> DC(K)                                       *)
  55.251  (* ********************************************************************** *)
  55.252  
  55.253 -goal thy
  55.254 +Goal
  55.255          "!!a. [| Ord(a); b:a |] ==> (lam x:a. P(x))``b = (lam x:b. P(x))``b";
  55.256  by (rtac images_eq 1);
  55.257  by (REPEAT (fast_tac (claset() addSEs [RepFunI, OrdmemD]
  55.258 @@ -562,23 +562,23 @@
  55.259  by (Asm_full_simp_tac 1);
  55.260  qed "lam_images_eq";
  55.261  
  55.262 -goalw thy [lesspoll_def] "!!K. [| Card(K); b:K |] ==> b lesspoll K";
  55.263 +Goalw [lesspoll_def] "!!K. [| Card(K); b:K |] ==> b lesspoll K";
  55.264  by (asm_full_simp_tac (simpset() addsimps [Card_iff_initial]) 1);
  55.265  by (fast_tac (claset() addSIs [le_imp_lepoll, ltI, leI]) 1);
  55.266  qed "in_Card_imp_lesspoll";
  55.267  
  55.268 -goal thy "(lam b:a. P(b)) : a -> {P(b). b:a}";
  55.269 +Goal "(lam b:a. P(b)) : a -> {P(b). b:a}";
  55.270  by (fast_tac (claset() addSIs [lam_type, RepFunI]) 1);
  55.271  qed "lam_type_RepFun";
  55.272  
  55.273 -goal thy "!!Z. [| ALL Y:Pow(X). Y lesspoll a --> (EX x:X. <Y, x> : R);  \
  55.274 +Goal "!!Z. [| ALL Y:Pow(X). Y lesspoll a --> (EX x:X. <Y, x> : R);  \
  55.275  \       b:a; Z:Pow(X); Z lesspoll a |]  \
  55.276  \       ==> {x:X. <Z,x> : R} ~= 0";
  55.277  by (fast_tac (FOL_cs addEs [bexE, equals0D]
  55.278          addSDs [bspec] addIs [CollectI]) 1);
  55.279  val lemma_ = result();
  55.280  
  55.281 -goal thy "!!K. [| Card(K); well_ord(X,Q);  \
  55.282 +Goal "!!K. [| Card(K); well_ord(X,Q);  \
  55.283  \       ALL Y:Pow(X). Y lesspoll K --> (EX x:X. <Y, x> : R); b:K |]  \
  55.284  \       ==> ff(b, X, Q, R) : {x:X. <(lam c:b. ff(c, X, Q, R))``b, x> : R}";
  55.285  by (res_inst_tac [("P","b:K")] impE 1 THEN TRYALL assume_tac);
  55.286 @@ -597,7 +597,7 @@
  55.287                  MRS lepoll_lesspoll_lesspoll]) 1);
  55.288  val lemma = result();
  55.289  
  55.290 -goalw thy [DC_def, WO1_def]
  55.291 +Goalw [DC_def, WO1_def]
  55.292          "!!Z. WO1 ==> ALL K. Card(K) --> DC(K)";
  55.293  by (REPEAT (resolve_tac [allI,impI] 1));
  55.294  by (REPEAT (eresolve_tac [allE,exE,conjE] 1));
    56.1 --- a/src/ZF/AC/DC_lemmas.ML	Mon Jun 22 17:12:27 1998 +0200
    56.2 +++ b/src/ZF/AC/DC_lemmas.ML	Mon Jun 22 17:13:09 1998 +0200
    56.3 @@ -14,7 +14,7 @@
    56.4  by (REPEAT (eresolve_tac [RepFunE, LeastI, prem RS Ord_in_Ord] 1));
    56.5  qed "RepFun_lepoll";
    56.6  
    56.7 -goalw thy [lesspoll_def] "!!n. n:nat ==> n lesspoll nat";
    56.8 +Goalw [lesspoll_def] "!!n. n:nat ==> n lesspoll nat";
    56.9  by (rtac conjI 1);
   56.10  by (eresolve_tac [Ord_nat RSN (2, OrdmemD) RS subset_imp_lepoll] 1);
   56.11  by (rtac notI 1);
   56.12 @@ -25,7 +25,7 @@
   56.13          THEN (assume_tac 1));
   56.14  qed "n_lesspoll_nat";
   56.15  
   56.16 -goalw thy [lepoll_def]
   56.17 +Goalw [lepoll_def]
   56.18          "!!f. [| f:X->Y; Ord(X) |] ==> f``X lepoll X";
   56.19  by (res_inst_tac [("x","lam x:f``X. LEAST y. f`y = x")] exI 1);
   56.20  by (res_inst_tac [("d","%z. f`z")] lam_injective 1);
   56.21 @@ -46,35 +46,35 @@
   56.22  by (fast_tac (claset() addSEs [mem_irrefl]) 1);
   56.23  qed "mem_not_eq";
   56.24  
   56.25 -goalw thy [succ_def] "!!g. g:n->X ==> cons(<n,x>, g) : succ(n) -> cons(x, X)";
   56.26 +Goalw [succ_def] "!!g. g:n->X ==> cons(<n,x>, g) : succ(n) -> cons(x, X)";
   56.27  by (fast_tac (claset() addSIs [fun_extend] addSEs [mem_irrefl]) 1);
   56.28  qed "cons_fun_type";
   56.29  
   56.30 -goal thy "!!g. [| g:n->X; x:X |] ==> cons(<n,x>, g) : succ(n) -> X";
   56.31 +Goal "!!g. [| g:n->X; x:X |] ==> cons(<n,x>, g) : succ(n) -> X";
   56.32  by (etac (cons_absorb RS subst) 1 THEN etac cons_fun_type 1);
   56.33  qed "cons_fun_type2";
   56.34  
   56.35 -goal thy "!!n. n: nat ==> cons(<n,x>, g)``n = g``n";
   56.36 +Goal "!!n. n: nat ==> cons(<n,x>, g)``n = g``n";
   56.37  by (fast_tac (claset() addSEs [mem_irrefl]) 1);
   56.38  qed "cons_image_n";
   56.39  
   56.40 -goal thy "!!n. g:n->X ==> cons(<n,x>, g)`n = x";
   56.41 +Goal "!!n. g:n->X ==> cons(<n,x>, g)`n = x";
   56.42  by (fast_tac (claset() addSIs [apply_equality] addSEs [cons_fun_type]) 1);
   56.43  qed "cons_val_n";
   56.44  
   56.45 -goal thy "!!k. k : n ==> cons(<n,x>, g)``k = g``k";
   56.46 +Goal "!!k. k : n ==> cons(<n,x>, g)``k = g``k";
   56.47  by (fast_tac (claset() addEs [mem_asym]) 1);
   56.48  qed "cons_image_k";
   56.49  
   56.50 -goal thy "!!k. [| k:n; g:n->X |] ==> cons(<n,x>, g)`k = g`k";
   56.51 +Goal "!!k. [| k:n; g:n->X |] ==> cons(<n,x>, g)`k = g`k";
   56.52  by (fast_tac (claset() addSIs [apply_equality, consI2] addSEs [cons_fun_type, apply_Pair]) 1);
   56.53  qed "cons_val_k";
   56.54  
   56.55 -goal thy "!!f. domain(f)=x ==> domain(cons(<x,y>, f)) = succ(x)";
   56.56 +Goal "!!f. domain(f)=x ==> domain(cons(<x,y>, f)) = succ(x)";
   56.57  by (asm_full_simp_tac (simpset() addsimps [domain_cons, succ_def]) 1);
   56.58  qed "domain_cons_eq_succ";
   56.59  
   56.60 -goalw thy [restrict_def] "!!g. g:n->X ==> restrict(cons(<n,x>, g), n)=g";
   56.61 +Goalw [restrict_def] "!!g. g:n->X ==> restrict(cons(<n,x>, g), n)=g";
   56.62  by (rtac fun_extension 1);
   56.63  by (rtac lam_type 1);
   56.64  by (eresolve_tac [cons_fun_type RS apply_type] 1);
   56.65 @@ -83,25 +83,25 @@
   56.66  by (asm_full_simp_tac (simpset() addsimps [cons_val_k]) 1);
   56.67  qed "restrict_cons_eq";
   56.68  
   56.69 -goal thy "!!k. [| Ord(k); i:k |] ==> succ(i) : succ(k)";
   56.70 +Goal "!!k. [| Ord(k); i:k |] ==> succ(i) : succ(k)";
   56.71  by (resolve_tac [Ord_linear RS disjE] 1 THEN (assume_tac 3));
   56.72  by (REPEAT (fast_tac (claset() addSIs [Ord_succ]
   56.73          addEs [Ord_in_Ord, mem_irrefl, mem_asym]
   56.74          addSDs [succ_inject]) 1));
   56.75  qed "succ_in_succ";
   56.76  
   56.77 -goalw thy [restrict_def]
   56.78 +Goalw [restrict_def]
   56.79          "!!f. [| restrict(f, domain(g)) = g; x: domain(g) |] ==> f`x = g`x";
   56.80  by (etac subst 1);
   56.81  by (Asm_full_simp_tac 1);
   56.82  qed "restrict_eq_imp_val_eq";
   56.83  
   56.84 -goal thy "!!f. [| domain(f)=A; f:B->C |] ==> f:A->C";
   56.85 +Goal "!!f. [| domain(f)=A; f:B->C |] ==> f:A->C";
   56.86  by (forward_tac [domain_of_fun] 1);
   56.87  by (Fast_tac 1);
   56.88  qed "domain_eq_imp_fun_type";
   56.89  
   56.90 -goal thy "!!R. [| R <= A * B; R ~= 0 |] ==> EX x. x:domain(R)";
   56.91 +Goal "!!R. [| R <= A * B; R ~= 0 |] ==> EX x. x:domain(R)";
   56.92  by (fast_tac (claset() addSEs [not_emptyE]) 1);
   56.93  qed "ex_in_domain";
   56.94  
    57.1 --- a/src/ZF/AC/HH.ML	Mon Jun 22 17:12:27 1998 +0200
    57.2 +++ b/src/ZF/AC/HH.ML	Mon Jun 22 17:13:09 1998 +0200
    57.3 @@ -14,25 +14,25 @@
    57.4  (* Lemmas useful in each of the three proofs                              *)
    57.5  (* ********************************************************************** *)
    57.6  
    57.7 -goal thy "HH(f,x,a) =  \
    57.8 +Goal "HH(f,x,a) =  \
    57.9  \       (let z = x - (UN b:a. HH(f,x,b))  \
   57.10  \       in  if(f`z:Pow(z)-{0}, f`z, {x}))";
   57.11  by (resolve_tac [HH_def RS def_transrec RS trans] 1);
   57.12  by (Simp_tac 1);
   57.13  qed "HH_def_satisfies_eq";
   57.14  
   57.15 -goal thy "HH(f,x,a) : Pow(x)-{0} | HH(f,x,a)={x}";
   57.16 +Goal "HH(f,x,a) : Pow(x)-{0} | HH(f,x,a)={x}";
   57.17  by (resolve_tac [HH_def_satisfies_eq RS ssubst] 1);
   57.18  by (simp_tac (simpset() addsimps [Let_def, Diff_subset RS PowI] 
   57.19                      setloop split_tac [expand_if]) 1);
   57.20  by (Fast_tac 1);
   57.21  qed "HH_values";
   57.22  
   57.23 -goal thy "!!A. B<=A ==> X-(UN a:A. P(a)) = X-(UN a:A-B. P(a))-(UN b:B. P(b))";
   57.24 +Goal "!!A. B<=A ==> X-(UN a:A. P(a)) = X-(UN a:A-B. P(a))-(UN b:B. P(b))";
   57.25  by (Fast_tac 1);
   57.26  qed "subset_imp_Diff_eq";
   57.27  
   57.28 -goal thy "!!c. [| c:a-b; b<a |] ==> c=b | b<c & c<a";
   57.29 +Goal "!!c. [| c:a-b; b<a |] ==> c=b | b<c & c<a";
   57.30  by (etac ltE 1);
   57.31  by (dtac Ord_linear 1);
   57.32  by (fast_tac (claset() addSIs [ltI] addIs [Ord_in_Ord]) 2);
   57.33 @@ -44,14 +44,14 @@
   57.34  by (fast_tac (claset() addSDs [prem] addSEs [mem_irrefl]) 1);
   57.35  qed "Diff_UN_eq_self";
   57.36  
   57.37 -goal thy "!!a. x - (UN b:a. HH(f,x,b)) = x - (UN b:a1. HH(f,x,b))  \
   57.38 +Goal "!!a. x - (UN b:a. HH(f,x,b)) = x - (UN b:a1. HH(f,x,b))  \
   57.39  \               ==> HH(f,x,a) = HH(f,x,a1)";
   57.40  by (resolve_tac [HH_def_satisfies_eq RS
   57.41                  (HH_def_satisfies_eq RS sym RSN (3, trans RS trans))] 1);
   57.42  by (etac subst_context 1);
   57.43  qed "HH_eq";
   57.44  
   57.45 -goal thy "!!a. [| HH(f,x,b)={x}; b<a |] ==> HH(f,x,a)={x}";
   57.46 +Goal "!!a. [| HH(f,x,b)={x}; b<a |] ==> HH(f,x,a)={x}";
   57.47  by (res_inst_tac [("P","b<a")] impE 1 THEN REPEAT (assume_tac 2));
   57.48  by (eresolve_tac [lt_Ord2 RS trans_induct] 1);
   57.49  by (rtac impI 1);
   57.50 @@ -64,14 +64,14 @@
   57.51  by (fast_tac (claset() addEs [ltE]) 1);
   57.52  qed "HH_is_x_gt_too";
   57.53  
   57.54 -goal thy "!!a. [| HH(f,x,a) : Pow(x)-{0}; b<a |] ==> HH(f,x,b) : Pow(x)-{0}";
   57.55 +Goal "!!a. [| HH(f,x,a) : Pow(x)-{0}; b<a |] ==> HH(f,x,b) : Pow(x)-{0}";
   57.56  by (resolve_tac [HH_values RS disjE] 1 THEN (assume_tac 1));
   57.57  by (dtac HH_is_x_gt_too 1 THEN (assume_tac 1));
   57.58  by (dtac subst 1 THEN (assume_tac 1));
   57.59  by (fast_tac (claset() addSEs [mem_irrefl]) 1);
   57.60  qed "HH_subset_x_lt_too";
   57.61  
   57.62 -goal thy "!!a. HH(f,x,a) : Pow(x)-{0}   \
   57.63 +Goal "!!a. HH(f,x,a) : Pow(x)-{0}   \
   57.64  \               ==> HH(f,x,a) : Pow(x - (UN b:a. HH(f,x,b)))-{0}";
   57.65  by (dresolve_tac [HH_def_satisfies_eq RS subst] 1);
   57.66  by (resolve_tac [HH_def_satisfies_eq RS ssubst] 1);
   57.67 @@ -81,14 +81,14 @@
   57.68  by (fast_tac (subset_cs addSEs [mem_irrefl]) 1);
   57.69  qed "HH_subset_x_imp_subset_Diff_UN";
   57.70  
   57.71 -goal thy "!!x. [| HH(f,x,v)=HH(f,x,w); HH(f,x,v): Pow(x)-{0}; v:w |] ==> P";
   57.72 +Goal "!!x. [| HH(f,x,v)=HH(f,x,w); HH(f,x,v): Pow(x)-{0}; v:w |] ==> P";
   57.73  by (forw_inst_tac [("P","%y. y: Pow(x)-{0}")] subst 1 THEN (assume_tac 1));
   57.74  by (dres_inst_tac [("a","w")] HH_subset_x_imp_subset_Diff_UN 1);
   57.75  by (dtac subst_elem 1 THEN (assume_tac 1));
   57.76  by (fast_tac (claset() addSIs [singleton_iff RS iffD2, equals0I]) 1);
   57.77  qed "HH_eq_arg_lt";
   57.78  
   57.79 -goal thy "!!x. [| HH(f,x,v)=HH(f,x,w); HH(f,x,w): Pow(x)-{0};  \
   57.80 +Goal "!!x. [| HH(f,x,v)=HH(f,x,w); HH(f,x,w): Pow(x)-{0};  \
   57.81  \               Ord(v); Ord(w) |] ==> v=w";
   57.82  by (res_inst_tac [("j","w")] Ord_linear_lt 1 THEN TRYALL assume_tac);
   57.83  by (resolve_tac [sym RS (ltD RSN (3, HH_eq_arg_lt))] 2
   57.84 @@ -97,7 +97,7 @@
   57.85  by (fast_tac (FOL_cs addDs [ltD] addSEs [HH_eq_arg_lt]) 1);
   57.86  qed "HH_eq_imp_arg_eq";
   57.87  
   57.88 -goalw thy [lepoll_def, inj_def]
   57.89 +Goalw [lepoll_def, inj_def]
   57.90          "!!i. [| HH(f, x, i) : Pow(x)-{0}; Ord(i) |] ==> i lepoll Pow(x)-{0}";
   57.91  by (res_inst_tac [("x","lam j:i. HH(f, x, j)")] exI 1);
   57.92  by (Asm_simp_tac 1);
   57.93 @@ -105,17 +105,17 @@
   57.94                  addSIs [lam_type, ballI, ltI] addIs [bexI]) 1);
   57.95  qed "HH_subset_x_imp_lepoll";
   57.96  
   57.97 -goal thy "HH(f, x, Hartog(Pow(x)-{0})) = {x}";
   57.98 +Goal "HH(f, x, Hartog(Pow(x)-{0})) = {x}";
   57.99  by (resolve_tac [HH_values RS disjE] 1 THEN (assume_tac 2));
  57.100  by (fast_tac (FOL_cs addSDs [HH_subset_x_imp_lepoll]
  57.101                  addSIs [Ord_Hartog] addSEs [HartogE]) 1);
  57.102  qed "HH_Hartog_is_x";
  57.103  
  57.104 -goal thy "HH(f, x, LEAST i. HH(f, x, i) = {x}) = {x}";
  57.105 +Goal "HH(f, x, LEAST i. HH(f, x, i) = {x}) = {x}";
  57.106  by (fast_tac (claset() addSIs [Ord_Hartog, HH_Hartog_is_x, LeastI]) 1);
  57.107  qed "HH_Least_eq_x";
  57.108  
  57.109 -goal thy "!!a. a:(LEAST i. HH(f,x,i)={x}) ==> HH(f,x,a) : Pow(x)-{0}";
  57.110 +Goal "!!a. a:(LEAST i. HH(f,x,i)={x}) ==> HH(f,x,a) : Pow(x)-{0}";
  57.111  by (resolve_tac [HH_values RS disjE] 1 THEN (assume_tac 1));
  57.112  by (rtac less_LeastE 1);
  57.113  by (eresolve_tac [Ord_Least RSN (2, ltI)] 2);
  57.114 @@ -126,7 +126,7 @@
  57.115  (* Lemmas used in the proofs of AC1 ==> WO2 and AC17 ==> AC1              *)
  57.116  (* ********************************************************************** *)
  57.117  
  57.118 -goalw thy [inj_def]
  57.119 +Goalw [inj_def]
  57.120          "(lam a:(LEAST i. HH(f,x,i)={x}). HH(f,x,a)) :  \
  57.121  \               inj(LEAST i. HH(f,x,i)={x}, Pow(x)-{0})";
  57.122  by (Asm_full_simp_tac 1);
  57.123 @@ -134,14 +134,14 @@
  57.124                  addSEs [HH_eq_imp_arg_eq, Ord_Least RS Ord_in_Ord]) 1);
  57.125  qed "lam_Least_HH_inj_Pow";
  57.126  
  57.127 -goal thy "!!x. ALL a:(LEAST i. HH(f,x,i)={x}). EX z:x. HH(f,x,a) = {z}  \
  57.128 +Goal "!!x. ALL a:(LEAST i. HH(f,x,i)={x}). EX z:x. HH(f,x,a) = {z}  \
  57.129  \               ==> (lam a:(LEAST i. HH(f,x,i)={x}). HH(f,x,a))  \
  57.130  \                       : inj(LEAST i. HH(f,x,i)={x}, {{y}. y:x})";
  57.131  by (resolve_tac [lam_Least_HH_inj_Pow RS inj_strengthen_type] 1);
  57.132  by (Asm_full_simp_tac 1);
  57.133  qed "lam_Least_HH_inj";
  57.134  
  57.135 -goalw thy [surj_def]
  57.136 +Goalw [surj_def]
  57.137          "!!x. [| x - (UN a:A. F(a)) = 0;  \
  57.138  \               ALL a:A. EX z:x. F(a) = {z} |]  \
  57.139  \               ==> (lam a:A. F(a)) : surj(A, {{y}. y:x})";
  57.140 @@ -151,12 +151,12 @@
  57.141  by (deepen_tac (claset() addSIs [bexI] addSEs [equalityE]) 4 1);
  57.142  qed "lam_surj_sing";
  57.143  
  57.144 -goal thy "!!x. y:Pow(x)-{0} ==> x ~= 0";
  57.145 +Goal "!!x. y:Pow(x)-{0} ==> x ~= 0";
  57.146  by (fast_tac (claset() addSIs [equals0I, singletonI RS subst_elem]
  57.147                  addSDs [equals0D]) 1);
  57.148  qed "not_emptyI2";
  57.149  
  57.150 -goal thy "!!f. f`(x - (UN j:i. HH(f,x,j))): Pow(x - (UN j:i. HH(f,x,j)))-{0}  \
  57.151 +Goal "!!f. f`(x - (UN j:i. HH(f,x,j))): Pow(x - (UN j:i. HH(f,x,j)))-{0}  \
  57.152  \       ==> HH(f, x, i) : Pow(x) - {0}";
  57.153  by (resolve_tac [HH_def_satisfies_eq RS ssubst] 1);
  57.154  by (asm_full_simp_tac (simpset() addsimps [Let_def, Diff_subset RS PowI,
  57.155 @@ -174,20 +174,20 @@
  57.156                  addSEs [mem_irrefl]) 1);
  57.157  qed "f_subsets_imp_UN_HH_eq_x";
  57.158  
  57.159 -goal thy "HH(f,x,i)=f`(x - (UN j:i. HH(f,x,j))) | HH(f,x,i)={x}";
  57.160 +Goal "HH(f,x,i)=f`(x - (UN j:i. HH(f,x,j))) | HH(f,x,i)={x}";
  57.161  by (resolve_tac [HH_def_satisfies_eq RS ssubst] 1);
  57.162  by (simp_tac (simpset() addsimps [Let_def, Diff_subset RS PowI]
  57.163                setloop split_tac [expand_if]) 1);
  57.164  qed "HH_values2";
  57.165  
  57.166 -goal thy
  57.167 +Goal
  57.168       "!!f. HH(f,x,i): Pow(x)-{0} ==> HH(f,x,i)=f`(x - (UN j:i. HH(f,x,j)))";
  57.169  by (resolve_tac [HH_values2 RS disjE] 1 THEN (assume_tac 1));
  57.170  by (fast_tac (claset() addSEs [equalityE, mem_irrefl]
  57.171          addSDs [singleton_subsetD]) 1);
  57.172  qed "HH_subset_imp_eq";
  57.173  
  57.174 -goal thy "!!f. [| f : (Pow(x)-{0}) -> {{z}. z:x};  \
  57.175 +Goal "!!f. [| f : (Pow(x)-{0}) -> {{z}. z:x};  \
  57.176  \       a:(LEAST i. HH(f,x,i)={x}) |] ==> EX z:x. HH(f,x,a) = {z}";
  57.177  by (dtac less_Least_subset_x 1);
  57.178  by (forward_tac [HH_subset_imp_eq] 1);
  57.179 @@ -198,7 +198,7 @@
  57.180  by (fast_tac (claset() addss (simpset())) 1);
  57.181  qed "f_sing_imp_HH_sing";
  57.182  
  57.183 -goalw thy [bij_def] 
  57.184 +Goalw [bij_def] 
  57.185          "!!f. [| x - (UN j: (LEAST i. HH(f,x,i)={x}). HH(f,x,j)) = 0;  \
  57.186  \       f : (Pow(x)-{0}) -> {{z}. z:x} |]  \
  57.187  \       ==> (lam a:(LEAST i. HH(f,x,i)={x}). HH(f,x,a))  \
  57.188 @@ -207,7 +207,7 @@
  57.189                                f_sing_imp_HH_sing]) 1);
  57.190  qed "f_sing_lam_bij";
  57.191  
  57.192 -goal thy "!!f. f: (PROD X: Pow(x)-{0}. F(X))  \
  57.193 +Goal "!!f. f: (PROD X: Pow(x)-{0}. F(X))  \
  57.194  \       ==> (lam X:Pow(x)-{0}. {f`X}) : (PROD X: Pow(x)-{0}. {{z}. z:F(X)})";
  57.195  by (fast_tac (FOL_cs addSIs [lam_type, RepFun_eqI, singleton_eq_iff RS iffD2]
  57.196                       addDs [apply_type]) 1);
    58.1 --- a/src/ZF/AC/Hartog.ML	Mon Jun 22 17:12:27 1998 +0200
    58.2 +++ b/src/ZF/AC/Hartog.ML	Mon Jun 22 17:13:09 1998 +0200
    58.3 @@ -7,12 +7,12 @@
    58.4  
    58.5  open Hartog;
    58.6  
    58.7 -goal thy "!!X. ALL a. Ord(a) --> a:X ==> P";
    58.8 +Goal "!!X. ALL a. Ord(a) --> a:X ==> P";
    58.9  by (res_inst_tac [("X1","{y:X. Ord(y)}")] (ON_class RS revcut_rl) 1);
   58.10  by (Fast_tac 1);
   58.11  qed "Ords_in_set";
   58.12  
   58.13 -goalw thy [lepoll_def] "!!X. [| Ord(a); a lepoll X |] ==>  \
   58.14 +Goalw [lepoll_def] "!!X. [| Ord(a); a lepoll X |] ==>  \
   58.15  \               EX Y. Y<=X & (EX R. well_ord(Y,R) & ordertype(Y,R)=a)";
   58.16  by (etac exE 1);
   58.17  by (REPEAT (resolve_tac [exI, conjI] 1));
   58.18 @@ -28,7 +28,7 @@
   58.19          THEN (REPEAT (assume_tac 1)));
   58.20  qed "Ord_lepoll_imp_ex_well_ord";
   58.21  
   58.22 -goal thy "!!X. [| Ord(a); a lepoll X |] ==>  \
   58.23 +Goal "!!X. [| Ord(a); a lepoll X |] ==>  \
   58.24  \               EX Y. Y<=X & (EX R. R<=X*X & ordertype(Y,R)=a)";
   58.25  by (dtac Ord_lepoll_imp_ex_well_ord 1 THEN (assume_tac 1));
   58.26  by Safe_tac;
   58.27 @@ -37,7 +37,7 @@
   58.28  by (Fast_tac 1);
   58.29  qed "Ord_lepoll_imp_eq_ordertype";
   58.30  
   58.31 -goal thy "!!X. ALL a. Ord(a) --> a lepoll X ==>  \
   58.32 +Goal "!!X. ALL a. Ord(a) --> a lepoll X ==>  \
   58.33  \       ALL a. Ord(a) -->  \
   58.34  \       a:{a. Z:Pow(X)*Pow(X*X), EX Y R. Z=<Y,R> & ordertype(Y,R)=a}";
   58.35  by (REPEAT (resolve_tac [allI,impI] 1));
   58.36 @@ -47,18 +47,18 @@
   58.37  by (fast_tac (claset() addSIs [ReplaceI] addEs [sym]) 1);
   58.38  qed "Ords_lepoll_set_lemma";
   58.39  
   58.40 -goal thy "!!X. ALL a. Ord(a) --> a lepoll X ==> P";
   58.41 +Goal "!!X. ALL a. Ord(a) --> a lepoll X ==> P";
   58.42  by (eresolve_tac [Ords_lepoll_set_lemma RS Ords_in_set] 1);
   58.43  qed "Ords_lepoll_set";
   58.44  
   58.45 -goal thy "EX a. Ord(a) & ~a lepoll X";
   58.46 +Goal "EX a. Ord(a) & ~a lepoll X";
   58.47  by (rtac swap 1);
   58.48  by (Fast_tac 1);
   58.49  by (rtac Ords_lepoll_set 1);
   58.50  by (Fast_tac 1);
   58.51  qed "ex_Ord_not_lepoll";
   58.52  
   58.53 -goalw thy [Hartog_def] "~ Hartog(A) lepoll A";
   58.54 +Goalw [Hartog_def] "~ Hartog(A) lepoll A";
   58.55  by (resolve_tac [ex_Ord_not_lepoll RS exE] 1);
   58.56  by (rtac LeastI 1);
   58.57  by (REPEAT (Fast_tac 1));
   58.58 @@ -66,19 +66,19 @@
   58.59  
   58.60  val HartogE = HartogI RS notE;
   58.61  
   58.62 -goalw thy [Hartog_def] "Ord(Hartog(A))";
   58.63 +Goalw [Hartog_def] "Ord(Hartog(A))";
   58.64  by (rtac Ord_Least 1);
   58.65  qed "Ord_Hartog";
   58.66  
   58.67 -goalw thy [Hartog_def] "!!i. [| i < Hartog(A); ~ i lepoll A |] ==> P";
   58.68 +Goalw [Hartog_def] "!!i. [| i < Hartog(A); ~ i lepoll A |] ==> P";
   58.69  by (fast_tac (claset() addEs [less_LeastE]) 1);
   58.70  qed "less_HartogE1";
   58.71  
   58.72 -goal thy "!!i. [| i < Hartog(A); i eqpoll Hartog(A) |] ==> P";
   58.73 +Goal "!!i. [| i < Hartog(A); i eqpoll Hartog(A) |] ==> P";
   58.74  by (fast_tac (claset() addEs [less_HartogE1, eqpoll_sym RS eqpoll_imp_lepoll
   58.75                  RS lepoll_trans RS HartogE]) 1);
   58.76  qed "less_HartogE";
   58.77  
   58.78 -goal thy "Card(Hartog(A))";
   58.79 +Goal "Card(Hartog(A))";
   58.80  by (fast_tac (claset() addSIs [CardI, Ord_Hartog] addEs [less_HartogE]) 1);
   58.81  qed "Card_Hartog";
    59.1 --- a/src/ZF/AC/WO1_AC.ML	Mon Jun 22 17:12:27 1998 +0200
    59.2 +++ b/src/ZF/AC/WO1_AC.ML	Mon Jun 22 17:13:09 1998 +0200
    59.3 @@ -31,7 +31,7 @@
    59.4  (* WO1 ==> AC1                                                            *)
    59.5  (* ********************************************************************** *)
    59.6  
    59.7 -goalw thy [AC1_def, WO1_def] "!!Z. WO1 ==> AC1";
    59.8 +Goalw [AC1_def, WO1_def] "!!Z. WO1 ==> AC1";
    59.9  by (fast_tac (claset() addSEs [ex_choice_fun]) 1);
   59.10  qed "WO1_AC1";
   59.11  
   59.12 @@ -39,7 +39,7 @@
   59.13  (* WO1 ==> AC10(n) (n >= 1)                                               *)
   59.14  (* ********************************************************************** *)
   59.15  
   59.16 -goalw thy [WO1_def] "!!A. [| WO1; ALL B:A. EX C:D(B). P(C,B) |]  \
   59.17 +Goalw [WO1_def] "!!A. [| WO1; ALL B:A. EX C:D(B). P(C,B) |]  \
   59.18  \               ==> EX f. ALL B:A. P(f`B,B)";
   59.19  by (eres_inst_tac [("x","Union({{C:D(B). P(C,B)}. B:A})")] allE 1);
   59.20  by (etac exE 1);
   59.21 @@ -52,7 +52,7 @@
   59.22                  addSEs [CollectD2]) 1);
   59.23  val lemma1 = result();
   59.24  
   59.25 -goalw thy [WO1_def] "!!A. [| ~Finite(B); WO1 |] ==> |B| + |B| eqpoll  B";
   59.26 +Goalw [WO1_def] "!!A. [| ~Finite(B); WO1 |] ==> |B| + |B| eqpoll  B";
   59.27  by (rtac eqpoll_trans 1);
   59.28  by (fast_tac (claset() addSEs [well_ord_cardinal_eqpoll]) 2);
   59.29  by (resolve_tac [eqpoll_sym RS eqpoll_trans] 1);
   59.30 @@ -68,17 +68,17 @@
   59.31  by (fast_tac (claset() addSEs [well_ord_cardinal_eqpoll]) 1);
   59.32  val lemma2_1 = result();
   59.33  
   59.34 -goal thy "!!f. f : bij(D+D, B) ==> {{f`Inl(i), f`Inr(i)}. i:D} : Pow(Pow(B))";
   59.35 +Goal "!!f. f : bij(D+D, B) ==> {{f`Inl(i), f`Inr(i)}. i:D} : Pow(Pow(B))";
   59.36  by (fast_tac (claset() addSIs [InlI, InrI]
   59.37                  addSEs [RepFunE, bij_is_fun RS apply_type]) 1);
   59.38  val lemma2_2 = result();
   59.39  
   59.40 -goal thy "!!f. [| f:inj(A,B); f`a = f`b; a:A; b:A |] ==> a=b";
   59.41 +Goal "!!f. [| f:inj(A,B); f`a = f`b; a:A; b:A |] ==> a=b";
   59.42  by (rtac inj_equality 1);
   59.43  by (TRYALL (fast_tac (claset() addSEs [inj_is_fun RS apply_Pair] addEs [subst])));
   59.44  val lemma = result();
   59.45  
   59.46 -goalw thy AC_aux_defs
   59.47 +Goalw AC_aux_defs
   59.48          "!!f. f : bij(D+D, B) ==>  \
   59.49  \               pairwise_disjoint({{f`Inl(i), f`Inr(i)}. i:D})";
   59.50  by (fast_tac (claset() addSEs [RepFunE, not_emptyE] 
   59.51 @@ -99,12 +99,12 @@
   59.52          addSEs [RepFunE, not_emptyE, mem_irrefl]) 1);
   59.53  val lemma2_4 = result();
   59.54  
   59.55 -goalw thy [bij_def, surj_def]
   59.56 +Goalw [bij_def, surj_def]
   59.57          "!!f. f : bij(D+D, B) ==> Union({{f`Inl(i), f`Inr(i)}. i:D})=B";
   59.58  by (fast_tac (claset() addSEs [inj_is_fun RS apply_type]) 1);
   59.59  val lemma2_5 = result();
   59.60  
   59.61 -goal thy "!!A. [| WO1; ~Finite(B); 1 le n  |]  \
   59.62 +Goal "!!A. [| WO1; ~Finite(B); 1 le n  |]  \
   59.63  \       ==> EX C:Pow(Pow(B)). pairwise_disjoint(C) &  \
   59.64  \               sets_of_size_between(C, 2, succ(n)) &  \
   59.65  \               Union(C)=B";
   59.66 @@ -114,6 +114,6 @@
   59.67                  addSEs [lemma2_2, lemma2_3, lemma2_4, lemma2_5]) 1);
   59.68  val lemma2 = result();
   59.69  
   59.70 -goalw thy AC_defs "!!n. [| WO1; 1 le n |] ==> AC10(n)";
   59.71 +Goalw AC_defs "!!n. [| WO1; 1 le n |] ==> AC10(n)";
   59.72  by (fast_tac (claset() addSIs [lemma1] addSEs [lemma2]) 1);
   59.73  qed "WO1_AC10";
    60.1 --- a/src/ZF/AC/WO1_WO6.ML	Mon Jun 22 17:12:27 1998 +0200
    60.2 +++ b/src/ZF/AC/WO1_WO6.ML	Mon Jun 22 17:13:09 1998 +0200
    60.3 @@ -13,39 +13,39 @@
    60.4  
    60.5  (* ********************************************************************** *)
    60.6  
    60.7 -goalw thy WO_defs "!!Z. WO2 ==> WO3";
    60.8 +Goalw WO_defs "!!Z. WO2 ==> WO3";
    60.9  by (Fast_tac 1);
   60.10  qed "WO2_WO3";
   60.11  
   60.12  (* ********************************************************************** *)
   60.13  
   60.14 -goalw thy (eqpoll_def::WO_defs) "!!Z. WO3 ==> WO1";
   60.15 +Goalw (eqpoll_def::WO_defs) "!!Z. WO3 ==> WO1";
   60.16  by (fast_tac (claset() addSEs [bij_is_inj RS well_ord_rvimage, 
   60.17  			      well_ord_Memrel RS well_ord_subset]) 1);
   60.18  qed "WO3_WO1";
   60.19  
   60.20  (* ********************************************************************** *)
   60.21  
   60.22 -goalw thy (eqpoll_def::WO_defs) "!!Z. WO1 ==> WO2";
   60.23 +Goalw (eqpoll_def::WO_defs) "!!Z. WO1 ==> WO2";
   60.24  by (fast_tac (claset() addSIs [Ord_ordertype, ordermap_bij]) 1);
   60.25  qed "WO1_WO2";
   60.26  
   60.27  (* ********************************************************************** *)
   60.28  
   60.29 -goal thy "!!f. f: A->B ==> (lam x:A. {f`x}): A -> {{b}. b:B}";
   60.30 +Goal "!!f. f: A->B ==> (lam x:A. {f`x}): A -> {{b}. b:B}";
   60.31  by (fast_tac (claset() addSIs [lam_type, apply_type]) 1);
   60.32  qed "lam_sets";
   60.33  
   60.34 -goalw thy [surj_def] "!!f. f:surj(A,B) ==> (UN a:A. {f`a}) = B";
   60.35 +Goalw [surj_def] "!!f. f:surj(A,B) ==> (UN a:A. {f`a}) = B";
   60.36  by (fast_tac (claset() addSEs [apply_type]) 1);
   60.37  qed "surj_imp_eq_";
   60.38  
   60.39 -goal thy "!!f. [| f:surj(A,B); Ord(A) |] ==> (UN a<A. {f`a}) = B";
   60.40 +Goal "!!f. [| f:surj(A,B); Ord(A) |] ==> (UN a<A. {f`a}) = B";
   60.41  by (fast_tac (claset() addSDs [surj_imp_eq_]
   60.42                  addSIs [ltI] addSEs [ltE]) 1);
   60.43  qed "surj_imp_eq";
   60.44  
   60.45 -goalw thy WO_defs "!!Z. WO1 ==> WO4(1)";
   60.46 +Goalw WO_defs "!!Z. WO1 ==> WO4(1)";
   60.47  by (rtac allI 1);
   60.48  by (eres_inst_tac [("x","A")] allE 1);
   60.49  by (etac exE 1);
   60.50 @@ -61,20 +61,20 @@
   60.51  
   60.52  (* ********************************************************************** *)
   60.53  
   60.54 -goalw thy WO_defs "!!Z. [| m:nat; n:nat; m le n; WO4(m) |] ==> WO4(n)";
   60.55 +Goalw WO_defs "!!Z. [| m:nat; n:nat; m le n; WO4(m) |] ==> WO4(n)";
   60.56  by (fast_tac (claset() addIs [nat_le_imp_lepoll RSN (2, lepoll_trans)]) 1);
   60.57  qed "WO4_mono";
   60.58  
   60.59  (* ********************************************************************** *)
   60.60  
   60.61 -goalw thy WO_defs "!!Z. [| m:nat; 1 le m; WO4(m) |] ==> WO5";
   60.62 +Goalw WO_defs "!!Z. [| m:nat; 1 le m; WO4(m) |] ==> WO5";
   60.63      (*ZF_cs is essential: default claset's too slow*)
   60.64  by (fast_tac ZF_cs 1);
   60.65  qed "WO4_WO5";
   60.66  
   60.67  (* ********************************************************************** *)
   60.68  
   60.69 -goalw thy WO_defs "!!Z. WO5 ==> WO6";
   60.70 +Goalw WO_defs "!!Z. WO5 ==> WO6";
   60.71      (*ZF_cs is essential: default claset's too slow*)
   60.72  by (fast_tac ZF_cs 1);
   60.73  qed "WO5_WO6";
    61.1 --- a/src/ZF/AC/WO1_WO7.ML	Mon Jun 22 17:12:27 1998 +0200
    61.2 +++ b/src/ZF/AC/WO1_WO7.ML	Mon Jun 22 17:13:09 1998 +0200
    61.3 @@ -10,7 +10,7 @@
    61.4  (* It is easy to see, that WO7 is equivallent to (**)                     *)
    61.5  (* ********************************************************************** *)
    61.6  
    61.7 -goalw thy [WO7_def] "WO7 <-> (ALL X. ~Finite(X) -->  \
    61.8 +Goalw [WO7_def] "WO7 <-> (ALL X. ~Finite(X) -->  \
    61.9  \                       (EX R. well_ord(X,R) & ~well_ord(X,converse(R))))";
   61.10  by (fast_tac (claset() addSEs [Finite_well_ord_converse]) 1);
   61.11  qed "WO7_iff_LEMMA";
   61.12 @@ -19,7 +19,7 @@
   61.13  (* It is also easy to show that LEMMA implies WO1.                        *)
   61.14  (* ********************************************************************** *)
   61.15  
   61.16 -goalw thy [WO1_def] "!!Z. ALL X. ~Finite(X) -->  \
   61.17 +Goalw [WO1_def] "!!Z. ALL X. ~Finite(X) -->  \
   61.18  \               (EX R. well_ord(X,R) & ~well_ord(X,converse(R))) ==> WO1";
   61.19  by (rtac allI 1);
   61.20  by (etac allE 1);
   61.21 @@ -43,7 +43,7 @@
   61.22  (* gives the conclusion.                                                  *)
   61.23  (* ********************************************************************** *)
   61.24  
   61.25 -goalw thy [wf_on_def, wf_def] 
   61.26 +Goalw [wf_on_def, wf_def] 
   61.27      "!!a. [| Ord(a); ~Finite(a) |] ==> ~wf[a](converse(Memrel(a)))";
   61.28  by (dresolve_tac [nat_le_infinite_Ord RS le_imp_subset] 1 
   61.29      THEN (assume_tac 1));
   61.30 @@ -57,12 +57,12 @@
   61.31                              nat_succI RSN (2, subsetD)]) 1);
   61.32  qed "converse_Memrel_not_wf_on";
   61.33  
   61.34 -goalw thy [well_ord_def] 
   61.35 +Goalw [well_ord_def] 
   61.36      "!!a. [| Ord(a); ~Finite(a) |] ==> ~well_ord(a,converse(Memrel(a)))";
   61.37  by (fast_tac (claset() addSDs [converse_Memrel_not_wf_on]) 1);
   61.38  qed "converse_Memrel_not_well_ord";
   61.39  
   61.40 -goal thy "!!A. [| well_ord(A,r); well_ord(A,converse(r)) |]  \
   61.41 +Goal "!!A. [| well_ord(A,r); well_ord(A,converse(r)) |]  \
   61.42  \       ==> well_ord(ordertype(A,r), converse(Memrel(ordertype(A, r))))";
   61.43  by (rtac ([ordertype_ord_iso RS ord_iso_sym RS ord_iso_rvimage_eq, 
   61.44                  Memrel_type RS (subset_Int_iff RS iffD1)] 
   61.45 @@ -74,7 +74,7 @@
   61.46          THEN (assume_tac 1));
   61.47  qed "well_ord_converse_Memrel";
   61.48  
   61.49 -goalw thy [WO1_def] "!!Z. WO1 ==> ALL X. ~Finite(X) -->  \
   61.50 +Goalw [WO1_def] "!!Z. WO1 ==> ALL X. ~Finite(X) -->  \
   61.51  \                       (EX R. well_ord(X,R) & ~well_ord(X,converse(R)))";
   61.52  by (REPEAT (resolve_tac [allI,impI] 1));
   61.53  by (REPEAT (eresolve_tac [allE,exE] 1));
    62.1 --- a/src/ZF/AC/WO1_WO8.ML	Mon Jun 22 17:12:27 1998 +0200
    62.2 +++ b/src/ZF/AC/WO1_WO8.ML	Mon Jun 22 17:13:09 1998 +0200
    62.3 @@ -9,7 +9,7 @@
    62.4  (* Trivial implication "WO1 ==> WO8"                                      *)
    62.5  (* ********************************************************************** *)
    62.6  
    62.7 -goalw thy WO_defs "!!Z. WO1 ==> WO8";
    62.8 +Goalw WO_defs "!!Z. WO1 ==> WO8";
    62.9  by (Fast_tac 1);
   62.10  qed "WO1_WO8";
   62.11  
   62.12 @@ -17,7 +17,7 @@
   62.13  (* The proof of "WO8 ==> WO1" - faithful image of Rubin & Rubin's proof   *)
   62.14  (* ********************************************************************** *)
   62.15  
   62.16 -goalw thy WO_defs "!!Z. WO8 ==> WO1";
   62.17 +Goalw WO_defs "!!Z. WO8 ==> WO1";
   62.18  by (rtac allI 1);
   62.19  by (eres_inst_tac [("x","{{x}. x:A}")] allE 1);
   62.20  by (etac impE 1);
    63.1 --- a/src/ZF/AC/WO2_AC16.ML	Mon Jun 22 17:12:27 1998 +0200
    63.2 +++ b/src/ZF/AC/WO2_AC16.ML	Mon Jun 22 17:13:09 1998 +0200
    63.3 @@ -18,7 +18,7 @@
    63.4  (* case of limit ordinal                                                  *)
    63.5  (* ********************************************************************** *)
    63.6  
    63.7 -goal thy "!!Z. [| ALL y<x. ALL z<a. z<y | (EX Y: F(y). f(z)<=Y)  \
    63.8 +Goal "!!Z. [| ALL y<x. ALL z<a. z<y | (EX Y: F(y). f(z)<=Y)  \
    63.9  \               --> (EX! Y. Y:F(y) & f(z)<=Y);  \
   63.10  \               ALL i j. i le j --> F(i) <= F(j); j le i; i<x; z<a;  \
   63.11  \               V: F(i); f(z)<=V; W:F(j); f(z)<=W |]  \
   63.12 @@ -31,7 +31,7 @@
   63.13  by (etac ex1_two_eq 1 THEN (REPEAT (ares_tac [conjI] 1)));
   63.14  val lemma3_1 = result();
   63.15  
   63.16 -goal thy "!!Z. [| ALL y<x. ALL z<a. z<y | (EX Y: F(y). f(z)<=Y)  \
   63.17 +Goal "!!Z. [| ALL y<x. ALL z<a. z<y | (EX Y: F(y). f(z)<=Y)  \
   63.18  \               --> (EX! Y. Y:F(y) & f(z)<=Y);  \
   63.19  \               ALL i j. i le j --> F(i) <= F(j); i<x; j<x; z<a;  \
   63.20  \               V: F(i); f(z)<=V; W:F(j); f(z)<=W |]  \
   63.21 @@ -42,7 +42,7 @@
   63.22  by (etac lemma3_1 1 THEN (REPEAT (assume_tac 1)));
   63.23  val lemma3 = result();
   63.24  
   63.25 -goal thy "!!a. [| ALL y<x. F(y) <= X &  \
   63.26 +Goal "!!a. [| ALL y<x. F(y) <= X &  \
   63.27  \               (ALL x<a. x < y | (EX Y:F(y). fa(x) <= Y) -->  \
   63.28  \                       (EX! Y. Y : F(y) & fa(x) <= Y)); x < a |]  \
   63.29  \               ==> ALL y<x. ALL z<a. z < y | (EX Y:F(y). fa(z) <= Y) -->  \
   63.30 @@ -52,7 +52,7 @@
   63.31  by (fast_tac (FOL_cs addSEs [oallE]) 1);
   63.32  val lemma4 = result();
   63.33  
   63.34 -goal thy "!!a. [| ALL y<x. F(y) <= X &  \
   63.35 +Goal "!!a. [| ALL y<x. F(y) <= X &  \
   63.36  \               (ALL x<a. x < y | (EX Y:F(y). fa(x) <= Y) -->  \
   63.37  \                       (EX! Y. Y : F(y) & fa(x) <= Y)); \
   63.38  \               x < a; Limit(x); ALL i j. i le j --> F(i) <= F(j) |]  \
   63.39 @@ -101,7 +101,7 @@
   63.40  (* dbl_Diff_eqpoll_Card                                                   *)
   63.41  (* ********************************************************************** *)
   63.42  
   63.43 -goal thy "!!A. [| A eqpoll a; Card(a); ~Finite(a); B lesspoll a;  \
   63.44 +Goal "!!A. [| A eqpoll a; Card(a); ~Finite(a); B lesspoll a;  \
   63.45  \       C lesspoll a |] ==> A - B - C eqpoll a";
   63.46  by (rtac Diff_lesspoll_eqpoll_Card 1 THEN (REPEAT (assume_tac 1)));
   63.47  by (rtac Diff_lesspoll_eqpoll_Card 1 THEN (REPEAT (assume_tac 1)));
   63.48 @@ -111,7 +111,7 @@
   63.49  (* Case of finite ordinals                                                *)
   63.50  (* ********************************************************************** *)
   63.51  
   63.52 -goalw thy [lesspoll_def]
   63.53 +Goalw [lesspoll_def]
   63.54          "!!X. [| Finite(X); ~Finite(a); Ord(a) |] ==> X lesspoll a";
   63.55  by (rtac conjI 1);
   63.56  by (dresolve_tac [nat_le_infinite_Ord RS le_imp_lepoll] 1
   63.57 @@ -123,11 +123,11 @@
   63.58          subset_imp_lepoll RSN (2, eqpoll_imp_lepoll RS lepoll_trans)]) 1);
   63.59  qed "Finite_lesspoll_infinite_Ord";
   63.60  
   63.61 -goal thy "!!x. x:X ==> Union(X) = Union(X-{x}) Un x";
   63.62 +Goal "!!x. x:X ==> Union(X) = Union(X-{x}) Un x";
   63.63  by (Fast_tac 1);
   63.64  qed "Union_eq_Un_Diff";
   63.65  
   63.66 -goal thy "!!n. n:nat ==> ALL X. X eqpoll n --> (ALL x:X. Finite(x))  \
   63.67 +Goal "!!n. n:nat ==> ALL X. X eqpoll n --> (ALL x:X. Finite(x))  \
   63.68  \       --> Finite(Union(X))";
   63.69  by (etac nat_induct 1);
   63.70  by (fast_tac (claset() addSDs [eqpoll_imp_lepoll RS lepoll_0_is_0]
   63.71 @@ -141,19 +141,19 @@
   63.72  by (fast_tac (claset() addSIs [Diff_sing_eqpoll]) 1);
   63.73  qed "Finite_Union_lemma";
   63.74  
   63.75 -goal thy "!!X. [| ALL x:X. Finite(x); Finite(X) |] ==> Finite(Union(X))";
   63.76 +Goal "!!X. [| ALL x:X. Finite(x); Finite(X) |] ==> Finite(Union(X))";
   63.77  by (eresolve_tac [Finite_def RS def_imp_iff RS iffD1 RS bexE] 1);
   63.78  by (dtac Finite_Union_lemma 1);
   63.79  by (Fast_tac 1);
   63.80  qed "Finite_Union";
   63.81  
   63.82 -goalw thy [Finite_def] "!!x. [| x lepoll n; n:nat |] ==> Finite(x)";
   63.83 +Goalw [Finite_def] "!!x. [| x lepoll n; n:nat |] ==> Finite(x)";
   63.84  by (fast_tac (claset()
   63.85          addEs [nat_into_Ord RSN (2, lepoll_imp_ex_le_eqpoll) RS exE,
   63.86          Ord_nat RSN (2, ltI) RSN (2, lt_trans1) RS ltD]) 1);
   63.87  qed "lepoll_nat_num_imp_Finite";
   63.88  
   63.89 -goal thy "!!X. [| ALL x:X. x lepoll n & x <= T; well_ord(T, R); X lepoll b;  \
   63.90 +Goal "!!X. [| ALL x:X. x lepoll n & x <= T; well_ord(T, R); X lepoll b;  \
   63.91  \       b<a; ~Finite(a); Card(a); n:nat |]  \
   63.92  \       ==> Union(X) lesspoll a";
   63.93  by (excluded_middle_tac "Finite(X)" 1);
   63.94 @@ -181,24 +181,24 @@
   63.95  (* recfunAC16_lepoll_index                                                *)
   63.96  (* ********************************************************************** *)
   63.97  
   63.98 -goal thy "A Un {a} = cons(a, A)";
   63.99 +Goal "A Un {a} = cons(a, A)";
  63.100  by (Fast_tac 1);
  63.101  qed "Un_sing_eq_cons";
  63.102  
  63.103 -goal thy "!!A. A lepoll B ==> A Un {a} lepoll succ(B)";
  63.104 +Goal "!!A. A lepoll B ==> A Un {a} lepoll succ(B)";
  63.105  by (asm_simp_tac (simpset() addsimps [Un_sing_eq_cons, succ_def]) 1);
  63.106  by (eresolve_tac [mem_not_refl RSN (2, cons_lepoll_cong)] 1);
  63.107  qed "Un_lepoll_succ";
  63.108  
  63.109 -goal thy "!!a. Ord(a) ==> F(a) - (UN b<succ(a). F(b)) = 0";
  63.110 +Goal "!!a. Ord(a) ==> F(a) - (UN b<succ(a). F(b)) = 0";
  63.111  by (fast_tac (claset() addSIs [OUN_I, le_refl]) 1);
  63.112  qed "Diff_UN_succ_empty";
  63.113  
  63.114 -goal thy "!!a. Ord(a) ==> F(a) Un X - (UN b<succ(a). F(b)) <= X";
  63.115 +Goal "!!a. Ord(a) ==> F(a) Un X - (UN b<succ(a). F(b)) <= X";
  63.116  by (fast_tac (claset() addSIs [OUN_I, le_refl]) 1);
  63.117  qed "Diff_UN_succ_subset";
  63.118  
  63.119 -goal thy "!!x. Ord(x) ==>  \
  63.120 +Goal "!!x. Ord(x) ==>  \
  63.121  \       recfunAC16(f, g, x, a) - (UN i<x. recfunAC16(f, g, i, a)) lepoll 1";
  63.122  by (etac Ord_cases 1);
  63.123  by (asm_simp_tac (simpset() addsimps [recfunAC16_0,
  63.124 @@ -213,12 +213,12 @@
  63.125          (singleton_eqpoll_1 RS eqpoll_imp_lepoll RSN (2, lepoll_trans))]) 1);
  63.126  qed "recfunAC16_Diff_lepoll_1";
  63.127  
  63.128 -goal thy "!!z. [| z : F(x); Ord(x) |]  \
  63.129 +Goal "!!z. [| z : F(x); Ord(x) |]  \
  63.130  \       ==> z:F(LEAST i. z:F(i)) - (UN j<(LEAST i. z:F(i)). F(j))";
  63.131  by (fast_tac (claset() addEs [less_LeastE] addSEs [OUN_E, LeastI]) 1);
  63.132  qed "in_Least_Diff";
  63.133  
  63.134 -goal thy "!!w. [| (LEAST i. w:F(i)) = (LEAST i. z:F(i));  \
  63.135 +Goal "!!w. [| (LEAST i. w:F(i)) = (LEAST i. z:F(i));  \
  63.136  \       w:(UN i<a. F(i)); z:(UN i<a. F(i)) |]  \
  63.137  \       ==> EX b<a. w:(F(b) - (UN c<b. F(c))) & z:(F(b) - (UN c<b. F(c)))";
  63.138  by (REPEAT (etac OUN_E 1));
  63.139 @@ -231,11 +231,11 @@
  63.140          THEN (REPEAT (assume_tac 1)));
  63.141  qed "Least_eq_imp_ex";
  63.142  
  63.143 -goal thy "!!A. [| A lepoll 1; a:A; b:A |] ==> a=b";
  63.144 +Goal "!!A. [| A lepoll 1; a:A; b:A |] ==> a=b";
  63.145  by (fast_tac (claset() addSDs [lepoll_1_is_sing]) 1);
  63.146  qed "two_in_lepoll_1";
  63.147  
  63.148 -goal thy "!!a. [| ALL i<a. F(i)-(UN j<i. F(j)) lepoll 1; Limit(a) |]  \
  63.149 +Goal "!!a. [| ALL i<a. F(i)-(UN j<i. F(j)) lepoll 1; Limit(a) |]  \
  63.150  \       ==> (UN x<a. F(x)) lepoll a";
  63.151  by (resolve_tac [lepoll_def RS (def_imp_iff RS iffD2)] 1);
  63.152  by (res_inst_tac [("x","lam z: (UN x<a. F(x)). LEAST i. z:F(i)")] exI 1);
  63.153 @@ -254,7 +254,7 @@
  63.154  by (fast_tac (claset() addSEs [two_in_lepoll_1]) 1);
  63.155  qed "UN_lepoll_index";
  63.156  
  63.157 -goal thy "!!y. Ord(y) ==> recfunAC16(f, fa, y, a) lepoll y";
  63.158 +Goal "!!y. Ord(y) ==> recfunAC16(f, fa, y, a) lepoll y";
  63.159  by (etac trans_induct 1);
  63.160  by (etac Ord_cases 1);
  63.161  by (asm_simp_tac (simpset() addsimps [recfunAC16_0, lepoll_refl]) 1);
  63.162 @@ -268,7 +268,7 @@
  63.163          addSIs [UN_lepoll_index]) 1);
  63.164  qed "recfunAC16_lepoll_index";
  63.165  
  63.166 -goal thy "!!y. [| recfunAC16(f,g,y,a) <= {X: Pow(A). X eqpoll n};  \
  63.167 +Goal "!!y. [| recfunAC16(f,g,y,a) <= {X: Pow(A). X eqpoll n};  \
  63.168  \               A eqpoll a; y<a; ~Finite(a); Card(a); n:nat |]  \
  63.169  \               ==> Union(recfunAC16(f,g,y,a)) lesspoll a";
  63.170  by (eresolve_tac [eqpoll_def RS def_imp_iff RS iffD1 RS exE] 1);
  63.171 @@ -279,7 +279,7 @@
  63.172  by (fast_tac (claset() addSEs [eqpoll_imp_lepoll]) 1);
  63.173  qed "Union_recfunAC16_lesspoll";
  63.174  
  63.175 -goal thy
  63.176 +Goal
  63.177    "!!a. [| recfunAC16(f, fa, y, a) <= {X: Pow(A) . X eqpoll succ(k #+ m)};  \
  63.178  \       Card(a); ~ Finite(a); A eqpoll a;  \
  63.179  \       k : nat; m : nat; y<a;  \
  63.180 @@ -302,7 +302,7 @@
  63.181                               nat_sum_eqpoll_sum RSN (3, 
  63.182                               eqpoll_trans RS eqpoll_trans))) |> standard;
  63.183  
  63.184 -goal thy "!!x. [| x : Pow(A - B - fa`i); x eqpoll m;  \
  63.185 +Goal "!!x. [| x : Pow(A - B - fa`i); x eqpoll m;  \
  63.186  \       fa : bij(a, {x: Pow(A) . x eqpoll k}); i<a; k:nat; m:nat |]  \
  63.187  \       ==> fa ` i Un x : {x: Pow(A) . x eqpoll k #+ m}";
  63.188  by (rtac CollectI 1);
  63.189 @@ -319,7 +319,7 @@
  63.190  (* Lemmas simplifying assumptions                                         *)
  63.191  (* ********************************************************************** *)
  63.192  
  63.193 -goal thy "!!j. [| ALL y<succ(j). F(y)<=X & (ALL x<a. x<y | P(x,y)  \
  63.194 +Goal "!!j. [| ALL y<succ(j). F(y)<=X & (ALL x<a. x<y | P(x,y)  \
  63.195  \       --> Q(x,y)); succ(j)<a |]  \
  63.196  \       ==> F(j)<=X & (ALL x<a. x<j | P(x,j) --> Q(x,j))";
  63.197  by (dtac ospec 1);
  63.198 @@ -327,7 +327,7 @@
  63.199          THEN (REPEAT (assume_tac 1)));
  63.200  val lemma6 = result();
  63.201  
  63.202 -goal thy "!!j. [| F(j)<=X; (ALL x<a. x<j | P(x,j) --> Q(x,j)); succ(j)<a |]  \
  63.203 +Goal "!!j. [| F(j)<=X; (ALL x<a. x<j | P(x,j) --> Q(x,j)); succ(j)<a |]  \
  63.204  \       ==> P(j,j) --> F(j) <= X & (ALL x<a. x le j | P(x,j) --> Q(x,j))";
  63.205  by (fast_tac (claset() addSEs [leE]) 1);
  63.206  val lemma7 = result();
  63.207 @@ -337,7 +337,7 @@
  63.208  (* ordinal there is a set satisfying certain properties                   *)
  63.209  (* ********************************************************************** *)
  63.210  
  63.211 -goal thy "!!A. [| A eqpoll a; ~ Finite(a); Ord(a); m:nat |]  \
  63.212 +Goal "!!A. [| A eqpoll a; ~ Finite(a); Ord(a); m:nat |]  \
  63.213  \       ==> EX X:Pow(A). X eqpoll m";
  63.214  by (eresolve_tac [Ord_nat RSN (2, ltI) RS 
  63.215                  (nat_le_infinite_Ord RSN (2, lt_trans2)) RS 
  63.216 @@ -348,11 +348,11 @@
  63.217  by (fast_tac (claset() addSEs [eqpoll_sym]) 1);
  63.218  qed "ex_subset_eqpoll";
  63.219  
  63.220 -goal thy "!!A. [| A <= B Un C; A Int C = 0 |] ==> A <= B";
  63.221 +Goal "!!A. [| A <= B Un C; A Int C = 0 |] ==> A <= B";
  63.222  by (fast_tac (claset() addDs [equals0D]) 1);
  63.223  qed "subset_Un_disjoint";
  63.224  
  63.225 -goal thy "!!F. [| X:Pow(A - Union(B) -C); T:B; F<=T |] ==> F Int X = 0";
  63.226 +Goal "!!F. [| X:Pow(A - Union(B) -C); T:B; F<=T |] ==> F Int X = 0";
  63.227  by (fast_tac (claset() addSIs [equals0I]) 1);
  63.228  qed "Int_empty";
  63.229  
  63.230 @@ -360,11 +360,11 @@
  63.231  (* equipollent subset (and finite) is the whole set                       *)
  63.232  (* ********************************************************************** *)
  63.233  
  63.234 -goal thy "!!A. [| A <= B; a : A; A - {a} = B - {a} |] ==> A = B";
  63.235 +Goal "!!A. [| A <= B; a : A; A - {a} = B - {a} |] ==> A = B";
  63.236  by (fast_tac (claset() addSEs [equalityE]) 1);
  63.237  qed "Diffs_eq_imp_eq";
  63.238  
  63.239 -goal thy "!!A. m:nat ==> ALL A B. A <= B & m lepoll A & B lepoll m --> A=B";
  63.240 +Goal "!!A. m:nat ==> ALL A B. A <= B & m lepoll A & B lepoll m --> A=B";
  63.241  by (etac nat_induct 1);
  63.242  by (fast_tac (claset() addSDs [lepoll_0_is_0]) 1);
  63.243  by (REPEAT (resolve_tac [allI, impI] 1));
  63.244 @@ -382,11 +382,11 @@
  63.245          THEN REPEAT (assume_tac 1));
  63.246  qed "subset_imp_eq_lemma";
  63.247  
  63.248 -goal thy "!!A. [| A <= B; m lepoll A; B lepoll m; m:nat |] ==> A=B";
  63.249 +Goal "!!A. [| A <= B; m lepoll A; B lepoll m; m:nat |] ==> A=B";
  63.250  by (fast_tac (FOL_cs addSDs [subset_imp_eq_lemma]) 1);
  63.251  qed "subset_imp_eq";
  63.252  
  63.253 -goal thy "!!f. [| f:bij(a, {Y:X. Y eqpoll succ(k)}); k:nat; f`b<=f`y; b<a;  \
  63.254 +Goal "!!f. [| f:bij(a, {Y:X. Y eqpoll succ(k)}); k:nat; f`b<=f`y; b<a;  \
  63.255  \       y<a |] ==> b=y";
  63.256  by (dtac subset_imp_eq 1);
  63.257  by (etac nat_succI 3);
  63.258 @@ -398,7 +398,7 @@
  63.259  by (fast_tac (claset() addSDs [ltD]) 1);
  63.260  qed "bij_imp_arg_eq";
  63.261  
  63.262 -goal thy
  63.263 +Goal
  63.264    "!!a. [| recfunAC16(f, fa, y, a) <= {X: Pow(A) . X eqpoll succ(k #+ m)};  \
  63.265  \       Card(a); ~ Finite(a); A eqpoll a;  \
  63.266  \       k : nat; m : nat; y<a;  \
  63.267 @@ -434,7 +434,7 @@
  63.268  (* ordinal there is a number of the set satisfying certain properties     *)
  63.269  (* ********************************************************************** *)
  63.270  
  63.271 -goal thy
  63.272 +Goal
  63.273    "!!a. [| recfunAC16(f, fa, y, a) <= {X: Pow(A) . X eqpoll succ(k #+ m)};  \
  63.274  \       Card(a); ~ Finite(a); A eqpoll a;  \
  63.275  \       k : nat; m : nat; y<a;  \
  63.276 @@ -452,7 +452,7 @@
  63.277          THEN REPEAT (ares_tac [Card_is_Ord] 1));
  63.278  qed "ex_next_Ord";
  63.279  
  63.280 -goal thy "!!Z. [| EX! Y. Y:Z & P(Y); ~P(W) |] ==> EX! Y. Y: (Z Un {W}) & P(Y)";
  63.281 +Goal "!!Z. [| EX! Y. Y:Z & P(Y); ~P(W) |] ==> EX! Y. Y: (Z Un {W}) & P(Y)";
  63.282  by (Fast_tac 1);
  63.283  qed "ex1_in_Un_sing";
  63.284  
  63.285 @@ -460,7 +460,7 @@
  63.286  (* Lemma simplifying assumptions                                          *)
  63.287  (* ********************************************************************** *)
  63.288  
  63.289 -goal thy "!!j. [| ALL x<a. x<j | (EX xa:F(j). P(x, xa))  \
  63.290 +Goal "!!j. [| ALL x<a. x<j | (EX xa:F(j). P(x, xa))  \
  63.291  \       --> (EX! Y. Y:F(j) & P(x, Y)); F(j) <= X;  \
  63.292  \       L : X; P(j, L) & (ALL x<a. P(x, L) --> (ALL xa:F(j). ~P(x, xa))) |]  \
  63.293  \       ==> F(j) Un {L} <= X &  \
  63.294 @@ -489,7 +489,7 @@
  63.295  (* lemma main_induct                                                      *)
  63.296  (* ********************************************************************** *)
  63.297  
  63.298 -goal thy
  63.299 +Goal
  63.300          "!!a. [| b < a; f : bij(a, {Y: Pow(A) . Y eqpoll succ(k #+ m)});  \
  63.301  \       fa : bij(a, {Y: Pow(A) . Y eqpoll succ(k)});  \
  63.302  \       ~Finite(a); Card(a); A eqpoll a; k : nat; m : nat |]  \
  63.303 @@ -574,7 +574,7 @@
  63.304  (* The target theorem                                                     *)
  63.305  (* ********************************************************************** *)
  63.306  
  63.307 -goalw thy [AC16_def]
  63.308 +Goalw [AC16_def]
  63.309          "!!n k. [| WO2; 0<m; k:nat; m:nat |] ==> AC16(k #+ m,k)";
  63.310  by (rtac allI 1);
  63.311  by (rtac impI 1);
    64.1 --- a/src/ZF/AC/WO6_WO1.ML	Mon Jun 22 17:12:27 1998 +0200
    64.2 +++ b/src/ZF/AC/WO6_WO1.ML	Mon Jun 22 17:13:09 1998 +0200
    64.3 @@ -32,25 +32,25 @@
    64.4  (* some properties of relation uu(beta, gamma, delta) - p. 2              *)
    64.5  (* ********************************************************************** *)
    64.6  
    64.7 -goalw thy [uu_def] "domain(uu(f,b,g,d)) <= f`b";
    64.8 +Goalw [uu_def] "domain(uu(f,b,g,d)) <= f`b";
    64.9  by (Blast_tac 1);
   64.10  qed "domain_uu_subset";
   64.11  
   64.12 -goal thy "!! a. ALL b<a. f`b lepoll m ==> \
   64.13 +Goal "!! a. ALL b<a. f`b lepoll m ==> \
   64.14  \               ALL b<a. ALL g<a. ALL d<a. domain(uu(f,b,g,d)) lepoll m";
   64.15  by (fast_tac (claset() addSEs
   64.16          [domain_uu_subset RS subset_imp_lepoll RS lepoll_trans]) 1);
   64.17  qed "quant_domain_uu_lepoll_m";
   64.18  
   64.19 -goalw thy [uu_def] "uu(f,b,g,d) <= f`b * f`g";
   64.20 +Goalw [uu_def] "uu(f,b,g,d) <= f`b * f`g";
   64.21  by (Blast_tac 1);
   64.22  qed "uu_subset1";
   64.23  
   64.24 -goalw thy [uu_def] "uu(f,b,g,d) <= f`d";
   64.25 +Goalw [uu_def] "uu(f,b,g,d) <= f`d";
   64.26  by (Blast_tac 1);
   64.27  qed "uu_subset2";
   64.28  
   64.29 -goal thy "!! a. [| ALL b<a. f`b lepoll m;  d<a |] ==> uu(f,b,g,d) lepoll m";
   64.30 +Goal "!! a. [| ALL b<a. f`b lepoll m;  d<a |] ==> uu(f,b,g,d) lepoll m";
   64.31  by (fast_tac (claset()
   64.32          addSEs [uu_subset2 RS subset_imp_lepoll RS lepoll_trans]) 1);
   64.33  qed "uu_lepoll_m";
   64.34 @@ -58,7 +58,7 @@
   64.35  (* ********************************************************************** *)
   64.36  (* Two cases for lemma ii                                                 *)
   64.37  (* ********************************************************************** *)
   64.38 -goalw thy [lesspoll_def] 
   64.39 +Goalw [lesspoll_def] 
   64.40    "!! a f u. ALL b<a. ALL g<a. ALL d<a. u(f,b,g,d) lepoll m ==>  \
   64.41  \            (ALL b<a. f`b ~= 0 --> (EX g<a. EX d<a. u(f,b,g,d) ~= 0 &  \
   64.42  \                                       u(f,b,g,d) lesspoll m)) |  \
   64.43 @@ -71,7 +71,7 @@
   64.44  (* ********************************************************************** *)
   64.45  (* Lemmas used in both cases                                              *)
   64.46  (* ********************************************************************** *)
   64.47 -goal thy "!!a C. Ord(a) ==> (UN b<a++a. C(b)) = (UN b<a. C(b) Un C(a++b))";
   64.48 +Goal "!!a C. Ord(a) ==> (UN b<a++a. C(b)) = (UN b<a. C(b) Un C(a++b))";
   64.49  by (fast_tac (claset() addSIs [equalityI] addIs [ltI] 
   64.50                      addSDs [lt_oadd_disj]
   64.51                      addSEs [lt_oadd1, oadd_lt_mono2]) 1);
   64.52 @@ -82,7 +82,7 @@
   64.53  (* Case 1 : lemmas                                                        *)
   64.54  (* ********************************************************************** *)
   64.55  
   64.56 -goalw thy [vv1_def] "vv1(f,m,b) <= f`b";
   64.57 +Goalw [vv1_def] "vv1(f,m,b) <= f`b";
   64.58  by (rtac (LetI RS LetI) 1);
   64.59  by (split_tac [expand_if] 1);
   64.60  by (simp_tac (simpset() addsimps [domain_uu_subset]) 1);
   64.61 @@ -91,7 +91,7 @@
   64.62  (* ********************************************************************** *)
   64.63  (* Case 1 : Union of images is the whole "y"                              *)
   64.64  (* ********************************************************************** *)
   64.65 -goalw thy [gg1_def]
   64.66 +Goalw [gg1_def]
   64.67    "!! a f y. [| Ord(a);  m:nat |] ==>   \
   64.68  \            (UN b<a++a. gg1(f,a,m)`b) = (UN b<a. f`b)";
   64.69  by (asm_simp_tac
   64.70 @@ -101,14 +101,14 @@
   64.71                             vv1_subset RS Diff_partition, ww1_def]) 1);
   64.72  qed "UN_gg1_eq";
   64.73  
   64.74 -goal thy "domain(gg1(f,a,m)) = a++a";
   64.75 +Goal "domain(gg1(f,a,m)) = a++a";
   64.76  by (simp_tac (simpset() addsimps [lam_funtype RS domain_of_fun, gg1_def]) 1);
   64.77  qed "domain_gg1";
   64.78  
   64.79  (* ********************************************************************** *)
   64.80  (* every value of defined function is less than or equipollent to m       *)
   64.81  (* ********************************************************************** *)
   64.82 -goal thy "!!a b. [| P(a, b);  Ord(a);  Ord(b);  \
   64.83 +Goal "!!a b. [| P(a, b);  Ord(a);  Ord(b);  \
   64.84  \               Least_a = (LEAST a. EX x. Ord(x) & P(a, x)) |]  \
   64.85  \               ==> P(Least_a, LEAST b. P(Least_a, b))";
   64.86  by (etac ssubst 1);
   64.87 @@ -122,7 +122,7 @@
   64.88          [("P","%g d. domain(uu(f,b,g,d)) ~= 0 &  \
   64.89  \               domain(uu(f,b,g,d)) lepoll m")] nested_LeastI);
   64.90  
   64.91 -goalw thy [gg1_def]
   64.92 +Goalw [gg1_def]
   64.93      "!!a. [| Ord(a);  m:nat;  \
   64.94  \            ALL b<a. f`b ~=0 -->                                       \
   64.95  \            (EX g<a. EX d<a. domain(uu(f,b,g,d)) ~= 0  &               \
   64.96 @@ -159,7 +159,7 @@
   64.97  (* Case 2 : vv2_subset                                                    *)
   64.98  (* ********************************************************************** *)
   64.99  
  64.100 -goalw thy [uu_def] "!!f. [| b<a;  g<a;  f`b~=0;  f`g~=0;        \
  64.101 +Goalw [uu_def] "!!f. [| b<a;  g<a;  f`b~=0;  f`g~=0;        \
  64.102  \                           y*y <= y;  (UN b<a. f`b)=y          \
  64.103  \                        |] ==> EX d<a. uu(f,b,g,d) ~= 0";
  64.104  by (fast_tac (claset() addSIs [not_emptyI] 
  64.105 @@ -167,7 +167,7 @@
  64.106                      addSEs [not_emptyE]) 1);
  64.107  qed "ex_d_uu_not_empty";
  64.108  
  64.109 -goal thy "!!f. [| b<a; g<a; f`b~=0; f`g~=0;  \
  64.110 +Goal "!!f. [| b<a; g<a; f`b~=0; f`g~=0;  \
  64.111  \                       y*y<=y; (UN b<a. f`b)=y |]  \
  64.112  \               ==> uu(f,b,g,LEAST d. (uu(f,b,g,d) ~= 0)) ~= 0";
  64.113  by (dtac ex_d_uu_not_empty 1 THEN REPEAT (assume_tac 1));
  64.114 @@ -179,7 +179,7 @@
  64.115                  sym RSN (2, subst_elem) RS domainI RS not_emptyI] 1));
  64.116  qed "not_empty_rel_imp_domain";
  64.117  
  64.118 -goal thy "!!f. [| b<a; g<a; f`b~=0; f`g~=0;  \
  64.119 +Goal "!!f. [| b<a; g<a; f`b~=0; f`g~=0;  \
  64.120  \                       y*y <= y; (UN b<a. f`b)=y |]  \
  64.121  \               ==> (LEAST d. uu(f,b,g,d) ~= 0) < a";
  64.122  by (eresolve_tac [ex_d_uu_not_empty RS oexE] 1
  64.123 @@ -193,7 +193,7 @@
  64.124  qed "subset_Diff_sing";
  64.125  
  64.126  (*Could this be proved more directly?*)
  64.127 -goal thy "!!A B. [| A lepoll m; m lepoll B; B <= A; m:nat |] ==> A=B";
  64.128 +Goal "!!A B. [| A lepoll m; m lepoll B; B <= A; m:nat |] ==> A=B";
  64.129  by (etac natE 1);
  64.130  by (fast_tac (claset() addSDs [lepoll_0_is_0] addSIs [equalityI]) 1);
  64.131  by (hyp_subst_tac 1);
  64.132 @@ -207,7 +207,7 @@
  64.133          THEN REPEAT (assume_tac 1));
  64.134  qed "supset_lepoll_imp_eq";
  64.135  
  64.136 -goal thy
  64.137 +Goal
  64.138   "!!a. [| ALL g<a. ALL d<a. domain(uu(f, b, g, d))~=0 -->               \
  64.139  \         domain(uu(f, b, g, d)) eqpoll succ(m);                        \
  64.140  \         ALL b<a. f`b lepoll succ(m);  y*y <= y;                       \
  64.141 @@ -225,7 +225,7 @@
  64.142  by (REPEAT (fast_tac (claset() addSIs [domain_uu_subset, nat_succI]) 1));
  64.143  qed "uu_Least_is_fun";
  64.144  
  64.145 -goalw thy [vv2_def]
  64.146 +Goalw [vv2_def]
  64.147      "!!a. [| ALL g<a. ALL d<a. domain(uu(f, b, g, d))~=0 -->            \
  64.148  \            domain(uu(f, b, g, d)) eqpoll succ(m);                     \
  64.149  \            ALL b<a. f`b lepoll succ(m); y*y <= y;                     \
  64.150 @@ -240,7 +240,7 @@
  64.151  (* ********************************************************************** *)
  64.152  (* Case 2 : Union of images is the whole "y"                              *)
  64.153  (* ********************************************************************** *)
  64.154 -goalw thy [gg2_def]
  64.155 +Goalw [gg2_def]
  64.156      "!!a. [| ALL g<a. ALL d<a. domain(uu(f,b,g,d)) ~= 0 -->             \
  64.157  \            domain(uu(f,b,g,d)) eqpoll succ(m);                        \
  64.158  \            ALL b<a. f`b lepoll succ(m); y*y<=y;                       \
  64.159 @@ -254,7 +254,7 @@
  64.160                             vv2_subset RS Diff_partition]) 1);
  64.161  qed "UN_gg2_eq";
  64.162  
  64.163 -goal thy "domain(gg2(f,a,b,s)) = a++a";
  64.164 +Goal "domain(gg2(f,a,b,s)) = a++a";
  64.165  by (simp_tac (simpset() addsimps [lam_funtype RS domain_of_fun, gg2_def]) 1);
  64.166  qed "domain_gg2";
  64.167  
  64.168 @@ -262,7 +262,7 @@
  64.169  (* every value of defined function is less than or equipollent to m       *)
  64.170  (* ********************************************************************** *)
  64.171  
  64.172 -goalw thy [vv2_def]
  64.173 +Goalw [vv2_def]
  64.174      "!!m. [| m:nat; m~=0 |] ==> vv2(f,b,g,s) lepoll m";
  64.175  by (asm_simp_tac (simpset() addsimps [empty_lepollI]
  64.176                                setloop split_tac [expand_if]) 1);
  64.177 @@ -273,7 +273,7 @@
  64.178                  nat_into_Ord, nat_1I]) 1);
  64.179  qed "vv2_lepoll";
  64.180  
  64.181 -goalw thy [ww2_def]
  64.182 +Goalw [ww2_def]
  64.183      "!!m. [| ALL b<a. f`b lepoll succ(m);  g<a;  m:nat;  vv2(f,b,g,d) <= f`g  \
  64.184  \         |] ==> ww2(f,b,g,d) lepoll m";
  64.185  by (excluded_middle_tac "f`g = 0" 1);
  64.186 @@ -284,7 +284,7 @@
  64.187  by (asm_simp_tac (simpset() addsimps [vv2_def, expand_if, not_emptyI]) 1);
  64.188  qed "ww2_lepoll";
  64.189  
  64.190 -goalw thy [gg2_def]
  64.191 +Goalw [gg2_def]
  64.192      "!!a. [| ALL g<a. ALL d<a. domain(uu(f,b,g,d)) ~= 0 -->             \
  64.193  \            domain(uu(f,b,g,d)) eqpoll succ(m);                        \
  64.194  \            ALL b<a. f`b lepoll succ(m);  y*y <= y;                    \
  64.195 @@ -299,7 +299,7 @@
  64.196  (* ********************************************************************** *)
  64.197  (* lemma ii                                                               *)
  64.198  (* ********************************************************************** *)
  64.199 -goalw thy [NN_def]
  64.200 +Goalw [NN_def]
  64.201          "!!y. [| succ(m) : NN(y); y*y <= y; m:nat; m~=0 |] ==> m : NN(y)";
  64.202  by (REPEAT (eresolve_tac [CollectE, exE, conjE] 1));
  64.203  by (resolve_tac [quant_domain_uu_lepoll_m RS cases RS disjE] 1
  64.204 @@ -331,19 +331,19 @@
  64.205  (* the quantifier ALL looks inelegant but makes the proofs shorter  *)
  64.206  (* (used only in the following two lemmas)                          *)
  64.207  
  64.208 -goal thy "ALL n:nat. rec(n, x, %k r. r Un r*r) <=  \
  64.209 +Goal "ALL n:nat. rec(n, x, %k r. r Un r*r) <=  \
  64.210  \                    rec(succ(n), x, %k r. r Un r*r)";
  64.211  by (fast_tac (claset() addIs [rec_succ RS ssubst]) 1);
  64.212  qed "z_n_subset_z_succ_n";
  64.213  
  64.214 -goal thy "!!n. [| ALL n:nat. f(n)<=f(succ(n)); n le m; n : nat; m: nat |]  \
  64.215 +Goal "!!n. [| ALL n:nat. f(n)<=f(succ(n)); n le m; n : nat; m: nat |]  \
  64.216  \              ==> f(n)<=f(m)";
  64.217  by (eres_inst_tac [("P","n le m")] rev_mp 1);
  64.218  by (res_inst_tac [("P","%z. n le z --> f(n) <= f(z)")] nat_induct 1);
  64.219  by (REPEAT (fast_tac le_cs 1));
  64.220  qed "le_subsets";
  64.221  
  64.222 -goal thy "!!n m. [| n le m; m:nat |] ==>  \
  64.223 +Goal "!!n m. [| n le m; m:nat |] ==>  \
  64.224  \       rec(n, x, %k r. r Un r*r) <= rec(m, x, %k r. r Un r*r)";
  64.225  by (resolve_tac [z_n_subset_z_succ_n RS le_subsets] 1 
  64.226      THEN (TRYALL assume_tac));
  64.227 @@ -351,7 +351,7 @@
  64.228      THEN (assume_tac 1));
  64.229  qed "le_imp_rec_subset";
  64.230  
  64.231 -goal thy "EX y. x Un y*y <= y";
  64.232 +Goal "EX y. x Un y*y <= y";
  64.233  by (res_inst_tac [("x","UN n:nat. rec(n, x, %k r. r Un r*r)")] exI 1);
  64.234  by Safe_tac;
  64.235  by (rtac (nat_0I RS UN_I) 1);
  64.236 @@ -378,7 +378,7 @@
  64.237  (*      WO6 ==> NN(y) ~= 0                                                *)
  64.238  (* ********************************************************************** *)
  64.239  
  64.240 -goalw thy [WO6_def, NN_def] "!!y. WO6 ==> NN(y) ~= 0";
  64.241 +Goalw [WO6_def, NN_def] "!!y. WO6 ==> NN(y) ~= 0";
  64.242  by (fast_tac (ZF_cs addEs [equals0D]) 1);
  64.243  qed "WO6_imp_NN_not_empty";
  64.244  
  64.245 @@ -386,18 +386,18 @@
  64.246  (*      1 : NN(y) ==> y can be well-ordered                               *)
  64.247  (* ********************************************************************** *)
  64.248  
  64.249 -goal thy "!!f. [| (UN b<a. f`b)=y; x:y; ALL b<a. f`b lepoll 1; Ord(a) |]  \
  64.250 +Goal "!!f. [| (UN b<a. f`b)=y; x:y; ALL b<a. f`b lepoll 1; Ord(a) |]  \
  64.251  \               ==> EX c<a. f`c = {x}";
  64.252  by (fast_tac (claset() addSEs [lepoll_1_is_sing]) 1);
  64.253  val lemma1 = result();
  64.254  
  64.255 -goal thy "!!f. [| (UN b<a. f`b)=y; x:y; ALL b<a. f`b lepoll 1; Ord(a) |]  \
  64.256 +Goal "!!f. [| (UN b<a. f`b)=y; x:y; ALL b<a. f`b lepoll 1; Ord(a) |]  \
  64.257  \               ==> f` (LEAST i. f`i = {x}) = {x}";
  64.258  by (dtac lemma1 1 THEN REPEAT (assume_tac 1));
  64.259  by (fast_tac (claset() addSEs [lt_Ord] addIs [LeastI]) 1);
  64.260  val lemma2 = result();
  64.261  
  64.262 -goalw thy [NN_def] "!!y. 1 : NN(y) ==> EX a f. Ord(a) & f:inj(y, a)";
  64.263 +Goalw [NN_def] "!!y. 1 : NN(y) ==> EX a f. Ord(a) & f:inj(y, a)";
  64.264  by (etac CollectE 1);
  64.265  by (REPEAT (eresolve_tac [exE, conjE] 1));
  64.266  by (res_inst_tac [("x","a")] exI 1);
  64.267 @@ -410,7 +410,7 @@
  64.268  by (fast_tac (claset() addSIs [the_equality]) 1);
  64.269  qed "NN_imp_ex_inj";
  64.270  
  64.271 -goal thy "!!y. [| y*y <= y; 1 : NN(y) |] ==> EX r. well_ord(y, r)";
  64.272 +Goal "!!y. [| y*y <= y; 1 : NN(y) |] ==> EX r. well_ord(y, r)";
  64.273  by (dtac NN_imp_ex_inj 1);
  64.274  by (fast_tac (claset() addSEs [well_ord_Memrel RSN (2,  well_ord_rvimage)]) 1);
  64.275  qed "y_well_ord";
  64.276 @@ -439,11 +439,11 @@
  64.277  by (REPEAT (ares_tac prems 1));
  64.278  qed "rev_induct";
  64.279  
  64.280 -goalw thy [NN_def] "!!n. n:NN(y) ==> n:nat";
  64.281 +Goalw [NN_def] "!!n. n:NN(y) ==> n:nat";
  64.282  by (etac CollectD1 1);
  64.283  qed "NN_into_nat";
  64.284  
  64.285 -goal thy "!!n. [| n:NN(y); y*y <= y; n~=0 |] ==> 1:NN(y)";
  64.286 +Goal "!!n. [| n:NN(y); y*y <= y; n~=0 |] ==> 1:NN(y)";
  64.287  by (rtac rev_induct 1 THEN REPEAT (ares_tac [NN_into_nat] 1));
  64.288  by (rtac lemma_ii 1 THEN REPEAT (assume_tac 1));
  64.289  val lemma3 = result();
  64.290 @@ -453,12 +453,12 @@
  64.291  (* ********************************************************************** *)
  64.292  
  64.293  (* another helpful lemma *)
  64.294 -goalw thy [NN_def] "!!y. 0:NN(y) ==> y=0";
  64.295 +Goalw [NN_def] "!!y. 0:NN(y) ==> y=0";
  64.296  by (fast_tac (claset() addSIs [equalityI] 
  64.297                      addSDs [lepoll_0_is_0] addEs [subst]) 1);
  64.298  qed "NN_y_0";
  64.299  
  64.300 -goalw thy [WO1_def] "!!Z. WO6 ==> WO1";
  64.301 +Goalw [WO1_def] "!!Z. WO6 ==> WO1";
  64.302  by (rtac allI 1);
  64.303  by (excluded_middle_tac "A=0" 1);
  64.304  by (fast_tac (claset() addSIs [well_ord_Memrel, nat_0I RS nat_into_Ord]) 2);
    65.1 --- a/src/ZF/AC/WO_AC.ML	Mon Jun 22 17:12:27 1998 +0200
    65.2 +++ b/src/ZF/AC/WO_AC.ML	Mon Jun 22 17:13:09 1998 +0200
    65.3 @@ -7,16 +7,16 @@
    65.4  
    65.5  open WO_AC;
    65.6  
    65.7 -goal thy "!!A. [| well_ord(Union(A),r); 0~:A; B:A |]  \
    65.8 +Goal "!!A. [| well_ord(Union(A),r); 0~:A; B:A |]  \
    65.9  \               ==> (THE b. first(b,B,r)) : B";
   65.10  by (fast_tac (claset() addSEs [well_ord_imp_ex1_first RS theI RS
   65.11                  (first_def RS def_imp_iff RS iffD1 RS conjunct1)]) 1);
   65.12  qed "first_in_B";
   65.13  
   65.14 -goal thy "!!A. [| well_ord(Union(A), R); 0~:A |] ==> EX f. f:(PROD X:A. X)";
   65.15 +Goal "!!A. [| well_ord(Union(A), R); 0~:A |] ==> EX f. f:(PROD X:A. X)";
   65.16  by (fast_tac (claset() addSEs [first_in_B] addSIs [lam_type]) 1);
   65.17  qed "ex_choice_fun";
   65.18  
   65.19 -goal thy "!!A. well_ord(A, R) ==> EX f. f:(PROD X: Pow(A)-{0}. X)";
   65.20 +Goal "!!A. well_ord(A, R) ==> EX f. f:(PROD X: Pow(A)-{0}. X)";
   65.21  by (fast_tac (claset() addSEs [well_ord_subset RS ex_choice_fun]) 1);
   65.22  qed "ex_choice_fun_Pow";
    66.1 --- a/src/ZF/AC/recfunAC16.ML	Mon Jun 22 17:12:27 1998 +0200
    66.2 +++ b/src/ZF/AC/recfunAC16.ML	Mon Jun 22 17:13:09 1998 +0200
    66.3 @@ -11,11 +11,11 @@
    66.4  (* Basic properties of recfunAC16                                         *)
    66.5  (* ********************************************************************** *)
    66.6  
    66.7 -goalw thy [recfunAC16_def] "recfunAC16(f,fa,0,a) = 0";
    66.8 +Goalw [recfunAC16_def] "recfunAC16(f,fa,0,a) = 0";
    66.9  by (rtac transrec2_0 1);
   66.10  qed "recfunAC16_0";
   66.11  
   66.12 -goalw thy [recfunAC16_def] "recfunAC16(f,fa,succ(i),a) =  \
   66.13 +Goalw [recfunAC16_def] "recfunAC16(f,fa,succ(i),a) =  \
   66.14  \       if (EX y:recfunAC16(f,fa,i,a). fa ` i <= y, recfunAC16(f,fa,i,a), \
   66.15  \       recfunAC16(f,fa,i,a) Un {f ` (LEAST j. fa ` i <= f ` j &  \
   66.16  \       (ALL b<a. (fa`b <= f`j  \
   66.17 @@ -23,7 +23,7 @@
   66.18  by (rtac transrec2_succ 1);
   66.19  qed "recfunAC16_succ";
   66.20  
   66.21 -goalw thy [recfunAC16_def] "!!i. Limit(i)  \
   66.22 +Goalw [recfunAC16_def] "!!i. Limit(i)  \
   66.23  \       ==> recfunAC16(f,fa,i,a) = (UN j<i. recfunAC16(f,fa,j,a))";
   66.24  by (etac transrec2_Limit 1);
   66.25  qed "recfunAC16_Limit";
   66.26 @@ -57,7 +57,7 @@
   66.27  (* Monotonicity of recfunAC16                                             *)
   66.28  (* ********************************************************************** *)
   66.29  
   66.30 -goalw thy [recfunAC16_def]
   66.31 +Goalw [recfunAC16_def]
   66.32          "!!i. i le j ==> recfunAC16(f, g, i, a) <= recfunAC16(f, g, j, a)";
   66.33  by (rtac transrec2_mono 1);
   66.34  by (REPEAT (fast_tac (claset() addIs [expand_if RS iffD2]) 1));
    67.1 --- a/src/ZF/Coind/ECR.ML	Mon Jun 22 17:12:27 1998 +0200
    67.2 +++ b/src/ZF/Coind/ECR.ML	Mon Jun 22 17:13:09 1998 +0200
    67.3 @@ -8,7 +8,7 @@
    67.4  
    67.5  (* Specialised co-induction rule *)
    67.6  
    67.7 -goal ECR.thy
    67.8 +Goal
    67.9   "!!x.[| x:ExVar; e:Exp; t:Ty; ve:ValEnv; te:TyEnv; \
   67.10  \    <te, e_fn(x, e), t>:ElabRel; ve_dom(ve) = te_dom(te); \
   67.11  \    {<ve_app(ve,y),te_app(te,y)>.y:ve_dom(ve)}: \
   67.12 @@ -46,7 +46,7 @@
   67.13  
   67.14  (* Properties of the pointwise extension to environments *)
   67.15  
   67.16 -goalw ECR.thy [hastyenv_def]
   67.17 +Goalw [hastyenv_def]
   67.18    "!!ve.[| ve:ValEnv; te:TyEnv; hastyenv(ve,te); <v,t>:HasTyRel |] ==> \
   67.19  \   hastyenv(ve_owr(ve,x,v),te_owr(te,x,t))";
   67.20  by Safe_tac;
   67.21 @@ -67,7 +67,7 @@
   67.22  by (asm_simp_tac (simpset() addsimps [ve_app_owr1,te_app_owr1]) 1);
   67.23  qed "hastyenv_owr";
   67.24  
   67.25 -goalw ECR.thy  [isofenv_def,hastyenv_def]
   67.26 +Goalw  [isofenv_def,hastyenv_def]
   67.27    "!!ve.[| ve:ValEnv; te:TyEnv; isofenv(ve,te) |] ==> hastyenv(ve,te)";
   67.28  by Safe_tac;
   67.29  by (dtac bspec 1);
    68.1 --- a/src/ZF/Coind/MT.ML	Mon Jun 22 17:12:27 1998 +0200
    68.2 +++ b/src/ZF/Coind/MT.ML	Mon Jun 22 17:13:09 1998 +0200
    68.3 @@ -11,21 +11,21 @@
    68.4  (* The Consistency theorem                                      *)
    68.5  (* ############################################################ *)
    68.6  
    68.7 -goal MT.thy 
    68.8 +Goal 
    68.9    "!!t. [| c:Const; hastyenv(ve,te);<te,e_const(c),t>:ElabRel |] ==>         \
   68.10  \       <v_const(c), t> : HasTyRel";
   68.11  by (Fast_tac 1);
   68.12  qed "consistency_const";
   68.13  
   68.14  
   68.15 -goalw  MT.thy [hastyenv_def]
   68.16 +Goalw [hastyenv_def]
   68.17    "!!t. [| x:ve_dom(ve); hastyenv(ve,te); <te,e_var(x),t>:ElabRel |] ==>     \
   68.18  \  <ve_app(ve,x),t>:HasTyRel";
   68.19  by (Fast_tac 1);
   68.20  qed "consistency_var";
   68.21  
   68.22  
   68.23 -goalw MT.thy [hastyenv_def]
   68.24 +Goalw [hastyenv_def]
   68.25    "!!t. [| ve:ValEnv; x:ExVar; e:Exp; hastyenv(ve,te);       \
   68.26  \          <te,e_fn(x,e),t>:ElabRel  \
   68.27  \       |] ==> <v_clos(x, e, ve), t> : HasTyRel";
   68.28 @@ -143,7 +143,7 @@
   68.29  
   68.30  fun mt_cases_tac t = ((rtac t 1) THEN (TRYALL assume_tac)); 
   68.31  
   68.32 -goal MT.thy 
   68.33 +Goal 
   68.34    "!!e. <ve,e,v>:EvalRel ==>         \
   68.35  \       (ALL t te. hastyenv(ve,te) --> <te,e,t>:ElabRel --> <v,t>:HasTyRel)";
   68.36  by (etac EvalRel.induct 1);
    69.1 --- a/src/ZF/Coind/Map.ML	Mon Jun 22 17:12:27 1998 +0200
    69.2 +++ b/src/ZF/Coind/Map.ML	Mon Jun 22 17:13:09 1998 +0200
    69.3 @@ -9,22 +9,22 @@
    69.4  (** Some sample proofs of inclusions for the final coalgebra "U" (by lcp) **)
    69.5  
    69.6  
    69.7 -goalw Map.thy [TMap_def]
    69.8 +Goalw [TMap_def]
    69.9       "{0,1} <= {1} Un TMap(I, {0,1})";
   69.10  by (Blast_tac 1);
   69.11  result();
   69.12  
   69.13 -goalw Map.thy [TMap_def]
   69.14 +Goalw [TMap_def]
   69.15       "{0} Un TMap(I,1) <= {1} Un TMap(I, {0} Un TMap(I,1))";
   69.16  by (Blast_tac 1);
   69.17  result();
   69.18  
   69.19 -goalw Map.thy [TMap_def]
   69.20 +Goalw [TMap_def]
   69.21       "{0,1} Un TMap(I,2) <= {1} Un TMap(I, {0,1} Un TMap(I,2))";
   69.22  by (Blast_tac 1);
   69.23  result();
   69.24  
   69.25 -goalw Map.thy [TMap_def]
   69.26 +Goalw [TMap_def]
   69.27       "{0,1} Un TMap(I,TMap(I,2)) Un TMap(I,2) <= \
   69.28  \     {1} Un TMap(I, {0,1} Un TMap(I,TMap(I,2)) Un TMap(I,2))";
   69.29  (*twice as fast as Blast_tac alone*)
   69.30 @@ -36,19 +36,19 @@
   69.31  (* Lemmas                                                       *)
   69.32  (* ############################################################ *)
   69.33  
   69.34 -goal Map.thy "!!A. a:A ==> Sigma(A,B)``{a} = B(a)";
   69.35 +Goal "!!A. a:A ==> Sigma(A,B)``{a} = B(a)";
   69.36  by (Fast_tac 1);
   69.37  qed "qbeta";
   69.38  
   69.39 -goal Map.thy "!!A. a~:A ==> Sigma(A,B)``{a} = 0";
   69.40 +Goal "!!A. a~:A ==> Sigma(A,B)``{a} = 0";
   69.41  by (Fast_tac 1);
   69.42  qed "qbeta_emp";
   69.43  
   69.44 -goal Map.thy "!!A. a ~: A ==> Sigma(A,B)``{a}=0";
   69.45 +Goal "!!A. a ~: A ==> Sigma(A,B)``{a}=0";
   69.46  by (Fast_tac 1);
   69.47  qed "image_Sigma1";
   69.48  
   69.49 -goal Map.thy "0``A = 0";
   69.50 +Goal "0``A = 0";
   69.51  by (Fast_tac 1);
   69.52  qed "image_02";
   69.53  
   69.54 @@ -58,7 +58,7 @@
   69.55  
   69.56  (* Lemmas *)
   69.57  
   69.58 -goalw Map.thy [quniv_def]
   69.59 +Goalw [quniv_def]
   69.60      "!!A. A <= univ(X) ==> Pow(A * Union(quniv(X))) <= quniv(X)";
   69.61  by (rtac Pow_mono 1);
   69.62  by (rtac ([Sigma_mono, product_univ] MRS subset_trans) 1);
   69.63 @@ -82,7 +82,7 @@
   69.64  (* Monotonicity                                                 *)
   69.65  (* ############################################################ *)
   69.66  
   69.67 -goalw Map.thy [PMap_def,TMap_def] "!!A. B<=C ==> PMap(A,B)<=PMap(A,C)";
   69.68 +Goalw [PMap_def,TMap_def] "!!A. B<=C ==> PMap(A,B)<=PMap(A,C)";
   69.69  by (Fast_tac 1);
   69.70  qed "map_mono";
   69.71  
   69.72 @@ -94,7 +94,7 @@
   69.73  
   69.74  (** map_emp **)
   69.75  
   69.76 -goalw Map.thy [map_emp_def,PMap_def,TMap_def] "map_emp:PMap(A,B)";
   69.77 +Goalw [map_emp_def,PMap_def,TMap_def] "map_emp:PMap(A,B)";
   69.78  by Safe_tac;
   69.79  by (rtac image_02 1);
   69.80  qed "pmap_empI";
   69.81 @@ -102,7 +102,7 @@
   69.82  (** map_owr **)
   69.83  
   69.84  
   69.85 -goalw Map.thy [map_owr_def,PMap_def,TMap_def] 
   69.86 +Goalw [map_owr_def,PMap_def,TMap_def] 
   69.87    "!! A.[| m:PMap(A,B); a:A; b:B |]  ==> map_owr(m,a,b):PMap(A,B)";
   69.88  by Safe_tac;
   69.89  by (ALLGOALS (asm_full_simp_tac (simpset() addsimps [if_iff])));
   69.90 @@ -123,7 +123,7 @@
   69.91  
   69.92  (** map_app **)
   69.93  
   69.94 -goalw Map.thy [TMap_def,map_app_def] 
   69.95 +Goalw [TMap_def,map_app_def] 
   69.96    "!!m.[| m:TMap(A,B); a:domain(m) |] ==> map_app(m,a) ~=0";
   69.97  by (etac domainE 1);
   69.98  by (dtac imageI 1);
   69.99 @@ -131,12 +131,12 @@
  69.100  by (etac not_emptyI 1);
  69.101  qed "tmap_app_notempty";
  69.102  
  69.103 -goalw Map.thy [TMap_def,map_app_def,domain_def] 
  69.104 +Goalw [TMap_def,map_app_def,domain_def] 
  69.105    "!!m.[| m:TMap(A,B); a:domain(m) |] ==> map_app(m,a):B";
  69.106  by (Fast_tac 1);
  69.107  qed "tmap_appI";
  69.108  
  69.109 -goalw Map.thy [PMap_def]
  69.110 +Goalw [PMap_def]
  69.111    "!!m.[| m:PMap(A,B); a:domain(m) |] ==> map_app(m,a):B";
  69.112  by (forward_tac [tmap_app_notempty] 1); 
  69.113  by (assume_tac 1);
  69.114 @@ -147,12 +147,12 @@
  69.115  
  69.116  (** domain **)
  69.117  
  69.118 -goalw Map.thy [TMap_def]
  69.119 +Goalw [TMap_def]
  69.120    "!!m.[| m:TMap(A,B); a:domain(m) |] ==> a:A";
  69.121  by (Fast_tac 1);
  69.122  qed "tmap_domainD";
  69.123  
  69.124 -goalw Map.thy [PMap_def,TMap_def]
  69.125 +Goalw [PMap_def,TMap_def]
  69.126    "!!m.[| m:PMap(A,B); a:domain(m) |] ==> a:A";
  69.127  by (Fast_tac 1);
  69.128  qed "pmap_domainD";
  69.129 @@ -165,22 +165,22 @@
  69.130  
  69.131  (* Lemmas *)
  69.132  
  69.133 -goal Map.thy  "domain(UN x:A. B(x)) = (UN x:A. domain(B(x)))";
  69.134 +Goal  "domain(UN x:A. B(x)) = (UN x:A. domain(B(x)))";
  69.135  by (Fast_tac 1);
  69.136  qed "domain_UN";
  69.137  
  69.138 -goal Map.thy  "domain(Sigma(A,B)) = {x:A. EX y. y:B(x)}";
  69.139 +Goal  "domain(Sigma(A,B)) = {x:A. EX y. y:B(x)}";
  69.140  by (simp_tac (simpset() addsimps [domain_UN,domain_0,domain_cons]) 1);
  69.141  by (Fast_tac 1);
  69.142  qed "domain_Sigma";
  69.143  
  69.144  (* Theorems *)
  69.145  
  69.146 -goalw Map.thy [map_emp_def] "domain(map_emp) = 0";
  69.147 +Goalw [map_emp_def] "domain(map_emp) = 0";
  69.148  by (Fast_tac 1);
  69.149  qed "map_domain_emp";
  69.150  
  69.151 -goalw Map.thy [map_owr_def] 
  69.152 +Goalw [map_owr_def] 
  69.153    "!!a. b ~= 0 ==> domain(map_owr(f,a,b)) = {a} Un domain(f)";
  69.154  by (simp_tac (simpset() addsimps [domain_Sigma]) 1);
  69.155  by (rtac equalityI 1);
  69.156 @@ -197,14 +197,14 @@
  69.157  
  69.158  (** Application **)
  69.159  
  69.160 -goalw Map.thy [map_app_def,map_owr_def] 
  69.161 +Goalw [map_app_def,map_owr_def] 
  69.162    "map_app(map_owr(f,a,b),a) = b";
  69.163  by (stac qbeta 1);
  69.164  by (Fast_tac 1);
  69.165  by (Simp_tac 1);
  69.166  qed "map_app_owr1";
  69.167  
  69.168 -goalw Map.thy [map_app_def,map_owr_def] 
  69.169 +Goalw [map_app_def,map_owr_def] 
  69.170    "!!a. c ~= a ==> map_app(map_owr(f,a,b),c)= map_app(f,c)";
  69.171  by (rtac (excluded_middle RS disjE) 1);
  69.172  by (stac qbeta_emp 1);
    70.1 --- a/src/ZF/Coind/Types.ML	Mon Jun 22 17:12:27 1998 +0200
    70.2 +++ b/src/ZF/Coind/Types.ML	Mon Jun 22 17:13:09 1998 +0200
    70.3 @@ -9,40 +9,40 @@
    70.4  val te_owrE = 
    70.5    TyEnv.mk_cases TyEnv.con_defs "te_owr(te,f,t):TyEnv";
    70.6  
    70.7 -goalw Types.thy TyEnv.con_defs "rank(te) < rank(te_owr(te,x,t))";
    70.8 +Goalw TyEnv.con_defs "rank(te) < rank(te_owr(te,x,t))";
    70.9  by (simp_tac rank_ss 1);
   70.10  qed "rank_te_owr1";
   70.11  
   70.12 -goal Types.thy "te_rec(te_emp,c_te_emp,f_te_owr) = c_te_emp";
   70.13 +Goal "te_rec(te_emp,c_te_emp,f_te_owr) = c_te_emp";
   70.14  by (rtac (te_rec_def RS def_Vrec RS trans) 1);
   70.15  by (simp_tac (simpset() addsimps (rank_te_owr1::TyEnv.case_eqns)) 1);
   70.16  qed "te_rec_emp";
   70.17  
   70.18 -goal Types.thy 
   70.19 +Goal 
   70.20    " te_rec(te_owr(te,x,t),c_te_emp,f_te_owr) = \
   70.21  \   f_te_owr(te,x,t,te_rec(te,c_te_emp,f_te_owr))";
   70.22  by (rtac (te_rec_def RS def_Vrec RS trans) 1);
   70.23  by (simp_tac (rank_ss addsimps (rank_te_owr1::TyEnv.case_eqns)) 1);
   70.24  qed "te_rec_owr";
   70.25  
   70.26 -goalw Types.thy [te_dom_def] "te_dom(te_emp) = 0";
   70.27 +Goalw [te_dom_def] "te_dom(te_emp) = 0";
   70.28  by (simp_tac (simpset() addsimps [te_rec_emp]) 1);
   70.29  qed "te_dom_emp";
   70.30  
   70.31 -goalw Types.thy [te_dom_def] "te_dom(te_owr(te,x,v)) = te_dom(te) Un {x}";
   70.32 +Goalw [te_dom_def] "te_dom(te_owr(te,x,v)) = te_dom(te) Un {x}";
   70.33  by (simp_tac (simpset() addsimps [te_rec_owr]) 1);
   70.34  qed "te_dom_owr";
   70.35  
   70.36 -goalw Types.thy [te_app_def] "te_app(te_owr(te,x,t),x) = t";
   70.37 +Goalw [te_app_def] "te_app(te_owr(te,x,t),x) = t";
   70.38  by (simp_tac (simpset() addsimps [te_rec_owr]) 1);
   70.39  qed "te_app_owr1";
   70.40  
   70.41 -goalw Types.thy [te_app_def]
   70.42 +Goalw [te_app_def]
   70.43    "!!x y. x ~= y ==> te_app(te_owr(te,x,t),y) = te_app(te,y)";
   70.44  by (asm_simp_tac (simpset() addsimps [te_rec_owr,(not_sym RS if_not_P)]) 1);
   70.45  qed "te_app_owr2";
   70.46  
   70.47 -goal Types.thy
   70.48 +Goal
   70.49      "!!te. [| te:TyEnv; x:ExVar; x:te_dom(te) |] ==> te_app(te,x):Ty";
   70.50  by (res_inst_tac [("P","x:te_dom(te)")] impE 1);
   70.51  by (assume_tac 2);
    71.1 --- a/src/ZF/Coind/Values.ML	Mon Jun 22 17:12:27 1998 +0200
    71.2 +++ b/src/ZF/Coind/Values.ML	Mon Jun 22 17:13:09 1998 +0200
    71.3 @@ -49,7 +49,7 @@
    71.4  by (Fast_tac 1);
    71.5  qed "set_notemptyE";
    71.6  
    71.7 -goalw Values.thy (sum_def::QPair_def::QInl_def::QInr_def::Val_ValEnv.con_defs)
    71.8 +Goalw (sum_def::QPair_def::QInl_def::QInr_def::Val_ValEnv.con_defs)
    71.9    "v_clos(x,e,ve) ~= 0";
   71.10  by (rtac not_emptyI 1);
   71.11  by (rtac UnI2 1);
   71.12 @@ -59,7 +59,7 @@
   71.13  by (Fast_tac 1);
   71.14  qed "v_closNE";
   71.15  
   71.16 -goalw Values.thy (sum_def::QPair_def::QInl_def::QInr_def::Val_ValEnv.con_defs)
   71.17 +Goalw (sum_def::QPair_def::QInl_def::QInr_def::Val_ValEnv.con_defs)
   71.18    "!!c. c:Const ==> v_const(c) ~= 0";
   71.19  by (dtac constNEE 1);
   71.20  by (etac not_emptyE 1);
   71.21 @@ -75,7 +75,7 @@
   71.22  
   71.23  (* Proving that the empty set is not a value *)
   71.24  
   71.25 -goal Values.thy "!!v. v:Val ==> v ~= 0";
   71.26 +Goal "!!v. v:Val ==> v ~= 0";
   71.27  by (etac ValE 1);
   71.28  by (ALLGOALS hyp_subst_tac);
   71.29  by (etac v_constNE 1);
   71.30 @@ -94,14 +94,14 @@
   71.31  by (rtac Un_commute 1);
   71.32  qed "ve_dom_owr";
   71.33  
   71.34 -goalw Values.thy [ve_app_def,ve_owr_def]
   71.35 +Goalw [ve_app_def,ve_owr_def]
   71.36  "!!ve. ve:ValEnv ==> ve_app(ve_owr(ve,x,v),x) = v"; 
   71.37  by (etac ValEnvE 1);
   71.38  by (asm_full_simp_tac (simpset() addsimps Val_ValEnv.case_eqns) 1);
   71.39  by (rtac map_app_owr1 1);
   71.40  qed "ve_app_owr1";
   71.41  
   71.42 -goalw Values.thy [ve_app_def,ve_owr_def]
   71.43 +Goalw [ve_app_def,ve_owr_def]
   71.44   "!!ve. ve:ValEnv ==> x ~= y ==> ve_app(ve_owr(ve,x,v),y) = ve_app(ve,y)";
   71.45  by (etac ValEnvE 1);
   71.46  by (asm_full_simp_tac (simpset() addsimps Val_ValEnv.case_eqns) 1);
   71.47 @@ -111,7 +111,7 @@
   71.48  
   71.49  (* Introduction rules for operators on value environments *)
   71.50  
   71.51 -goalw Values.thy [ve_app_def,ve_owr_def,ve_dom_def]
   71.52 +Goalw [ve_app_def,ve_owr_def,ve_dom_def]
   71.53    "!!ve.[| ve:ValEnv; x:ve_dom(ve) |] ==> ve_app(ve,x):Val";
   71.54  by (etac ValEnvE 1);
   71.55  by (hyp_subst_tac 1);
   71.56 @@ -121,7 +121,7 @@
   71.57  by (assume_tac 1);
   71.58  qed "ve_appI";
   71.59  
   71.60 -goalw Values.thy [ve_dom_def]
   71.61 +Goalw [ve_dom_def]
   71.62    "!!ve.[| ve:ValEnv; x:ve_dom(ve) |] ==> x:ExVar";
   71.63  by (etac ValEnvE 1);
   71.64  by (hyp_subst_tac 1);
   71.65 @@ -131,12 +131,12 @@
   71.66  by (assume_tac 1);
   71.67  qed "ve_domI";
   71.68  
   71.69 -goalw Values.thy [ve_emp_def] "ve_emp:ValEnv";
   71.70 +Goalw [ve_emp_def] "ve_emp:ValEnv";
   71.71  by (rtac Val_ValEnv.ve_mk_I 1);
   71.72  by (rtac pmap_empI 1);
   71.73  qed "ve_empI";
   71.74  
   71.75 -goalw Values.thy [ve_owr_def] 
   71.76 +Goalw [ve_owr_def] 
   71.77    "!!ve.[|ve:ValEnv; x:ExVar; v:Val |] ==> ve_owr(ve,x,v):ValEnv";
   71.78  by (etac ValEnvE 1);
   71.79  by (hyp_subst_tac 1);
    72.1 --- a/src/ZF/IMP/Equiv.ML	Mon Jun 22 17:12:27 1998 +0200
    72.2 +++ b/src/ZF/IMP/Equiv.ML	Mon Jun 22 17:13:09 1998 +0200
    72.3 @@ -44,7 +44,7 @@
    72.4  val bexp2 = bexp_iff RS iffD2;
    72.5  
    72.6  
    72.7 -goal Equiv.thy "!!c. <c,sigma> -c-> sigma' ==> <sigma,sigma'> : C(c)";
    72.8 +Goal "!!c. <c,sigma> -c-> sigma' ==> <sigma,sigma'> : C(c)";
    72.9  by (etac evalc.induct 1);
   72.10  by (ALLGOALS (asm_simp_tac (simpset() addsimps [bexp1])));
   72.11  (* skip *)
   72.12 @@ -70,7 +70,7 @@
   72.13  AddEs  [C_type,C_type_fst];
   72.14  
   72.15  
   72.16 -goal Equiv.thy "!!c. c : com ==> ALL x:C(c). <c,fst(x)> -c-> snd(x)";
   72.17 +Goal "!!c. c : com ==> ALL x:C(c). <c,fst(x)> -c-> snd(x)";
   72.18  by (etac com.induct 1);
   72.19  (* skip *)
   72.20  by (fast_tac (claset() addss (simpset())) 1);
   72.21 @@ -93,7 +93,7 @@
   72.22  
   72.23  (**** Proof of Equivalence ****)
   72.24  
   72.25 -goal Equiv.thy
   72.26 +Goal
   72.27      "ALL c:com. C(c) = {io:(loc->nat)*(loc->nat). <c,fst(io)> -c-> snd(io)}";
   72.28  by (fast_tac (claset() addIs [C_subset RS subsetD]
   72.29  		       addEs [com2 RS bspec]
    73.1 --- a/src/ZF/Resid/Confluence.ML	Mon Jun 22 17:12:27 1998 +0200
    73.2 +++ b/src/ZF/Resid/Confluence.ML	Mon Jun 22 17:13:09 1998 +0200
    73.3 @@ -11,7 +11,7 @@
    73.4  (*        strip lemmas                                                       *)
    73.5  (* ------------------------------------------------------------------------- *)
    73.6  
    73.7 -goalw Confluence.thy [confluence_def,strip_def] 
    73.8 +Goalw [confluence_def,strip_def] 
    73.9      "!!u.[|confluence(Spar_red1)|]==> strip";
   73.10  by (resolve_tac [impI RS allI RS allI] 1);
   73.11  by (etac Spar_red.induct 1);
   73.12 @@ -20,7 +20,7 @@
   73.13  qed "strip_lemma_r";
   73.14  
   73.15  
   73.16 -goalw Confluence.thy [confluence_def,strip_def] 
   73.17 +Goalw [confluence_def,strip_def] 
   73.18      "!!u. strip==> confluence(Spar_red)";
   73.19  by (resolve_tac [impI RS allI RS allI] 1);
   73.20  by (etac Spar_red.induct 1);
   73.21 @@ -38,7 +38,7 @@
   73.22  (* ------------------------------------------------------------------------- *)
   73.23  
   73.24  
   73.25 -goalw Confluence.thy [confluence_def] "confluence(Spar_red1)";
   73.26 +Goalw [confluence_def] "confluence(Spar_red1)";
   73.27  by (Clarify_tac 1);
   73.28  by (forward_tac [simulation] 1);
   73.29  by (forw_inst_tac [("n","z")] simulation 1);
   73.30 @@ -51,7 +51,7 @@
   73.31  bind_thm ("confluence_parallel_reduction",
   73.32  	  parallel_moves RS strip_lemma_r RS strip_lemma_l);
   73.33  
   73.34 -goalw Confluence.thy [confluence_def] 
   73.35 +Goalw [confluence_def] 
   73.36      "!!u.[|confluence(Spar_red)|]==> confluence(Sred)";
   73.37  by (blast_tac (claset() addIs [par_red_red, red_par_red]) 1);
   73.38  val lemma1 = result();
    74.1 --- a/src/ZF/Resid/Conversion.ML	Mon Jun 22 17:12:27 1998 +0200
    74.2 +++ b/src/ZF/Resid/Conversion.ML	Mon Jun 22 17:13:09 1998 +0200
    74.3 @@ -9,7 +9,7 @@
    74.4  
    74.5  AddIs (Sconv.intrs @ Sconv1.intrs);
    74.6  
    74.7 -goal Conversion.thy  
    74.8 +Goal  
    74.9      "!!u. m<--->n ==> n<--->m";
   74.10  by (etac Sconv.induct 1);
   74.11  by (etac Sconv1.induct 1);
   74.12 @@ -20,7 +20,7 @@
   74.13  (*      Church_Rosser Theorem                                                *)
   74.14  (* ------------------------------------------------------------------------- *)
   74.15  
   74.16 -goal Conversion.thy  
   74.17 +Goal  
   74.18      "!!u. m<--->n ==> EX p.(m --->p) & (n ---> p)";
   74.19  by (etac Sconv.induct 1);
   74.20  by (etac Sconv1.induct 1);
    75.1 --- a/src/ZF/Resid/Cube.ML	Mon Jun 22 17:12:27 1998 +0200
    75.2 +++ b/src/ZF/Resid/Cube.ML	Mon Jun 22 17:13:09 1998 +0200
    75.3 @@ -17,7 +17,7 @@
    75.4  (* ------------------------------------------------------------------------- *)
    75.5  
    75.6  (* Having more assumptions than needed -- removed below  *)
    75.7 -goal Cube.thy 
    75.8 +Goal 
    75.9      "!!u. v<==u ==> \
   75.10  \   regular(u)-->(ALL w. w~v-->w~u-->  \
   75.11  \             w |> u = (w|>v) |> (u|>v))";
   75.12 @@ -31,7 +31,7 @@
   75.13  by (asm_full_simp_tac prism_ss 1);
   75.14  qed_spec_mp "prism_l";
   75.15  
   75.16 -goal Cube.thy 
   75.17 +Goal 
   75.18      "!!u.[|v <== u; regular(u); w~v|]==> \
   75.19  \       w |> u = (w|>v) |> (u|>v)";
   75.20  by (rtac prism_l 1);
   75.21 @@ -45,7 +45,7 @@
   75.22  (*    Levy's Cube Lemma                                                      *)
   75.23  (* ------------------------------------------------------------------------- *)
   75.24  
   75.25 -goal Cube.thy 
   75.26 +Goal 
   75.27      "!!u.[|u~v; regular(v); regular(u); w~u|]==>  \
   75.28  \          (w|>u) |> (v|>u) = (w|>v) |> (u|>v)";
   75.29  by (stac preservation 1 
   75.30 @@ -68,7 +68,7 @@
   75.31  (*           paving theorem                                                  *)
   75.32  (* ------------------------------------------------------------------------- *)
   75.33  
   75.34 -goal Cube.thy 
   75.35 +Goal 
   75.36      "!!u.[|w~u; w~v; regular(u); regular(v)|]==> \
   75.37  \          EX uv vu. (w|>u) |> vu = (w|>v) |> uv & (w|>u)~vu &\
   75.38  \            regular(vu) & (w|>v)~uv & regular(uv) ";
    76.1 --- a/src/ZF/Resid/Redex.ML	Mon Jun 22 17:12:27 1998 +0200
    76.2 +++ b/src/ZF/Resid/Redex.ML	Mon Jun 22 17:13:09 1998 +0200
    76.3 @@ -11,17 +11,17 @@
    76.4  (*      redex_rec conversions                                                *)
    76.5  (* ------------------------------------------------------------------------- *)
    76.6  
    76.7 -goal Redex.thy  "redex_rec(Var(n),b,c,d) = b(n)";
    76.8 +Goal  "redex_rec(Var(n),b,c,d) = b(n)";
    76.9  by (rtac (redex_rec_def RS def_Vrec RS trans) 1);
   76.10  by (simp_tac (rank_ss addsimps redexes.con_defs)  1);
   76.11  qed "redex_rec_Var";
   76.12  
   76.13 -goal Redex.thy  "redex_rec(Fun(t),b,c,d) = c(t,redex_rec(t,b,c,d))";
   76.14 +Goal  "redex_rec(Fun(t),b,c,d) = c(t,redex_rec(t,b,c,d))";
   76.15  by (rtac (redex_rec_def RS def_Vrec RS trans) 1);
   76.16  by (simp_tac (rank_ss addsimps redexes.con_defs)  1);
   76.17  qed "redex_rec_Fun";
   76.18  
   76.19 -goal Redex.thy  "redex_rec(App(m,f,a),b,c,d) =  \
   76.20 +Goal  "redex_rec(App(m,f,a),b,c,d) =  \
   76.21  \                      d(m,f,a,redex_rec(f,b,c,d),redex_rec(a,b,c,d))";
   76.22  by (rtac (redex_rec_def RS def_Vrec RS trans) 1);
   76.23  by (simp_tac (rank_ss addsimps redexes.con_defs)  1);
    77.1 --- a/src/ZF/Resid/Reduction.ML	Mon Jun 22 17:12:27 1998 +0200
    77.2 +++ b/src/ZF/Resid/Reduction.ML	Mon Jun 22 17:13:09 1998 +0200
    77.3 @@ -37,33 +37,33 @@
    77.4  (*     Lemmas for reduction                                                  *)
    77.5  (* ------------------------------------------------------------------------- *)
    77.6  
    77.7 -goal Reduction.thy  "!!u. m--->n ==> Fun(m) ---> Fun(n)";
    77.8 +Goal  "!!u. m--->n ==> Fun(m) ---> Fun(n)";
    77.9  by (etac Sred.induct 1);
   77.10  by (resolve_tac [Sred.trans] 3);
   77.11  by (ALLGOALS (Asm_simp_tac ));
   77.12  qed "red_Fun";
   77.13  
   77.14 -goal Reduction.thy  
   77.15 +Goal  
   77.16      "!!u.[|n:lambda; m ---> m'|]==> Apl(m,n)--->Apl(m',n)";
   77.17  by (etac Sred.induct 1);
   77.18  by (resolve_tac [Sred.trans] 3);
   77.19  by (ALLGOALS (Asm_simp_tac ));
   77.20  qed "red_Apll";
   77.21  
   77.22 -goal Reduction.thy  
   77.23 +Goal  
   77.24      "!!u.[|n:lambda; m ---> m'|]==> Apl(n,m)--->Apl(n,m')";
   77.25  by (etac Sred.induct 1);
   77.26  by (resolve_tac [Sred.trans] 3);
   77.27  by (ALLGOALS (Asm_simp_tac ));
   77.28  qed "red_Aplr";
   77.29  
   77.30 -goal Reduction.thy  
   77.31 +Goal  
   77.32      "!!u.[|m ---> m'; n--->n'|]==> Apl(m,n)--->Apl(m',n')";
   77.33  by (res_inst_tac [("n","Apl(m',n)")] Sred.trans 1);
   77.34  by (ALLGOALS (asm_simp_tac (simpset() addsimps [red_Apll,red_Aplr]) ));
   77.35  qed "red_Apl";
   77.36  
   77.37 -goal Reduction.thy  
   77.38 +Goal  
   77.39      "!!u.[|m:lambda; m':lambda; n:lambda; n':lambda; m ---> m'; n--->n'|]==> \
   77.40  \              Apl(Fun(m),n)---> n'/m'";
   77.41  by (res_inst_tac [("n","Apl(Fun(m'),n')")] Sred.trans 1);
   77.42 @@ -76,23 +76,23 @@
   77.43  (* ------------------------------------------------------------------------- *)
   77.44  
   77.45  
   77.46 -goal Reduction.thy "!!u. m:lambda==> m =1=> m";
   77.47 +Goal "!!u. m:lambda==> m =1=> m";
   77.48  by (eresolve_tac [lambda.induct] 1);
   77.49  by (ALLGOALS (Asm_simp_tac ));
   77.50  qed "refl_par_red1";
   77.51  
   77.52 -goal Reduction.thy "!!u. m-1->n ==> m=1=>n";
   77.53 +Goal "!!u. m-1->n ==> m=1=>n";
   77.54  by (etac Sred1.induct 1);
   77.55  by (ALLGOALS (asm_simp_tac (simpset() addsimps [refl_par_red1]) ));
   77.56  qed "red1_par_red1";
   77.57  
   77.58 -goal Reduction.thy "!!u. m--->n ==> m===>n";
   77.59 +Goal "!!u. m--->n ==> m===>n";
   77.60  by (etac Sred.induct 1);
   77.61  by (resolve_tac [Spar_red.trans] 3);
   77.62  by (ALLGOALS (asm_simp_tac (simpset() addsimps [refl_par_red1,red1_par_red1]) ));
   77.63  qed "red_par_red";
   77.64  
   77.65 -goal Reduction.thy "!!u. m===>n ==> m--->n";
   77.66 +Goal "!!u. m===>n ==> m--->n";
   77.67  by (etac Spar_red.induct 1);
   77.68  by (etac Spar_red1.induct 1);
   77.69  by (resolve_tac [Sred.trans] 5);
   77.70 @@ -104,7 +104,7 @@
   77.71  (*      Simulation                                                           *)
   77.72  (* ------------------------------------------------------------------------- *)
   77.73  
   77.74 -goal Reduction.thy  
   77.75 +Goal  
   77.76      "!!u. m=1=>n ==> EX v. m|>v = n & m~v & regular(v)";
   77.77  by (etac Spar_red1.induct 1);
   77.78  by Safe_tac;
   77.79 @@ -118,14 +118,14 @@
   77.80  (*           commuting of unmark and subst                                   *)
   77.81  (* ------------------------------------------------------------------------- *)
   77.82  
   77.83 -goal Reduction.thy  
   77.84 +Goal  
   77.85      "!!u. u:redexes ==> \
   77.86  \           ALL k:nat. unmark(lift_rec(u,k)) = lift_rec(unmark(u),k)";
   77.87  by (eresolve_tac [redexes.induct] 1);
   77.88  by (ALLGOALS (asm_full_simp_tac (addsplit (simpset()))));
   77.89  qed "unmmark_lift_rec";
   77.90  
   77.91 -goal Reduction.thy  
   77.92 +Goal  
   77.93      "!!u. v:redexes ==> ALL k:nat. ALL u:redexes.  \
   77.94  \         unmark(subst_rec(u,v,k)) = subst_rec(unmark(u),unmark(v),k)";
   77.95  by (eresolve_tac [redexes.induct] 1);
   77.96 @@ -138,7 +138,7 @@
   77.97  (*        Completeness                                                       *)
   77.98  (* ------------------------------------------------------------------------- *)
   77.99  
  77.100 -goal Reduction.thy  
  77.101 +Goal  
  77.102      "!!u. u~v ==> regular(v) --> unmark(u) =1=> unmark(u|>v)";
  77.103  by (etac Scomp.induct 1);
  77.104  by (ALLGOALS (asm_full_simp_tac (reducL_ss addsimps [unmmark_subst_rec]) ));
  77.105 @@ -146,7 +146,7 @@
  77.106  by (asm_full_simp_tac reducL_ss 1);
  77.107  qed_spec_mp "completeness_l";
  77.108  
  77.109 -goal Reduction.thy  
  77.110 +Goal  
  77.111      "!!u.[|u:lambda; u~v; regular(v)|]==> u =1=> unmark(u|>v)";
  77.112  by (dtac completeness_l 1);
  77.113  by (ALLGOALS (asm_full_simp_tac (simpset() addsimps [lambda_unmark]) ));
    78.1 --- a/src/ZF/Resid/Residuals.ML	Mon Jun 22 17:12:27 1998 +0200
    78.2 +++ b/src/ZF/Resid/Residuals.ML	Mon Jun 22 17:13:09 1998 +0200
    78.3 @@ -43,13 +43,13 @@
    78.4  (*       residuals is a  partial function                                    *)
    78.5  (* ------------------------------------------------------------------------- *)
    78.6  
    78.7 -goal Residuals.thy 
    78.8 +Goal 
    78.9      "!!u. residuals(u,v,w) ==> ALL w1. residuals(u,v,w1) --> w1 = w";
   78.10  by (etac Sres.induct 1);
   78.11  by (ALLGOALS Fast_tac);
   78.12  qed_spec_mp "residuals_function";
   78.13  
   78.14 -goal Residuals.thy 
   78.15 +Goal 
   78.16      "!!u. u~v ==> regular(v) --> (EX w. residuals(u,v,w))";
   78.17  by (etac Scomp.induct 1);
   78.18  by (ALLGOALS Fast_tac);
   78.19 @@ -73,29 +73,29 @@
   78.20  val resfunc_cs = (claset() addIs  [the_equality,residuals_function] 
   78.21                            addSEs [comp_resfuncE]);
   78.22  
   78.23 -goalw Residuals.thy [res_func_def]
   78.24 +Goalw [res_func_def]
   78.25      "!!n. n:nat ==> Var(n) |> Var(n) = Var(n)";
   78.26  by (fast_tac resfunc_cs 1);
   78.27  qed "res_Var";
   78.28  
   78.29 -goalw Residuals.thy [res_func_def]
   78.30 +Goalw [res_func_def]
   78.31      "!!n.[|s~t; regular(t)|]==> Fun(s) |> Fun(t) = Fun(s |> t)";
   78.32  by (fast_tac resfunc_cs 1);
   78.33  qed "res_Fun";
   78.34  
   78.35 -goalw Residuals.thy [res_func_def]
   78.36 +Goalw [res_func_def]
   78.37      "!!n.[|s~u; regular(u); t~v; regular(v); b:bool|]==> \
   78.38  \           App(b,s,t) |> App(0,u,v) = App(b, s |> u, t |> v)";
   78.39  by (fast_tac resfunc_cs 1);
   78.40  qed "res_App";
   78.41  
   78.42 -goalw Residuals.thy [res_func_def]
   78.43 +Goalw [res_func_def]
   78.44      "!!n.[|s~u; regular(u); t~v; regular(v); b:bool|]==> \
   78.45  \           App(b,Fun(s),t) |> App(1,Fun(u),v) = (t |> v)/ (s |> u)";
   78.46  by (fast_tac resfunc_cs 1);
   78.47  qed "res_redex";
   78.48  
   78.49 -goal Residuals.thy
   78.50 +Goal
   78.51      "!!n.[|s~t; regular(t)|]==> regular(t) --> s |> t:redexes";
   78.52  by (etac Scomp.induct 1);
   78.53  by (ALLGOALS (asm_full_simp_tac 
   78.54 @@ -118,19 +118,19 @@
   78.55  (*     Commutation theorem                                                   *)
   78.56  (* ------------------------------------------------------------------------- *)
   78.57  
   78.58 -goal Residuals.thy 
   78.59 +Goal 
   78.60      "!!u. u<==v ==> u~v";
   78.61  by (etac Ssub.induct 1);
   78.62  by (ALLGOALS Asm_simp_tac);
   78.63  qed "sub_comp";
   78.64  
   78.65 -goal Residuals.thy 
   78.66 +Goal 
   78.67      "!!u. u<==v  ==> regular(v) --> regular(u)";
   78.68  by (etac Ssub.induct 1);
   78.69  by (ALLGOALS (asm_simp_tac res1L_ss));
   78.70  qed "sub_preserve_reg";
   78.71