Skip to content

Commit 0b62eb3

Browse files
committed
changelog, fix sub_cofinite_set, renamings
1 parent 33a0e8d commit 0b62eb3

File tree

3 files changed

+25
-12
lines changed

3 files changed

+25
-12
lines changed

CHANGELOG_UNRELEASED.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,22 @@
103103

104104
- in `lebesgue_integrable.v`:
105105
+ lemma `integrable_set0`
106-
- in `functions.v`:
107-
+ lemma `injectiveT_ltn`
106+
107+
- in `classical_sets.v`:
108+
+ lemmas `setUDl`, `setUDr`
109+
110+
- in `cardinality.v`:
111+
+ notation `cofinite_set`
112+
+ lemmas `cofinite_setT`, `infinite_setN0`, `sub_cofinite_set`,
113+
`sub_infinite_set`, `cofinite_setUl`, `cofinite_setUr`, `cofinite_setU`,
114+
`cofinite_setI`, `cofinite_set_infinite`, `infinite_setIl`,
115+
`infinite_setIr`
116+
+ lemma `injective_gtn`
108117

109118
- in `sequences.v`:
110-
+ lemma `finite_range_cst`
111-
+ lemma `finite_range_cvg`
119+
+ lemma `finite_range_cst_subsequence`
120+
+ lemmas `infinite_increasing_seq`, `infinite_increasing_seq_wf`
121+
+ lemma `finite_range_cvg_subsequence`
112122
+ theorem `bolzano_weierstrass`
113123

114124
### Changed

classical/cardinality.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -613,7 +613,7 @@ Lemma sub_finite_set T (A B : set T) : A `<=` B ->
613613
Proof. by move=> ?; apply/card_le_finite/subset_card_le. Qed.
614614

615615
Lemma sub_cofinite_set T (A B : set T) : A `<=` B ->
616-
cofinite_set A -> cofinite_set A.
616+
cofinite_set A -> cofinite_set B.
617617
Proof. by move=> /subsetC/sub_finite_set. Qed.
618618

619619
Lemma sub_infinite_set T (A B : set T) : A `<=` B ->

theories/sequences.v

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2974,7 +2974,7 @@ End adjacent_cut.
29742974

29752975
Section finite_range_sequence_constant.
29762976

2977-
Lemma finite_range_cst {T} (u_ : T^nat) : finite_set (range u_) ->
2977+
Lemma finite_range_cst_subsequence {T} (u_ : T^nat) : finite_set (range u_) ->
29782978
exists x, exists2 A, infinite_set A & (forall k, A k <-> u_ k = x).
29792979
Proof.
29802980
move=> range_u_finite; pose A x := u_ @^-1` [set x].
@@ -2987,7 +2987,8 @@ Qed.
29872987

29882988
Lemma infinite_increasing_seq {d} {T : porderType d} (A : set T) :
29892989
(forall x, infinite_set [set y | A y /\ (x < y)%O]) ->
2990-
forall x0 : T, exists f, [/\ increasing_seq f, forall n : nat, (x0 < f n)%O & forall n, A (f n)].
2990+
forall x0 : T, exists f : nat -> T,
2991+
[/\ increasing_seq f, forall n : nat, (x0 < f n)%O & forall n, A (f n)].
29912992
Proof.
29922993
pose R (x y : T) := A y /\ (x < y)%O => Roo x0.
29932994
have [x|f [f0 /all_and2[fA fS]]] := @dependent_choice T R _ x0.
@@ -2998,17 +2999,19 @@ Qed.
29982999

29993000
Lemma infinite_increasing_seq_wf {d} {T : orderType d} (A : set T) :
30003001
(forall x : T, finite_set [set y | (y <= x)%O]) -> infinite_set A ->
3001-
forall x0 : T, exists f, [/\ increasing_seq f, forall n : nat, (x0 < f n)%O & forall n, A (f n)].
3002+
forall x0 : T, exists f : nat -> T,
3003+
[/\ increasing_seq f, forall n, (x0 < f n)%O & forall n, A (f n)].
30023004
Proof.
3003-
move=> Dfin Aoo; apply: infinite_increasing_seq => x; apply: infinite_setIl => //.
3005+
move=> Dfin Aoo; apply: infinite_increasing_seq => x.
3006+
apply: infinite_setIl => //.
30043007
by apply: sub_finite_set (Dfin x) => y /=; case: leP.
30053008
Qed.
30063009

3007-
Lemma finite_range_cvg {T : ptopologicalType} (x_ : T ^nat) :
3010+
Lemma finite_range_cvg_subsequence {T : ptopologicalType} (x_ : T ^nat) :
30083011
finite_set (range x_) ->
30093012
exists2 f : nat -> nat, increasing_seq f & cvgn (x_ \o f).
30103013
Proof.
3011-
move=> /finite_range_cst[x [A Aoo Ax_]].
3014+
move=> /finite_range_cst_subsequence[x [A Aoo Ax_]].
30123015
have /= [|f [fincr _ Af]] := infinite_increasing_seq_wf _ Aoo 0.
30133016
by move=> n; apply: sub_finite_set (finite_II n.+1) => m /=.
30143017
exists f => //=; suff -> : x_ \o f = fun=> x by apply: is_cvg_cst.
@@ -3024,7 +3027,7 @@ move=> bnd_u; set U := range u_.
30243027
have bndU : bounded_set U.
30253028
case: bnd_u => N [Nreal Nu_].
30263029
by exists N; split => // x /Nu_ {}Nu_ /= y [x0 _ <-]; exact: Nu_.
3027-
have [/finite_range_cvg//|infU] := pselect (finite_set U).
3030+
have [/finite_range_cvg_subsequence//|infU] := pselect (finite_set U).
30283031
have [/= l Ul] := infinite_bounded_limit_point_nonempty infU bndU.
30293032
have x_l := limit_point_cluster_eventually Ul.
30303033
have [+ _] := cluster_eventually_cvg u_ l.

0 commit comments

Comments
 (0)