Skip to content

Commit 565c705

Browse files
committed
changelog and linting
1 parent 2eb9e2a commit 565c705

File tree

2 files changed

+57
-36
lines changed

2 files changed

+57
-36
lines changed

CHANGELOG_UNRELEASED.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,36 @@
99
+ lemmas `fine_le`, `fine_lt`, `fine_abse`, `abse_fin_num`
1010
- in `lebesgue_integral.v`
1111
+ lemmas `integral_fune_lt_pinfty`, `integral_fune_fin_num`
12+
- in `topology.v`:
13+
+ lemmas `continuous_subspace0`, `continuous_subspace1`
14+
15+
- in `realfun.v`:
16+
+ Instance for `GRing.opp` over real intervals
1217

1318
### Changed
19+
- in `realfun.v`
20+
+ lemmas `itv_continuous_inj_le`, `itv_continuous_inj_ge`,
21+
`itv_continuous_inj_mono`, `segment_continuous_inj_le`,
22+
`segment_continuous_inj_ge`, `segment_can_le` ,
23+
`segment_can_ge`, `segment_can_mono`,
24+
`segment_continuous_surjective`, `segment_continuous_le_surjective`,
25+
`segment_continuous_ge_surjective`, `continuous_inj_image_segment`,
26+
`continuous_inj_image_segmentP`, `segment_continuous_can_sym`,
27+
`segment_continuous_le_can_sym`, `segment_continuous_ge_can_sym`,
28+
`segment_inc_surj_continuous`, `segment_dec_surj_continuous`,
29+
`segment_mono_surj_continuous`, `segment_can_le_continuous`,
30+
`segment_can_ge_continuous`, `segment_can_continuous`
31+
all have "{in I, continuous f}" replaced by "{within I, continuous f}"
32+
1433

1534
### Renamed
1635

1736
- in `topology.v`:
1837
+ renamed `continuous_subspaceT` to `continuous_in_subspaceT`
1938

2039
### Removed
40+
- in `realFun.v`:
41+
+ removed `continuous_subspace_itv`
2142

2243
### Infrastructure
2344

theories/realfun.v

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,14 @@ gen have fxy : f / {in I &, injective f} ->
3636
{in I &, forall x y, x < y -> f x != f y}.
3737
move=> fI x y xI yI xLy; apply/negP => /eqP /fI => /(_ xI yI) xy.
3838
by move: xLy; rewrite xy ltxx.
39-
gen have main : f / forall c, {within [set` I], continuous f} -> {in I &, injective f} ->
39+
gen have main : f / forall c, {within [set` I], continuous f} ->
40+
{in I &, injective f} ->
4041
{in I &, forall a b, f a < f b -> a < c -> c < b -> f a < f c /\ f c < f b}.
4142
move=> c fC fI a b aI bI faLfb aLc cLb.
4243
have intP := interval_is_interval aI bI.
4344
have cI : c \in I by rewrite intP// (ltW aLc) ltW.
4445
have ctsACf : {within `[a, c], continuous f}.
45-
apply: (continuous_subspaceW _ fC) => x /=; rewrite inE => /itvP axc.
46+
apply: (continuous_subspaceW _ fC) => x; rewrite /= inE => /itvP axc.
4647
by rewrite intP// axc/= (le_trans _ (ltW cLb))// axc.
4748
have ctsCBf : {within `[c, b], continuous f}.
4849
apply: (continuous_subspaceW _ fC) => x /=; rewrite inE => /itvP axc.
@@ -80,7 +81,7 @@ have aux a c b : a \in I -> b \in I -> a < c -> c < b ->
8081
have fanfb : f a != f b by apply: (fxy f fI).
8182
have decr : f b < f a -> f b < f c /\ f c < f a.
8283
have ofC : {within [set` I], continuous (-f)}.
83-
move=> x; apply: continuous_comp; [exact: fC | exact: continuousN].
84+
move=> ?; apply: continuous_comp; [exact: fC | exact: continuousN].
8485
have ofI : {in I &, injective (-f)} by move=>> ? ? /oppr_inj/fI ->.
8586
rewrite -[X in X < _ -> _](opprK (f b)) ltr_oppl => ofaLofb.
8687
have := main _ c ofC ofI a b aI bI ofaLofb aLc cLb.
@@ -194,11 +195,10 @@ Lemma segment_can_ge a b f g : a <= b ->
194195
{in `[f b, f a] &, {mono g : x y /~ x <= y}}.
195196
Proof.
196197
move=> aLb fC fK x y xfbfa yfbfa; rewrite -ler_opp2.
197-
apply: (@segment_can_le (- b) (- a) (f \o -%R) (- g));
198-
rewrite /= ?ler_opp2 ?opprK//.
199-
pose fun_neg : (subspace `[-b,-a] -> subspace `[a,b]) :=
200-
([fun of @GRing.opp R] : {fun `[-b,-a] >-> `[a,b]}).
201-
move=> z; apply: (@continuous_comp _ _ _ fun_neg); last exact: fC.
198+
apply: (@segment_can_le (- b) (- a) (f \o -%R) (- g));
199+
rewrite /= ?ler_opp2 ?opprK //.
200+
pose fun_neg : (subspace `[-b,-a] -> subspace `[a,b]) := @GRing.opp R.
201+
move=> z; apply: (@continuous_comp _ _ _ [fun of fun_neg]); last exact: fC.
202202
exact/subspaceT_continuous/continuous_subspaceT/opp_continuous.
203203
by move=> z zab; rewrite -[- g]/(@GRing.opp _ \o g)/= fK ?opprK// oppr_itvcc.
204204
Qed.
@@ -286,17 +286,17 @@ Lemma segment_inc_surj_continuous a b f :
286286
Proof.
287287
move=> fle f_surj; have [f_inj flt] := (inc_inj_in fle, leW_mono_in fle).
288288
have [aLb|bLa|] := ltgtP a b; first last.
289-
- move=> ->.
290-
rewrite (_ : (`[b,b])%classic = [set b]); first exact: continuous_subspace1.
291-
rewrite eqEsubset; split=>z /=; rewrite itvxx; first by move=> ?; apply/eqP.
289+
- move=> ->; rewrite (_ : (`[b,b])%classic = [set b]).
290+
exact: continuous_subspace1.
291+
rewrite eqEsubset; split => z; rewrite /= itvxx.
292+
by move=> ?; apply/eqP.
292293
by move=>/eqP.
293294
- rewrite continuous_subspace_in => z /set_mem /=; rewrite in_itv /=.
294295
by move=> /andP [az zb]; move: (le_trans az zb) bLa; rewrite ltNge => ->.
295296
have le_ab : a <= b by rewrite ltW.
296297
have [aab bab] : a \in `[a, b] /\ b \in `[a, b] by rewrite !bound_itvE ltW.
297298
have fab : f @` `[a, b] = `[f a, f b]%classic by exact:inc_surj_image_segment.
298-
pose g := pinv `[a, b] f.
299-
have fK : {in `[a, b], cancel f g}.
299+
pose g := pinv `[a, b] f; have fK : {in `[a, b], cancel f g}.
300300
by rewrite -[mem _]mem_setE; apply: pinvKV; rewrite !mem_setE.
301301
have gK : {in `[f a, f b], cancel g f} by move=> z zab; rewrite pinvK// fab inE.
302302
have gle : {in `[f a, f b] &, {mono g : x y / x <= y}}.
@@ -308,23 +308,23 @@ rewrite continuous_subspace_in; move=> x xab.
308308
have xabcc : x \in `[a, b] by move: xab; rewrite mem_setE.
309309
have fxab : f x \in `[(f a), (f b)] by rewrite in_itv/= !fle.
310310
have fxabcc : f x \in `[f a, f b] by apply: subset_itv.
311-
move: (xabcc); rewrite in_itv //= => /andP [ax xb].
311+
move: (xabcc); rewrite in_itv //= => /andP [ax xb].
312312
apply/cvg_distP => _ /posnumP[e]; rewrite !near_simpl; near=> y.
313313
rewrite (@le_lt_trans _ _ (e%:num / 2%:R))//; last first.
314314
by rewrite ltr_pdivr_mulr// ltr_pmulr// ltr1n.
315315
rewrite ler_distlC; near: y.
316316
pose u := minr (f x + e%:num / 2) (f b).
317317
pose l := maxr (f x - e%:num / 2) (f a).
318318
have ufab : u \in `[f a, f b].
319-
rewrite !in_itv/= le_minl ?le_minr lexx ?fle// le_ab orbT ?andbT.
320-
by rewrite ler_paddr// fle // ?(itvP xabcc).
319+
rewrite !in_itv /= le_minl ?le_minr lexx ?fle // le_ab orbT ?andbT.
320+
by rewrite ler_paddr // fle.
321321
have lfab : l \in `[f a, f b].
322-
rewrite !in_itv/= le_maxl ?le_maxr lexx ?fle// le_ab orbT ?andbT/=.
323-
by rewrite ler_subl_addr ler_paddr// fle ?(itvP xabcc)// lexx.
322+
rewrite !in_itv/= le_maxl ?le_maxr lexx ?fle// le_ab orbT ?andbT.
323+
by rewrite ler_subl_addr ler_paddr// fle // lexx.
324324
have guab : g u \in `[a, b].
325-
rewrite !in_itv; apply/andP; split; move: (ufab); rewrite in_itv /= => /andP.
326-
by case; rewrite -gle // ?fK // bound_itvE fle.
327-
by case => _; rewrite -gle // ?fK // bound_itvE fle.
325+
rewrite !in_itv; apply/andP; split; move: (ufab); rewrite in_itv => /andP.
326+
by case; rewrite /= -gle // ?fK // bound_itvE fle.
327+
by case => _; rewrite /= -gle // ?fK // bound_itvE fle.
328328
have glab : g l \in `[a, b].
329329
rewrite !in_itv; apply/andP; split; move: (lfab); rewrite in_itv /= => /andP.
330330
by case; rewrite -gle // ?fK // bound_itvE fle.
@@ -340,30 +340,31 @@ have lltfb : l < f b.
340340
case: pselect => // _; rewrite near_withinE; near_simpl.
341341
move: (ax); rewrite le_eqVlt => /orP [].
342342
rewrite eq_sym=> /eqP ? ; subst.
343-
near=> y => /[dup] yab; rewrite /= in_itv /= => /andP [ay yb].
344-
apply/andP;split.
345-
by apply (@le_trans _ _ (f a)); rewrite ?fle //ler_subl_addr; exact: ler_paddr.
343+
near=> y => /[dup] yab; rewrite /= in_itv => /andP [? ?]; apply/andP; split.
344+
apply (@le_trans _ _ (f a)); rewrite ?fle // ler_subl_addr.
345+
exact: ler_paddr.
346346
apply: ltW; suff : f y < u by rewrite lt_minr => /andP[->].
347-
rewrite -?[f y < _]glt // ?fK //; first last.
348-
by rewrite in_itv /=; apply/andP; split; rewrite fle.
349-
by near: y; near_simpl; apply: open_lt; rewrite /= -flt // ?gK.
347+
rewrite -?[f y < _]glt // ?fK //.
348+
by near: y; near_simpl; apply: open_lt; rewrite /= -flt // ?gK.
349+
by rewrite in_itv /=; apply/andP; split; rewrite fle.
350350
move: (xb); rewrite le_eqVlt => /orP [].
351-
move=> /eqP ?; subst => _.
352-
near=> y => /[dup] yab; rewrite /= in_itv /= => /andP [ay yb].
351+
move=> /eqP ?; subst => _.
352+
near=> y => /[dup] yab; rewrite /= in_itv /= => /andP [? ?].
353353
apply/andP;split; first last.
354354
by apply (@le_trans _ _ (f b)); rewrite ?fle //; exact: ler_paddr.
355355
apply: ltW; suff : l < f y by rewrite lt_maxl => /andP[->].
356-
rewrite -?[_ < f y]glt // ?fK //; first last.
357-
by rewrite in_itv /=; apply/andP; split; rewrite fle.
358-
near: y; near_simpl; apply: open_gt; rewrite /= -flt // ?gK //.
356+
rewrite -?[_ < f y]glt // ?fK //.
357+
by near: y; near_simpl; apply: open_gt; rewrite /= -flt // ?gK //.
358+
by rewrite in_itv /=; apply/andP; split; rewrite fle.
359359
move=> ? ?; have xoab : x \in `]a, b[ by rewrite in_itv /=; apply/andP; split.
360-
near=> y; suff: l <= f y <= u by rewrite le_maxl le_minr -!andbA => /and4P[-> _ ->].
361-
have yab : y \in `[a, b] by apply: subset_itv_oo_cc; near: y; apply: near_in_itv.
360+
near=> y; suff: l <= f y <= u.
361+
by rewrite le_maxl le_minr -!andbA => /and4P[-> _ ->].
362+
have ? : y \in `[a, b] by apply: subset_itv_oo_cc; near: y; apply: near_in_itv.
362363
have fyab : f y \in `[f a, f b] by rewrite in_itv/= !fle// ?ltW.
363364
rewrite -[l <= _]gle -?[_ <= u]gle// ?fK //.
364365
apply: subset_itv_oo_cc; near: y; apply: near_in_itv; rewrite in_itv /=.
365366
rewrite -[x]fK // !glt//= lt_minr lt_maxl ?andbT ltr_subl_addr ltr_spaddr //.
366-
by apply/and3P; (split => //; last by rewrite flt); apply/andP; split; rewrite // flt.
367+
by apply/and3P; split; rewrite // flt.
367368
Unshelve. all: by end_near. Qed.
368369

369370
Lemma segment_dec_surj_continuous a b f :
@@ -392,7 +393,6 @@ have fafb : f b <= f a by rewrite fge // ?bound_itvE.
392393
by apply: segment_dec_surj_continuous => //; case: ltrP f_surj fafb.
393394
Qed.
394395

395-
396396
Lemma segment_can_le_continuous a b f g : a <= b ->
397397
{within `[a, b], continuous f} ->
398398
{in `[a, b], cancel f g} ->

0 commit comments

Comments
 (0)