Analysis I, Section 11.1: Partitions #
I have attempted to make the translation as faithful a paraphrasing as possible of the original text. When there is a choice between a more idiomatic Lean solution and a more faithful translation, I have generally chosen the latter. In particular, there will be places where the Lean code could be "golfed" to be more elegant and idiomatic, but I have consciously avoided doing so.
Main constructions and results of this section:
- Bounded intervals and partitions.
- Length of an interval; the lengths of a partition sum to the length of the interval.
- Ioo (a b : ℝ) : BoundedInterval
- Icc (a b : ℝ) : BoundedInterval
- Ioc (a b : ℝ) : BoundedInterval
- Ico (a b : ℝ) : BoundedInterval
Instances For
There is a technical issue in that this coercion is not injective: the empty set is represented by multiple bounded intervals. This causes some of the statements in this section to be a little uglier than necessary.
Equations
- ↑(Chapter11.BoundedInterval.Ioo a b) = Set.Ioo a b
- ↑(Chapter11.BoundedInterval.Icc a b) = Set.Icc a b
- ↑(Chapter11.BoundedInterval.Ioc a b) = Set.Ioc a b
- ↑(Chapter11.BoundedInterval.Ico a b) = Set.Ico a b
Instances For
Equations
Equations
- Chapter11.BoundedInterval.instEmpty = { emptyCollection := Chapter11.BoundedInterval.Ioo 0 0 }
This is to make Finsets of BoundedIntervals work properly
Lemma 11.1.4 / Exercise 11.1.1
Corollary 11.1.6 / Exercise 11.1.2
Equations
- Chapter11.BoundedInterval.instInter = { inter := fun (I J : Chapter11.BoundedInterval) => ⋯.choose }
Equations
- Chapter11.BoundedInterval.instMembership = { mem := fun (I : Chapter11.BoundedInterval) (x : ℝ) => x ∈ ↑I }
Equations
- Chapter11.BoundedInterval.instSubset = { Subset := fun (I J : Chapter11.BoundedInterval) => ∀ x ∈ I, x ∈ J }
Equations
- (Chapter11.BoundedInterval.Ioo a b).a = a
- (Chapter11.BoundedInterval.Icc a b).a = a
- (Chapter11.BoundedInterval.Ioc a b).a = a
- (Chapter11.BoundedInterval.Ico a b).a = a
Instances For
Equations
- (Chapter11.BoundedInterval.Ioo a b).b = b
- (Chapter11.BoundedInterval.Icc a b).b = b
- (Chapter11.BoundedInterval.Ioc a b).b = b
- (Chapter11.BoundedInterval.Ico a b).b = b
Instances For
Instances For
Using ||ₗ subscript here to not override ||
Equations
- One or more equations did not get rendered due to their size.
Instances For
- intervals : Finset BoundedInterval
Instances For
Equations
- Chapter11.Partition.instMembership I = { mem := fun (P : Chapter11.Partition I) (J : Chapter11.BoundedInterval) => J ∈ P.intervals }
Equations
Instances For
Exercise 11.1.3. The exercise only claims c ≤ b, but the stronger claim c < b is true and useful.
Theorem 11.1.13 (Length is finitely additive).
Definition 11.1.14 (Finer and coarser partitions)
Equations
- Chapter11.Partition.instLE I = { le := fun (P P' : Chapter11.Partition I) => ∀ J ∈ P'.intervals, ∃ K ∈ P, J ⊆ K }
Equations
- Chapter11.Partition.instPreOrder I = { toLE := Chapter11.Partition.instLE I, lt := fun (a b : Chapter11.Partition I) => a ≤ b ∧ ¬b ≤ a, le_refl := ⋯, le_trans := ⋯, lt_iff_le_not_ge := ⋯ }
Equations
- Chapter11.Partition.instOrderBot I = { toBot := Chapter11.Partition.instBot I, bot_le := ⋯ }
Definition 11.1.16 (Common refinement)
Equations
- One or more equations did not get rendered due to their size.
Lemma 11.1.8 / Exercise 11.1.4
Not from textbook: the reverse inclusion