Structure real_borelTheory
signature real_borelTheory =
sig
type thm = Thm.thm
(* Definitions *)
val borel : thm
val box : thm
val indicator_fn_def : thm
val line : thm
val mr2 : thm
val real_rat_set_def : thm
val right_open_interval : thm
val right_open_intervals : thm
(* Theorems *)
val ADD_IN_QSET : thm
val BALL_IN_LINE : thm
val BIGUNION_IMAGE_QSET : thm
val CLG_UBOUND : thm
val DIV_IN_QSET : thm
val IMAGE_FST_CROSS_INTERVAL : thm
val IMAGE_SND_CROSS_INTERVAL : thm
val INV_IN_QSET : thm
val ISMET_R2 : thm
val LINE_MONO : thm
val LINE_MONO_EQ : thm
val LINE_MONO_SUC : thm
val MR2_DEF : thm
val MUL_IN_QSET : thm
val NON_NEG_REAL_RAT_DENSE : thm
val NUM_IN_QSET : thm
val OPP_IN_QSET : thm
val QSET_COUNTABLE : thm
val Q_DENSE_IN_REAL : thm
val Q_DENSE_IN_REAL_LEMMA : thm
val REAL_IN_LINE : thm
val REAL_RAT_DENSE : thm
val REAL_SING_BIGINTER : thm
val SUB_IN_QSET : thm
val borel_2d : thm
val borel_2d_alt_box : thm
val borel_closed : thm
val borel_comp : thm
val borel_def : thm
val borel_eq_box : thm
val borel_eq_ge_le : thm
val borel_eq_ge_less : thm
val borel_eq_gr : thm
val borel_eq_gr_le : thm
val borel_eq_gr_less : thm
val borel_eq_le : thm
val borel_eq_less : thm
val borel_eq_sigmaI1 : thm
val borel_eq_sigmaI2 : thm
val borel_eq_sigmaI3 : thm
val borel_eq_sigmaI4 : thm
val borel_eq_sigmaI5 : thm
val borel_line : thm
val borel_measurable_const : thm
val borel_measurable_image : thm
val borel_measurable_indicator : thm
val borel_measurable_sets : thm
val borel_measurable_sets_ge : thm
val borel_measurable_sets_ge_le : thm
val borel_measurable_sets_ge_less : thm
val borel_measurable_sets_gr : thm
val borel_measurable_sets_gr_le : thm
val borel_measurable_sets_gr_less : thm
val borel_measurable_sets_le : thm
val borel_measurable_sets_less : thm
val borel_measurable_sets_not_sing : thm
val borel_measurable_sets_sing : thm
val borel_open : thm
val borel_sigma_sets_subset : thm
val borel_singleton : thm
val box_alt : thm
val box_open_in_mr2 : thm
val countable_real_rat_set : thm
val in_borel_measurable : thm
val in_borel_measurable_add : thm
val in_borel_measurable_borel : thm
val in_borel_measurable_cmul : thm
val in_borel_measurable_const : thm
val in_borel_measurable_ge : thm
val in_borel_measurable_gr : thm
val in_borel_measurable_le : thm
val in_borel_measurable_less : thm
val in_borel_measurable_mul : thm
val in_borel_measurable_open : thm
val in_borel_measurable_sqr : thm
val in_borel_measurable_sub : thm
val in_right_open_interval : thm
val in_right_open_intervals : thm
val in_right_open_intervals_nonempty : thm
val line_closed : thm
val open_UNION_box : thm
val open_UNION_rational_box : thm
val q_set_def : thm
val rational_boxes : thm
val right_open_interval_11 : thm
val right_open_interval_DISJOINT : thm
val right_open_interval_DISJOINT_imp : thm
val right_open_interval_between_bounds : thm
val right_open_interval_disjoint : thm
val right_open_interval_empty : thm
val right_open_interval_empty_eq : thm
val right_open_interval_in_intervals : thm
val right_open_interval_inter : thm
val right_open_interval_interior : thm
val right_open_interval_lowerbound : thm
val right_open_interval_two_bounds : thm
val right_open_interval_union : thm
val right_open_interval_union_imp : thm
val right_open_interval_upperbound : thm
val right_open_intervals_semiring : thm
val right_open_intervals_sigma_borel : thm
val right_open_intervals_subset_borel : thm
val sigma_algebra_borel : thm
val sigma_algebra_borel_2d : thm
val sigma_ge_gr : thm
val sigma_gr_le : thm
val sigma_le_less : thm
val sigma_less_ge : thm
val space_borel : thm
val space_in_borel : thm
val real_borel_grammars : type_grammar.grammar * term_grammar.grammar
(*
[integration] Parent theory of "real_borel"
[sigma_algebra] Parent theory of "real_borel"
[borel] Definition
⢠borel = sigma đ(:real) {s | open s}
[box] Definition
⢠âa b. box a b = {x | a < x ⧠x < b}
[indicator_fn_def] Definition
⢠âs. đ s = (Îťx. if x â s then 1 else 0)
[line] Definition
⢠ân. line n = {x | -&n ⤠x ⧠x ⤠&n}
[mr2] Definition
⢠mr2 = metric (Îť((x1,x2),y1,y2). sqrt ((x1 â y1)² + (x2 â y2)²))
[real_rat_set_def] Definition
⢠q_set =
{x | âa b. x = &a / &b ⧠0 < &b} âŞ
{x | âa b. x = -(&a / &b) ⧠0 < &b}
[right_open_interval] Definition
⢠âa b. right_open_interval a b = {x | a ⤠x ⧠x < b}
[right_open_intervals] Definition
⢠right_open_intervals = (đ(:real),{right_open_interval a b | T})
[ADD_IN_QSET] Theorem
⢠âx y. x â q_set ⧠y â q_set â x + y â q_set
[BALL_IN_LINE] Theorem
⢠ân. ball (0,&n) â line n
[BIGUNION_IMAGE_QSET] Theorem
⢠âa f.
sigma_algebra a ⧠f â (q_set â subsets a) â
BIGUNION (IMAGE f q_set) â subsets a
[CLG_UBOUND] Theorem
⢠âx. 0 ⤠x â &clg x < x + 1
[DIV_IN_QSET] Theorem
⢠âx y. x â q_set ⧠y â q_set ⧠y â 0 â x / y â q_set
[IMAGE_FST_CROSS_INTERVAL] Theorem
⢠âa b c d.
c < d â
IMAGE FST (interval (a,b) Ă interval (c,d)) = interval (a,b)
[IMAGE_SND_CROSS_INTERVAL] Theorem
⢠âa b c d.
a < b â
IMAGE SND (interval (a,b) Ă interval (c,d)) = interval (c,d)
[INV_IN_QSET] Theorem
⢠âx. x â q_set ⧠x â 0 â 1 / x â q_set
[ISMET_R2] Theorem
⢠ismet (Îť((x1,x2),y1,y2). sqrt ((x1 â y1)² + (x2 â y2)²))
[LINE_MONO] Theorem
⢠ân N. n ⤠N â line n â line N
[LINE_MONO_EQ] Theorem
⢠ân N. line n â line N â n ⤠N
[LINE_MONO_SUC] Theorem
⢠ân. line n â line (SUC n)
[MR2_DEF] Theorem
⢠âx1 x2 y1 y2.
dist mr2 ((x1,x2),y1,y2) = sqrt ((x1 â y1)² + (x2 â y2)²)
[MUL_IN_QSET] Theorem
⢠âx y. x â q_set ⧠y â q_set â x * y â q_set
[NON_NEG_REAL_RAT_DENSE] Theorem
⢠âx y. 0 ⤠x ⧠x < y â âm n. x < &m / &n ⧠&m / &n < y
[NUM_IN_QSET] Theorem
⢠ân. &n â q_set ⧠-&n â q_set
[OPP_IN_QSET] Theorem
⢠âx. x â q_set â -x â q_set
[QSET_COUNTABLE] Theorem
⢠COUNTABLE q_set
[Q_DENSE_IN_REAL] Theorem
⢠âx y. x < y â âr. r â q_set ⧠x < r ⧠r < y
[Q_DENSE_IN_REAL_LEMMA] Theorem
⢠âx y. 0 ⤠x ⧠x < y â âr. r â q_set ⧠x < r ⧠r < y
[REAL_IN_LINE] Theorem
⢠âx. ân. x â line n
[REAL_RAT_DENSE] Theorem
⢠âx y. x < y â âr. r â q_set ⧠x < r ⧠r < y
[REAL_SING_BIGINTER] Theorem
⢠âc. {c} =
BIGINTER
(IMAGE
(Îťn. {x | c â (1 / 2) pow n ⤠x ⧠x < c + (1 / 2) pow n})
đ(:num))
[SUB_IN_QSET] Theorem
⢠âx y. x â q_set ⧠y â q_set â x â y â q_set
[borel_2d] Theorem
⢠borel Ă borel = sigma đ(:real # real) {s | open_in (mtop mr2) s}
[borel_2d_alt_box] Theorem
⢠borel Ă borel = sigma đ(:real # real) {box a b Ă box c d | T}
[borel_closed] Theorem
⢠âA. closed A â A â subsets borel
[borel_comp] Theorem
⢠âA. A â subsets borel â đ(:real) DIFF A â subsets borel
[borel_def] Theorem
⢠borel = sigma đ(:real) (IMAGE (Îťa. {x | x ⤠a}) đ(:real))
[borel_eq_box] Theorem
⢠borel = sigma đ(:real) (IMAGE (Îť(a,b). box a b) đ(:real # real))
[borel_eq_ge_le] Theorem
⢠borel =
sigma đ(:real)
(IMAGE (Îť(a,b). {x | a ⤠x ⧠x ⤠b}) đ(:real # real))
[borel_eq_ge_less] Theorem
⢠borel =
sigma đ(:real)
(IMAGE (Îť(a,b). {x | a ⤠x ⧠x < b}) đ(:real # real))
[borel_eq_gr] Theorem
⢠borel = sigma đ(:real) (IMAGE (Îťa. {x | a < x}) đ(:real))
[borel_eq_gr_le] Theorem
⢠borel =
sigma đ(:real)
(IMAGE (Îť(a,b). {x | a < x ⧠x ⤠b}) đ(:real # real))
[borel_eq_gr_less] Theorem
⢠borel =
sigma đ(:real)
(IMAGE (Îť(a,b). {x | a < x ⧠x < b}) đ(:real # real))
[borel_eq_le] Theorem
⢠borel = sigma đ(:real) (IMAGE (Îťa. {x | x ⤠a}) đ(:real))
[borel_eq_less] Theorem
⢠borel = sigma đ(:real) (IMAGE (Îťa. {x | x < a}) đ(:real))
[borel_eq_sigmaI1] Theorem
⢠âX A f.
borel = sigma đ(:real) X â§
(âx. x â X â x â subsets (sigma đ(:real) (IMAGE f A))) â§
(âi. i â A â f i â subsets borel) â
borel = sigma đ(:real) (IMAGE f A)
[borel_eq_sigmaI2] Theorem
⢠âG f A B.
borel = sigma đ(:real) (IMAGE (Îť(i,j). G i j) B) â§
(âi j.
(i,j) â B â
G i j â subsets (sigma đ(:real) (IMAGE (Îť(i,j). f i j) A))) â§
(âi j. (i,j) â A â f i j â subsets borel) â
borel = sigma đ(:real) (IMAGE (Îť(i,j). f i j) A)
[borel_eq_sigmaI3] Theorem
⢠âf A X.
borel = sigma đ(:real) X â§
(âx. x â X â
x â subsets (sigma đ(:real) (IMAGE (Îť(i,j). f i j) A))) â§
(âi j. (i,j) â A â f i j â subsets borel) â
borel = sigma đ(:real) (IMAGE (Îť(i,j). f i j) A)
[borel_eq_sigmaI4] Theorem
⢠âG f A.
borel = sigma đ(:real) (IMAGE (Îť(i,j). G i j) A) â§
(âi j.
(i,j) â A â G i j â subsets (sigma đ(:real) (IMAGE f đ(:Îł)))) â§
(âi. f i â subsets borel) â
borel = sigma đ(:real) (IMAGE f đ(:Îł))
[borel_eq_sigmaI5] Theorem
⢠âG f.
borel = sigma đ(:real) (IMAGE G đ(:Îą)) â§
(âi. G i â
subsets (sigma đ(:real) (IMAGE (Îť(i,j). f i j) đ(:β # Îł)))) â§
(âi j. f i j â subsets borel) â
borel = sigma đ(:real) (IMAGE (Îť(i,j). f i j) đ(:β # Îł))
[borel_line] Theorem
⢠ân. line n â subsets borel
[borel_measurable_const] Theorem
⢠âM c. sigma_algebra M â (Îťx. c) â borel_measurable M
[borel_measurable_image] Theorem
⢠âf M x.
f â borel_measurable M â PREIMAGE f {x} ⊠space M â subsets M
[borel_measurable_indicator] Theorem
⢠âs a. sigma_algebra s ⧠a â subsets s â đ a â borel_measurable s
[borel_measurable_sets] Theorem
⢠(âa. {x | x < a} â subsets borel) â§
(âa. {x | x ⤠a} â subsets borel) â§
(âa. {x | a < x} â subsets borel) â§
(âa. {x | a ⤠x} â subsets borel) â§
(âa b. {x | a < x ⧠x < b} â subsets borel) â§
(âa b. {x | a < x ⧠x ⤠b} â subsets borel) â§
(âa b. {x | a ⤠x ⧠x < b} â subsets borel) â§
(âa b. {x | a ⤠x ⧠x ⤠b} â subsets borel) â§
(âc. {c} â subsets borel) ⧠âc. {x | x â c} â subsets borel
[borel_measurable_sets_ge] Theorem
⢠âa. {x | a ⤠x} â subsets borel
[borel_measurable_sets_ge_le] Theorem
⢠âa b. {x | a ⤠x ⧠x ⤠b} â subsets borel
[borel_measurable_sets_ge_less] Theorem
⢠âa b. {x | a ⤠x ⧠x < b} â subsets borel
[borel_measurable_sets_gr] Theorem
⢠âa. {x | a < x} â subsets borel
[borel_measurable_sets_gr_le] Theorem
⢠âa b. {x | a < x ⧠x ⤠b} â subsets borel
[borel_measurable_sets_gr_less] Theorem
⢠âa b. {x | a < x ⧠x < b} â subsets borel
[borel_measurable_sets_le] Theorem
⢠âa. {x | x ⤠a} â subsets borel
[borel_measurable_sets_less] Theorem
⢠âa. {x | x < a} â subsets borel
[borel_measurable_sets_not_sing] Theorem
⢠âc. {x | x â c} â subsets borel
[borel_measurable_sets_sing] Theorem
⢠âc. {c} â subsets borel
[borel_open] Theorem
⢠âA. open A â A â subsets borel
[borel_sigma_sets_subset] Theorem
⢠âA. A â subsets borel â sigma_sets đ(:real) A â subsets borel
[borel_singleton] Theorem
⢠âA x. A â subsets borel â x INSERT A â subsets borel
[box_alt] Theorem
⢠âa b. box a b = interval (a,b)
[box_open_in_mr2] Theorem
⢠âa b c d. open_in (mtop mr2) (interval (a,b) Ă interval (c,d))
[countable_real_rat_set] Theorem
⢠COUNTABLE q_set
[in_borel_measurable] Theorem
⢠âf s.
f â borel_measurable s â
sigma_algebra s â§
âs'.
s' â
subsets (sigma đ(:real) (IMAGE (Îťa. {x | x ⤠a}) đ(:real))) â
PREIMAGE f s' ⊠space s â subsets s
[in_borel_measurable_add] Theorem
⢠âa f g h.
sigma_algebra a ⧠f â borel_measurable a â§
g â borel_measurable a ⧠(âx. x â space a â h x = f x + g x) â
h â borel_measurable a
[in_borel_measurable_borel] Theorem
⢠âf M.
f â borel_measurable M â
sigma_algebra M â§
âs. s â subsets borel â PREIMAGE f s ⊠space M â subsets M
[in_borel_measurable_cmul] Theorem
⢠âa f g z.
sigma_algebra a ⧠f â borel_measurable a â§
(âx. x â space a â g x = z * f x) â
g â borel_measurable a
[in_borel_measurable_const] Theorem
⢠âa k f.
sigma_algebra a ⧠(âx. x â space a â f x = k) â
f â borel_measurable a
[in_borel_measurable_ge] Theorem
⢠âf m.
f â borel_measurable m â
sigma_algebra m ⧠f â (space m â đ(:real)) â§
âa. {w | w â space m ⧠a ⤠f w} â subsets m
[in_borel_measurable_gr] Theorem
⢠âf m.
f â borel_measurable m â
sigma_algebra m ⧠f â (space m â đ(:real)) â§
âa. {w | w â space m ⧠a < f w} â subsets m
[in_borel_measurable_le] Theorem
⢠âf m.
f â borel_measurable m â
sigma_algebra m ⧠f â (space m â đ(:real)) â§
âa. {w | w â space m ⧠f w ⤠a} â subsets m
[in_borel_measurable_less] Theorem
⢠âf m.
f â borel_measurable m â
sigma_algebra m ⧠f â (space m â đ(:real)) â§
âa. {w | w â space m ⧠f w < a} â subsets m
[in_borel_measurable_mul] Theorem
⢠âa f g h.
sigma_algebra a ⧠f â borel_measurable a â§
g â borel_measurable a ⧠(âx. x â space a â h x = f x * g x) â
h â borel_measurable a
[in_borel_measurable_open] Theorem
⢠âf M.
f â borel_measurable M â
sigma_algebra M â§
âs. s â subsets (sigma đ(:real) {s | open s}) â
PREIMAGE f s ⊠space M â subsets M
[in_borel_measurable_sqr] Theorem
⢠âa f g.
sigma_algebra a ⧠f â borel_measurable a â§
(âx. x â space a â g x = (f x)²) â
g â borel_measurable a
[in_borel_measurable_sub] Theorem
⢠âa f g h.
sigma_algebra a ⧠f â borel_measurable a â§
g â borel_measurable a ⧠(âx. x â space a â h x = f x â g x) â
h â borel_measurable a
[in_right_open_interval] Theorem
⢠âa b x. x â right_open_interval a b â a ⤠x ⧠x < b
[in_right_open_intervals] Theorem
⢠âs. s â subsets right_open_intervals â
âa b. s = right_open_interval a b
[in_right_open_intervals_nonempty] Theorem
⢠âs. s â â
⧠s â subsets right_open_intervals â
âa b. a < b ⧠s = right_open_interval a b
[line_closed] Theorem
⢠ân. closed (line n)
[open_UNION_box] Theorem
⢠âM. open M â M = BIGUNION {box a b | box a b â M}
[open_UNION_rational_box] Theorem
⢠âM. open M â
M = BIGUNION {box a b | a â q_set ⧠b â q_set ⧠box a b â M}
[q_set_def] Theorem
⢠q_set =
{x | âa b. x = &a / &b ⧠0 < &b} âŞ
{x | âa b. x = -(&a / &b) ⧠0 < &b}
[rational_boxes] Theorem
⢠âx e.
0 < e â
âa b. a â q_set ⧠b â q_set ⧠x â box a b ⧠box a b â ball (x,e)
[right_open_interval_11] Theorem
⢠âa b c d.
a < b ⧠c < d â
(right_open_interval a b = right_open_interval c d â
a = c ⧠b = d)
[right_open_interval_DISJOINT] Theorem
⢠âa b c d.
a ⤠b ⧠b ⤠c ⧠c ⤠d â
DISJOINT (right_open_interval a b) (right_open_interval c d)
[right_open_interval_DISJOINT_imp] Theorem
⢠âa b c d.
a < b ⧠c < d â§
DISJOINT (right_open_interval a b) (right_open_interval c d) â
b ⤠c ⨠d ⤠a
[right_open_interval_between_bounds] Theorem
⢠âx a b.
x â right_open_interval a b â
interval_lowerbound (right_open_interval a b) ⤠x â§
x < interval_upperbound (right_open_interval a b)
[right_open_interval_disjoint] Theorem
⢠âa b c d.
a ⤠b ⧠b ⤠c ⧠c ⤠d â
disjoint {right_open_interval a b; right_open_interval c d}
[right_open_interval_empty] Theorem
⢠âa b. right_open_interval a b = â
â ÂŹ(a < b)
[right_open_interval_empty_eq] Theorem
⢠âa b. a = b â right_open_interval a b = â
[right_open_interval_in_intervals] Theorem
⢠âa b. right_open_interval a b â subsets right_open_intervals
[right_open_interval_inter] Theorem
⢠âa b c d.
right_open_interval a b ⊠right_open_interval c d =
right_open_interval (max a c) (min b d)
[right_open_interval_interior] Theorem
⢠âa b. a < b â a â right_open_interval a b
[right_open_interval_lowerbound] Theorem
⢠âa b. a < b â interval_lowerbound (right_open_interval a b) = a
[right_open_interval_two_bounds] Theorem
⢠âa b.
interval_lowerbound (right_open_interval a b) â¤
interval_upperbound (right_open_interval a b)
[right_open_interval_union] Theorem
⢠âa b c d.
a < b ⧠c < d ⧠a ⤠d ⧠c ⤠b â
right_open_interval a b ⪠right_open_interval c d =
right_open_interval (min a c) (max b d)
[right_open_interval_union_imp] Theorem
⢠âa b c d.
a < b ⧠c < d â§
right_open_interval a b ⪠right_open_interval c d â
subsets right_open_intervals â
a ⤠d ⧠c ⤠b
[right_open_interval_upperbound] Theorem
⢠âa b. a < b â interval_upperbound (right_open_interval a b) = b
[right_open_intervals_semiring] Theorem
⢠semiring right_open_intervals
[right_open_intervals_sigma_borel] Theorem
⢠sigma (space right_open_intervals) (subsets right_open_intervals) =
borel
[right_open_intervals_subset_borel] Theorem
⢠subsets right_open_intervals â subsets borel
[sigma_algebra_borel] Theorem
⢠sigma_algebra borel
[sigma_algebra_borel_2d] Theorem
⢠sigma_algebra (borel à borel)
[sigma_ge_gr] Theorem
⢠âf A.
sigma_algebra A ⧠(âa. {w | w â space A ⧠a ⤠f w} â subsets A) â
âa. {w | w â space A ⧠a < f w} â subsets A
[sigma_gr_le] Theorem
⢠âf A.
sigma_algebra A ⧠(âa. {w | w â space A ⧠a < f w} â subsets A) â
âa. {w | w â space A ⧠f w ⤠a} â subsets A
[sigma_le_less] Theorem
⢠âf A.
sigma_algebra A ⧠(âa. {w | w â space A ⧠f w ⤠a} â subsets A) â
âa. {w | w â space A ⧠f w < a} â subsets A
[sigma_less_ge] Theorem
⢠âf A.
sigma_algebra A ⧠(âa. {w | w â space A ⧠f w < a} â subsets A) â
âa. {w | w â space A ⧠a ⤠f w} â subsets A
[space_borel] Theorem
⢠space borel = đ(:real)
[space_in_borel] Theorem
⢠đ(:real) â subsets borel
*)
end
HOL 4, Kananaskis-14