Skip to content

Commit 71e5c38

Browse files
committed
documentation changes, adding grobner
1 parent a697185 commit 71e5c38

File tree

3 files changed

+57
-29
lines changed

3 files changed

+57
-29
lines changed

README.md

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ Follow the instructions on https://github.com/coq-community/templates to regener
2323

2424

2525

26-
This Coq library contains a subset of the work that was developed in the context
27-
of the ForMath EU FP7 project (2009-2013). It has two parts:
28-
- theory, which contains developments in algebra including normal forms of matrices,
29-
and optimized algorithms on MathComp data structures.
30-
- refinements, which is a framework to ease change of data representations during a proof.
26+
This Coq library is based on Mathematical Components and has two parts:
27+
- theory, which contains developments in algebra, including normal forms of matrices
28+
and optimized algorithms for matrix operations and on structures such as polynomials.
29+
- refinements, which is a framework to ease change of data representations during a proof
30+
with the help of parametricity.
3131

3232
## Meta
3333

@@ -40,6 +40,7 @@ of the ForMath EU FP7 project (2009-2013). It has two parts:
4040
- Damien Rouhling
4141
- Pierre Roux
4242
- Vincent Siles (initial)
43+
- Laurent Théry
4344
- Coq-community maintainer(s):
4445
- Cyril Cohen ([**@CohenCyril**](https://github.com/CohenCyril))
4546
- Pierre Roux ([**@proux01**](https://github.com/proux01))
@@ -83,13 +84,20 @@ make install
8384
```
8485

8586

87+
## Background
88+
89+
The library hosts a subset of the work that was developed in the context of
90+
the ForMath EU FP7 project (2009-2013). More information about
91+
the project and its deliverables is available on its
92+
[website](http://wiki.portal.chalmers.se/cse/pmwiki.php/ForMath).
93+
8694
## Theory
8795

88-
The theory directory has the following content:
96+
The `theory` directory has the following content:
8997

9098
- `ssrcomplements`, `minor` `mxstructure`, `polydvd`, `similar`,
9199
`binetcauchy`, `ssralg_ring_tac`: Various extensions of the
92-
Mathematical Components library.
100+
Mathematical Components (MathComp) library.
93101

94102
- `dvdring`, `coherent`, `stronglydiscrete`, `edr`: Hierarchy of
95103
structures with divisibility (from rings with divisibility, PIDs,
@@ -109,9 +117,12 @@ The theory directory has the following content:
109117
`strassen`, `toomcook`, `smithpid`, `smith`: Various efficient
110118
algorithms for computing operations on polynomials or matrices.
111119

120+
- `grobner`: Formalization of Gröbner bases associated with polynomial
121+
ideals, and Buchberger's algorithm for computing such bases.
122+
112123
## Refinements
113124

114-
The refinements directory has the following content:
125+
The `refinements` directory has the following content:
115126

116127
- `refinements`: Classes for refinements and refines together with
117128
operational typeclasses for common operations.
@@ -129,7 +140,7 @@ The refinements directory has the following content:
129140
previous versions of `binint` (e.g., `N`).
130141

131142
- `binrat`: Arbitrary precision rational numbers (`bigQ`) from the
132-
[Bignums](https://github.com/coq/bignums) library are refined to
143+
[Bignums](https://github.com/coq-community/bignums) library are refined to
133144
MathComp's rationals (`rat`).
134145

135146
- `rational`: The rational numbers of MathComp (`rat`) are refined to
@@ -143,11 +154,10 @@ The refinements directory has the following content:
143154

144155
- `multipoly`: Refinement of
145156
[MathComp multinomials](https://github.com/math-comp/multinomials)
146-
and multivariate polynomials to Coq
157+
and multivariate polynomials to the Coq Stdlib's
147158
[finite maps](https://github.com/coq/coq/blob/master/theories/FSets/FMapAVL.v).
148159

149160
Files should use the following conventions (w.r.t. `Local` and `Global` instances):
150-
151161
```coq
152162
(** Part 1: Generic operations *)
153163
Section generic_operations.

coq-coqeal.opam

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@ license: "MIT"
1212

1313
synopsis: "CoqEAL - The Coq Effective Algebra Library"
1414
description: """
15-
This Coq library contains a subset of the work that was developed in the context
16-
of the ForMath EU FP7 project (2009-2013). It has two parts:
17-
- theory, which contains developments in algebra including normal forms of matrices,
18-
and optimized algorithms on MathComp data structures.
19-
- refinements, which is a framework to ease change of data representations during a proof."""
15+
This Coq library is based on Mathematical Components and has two parts:
16+
- theory, which contains developments in algebra, including normal forms of matrices
17+
and optimized algorithms for matrix operations and on structures such as polynomials.
18+
- refinements, which is a framework to ease change of data representations during a proof
19+
with the help of parametricity."""
2020

2121
build: [make "-j%{jobs}%"]
2222
install: [make "install"]
2323
depends: [
24-
"coq" {(>= "8.13" & < "8.17~") | (= "dev")}
24+
"coq" {(>= "8.13" & < "8.18~") | (= "dev")}
2525
"coq-bignums"
2626
"coq-paramcoq" {>= "1.1.3"}
2727
"coq-mathcomp-multinomials" {((>= "1.5.1" & < "1.7~") | = "dev")}
@@ -38,6 +38,9 @@ tags: [
3838
"keyword:Bareiss"
3939
"keyword:Karatsuba multiplication"
4040
"keyword:refinements"
41+
"keyword:Buchberger's algorithm"
42+
"keyword:Gröbner basis"
43+
"keyword:polynomials"
4144
"logpath:CoqEAL"
4245
]
4346
authors: [
@@ -49,4 +52,5 @@ authors: [
4952
"Damien Rouhling"
5053
"Pierre Roux"
5154
"Vincent Siles"
55+
"Laurent Théry"
5256
]

meta.yml

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ synopsis: >-
1111
CoqEAL - The Coq Effective Algebra Library
1212
1313
description: |-
14-
This Coq library contains a subset of the work that was developed in the context
15-
of the ForMath EU FP7 project (2009-2013). It has two parts:
16-
- theory, which contains developments in algebra including normal forms of matrices,
17-
and optimized algorithms on MathComp data structures.
18-
- refinements, which is a framework to ease change of data representations during a proof.
14+
This Coq library is based on Mathematical Components and has two parts:
15+
- theory, which contains developments in algebra, including normal forms of matrices
16+
and optimized algorithms for matrix operations and on structures such as polynomials.
17+
- refinements, which is a framework to ease change of data representations during a proof
18+
with the help of parametricity.
1919
2020
publications:
2121
- pub_url: https://hal.inria.fr/hal-00734505/document
@@ -60,6 +60,8 @@ authors:
6060
initial: false
6161
- name: Vincent Siles
6262
initial: true
63+
- name: Laurent Théry
64+
initial: false
6365

6466
maintainers:
6567
- name: Cyril Cohen
@@ -77,7 +79,7 @@ license:
7779

7880
supported_coq_versions:
7981
text: 8.13 or later (use releases for other Coq versions)
80-
opam: '{(>= "8.13" & < "8.17~") | (= "dev")}'
82+
opam: '{(>= "8.13" & < "8.18~") | (= "dev")}'
8183

8284
dependencies:
8385
- opam:
@@ -141,18 +143,28 @@ keywords:
141143
- name: Bareiss
142144
- name: Karatsuba multiplication
143145
- name: refinements
146+
- name: Buchberger's algorithm
147+
- name: Gröbner basis
148+
- name: polynomials
144149

145150
categories:
146151
- name: Computer Science/Decision Procedures and Certified Algorithms/Correctness proofs of algorithms
147152

148153
documentation: |-
154+
## Background
155+
156+
The library hosts a subset of the work that was developed in the context of
157+
the ForMath EU FP7 project (2009-2013). More information about
158+
the project and its deliverables is available on its
159+
[website](http://wiki.portal.chalmers.se/cse/pmwiki.php/ForMath).
160+
149161
## Theory
150162
151-
The theory directory has the following content:
163+
The `theory` directory has the following content:
152164
153165
- `ssrcomplements`, `minor` `mxstructure`, `polydvd`, `similar`,
154166
`binetcauchy`, `ssralg_ring_tac`: Various extensions of the
155-
Mathematical Components library.
167+
Mathematical Components (MathComp) library.
156168
157169
- `dvdring`, `coherent`, `stronglydiscrete`, `edr`: Hierarchy of
158170
structures with divisibility (from rings with divisibility, PIDs,
@@ -172,9 +184,12 @@ documentation: |-
172184
`strassen`, `toomcook`, `smithpid`, `smith`: Various efficient
173185
algorithms for computing operations on polynomials or matrices.
174186
187+
- `grobner`: Formalization of Gröbner bases associated with polynomial
188+
ideals, and Buchberger's algorithm for computing such bases.
189+
175190
## Refinements
176191
177-
The refinements directory has the following content:
192+
The `refinements` directory has the following content:
178193
179194
- `refinements`: Classes for refinements and refines together with
180195
operational typeclasses for common operations.
@@ -192,7 +207,7 @@ documentation: |-
192207
previous versions of `binint` (e.g., `N`).
193208
194209
- `binrat`: Arbitrary precision rational numbers (`bigQ`) from the
195-
[Bignums](https://github.com/coq/bignums) library are refined to
210+
[Bignums](https://github.com/coq-community/bignums) library are refined to
196211
MathComp's rationals (`rat`).
197212
198213
- `rational`: The rational numbers of MathComp (`rat`) are refined to
@@ -206,11 +221,10 @@ documentation: |-
206221
207222
- `multipoly`: Refinement of
208223
[MathComp multinomials](https://github.com/math-comp/multinomials)
209-
and multivariate polynomials to Coq
224+
and multivariate polynomials to the Coq Stdlib's
210225
[finite maps](https://github.com/coq/coq/blob/master/theories/FSets/FMapAVL.v).
211226
212227
Files should use the following conventions (w.r.t. `Local` and `Global` instances):
213-
214228
```coq
215229
(** Part 1: Generic operations *)
216230
Section generic_operations.

0 commit comments

Comments
 (0)