# HG changeset patch # User wenzelm # Date 1451321010 -3600 # Node ID 546958347e05401aa82a8ff5f9d1bcc2e8113f18 # Parent cbd310584cff6266be8f0a9135ff7c1821dbd10b prefer symbols for "Union", "Inter"; diff -r cbd310584cff -r 546958347e05 src/HOL/Algebra/Ideal.thy --- a/src/HOL/Algebra/Ideal.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Algebra/Ideal.thy Mon Dec 28 17:43:30 2015 +0100 @@ -47,7 +47,7 @@ subsubsection (in ring) \Ideals Generated by a Subset of @{term "carrier R"}\ definition genideal :: "_ \ 'a set \ 'a set" ("Idl\ _" [80] 79) - where "genideal R S = Inter {I. ideal I R \ S \ I}" + where "genideal R S = \{I. ideal I R \ S \ I}" subsubsection \Principal Ideals\ @@ -218,7 +218,7 @@ lemma (in ring) i_Intersect: assumes Sideals: "\I. I \ S \ ideal I R" and notempty: "S \ {}" - shows "ideal (Inter S) R" + shows "ideal (\S) R" apply (unfold_locales) apply (simp_all add: Inter_eq) apply rule unfolding mem_Collect_eq defer 1 diff -r cbd310584cff -r 546958347e05 src/HOL/Cardinals/Cardinal_Order_Relation.thy --- a/src/HOL/Cardinals/Cardinal_Order_Relation.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Cardinals/Cardinal_Order_Relation.thy Mon Dec 28 17:43:30 2015 +0100 @@ -785,9 +785,9 @@ lemma Card_order_lists: "Card_order r \ r \o |lists(Field r) |" using card_of_lists card_of_Field_ordIso ordIso_ordLeq_trans ordIso_symmetric by blast -lemma Union_set_lists: -"Union(set ` (lists A)) = A" -unfolding lists_def2 proof(auto) +lemma Union_set_lists: "\(set ` (lists A)) = A" + unfolding lists_def2 +proof(auto) fix a assume "a \ A" hence "set [a] \ A \ a \ set [a]" by auto thus "\l. set l \ A \ a \ set l" by blast diff -r cbd310584cff -r 546958347e05 src/HOL/Cardinals/Wellorder_Relation.thy --- a/src/HOL/Cardinals/Wellorder_Relation.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Cardinals/Wellorder_Relation.thy Mon Dec 28 17:43:30 2015 +0100 @@ -441,15 +441,15 @@ unfolding ofilter_def by blast lemma ofilter_Inter: -"\S \ {}; \ A. A \ S \ ofilter A\ \ ofilter (Inter S)" +"\S \ {}; \ A. A \ S \ ofilter A\ \ ofilter (\S)" unfolding ofilter_def by blast lemma ofilter_Union: -"(\ A. A \ S \ ofilter A) \ ofilter (Union S)" +"(\ A. A \ S \ ofilter A) \ ofilter (\S)" unfolding ofilter_def by blast lemma ofilter_under_Union: -"ofilter A \ A = Union {under a| a. a \ A}" +"ofilter A \ A = \{under a| a. a \ A}" using ofilter_under_UNION[of A] by(unfold Union_eq, auto) diff -r cbd310584cff -r 546958347e05 src/HOL/Complete_Lattices.thy --- a/src/HOL/Complete_Lattices.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Complete_Lattices.thy Mon Dec 28 17:43:30 2015 +0100 @@ -901,12 +901,9 @@ subsubsection \Inter\ -abbreviation Inter :: "'a set set \ 'a set" where - "Inter S \ \S" +abbreviation Inter :: "'a set set \ 'a set" ("\_" [900] 900) + where "\S \ \S" -notation (xsymbols) - Inter ("\_" [900] 900) - lemma Inter_eq: "\A = {x. \B \ A. x \ B}" proof (rule set_eqI) @@ -944,7 +941,7 @@ "(\X. X \ A \ X \ B) \ A \ {} \ \A \ B" by (fact Inf_less_eq) -lemma Inter_greatest: "(\X. X \ A \ C \ X) \ C \ Inter A" +lemma Inter_greatest: "(\X. X \ A \ C \ X) \ C \ \A" by (fact Inf_greatest) lemma Inter_empty: "\{} = UNIV" @@ -1080,11 +1077,8 @@ subsubsection \Union\ -abbreviation Union :: "'a set set \ 'a set" where - "Union S \ \S" - -notation (xsymbols) - Union ("\_" [900] 900) +abbreviation Union :: "'a set set \ 'a set" ("\_" [900] 900) + where "\S \ \S" lemma Union_eq: "\A = {x. \B \ A. x \ B}" diff -r cbd310584cff -r 546958347e05 src/HOL/Equiv_Relations.thy --- a/src/HOL/Equiv_Relations.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Equiv_Relations.thy Mon Dec 28 17:43:30 2015 +0100 @@ -108,7 +108,7 @@ "X \ A//r ==> (!!x. X = r``{x} ==> x \ A ==> P) ==> P" by (unfold quotient_def) blast -lemma Union_quotient: "equiv A r ==> Union (A//r) = A" +lemma Union_quotient: "equiv A r ==> \(A//r) = A" by (unfold equiv_def refl_on_def quotient_def) blast lemma quotient_disj: diff -r cbd310584cff -r 546958347e05 src/HOL/Groups_Big.thy --- a/src/HOL/Groups_Big.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Groups_Big.thy Mon Dec 28 17:43:30 2015 +0100 @@ -172,7 +172,7 @@ lemma Union_disjoint: assumes "\A\C. finite A" "\A\C. \B\C. A \ B \ A \ B = {}" - shows "F g (Union C) = (F \ F) g C" + shows "F g (\C) = (F \ F) g C" proof cases assume "finite C" from UNION_disjoint [OF this assms] @@ -994,7 +994,7 @@ lemma card_Union_disjoint: "finite C ==> (ALL A:C. finite A) ==> (ALL A:C. ALL B:C. A \ B --> A Int B = {}) - ==> card (Union C) = setsum card C" + ==> card (\C) = setsum card C" apply (frule card_UN_disjoint [of C id]) apply simp_all done diff -r cbd310584cff -r 546958347e05 src/HOL/Inductive.thy --- a/src/HOL/Inductive.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Inductive.thy Mon Dec 28 17:43:30 2015 +0100 @@ -87,16 +87,16 @@ lemma lfp_induct_set: assumes lfp: "a: lfp(f)" - and mono: "mono(f)" - and indhyp: "!!x. [| x: f(lfp(f) Int {x. P(x)}) |] ==> P(x)" + and mono: "mono(f)" + and indhyp: "!!x. [| x: f(lfp(f) Int {x. P(x)}) |] ==> P(x)" shows "P(a)" by (rule lfp_induct [THEN subsetD, THEN CollectD, OF mono _ lfp]) (auto simp: intro: indhyp) lemma lfp_ordinal_induct_set: assumes mono: "mono f" - and P_f: "!!S. P S ==> P(f S)" - and P_Union: "!!M. !S:M. P S ==> P(Union M)" + and P_f: "!!S. P S ==> P(f S)" + and P_Union: "!!M. !S:M. P S ==> P (\M)" shows "P(lfp f)" using assms by (rule lfp_ordinal_induct) diff -r cbd310584cff -r 546958347e05 src/HOL/Library/Countable_Set_Type.thy --- a/src/HOL/Library/Countable_Set_Type.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Library/Countable_Set_Type.thy Mon Dec 28 17:43:30 2015 +0100 @@ -118,7 +118,7 @@ is "UNION" parametric UNION_transfer by simp definition cUnion :: "'a cset cset \ 'a cset" where "cUnion A = cUNION A id" -lemma Union_conv_UNION: "Union A = UNION A id" +lemma Union_conv_UNION: "\A = UNION A id" by auto lemma cUnion_transfer [transfer_rule]: diff -r cbd310584cff -r 546958347e05 src/HOL/Library/FSet.thy --- a/src/HOL/Library/FSet.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Library/FSet.thy Mon Dec 28 17:43:30 2015 +0100 @@ -79,7 +79,7 @@ lemma right_total_Inf_fset_transfer: assumes [transfer_rule]: "bi_unique A" and [transfer_rule]: "right_total A" shows "(rel_set (rel_set A) ===> rel_set A) - (\S. if finite (Inter S \ Collect (Domainp A)) then Inter S \ Collect (Domainp A) else {}) + (\S. if finite (\S \ Collect (Domainp A)) then \S \ Collect (Domainp A) else {}) (\S. if finite (Inf S) then Inf S else {})" by transfer_prover diff -r cbd310584cff -r 546958347e05 src/HOL/Library/Old_Datatype.thy --- a/src/HOL/Library/Old_Datatype.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Library/Old_Datatype.thy Mon Dec 28 17:43:30 2015 +0100 @@ -76,7 +76,7 @@ In1_def: "In1(M) == Scons (Numb 1) M" (*Function spaces*) - Lim_def: "Lim f == Union {z. ? x. z = Push_Node (Inl x) ` (f x)}" + Lim_def: "Lim f == \{z. ? x. z = Push_Node (Inl x) ` (f x)}" (*the set of nodes with depth less than k*) ndepth_def: "ndepth(n) == (%(f,x). LEAST k. f k = Inr 0) (Rep_Node n)" diff -r cbd310584cff -r 546958347e05 src/HOL/Lifting_Set.thy --- a/src/HOL/Lifting_Set.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Lifting_Set.thy Mon Dec 28 17:43:30 2015 +0100 @@ -237,7 +237,7 @@ lemma right_total_Inter_transfer [transfer_rule]: assumes [transfer_rule]: "bi_unique A" and [transfer_rule]: "right_total A" - shows "(rel_set (rel_set A) ===> rel_set A) (\S. Inter S \ Collect (Domainp A)) Inter" + shows "(rel_set (rel_set A) ===> rel_set A) (\S. \S \ Collect (Domainp A)) Inter" unfolding Inter_eq[abs_def] by (subst Collect_conj_eq[symmetric]) transfer_prover diff -r cbd310584cff -r 546958347e05 src/HOL/MicroJava/BV/BVExample.thy --- a/src/HOL/MicroJava/BV/BVExample.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/MicroJava/BV/BVExample.thy Mon Dec 28 17:43:30 2015 +0100 @@ -424,7 +424,7 @@ apply (case_tac "\ stable r step ss p") apply simp_all done - also have "\f. (UN p:{..f. (UN p:{..(set (map f [0.. \ (\p. if \ stable r step ss p then {p} else {}) = (\p A. if \stable r step ss p then insert p A else A)" diff -r cbd310584cff -r 546958347e05 src/HOL/MicroJava/BV/JVMType.thy --- a/src/HOL/MicroJava/BV/JVMType.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/MicroJava/BV/JVMType.thy Mon Dec 28 17:43:30 2015 +0100 @@ -62,7 +62,7 @@ lemma JVM_states_unfold: - "states S maxs maxr == err(opt((Union {list n (types S) |n. n <= maxs}) \ + "states S maxs maxr == err(opt((\{list n (types S) |n. n <= maxs}) \ list maxr (err(types S))))" apply (unfold states_def sl_def Opt.esl_def Err.sl_def stk_esl_def reg_sl_def Product.esl_def diff -r cbd310584cff -r 546958347e05 src/HOL/MicroJava/DFA/Err.thy --- a/src/HOL/MicroJava/DFA/Err.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/MicroJava/DFA/Err.thy Mon Dec 28 17:43:30 2015 +0100 @@ -283,7 +283,7 @@ done qed -subsection \semilat (err(Union AS))\ +subsection \semilat (err (Union AS))\ (* FIXME? *) lemma all_bex_swap_lemma [iff]: @@ -293,7 +293,7 @@ lemma closed_err_Union_lift2I: "\ !A:AS. closed (err A) (lift2 f); AS ~= {}; !A:AS.!B:AS. A~=B \ (!a:A.!b:B. a +_f b = Err) \ - \ closed (err(Union AS)) (lift2 f)" + \ closed (err (\AS)) (lift2 f)" apply (unfold closed_def err_def) apply simp apply clarify @@ -309,7 +309,7 @@ lemma err_semilat_UnionI: "\ !A:AS. err_semilat(A, r, f); AS ~= {}; !A:AS.!B:AS. A~=B \ (!a:A.!b:B. ~ a <=_r b & a +_f b = Err) \ - \ err_semilat(Union AS, r, f)" + \ err_semilat (\AS, r, f)" apply (unfold semilat_def sl_def) apply (simp add: closed_err_Union_lift2I) apply (rule conjI) diff -r cbd310584cff -r 546958347e05 src/HOL/MicroJava/DFA/Listn.thy --- a/src/HOL/MicroJava/DFA/Listn.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/MicroJava/DFA/Listn.thy Mon Dec 28 17:43:30 2015 +0100 @@ -44,7 +44,7 @@ "sup f == %xs ys. if size xs = size ys then coalesce(xs +[f] ys) else Err" definition upto_esl :: "nat \ 'a esl \ 'a list esl" where -"upto_esl m == %(A,r,f). (Union{list n A |n. n <= m}, le r, sup f)" +"upto_esl m == %(A,r,f). (\{list n A |n. n <= m}, le r, sup f)" lemmas [simp] = set_update_subsetI diff -r cbd310584cff -r 546958347e05 src/HOL/Multivariate_Analysis/Convex_Euclidean_Space.thy --- a/src/HOL/Multivariate_Analysis/Convex_Euclidean_Space.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Multivariate_Analysis/Convex_Euclidean_Space.thy Mon Dec 28 17:43:30 2015 +0100 @@ -74,7 +74,7 @@ finally show ?thesis . qed -lemma subspace_Inter: "\s \ f. subspace s \ subspace (Inter f)" +lemma subspace_Inter: "\s \ f. subspace s \ subspace (\f)" unfolding subspace_def by auto lemma span_eq[simp]: "span s = s \ subspace s" @@ -1110,7 +1110,7 @@ lemma cone_0: "cone {0}" unfolding cone_def by auto -lemma cone_Union[intro]: "(\s\f. cone s) \ cone (Union f)" +lemma cone_Union[intro]: "(\s\f. cone s) \ cone (\f)" unfolding cone_def by blast lemma cone_iff: @@ -8075,7 +8075,7 @@ assume z: "z \ \{rel_interior S |S. S \ I}" { fix x - assume x: "x \ Inter I" + assume x: "x \ \I" { fix S assume S: "S \ I" diff -r cbd310584cff -r 546958347e05 src/HOL/Multivariate_Analysis/Topology_Euclidean_Space.thy --- a/src/HOL/Multivariate_Analysis/Topology_Euclidean_Space.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Multivariate_Analysis/Topology_Euclidean_Space.thy Mon Dec 28 17:43:30 2015 +0100 @@ -203,13 +203,13 @@ lemma open_countable_basis_ex: assumes "open X" - shows "\B' \ B. X = Union B'" + shows "\B' \ B. X = \B'" using assms countable_basis is_basis unfolding topological_basis_def by blast lemma open_countable_basisE: assumes "open X" - obtains B' where "B' \ B" "X = Union B'" + obtains B' where "B' \ B" "X = \B'" using assms open_countable_basis_ex by (atomize_elim) simp @@ -1885,7 +1885,7 @@ lemma connected_component_of_subset: "\connected_component s x y; s \ t\ \ connected_component t x y" by (auto simp: connected_component_def) -lemma connected_component_Union: "connected_component_set s x = Union {t. connected t \ x \ t \ t \ s}" +lemma connected_component_Union: "connected_component_set s x = \{t. connected t \ x \ t \ t \ s}" by (auto simp: connected_component_def) lemma connected_connected_component [iff]: "connected (connected_component_set s x)" @@ -2024,7 +2024,7 @@ by (metis (no_types, hide_lams) connected_component_eq_eq connected_component_in connected_component_maximal subsetD mem_Collect_eq) -lemma Union_connected_component: "Union (connected_component_set s ` s) = s" +lemma Union_connected_component: "\(connected_component_set s ` s) = s" apply (rule subset_antisym) apply (simp add: SUP_least connected_component_subset) using connected_component_refl_eq @@ -2033,7 +2033,7 @@ lemma complement_connected_component_unions: "s - connected_component_set s x = - Union (connected_component_set s ` s - {connected_component_set s x})" + \(connected_component_set s ` s - {connected_component_set s x})" apply (subst Union_connected_component [symmetric], auto) apply (metis connected_component_eq_eq connected_component_in) by (metis connected_component_eq mem_Collect_eq) @@ -2053,7 +2053,7 @@ lemma components_iff: "s \ components u \ (\x. x \ u \ s = connected_component_set u x)" by (auto simp: components_def) -lemma Union_components: "u = Union (components u)" +lemma Union_components: "u = \(components u)" apply (rule subset_antisym) apply (metis Union_connected_component components_def set_eq_subset) using Union_connected_component components_def by fastforce @@ -2142,7 +2142,7 @@ apply (auto simp: components_iff) by (metis connected_component_eq_empty connected_component_intermediate_subset) -lemma in_components_unions_complement: "c \ components s \ s - c = Union(components s - {c})" +lemma in_components_unions_complement: "c \ components s \ s - c = \(components s - {c})" by (metis complement_connected_component_unions components_def components_iff) lemma connected_intermediate_closure: diff -r cbd310584cff -r 546958347e05 src/HOL/Number_Theory/MiscAlgebra.thy --- a/src/HOL/Number_Theory/MiscAlgebra.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Number_Theory/MiscAlgebra.thy Mon Dec 28 17:43:30 2015 +0100 @@ -257,7 +257,7 @@ lemma (in comm_monoid) finprod_Union_disjoint: "[| finite C; (ALL A:C. finite A & (ALL x:A. f x : carrier G)); (ALL A:C. ALL B:C. A ~= B --> A Int B = {}) |] - ==> finprod G f (Union C) = finprod G (finprod G f) C" + ==> finprod G f (\C) = finprod G (finprod G f) C" apply (frule finprod_UN_disjoint [of C id f]) apply (auto simp add: SUP_def) done diff -r cbd310584cff -r 546958347e05 src/HOL/Old_Number_Theory/Euler.thy --- a/src/HOL/Old_Number_Theory/Euler.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Old_Number_Theory/Euler.thy Mon Dec 28 17:43:30 2015 +0100 @@ -49,7 +49,7 @@ by (auto simp add: MultInvPair_prop1b) lemma MultInvPair_prop2: "[| zprime p; 2 < p; ~([a = 0](mod p)) |] ==> - Union ( SetS a p) = SRStar p" + \(SetS a p) = SRStar p" apply (auto simp add: SetS_def MultInvPair_def StandardRes_SRStar_prop4 SRStar_mult_prop2) apply (frule StandardRes_SRStar_prop3) @@ -105,7 +105,7 @@ apply (rule MultInvPair_card_two, auto) done -lemma Union_SetS_finite: "2 < p ==> finite (Union (SetS a p))" +lemma Union_SetS_finite: "2 < p ==> finite (\(SetS a p))" by (auto simp add: SetS_finite SetS_elems_finite) lemma card_setsum_aux: "[| finite S; \X \ S. finite (X::int set); @@ -118,7 +118,7 @@ proof - have "(p - 1) = 2 * int(card(SetS a p))" proof - - have "p - 1 = int(card(Union (SetS a p)))" + have "p - 1 = int(card(\(SetS a p)))" by (auto simp add: assms MultInvPair_prop2 SRStar_card) also have "... = int (setsum card (SetS a p))" by (auto simp add: assms SetS_finite SetS_elems_finite @@ -177,9 +177,9 @@ lemma Union_SetS_setprod_prop1: assumes "zprime p" and "2 < p" and "~([a = 0] (mod p))" and "~(QuadRes p a)" - shows "[\(Union (SetS a p)) = a ^ nat ((p - 1) div 2)] (mod p)" + shows "[\(\(SetS a p)) = a ^ nat ((p - 1) div 2)] (mod p)" proof - - from assms have "[\(Union (SetS a p)) = setprod (setprod (%x. x)) (SetS a p)] (mod p)" + from assms have "[\(\(SetS a p)) = setprod (setprod (%x. x)) (SetS a p)] (mod p)" by (auto simp add: SetS_finite SetS_elems_finite MultInvPair_prop1c setprod.Union_disjoint) also have "[setprod (setprod (%x. x)) (SetS a p) = @@ -199,9 +199,9 @@ lemma Union_SetS_setprod_prop2: assumes "zprime p" and "2 < p" and "~([a = 0](mod p))" - shows "\(Union (SetS a p)) = zfact (p - 1)" + shows "\(\(SetS a p)) = zfact (p - 1)" proof - - from assms have "\(Union (SetS a p)) = \(SRStar p)" + from assms have "\(\(SetS a p)) = \(SRStar p)" by (auto simp add: MultInvPair_prop2) also have "... = \({1} \ (d22set (p - 1)))" by (auto simp add: assms SRStar_d22set_prop) diff -r cbd310584cff -r 546958347e05 src/HOL/Probability/Sigma_Algebra.thy --- a/src/HOL/Probability/Sigma_Algebra.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Probability/Sigma_Algebra.thy Mon Dec 28 17:43:30 2015 +0100 @@ -75,7 +75,7 @@ assumes Un [intro]: "\a b. a \ M \ b \ M \ a \ b \ M" lemma (in ring_of_sets) finite_Union [intro]: - "finite X \ X \ M \ Union X \ M" + "finite X \ X \ M \ \X \ M" by (induct set: finite) (auto simp add: Un) lemma (in ring_of_sets) finite_UN[intro]: @@ -261,7 +261,7 @@ qed lemma (in sigma_algebra) countable_Union [intro]: - assumes "countable X" "X \ M" shows "Union X \ M" + assumes "countable X" "X \ M" shows "\X \ M" proof cases assume "X \ {}" hence "\X = (\n. from_nat_into X n)" diff -r cbd310584cff -r 546958347e05 src/HOL/Quickcheck_Benchmark/Needham_Schroeder_Base.thy --- a/src/HOL/Quickcheck_Benchmark/Needham_Schroeder_Base.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Quickcheck_Benchmark/Needham_Schroeder_Base.thy Mon Dec 28 17:43:30 2015 +0100 @@ -105,7 +105,7 @@ primrec used :: "event list => msg set" where - used_Nil: "used [] = Union (parts ` initState ` agents)" + used_Nil: "used [] = \(parts ` initState ` agents)" | used_Cons: "used (ev # evs) = (case ev of Says A B X => parts {X} \ used evs @@ -172,13 +172,13 @@ lemma [code]: "analz H = (let - H' = H \ (Union ((%m. case m of {|X, Y|} => {X, Y} | Crypt K X => if Key (invKey K) : H then {X} else {} | _ => {}) ` H)) + H' = H \ (\((%m. case m of {|X, Y|} => {X, Y} | Crypt K X => if Key (invKey K) : H then {X} else {} | _ => {}) ` H)) in if H' = H then H else analz H')" sorry lemma [code]: "parts H = (let - H' = H \ (Union ((%m. case m of {|X, Y|} => {X, Y} | Crypt K X => {X} | _ => {}) ` H)) + H' = H \ (\((%m. case m of {|X, Y|} => {X, Y} | Crypt K X => {X} | _ => {}) ` H)) in if H' = H then H else parts H')" sorry diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/ELT.thy --- a/src/HOL/UNITY/ELT.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/ELT.thy Mon Dec 28 17:43:30 2015 +0100 @@ -133,7 +133,7 @@ (*The Union introduction rule as we should have liked to state it*) lemma leadsETo_Union: - "(!!A. A : S ==> F : A leadsTo[CC] B) ==> F : (Union S) leadsTo[CC] B" + "(!!A. A : S ==> F : A leadsTo[CC] B) ==> F : (\S) leadsTo[CC] B" apply (unfold leadsETo_def) apply (blast intro: elt.Union) done @@ -151,7 +151,7 @@ !!A B. [| F : A ensures B; A-B : insert {} CC |] ==> P A B; !!A B C. [| F : A leadsTo[CC] B; P A B; F : B leadsTo[CC] C; P B C |] ==> P A C; - !!B S. ALL A:S. F : A leadsTo[CC] B & P A B ==> P (Union S) B + !!B S. ALL A:S. F : A leadsTo[CC] B & P A B ==> P (\S) B |] ==> P za zb" apply (unfold leadsETo_def) apply (drule CollectD) @@ -176,7 +176,7 @@ lemma leadsETo_Union_Int: "(!!A. A : S ==> F : (A Int C) leadsTo[CC] B) - ==> F : (Union S Int C) leadsTo[CC] B" + ==> F : (\S Int C) leadsTo[CC] B" apply (unfold leadsETo_def) apply (simp only: Int_Union_Union) apply (blast intro: elt.Union) @@ -223,7 +223,7 @@ by (blast intro: leadsETo_UN leadsETo_weaken_L) lemma leadsETo_Union_distrib: - "F : (Union S) leadsTo[CC] B = (ALL A : S. F : A leadsTo[CC] B)" + "F : (\S) leadsTo[CC] B = (ALL A : S. F : A leadsTo[CC] B)" by (blast intro: leadsETo_Union leadsETo_weaken_L) lemma leadsETo_weaken: @@ -388,7 +388,7 @@ done lemma LeadsETo_Union: - "(!!A. A : S ==> F : A LeadsTo[CC] B) ==> F : (Union S) LeadsTo[CC] B" + "(!!A. A : S ==> F : A LeadsTo[CC] B) ==> F : (\S) LeadsTo[CC] B" apply (simp add: LeadsETo_def) apply (subst Int_Union) apply (blast intro: leadsETo_UN) diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/Extend.thy --- a/src/HOL/UNITY/Extend.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/Extend.thy Mon Dec 28 17:43:30 2015 +0100 @@ -255,7 +255,7 @@ lemma extend_set_Diff_distrib: "extend_set h (A - B) = extend_set h A - extend_set h B" by auto -lemma extend_set_Union: "extend_set h (Union A) = (\X \ A. extend_set h X)" +lemma extend_set_Union: "extend_set h (\A) = (\X \ A. extend_set h X)" by blast lemma extend_set_subset_Compl_eq: "(extend_set h A \ - extend_set h B) = (A \ - B)" @@ -361,7 +361,7 @@ lemma (in -) project_set_UNIV [simp]: "project_set h UNIV = UNIV" by auto -lemma (in -) project_set_Union: "project_set h (Union A) = (\X \ A. project_set h X)" +lemma (in -) project_set_Union: "project_set h (\A) = (\X \ A. project_set h X)" by blast @@ -561,7 +561,7 @@ lemma slice_iff [iff]: "(x \ slice C y) = (h(x,y) \ C)" by (simp add: slice_def) -lemma slice_Union: "slice (Union S) y = (\x \ S. slice x y)" +lemma slice_Union: "slice (\S) y = (\x \ S. slice x y)" by auto lemma slice_extend_set: "slice (extend_set h A) y = A" diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/FP.thy --- a/src/HOL/UNITY/FP.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/FP.thy Mon Dec 28 17:43:30 2015 +0100 @@ -10,7 +10,7 @@ theory FP imports UNITY begin definition FP_Orig :: "'a program => 'a set" where - "FP_Orig F == Union{A. ALL B. F : stable (A Int B)}" + "FP_Orig F == \{A. ALL B. F : stable (A Int B)}" definition FP :: "'a program => 'a set" where "FP F == {s. F : stable {s}}" diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/Guar.thy --- a/src/HOL/UNITY/Guar.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/Guar.thy Mon Dec 28 17:43:30 2015 +0100 @@ -45,11 +45,11 @@ (* Weakest guarantees *) definition wg :: "['a program, 'a program set] => 'a program set" where - "wg F Y == Union({X. F \ X guarantees Y})" + "wg F Y == \({X. F \ X guarantees Y})" (* Weakest existential property stronger than X *) definition wx :: "('a program) set => ('a program)set" where - "wx X == Union({Y. Y \ X & ex_prop Y})" + "wx X == \({Y. Y \ X & ex_prop Y})" (*Ill-defined programs can arise through "Join"*) definition welldef :: "'a program set" where diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/SubstAx.thy --- a/src/HOL/UNITY/SubstAx.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/SubstAx.thy Mon Dec 28 17:43:30 2015 +0100 @@ -61,7 +61,7 @@ done lemma LeadsTo_Union: - "(!!A. A \ S ==> F \ A LeadsTo B) ==> F \ (Union S) LeadsTo B" + "(!!A. A \ S ==> F \ A LeadsTo B) ==> F \ (\S) LeadsTo B" apply (simp add: LeadsTo_def) apply (subst Int_Union) apply (blast intro: leadsTo_UN) @@ -152,7 +152,7 @@ by (blast intro: LeadsTo_UN LeadsTo_weaken_L) lemma LeadsTo_Union_distrib: - "(F \ (Union S) LeadsTo B) = (\A \ S. F \ A LeadsTo B)" + "(F \ (\S) LeadsTo B) = (\A \ S. F \ A LeadsTo B)" by (blast intro: LeadsTo_Union LeadsTo_weaken_L) diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/UNITY.thy --- a/src/HOL/UNITY/UNITY.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/UNITY.thy Mon Dec 28 17:43:30 2015 +0100 @@ -48,7 +48,7 @@ "stable A == A co A" definition strongest_rhs :: "['a program, 'a set] => 'a set" where - "strongest_rhs F A == Inter {B. F \ A co B}" + "strongest_rhs F A == \{B. F \ A co B}" definition invariant :: "'a set => 'a program set" where "invariant A == {F. Init F \ A} \ stable A" @@ -343,7 +343,7 @@ lemma Un_Diff_Diff [simp]: "A \ B - (A - B) = B" by blast -lemma Int_Union_Union: "Union(B) \ A = Union((%C. C \ A)`B)" +lemma Int_Union_Union: "\B \ A = \((%C. C \ A)`B)" by blast text{*Needed for WF reasoning in WFair.thy*} diff -r cbd310584cff -r 546958347e05 src/HOL/UNITY/WFair.thy --- a/src/HOL/UNITY/WFair.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/UNITY/WFair.thy Mon Dec 28 17:43:30 2015 +0100 @@ -65,7 +65,7 @@ definition wlt :: "['a program, 'a set] => 'a set" where --{*predicate transformer: the largest set that leads to @{term B}*} - "wlt F B == Union {A. F \ A leadsTo B}" + "wlt F B == \{A. F \ A leadsTo B}" notation leadsTo (infixl "\" 60) @@ -189,13 +189,13 @@ text{*The Union introduction rule as we should have liked to state it*} lemma leadsTo_Union: - "(!!A. A \ S ==> F \ A leadsTo B) ==> F \ (Union S) leadsTo B" + "(!!A. A \ S ==> F \ A leadsTo B) ==> F \ (\S) leadsTo B" apply (unfold leadsTo_def) apply (blast intro: leads.Union) done lemma leadsTo_Union_Int: - "(!!A. A \ S ==> F \ (A \ C) leadsTo B) ==> F \ (Union S \ C) leadsTo B" + "(!!A. A \ S ==> F \ (A \ C) leadsTo B) ==> F \ (\S \ C) leadsTo B" apply (unfold leadsTo_def) apply (simp only: Int_Union_Union) apply (blast intro: leads.Union) @@ -223,7 +223,7 @@ !!A B. F \ A ensures B ==> P A B; !!A B C. [| F \ A leadsTo B; P A B; F \ B leadsTo C; P B C |] ==> P A C; - !!B S. \A \ S. F \ A leadsTo B & P A B ==> P (Union S) B + !!B S. \A \ S. F \ A leadsTo B & P A B ==> P (\S) B |] ==> P za zb" apply (unfold leadsTo_def) apply (drule CollectD, erule leads.induct) @@ -251,7 +251,7 @@ "[| F \ za leadsTo zb; P zb; !!A B. [| F \ A ensures B; P B |] ==> P A; - !!S. \A \ S. P A ==> P (Union S) + !!S. \A \ S. P A ==> P (\S) |] ==> P za" txt{*by induction on this formula*} apply (subgoal_tac "P zb --> P za") @@ -265,7 +265,7 @@ "[| F \ za leadsTo zb; P zb; !!A B. [| F \ A ensures B; F \ B leadsTo zb; P B |] ==> P A; - !!S. \A \ S. F \ A leadsTo zb & P A ==> P (Union S) + !!S. \A \ S. F \ A leadsTo zb & P A ==> P (\S) |] ==> P za" apply (subgoal_tac "F \ za leadsTo zb & P za") apply (erule conjunct2) @@ -293,7 +293,7 @@ by (blast intro: leadsTo_UN leadsTo_weaken_L) lemma leadsTo_Union_distrib: - "F \ (Union S) leadsTo B = (\A \ S. F \ A leadsTo B)" + "F \ (\S) leadsTo B = (\A \ S. F \ A leadsTo B)" by (blast intro: leadsTo_Union leadsTo_weaken_L) diff -r cbd310584cff -r 546958347e05 src/HOL/Wellfounded.thy --- a/src/HOL/Wellfounded.thy Mon Dec 28 16:34:26 2015 +0100 +++ b/src/HOL/Wellfounded.thy Mon Dec 28 17:43:30 2015 +0100 @@ -305,7 +305,7 @@ lemma wf_Union: "[| ALL r:R. wf r; ALL r:R. ALL s:R. r ~= s --> Domain r Int Range s = {} - |] ==> wf(Union R)" + |] ==> wf (\ R)" using wf_UN[of R "\i. i"] by simp (*Intuition: we find an (R u S)-min element of a nonempty subset A