Partially converted to call blast_tac
authorpaulson
Tue, 15 Apr 1997 10:23:38 +0200
changeset 2954a16e1011bcc1
parent 2953 e74c85dc9ddc
child 2955 92599a47a7ab
Partially converted to call blast_tac
src/ZF/ex/Comb.ML
     1.1 --- a/src/ZF/ex/Comb.ML	Tue Apr 15 10:23:17 1997 +0200
     1.2 +++ b/src/ZF/ex/Comb.ML	Tue Apr 15 10:23:38 1997 +0200
     1.3 @@ -29,7 +29,7 @@
     1.4  val contract_combD2 = contract.dom_subset RS subsetD RS SigmaD2;
     1.5  
     1.6  goal Comb.thy "field(contract) = comb";
     1.7 -by (fast_tac (!claset addIs [contract.K] addSEs [contract_combE2]) 1);
     1.8 +by (blast_tac (!claset addIs [contract.K] addSEs [contract_combE2]) 1);
     1.9  qed "field_contract_eq";
    1.10  
    1.11  bind_thm ("reduction_refl",
    1.12 @@ -67,18 +67,18 @@
    1.13  AddSEs comb.free_SEs;
    1.14  
    1.15  goalw Comb.thy [I_def] "!!r. I -1-> r ==> P";
    1.16 -by (Fast_tac 1);
    1.17 +by (Blast_tac 1);
    1.18  qed "I_contract_E";
    1.19  
    1.20  goal Comb.thy "!!p r. K#p -1-> r ==> (EX q. r = K#q & p -1-> q)";
    1.21 -by (Fast_tac 1);
    1.22 +by (Blast_tac 1);
    1.23  qed "K1_contractD";
    1.24  
    1.25  goal Comb.thy "!!p r. [| p ---> q;  r: comb |] ==> p#r ---> q#r";
    1.26  by (forward_tac [rtrancl_type RS subsetD RS SigmaD1] 1);
    1.27  by (dtac (field_contract_eq RS equalityD1 RS subsetD) 1);
    1.28  by (etac rtrancl_induct 1);
    1.29 -by (fast_tac (!claset addIs reduction_rls) 1);
    1.30 +by (blast_tac (!claset addIs reduction_rls) 1);
    1.31  by (etac (trans_rtrancl RS transD) 1);
    1.32  by (fast_tac (!claset addIs reduction_rls) 1);
    1.33  qed "Ap_reduce1";
    1.34 @@ -87,7 +87,7 @@
    1.35  by (forward_tac [rtrancl_type RS subsetD RS SigmaD1] 1);
    1.36  by (dtac (field_contract_eq RS equalityD1 RS subsetD) 1);
    1.37  by (etac rtrancl_induct 1);
    1.38 -by (fast_tac (!claset addIs reduction_rls) 1);
    1.39 +by (blast_tac (!claset addIs reduction_rls) 1);
    1.40  by (etac (trans_rtrancl RS transD) 1);
    1.41  by (fast_tac (!claset addIs reduction_rls) 1);
    1.42  qed "Ap_reduce2";
    1.43 @@ -107,7 +107,7 @@
    1.44  qed "KIII_contract3";
    1.45  
    1.46  goalw Comb.thy [diamond_def] "~ diamond(contract)";
    1.47 -by (fast_tac (!claset addIs [KIII_contract1,KIII_contract2,KIII_contract3]
    1.48 +by (blast_tac (!claset addIs [KIII_contract1,KIII_contract2,KIII_contract3]
    1.49                      addSEs [I_contract_E]) 1);
    1.50  qed "not_diamond_contract";
    1.51  
    1.52 @@ -121,7 +121,7 @@
    1.53  val parcontract_combD2 = parcontract.dom_subset RS subsetD RS SigmaD2;
    1.54  
    1.55  goal Comb.thy "field(parcontract) = comb";
    1.56 -by (fast_tac (!claset addIs [parcontract.K] 
    1.57 +by (blast_tac (!claset addIs [parcontract.K] 
    1.58                        addSEs [parcontract_combE2]) 1);
    1.59  qed "field_parcontract_eq";
    1.60  
    1.61 @@ -139,16 +139,16 @@
    1.62  (*** Basic properties of parallel contraction ***)
    1.63  
    1.64  goal Comb.thy "!!p r. K#p =1=> r ==> (EX p'. r = K#p' & p =1=> p')";
    1.65 -by (Fast_tac 1);
    1.66 +by (Blast_tac 1);
    1.67  qed "K1_parcontractD";
    1.68  
    1.69  goal Comb.thy "!!p r. S#p =1=> r ==> (EX p'. r = S#p' & p =1=> p')";
    1.70 -by (Fast_tac 1);
    1.71 +by (Blast_tac 1);
    1.72  qed "S1_parcontractD";
    1.73  
    1.74  goal Comb.thy
    1.75   "!!p q r. S#p#q =1=> r ==> (EX p' q'. r = S#p'#q' & p =1=> p' & q =1=> q')";
    1.76 -by (fast_tac (!claset addSDs [S1_parcontractD]) 1);
    1.77 +by (blast_tac (!claset addSDs [S1_parcontractD]) 1);
    1.78  qed "S2_parcontractD";
    1.79  
    1.80  (*Church-Rosser property for parallel contraction*)
    1.81 @@ -165,9 +165,9 @@
    1.82      "!!x y r. [| diamond(r);  <x,y>:r^+ |] ==> \
    1.83  \    ALL y'. <x,y'>:r --> (EX z. <y',z>: r^+ & <y,z>: r)";
    1.84  by (etac trancl_induct 1);
    1.85 -by (fast_tac (!claset addIs [r_into_trancl]) 1);
    1.86 +by (blast_tac (!claset addIs [r_into_trancl]) 1);
    1.87  by (slow_best_tac (!claset addSDs [spec RS mp]
    1.88 -                         addIs  [r_into_trancl, trans_trancl RS transD]) 1);
    1.89 +                           addIs  [r_into_trancl, trans_trancl RS transD]) 1);
    1.90  val diamond_strip_lemmaE = result() RS spec RS mp RS exE;
    1.91  
    1.92  val [major] = goal Comb.thy "diamond(r) ==> diamond(r^+)";
    1.93 @@ -184,29 +184,29 @@
    1.94  
    1.95  goal Comb.thy "!!p q. p-1->q ==> p=1=>q";
    1.96  by (etac contract.induct 1);
    1.97 -by (ALLGOALS (fast_tac (!claset)));
    1.98 +by (ALLGOALS Blast_tac);
    1.99  qed "contract_imp_parcontract";
   1.100  
   1.101  goal Comb.thy "!!p q. p--->q ==> p===>q";
   1.102  by (forward_tac [rtrancl_type RS subsetD RS SigmaD1] 1);
   1.103  by (dtac (field_contract_eq RS equalityD1 RS subsetD) 1);
   1.104  by (etac rtrancl_induct 1);
   1.105 -by (fast_tac (!claset addIs [r_into_trancl]) 1);
   1.106 -by (fast_tac (!claset addIs [contract_imp_parcontract, 
   1.107 -                           r_into_trancl, trans_trancl RS transD]) 1);
   1.108 +by (blast_tac (!claset addIs [r_into_trancl]) 1);
   1.109 +by (blast_tac (!claset addIs [contract_imp_parcontract, 
   1.110 +			      r_into_trancl, trans_trancl RS transD]) 1);
   1.111  qed "reduce_imp_parreduce";
   1.112  
   1.113  
   1.114  goal Comb.thy "!!p q. p=1=>q ==> p--->q";
   1.115  by (etac parcontract.induct 1);
   1.116 -by (fast_tac (!claset addIs reduction_rls) 1);
   1.117 -by (fast_tac (!claset addIs reduction_rls) 1);
   1.118 -by (fast_tac (!claset addIs reduction_rls) 1);
   1.119 +by (blast_tac (!claset addIs reduction_rls) 1);
   1.120 +by (blast_tac (!claset addIs reduction_rls) 1);
   1.121 +by (blast_tac (!claset addIs reduction_rls) 1);
   1.122  by (rtac (trans_rtrancl RS transD) 1);
   1.123  by (ALLGOALS 
   1.124 -    (fast_tac 
   1.125 -     (!claset addIs [Ap_reduce1, Ap_reduce2]
   1.126 -                  addSEs [parcontract_combD1,parcontract_combD2])));
   1.127 +    (blast_tac 
   1.128 +     (!claset addIs [Ap_reduce1, Ap_reduce2, parcontract_combD1,
   1.129 +		     parcontract_combD2])));
   1.130  qed "parcontract_imp_reduce";
   1.131  
   1.132  goal Comb.thy "!!p q. p===>q ==> p--->q";