equal
deleted
inserted
replaced
12 by (dtac (Un_subset_iff RS iffD1) 1); |
12 by (dtac (Un_subset_iff RS iffD1) 1); |
13 by (blast_tac (claset() addDs [Transset_includes_range]) 1); |
13 by (blast_tac (claset() addDs [Transset_includes_range]) 1); |
14 qed "Transset_includes_summands"; |
14 qed "Transset_includes_summands"; |
15 |
15 |
16 Goalw [sum_def] "Transset(C) ==> (A+B) Int C <= (A Int C) + (B Int C)"; |
16 Goalw [sum_def] "Transset(C) ==> (A+B) Int C <= (A Int C) + (B Int C)"; |
17 by (stac Int_Un_distrib 1); |
17 by (stac Int_Un_distrib2 1); |
18 by (blast_tac (claset() addDs [Transset_Pair_D]) 1); |
18 by (blast_tac (claset() addDs [Transset_Pair_D]) 1); |
19 qed "Transset_sum_Int_subset"; |
19 qed "Transset_sum_Int_subset"; |
20 |
20 |
21 (** Introduction and elimination rules avoid tiresome folding/unfolding **) |
21 (** Introduction and elimination rules avoid tiresome folding/unfolding **) |
22 |
22 |
158 (*** Intersecting <a;b> with Vfrom... ***) |
158 (*** Intersecting <a;b> with Vfrom... ***) |
159 |
159 |
160 Goalw [QPair_def,sum_def] |
160 Goalw [QPair_def,sum_def] |
161 "Transset(X) ==> \ |
161 "Transset(X) ==> \ |
162 \ <a;b> Int Vfrom(X, succ(i)) <= <a Int Vfrom(X,i); b Int Vfrom(X,i)>"; |
162 \ <a;b> Int Vfrom(X, succ(i)) <= <a Int Vfrom(X,i); b Int Vfrom(X,i)>"; |
163 by (stac Int_Un_distrib 1); |
163 by (stac Int_Un_distrib2 1); |
164 by (rtac Un_mono 1); |
164 by (rtac Un_mono 1); |
165 by (REPEAT (ares_tac [product_Int_Vfrom_subset RS subset_trans, |
165 by (REPEAT (ares_tac [product_Int_Vfrom_subset RS subset_trans, |
166 [Int_lower1, subset_refl] MRS Sigma_mono] 1)); |
166 [Int_lower1, subset_refl] MRS Sigma_mono] 1)); |
167 qed "QPair_Int_Vfrom_succ_subset"; |
167 qed "QPair_Int_Vfrom_succ_subset"; |
168 |
168 |
188 (*succ(j) case*) |
188 (*succ(j) case*) |
189 by (rtac (Transset_0 RS QPair_Int_Vfrom_succ_subset RS subset_trans) 1); |
189 by (rtac (Transset_0 RS QPair_Int_Vfrom_succ_subset RS subset_trans) 1); |
190 by (rtac (succI1 RS UN_upper) 1); |
190 by (rtac (succI1 RS UN_upper) 1); |
191 (*Limit(i) case*) |
191 (*Limit(i) case*) |
192 by (asm_simp_tac |
192 by (asm_simp_tac |
193 (simpset() addsimps [Limit_Vfrom_eq, Int_UN_distrib, |
193 (simpset() delsimps UN_simps |
|
194 addsimps [Limit_Vfrom_eq, Int_UN_distrib, |
194 UN_mono, QPair_Int_Vset_subset_trans]) 1); |
195 UN_mono, QPair_Int_Vset_subset_trans]) 1); |
195 qed "QPair_Int_Vset_subset_UN"; |
196 qed "QPair_Int_Vset_subset_UN"; |