Skip to content

Commit b4300d1

Browse files
authored
Merge pull request #299 from proux01/master_815
Master branch compiles on Coq 8.15
2 parents e8f2bc8 + a45b9bc commit b4300d1

File tree

4 files changed

+145
-5
lines changed

4 files changed

+145
-5
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,14 @@ jobs:
1717
fail-fast: false
1818
matrix:
1919
coq_version:
20+
- '8.15'
2021
- '8.16'
21-
ocaml_version:
22-
- '4.09-flambda'
2322
steps:
2423
- uses: actions/checkout@v2
2524
- uses: coq-community/docker-coq-action@v1
2625
with:
2726
opam_file: './coq-hierarchy-builder.opam'
2827
coq_version: ${{ matrix.coq_version }}
29-
ocaml_version: ${{ matrix.ocaml_version }}
3028
export: 'OPAMWITHTEST' # space-separated list of variables
3129
env:
3230
OPAMWITHTEST: 'true'

coq-hierarchy-builder-shim.opam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ dev-repo: "git+https://github.com/math-comp/hierarchy-builder"
1111
build: [ make "-C" "shim" "build" ]
1212
install: [ make "-C" "shim" "install" ]
1313
conflicts: [ "coq-hierarchy-builder" ]
14-
depends: [ "coq" {>= "8.10"} ]
14+
depends: [ "coq-elpi" { (>= "1.14" & < "1.16~") | = "dev" } ]
1515
synopsis: "Shim package for HB"
1616
description: """
1717
This package provide the support constants one can use to compile files

coq-hierarchy-builder.opam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ build: [ [ make "build"]
1212
[ make "test-suite" ] {with-test}
1313
]
1414
install: [ make "install" ]
15-
depends: [ "coq-elpi" { (>= "1.15.1" & < "1.16~") | = "dev" } ]
15+
depends: [ "coq-elpi" { (>= "1.14" & < "1.16~") | = "dev" } ]
1616
conflicts: [ "coq-hierarchy-builder-shim" ]
1717
synopsis: "High level commands to declare and evolve a hierarchy based on packed classes"
1818
description: """

tests/about.v.out.15

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
HB: AddMonoid_of_TYPE is a factory
2+
(from "./examples/demo1/hierarchy_5.v", line 10)
3+
HB: AddMonoid_of_TYPE operations and axioms are:
4+
- zero
5+
- add
6+
- addrA
7+
- add0r
8+
- addr0
9+
HB: AddMonoid_of_TYPE requires the following mixins:
10+
HB: AddMonoid_of_TYPE provides the following mixins:
11+
- hierarchy_5.AddMonoid_of_TYPE
12+
13+
HB: AddMonoid_of_TYPE.Build is a factory constructor
14+
(from "./examples/demo1/hierarchy_5.v", line 10)
15+
HB: AddMonoid_of_TYPE.Build requires its subject to be already equipped with:
16+
HB: AddMonoid_of_TYPE.Build provides the following mixins:
17+
- hierarchy_5.AddMonoid_of_TYPE
18+
HB: arguments: AddMonoid_of_TYPE.Build S zero add addrA add0r addr0
19+
- S : Type
20+
- zero : AddMonoid.sort S
21+
- add : S -> S -> S
22+
- addrA : associative add
23+
- add0r : left_id 0%G add
24+
- addr0 : right_id 0%G add
25+
26+
HB: AddAG.type is a structure (from "./examples/demo1/hierarchy_5.v", line 73)
27+
HB: AddAG.type characterizing operations and axioms are:
28+
- addNr
29+
- opp
30+
HB: hierarchy_5.AddAG is a factory for the following mixins:
31+
- hierarchy_5.AddMonoid_of_TYPE
32+
- hierarchy_5.AddComoid_of_AddMonoid
33+
- hierarchy_5.AddAG_of_AddComoid (* new, not from inheritance *)
34+
HB: hierarchy_5.AddAG inherits from:
35+
- hierarchy_5.AddMonoid
36+
- hierarchy_5.AddComoid
37+
HB: hierarchy_5.AddAG is inherited by:
38+
- hierarchy_5.Ring
39+
40+
HB: hierarchy_5.AddMonoid.type is a structure
41+
(from "./examples/demo1/hierarchy_5.v", line 17)
42+
HB: hierarchy_5.AddMonoid.type characterizing operations and axioms are:
43+
- addr0
44+
- add0r
45+
- addrA
46+
- add
47+
- zero
48+
HB: hierarchy_5.AddMonoid is a factory for the following mixins:
49+
- hierarchy_5.AddMonoid_of_TYPE (* new, not from inheritance *)
50+
HB: hierarchy_5.AddMonoid inherits from:
51+
HB: hierarchy_5.AddMonoid is inherited by:
52+
- hierarchy_5.AddComoid
53+
- hierarchy_5.AddAG
54+
- hierarchy_5.BiNearRing
55+
- hierarchy_5.SemiRing
56+
- hierarchy_5.Ring
57+
58+
HB: Ring_of_AddAG is a factory
59+
(from "./examples/demo1/hierarchy_5.v", line 108)
60+
HB: Ring_of_AddAG operations and axioms are:
61+
- one
62+
- mul
63+
- mulrA
64+
- mulr1
65+
- mul1r
66+
- mulrDl
67+
- mulrDr
68+
HB: Ring_of_AddAG requires the following mixins:
69+
- hierarchy_5.AddMonoid_of_TYPE
70+
- hierarchy_5.AddComoid_of_AddMonoid
71+
- hierarchy_5.AddAG_of_AddComoid
72+
HB: Ring_of_AddAG provides the following mixins:
73+
- hierarchy_5.BiNearRing_of_AddMonoid
74+
Doc: Builds a Ring from an Abelian Group: the absorbing properties mul0r and
75+
mul0r are derived from addrC and the other ring axioms, following a proof
76+
of Hankel (Gerhard Betsch. On the beginnings and development of near-ring
77+
theory. In Near-rings and near-fields. Proceedings of the conference held
78+
in Fredericton, New Brunswick, July 18-24, 1993, pages 1–11. Mathematics
79+
and its Applications, 336. Kluwer Academic Publishers Group, Dordrecht,
80+
1995).
81+
82+
HB: Ring_of_AddAG.Build is a factory constructor
83+
(from "./examples/demo1/hierarchy_5.v", line 108)
84+
HB: Ring_of_AddAG.Build requires its subject to be already equipped with:
85+
- hierarchy_5.AddMonoid_of_TYPE
86+
- hierarchy_5.AddComoid_of_AddMonoid
87+
- hierarchy_5.AddAG_of_AddComoid
88+
HB: Ring_of_AddAG.Build provides the following mixins:
89+
- hierarchy_5.BiNearRing_of_AddMonoid
90+
HB: arguments: Ring_of_AddAG.Build A [one] [mul] mulrA mulr1 mul1r mulrDl mulrDr
91+
- A : Type
92+
- one : A
93+
- mul : A -> A -> A
94+
- mulrA : associative mul
95+
- mulr1 : left_id one mul
96+
- mul1r : right_id one mul
97+
- mulrDl : left_distributive mul add
98+
- mulrDr : right_distributive mul add
99+
Doc: Builds a Ring from an Abelian Group: the absorbing properties mul0r and
100+
mul0r are derived from addrC and the other ring axioms, following a proof
101+
of Hankel (Gerhard Betsch. On the beginnings and development of near-ring
102+
theory. In Near-rings and near-fields. Proceedings of the conference held
103+
in Fredericton, New Brunswick, July 18-24, 1993, pages 1–11. Mathematics
104+
and its Applications, 336. Kluwer Academic Publishers Group, Dordrecht,
105+
1995).
106+
107+
HB: add is an operation of structure hierarchy_5.AddMonoid
108+
(from "./examples/demo1/hierarchy_5.v", line 17)
109+
HB: add comes from mixin hierarchy_5.AddMonoid_of_TYPE
110+
(from "./examples/demo1/hierarchy_5.v", line 10)
111+
112+
HB: AddAG.sort is a canonical projection
113+
(from "./examples/demo1/hierarchy_5.v", line 73)
114+
HB: AddAG.sort has the following canonical values:
115+
- @eta
116+
- Ring.sort (from "./examples/demo1/hierarchy_5.v", line 196)
117+
- Z
118+
119+
HB: AddAG.sort is a coercion from hierarchy_5.AddAG to Sortclass
120+
(from "./examples/demo1/hierarchy_5.v", line 73)
121+
122+
HB: Z is canonically equipped with mixins:
123+
- hierarchy_5.AddMonoid
124+
hierarchy_5.AddComoid
125+
hierarchy_5.AddAG
126+
(from "(stdin)", line 5)
127+
- hierarchy_5.BiNearRing
128+
hierarchy_5.SemiRing
129+
hierarchy_5.Ring
130+
(from "(stdin)", line 10)
131+
132+
HB: hierarchy_5_Ring_class__to__hierarchy_5_SemiRing_class is a coercion from
133+
hierarchy_5.Ring to hierarchy_5.SemiRing
134+
(from "./examples/demo1/hierarchy_5.v", line 196)
135+
136+
HB: hierarchy_5_Ring__to__hierarchy_5_SemiRing is a coercion from
137+
hierarchy_5.Ring to hierarchy_5.SemiRing
138+
(from "./examples/demo1/hierarchy_5.v", line 196)
139+
140+
HB: todo HB.about for builder from hierarchy_5.Ring_of_AddAG to
141+
hierarchy_5.BiNearRing_of_AddMonoid
142+
HB: synthesized in file File "(stdin)", line 5, column 122, character 127:

0 commit comments

Comments
 (0)