|
1 | 1 | # Changelog
|
2 | 2 |
|
3 |
| -Latest releases: [[1.9.0] - 2025-02-20](#190---2025-02-20), [[1.8.0] - 2024-12-19](#180---2024-12-19), and [[1.7.0] - 2024-11-22](#170---2024-11-22) |
| 3 | +Latest releases: [[1.10.0] - 2025-04-21](#1100---2025-94-21), [[1.9.0] - 2025-02-20](#190---2025-02-20), and [[1.8.0] - 2024-12-19](#180---2024-12-19) |
| 4 | + |
| 5 | +## [1.10.0] - 2025-04-21 |
| 6 | + |
| 7 | +### Added |
| 8 | + |
| 9 | +- in `interval_inference.v`: |
| 10 | + + definitions `IntItv.exprz`, `Instances.natmul_itv` |
| 11 | + + lemmas `Instances.num_spec_exprz`, `Instances.nat_spec_factorial` |
| 12 | + + canonical instance `Instances.exprz_inum`, |
| 13 | + `Instances.factorial_inum` |
| 14 | + |
| 15 | +- new file `internal_Eqdep_dec.v` (don't use, internal, to be removed) |
| 16 | + |
| 17 | +- in `mathcomp_extra.v`: |
| 18 | + + lemmas `exprz_ge0` and `exprz_gt0` |
| 19 | + + lemmas `intrN`, `real_floor_itv`, `real_ge_floor`, `real_ceil_itv` |
| 20 | + + lemmas `truncn_le`, `real_truncnS_gt`, `truncn_ge_nat`, |
| 21 | + `truncn_gt_nat`, `truncn_lt_nat`, `real_truncn_le_nat`, |
| 22 | + `truncn_eq`, `le_truncn`, `real_floorD1_gt`, |
| 23 | + `real_floor_ge_int_tmp`, `real_floor_ge_int`, `real_floor_lt_int`, |
| 24 | + `le_floor`, `real_floor_eq`, `real_floor_ge0`, `floor_lt0`, |
| 25 | + `real_floor_le0`, `floor_gt0`, `floor_neq0`, |
| 26 | + `real_ceil_le_int_tmp`, `real_ceil_le_int`, `real_ceil_gt_int`, |
| 27 | + `real_ceil_eq`, `le_ceil_tmp`, `real_ceil_ge0`, `ceil_lt0`, |
| 28 | + `real_ceil_le0`, `ceil_gt0`, `ceil_neq0`, `truncS_gt`, |
| 29 | + `truncn_le_nat`, `floorD1_gt`, `floor_ge_int_tmp`, `floor_lt_int`, |
| 30 | + `floor_eq`, `floor_ge0`, `floor_le0`, `ceil_le_int`, |
| 31 | + `ceil_le_int_tmp`, `ceil_gt_int`, `ceil_eq`, `ceil_ge0`, |
| 32 | + `ceil_le0`, `natr_int` |
| 33 | + |
| 34 | +- in `set_interval.v`: |
| 35 | + + lemma `subset_itv` |
| 36 | + |
| 37 | +- file `Rstruct.v` |
| 38 | + + lemma `Pos_to_natE` (from `mathcomp_extra.v`) |
| 39 | + + lemmas `RabsE`, `RdistE`, `sum_f_R0E`, `factE` |
| 40 | + |
| 41 | +- in `Rstruct_topology.v`: |
| 42 | + + lemma `RexpE` |
| 43 | + |
| 44 | +- file `constructive_ereal.v`: |
| 45 | + + definition `iter_mule` |
| 46 | + + lemma `prodEFin` |
| 47 | + + lemmas `EFin_fin_numP`, `EFin_bigmax` |
| 48 | + |
| 49 | +- in `real_interval.v`: |
| 50 | + + lemma `itvNycEbigcap` |
| 51 | + |
| 52 | +- in `sequences.v`: |
| 53 | + + lemmas `nneseriesD1`, `geometric_ge0` |
| 54 | + |
| 55 | +- in `derive.v`: |
| 56 | + + lemmas `derive_shift`, `is_derive_shift` |
| 57 | + + lemma `near_eq_growth_rate` |
| 58 | + + lemmas `derive1Mr`, `derive1Ml` |
| 59 | + + lemmas `ger0_derive1_le`, `ger0_derive1_le_cc`, `ger0_derive1_le_co`, |
| 60 | + `ger0_derive1_le_oc`, `ger0_derive1_le_oo` |
| 61 | + + lemmas `gtr0_derive1_lt`, `gtr0_derive1_lt_cc`, `gtr0_derive1_lt_co`, |
| 62 | + `gtr0_derive1_lt_oc`, `gtr0_derive1_lt_oo` |
| 63 | + + lemmas `ler0_derive1_le`, `ler0_derive1_le_cc`, `ler0_derive1_le_co`, |
| 64 | + `ler0_derive1_le_oc`, `ler0_derive1_le_oo` |
| 65 | + + lemmas `ltr0_derive1_lt`, `ltr0_derive1_lt_cc`, `ltr0_derive1_lt_co`, |
| 66 | + `ltr0_derive1_lt_oc`, `ltr0_derive1_lt_oo` |
| 67 | + |
| 68 | +- file `exp.v`: |
| 69 | + + lemma `expR_sum` |
| 70 | + + lemmas `expR_le1`, `num_spec_expR`, `num_spec_powR` |
| 71 | + + definitions `expR_itv_boundl`, `expR_itv_boundr`, `expR_itv`, |
| 72 | + `powR_itv` |
| 73 | + + canonical instance `expR_inum`, `powR_inum` |
| 74 | + |
| 75 | +- in `trigo.v`: |
| 76 | + + lemma `integral0oo_atan` |
| 77 | + + lemmas `num_spec_sin`, `num_spec_cos` |
| 78 | + + canonical instances `sin_inum`, `cos_inum` |
| 79 | + |
| 80 | +- new directory `normedtype_theory` (that replaces `normedtype.v`) with new files: |
| 81 | + + `complete_normed_module.v` |
| 82 | + + `num_normedtype.v` |
| 83 | + + `ereal_normedtype.v` |
| 84 | + + `pseudometric_normed_Zmodule.v` |
| 85 | + + `matrix_normedtype.v` |
| 86 | + + `urysohn.v` |
| 87 | + + `normed_module.v` |
| 88 | + + `vitali_lemma.v` |
| 89 | + + `normedtype.v` |
| 90 | + |
| 91 | +- in `normed_module.v` (new file): |
| 92 | + + lemma `near0Z` |
| 93 | + |
| 94 | +- in `numfun.v`: |
| 95 | + + lemma `num_spec_indic` |
| 96 | + + canonical instance `indic_inum` |
| 97 | + + lemmas `indicC`, `indic_bigcup` |
| 98 | + + lemma `bounded_indic` |
| 99 | + |
| 100 | +- in `measure.v`: |
| 101 | + + lemmas `preimage_set_system0`, `preimage_set_systemU`, `preimage_set_system_comp` |
| 102 | + + lemma `preimage_set_system_id` |
| 103 | + + lemmas `measurable_fun_pair1`, `measurable_fun_pair2` |
| 104 | + |
| 105 | +- in `realfun.v`: |
| 106 | + + lemmas `cvge_pinftyP`, `nonincreasing_cvge` |
| 107 | + |
| 108 | +- new directory `lebesgue_integral_theory` with new files: |
| 109 | + + `simple_functions.v` |
| 110 | + + `lebesgue_integral_definition.v` |
| 111 | + + `lebesgue_integral_approximation.v` |
| 112 | + + `lebesgue_integral_monotone_convergence.v` |
| 113 | + + `lebesgue_integral_nonneg.v` |
| 114 | + + `lebesgue_integrable.v` |
| 115 | + + `lebesgue_integral_dominated_convergence.v` |
| 116 | + + `lebesgue_integral_under.v` |
| 117 | + + `lebesgue_Rintegral.v` |
| 118 | + + `lebesgue_integral_fubini.v` |
| 119 | + + `lebesgue_integral_differentiation.v` |
| 120 | + + `lebesgue_integral.v` |
| 121 | + |
| 122 | +- in `lebesgue_integral_approximation.v` (new file): |
| 123 | + + lemma `measurable_fun_le` |
| 124 | + |
| 125 | +- in `lebesgue_Rintegral.v` (new file): |
| 126 | + + lemma `RintegralD` |
| 127 | + |
| 128 | +- in `lebesgue_integrable.v` (new file): |
| 129 | + + lemma `integrable_indic_itv` |
| 130 | + |
| 131 | +- in `lebesgue_integral_dominated_convergence.v` (new file): |
| 132 | + + lemma `dominated_cvg` (was previously `Local`) |
| 133 | + |
| 134 | +- in `ftc.v`: |
| 135 | + + lemma `continuity_under_integral` |
| 136 | + |
| 137 | +- in `kernel.v`: |
| 138 | + + mixin `isSigmaFiniteTransitionKernel`, structure `SigmaFiniteTransitionKernel`, |
| 139 | + notations `sigma_finite_kernel`, `R .-sigmafker X ~> Y` |
| 140 | + + mixin `isFiniteTransition`, structure `FiniteTransitionKernel`, |
| 141 | + notations `finite_transition_kernel`, `R .-ftker X ~> Y` |
| 142 | + + lemmas `sprob_kernelP`, `sprob_kernel_le1` |
| 143 | + + definition `kfcomp`, lemmas `kfcompk1`, `kfcompkindic`, `measurable_kfcomp` |
| 144 | + + definitions `kproduct`, `kproduct_snd` |
| 145 | + + lemmas `measurable_kproduct`, `semi_sigma_additive_kproduct` |
| 146 | + + definition `mkproduct` |
| 147 | + + theorem `sigma_finite_mkproduct` |
| 148 | + + definition `kcomp_noparam` |
| 149 | + + lemma `kcomp_noparamE` |
| 150 | + + definition `mkcomp_noparam` |
| 151 | + + theorem `sprob_mkcomp_noparam` |
| 152 | + |
| 153 | +- in `probability.v`: |
| 154 | + + definition `cdf` |
| 155 | + + lemmas `cdf_ge0`, `cdf_le1`, `cdf_nondecreasing`, `cvg_cdfy1`, `cvg_cdfNy0`, `cdf_right_continuous` |
| 156 | + + definitions `normal_fun`, `normal_peak` |
| 157 | + + lemmas `measurable_normal_fun`, `normal_fun_ge0`, `normal_fun_center` |
| 158 | + + lemmas `normal_peak_ge0`, `normal_peak_gt0` |
| 159 | + + lemma `normal_pdfE` |
| 160 | + + lemma `normal_pdf_ge0`, `normal_pdf_ub` |
| 161 | + + lemma `integrable_normal_pdf` |
| 162 | + |
| 163 | +### Changed |
| 164 | + |
| 165 | +- in `interval_inference.v`: |
| 166 | + + definition `IntItv.exprn_le1_bound` |
| 167 | + + lemmas `Instances.nat_spec_succ`, `Instances.num_spec_natmul`, |
| 168 | + `Instances.num_spec_intmul`, `Instances.num_itv_bound_exprn_le1` |
| 169 | + + canonical instance `Instances.succn_inum` |
| 170 | + |
| 171 | +- file `nsatz_realtype.v` moved from `reals` to `reals-stdlib` package |
| 172 | + |
| 173 | +- in `classical_sets.v`: |
| 174 | + + change implicit arguments of `subsetT` |
| 175 | + |
| 176 | +- `topology.v` now exports `separation_axioms` |
| 177 | + |
| 178 | +- file `separation_axioms.v` moved from `theories` to `theories/topology_theory` |
| 179 | + |
| 180 | +- moved from `normedtype.v` (old file) to `num_topology.v` |
| 181 | + + lemmas `nbhsN`, `cvg_compNP`, `nbhsNimage`, `nearN`, `openN`, |
| 182 | + `closedN`, `dnbhsN`, `closure_sup`, `right_bounded_interior`, `left_bounded_interior`, |
| 183 | + `withinN` |
| 184 | + |
| 185 | +- the contents of `normedtype.v` (old file) can be found in the files in directory |
| 186 | + `normed_theory` unless stated otherwise |
| 187 | + |
| 188 | +- in `filter.v`: |
| 189 | + + change implicit arguments of `cvg_comp` |
| 190 | + |
| 191 | +- moved from `gauss_integral` to `trigo.v`: |
| 192 | + + `oneDsqr`, `oneDsqr_ge1`, `oneDsqr_inum`, `oneDsqrV_le1`, |
| 193 | + `continuous_oneDsqr`, `continuous_oneDsqr` |
| 194 | + |
| 195 | +- moved, generalized, and renamed from `gauss_integral` to `trigo.v`: |
| 196 | + + `integral01_oneDsqr` -> `integral0_oneDsqr` |
| 197 | + |
| 198 | +- in `lebesgue_Rintegral.v` (new file): |
| 199 | + + `le_normr_integral` renamed to `le_normr_Rintegral` |
| 200 | + |
| 201 | +- moved to `lebesgue_measure.v` (from old `lebesgue_integral.v`) |
| 202 | + + `compact_finite_measure` |
| 203 | + |
| 204 | +- moved from `ftc.v` to `lebesgue_integral_under.v` (new file): |
| 205 | + + notation `'d1`, definition `partial1of2`, lemmas `partial1of2E`, |
| 206 | + `cvg_differentiation_under_integral`, `differentiation_under_integral`, |
| 207 | + `derivable_under_integral` |
| 208 | + |
| 209 | +- in `probability.v`: |
| 210 | + + definition `normal_pdf` changed to use `normal_fun` and `normal_peak` |
| 211 | + |
| 212 | +### Renamed |
| 213 | + |
| 214 | +- in `mathcomp_extra.v` |
| 215 | + + `comparable_min_le_min` -> `comparable_le_min2` |
| 216 | + + `comparable_max_le_max` -> `comparable_le_max2` |
| 217 | + + `min_le_min` -> `le_min2` |
| 218 | + + `max_le_max` -> `le_max2` |
| 219 | + + `real_sqrtC` -> `sqrtC_real` |
| 220 | + |
| 221 | +- in `boolp.v`: |
| 222 | + + `eq_fun2` -> `eq2_fun` |
| 223 | + + `eq_fun3` -> `eq3_fun` |
| 224 | + + `eq_forall2` -> `eq2_forall` |
| 225 | + + `eq_forall3` -> `eq3_forall` |
| 226 | + |
| 227 | +- in `set_interval.v`: |
| 228 | + + `set_itv_infty_infty` -> `set_itvNyy` |
| 229 | + + `set_itv_o_infty` -> `set_itvoy` |
| 230 | + + `set_itv_c_infty` -> `set_itvcy` |
| 231 | + + `set_itv_infty_o` -> `set_itvNyo` |
| 232 | + + `set_itv_infty_c` -> `set_itvNyc` |
| 233 | + + `set_itv_pinfty_bnd` -> `set_itv_ybnd` |
| 234 | + + `set_itv_bnd_ninfty` -> `set_itv_bndNy` |
| 235 | + |
| 236 | +- in `real_interval.v`: |
| 237 | + + `itv_c_inftyEbigcap` -> `itvcyEbigcap` |
| 238 | + + `itv_bnd_inftyEbigcup` -> `itvbndyEbigcup` |
| 239 | + + `itv_o_inftyEbigcup` -> `itvoyEbigcup` |
| 240 | + |
| 241 | +- in `normed_module.v` (new file): |
| 242 | + + `cvgeMl` -> `cvgeZl` |
| 243 | + + `is_cvgeMl` -> `is_cvgeZl` |
| 244 | + + `cvgeMr` -> `cvgeZr` |
| 245 | + + `is_cvgeMr` -> `is_cvgeZr` |
| 246 | + |
| 247 | +- in `measure.v`: |
| 248 | + + `measurable_fun_prod` -> `measurable_fun_pair` |
| 249 | + + `prod_measurable_funP` -> `measurable_fun_pairP` |
| 250 | + + `measurable_pair1` -> `pair1_measurable` |
| 251 | + + `measurable_pair2` -> `pair2_measurable` |
| 252 | + |
| 253 | +- in `lebesgue_integral_fubini.v` (new file): |
| 254 | + + `fubini1a` -> `integrable12ltyP` |
| 255 | + + `fubini1b` -> `integrable21ltyP` |
| 256 | + |
| 257 | +- in `simple_functions.v` (new file): |
| 258 | + + `measurable_funP` -> `measurable_funPT` (field of `isMeasurableFun` mixin) |
| 259 | + |
| 260 | +- in `kernel.v`: |
| 261 | + + `Kernel_isSFinite_subdef` -> `isSFiniteKernel_subdef` |
| 262 | + + `SFiniteKernel_isFinite` -> `isMeasureFamUub` |
| 263 | + + `FiniteKernel_isSubProbability` -> `isSubProbabilityKernel` |
| 264 | + + `SubProbability_isProbability` -> `isProbabilityKernel` |
| 265 | + |
| 266 | +### Generalized |
| 267 | + |
| 268 | +- in `constructive_ereal.v`: |
| 269 | + + lemma `EFin_natmul` |
| 270 | + |
| 271 | +- in `real_interval.v`: |
| 272 | + + lemmas `bigcup_itvT`, `itv_bndy_bigcup_BRight`, `itv_bndy_bigcup_BLeft_shift` |
| 273 | + |
| 274 | +- in `sequences.v`: |
| 275 | + + lemma `nneseries_recl` genralized with a filtering predicate `P` |
| 276 | + |
| 277 | +- in `pseudometric_normed_Zmodule.v` (new file): |
| 278 | + + generalized from `normedModType` to `pseudoMetricNormedZmodType`: |
| 279 | + * lemmas `cvgr_norm_lty`, `cvgr_norm_ley`, `cvgr_norm_gtNy`, |
| 280 | + `cvgr_norm_geNy`, `cvg_bounded` |
| 281 | + |
| 282 | +- in `num_normedtype.v` (new file): |
| 283 | + + lemmas `gt0_cvgMlNy`, `gt0_cvgMly` |
| 284 | + |
| 285 | +- in `ereal_normedtype.v` (new file): |
| 286 | + + `lower_semicontinuous`, `lower_semicontinuousP` generalized from `realType` to `numFieldType` |
| 287 | + |
| 288 | +- in `lebesgue_integral.v` |
| 289 | + + lemmas `measurable_funP`, `ge0_integral_pushforward`, |
| 290 | + `integrable_pushforward`, `integral_pushforward` |
| 291 | + |
| 292 | +### Deprecated |
| 293 | + |
| 294 | +- in `normedtype.v` (old file): |
| 295 | + + `pseudoMetricNormedZModType_hausdorff` (use `norm_hausdorff` instead) |
| 296 | + |
| 297 | +- in `derive.v`: |
| 298 | + + `ler0_derive1_nincr` (use `ler0_derive1_le_cc` instead) |
| 299 | + + `gtr0_derive1_incr` (use `gtr0_le_derive1` instead) |
| 300 | + |
| 301 | +### Removed |
| 302 | + |
| 303 | +- file `mathcomp_extra.v` |
| 304 | + + lemma `Pos_to_natE` (moved to `Rstruct.v`) |
| 305 | + + lemma `deg_le2_ge0` (available as `deg_le2_poly_ge0` in `ssrnum.v` |
| 306 | + since MathComp 2.1.0) |
| 307 | + + definitions `monotonous`, `boxed`, `onem`, `inv_fun`, |
| 308 | + `bound_side`, `swap`, `prodA`, `prodAr`, `map_pair`, `sigT_fun` |
| 309 | + (moved to new file `unstable.v` that shouldn't be used outside of |
| 310 | + Analysis) |
| 311 | + + notations `` `1 - r ``, `f \^-1` (moved to new file `unstable.v` |
| 312 | + that shouldn't be used outside of Analysis) |
| 313 | + + lemmas `dependent_choice_Type`, `maxr_absE`, `minr_absE`, |
| 314 | + `le_bigmax_seq`, `bigmax_sup_seq`, `leq_ltn_expn`, `last_filterP`, |
| 315 | + `path_lt_filter0`, `path_lt_filterT`, `path_lt_head`, |
| 316 | + `path_lt_last_filter`, `path_lt_le_last`, `sumr_le0`, |
| 317 | + `fset_nat_maximum`, `image_nat_maximum`, `card_fset_sum1`, |
| 318 | + `onem0`, `onem1`, `onemK`, `add_onemK`, `onem_gt0`, `onem_ge0`, |
| 319 | + `onem_le1`, `onem_lt1`, `onemX_ge0`, `onemX_lt1`, `onemD`, |
| 320 | + `onemMr`, `onemM`, `onemV`, `lez_abs2`, `ler_gtP`, `ler_ltP`, |
| 321 | + `real_ltr_distlC`, `prodAK`, `prodArK`, `swapK`, `lt_min_lt`, |
| 322 | + `intrD1`, `intr1D`, `floor_lt_int`, `floor_ge0`, `floor_le0`, |
| 323 | + `floor_lt0`, `floor_eq`, `floor_neq0`, `ceil_gt_int`, `ceil_ge0`, |
| 324 | + `ceil_gt0`, `ceil_le0`, `abs_ceil_ge`, `nat_int`, `bij_forall`, |
| 325 | + `and_prop_in`, `mem_inc_segment`, `mem_dec_segment`, |
| 326 | + `partition_disjoint_bigfcup`, `partition_disjoint_bigfcup`, |
| 327 | + `prodr_ile1`, `size_filter_gt0`, `ltr_sum`, `ltr_sum_nat` (moved |
| 328 | + to new file `unstable.v` that shouldn't be used outside of |
| 329 | + Analysis) |
| 330 | + |
| 331 | +- in `classical_sets.v`: |
| 332 | + + notations `setvI`, `setIv`, `bigcup_set`, `bigcup_set_cond`, `bigcap_set`, |
| 333 | + `bigcap_set_cond` |
| 334 | + |
| 335 | +- in `filter.v`: |
| 336 | + + definition `at_point` (redundant with `principal_filter`) |
| 337 | + |
| 338 | +- in `reals.v`: |
| 339 | + + lemmas `floor_le`, `le_floor` (deprecated since 1.3.0) |
| 340 | + |
| 341 | +- in `measure.v`: |
| 342 | + + notations `measurable_fun_fst`, `measurable_fun_snd`, `measurable_fun_swap` |
| 343 | + (deprecated since 0.6.3) |
| 344 | + |
| 345 | +- file `lebesgue_integral.v` (split in several files in the directory |
| 346 | + `lebesgue_integral_theory`) |
| 347 | + |
| 348 | +- file `normedtype.v` (split in several files in the directory |
| 349 | + `normed_theory`) |
4 | 350 |
|
5 | 351 | ## [1.9.0] - 2025-02-20
|
6 | 352 |
|
|
0 commit comments