Skip to content

Commit 8715181

Browse files
authored
Merge pull request #1721 from proux01/mc1469
Adapt to math-comp/math-comp#1469
2 parents a645da6 + 6e847f5 commit 8715181

16 files changed

Lines changed: 35 additions & 2413 deletions

.github/workflows/nix-action-8.20-2.3.0.yml

Lines changed: 0 additions & 713 deletions
This file was deleted.

.nix/config.nix

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,6 @@ in {
5252
## When generating GitHub Action CI, one workflow file
5353
## will be created per bundle
5454

55-
bundles."8.20-2.3.0".coqPackages = common-bundle // {
56-
coq.override.version = "8.20";
57-
mathcomp.override.version = "2.3.0";
58-
};
59-
6055
bundles."8.20-2.4.0".coqPackages = common-bundle // {
6156
coq.override.version = "8.20";
6257
mathcomp.override.version = "2.4.0";

CHANGELOG_UNRELEASED.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,11 @@
8080

8181
### Removed
8282

83+
- file `interval_inference.v` (now in MathComp)
84+
85+
- in file `all_reals.v`
86+
+ export of `interval_inference` (now in mathcomp-algebra, but not automatically exported)
87+
8388
### Infrastructure
8489

8590
### Misc

INSTALL.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## Requirements
44

55
- [The Coq Proof Assistant version ≥ 8.20 / Rocq Prover version ≥ 9.0](https://rocq-prover.org)
6-
- [Mathematical Components version ≥ 2.3.0](https://github.com/math-comp/math-comp)
6+
- [Mathematical Components version ≥ 2.4.0](https://github.com/math-comp/math-comp)
77
- [Finmap library version ≥ 2.1.0](https://github.com/math-comp/finmap)
88
- [Hierarchy builder version ≥ 1.8.0](https://github.com/math-comp/hierarchy-builder)
99
- [bigenough ≥ 1.0.0](https://github.com/math-comp/bigenough)
@@ -73,7 +73,7 @@ using [proof general for emacs](https://github.com/ProofGeneral/PG)
7373

7474
## Break-down of phase 3 of the installation procedure step by step
7575

76-
With the example of Coq 8.20.1 and MathComp 2.3.0. For other versions, update the
76+
With the example of Coq 8.20.1 and MathComp 2.4.0. For other versions, update the
7777
version numbers accordingly.
7878

7979
1. Install Coq 8.20.1
@@ -82,11 +82,11 @@ $ opam install coq.8.20.1
8282
```
8383
2. Install the Mathematical Components
8484
```
85-
$ opam install coq-mathcomp-ssreflect.2.3.0
86-
$ opam install coq-mathcomp-fingroup.2.3.0
87-
$ opam install coq-mathcomp-algebra.2.3.0
88-
$ opam install coq-mathcomp-solvable.2.3.0
89-
$ opam install coq-mathcomp-field.2.3.0
85+
$ opam install coq-mathcomp-ssreflect.2.4.0
86+
$ opam install coq-mathcomp-fingroup.2.4.0
87+
$ opam install coq-mathcomp-algebra.2.4.0
88+
$ opam install coq-mathcomp-solvable.2.4.0
89+
$ opam install coq-mathcomp-field.2.4.0
9090
```
9191
3. Install the Finite maps library
9292
```

Makefile.common

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -45,25 +45,6 @@ all: config build
4545
.PHONY: pre-makefile
4646

4747
Makefile.coq: pre-makefile $(COQPROJECT) Makefile
48-
(echo "From mathcomp.algebra Require Import interval_inference." > test_interval_inference.v \
49-
&& ($(COQC) test_interval_inference.v > /dev/null 2>&1) \
50-
&& test -f interval_inference.v -o -f reals/interval_inference.v \
51-
&& touch rm_interval_inference) || true
52-
$(RM) test_interval_inference.v
53-
test -f rm_interval_inference \
54-
&& sed -i.bak '/interval_inference/ d' $(COQPROJECT) \
55-
&& $(RM) $(COQPROJECT).bak || true
56-
test -f rm_interval_inference \
57-
&& sed -i.bak '/interval_inference/ d' all_reals.v \
58-
&& $(RM) all_reals.v.bak || true
59-
test -f rm_interval_inference \
60-
&& sed -i.bak '/interval_inference/ d' reals/all_reals.v \
61-
&& $(RM) reals/all_reals.v.bak || true
62-
test -f rm_interval_inference && $(RM) interval_inference.v || true
63-
test -f rm_interval_inference && $(RM) reals/interval_inference.v || true
64-
$(RM) rm_interval_inference
65-
# Remove everything above when requiring mathcomp >= 2.4.0
66-
# (also remove file reals/interval_inference.v and references to it)
6748
$(COQMAKEFILE) $(COQMAKEFILEOPTIONS) -f $(COQPROJECT) -o Makefile.coq
6849

6950
# Global config, build, clean and distclean --------------------------
@@ -142,6 +123,5 @@ html: build $(DOCDIR)/dependency_graph.dot
142123
-hierarchy-graph $(DOCDIR)/hierarchy_graph.dot \
143124
-index-blacklist etc/rocqnavi_index-blacklist \
144125
-show-type-information-using-coqtop-process \
145-
-external https://math-comp.github.io/htmldoc_2_3_0/ mathcomp.ssreflect \
146-
-external https://math-comp.github.io/htmldoc_2_3_0/ mathcomp.algebra
147-
126+
-external https://math-comp.github.io/htmldoc_2_4_0/ mathcomp.ssreflect \
127+
-external https://math-comp.github.io/htmldoc_2_4_0/ mathcomp.algebra

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@ In terms of [opam](https://opam.ocaml.org/doc/Install.html), it comes as the fol
2626
- License: [CeCILL-C](LICENSE)
2727
- Compatible Rocq versions: Coq 8.20, Rocq 9.0 (or dev)
2828
- Additional dependencies:
29-
- [MathComp ssreflect 2.3.0 or later](https://math-comp.github.io)
30-
- [MathComp fingroup 2.3.0 or later](https://math-comp.github.io)
31-
- [MathComp algebra 2.3.0 or later](https://math-comp.github.io)
32-
- [MathComp solvable 2.3.0 or later](https://math-comp.github.io)
33-
- [MathComp field 2.3.0 or later](https://math-comp.github.io)
29+
- [MathComp ssreflect 2.4.0 or later](https://math-comp.github.io)
30+
- [MathComp fingroup 2.4.0 or later](https://math-comp.github.io)
31+
- [MathComp algebra 2.4.0 or later](https://math-comp.github.io)
32+
- [MathComp solvable 2.4.0 or later](https://math-comp.github.io)
33+
- [MathComp field 2.4.0 or later](https://math-comp.github.io)
3434
- [MathComp finmap 2.1.0](https://github.com/math-comp/finmap)
3535
- [MathComp bigenough 1.0.0](https://github.com/math-comp/bigenough)
3636
- [Hierarchy Builder 1.8.0 or later](https://github.com/math-comp/hierarchy-builder)

_CoqProject

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ reals/constructive_ereal.v
3030
reals/reals.v
3131
reals/real_interval.v
3232
reals/signed.v
33-
reals/interval_inference.v
3433
reals/prodnormedzmodule.v
3534
reals/all_reals.v
3635
experimental_reals/xfinmap.v

classical/mathcomp_extra.v

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -147,22 +147,22 @@ Context {R : archiDomainType}.
147147
Implicit Type x : R.
148148

149149
Lemma ge_floor x : (Num.floor x)%:~R <= x.
150-
Proof. exact: Num.Theory.ge_floor. Qed.
150+
Proof. exact: Num.Theory.floor_le_tmp. Qed.
151151

152152
#[deprecated(since="mathcomp 2.4.0", note="Use floor_ge_int_tmp instead.")]
153153
Lemma floor_ge_int x (z : int) : (z%:~R <= x) = (z <= Num.floor x).
154-
Proof. exact: Num.Theory.floor_ge_int. Qed.
154+
Proof. by rewrite floor_ge_int_tmp. Qed.
155155

156156
Lemma lt_succ_floor x : x < (Num.floor x + 1)%:~R.
157157
Proof. exact: Num.Theory.lt_succ_floor. Qed.
158158

159159
#[deprecated(since="mathcomp-analysis 1.3.0", note="use `Num.Theory.le_ceil` instead")]
160160
Lemma ceil_ge x : x <= (Num.ceil x)%:~R.
161-
Proof. exact: Num.Theory.le_ceil. Qed.
161+
Proof. exact: Num.Theory.ceil_ge. Qed.
162162

163163
#[deprecated(since="mathcomp-analysis 1.3.0", note="use `Num.Theory.ceil_le_int`")]
164164
Lemma ceil_ge_int x (z : int) : (x <= z%:~R) = (Num.ceil x <= z).
165-
Proof. exact: Num.Theory.ceil_le_int. Qed.
165+
Proof. by rewrite Num.Theory.ceil_le_int_tmp. Qed.
166166

167167
Lemma ceilN x : Num.ceil (- x) = - Num.floor x.
168168
Proof. by rewrite ?ceilNfloor /Num.ceil opprK. Qed.
@@ -331,7 +331,7 @@ by move=> ?; rewrite [RHS]real_ltNge ?realz -?real_floor_ge_int_tmp -?ltNge.
331331
Qed.
332332

333333
Lemma le_floor : {homo (@Num.floor R) : x y / x <= y}.
334-
Proof. exact: floor_le. Qed.
334+
Proof. exact: le_floor. Qed.
335335

336336
Lemma real_floor_eq x n : x \is Num.real ->
337337
(Num.floor x == n) = (n%:~R <= x < (n + 1)%:~R).
@@ -392,7 +392,7 @@ by move=> xr; apply/eqP/idP => [<-|]; [exact: real_ceil_itv|exact: ceil_def].
392392
Qed.
393393

394394
Lemma le_ceil_tmp : {homo (@Num.ceil R) : x y / x <= y}.
395-
Proof. exact: ceil_le. Qed.
395+
Proof. exact: le_ceil_tmp. Qed.
396396

397397
Lemma real_ceil_ge0 x : x \is Num.real -> (0 <= Num.ceil x) = (-1 < x).
398398
Proof.

classical/unstable.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ Implicit Type x : R.
363363
Lemma abs_ceil_ge x : `|x| <= `|Num.ceil x|.+1%:R.
364364
Proof.
365365
rewrite -natr1 natr_absz; have [x0|x0] := ltP 0 x.
366-
by rewrite !gtr0_norm ?ceil_gt0// (le_trans (Num.Theory.le_ceil _))// lerDl.
366+
by rewrite !gtr0_norm ?ceil_gt0// (le_trans (Num.Theory.ceil_ge _))// lerDl.
367367
by rewrite !ler0_norm ?ceil_le0// ?ceilNfloor opprK intrD1 ltW// floorD1_gt.
368368
Qed.
369369

coq-mathcomp-classical.opam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ install: [make "-C" "classical" "install"]
1717
depends: [
1818
("coq" {>= "8.20" & < "8.21~"}
1919
| "coq-core" { (>= "9.0" & < "9.1~") | (= "dev") })
20-
"coq-mathcomp-ssreflect" { (>= "2.3.0" & < "2.5~") | (= "dev") }
20+
"coq-mathcomp-ssreflect" { (>= "2.4.0" & < "2.5~") | (= "dev") }
2121
"coq-mathcomp-fingroup"
2222
"coq-mathcomp-algebra"
2323
"coq-mathcomp-finmap" { (>= "2.1.0") }

0 commit comments

Comments
 (0)