equal
deleted
inserted
replaced
11 text \<open> |
11 text \<open> |
12 This is just a tiny example demonstrating the use of inductive |
12 This is just a tiny example demonstrating the use of inductive |
13 definitions in classical mathematics. We define the least \<open>\<sigma>\<close>-algebra over a given set of sets. |
13 definitions in classical mathematics. We define the least \<open>\<sigma>\<close>-algebra over a given set of sets. |
14 \<close> |
14 \<close> |
15 |
15 |
16 inductive_set \<sigma>_algebra :: "'a set set \<Rightarrow> 'a set set" |
16 inductive_set \<sigma>_algebra :: "'a set set \<Rightarrow> 'a set set" for A :: "'a set set" |
17 for A :: "'a set set" |
|
18 where |
17 where |
19 basic: "a \<in> \<sigma>_algebra A" if "a \<in> A" |
18 basic: "a \<in> \<sigma>_algebra A" if "a \<in> A" for a |
20 | UNIV: "UNIV \<in> \<sigma>_algebra A" |
19 | UNIV: "UNIV \<in> \<sigma>_algebra A" |
21 | complement: "- a \<in> \<sigma>_algebra A" if "a \<in> \<sigma>_algebra A" |
20 | complement: "- a \<in> \<sigma>_algebra A" if "a \<in> \<sigma>_algebra A" for a |
22 | Union: "(\<Union>i. a i) \<in> \<sigma>_algebra A" if "\<And>i::nat. a i \<in> \<sigma>_algebra A" |
21 | Union: "(\<Union>i. a i) \<in> \<sigma>_algebra A" if "\<And>i::nat. a i \<in> \<sigma>_algebra A" for a |
23 |
22 |
24 text \<open> |
23 text \<open> |
25 The following basic facts are consequences of the closure properties |
24 The following basic facts are consequences of the closure properties |
26 of any \<open>\<sigma>\<close>-algebra, merely using the introduction rules, but |
25 of any \<open>\<sigma>\<close>-algebra, merely using the introduction rules, but |
27 no induction nor cases. |
26 no induction nor cases. |