Hollight.3.0 (#146) #953
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
pull_request: | |
types: [opened, synchronize, edited, reopened] | |
push: | |
workflow_dispatch: | |
jobs: | |
hol-light-to-dedukti: | |
strategy: | |
fail-fast: false | |
matrix: | |
ocaml-version: [5.2.1] | |
dune-version: [3.17.0] | |
camlp5-version: [8.03.01] | |
hol-light-version: [3.0.0] | |
hol-light-commit: [master] # Release-3.0.0] | |
lambdapi-version: [master] # >= 31aef37c > 2.5.1 | |
dedukti-version: [2.7] | |
runs-on: ubuntu-latest | |
steps: | |
# actions/checkout must be done BEFORE avsm/setup-ocaml | |
- name: Checkout hol2dk | |
uses: actions/checkout@v4 | |
- name: Install opam | |
uses: avsm/setup-ocaml@v3 | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-version }} | |
- name: Install dune | |
run: opam install -y dune.${{ matrix.dune-version }} | |
- name: Compile hol2dk | |
run: | | |
eval `opam env` | |
dune build | |
dune install | |
- name: Install dependencies | |
run: | | |
#sudo apt-get install -y libipc-system-simple-perl libstring-shellquote-perl | |
opam install -y hol_light.${{ matrix.hol-light-version }} camlp5.${{ matrix.camlp5-version }} dedukti.${{ matrix.dedukti-version }} #lambdapi.${{ matrix.lambdapi-version }} | |
- name: Install lambdapi | |
run: | | |
git clone --depth 1 -b ${{ matrix.lambdapi-version }} https://github.com/Deducteam/lambdapi | |
sudo apt-get install -y libev-dev | |
opam pin lambdapi lambdapi | |
opam install -y lambdapi | |
- name: Get hol-light and patch it | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
git clone https://github.com/jrh13/hol-light | |
cd hol-light | |
#git checkout ${{ matrix.hol-light-commit }} | |
make | |
hol2dk patch | |
- name: Dump proofs | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
cp hol_upto_arith.ml hol_lib_upto_arith.ml hol-light/ | |
cd hol-light | |
hol2dk dump-simp-before-hol hol_upto_arith.ml | |
- name: Test single-threaded dk output | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
cd hol-light | |
ln -s ../theory_hol.dk | |
hol2dk hol_upto_arith.dk | |
dk check hol_upto_arith.dk | |
- name: Test single-threaded lp output | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
cd hol-light | |
hol2dk hol_upto_arith.lp | |
ln -s ../theory_hol.lp | |
ln -s ../lambdapi.pkg | |
lambdapi check hol_upto_arith.lp | |
- name: Test multi-threaded dk output with mk | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
cd hol-light | |
hol2dk mk 3 hol_upto_arith | |
make -f hol_upto_arith.mk -j3 dk | |
dk check hol_upto_arith.dk | |
- name: Test multi-threaded lp output with mk | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
cd hol-light | |
make -f hol_upto_arith.mk -j3 lp | |
make -f hol_upto_arith.mk -j3 lpo | |
- name: Test multi-threaded lp output with split | |
run: | | |
eval `opam env` | |
export HOL2DK_DIR=`pwd` | |
export HOLLIGHT_DIR=`pwd`/hol-light | |
mkdir -p output/hol_upto_arith | |
cd output/hol_upto_arith | |
hol2dk link hol_upto_arith | |
make split | |
make -j3 lp | |
make -j3 v | |
make -j3 lpo |