├── .github └── workflows │ ├── build.yml │ └── deploy.yml ├── .gitignore ├── Makefile ├── _CoqProject ├── coq-domains.opam ├── extra ├── footer.html ├── header.html ├── index.html └── resources │ ├── config.js │ ├── coqdoc.css │ ├── coqdocjs.css │ └── coqdocjs.js └── theories ├── ClosedModality.v ├── Dcpo.v ├── DcpoExponential.v ├── DcpoProduct.v ├── ILift.v ├── Kleene.v ├── Lift.v ├── Path.v ├── Poset.v ├── Preamble.v ├── Preorder.v ├── Sierpinski.v ├── Skeleton.v ├── UNat.v └── WF.v /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: build 2 | 3 | # Controls when the action will run. 4 | on: [push,pull_request] 5 | 6 | 7 | jobs: 8 | build: 9 | runs-on: ubuntu-latest # container actions require GNU/Linux 10 | strategy: 11 | matrix: 12 | coq_version: 13 | - '8.15' 14 | ocaml_version: 15 | - '4.13-flambda' 16 | fail-fast: false # don't stop jobs if one fails 17 | steps: 18 | - uses: actions/checkout@v2 19 | - uses: coq-community/docker-coq-action@v1 20 | with: 21 | opam_file: 'coq-domains.opam' 22 | coq_version: ${{ matrix.coq_version }} 23 | ocaml_version: ${{ matrix.ocaml_version }} 24 | before_script: | 25 | startGroup "Workaround permission issue" 26 | sudo chown -R coq:coq . 27 | endGroup 28 | script: | 29 | startGroup "Build project" 30 | make 31 | endGroup 32 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: deploy 2 | 3 | # Controls when the action will run. 4 | on: 5 | # Triggers the workflow on push or pull request events but only for the main branch 6 | push: 7 | branches: [ main ] 8 | 9 | # Allows you to run this workflow manually from the Actions tab 10 | workflow_dispatch: 11 | 12 | 13 | jobs: 14 | build: 15 | runs-on: ubuntu-latest # container actions require GNU/Linux 16 | strategy: 17 | matrix: 18 | coq_version: 19 | - '8.15' 20 | ocaml_version: 21 | - '4.13-flambda' 22 | fail-fast: false # don't stop jobs if one fails 23 | steps: 24 | - uses: actions/checkout@v2 25 | - uses: coq-community/docker-coq-action@v1 26 | with: 27 | opam_file: 'coq-domains.opam' 28 | coq_version: ${{ matrix.coq_version }} 29 | ocaml_version: ${{ matrix.ocaml_version }} 30 | before_script: | 31 | startGroup "Workaround permission issue" 32 | sudo chown -R coq:coq . 33 | endGroup 34 | script: | 35 | startGroup "Build project" 36 | make 37 | endGroup 38 | 39 | - uses: peaceiris/actions-gh-pages@v3 40 | with: 41 | github_token: ${{ secrets.GITHUB_TOKEN }} 42 | force_orphan: false 43 | keep_files: true 44 | publish_dir: ./html 45 | 46 | 47 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_store 2 | *~ 3 | *.cache 4 | *.d 5 | *\#* 6 | *.aux* 7 | *glob 8 | *.vo* 9 | Makefile.coq 10 | Makefile.coq.conf 11 | CoqMakefile.conf 12 | html/ 13 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | EXTRA_DIR:=extra 2 | COQDOCFLAGS:= \ 3 | --external 'http://ssr2.msr-inria.inria.fr/doc/ssreflect-1.5/' Ssreflect \ 4 | --external 'http://ssr2.msr-inria.inria.fr/doc/mathcomp-1.5/' MathComp \ 5 | --toc --toc-depth 2 --html --interpolate \ 6 | --index indexpage --no-lib-name --parse-comments \ 7 | --with-header $(EXTRA_DIR)/header.html --with-footer $(EXTRA_DIR)/footer.html 8 | export COQDOCFLAGS 9 | COQMAKEFILE:=Makefile.coq 10 | COQ_PROJ:=_CoqProject 11 | VS:=$(wildcard *.v) 12 | VS_IN_PROJ:=$(shell grep .v $(COQ_PROJ)) 13 | 14 | ifeq (,$(VS_IN_PROJ)) 15 | VS_OTHER := $(VS) 16 | else 17 | VS := $(VS_IN_PROJ) 18 | endif 19 | 20 | all: html 21 | 22 | clean: $(COQMAKEFILE) 23 | @$(MAKE) -f $(COQMAKEFILE) $@ 24 | rm -f $(COQMAKEFILE) 25 | 26 | html: $(COQMAKEFILE) $(VS) 27 | rm -rf html 28 | @$(MAKE) -f $(COQMAKEFILE) $@ 29 | cp $(EXTRA_DIR)/index.html html 30 | cp $(EXTRA_DIR)/resources/* html 31 | 32 | $(COQMAKEFILE): $(COQ_PROJ) $(VS) 33 | coq_makefile -f $(COQ_PROJ) $(VS_OTHER) -o $@ 34 | 35 | %: $(COQMAKEFILE) force 36 | @$(MAKE) -f $(COQMAKEFILE) $@ 37 | force $(COQ_PROJ) $(VS): ; 38 | 39 | .PHONY: clean all force 40 | -------------------------------------------------------------------------------- /_CoqProject: -------------------------------------------------------------------------------- 1 | -R theories/ Domains 2 | -arg -w 3 | -arg all 4 | theories/Preamble.v 5 | theories/Preorder.v 6 | theories/Poset.v 7 | theories/Dcpo.v 8 | theories/DcpoExponential.v 9 | theories/DcpoProduct.v 10 | theories/Sierpinski.v 11 | theories/UNat.v 12 | theories/Path.v 13 | theories/Lift.v 14 | theories/ClosedModality.v 15 | theories/Kleene.v 16 | theories/ILift.v 17 | theories/Skeleton.v 18 | theories/WF.v 19 | 20 | -------------------------------------------------------------------------------- /coq-domains.opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "A Coq library for constructive domain theory" # One-line description 3 | description: """ 4 | A Coq library for constructive domain theory 5 | """ # Longer description, can span several lines 6 | 7 | homepage: "https://github.com/jonsterling/coq-domains" 8 | dev-repo: "git+https://github.com/jonsterling/coq-domains.git" 9 | bug-reports: "https://github.com/jonsterling/coq-domains/issues" 10 | doc: "https://jonsterling.github.io/coq-domains/" 11 | maintainer: "your@email.address" 12 | authors: [ 13 | "Jonathan Sterling" 14 | "Alex Gryzlov" 15 | ] 16 | 17 | # license: "MIT" # what should the license be ??? 18 | 19 | depends: [ 20 | "coq" {>= "8.13.2" & < "8.16~"} 21 | "coq-mathcomp-ssreflect" {>= "1.6"} 22 | "coq-hierarchy-builder" {>= "1.1.0"} 23 | ] 24 | 25 | build: [ 26 | [make] 27 | ] 28 | install: [ 29 | [make "install"] 30 | ] 31 | 32 | -------------------------------------------------------------------------------- /extra/footer.html: -------------------------------------------------------------------------------- 1 | 2 |
5 | 6 |