src/ZF/Induct/Multiset.ML
changeset 12484 7ad150f5fc10
parent 12152 46f128d8133c
child 12560 5820841f21fd
--- a/src/ZF/Induct/Multiset.ML	Wed Dec 12 19:22:21 2001 +0100
+++ b/src/ZF/Induct/Multiset.ML	Wed Dec 12 20:37:31 2001 +0100
@@ -106,7 +106,7 @@
 Goalw [mdiff_def, multiset_def]
  "[| multiset(M); mset_of(M)<=A |] ==> mset_of(M -# N) <= A";
 by (auto_tac (claset(), simpset() addsimps [normalize_def]));
-by (rewrite_goals_tac [mset_of_def]);
+by (rewtac mset_of_def);
 by (ALLGOALS(asm_full_simp_tac (simpset() addsimps [multiset_fun_iff])));
 by (ALLGOALS(Clarify_tac));
 by (ALLGOALS(rotate_simp_tac "M:?u"));
@@ -242,7 +242,7 @@
 by (rewrite_goals_tac [munion_def, mdiff_def, 
                        msingle_def, normalize_def, mset_of_def]);
 by (auto_tac (claset(), simpset() addsimps [multiset_fun_iff]));
-by (resolve_tac [fun_extension] 1);
+by (rtac fun_extension 1);
 by Auto_tac;
 by (res_inst_tac [("P", "%x. ?u : Pi(x, ?v)")] subst 1);
 by (rtac restrict_type 2);
@@ -546,7 +546,7 @@
 \ (setsum(%x. $# mcount(M, x), {x:mset_of(M). 0 < M`x}) = $# n) --> P(M))";
 by (rtac (major RS nat_induct) 1);
 by (ALLGOALS(Clarify_tac));
-by (forward_tac [msize_eq_0_iff] 1);
+by (ftac msize_eq_0_iff 1);
 by (auto_tac (claset(), 
               simpset() addsimps [mset_of_def, multiset_def,  
                                   multiset_fun_iff, msize_def]@prems));
@@ -632,7 +632,7 @@
  \   ==> P(M)";
 by (subgoal_tac "EX n:nat. setsum(\\<lambda>x. $# mcount(M, x), \
               \ {x : mset_of(M) . 0 < M ` x}) = $# n" 1);
-by (resolve_tac [not_zneg_int_of] 2);
+by (rtac not_zneg_int_of 2);
 by (ALLGOALS(asm_simp_tac (simpset() 
         addsimps [znegative_iff_zless_0, not_zless_iff_zle])));
 by (rtac g_zpos_imp_setsum_zpos 2);
@@ -649,7 +649,7 @@
 Goalw [multiset_def, msingle_def] 
  "[| multiset(M); a ~:mset_of(M) |] ==> M +# {#a#} = cons(<a, 1>, M)";
 by (auto_tac (claset(), simpset() addsimps [munion_def]));
-by (rewrite_goals_tac [mset_of_def]);
+by (rewtac mset_of_def);
 by (rotate_simp_tac "M:?u" 1);
 by (rtac fun_extension 1 THEN rtac lam_type 1);
 by (ALLGOALS(Asm_full_simp_tac));
@@ -666,7 +666,7 @@
 "[| multiset(M); a:mset_of(M) |] ==> M +# {#a#} = M(a:=M`a #+ 1)";
 by (auto_tac (claset(),  simpset() 
      addsimps [munion_def, multiset_fun_iff, msingle_def]));
-by (rewrite_goals_tac [mset_of_def]);
+by (rewtac mset_of_def);
 by (rotate_simp_tac "M:?u" 1);
 by (subgoal_tac "A Un {a} = A" 1);
 by (rtac fun_extension 1);
@@ -776,9 +776,9 @@
 
 Goalw [multiset_on_def, multiset_def, mset_of_def]
  "M:A-||>nat-{0} ==> multiset[A](M)";
-by (forward_tac [FiniteFun_is_fun] 1);
+by (ftac FiniteFun_is_fun 1);
 by (dtac FiniteFun_domain_Fin 1);
-by (forward_tac [FinD] 1);
+by (ftac FinD 1);
 by (Clarify_tac 1);
 by (res_inst_tac [("x", "domain(M)")] exI 1);
 by (blast_tac (claset() addIs [Fin_into_Finite]) 1);
@@ -861,19 +861,19 @@
 Goal "[| <N, M0 +# {#a#}>:multirel1(A, r); multiset[A](M0) |] ==> \
 \ (EX M. <M, M0>:multirel1(A, r) & N = M +# {#a#}) | \
 \ (EX K. multiset[A](K) & (ALL b:mset_of(K). <b, a>:r) & N = M0 +# K)";
-by (forward_tac [multirel1D] 1);
+by (ftac multirel1D 1);
 by (asm_full_simp_tac (simpset() addsimps [multirel1_iff]) 1);
 by (auto_tac (claset(), simpset() addsimps [munion_eq_conv_exist]));
 by (ALLGOALS(res_inst_tac [("x", "Ka +# K")] exI));
 by Auto_tac;
-by (rewrite_goals_tac [multiset_on_def]);
+by (rewtac multiset_on_def);
 by (asm_simp_tac (simpset() addsimps [munion_left_cancel, munion_assoc]) 1);
 by (auto_tac (claset(), simpset() addsimps [munion_commute]));
 qed "less_munion";
 
 Goal "[| multiset[A](M); a:A |] ==> <M, M +# {#a#}>: multirel1(A, r)";
 by (auto_tac (claset(), simpset() addsimps [multirel1_iff]));
-by (rewrite_goals_tac [multiset_on_def]);
+by (rewtac multiset_on_def);
 by (res_inst_tac [("x", "a")] exI 1);
 by (Clarify_tac 1);
 by (res_inst_tac [("x", "M")] exI 1);
@@ -1112,7 +1112,7 @@
 by Auto_tac;
 by (res_inst_tac [("x", "a")] exI 1);
 by (res_inst_tac [("x", "M -# {#a#}")] exI 1);
-by (forward_tac [multiset_on_imp_multiset] 1);
+by (ftac multiset_on_imp_multiset 1);
 by (Asm_simp_tac 1);
 by (auto_tac (claset(), simpset() addsimps [multiset_on_def]));
 qed "msize_eq_succ_imp_eq_union";
@@ -1133,7 +1133,7 @@
 by (subgoal_tac "msize(J)=$# succ(x)" 1);
 by (Asm_simp_tac 2);
 by (forw_inst_tac [("A", "A")]  msize_eq_succ_imp_eq_union 1);
-by (rewrite_goals_tac [multiset_on_def]);
+by (rewtac multiset_on_def);
 by (Clarify_tac 3 THEN rotate_tac ~1 3);
 by (ALLGOALS(Asm_full_simp_tac));
 by (rename_tac  "J'" 1);
@@ -1245,7 +1245,7 @@
 
 Goal
 "[|<M,N>:multirel1(A, r); multiset[A](K)|] ==> <K +# M, K +# N>: multirel1(A, r)";
-by (forward_tac [multirel1D] 1);
+by (ftac multirel1D 1);
 by (auto_tac (claset(), simpset() addsimps [multirel1_iff, multiset_on_def]));
 by (res_inst_tac [("x", "a")] exI 1); 
 by (Asm_simp_tac 1);
@@ -1258,7 +1258,7 @@
 
 Goal
  "[| <M, N>:multirel(A, r); multiset[A](K) |]==><K +# M, K +# N>:multirel(A, r)";
-by (forward_tac [multirelD] 1);
+by (ftac multirelD 1);
 by (full_simp_tac (simpset() addsimps [multirel_def]) 1);
 by (Clarify_tac 1);
 by (dres_inst_tac [("psi", "<M,N>:multirel1(A, r)^+")] asm_rl 1);
@@ -1278,11 +1278,11 @@
 
 Goal 
 "[|<M, N>:multirel(A, r); multiset[A](K)|] ==> <M +# K, N +# K>:multirel(A, r)";
-by (forward_tac [multirelD] 1);
+by (ftac multirelD 1);
 by (res_inst_tac [("P", "%x. <x,?u>:multirel(A, r)")] (munion_commute RS subst) 1);
 by (stac (munion_commute RS sym) 3);
 by (rtac munion_multirel_mono2 5); 
-by (rewrite_goals_tac [multiset_on_def]);
+by (rewtac multiset_on_def);
 by Auto_tac;
 qed "munion_multirel_mono1";
 
@@ -1468,7 +1468,7 @@
   "[| M <#= K;  N <#= L |] ==> M +# N <#= K +# L";
 by (forw_inst_tac [("M", "M")] mle_imp_omultiset 1);
 by (forw_inst_tac [("M", "N")] mle_imp_omultiset 1);
-by (rewrite_goals_tac [mle_def]);
+by (rewtac mle_def);
 by (ALLGOALS(Asm_full_simp_tac));
 by (REPEAT(etac disjE 1));
 by (etac disjE 3);