-
Notifications
You must be signed in to change notification settings - Fork 3
/
coq-grobner.opam
62 lines (50 loc) · 1.34 KB
/
coq-grobner.opam
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# This file was generated from `meta.yml`, please do not edit manually.
# Follow the instructions on https://github.com/coq-community/templates to regenerate.
opam-version: "2.0"
maintainer: "thery@sophia.inria.fr"
version: "dev"
homepage: "https://github.com/thery/grobner"
dev-repo: "git+https://github.com/thery/grobner.git"
bug-reports: "https://github.com/thery/grobner/issues"
license: "MIT"
synopsis: "Grobner basis"
description: """
A fornalisation of Grobner basis in ssreflect.
It contains one file
``grobner.v``
It defines
```coq
From mathcomp Require Import all_ssreflect all_algebra.
From SsrMultinomials Require Import ssrcomplements freeg mpoly.
From mathcomp.contrib.grobner Require Import grobner.
Print ideal.
(*
ideal =
fun (R : ringType) (n : nat) (L : seq {mpoly R[n]}) (p : {mpoly R[n]})
=>
exists t, p = sum_(i < size L) t`_i * L`_i
*)
(* it is decidable *)
Check idealfP.
(*
idealfP
: forall (R : fieldType) (n : nat) (p : {mpoly R[n]})
(l : seq {mpoly R[n]}),
reflect (ideal l p) (idealf l p)
*)
```"""
build: [make "-j%{jobs}%"]
install: [make "install"]
depends: [
"coq" {(>= "8.17")}
"coq-mathcomp-ssreflect" {(>= "2.1.0")}
"coq-mathcomp-algebra" {(>= "2.1.0")}
"coq-mathcomp-multinomials" {(>= "2.1.0")}
]
tags: [
"keyword:grobner basis"
"logpath:grobner"
]
authors: [
"Laurent Théry"
]