Diff of the two buildlogs: -- --- b1/build.log 2025-02-26 13:10:56.439423723 +0000 +++ b2/build.log 2025-02-26 13:20:12.750336252 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Feb 26 01:08:27 -12 2025 -I: pbuilder-time-stamp: 1740575307 +I: Current time: Wed Apr 1 09:34:08 +14 2026 +I: pbuilder-time-stamp: 1774985648 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -24,52 +24,84 @@ dpkg-source: info: applying 0001-Increase-timeout-in-test-that-takes-a-bit-longer-on-.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3533563/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Mar 31 19:34 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='52a4ddc55e50469db9307354fa4766c9' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='3533563' - PS1='# ' - PS2='> ' + INVOCATION_ID=7ea5d0aa549c4ac5bf0b6b06b4f43da1 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=201626 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.D4oJBRJB/pbuilderrc_u6Tq --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.D4oJBRJB/b1 --logfile b1/build.log coq-elpi_2.4.0-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.D4oJBRJB/pbuilderrc_naqK --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.D4oJBRJB/b2 --logfile b2/build.log coq-elpi_2.4.0-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3533563/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -212,7 +244,7 @@ Get: 87 http://deb.debian.org/debian trixie/main arm64 libstdio-ocaml-dev arm64 0.17.0-1+b1 [115 kB] Get: 88 http://deb.debian.org/debian trixie/main arm64 libppx-optcomp-ocaml-dev arm64 1:0.17.0-1+b6 [326 kB] Get: 89 http://deb.debian.org/debian trixie/main arm64 ocaml-dune arm64 3.17.2-1 [5587 kB] -Fetched 380 MB in 1s (278 MB/s) +Fetched 380 MB in 6s (60.2 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19914 files and directories currently installed.) @@ -511,8 +543,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed Feb 26 13:08:57 UTC 2025. -Universal Time is now: Wed Feb 26 13:08:57 UTC 2025. +Local time is now: Tue Mar 31 19:36:00 UTC 2026. +Universal Time is now: Tue Mar 31 19:36:00 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -595,7 +627,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/coq-elpi-2.4.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../coq-elpi_2.4.0-1_source.changes +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/coq-elpi-2.4.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../coq-elpi_2.4.0-1_source.changes dpkg-buildpackage: info: source package coq-elpi dpkg-buildpackage: info: source version 2.4.0-1 dpkg-buildpackage: info: source distribution unstable @@ -609,7 +645,7 @@ dune clean Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' dh_ocamlclean @@ -628,29 +664,20 @@ dune build -p coq-elpi Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created -(cd _build/default && /usr/bin/ocamlc.opt -w -40 -w -27 -g -bin-annot -bin-annot-occurrences -I src/.elpi_plugin.objs/byte -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -intf-suffix .ml -no-alias-deps -open Elpi_plugin -o src/.elpi_plugin.objs/byte/elpi_plugin__Coq_elpi_HOAS.cmo -c -impl src/coq_elpi_HOAS.pp.ml) +(cd _build/default && /usr/bin/ocamlopt.opt -w -40 -w -27 -g -I src/.elpi_plugin.objs/byte -I src/.elpi_plugin.objs/native -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -intf-suffix .ml -no-alias-deps -open Elpi_plugin -o src/.elpi_plugin.objs/native/elpi_plugin__Coq_elpi_HOAS.cmx -c -impl src/coq_elpi_HOAS.pp.ml) File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: 1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) ^^^^^^^^^^^^^^^^^^^^^^^^^ Alert deprecated: Library.indirect_accessor Most commands should not be accessing opaque data. -(cd _build/default && /usr/bin/ocamlopt.opt -w -40 -w -27 -g -I src/.elpi_plugin.objs/byte -I src/.elpi_plugin.objs/native -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -intf-suffix .ml -no-alias-deps -open Elpi_plugin -o src/.elpi_plugin.objs/native/elpi_plugin__Coq_elpi_HOAS.cmx -c -impl src/coq_elpi_HOAS.pp.ml) +(cd _build/default && /usr/bin/ocamlc.opt -w -40 -w -27 -g -bin-annot -bin-annot-occurrences -I src/.elpi_plugin.objs/byte -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -intf-suffix .ml -no-alias-deps -open Elpi_plugin -o src/.elpi_plugin.objs/byte/elpi_plugin__Coq_elpi_HOAS.cmo -c -impl src/coq_elpi_HOAS.pp.ml) File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: 1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) ^^^^^^^^^^^^^^^^^^^^^^^^^ Alert deprecated: Library.indirect_accessor Most commands should not be accessing opaque data. -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_data_base.v) -The Db contains [phone_prefix USA 1] -Phone prefix for USA is 1 -The Db contains -[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] -Phone prefix for France is 33 -sweet! -brr -yummy! (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_import_projections.v) Notation p2 := (p2 nat 3 x) example_import_projections.p1 nat 3 x : nat @@ -665,31 +692,6 @@ (Build bool false 3 eq_refl eq_refl) = 3 example_import_projections.f1 _ x : bool -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_to_sigma.v) -foo = -{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} - : Type -mk_foo = -fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => -existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 - (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) - : forall (f1 : Type) (f2 : f1 -> Type), - (forall t : f1, f2 t -> bool) -> foo - -Arguments mk_foo f1%type_scope (f2 f3)%function_scope -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_generalize.v) -3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_curry_howard_tactics.v) -goal X0 c0 c1 c2 c3 is - -[decl c3 `H` (app [global (const «lt»), c0, c1]), - decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), - decl c0 `x` (global (indt «nat»))] -------- - -prod `_` (app [global (const «lt»), c1, c2]) c4 \ - app [global (const «lt»), c0, c2] -3 (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_fuzzer.v) DEBUG: attempt at fuzzing binary op: global (indc «PLUS») DEBUG: attempt at fuzzing binary op: global (const «Nat.add») @@ -724,6 +726,40 @@ Arguments E_AND1 e1 e2 (b1 b2)%bool_scope _ _ Arguments E_OR1 e1 e2 (b1 b2)%bool_scope _ _ Arguments E_EQ1 e1 e2 (n1 n2)%nat_scope _ _ +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_generalize.v) +3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_curry_howard_tactics.v) +goal X0 c0 c1 c2 c3 is + +[decl c3 `H` (app [global (const «lt»), c0, c1]), + decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), + decl c0 `x` (global (indt «nat»))] +------- + +prod `_` (app [global (const «lt»), c1, c2]) c4 \ + app [global (const «lt»), c0, c2] +3 +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_to_sigma.v) +foo = +{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} + : Type +mk_foo = +fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => +existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 + (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) + : forall (f1 : Type) (f2 : f1 -> Type), + (forall t : f1, f2 t -> bool) -> foo + +Arguments mk_foo f1%type_scope (f2 f3)%function_scope +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_data_base.v) +The Db contains [phone_prefix USA 1] +Phone prefix for USA is 1 +The Db contains +[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] +Phone prefix for France is 33 +sweet! +brr +yummy! (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_reduction_surgery.v) (eq_refl : 2 = (let z := 1 in S z)) (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_HOAS.v) @@ -1165,6 +1201,1000 @@ old replacement: fun (x : ?e) (y : ?e0) => x - y with fun (y : ?e1) (x : ?e2) => y + x new replacement: fun y : ?e0 => x - y with fun y : ?e1 => y + x +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_elpi_lang.v) +The age of alice is 20 +Query assignments: + A = 20 +mallory is 23 years old +Query assignments: + P = mallory +alice is 20 years old +Query assignments: + P = alice +mallory and bob are 23 years old +Query assignments: + A = 23 + P = mallory + Q = bob +I picked P = mallory +I picked Q = mallory +I picked Q = bob +the last choice worked! +mallory and bob are 23 years old +Query assignments: + A = 23 + P = mallory + Q = bob +bob is older than alice +Query assignments: + X = alice +both bob and mallory are older than alice +Query assignments: + X = alice +F = c0 \ age alice c0 +F 20 = age alice 20 +F 23 = age alice 23 +Query assignments: + F = c0 \ +age alice c0 +λx.x ~> fun c0 \ c0 +(λx.x) (λx.x) ~> fun c0 \ c0 +Query assignments: + I = fun c0 \ c0 + T = fun c0 \ c0 + T1 = fun c0 \ c0 +(Fst foo bar) ~> foo +(foo bar) ~> app foo bar +Query assignments: + Fst = fun c0 \ fun c1 \ c0 + S = app foo bar + S1 = app foo bar + T = app (app (fun c0 \ fun c1 \ c0) foo) bar + T1 = foo +The type of λx.λy.x is: arr X0 (arr X1 X0) +Query assignments: + Ty = arr X0 (arr X1 X0) +Error: fun c0 \ app c0 c0 has no type +Query assignments: + Delta = fun c0 \ app c0 c0 + Ty = X0 +2 + 1 = s (s (s z)) +Query assignments: + R = s (s (s z)) +Query assignments: + X = X0 + Z = X1 +Syntactic constraints: sum X0 (s z) X1 /* suspended on X0 */ +The result is: s z +Query assignments: + X = z + Z = s z +Query assignments: + X = s z +Debug: sum X0 (s z) X1 /* suspended on X0 */ +Currently Y = X1 +Debug: sum X2 (s z) X3 /* suspended on X2 */ +Currently Y = s X3 +Finally Y = s (s z) +Query assignments: + X = s z + Y = s (s z) + Z = z +Query assignments: + X = X0 +Syntactic constraints: + even X0 /* suspended on X0 */ odd X0 /* suspended on X0 */ +X0 can't be even and odd at the same time +Query assignments: + A = [1, 2, 3, 3, 2, 1] +Query assignments: + A = [1, 2, 3, 3, 2, 1] +result = 5 +Query assignments: + X = result = + Y = 5 +result = 5 +Query assignments: + %arg1 = 5 +Query assignments: + R1 = X0 + R2 = [2, 3, 4] + R3 = [2, 3, 4] +Query assignments: + R = [2, 3, 4] +Y = c0 +arr X0 (arr X1 X0) +Query assignments: + Ty = arr X0 (arr X1 X0) +Debug: run 1 {{{ + +Debug: + rid:0 step:1 gid:4 user:curgoal = , + of (fun c0 \ fun c1 \ c0) X0 , coq.say X0 + +Debug: + rid:0 step:1 gid:4 user:rule = and + +Debug: + rid:0 step:1 gid:4 user:subgoal = 5 + +Debug: + rid:0 step:1 gid:5 user:newgoal = of (fun c0 \ fun c1 \ c0) X0 + +Debug: + rid:0 step:1 gid:4 user:subgoal = 6 + +Debug: + rid:0 step:1 gid:6 user:newgoal = coq.say X0 + +Debug: + rid:0 step:1 gid:4 user:rule:and = success + +Debug: }}} -> (0.000s) +Debug: run 2 {{{ + +Debug: + rid:0 step:2 gid:5 user:curgoal = of + of (fun c0 \ fun c1 \ c0) X0 + +Debug: + rid:0 step:2 gid:5 user:rule = backchain + +Debug: + rid:0 step:2 gid:5 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + +Debug: }}} -> (0.000s) +Debug: select 3 {{{ + +Debug: + rid:0 step:2 gid:5 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + (of (fun A0) (arr A2 A1)) :- ( + pi (c0 \ + (of c0 A2 => of (A0 c0) A1))). + +Debug: + rid:0 step:2 gid:0 user:assign = A0 := c0 \ + fun c1 \ c0 + +Debug: + rid:0 step:2 gid:0 user:assign = X0 := arr X1 X2 + +Debug: + rid:0 step:2 gid:5 user:subgoal = 7 + +Debug: + rid:0 step:2 gid:7 user:newgoal = pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 + +Debug: + rid:0 step:2 gid:7 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 3 {{{ + +Debug: + rid:0 step:3 gid:7 user:curgoal = pi + pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 + +Debug: rid:0 step:3 gid:7 user:rule = pi + +Debug: + rid:0 step:3 gid:7 user:subgoal = 8 + +Debug: + rid:0 step:3 gid:8 user:newgoal = of c0 X1 => of (fun c1 \ c0) X2 + +Debug: + rid:0 step:3 gid:8 user:rule:pi = success + +Debug: }}} -> (0.000s) +Debug: run 4 {{{ + +Debug: + rid:0 step:4 gid:8 user:curgoal = => + of c0 X1 => of (fun c1 \ c0) X2 + +Debug: + rid:0 step:4 gid:8 user:rule = implication + +Debug: + rid:0 step:4 gid:8 user:subgoal = 9 + +Debug: + rid:0 step:4 gid:9 user:newgoal = of (fun c1 \ c0) X2 + +Debug: + rid:0 step:4 gid:9 user:rule:implication = success + +Debug: }}} -> (0.000s) +Debug: run 5 {{{ + +Debug: + rid:0 step:5 gid:9 user:curgoal = of + of (fun c1 \ c0) X2 + +Debug: + rid:0 step:5 gid:9 user:rule = backchain + +Debug: + rid:0 step:5 gid:9 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + +Debug: }}} -> (0.000s) +Debug: select 4 {{{ + +Debug: + rid:0 step:5 gid:9 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + (of (fun A0) (arr A2 A1)) :- ( + pi (c0 \ + (of c0 A2 => of (A0 c0) A1))). + +Debug: + rid:0 step:5 gid:0 user:assign = A0 := c1 \ + c0 + +Debug: + rid:0 step:5 gid:0 user:assign = X2 := arr X3 X4 + +Debug: + rid:0 step:5 gid:9 user:subgoal = 10 + +Debug: + rid:0 step:5 gid:10 user:newgoal = pi c1 \ of c1 X3 => of c0 X4 + +Debug: + rid:0 step:5 gid:10 user:rule:backchain = success + +Debug: }}} -> (0.016s) +Debug: run 6 {{{ + +Debug: + rid:0 step:6 gid:10 user:curgoal = pi + pi c1 \ of c1 X3 => of c0 X4 + +Debug: + rid:0 step:6 gid:10 user:rule = pi + +Debug: + rid:0 step:6 gid:10 user:subgoal = 11 + +Debug: + rid:0 step:6 gid:11 user:newgoal = of c1 X3 => of c0 X4 + +Debug: + rid:0 step:6 gid:11 user:rule:pi = success + +Debug: }}} -> (0.000s) +Debug: run 7 {{{ + +Debug: + rid:0 step:7 gid:11 user:curgoal = => + of c1 X3 => of c0 X4 + +Debug: + rid:0 step:7 gid:11 user:rule = implication + +Debug: + rid:0 step:7 gid:11 user:subgoal = 12 + +Debug: + rid:0 step:7 gid:12 user:newgoal = of c0 X4 + +Debug: + rid:0 step:7 gid:12 user:rule:implication = success + +Debug: }}} -> (0.000s) +Debug: run 8 {{{ + +Debug: + rid:0 step:8 gid:12 user:curgoal = of + of c0 X4 + +Debug: + rid:0 step:8 gid:12 user:rule = backchain + +Debug: + rid:0 step:8 gid:12 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 5 {{{ + +Debug: + rid:0 step:8 gid:12 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 X1) :- . + +Debug: + rid:0 step:8 gid:0 user:assign = X1 := X4 + +Debug: + rid:0 step:8 gid:12 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 9 {{{ + +Debug: + rid:0 step:9 gid:6 user:curgoal = coq.say + coq.say (arr X4 (arr X3 X4)) + +Debug: + rid:0 step:9 gid:6 user:rule = builtin + +Debug: + rid:0 step:9 gid:6 user:rule:builtin:name = coq.say + +arr X4 (arr X3 X4) +Debug: + rid:0 step:9 gid:6 user:rule:builtin = success + +Debug: }}} -> (0.000s) +Query assignments: + Ty = arr X4 (arr X3 X4) +Debug: run 1 {{{ + +Debug: + rid:1 step:1 gid:13 user:curgoal = , + of (fun c0 \ app c0 c0) X0 , coq.say X0 + +Debug: + rid:1 step:1 gid:13 user:rule = and + +Debug: + rid:1 step:1 gid:13 user:subgoal = 14 + +Debug: + rid:1 step:1 gid:14 user:newgoal = of (fun c0 \ app c0 c0) X0 + +Debug: + rid:1 step:1 gid:13 user:subgoal = 15 + +Debug: + rid:1 step:1 gid:15 user:newgoal = coq.say X0 + +Debug: + rid:1 step:1 gid:13 user:rule:and = success + +Debug: }}} -> (0.000s) +Debug: run 2 {{{ + +Debug: + rid:1 step:2 gid:14 user:curgoal = of + of (fun c0 \ app c0 c0) X0 + +Debug: + rid:1 step:2 gid:14 user:rule = backchain + +Debug: + rid:1 step:2 gid:14 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + +Debug: }}} -> (0.000s) +Debug: select 3 {{{ + +Debug: + rid:1 step:2 gid:14 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + (of (fun A0) (arr A2 A1)) :- ( + pi (c0 \ + (of c0 A2 => of (A0 c0) A1))). + +Debug: + rid:1 step:2 gid:0 user:assign = A0 := c0 \ + app c0 c0 + +Debug: + rid:1 step:2 gid:0 user:assign = X0 := arr X1 X2 + +Debug: + rid:1 step:2 gid:14 user:subgoal = 16 + +Debug: + rid:1 step:2 gid:16 user:newgoal = pi c0 \ of c0 X1 => of (app c0 c0) X2 + +Debug: + rid:1 step:2 gid:16 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 3 {{{ + +Debug: + rid:1 step:3 gid:16 user:curgoal = pi + pi c0 \ of c0 X1 => of (app c0 c0) X2 + +Debug: + rid:1 step:3 gid:16 user:rule = pi + +Debug: + rid:1 step:3 gid:16 user:subgoal = 17 + +Debug: + rid:1 step:3 gid:17 user:newgoal = of c0 X1 => of (app c0 c0) X2 + +Debug: + rid:1 step:3 gid:17 user:rule:pi = success + +Debug: }}} -> (0.000s) +Debug: run 4 {{{ + +Debug: + rid:1 step:4 gid:17 user:curgoal = => + of c0 X1 => of (app c0 c0) X2 + +Debug: + rid:1 step:4 gid:17 user:rule = implication + +Debug: + rid:1 step:4 gid:17 user:subgoal = 18 + +Debug: + rid:1 step:4 gid:18 user:newgoal = of (app c0 c0) X2 + +Debug: + rid:1 step:4 gid:18 user:rule:implication = success + +Debug: }}} -> (0.000s) +Debug: run 5 {{{ + +Debug: + rid:1 step:5 gid:18 user:curgoal = of + of (app c0 c0) X2 + +Debug: + rid:1 step:5 gid:18 user:rule = backchain + +Debug: + rid:1 step:5 gid:18 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 591, column 2, characters 15200-15250: + +Debug: }}} -> (0.000s) +Debug: select 4 {{{ + +Debug: + rid:1 step:5 gid:18 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 591, column 2, characters 15200-15250: + (of (app A0 A3) A2) :- ( + of A0 (arr A1 A2)), + (of A3 A1). + +Debug: + rid:1 step:5 gid:0 user:assign = A0 := c0 + +Debug: + rid:1 step:5 gid:0 user:assign = A3 := c0 + +Debug: + rid:1 step:5 gid:0 user:assign = A2 := X2 + +Debug: + rid:1 step:5 gid:18 user:subgoal = 19 + +Debug: + rid:1 step:5 gid:19 user:newgoal = of c0 (arr X3^1 X2) + +Debug: + rid:1 step:5 gid:19 user:subgoal = 20 + +Debug: + rid:1 step:5 gid:20 user:newgoal = of c0 X3^1 + +Debug: + rid:1 step:5 gid:19 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 6 {{{ + +Debug: + rid:1 step:6 gid:19 user:curgoal = of + of c0 (arr X3^1 X2) + +Debug: + rid:1 step:6 gid:19 user:rule = backchain + +Debug: + rid:1 step:6 gid:19 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 5 {{{ + +Debug: + rid:1 step:6 gid:19 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 X1) :- . + +Debug: + rid:1 step:6 gid:0 user:assign:expand = X3^1 := X4 c0 + +Debug: + rid:1 step:6 gid:0 user:assign:restrict = 0 X4 c0 := c0 \ + .X5 + +Debug: + rid:1 step:6 gid:0 user:assign = X1 := arr X5 X2 + +Debug: + rid:1 step:6 gid:19 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 7 {{{ + +Debug: + rid:1 step:7 gid:20 user:curgoal = of + of c0 X5 + +Debug: + rid:1 step:7 gid:20 user:rule = backchain + +Debug: + rid:1 step:7 gid:20 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 6 {{{ + +Debug: + rid:1 step:7 gid:20 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 (arr X5 X2)) :- . + +Debug: + rid:1 step:7 gid:20 user:backchain:fail-to = unify X5 with arr X5 X2 + +Debug: }}} -> (0.000s) +Debug: select 7 {{{ + +Debug: + rid:1 step:7 gid:20 user:rule:backchain = fail + +Debug: }}} -> (0.000s) +Debug: run 6 {{{ + +Debug: + rid:2 step:6 gid:27 user:curgoal = pi + pi c1 \ of c1 X0 => of c0 X1 + +Debug: + rid:2 step:6 gid:27 user:rule = pi + +Debug: + rid:2 step:6 gid:27 user:subgoal = 28 + +Debug: + rid:2 step:6 gid:28 user:newgoal = of c1 X0 => of c0 X1 + +Debug: + rid:2 step:6 gid:28 user:rule:pi = success + +Debug: }}} -> (0.000s) +Debug: run 7 {{{ + +Debug: + rid:2 step:7 gid:28 user:curgoal = => + of c1 X0 => of c0 X1 + +Debug: + rid:2 step:7 gid:28 user:rule = implication + +Debug: + rid:2 step:7 gid:28 user:subgoal = 29 + +Debug: + rid:2 step:7 gid:29 user:newgoal = of c0 X1 + +Debug: + rid:2 step:7 gid:29 user:rule:implication = success + +Debug: }}} -> (0.000s) +Debug: run 8 {{{ + +Debug: + rid:2 step:8 gid:29 user:curgoal = of + of c0 X1 + +Debug: + rid:2 step:8 gid:29 user:rule = backchain + +Debug: + rid:2 step:8 gid:29 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 5 {{{ + +Debug: + rid:2 step:8 gid:29 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 X2) :- . + +Debug: + rid:2 step:8 gid:0 user:assign = X2 := X1 + +Debug: + rid:2 step:8 gid:29 user:rule:backchain = success + +Debug: }}} -> (0.000s) +arr X1 (arr X0 X1) +Query assignments: + Ty = arr X1 (arr X0 X1) +Debug: run 2 {{{ + +Debug: + rid:3 step:2 gid:31 user:curgoal = of + of (fun c0 \ fun c1 \ c0) X0 + +Debug: + rid:3 step:2 gid:31 user:rule = backchain + +Debug: + rid:3 step:2 gid:31 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + +Debug: }}} -> (0.000s) +Debug: select 3 {{{ + +Debug: + rid:3 step:2 gid:31 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + (of (fun A0) (arr A2 A1)) :- ( + pi (c0 \ + (of c0 A2 => of (A0 c0) A1))). + +Debug: + rid:3 step:2 gid:0 user:assign = A0 := c0 \ + fun c1 \ c0 + +Debug: + rid:3 step:2 gid:0 user:assign = X0 := arr X1 X2 + +Debug: + rid:3 step:2 gid:31 user:subgoal = 33 + +Debug: + rid:3 step:2 gid:33 user:newgoal = pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 + +Debug: + rid:3 step:2 gid:33 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 5 {{{ + +Debug: + rid:3 step:5 gid:35 user:curgoal = of + of (fun c1 \ c0) X2 + +Debug: + rid:3 step:5 gid:35 user:rule = backchain + +Debug: + rid:3 step:5 gid:35 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + +Debug: }}} -> (0.000s) +Debug: select 4 {{{ + +Debug: + rid:3 step:5 gid:35 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: + (of (fun A0) (arr A2 A1)) :- ( + pi (c0 \ + (of c0 A2 => of (A0 c0) A1))). + +Debug: + rid:3 step:5 gid:0 user:assign = A0 := c1 \ + c0 + +Debug: + rid:3 step:5 gid:0 user:assign = X2 := arr X3 X4 + +Debug: + rid:3 step:5 gid:35 user:subgoal = 36 + +Debug: + rid:3 step:5 gid:36 user:newgoal = pi c1 \ of c1 X3 => of c0 X4 + +Debug: + rid:3 step:5 gid:36 user:rule:backchain = success + +Debug: }}} -> (0.000s) +Debug: run 8 {{{ + +Debug: + rid:3 step:8 gid:38 user:curgoal = of + of c0 X4 + +Debug: + rid:3 step:8 gid:38 user:rule = backchain + +Debug: + rid:3 step:8 gid:38 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 5 {{{ + +Debug: + rid:3 step:8 gid:38 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 X1) :- . + +Debug: + rid:3 step:8 gid:0 user:assign = X1 := X4 + +Debug: + rid:3 step:8 gid:38 user:rule:backchain = success + +Debug: }}} -> (0.000s) +arr X4 (arr X3 X4) +Query assignments: + Ty = arr X4 (arr X3 X4) +Debug: run 8 {{{ + +Debug: + rid:4 step:8 gid:47 user:curgoal = of + of c0 X0 + +Debug: + rid:4 step:8 gid:47 user:rule = backchain + +Debug: + rid:4 step:8 gid:47 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: + +Debug: }}} -> (0.000s) +Debug: select 5 {{{ + +Debug: + rid:4 step:8 gid:47 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: + (of c0 X1) :- . + +Debug: + rid:4 step:8 gid:0 user:assign = X1 := X0 + +Debug: + rid:4 step:8 gid:47 user:rule:backchain = success + +Debug: }}} -> (0.000s) +arr X0 (arr X2 X0) +Query assignments: + Ty = arr X0 (arr X2 X0) +calling mypred on 3 +calling mypred on 2 +calling mypred on 1 +calling mypred on 0 +ok +Query assignments: + A = X0 + B = X0 + C = X0 +Query assignments: + A = X0 + B = X0 + C = X0 +File "./examples/tutorial_elpi_lang.v", line 554, characters 12-17: +Warning: +File "./examples/tutorial_elpi_lang.v", line 554, characters 12-17 +Hummm is linear: name it _Hummm (discard) or Hummm_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 670, characters 12-14: +Warning: +File "./examples/tutorial_elpi_lang.v", line 670, characters 12-14 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 826, characters 26-27: +Warning: +File "./examples/tutorial_elpi_lang.v", line 826, characters 26-27 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 826, characters 34-35: +Warning: +File "./examples/tutorial_elpi_lang.v", line 826, characters 34-35 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 856, characters 26-27: +Warning: +File "./examples/tutorial_elpi_lang.v", line 856, characters 26-27 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 856, characters 34-35: +Warning: +File "./examples/tutorial_elpi_lang.v", line 856, characters 34-35 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 888, characters 21-22: +Warning: +File "./examples/tutorial_elpi_lang.v", line 888, characters 21-22 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 888, characters 29-30: +Warning: +File "./examples/tutorial_elpi_lang.v", line 888, characters 29-30 +Z is linear: name it _Z (discard) or Z_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1020, characters 26-27: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1020, characters 26-27 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1057, characters 27-28: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1057, characters 27-28 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1146, characters 18-20: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1146, characters 18-20 +R1 is linear: name it _R1 (discard) or R1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1147, characters 15-17: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1147, characters 15-17 +R2 is linear: name it _R2 (discard) or R2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1148, characters 16-18: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1148, characters 16-18 +R3 is linear: name it _R3 (discard) or R3_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1184, characters 16-17: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1184, characters 16-17 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1504, characters 5-21: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1504, characters 5-21 +The standard λProlog infix operator for implication => has higher precedence +than conjunction. This means that 'A => B, C' reads '(A => B), C'. +This is a common mistake since it makes A only available to B (and not to C +as many newcomers may expect). +If this is really what you want write '(A => B), C' to silence this warning. +Otherwise write 'A => (B, C)', or use the alternative implication operator ==>. +Infix ==> has lower precedence than conjunction, hence +'A ==> B, C' reads 'A ==> (B, C)' and means the same as 'A => (B, C)'. +[elpi.implication-precedence,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1504, characters 10-11: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1504, characters 10-11 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1504, characters 20-21: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1504, characters 20-21 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1504, characters 28-29: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1504, characters 28-29 +C is linear: name it _C (discard) or C_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1511, characters 20-21: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1511, characters 20-21 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1511, characters 28-29: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1511, characters 28-29 +C is linear: name it _C (discard) or C_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1518, characters 9-10: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1518, characters 9-10 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1518, characters 20-21: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1518, characters 20-21 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29: +Warning: +File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29 +C is linear: name it _C (discard) or C_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_command.v) +Hello [str world!] +Hello [int 46] +Hello [str there] +Hello [str my, str friend] +Hello [str this.is.a.qualified.name] +Hello +[trm + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app [global (indc «S»), global (indc «O»)]])] +Hello +[const-decl test + (some + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app [global (indc «S»), global (indc «O»)]])) (arity (sort prop))] +Hello +[indt-decl + (record test (sort (typ «Set»)) Build_test + (field [coercion off, canonical tt] f1 (global (indt «nat»)) c0 \ + field [coercion off, canonical tt] f2 + (app + [global (indt «eq»), global (indt «nat»), c0, + app [global (indc «S»), global (indc «O»)]]) c1 \ end-record))] +The type of +app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), global (indc «O»)], global (indc «O»)] is +sort prop +1 = true + : Prop +T= +app + [global (indt «eq»), X0, app [global (indc «S»), global (indc «O»)], + global (indc «true»)] +T1= +app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), global (indc «O»)], + app [global (const «bool2nat»), global (indc «true»)]] +Ty= sort prop +nK_bool = 2 + : nat +nK_False = 0 + : nat +Inductive tree' (A : Set) : Set := + leaf' : tree' A | node' : tree' A -> A -> tree' A -> tree' A. + +Arguments tree' A%type_scope +Arguments leaf' A%type_scope +Arguments node' A%type_scope _ _ _ +bob is 24 years old +alice is 21 years old +bob is 24 years old +alice is 21 years old +[attribute elpi.loc + (leaf-loc + File "./examples/tutorial_coq_elpi_command.v", line 610, column 31, characters 17257-17261:), + attribute elpi.phase (leaf-str interp), attribute this (leaf-str ), + attribute more (node [attribute stuff (leaf-str 33)])] +options= +[get-option elpi.loc + File "./examples/tutorial_coq_elpi_command.v", line 643, column 31, characters 18094-18104:, + get-option elpi.phase interp, get-option this tt, get-option more.stuff 33] +33 tt +That is all folks! +going from source to target via plane +synterp x := some _ +interp x := +some + (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) +The module is «elpi_examples.tutorial_coq_elpi_command.Module90» +Box.Box.Box.Box.foo = fun n : nat => n + 2 + : nat -> nat + +Arguments Box.Box.Box.Box.foo n%nat_scope +Module NextModule2 := Struct End +File "./examples/tutorial_coq_elpi_command.v", line 610, characters 2-24: +Warning: This command does not support these attributes: more, this. +[unsupported-attributes,parsing,default] +File "./examples/tutorial_coq_elpi_command.v", line 643, characters 2-24: +Warning: This command does not support these attributes: more, this. +[unsupported-attributes,parsing,default] +File "./examples/tutorial_coq_elpi_command.v", line 644, characters 7-14: +Warning: This command does not support this attribute: unknown. +[unsupported-attributes,parsing,default] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/NES/elpi elpi.apps.NES.elpi -R apps/NES/theories elpi.apps.NES apps/NES/theories/NES.v) +File "./apps/NES/theories/NES.v", line 39, characters 0-42: +Warning: +Undeclared globals: +- File "/build/reproducible-path/coq-elpi-2.4.0/apps/NES/elpi/nes_interp.elpi", line 6, column 24, characters 152-161: ns. +Please add the following text to your program: +type ns list string -> modpath -> prop. +[elpi.missing-types,elpi.typecheck,elpi,default] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_reflexive_tactic.v) +normP : +forall {T : Type} {e : T} {op : T -> T -> T} {gamma : list T} {t1 t2 : lang}, +(forall a b c : T, op a (op b c) = op (op a b) c) -> +(forall a : T, op e a = a) -> +(forall a : T, op a e = a) -> +norm t1 = norm t2 -> interp T e op gamma t1 = interp T e op gamma t2 + +normP is not universe polymorphic +Arguments normP {T}%type_scope {e} {op}%function_scope + {gamma}%list_scope {t1 t2} (p1 p2 p3)%function_scope + H +normP is transparent +Expands to: Constant elpi_examples.example_reflexive_tactic.normP +(fun x y z t : Z => + normP Z.add_assoc Z.add_0_l Z.add_0_r + (eq_refl + <: + norm (add (add (var 0) (var 1)) (add (add (var 2) zero) (var 3))) = + norm (add (add (var 0) (add (var 1) (var 2))) (var 3)))) +Debug: In environment +x, y, z, t : Z +Unable to unify "var 1" with "var 0". (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_expansion.v) Debug: run 1 {{{ @@ -1193,7 +2223,7 @@ Debug: rid:0 step:1 gid:5 user:rule:implication = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.017s) Debug: run 2 {{{ Debug: @@ -1494,7 +2524,7 @@ Debug: rid:0 step:9 gid:18 user:newgoal = indt X0 = indt «r» -Debug: }}} -> (0.004s) +Debug: }}} -> (0.000s) Debug: run 10 {{{ Debug: @@ -1866,7 +2896,7 @@ Debug: rid:0 step:22 gid:26 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.017s) Debug: run 23 {{{ Debug: @@ -2674,7 +3704,7 @@ Debug: rid:1 step:363 gid:1045 user:rule:backchain = success -Debug: }}} -> (0.006s) +Debug: }}} -> (0.001s) Debug: run 364 {{{ Debug: @@ -2731,7 +3761,7 @@ Debug: rid:1 step:364 gid:1048 user:newgoal = X8 = «expanded_g» -Debug: }}} -> (0.001s) +Debug: }}} -> (0.021s) Debug: run 365 {{{ Debug: @@ -3218,7 +4248,968 @@ Arguments expanded_g T%type_scope op%function_scope (l s)%list_scope h%bool_scope -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/NES/elpi elpi.apps.NES.elpi -R apps/NES/theories elpi.apps.NES apps/NES/theories/NES.v) +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_tactic.v) +Goal: +[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] +|- X0 c0 c1 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], c1] +(I, 0) +conj : forall [A B : Prop], A -> B -> A /\ B + +conj is not universe polymorphic +Arguments conj [A B]%type_scope _ _ +Expands to: Constructor Coq.Init.Logic.conj +(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) +[int 1, str x, str a b, + trm + (app + [global (indt «eq»), X0, + app [global (indc «S»), global (indc «O»)], global (indc «O»)])] +Using H ?p of type Q +Using H ?p of type Q +Using p of type P +[trm c0, trm c3, trm (app [c2, c3])] +found P +found P /\ P +Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], global (indc «O»)] +Proof state: + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X1 c0) + (app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], + global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ +EVARS: + ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} + ?X56==[ |- => fun x : nat => ?Goal] (goal evar) + ?X55==[x |- => nat] (parameter A of eq) + ?X54==[ |- => nat] (type of x) + +SHELF:|| +FUTURE GOALS STACK: + || + +Coq-Elpi mapping: +RAW: +?X57 <-> c0 \ X1 c0 +ELAB: +?X57 <-> X0 + +#goals = 2 +[nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 + (X1 c0 c1) []), + nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 + (X3 c0 c1) [])] +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) +foo = 46 + : nat +bar = (false :: nil)%list + : list bool +baz = (46%nat :: nil)%list + : list nat +File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: +Warning: x is already taken, Elpi will make a name up [lib,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 +Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 +G1 is linear: name it _G1 (discard) or G1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46 +G2 is linear: name it _G2 (discard) or G2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +(cd _build/default && /usr/bin/coqc -w -all -w -elpi -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I apps/tc/src -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/tc/elpi elpi.apps.tc.elpi -R apps/tc/theories elpi.apps.tc apps/tc/theories/tc.v) +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (RelationClasses.equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || + Init.class_apply @Morphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (Morphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (CMorphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @CMorphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply RelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply CRelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) Init.unconvertible +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || + Init.class_apply @CMorphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/theories/tc.v", line 202, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.reflexive_proxy_tac A R) +[elpi.TC.hints,elpi,default] +make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' + dh_auto_test + make -j12 test +make[1]: Entering directory '/build/reproducible-path/coq-elpi-2.4.0' +dune runtest +File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: +1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) + ^^^^^^^^^^^^^^^^^^^^^^^^^ +Alert deprecated: Library.indirect_accessor +Most commands should not be accessing opaque data. + +File "src/coq_elpi_HOAS.ml", line 2409, characters 0-61: +2409 | type 'arg tactic_main = Solve of 'arg list | Custom of string + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Warning 34 [unused-type-declaration]: unused type tactic_main. +File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: +1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) + ^^^^^^^^^^^^^^^^^^^^^^^^^ +Alert deprecated: Library.indirect_accessor +Most commands should not be accessing opaque data. + +File "src/coq_elpi_HOAS.ml", line 2409, characters 0-61: +2409 | type 'arg tactic_main = Solve of 'arg list | Custom of string + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Warning 34 [unused-type-declaration]: unused type tactic_main. +The Db contains [phone_prefix USA 1] +Phone prefix for USA is 1 +The Db contains +[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] +Phone prefix for France is 33 +sweet! +brr +yummy! +DEBUG: attempt at fuzzing binary op: global (indc «PLUS») +DEBUG: attempt at fuzzing binary op: global (const «Nat.add») +DEBUG: attempt at fuzzing binary op: global (indc «AND») +DEBUG: fuzzed! +DEBUG: attempt at fuzzing binary op: global (const «andb») +DEBUG: attempt at fuzzing binary op: global (indc «OR») +DEBUG: fuzzed! +DEBUG: attempt at fuzzing binary op: global (const «orb») +DEBUG: attempt at fuzzing binary op: global (indc «EQ») +DEBUG: attempt at fuzzing binary op: global (const «Nat.eqb») +Inductive eval1 : forall T : ty, Exp T -> Val T -> Prop := + E_Num1 : forall n : nat, eval1 N (NUM n) (iNv n) + | E_Bool1 : forall b : bool, eval1 B (BOOL b) (iBv b) + | E_Plus1 : forall (e1 e2 : Exp N) (n1 n2 : nat), + eval1 N e1 (iNv n1) -> + eval1 N e2 (iNv n2) -> eval1 N (PLUS e1 e2) (iNv (n1 + n2)) + | E_AND1 : forall (e1 e2 : Exp B) (b1 b2 : bool), + eval1 B e1 (iBv b1) -> + eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 && b2)) + | E_OR1 : forall (e1 e2 : Exp B) (b1 b2 : bool), + eval1 B e1 (iBv b1) -> + eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 || b2)) + | E_EQ1 : forall (e1 e2 : Exp N) (n1 n2 : nat), + eval1 N e1 (iNv n1) -> + eval1 N e2 (iNv n2) -> eval1 B (EQ e1 e2) (iBv (Nat.eqb n1 n2)). + +Arguments eval1 T _ _ +Arguments E_Num1 n%nat_scope +Arguments E_Bool1 b%bool_scope +Arguments E_Plus1 e1 e2 (n1 n2)%nat_scope _ _ +Arguments E_AND1 e1 e2 (b1 b2)%bool_scope _ _ +Arguments E_OR1 e1 e2 (b1 b2)%bool_scope _ _ +Arguments E_EQ1 e1 e2 (n1 n2)%nat_scope _ _ +foo = +{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} + : Type +mk_foo = +fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => +existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 + (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) + : forall (f1 : Type) (f2 : f1 -> Type), + (forall t : f1, f2 t -> bool) -> foo + +Arguments mk_foo f1%type_scope (f2 f3)%function_scope +(eq_refl : 2 = (let z := 1 in S z)) +Notation p2 := (p2 nat 3 x) +example_import_projections.p1 nat 3 x : nat + : nat +p1 : forall (T : Type) (t : T), r T t -> nat + : forall (T : Type) (t : T), r T t -> nat +eq_refl +: +example_import_projections.p1 bool false (Build bool false 3 eq_refl eq_refl) = +3 + : example_import_projections.p1 bool false + (Build bool false 3 eq_refl eq_refl) = 3 +example_import_projections.f1 _ x + : bool +3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) +goal X0 c0 c1 c2 c3 is + +[decl c3 `H` (app [global (const «lt»), c0, c1]), + decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), + decl c0 `x` (global (indt «nat»))] +------- + +prod `_` (app [global (const «lt»), c1, c2]) c4 \ + app [global (const «lt»), c0, c2] +3 +Query assignments: + GRnat = indt «nat» + GRplus = const «Nat.add» + GRs = indc «S» +Query assignments: + Bo = app [global (indc «S»), app [global (indc «S»), global (indc «O»)]] + C = «x» + GR = const «x» + Ty = global (indt «nat») + TyC = global (indt «nat») +Query assignments: + Bo = fun `x` (global (indt «nat»)) c0 \ c0 + C = «f» +Query assignments: + Bo = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + C = «Nat.add» +The return type of m is: c0 \ c1 \ +fun `x` (global (indt «nat»)) c2 \ + fun `e` + (app [global (indt «eq»), global (indt «nat»), global (indc «O»), c2]) + c3 \ prod `_` (app [c1, global (indc «O»)]) c4 \ app [c1, c2] +Query assignments: + C = «m» + RT = c0 \ c1 \ +fun `x` (global (indt «nat»)) c2 \ + fun `e` + (app [global (indt «eq»), global (indt «nat»), global (indc «O»), c2]) + c3 \ prod `_` (app [c1, global (indc «O»)]) c4 \ app [c1, c2] +typ «elpi_examples.tutorial_coq_elpi_HOAS.6» < +typ «elpi_examples.tutorial_coq_elpi_HOAS.7» +Debug: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.7 <= +elpi_examples.tutorial_coq_elpi_HOAS.6 because +elpi_examples.tutorial_coq_elpi_HOAS.6 +< elpi_examples.tutorial_coq_elpi_HOAS.7 +Query assignments: + U = typ «elpi_examples.tutorial_coq_elpi_HOAS.6» + U1 = typ «elpi_examples.tutorial_coq_elpi_HOAS.7» +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.7 + elpi_examples.tutorial_coq_elpi_HOAS.6} |= + elpi_examples.tutorial_coq_elpi_HOAS.6 < elpi_examples.tutorial_coq_elpi_HOAS.7 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +(id b) is: app [fun `x` (sort (typ X0)) c0 \ c0, sort (typ X1)] +(id a) is illtyped: +Illegal application: +The term "fun x : Type => x" of type "Type -> Type" +cannot be applied to the term + "Type" : "Type" +This term has type "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8+1}" +which should be a subtype of "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8}". +(universe inconsistency: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.8 +< elpi_examples.tutorial_coq_elpi_HOAS.8 because +elpi_examples.tutorial_coq_elpi_HOAS.8 += elpi_examples.tutorial_coq_elpi_HOAS.8) +after typing (id b) is: +app + [fun `x` (sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8»)) c0 \ c0, + sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.9»)] : +sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») +Universe constraints: UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8} |= + elpi_examples.tutorial_coq_elpi_HOAS.9 < elpi_examples.tutorial_coq_elpi_HOAS.8 + ALGEBRAIC UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8} + FLEXIBLE UNIVERSES: + elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + A = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») + B = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.9») + ErrMsg = Illegal application: +The term "fun x : Type => x" of type "Type -> Type" +cannot be applied to the term + "Type" : "Type" +This term has type "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8+1}" +which should be a subtype of "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8}". +(universe inconsistency: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.8 +< elpi_examples.tutorial_coq_elpi_HOAS.8 because +elpi_examples.tutorial_coq_elpi_HOAS.8 += elpi_examples.tutorial_coq_elpi_HOAS.8) + ID = fun `x` (sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8»)) c0 \ c0 + T = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») + U = «elpi_examples.tutorial_coq_elpi_HOAS.8» + V = «elpi_examples.tutorial_coq_elpi_HOAS.9» +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8} |= + elpi_examples.tutorial_coq_elpi_HOAS.9 < elpi_examples.tutorial_coq_elpi_HOAS.8 +ALGEBRAIC UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8} +FLEXIBLE UNIVERSES: + elpi_examples.tutorial_coq_elpi_HOAS.9 + elpi_examples.tutorial_coq_elpi_HOAS.8 +SORTS: + +WEAK CONSTRAINTS: + + +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] += +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), global (indc «O»)]] +Query assignments: + S = indc «S» +fun `x` (global (indt «nat»)) c0 \ + fun `x` (global (indt «nat»)) c1 \ + app [global (const «Nat.add»), c1, c0] +fun `x` (global (indt «nat»)) c0 \ + fun `x` (global (indt «nat»)) c1 \ + app [global (const «Nat.add»), c1, c0] +fun `a` (global (indt «nat»)) c0 \ + fun `b` (global (indt «nat»)) c1 \ + app [global (const «Nat.add»), c1, c0] +Query assignments: + X = c0 \ c1 \ +app [global (const «Nat.add»), c1, c0] +fun `a` (global (indt «nat»)) c0 \ + fun `b` (global (indt «nat»)) c1 \ + app [global (indt «eq»), global (indt «nat»), c0, c1] +indt «nat» +indt «nat» +before: +fun `ax` (global (indt «nat»)) c0 \ + fun `b` (global (indt «nat»)) c1 \ + app [global (indt «eq»), X0 c1, c0, c1] +after: +fun `ax` (global (indt «nat»)) c0 \ + fun `b` (global (indt «nat»)) c1 \ + app [global (indt «eq»), global (indt «nat»), c0, c1] +Query assignments: + T = fun `ax` (global (indt «nat»)) c0 \ + fun `b` (global (indt «nat»)) c1 \ + app [global (indt «eq»), global (indt «nat»), c0, c1] + X1_ = c0 \ +global (indt «nat») +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.11 + elpi_examples.tutorial_coq_elpi_HOAS.10} |= + elpi_examples.tutorial_coq_elpi_HOAS.11 < elpi_examples.tutorial_coq_elpi_HOAS.10 + Set <= elpi_examples.tutorial_coq_elpi_HOAS.11 + elpi_examples.tutorial_coq_elpi_HOAS.11 <= eq.u0 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α6 := Type +WEAK CONSTRAINTS: + + +Query assignments: + Bo = c0 \ +app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]] + N = `x` + T = fun `x` (global (indt «nat»)) c0 \ + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]] + Ty = global (indt «nat») +Query assignments: + Bo = c0 \ +app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]] + N = `x` + T = fun `x` (global (indt «nat»)) c0 \ + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]] + Ty = global (indt «nat») +raw T = X0 + +SHELF: +FUTURE GOALS STACK: + + +Coq-Elpi mapping: +RAW: +ELAB: + +-------------------------------- + evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ +EVARS: + ?X11==[ |- nat] (internal placeholder) {?e0} + ?X10==[ |- => nat] (internal placeholder) + +SHELF: +FUTURE GOALS STACK: + ?X11 + +Coq-Elpi mapping: +RAW: +?X11 <-> X1 +ELAB: +?X11 <-> X1 + +Query assignments: + T = X1 + X2_ = X1 +Syntactic constraints: + evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.12} |= + Set <= elpi_examples.tutorial_coq_elpi_HOAS.12 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α7 := Type +WEAK CONSTRAINTS: + + +raw T = +fun `x` (global (indt «nat»)) c0 \ + app [global (const «Nat.add»), c0, X0 c0] + {c0 c1} : decl c1 `x` (global (indt «nat»)) + ?- evar (X1 c1) (global (indt «nat»)) (X1 c1) /* suspended on X1 */ +EVARS: + ?X13==[x |- nat] (internal placeholder) {?e0} + ?X12==[x |- => nat] (internal placeholder) + +SHELF: +FUTURE GOALS STACK: + ?X13 + +Coq-Elpi mapping: +RAW: +?X13 <-> c0 \ X1 c0 +ELAB: +?X13 <-> X1 + +Query assignments: + Bo = c0 \ +app [global (const «Nat.add»), c0, X1 c0] + N = `x` + T = fun `x` (global (indt «nat»)) c0 \ + app [global (const «Nat.add»), c0, X1 c0] + Ty = global (indt «nat») + X3_ = c0 \ +X1 c0 +Syntactic constraints: + {c0 c1} : decl c1 `x` (global (indt «nat»)) + ?- evar (X1 c1) (global (indt «nat»)) (X1 c1) /* suspended on X1 */ +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.13} |= + Set <= elpi_examples.tutorial_coq_elpi_HOAS.13 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α8 := Type +WEAK CONSTRAINTS: + + +Bo1 (not in pattern fragment) = +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + X0 (app [global (indc «S»), global (indc «O»)])] +Bo1 before = +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + X0 (app [global (indc «S»), global (indc «O»)])] +Bo1 after = +app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], X1] +Query assignments: + Bo = c0 \ +app [global (const «Nat.add»), c0, X1] + Bo1 = app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], X1] + N = `x` + T = fun `x` (global (indt «nat»)) c0 \ app [global (const «Nat.add»), c0, X1] + Ty = global (indt «nat») + X5_ = c0 \ +X1 +Syntactic constraints: + evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ +Universe constraints: +UNIVERSES: + {elpi_examples.tutorial_coq_elpi_HOAS.14} |= + Set <= elpi_examples.tutorial_coq_elpi_HOAS.14 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α9 := Type +WEAK CONSTRAINTS: + + +Query assignments: + Bo = c0 \ +app [global (const «andb»), c0, X0 c0] + Bo1 = app + [global (const «andb»), app [global (indc «S»), global (indc «O»)], + X0 (app [global (indc «S»), global (indc «O»)])] + Bo2 = app + [global (const «andb»), + app + [global (const «nat2bool»), + app [global (indc «S»), global (indc «O»)]], X1] + N = `x` + T = fun `x` (global (indt «nat»)) c0 \ app [global (const «andb»), c0, X0 c0] + Ty = global (indt «nat») + X6_ = X0 +Syntactic constraints: + evar (X2) (global (indt «bool»)) X1 /* suspended on X2, X1 */ +File "./examples/tutorial_coq_elpi_HOAS.v", line 87, characters 19-24: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 87, characters 19-24 +GRnat is linear: name it _GRnat (discard) or GRnat_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 89, characters 20-26: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 89, characters 20-26 +GRplus is linear: name it _GRplus (discard) or GRplus_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 88, characters 17-20: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 88, characters 17-20 +GRs is linear: name it _GRs (discard) or GRs_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 24-26: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 24-26 +Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 107, characters 20-22: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 107, characters 20-22 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 28-31: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 28-31 +TyC is linear: name it _TyC (discard) or TyC_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 152, characters 24-26: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 152, characters 24-26 +Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 195, characters 24-26: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 195, characters 24-26 +Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 285, characters 17-18: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 285, characters 17-18 +V is linear: name it _V (discard) or V_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 10-11: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 10-11 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 12-14: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 12-14 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 10-11: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 10-11 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 12-14: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 12-14 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 756, characters 40-43: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 756, characters 40-43 +Bo2 is linear: name it _Bo2 (discard) or Bo2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 10-11: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 10-11 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 12-14: +Warning: +File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 12-14 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] File "./apps/NES/theories/NES.v", line 39, characters 0-42: Warning: Undeclared globals: @@ -3226,7 +5217,6 @@ Please add the following text to your program: type ns list string -> modpath -> prop. [elpi.missing-types,elpi.typecheck,elpi,default] -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_command.v) Hello [str world!] Hello [int 46] Hello [str there] @@ -3298,7 +5288,7 @@ interp x := some (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) -The module is «elpi_examples.tutorial_coq_elpi_command.Module49» +The module is «elpi_examples.tutorial_coq_elpi_command.Module2» Box.Box.Box.Box.foo = fun n : nat => n + 2 : nat -> nat @@ -3313,30 +5303,6 @@ File "./examples/tutorial_coq_elpi_command.v", line 644, characters 7-14: Warning: This command does not support this attribute: unknown. [unsupported-attributes,parsing,default] -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_reflexive_tactic.v) -normP : -forall {T : Type} {e : T} {op : T -> T -> T} {gamma : list T} {t1 t2 : lang}, -(forall a b c : T, op a (op b c) = op (op a b) c) -> -(forall a : T, op e a = a) -> -(forall a : T, op a e = a) -> -norm t1 = norm t2 -> interp T e op gamma t1 = interp T e op gamma t2 - -normP is not universe polymorphic -Arguments normP {T}%type_scope {e} {op}%function_scope - {gamma}%list_scope {t1 t2} (p1 p2 p3)%function_scope - H -normP is transparent -Expands to: Constant elpi_examples.example_reflexive_tactic.normP -(fun x y z t : Z => - normP Z.add_assoc Z.add_0_l Z.add_0_r - (eq_refl - <: - norm (add (add (var 0) (var 1)) (add (add (var 2) zero) (var 3))) = - norm (add (add (var 0) (add (var 1) (var 2))) (var 3)))) -Debug: In environment -x, y, z, t : Z -Unable to unify "var 1" with "var 0". -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_elpi_lang.v) The age of alice is 20 Query assignments: A = 20 @@ -3724,7 +5690,7 @@ Debug: rid:1 step:2 gid:16 user:rule:backchain = success -Debug: }}} -> (0.004s) +Debug: }}} -> (0.000s) Debug: run 3 {{{ Debug: @@ -4155,33 +6121,6 @@ File "./examples/tutorial_elpi_lang.v", line 1184, characters 16-17 R is linear: name it _R (discard) or R_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1504, characters 5-21: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1504, characters 5-21 -The standard λProlog infix operator for implication => has higher precedence -than conjunction. This means that 'A => B, C' reads '(A => B), C'. -This is a common mistake since it makes A only available to B (and not to C -as many newcomers may expect). -If this is really what you want write '(A => B), C' to silence this warning. -Otherwise write 'A => (B, C)', or use the alternative implication operator ==>. -Infix ==> has lower precedence than conjunction, hence -'A ==> B, C' reads 'A ==> (B, C)' and means the same as 'A => (B, C)'. -[elpi.implication-precedence,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1504, characters 10-11: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1504, characters 10-11 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1504, characters 20-21: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1504, characters 20-21 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1504, characters 28-29: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1504, characters 28-29 -C is linear: name it _C (discard) or C_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10: Warning: File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10 @@ -4212,7 +6151,6 @@ File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29 C is linear: name it _C (discard) or C_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_tactic.v) Goal: [decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] |- X0 c0 c1 : @@ -4316,954 +6254,10 @@ File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46 G2 is linear: name it _G2 (discard) or G2_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -(cd _build/default && /usr/bin/coqc -w -all -w -elpi -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/zarith -I apps/tc/src -I src -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/aarch64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/tc/elpi elpi.apps.tc.elpi -R apps/tc/theories elpi.apps.tc apps/tc/theories/tc.v) -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (RelationClasses.equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || - Init.class_apply @Morphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (Morphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (CMorphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @CMorphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.complement_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply RelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply CRelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) Init.unconvertible -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || - Init.class_apply @CMorphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/theories/tc.v", line 202, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] -make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' - dh_auto_test - make -j12 test -make[1]: Entering directory '/build/reproducible-path/coq-elpi-2.4.0' -dune runtest -File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: -1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) - ^^^^^^^^^^^^^^^^^^^^^^^^^ -Alert deprecated: Library.indirect_accessor -Most commands should not be accessing opaque data. - -File "src/coq_elpi_HOAS.ml", line 2409, characters 0-61: -2409 | type 'arg tactic_main = Solve of 'arg list | Custom of string - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Warning 34 [unused-type-declaration]: unused type tactic_main. -File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: -1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) - ^^^^^^^^^^^^^^^^^^^^^^^^^ -Alert deprecated: Library.indirect_accessor -Most commands should not be accessing opaque data. - -File "src/coq_elpi_HOAS.ml", line 2409, characters 0-61: -2409 | type 'arg tactic_main = Solve of 'arg list | Custom of string - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Warning 34 [unused-type-declaration]: unused type tactic_main. -The Db contains [phone_prefix USA 1] -Phone prefix for USA is 1 -The Db contains -[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] -Phone prefix for France is 33 -sweet! -brr -yummy! -Notation p2 := (p2 nat 3 x) -example_import_projections.p1 nat 3 x : nat - : nat -p1 : forall (T : Type) (t : T), r T t -> nat - : forall (T : Type) (t : T), r T t -> nat -eq_refl -: -example_import_projections.p1 bool false (Build bool false 3 eq_refl eq_refl) = -3 - : example_import_projections.p1 bool false - (Build bool false 3 eq_refl eq_refl) = 3 -example_import_projections.f1 _ x - : bool -goal X0 c0 c1 c2 c3 is - -[decl c3 `H` (app [global (const «lt»), c0, c1]), - decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), - decl c0 `x` (global (indt «nat»))] -------- - -prod `_` (app [global (const «lt»), c1, c2]) c4 \ - app [global (const «lt»), c0, c2] -3 -3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) -foo = -{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} - : Type -mk_foo = -fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => -existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 - (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) - : forall (f1 : Type) (f2 : f1 -> Type), - (forall t : f1, f2 t -> bool) -> foo - -Arguments mk_foo f1%type_scope (f2 f3)%function_scope -DEBUG: attempt at fuzzing binary op: global (indc «PLUS») -DEBUG: attempt at fuzzing binary op: global (const «Nat.add») -DEBUG: attempt at fuzzing binary op: global (indc «AND») -DEBUG: fuzzed! -DEBUG: attempt at fuzzing binary op: global (const «andb») -DEBUG: attempt at fuzzing binary op: global (indc «OR») -DEBUG: fuzzed! -DEBUG: attempt at fuzzing binary op: global (const «orb») -DEBUG: attempt at fuzzing binary op: global (indc «EQ») -DEBUG: attempt at fuzzing binary op: global (const «Nat.eqb») -Inductive eval1 : forall T : ty, Exp T -> Val T -> Prop := - E_Num1 : forall n : nat, eval1 N (NUM n) (iNv n) - | E_Bool1 : forall b : bool, eval1 B (BOOL b) (iBv b) - | E_Plus1 : forall (e1 e2 : Exp N) (n1 n2 : nat), - eval1 N e1 (iNv n1) -> - eval1 N e2 (iNv n2) -> eval1 N (PLUS e1 e2) (iNv (n1 + n2)) - | E_AND1 : forall (e1 e2 : Exp B) (b1 b2 : bool), - eval1 B e1 (iBv b1) -> - eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 && b2)) - | E_OR1 : forall (e1 e2 : Exp B) (b1 b2 : bool), - eval1 B e1 (iBv b1) -> - eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 || b2)) - | E_EQ1 : forall (e1 e2 : Exp N) (n1 n2 : nat), - eval1 N e1 (iNv n1) -> - eval1 N e2 (iNv n2) -> eval1 B (EQ e1 e2) (iBv (Nat.eqb n1 n2)). - -Arguments eval1 T _ _ -Arguments E_Num1 n%nat_scope -Arguments E_Bool1 b%bool_scope -Arguments E_Plus1 e1 e2 (n1 n2)%nat_scope _ _ -Arguments E_AND1 e1 e2 (b1 b2)%bool_scope _ _ -Arguments E_OR1 e1 e2 (b1 b2)%bool_scope _ _ -Arguments E_EQ1 e1 e2 (n1 n2)%nat_scope _ _ -(eq_refl : 2 = (let z := 1 in S z)) The argument fun x : ?e => x + ?e1 was closed under 1 binders old replacement: fun (x : ?e) (y : ?e0) => x - y with fun (y : ?e1) (x : ?e2) => y + x new replacement: fun y : ?e0 => x - y with fun y : ?e1 => y + x -Query assignments: - GRnat = indt «nat» - GRplus = const «Nat.add» - GRs = indc «S» -Query assignments: - Bo = app [global (indc «S»), app [global (indc «S»), global (indc «O»)]] - C = «x» - GR = const «x» - Ty = global (indt «nat») - TyC = global (indt «nat») -Query assignments: - Bo = fun `x` (global (indt «nat»)) c0 \ c0 - C = «f» -Query assignments: - Bo = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - C = «Nat.add» -The return type of m is: c0 \ c1 \ -fun `x` (global (indt «nat»)) c2 \ - fun `e` - (app [global (indt «eq»), global (indt «nat»), global (indc «O»), c2]) - c3 \ prod `_` (app [c1, global (indc «O»)]) c4 \ app [c1, c2] -Query assignments: - C = «m» - RT = c0 \ c1 \ -fun `x` (global (indt «nat»)) c2 \ - fun `e` - (app [global (indt «eq»), global (indt «nat»), global (indc «O»), c2]) - c3 \ prod `_` (app [c1, global (indc «O»)]) c4 \ app [c1, c2] -typ «elpi_examples.tutorial_coq_elpi_HOAS.6» < -typ «elpi_examples.tutorial_coq_elpi_HOAS.7» -Debug: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.7 <= -elpi_examples.tutorial_coq_elpi_HOAS.6 because -elpi_examples.tutorial_coq_elpi_HOAS.6 -< elpi_examples.tutorial_coq_elpi_HOAS.7 -Query assignments: - U = typ «elpi_examples.tutorial_coq_elpi_HOAS.6» - U1 = typ «elpi_examples.tutorial_coq_elpi_HOAS.7» -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.7 - elpi_examples.tutorial_coq_elpi_HOAS.6} |= - elpi_examples.tutorial_coq_elpi_HOAS.6 < elpi_examples.tutorial_coq_elpi_HOAS.7 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -(id b) is: app [fun `x` (sort (typ X0)) c0 \ c0, sort (typ X1)] -(id a) is illtyped: -Illegal application: -The term "fun x : Type => x" of type "Type -> Type" -cannot be applied to the term - "Type" : "Type" -This term has type "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8+1}" -which should be a subtype of "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8}". -(universe inconsistency: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.8 -< elpi_examples.tutorial_coq_elpi_HOAS.8 because -elpi_examples.tutorial_coq_elpi_HOAS.8 -= elpi_examples.tutorial_coq_elpi_HOAS.8) -after typing (id b) is: -app - [fun `x` (sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8»)) c0 \ c0, - sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.9»)] : -sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») -Universe constraints: UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8} |= - elpi_examples.tutorial_coq_elpi_HOAS.9 < elpi_examples.tutorial_coq_elpi_HOAS.8 - ALGEBRAIC UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8} - FLEXIBLE UNIVERSES: - elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - A = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») - B = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.9») - ErrMsg = Illegal application: -The term "fun x : Type => x" of type "Type -> Type" -cannot be applied to the term - "Type" : "Type" -This term has type "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8+1}" -which should be a subtype of "Type@{elpi_examples.tutorial_coq_elpi_HOAS.8}". -(universe inconsistency: Cannot enforce elpi_examples.tutorial_coq_elpi_HOAS.8 -< elpi_examples.tutorial_coq_elpi_HOAS.8 because -elpi_examples.tutorial_coq_elpi_HOAS.8 -= elpi_examples.tutorial_coq_elpi_HOAS.8) - ID = fun `x` (sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8»)) c0 \ c0 - T = sort (typ «elpi_examples.tutorial_coq_elpi_HOAS.8») - U = «elpi_examples.tutorial_coq_elpi_HOAS.8» - V = «elpi_examples.tutorial_coq_elpi_HOAS.9» -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8} |= - elpi_examples.tutorial_coq_elpi_HOAS.9 < elpi_examples.tutorial_coq_elpi_HOAS.8 -ALGEBRAIC UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8} -FLEXIBLE UNIVERSES: - elpi_examples.tutorial_coq_elpi_HOAS.9 - elpi_examples.tutorial_coq_elpi_HOAS.8 -SORTS: - -WEAK CONSTRAINTS: - - -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] -= -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), global (indc «O»)]] -Query assignments: - S = indc «S» -fun `x` (global (indt «nat»)) c0 \ - fun `x` (global (indt «nat»)) c1 \ - app [global (const «Nat.add»), c1, c0] -fun `x` (global (indt «nat»)) c0 \ - fun `x` (global (indt «nat»)) c1 \ - app [global (const «Nat.add»), c1, c0] -fun `a` (global (indt «nat»)) c0 \ - fun `b` (global (indt «nat»)) c1 \ - app [global (const «Nat.add»), c1, c0] -Query assignments: - X = c0 \ c1 \ -app [global (const «Nat.add»), c1, c0] -fun `a` (global (indt «nat»)) c0 \ - fun `b` (global (indt «nat»)) c1 \ - app [global (indt «eq»), global (indt «nat»), c0, c1] -indt «nat» -indt «nat» -before: -fun `ax` (global (indt «nat»)) c0 \ - fun `b` (global (indt «nat»)) c1 \ - app [global (indt «eq»), X0 c1, c0, c1] -after: -fun `ax` (global (indt «nat»)) c0 \ - fun `b` (global (indt «nat»)) c1 \ - app [global (indt «eq»), global (indt «nat»), c0, c1] -Query assignments: - T = fun `ax` (global (indt «nat»)) c0 \ - fun `b` (global (indt «nat»)) c1 \ - app [global (indt «eq»), global (indt «nat»), c0, c1] - X1_ = c0 \ -global (indt «nat») -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.11 - elpi_examples.tutorial_coq_elpi_HOAS.10} |= - elpi_examples.tutorial_coq_elpi_HOAS.11 < elpi_examples.tutorial_coq_elpi_HOAS.10 - Set <= elpi_examples.tutorial_coq_elpi_HOAS.11 - elpi_examples.tutorial_coq_elpi_HOAS.11 <= eq.u0 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α6 := Type -WEAK CONSTRAINTS: - - -Query assignments: - Bo = c0 \ -app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]] - N = `x` - T = fun `x` (global (indt «nat»)) c0 \ - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]] - Ty = global (indt «nat») -Query assignments: - Bo = c0 \ -app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]] - N = `x` - T = fun `x` (global (indt «nat»)) c0 \ - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]] - Ty = global (indt «nat») -raw T = X0 - -SHELF: -FUTURE GOALS STACK: - - -Coq-Elpi mapping: -RAW: -ELAB: - --------------------------------- - evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ -EVARS: - ?X11==[ |- nat] (internal placeholder) {?e0} - ?X10==[ |- => nat] (internal placeholder) - -SHELF: -FUTURE GOALS STACK: - ?X11 - -Coq-Elpi mapping: -RAW: -?X11 <-> X1 -ELAB: -?X11 <-> X1 - -Query assignments: - T = X1 - X2_ = X1 -Syntactic constraints: - evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.12} |= - Set <= elpi_examples.tutorial_coq_elpi_HOAS.12 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α7 := Type -WEAK CONSTRAINTS: - - -raw T = -fun `x` (global (indt «nat»)) c0 \ - app [global (const «Nat.add»), c0, X0 c0] - {c0 c1} : decl c1 `x` (global (indt «nat»)) - ?- evar (X1 c1) (global (indt «nat»)) (X1 c1) /* suspended on X1 */ -EVARS: - ?X13==[x |- nat] (internal placeholder) {?e0} - ?X12==[x |- => nat] (internal placeholder) - -SHELF: -FUTURE GOALS STACK: - ?X13 - -Coq-Elpi mapping: -RAW: -?X13 <-> c0 \ X1 c0 -ELAB: -?X13 <-> X1 - -Query assignments: - Bo = c0 \ -app [global (const «Nat.add»), c0, X1 c0] - N = `x` - T = fun `x` (global (indt «nat»)) c0 \ - app [global (const «Nat.add»), c0, X1 c0] - Ty = global (indt «nat») - X3_ = c0 \ -X1 c0 -Syntactic constraints: - {c0 c1} : decl c1 `x` (global (indt «nat»)) - ?- evar (X1 c1) (global (indt «nat»)) (X1 c1) /* suspended on X1 */ -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.13} |= - Set <= elpi_examples.tutorial_coq_elpi_HOAS.13 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α8 := Type -WEAK CONSTRAINTS: - - -Bo1 (not in pattern fragment) = -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - X0 (app [global (indc «S»), global (indc «O»)])] -Bo1 before = -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - X0 (app [global (indc «S»), global (indc «O»)])] -Bo1 after = -app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], X1] -Query assignments: - Bo = c0 \ -app [global (const «Nat.add»), c0, X1] - Bo1 = app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], X1] - N = `x` - T = fun `x` (global (indt «nat»)) c0 \ app [global (const «Nat.add»), c0, X1] - Ty = global (indt «nat») - X5_ = c0 \ -X1 -Syntactic constraints: - evar (X1) (global (indt «nat»)) (X1) /* suspended on X1 */ -Universe constraints: -UNIVERSES: - {elpi_examples.tutorial_coq_elpi_HOAS.14} |= - Set <= elpi_examples.tutorial_coq_elpi_HOAS.14 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α9 := Type -WEAK CONSTRAINTS: - - -Query assignments: - Bo = c0 \ -app [global (const «andb»), c0, X0 c0] - Bo1 = app - [global (const «andb»), app [global (indc «S»), global (indc «O»)], - X0 (app [global (indc «S»), global (indc «O»)])] - Bo2 = app - [global (const «andb»), - app - [global (const «nat2bool»), - app [global (indc «S»), global (indc «O»)]], X1] - N = `x` - T = fun `x` (global (indt «nat»)) c0 \ app [global (const «andb»), c0, X0 c0] - Ty = global (indt «nat») - X6_ = X0 -Syntactic constraints: - evar (X2) (global (indt «bool»)) X1 /* suspended on X2, X1 */ -File "./examples/tutorial_coq_elpi_HOAS.v", line 87, characters 19-24: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 87, characters 19-24 -GRnat is linear: name it _GRnat (discard) or GRnat_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 89, characters 20-26: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 89, characters 20-26 -GRplus is linear: name it _GRplus (discard) or GRplus_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 88, characters 17-20: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 88, characters 17-20 -GRs is linear: name it _GRs (discard) or GRs_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 24-26: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 24-26 -Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 107, characters 20-22: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 107, characters 20-22 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 28-31: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 113, characters 28-31 -TyC is linear: name it _TyC (discard) or TyC_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 152, characters 24-26: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 152, characters 24-26 -Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 195, characters 24-26: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 195, characters 24-26 -Bo is linear: name it _Bo (discard) or Bo_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 285, characters 17-18: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 285, characters 17-18 -V is linear: name it _V (discard) or V_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 10-11: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 10-11 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 12-14: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 681, characters 12-14 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 10-11: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 10-11 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 12-14: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 718, characters 12-14 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 756, characters 40-43: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 756, characters 40-43 -Bo2 is linear: name it _Bo2 (discard) or Bo2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 10-11: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 10-11 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 12-14: -Warning: -File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 12-14 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -Hello [str world!] -Hello [int 46] -Hello [str there] -Hello [str my, str friend] -Hello [str this.is.a.qualified.name] -Hello -[trm - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app [global (indc «S»), global (indc «O»)]])] -Hello -[const-decl test - (some - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app [global (indc «S»), global (indc «O»)]])) (arity (sort prop))] -Hello -[indt-decl - (record test (sort (typ «Set»)) Build_test - (field [coercion off, canonical tt] f1 (global (indt «nat»)) c0 \ - field [coercion off, canonical tt] f2 - (app - [global (indt «eq»), global (indt «nat»), c0, - app [global (indc «S»), global (indc «O»)]]) c1 \ end-record))] -The type of -app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), global (indc «O»)], global (indc «O»)] is -sort prop -1 = true - : Prop -T= -app - [global (indt «eq»), X0, app [global (indc «S»), global (indc «O»)], - global (indc «true»)] -T1= -app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), global (indc «O»)], - app [global (const «bool2nat»), global (indc «true»)]] -Ty= sort prop -nK_bool = 2 - : nat -nK_False = 0 - : nat -Inductive tree' (A : Set) : Set := - leaf' : tree' A | node' : tree' A -> A -> tree' A -> tree' A. - -Arguments tree' A%type_scope -Arguments leaf' A%type_scope -Arguments node' A%type_scope _ _ _ -bob is 24 years old -alice is 21 years old -bob is 24 years old -alice is 21 years old -[attribute elpi.loc - (leaf-loc - File "./examples/tutorial_coq_elpi_command.v", line 610, column 31, characters 17257-17261:), - attribute elpi.phase (leaf-str interp), attribute this (leaf-str ), - attribute more (node [attribute stuff (leaf-str 33)])] -options= -[get-option elpi.loc - File "./examples/tutorial_coq_elpi_command.v", line 643, column 31, characters 18094-18104:, - get-option elpi.phase interp, get-option this tt, get-option more.stuff 33] -33 tt -That is all folks! -going from source to target via plane -synterp x := some _ -interp x := -some - (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) -The module is «elpi_examples.tutorial_coq_elpi_command.Module40» -Box.Box.Box.Box.foo = fun n : nat => n + 2 - : nat -> nat - -Arguments Box.Box.Box.Box.foo n%nat_scope -Module NextModule2 := Struct End -File "./examples/tutorial_coq_elpi_command.v", line 610, characters 2-24: -Warning: This command does not support these attributes: more, this. -[unsupported-attributes,parsing,default] -File "./examples/tutorial_coq_elpi_command.v", line 643, characters 2-24: -Warning: This command does not support these attributes: more, this. -[unsupported-attributes,parsing,default] -File "./examples/tutorial_coq_elpi_command.v", line 644, characters 7-14: -Warning: This command does not support this attribute: unknown. -[unsupported-attributes,parsing,default] Debug: run 1 {{{ Debug: @@ -5306,7 +6300,7 @@ rid:0 step:2 gid:5 user:rule:backchain:candidates = File "elpi-builtin.elpi", line 34, column 0, characters 373-385: File "elpi-builtin.elpi", line 36, column 0, characters 388-400: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.012s) Debug: select 3 {{{ Debug: @@ -6065,7 +7059,7 @@ Debug: rid:0 step:24 gid:28 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.016s) Debug: run 25 {{{ Debug: @@ -6604,7 +7598,7 @@ Debug: rid:1 step:363 gid:1037 user:rule:backchain:candidates = File "builtin_stdlib.elpi", line 279, column 0, characters 9290-9316: -Debug: }}} -> (0.005s) +Debug: }}} -> (0.001s) Debug: select 270 {{{ Debug: @@ -6829,7 +7823,7 @@ Debug: rid:1 step:364 gid:1048 user:newgoal = X8 = «expanded_g» -Debug: }}} -> (0.001s) +Debug: }}} -> (0.037s) Debug: run 365 {{{ Debug: @@ -7316,964 +8310,6 @@ Arguments expanded_g T%type_scope op%function_scope (l s)%list_scope h%bool_scope -The age of alice is 20 -Query assignments: - A = 20 -mallory is 23 years old -Query assignments: - P = mallory -alice is 20 years old -Query assignments: - P = alice -mallory and bob are 23 years old -Query assignments: - A = 23 - P = mallory - Q = bob -I picked P = mallory -I picked Q = mallory -I picked Q = bob -the last choice worked! -mallory and bob are 23 years old -Query assignments: - A = 23 - P = mallory - Q = bob -bob is older than alice -Query assignments: - X = alice -both bob and mallory are older than alice -Query assignments: - X = alice -F = c0 \ age alice c0 -F 20 = age alice 20 -F 23 = age alice 23 -Query assignments: - F = c0 \ -age alice c0 -λx.x ~> fun c0 \ c0 -(λx.x) (λx.x) ~> fun c0 \ c0 -Query assignments: - I = fun c0 \ c0 - T = fun c0 \ c0 - T1 = fun c0 \ c0 -(Fst foo bar) ~> foo -(foo bar) ~> app foo bar -Query assignments: - Fst = fun c0 \ fun c1 \ c0 - S = app foo bar - S1 = app foo bar - T = app (app (fun c0 \ fun c1 \ c0) foo) bar - T1 = foo -The type of λx.λy.x is: arr X0 (arr X1 X0) -Query assignments: - Ty = arr X0 (arr X1 X0) -Error: fun c0 \ app c0 c0 has no type -Query assignments: - Delta = fun c0 \ app c0 c0 - Ty = X0 -2 + 1 = s (s (s z)) -Query assignments: - R = s (s (s z)) -Query assignments: - X = X0 - Z = X1 -Syntactic constraints: sum X0 (s z) X1 /* suspended on X0 */ -The result is: s z -Query assignments: - X = z - Z = s z -Query assignments: - X = s z -Debug: sum X0 (s z) X1 /* suspended on X0 */ -Currently Y = X1 -Debug: sum X2 (s z) X3 /* suspended on X2 */ -Currently Y = s X3 -Finally Y = s (s z) -Query assignments: - X = s z - Y = s (s z) - Z = z -Query assignments: - X = X0 -Syntactic constraints: - even X0 /* suspended on X0 */ odd X0 /* suspended on X0 */ -X0 can't be even and odd at the same time -Query assignments: - A = [1, 2, 3, 3, 2, 1] -Query assignments: - A = [1, 2, 3, 3, 2, 1] -result = 5 -Query assignments: - X = result = - Y = 5 -result = 5 -Query assignments: - %arg1 = 5 -Query assignments: - R1 = X0 - R2 = [2, 3, 4] - R3 = [2, 3, 4] -Query assignments: - R = [2, 3, 4] -Y = c0 -arr X0 (arr X1 X0) -Query assignments: - Ty = arr X0 (arr X1 X0) -Debug: run 1 {{{ - -Debug: - rid:0 step:1 gid:4 user:curgoal = , - of (fun c0 \ fun c1 \ c0) X0 , coq.say X0 - -Debug: - rid:0 step:1 gid:4 user:rule = and - -Debug: - rid:0 step:1 gid:4 user:subgoal = 5 - -Debug: - rid:0 step:1 gid:5 user:newgoal = of (fun c0 \ fun c1 \ c0) X0 - -Debug: - rid:0 step:1 gid:4 user:subgoal = 6 - -Debug: - rid:0 step:1 gid:6 user:newgoal = coq.say X0 - -Debug: - rid:0 step:1 gid:4 user:rule:and = success - -Debug: }}} -> (0.008s) -Debug: run 2 {{{ - -Debug: - rid:0 step:2 gid:5 user:curgoal = of - of (fun c0 \ fun c1 \ c0) X0 - -Debug: - rid:0 step:2 gid:5 user:rule = backchain - -Debug: - rid:0 step:2 gid:5 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - -Debug: }}} -> (0.000s) -Debug: select 3 {{{ - -Debug: - rid:0 step:2 gid:5 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - (of (fun A0) (arr A2 A1)) :- ( - pi (c0 \ - (of c0 A2 => of (A0 c0) A1))). - -Debug: - rid:0 step:2 gid:0 user:assign = A0 := c0 \ - fun c1 \ c0 - -Debug: - rid:0 step:2 gid:0 user:assign = X0 := arr X1 X2 - -Debug: - rid:0 step:2 gid:5 user:subgoal = 7 - -Debug: - rid:0 step:2 gid:7 user:newgoal = pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 - -Debug: - rid:0 step:2 gid:7 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 3 {{{ - -Debug: - rid:0 step:3 gid:7 user:curgoal = pi - pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 - -Debug: rid:0 step:3 gid:7 user:rule = pi - -Debug: - rid:0 step:3 gid:7 user:subgoal = 8 - -Debug: - rid:0 step:3 gid:8 user:newgoal = of c0 X1 => of (fun c1 \ c0) X2 - -Debug: - rid:0 step:3 gid:8 user:rule:pi = success - -Debug: }}} -> (0.000s) -Debug: run 4 {{{ - -Debug: - rid:0 step:4 gid:8 user:curgoal = => - of c0 X1 => of (fun c1 \ c0) X2 - -Debug: - rid:0 step:4 gid:8 user:rule = implication - -Debug: - rid:0 step:4 gid:8 user:subgoal = 9 - -Debug: - rid:0 step:4 gid:9 user:newgoal = of (fun c1 \ c0) X2 - -Debug: - rid:0 step:4 gid:9 user:rule:implication = success - -Debug: }}} -> (0.000s) -Debug: run 5 {{{ - -Debug: - rid:0 step:5 gid:9 user:curgoal = of - of (fun c1 \ c0) X2 - -Debug: - rid:0 step:5 gid:9 user:rule = backchain - -Debug: - rid:0 step:5 gid:9 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - -Debug: }}} -> (0.000s) -Debug: select 4 {{{ - -Debug: - rid:0 step:5 gid:9 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - (of (fun A0) (arr A2 A1)) :- ( - pi (c0 \ - (of c0 A2 => of (A0 c0) A1))). - -Debug: - rid:0 step:5 gid:0 user:assign = A0 := c1 \ - c0 - -Debug: - rid:0 step:5 gid:0 user:assign = X2 := arr X3 X4 - -Debug: - rid:0 step:5 gid:9 user:subgoal = 10 - -Debug: - rid:0 step:5 gid:10 user:newgoal = pi c1 \ of c1 X3 => of c0 X4 - -Debug: - rid:0 step:5 gid:10 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 6 {{{ - -Debug: - rid:0 step:6 gid:10 user:curgoal = pi - pi c1 \ of c1 X3 => of c0 X4 - -Debug: - rid:0 step:6 gid:10 user:rule = pi - -Debug: - rid:0 step:6 gid:10 user:subgoal = 11 - -Debug: - rid:0 step:6 gid:11 user:newgoal = of c1 X3 => of c0 X4 - -Debug: - rid:0 step:6 gid:11 user:rule:pi = success - -Debug: }}} -> (0.000s) -Debug: run 7 {{{ - -Debug: - rid:0 step:7 gid:11 user:curgoal = => - of c1 X3 => of c0 X4 - -Debug: - rid:0 step:7 gid:11 user:rule = implication - -Debug: - rid:0 step:7 gid:11 user:subgoal = 12 - -Debug: - rid:0 step:7 gid:12 user:newgoal = of c0 X4 - -Debug: - rid:0 step:7 gid:12 user:rule:implication = success - -Debug: }}} -> (0.000s) -Debug: run 8 {{{ - -Debug: - rid:0 step:8 gid:12 user:curgoal = of - of c0 X4 - -Debug: - rid:0 step:8 gid:12 user:rule = backchain - -Debug: - rid:0 step:8 gid:12 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 5 {{{ - -Debug: - rid:0 step:8 gid:12 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 X1) :- . - -Debug: - rid:0 step:8 gid:0 user:assign = X1 := X4 - -Debug: - rid:0 step:8 gid:12 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 9 {{{ - -Debug: - rid:0 step:9 gid:6 user:curgoal = coq.say - coq.say (arr X4 (arr X3 X4)) - -Debug: - rid:0 step:9 gid:6 user:rule = builtin - -Debug: - rid:0 step:9 gid:6 user:rule:builtin:name = coq.say - -arr X4 (arr X3 X4) -Debug: - rid:0 step:9 gid:6 user:rule:builtin = success - -Debug: }}} -> (0.000s) -Query assignments: - Ty = arr X4 (arr X3 X4) -Debug: run 1 {{{ - -Debug: - rid:1 step:1 gid:13 user:curgoal = , - of (fun c0 \ app c0 c0) X0 , coq.say X0 - -Debug: - rid:1 step:1 gid:13 user:rule = and - -Debug: - rid:1 step:1 gid:13 user:subgoal = 14 - -Debug: - rid:1 step:1 gid:14 user:newgoal = of (fun c0 \ app c0 c0) X0 - -Debug: - rid:1 step:1 gid:13 user:subgoal = 15 - -Debug: - rid:1 step:1 gid:15 user:newgoal = coq.say X0 - -Debug: - rid:1 step:1 gid:13 user:rule:and = success - -Debug: }}} -> (0.000s) -Debug: run 2 {{{ - -Debug: - rid:1 step:2 gid:14 user:curgoal = of - of (fun c0 \ app c0 c0) X0 - -Debug: - rid:1 step:2 gid:14 user:rule = backchain - -Debug: - rid:1 step:2 gid:14 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - -Debug: }}} -> (0.000s) -Debug: select 3 {{{ - -Debug: - rid:1 step:2 gid:14 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - (of (fun A0) (arr A2 A1)) :- ( - pi (c0 \ - (of c0 A2 => of (A0 c0) A1))). - -Debug: - rid:1 step:2 gid:0 user:assign = A0 := c0 \ - app c0 c0 - -Debug: - rid:1 step:2 gid:0 user:assign = X0 := arr X1 X2 - -Debug: - rid:1 step:2 gid:14 user:subgoal = 16 - -Debug: - rid:1 step:2 gid:16 user:newgoal = pi c0 \ of c0 X1 => of (app c0 c0) X2 - -Debug: - rid:1 step:2 gid:16 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 3 {{{ - -Debug: - rid:1 step:3 gid:16 user:curgoal = pi - pi c0 \ of c0 X1 => of (app c0 c0) X2 - -Debug: - rid:1 step:3 gid:16 user:rule = pi - -Debug: - rid:1 step:3 gid:16 user:subgoal = 17 - -Debug: - rid:1 step:3 gid:17 user:newgoal = of c0 X1 => of (app c0 c0) X2 - -Debug: - rid:1 step:3 gid:17 user:rule:pi = success - -Debug: }}} -> (0.000s) -Debug: run 4 {{{ - -Debug: - rid:1 step:4 gid:17 user:curgoal = => - of c0 X1 => of (app c0 c0) X2 - -Debug: - rid:1 step:4 gid:17 user:rule = implication - -Debug: - rid:1 step:4 gid:17 user:subgoal = 18 - -Debug: - rid:1 step:4 gid:18 user:newgoal = of (app c0 c0) X2 - -Debug: - rid:1 step:4 gid:18 user:rule:implication = success - -Debug: }}} -> (0.000s) -Debug: run 5 {{{ - -Debug: - rid:1 step:5 gid:18 user:curgoal = of - of (app c0 c0) X2 - -Debug: - rid:1 step:5 gid:18 user:rule = backchain - -Debug: - rid:1 step:5 gid:18 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 591, column 2, characters 15200-15250: - -Debug: }}} -> (0.000s) -Debug: select 4 {{{ - -Debug: - rid:1 step:5 gid:18 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 591, column 2, characters 15200-15250: - (of (app A0 A3) A2) :- ( - of A0 (arr A1 A2)), - (of A3 A1). - -Debug: - rid:1 step:5 gid:0 user:assign = A0 := c0 - -Debug: - rid:1 step:5 gid:0 user:assign = A3 := c0 - -Debug: - rid:1 step:5 gid:0 user:assign = A2 := X2 - -Debug: - rid:1 step:5 gid:18 user:subgoal = 19 - -Debug: - rid:1 step:5 gid:19 user:newgoal = of c0 (arr X3^1 X2) - -Debug: - rid:1 step:5 gid:19 user:subgoal = 20 - -Debug: - rid:1 step:5 gid:20 user:newgoal = of c0 X3^1 - -Debug: - rid:1 step:5 gid:19 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 6 {{{ - -Debug: - rid:1 step:6 gid:19 user:curgoal = of - of c0 (arr X3^1 X2) - -Debug: - rid:1 step:6 gid:19 user:rule = backchain - -Debug: - rid:1 step:6 gid:19 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 5 {{{ - -Debug: - rid:1 step:6 gid:19 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 X1) :- . - -Debug: - rid:1 step:6 gid:0 user:assign:expand = X3^1 := X4 c0 - -Debug: - rid:1 step:6 gid:0 user:assign:restrict = 0 X4 c0 := c0 \ - .X5 - -Debug: - rid:1 step:6 gid:0 user:assign = X1 := arr X5 X2 - -Debug: - rid:1 step:6 gid:19 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 7 {{{ - -Debug: - rid:1 step:7 gid:20 user:curgoal = of - of c0 X5 - -Debug: - rid:1 step:7 gid:20 user:rule = backchain - -Debug: - rid:1 step:7 gid:20 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 6 {{{ - -Debug: - rid:1 step:7 gid:20 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 (arr X5 X2)) :- . - -Debug: - rid:1 step:7 gid:20 user:backchain:fail-to = unify X5 with arr X5 X2 - -Debug: }}} -> (0.000s) -Debug: select 7 {{{ - -Debug: - rid:1 step:7 gid:20 user:rule:backchain = fail - -Debug: }}} -> (0.000s) -Debug: run 6 {{{ - -Debug: - rid:2 step:6 gid:27 user:curgoal = pi - pi c1 \ of c1 X0 => of c0 X1 - -Debug: - rid:2 step:6 gid:27 user:rule = pi - -Debug: - rid:2 step:6 gid:27 user:subgoal = 28 - -Debug: - rid:2 step:6 gid:28 user:newgoal = of c1 X0 => of c0 X1 - -Debug: - rid:2 step:6 gid:28 user:rule:pi = success - -Debug: }}} -> (0.000s) -Debug: run 7 {{{ - -Debug: - rid:2 step:7 gid:28 user:curgoal = => - of c1 X0 => of c0 X1 - -Debug: - rid:2 step:7 gid:28 user:rule = implication - -Debug: - rid:2 step:7 gid:28 user:subgoal = 29 - -Debug: - rid:2 step:7 gid:29 user:newgoal = of c0 X1 - -Debug: - rid:2 step:7 gid:29 user:rule:implication = success - -Debug: }}} -> (0.000s) -Debug: run 8 {{{ - -Debug: - rid:2 step:8 gid:29 user:curgoal = of - of c0 X1 - -Debug: - rid:2 step:8 gid:29 user:rule = backchain - -Debug: - rid:2 step:8 gid:29 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 5 {{{ - -Debug: - rid:2 step:8 gid:29 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 X2) :- . - -Debug: - rid:2 step:8 gid:0 user:assign = X2 := X1 - -Debug: - rid:2 step:8 gid:29 user:rule:backchain = success - -Debug: }}} -> (0.000s) -arr X1 (arr X0 X1) -Query assignments: - Ty = arr X1 (arr X0 X1) -Debug: run 2 {{{ - -Debug: - rid:3 step:2 gid:31 user:curgoal = of - of (fun c0 \ fun c1 \ c0) X0 - -Debug: - rid:3 step:2 gid:31 user:rule = backchain - -Debug: - rid:3 step:2 gid:31 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - -Debug: }}} -> (0.000s) -Debug: select 3 {{{ - -Debug: - rid:3 step:2 gid:31 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - (of (fun A0) (arr A2 A1)) :- ( - pi (c0 \ - (of c0 A2 => of (A0 c0) A1))). - -Debug: - rid:3 step:2 gid:0 user:assign = A0 := c0 \ - fun c1 \ c0 - -Debug: - rid:3 step:2 gid:0 user:assign = X0 := arr X1 X2 - -Debug: - rid:3 step:2 gid:31 user:subgoal = 33 - -Debug: - rid:3 step:2 gid:33 user:newgoal = pi c0 \ of c0 X1 => of (fun c1 \ c0) X2 - -Debug: - rid:3 step:2 gid:33 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 5 {{{ - -Debug: - rid:3 step:5 gid:35 user:curgoal = of - of (fun c1 \ c0) X2 - -Debug: - rid:3 step:5 gid:35 user:rule = backchain - -Debug: - rid:3 step:5 gid:35 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - -Debug: }}} -> (0.000s) -Debug: select 4 {{{ - -Debug: - rid:3 step:5 gid:35 user:rule:backchain:try = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: - (of (fun A0) (arr A2 A1)) :- ( - pi (c0 \ - (of c0 A2 => of (A0 c0) A1))). - -Debug: - rid:3 step:5 gid:0 user:assign = A0 := c1 \ - c0 - -Debug: - rid:3 step:5 gid:0 user:assign = X2 := arr X3 X4 - -Debug: - rid:3 step:5 gid:35 user:subgoal = 36 - -Debug: - rid:3 step:5 gid:36 user:newgoal = pi c1 \ of c1 X3 => of c0 X4 - -Debug: - rid:3 step:5 gid:36 user:rule:backchain = success - -Debug: }}} -> (0.000s) -Debug: run 8 {{{ - -Debug: - rid:3 step:8 gid:38 user:curgoal = of - of c0 X4 - -Debug: - rid:3 step:8 gid:38 user:rule = backchain - -Debug: - rid:3 step:8 gid:38 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 5 {{{ - -Debug: - rid:3 step:8 gid:38 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 X1) :- . - -Debug: - rid:3 step:8 gid:0 user:assign = X1 := X4 - -Debug: - rid:3 step:8 gid:38 user:rule:backchain = success - -Debug: }}} -> (0.000s) -arr X4 (arr X3 X4) -Query assignments: - Ty = arr X4 (arr X3 X4) -Debug: run 8 {{{ - -Debug: - rid:4 step:8 gid:47 user:curgoal = of - of c0 X0 - -Debug: - rid:4 step:8 gid:47 user:rule = backchain - -Debug: - rid:4 step:8 gid:47 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: - -Debug: }}} -> (0.000s) -Debug: select 5 {{{ - -Debug: - rid:4 step:8 gid:47 user:rule:backchain:try = File "(context step_id:4)", line 1, column 0, characters 0-0: - (of c0 X1) :- . - -Debug: - rid:4 step:8 gid:0 user:assign = X1 := X0 - -Debug: - rid:4 step:8 gid:47 user:rule:backchain = success - -Debug: }}} -> (0.000s) -arr X0 (arr X2 X0) -Query assignments: - Ty = arr X0 (arr X2 X0) -calling mypred on 3 -calling mypred on 2 -calling mypred on 1 -calling mypred on 0 -ok -Query assignments: - A = X0 - B = X0 - C = X0 -Query assignments: - A = X0 - B = X0 - C = X0 -File "./examples/tutorial_elpi_lang.v", line 554, characters 12-17: -Warning: -File "./examples/tutorial_elpi_lang.v", line 554, characters 12-17 -Hummm is linear: name it _Hummm (discard) or Hummm_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 670, characters 12-14: -Warning: -File "./examples/tutorial_elpi_lang.v", line 670, characters 12-14 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 826, characters 26-27: -Warning: -File "./examples/tutorial_elpi_lang.v", line 826, characters 26-27 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 826, characters 34-35: -Warning: -File "./examples/tutorial_elpi_lang.v", line 826, characters 34-35 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 856, characters 26-27: -Warning: -File "./examples/tutorial_elpi_lang.v", line 856, characters 26-27 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 856, characters 34-35: -Warning: -File "./examples/tutorial_elpi_lang.v", line 856, characters 34-35 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 888, characters 21-22: -Warning: -File "./examples/tutorial_elpi_lang.v", line 888, characters 21-22 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 888, characters 29-30: -Warning: -File "./examples/tutorial_elpi_lang.v", line 888, characters 29-30 -Z is linear: name it _Z (discard) or Z_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1020, characters 26-27: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1020, characters 26-27 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1057, characters 27-28: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1057, characters 27-28 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1146, characters 18-20: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1146, characters 18-20 -R1 is linear: name it _R1 (discard) or R1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1147, characters 15-17: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1147, characters 15-17 -R2 is linear: name it _R2 (discard) or R2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1148, characters 16-18: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1148, characters 16-18 -R3 is linear: name it _R3 (discard) or R3_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1184, characters 16-17: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1184, characters 16-17 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1511, characters 9-10 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1511, characters 20-21: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1511, characters 20-21 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1511, characters 28-29: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1511, characters 28-29 -C is linear: name it _C (discard) or C_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1518, characters 9-10: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1518, characters 9-10 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1518, characters 20-21: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1518, characters 20-21 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29: -Warning: -File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29 -C is linear: name it _C (discard) or C_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/NES/theories/NES.v", line 39, characters 0-42: -Warning: -Undeclared globals: -- File "/build/reproducible-path/coq-elpi-2.4.0/apps/NES/elpi/nes_interp.elpi", line 6, column 24, characters 152-161: ns. -Please add the following text to your program: -type ns list string -> modpath -> prop. -[elpi.missing-types,elpi.typecheck,elpi,default] -Goal: -[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] -|- X0 c0 c1 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], c1] -(I, 0) -conj : forall [A B : Prop], A -> B -> A /\ B - -conj is not universe polymorphic -Arguments conj [A B]%type_scope _ _ -Expands to: Constructor Coq.Init.Logic.conj -(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) -[int 1, str x, str a b, - trm - (app - [global (indt «eq»), X0, - app [global (indc «S»), global (indc «O»)], global (indc «O»)])] -Using H ?p of type Q -Using H ?p of type Q -Using p of type P -[trm c0, trm c3, trm (app [c2, c3])] -found P -found P /\ P -Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], global (indc «O»)] -Proof state: - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X1 c0) - (app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], - global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ -EVARS: - ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} - ?X56==[ |- => fun x : nat => ?Goal] (goal evar) - ?X55==[x |- => nat] (parameter A of eq) - ?X54==[ |- => nat] (type of x) - -SHELF:|| -FUTURE GOALS STACK: - || - -Coq-Elpi mapping: -RAW: -?X57 <-> c0 \ X1 c0 -ELAB: -?X57 <-> X0 - -#goals = 2 -[nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 - (X1 c0 c1) []), - nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 - (X3 c0 c1) [])] -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) -foo = 46 - : nat -bar = (false :: nil)%list - : list bool -baz = (46%nat :: nil)%list - : list nat -File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: -Warning: x is already taken, Elpi will make a name up [lib,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 -Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 -G1 is linear: name it _G1 (discard) or G1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46 -G2 is linear: name it _G2 (discard) or G2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] normP : forall {T : Type} {e : T} {op : T -> T -> T} {gamma : list T} {t1 t2 : lang}, (forall a b c : T, op a (op b c) = op (op a b) c) -> @@ -8633,21 +8669,6 @@ (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] dune build tests -File "./tests/perf_calls.v", line 11, characters 2-3: -Warning: -File "./tests/perf_calls.v", line 11, characters 2-3 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/perf_calls.v", line 13, characters 9-11: -Warning: -File "./tests/perf_calls.v", line 13, characters 9-11 -GR is linear: name it _GR (discard) or GR_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/perf_calls.v", line 13, characters 7-8: -Warning: -File "./tests/perf_calls.v", line 13, characters 7-8 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] Query assignments: I = const «imp» X2.imp : forall (T : Type) (x : T), x = x -> Prop @@ -8698,393 +8719,21 @@ Arguments foo a%nat_scope [b]%nat_scope {c}%nat_scope Query assignments: %arg1 = const «foo» -Query assignments: - E = fun `n` (global (indt «nat»)) c0 \ - fun `t` (app [global (const «T2»), c0]) c1 \ - fun `x` - (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ - app - [global (const «g3»), c0, app [global (const «h»), c0, c1], - app - [global (indc «S»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = prod `n` (global (indt «nat»)) c0 \ - prod `t` (app [global (const «T2»), c0]) c1 \ - prod `x` - (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ - global (indt «nat») - X1_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.13 elpi.tests.test_API_elaborate.10 - elpi.tests.test_API_elaborate.9} |= - elpi.tests.test_API_elaborate.13 < elpi.tests.test_API_elaborate.9 - Set <= elpi.tests.test_API_elaborate.10 - Set <= elpi.tests.test_API_elaborate.13 - T2.u0 <= elpi.tests.test_API_elaborate.13 - f3.u0 <= elpi.tests.test_API_elaborate.13 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_elaborate.10} -FLEXIBLE UNIVERSES: - elpi.tests.test_API_elaborate.10 -SORTS: - α4 := Type - α5 := Type -WEAK CONSTRAINTS: - - -Query assignments: - E = app - [global (const «bar»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]], - global (const «xxx»)] - TY = prop - X2_ = X0 - X3_ = X1 -Query assignments: - E = app - [global (const «op»), global (const «c»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = app [global (const «field»), global (const «c»)] - X4_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.19 elpi.tests.test_API_elaborate.18} |= - elpi.tests.test_API_elaborate.19 < elpi.tests.test_API_elaborate.18 - s.u0 <= elpi.tests.test_API_elaborate.19 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α11 := Type -WEAK CONSTRAINTS: - - -raw: -parameter A explicit (global (const «T1»)) c0 \ - inductive ind1 tt - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.22»))) c1 \ - [constructor K1 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), - constructor K2 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ - arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), - constructor K3 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ - arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] -elab1: -parameter A explicit (global (const «T1»)) c0 \ - inductive ind1 tt - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.23»)) - c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.25»))) c1 \ - [constructor K1 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.28»)) - c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), - constructor K2 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.30»)) - c2 \ - arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), - constructor K3 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.33»)) - c2 \ - arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] -elab2: -parameter A explicit (global (const «T1»)) c0 \ - parameter B explicit (sort (typ «ind1.u0»)) c1 \ - inductive ind1 tt (arity (sort (typ «ind1.u1»))) c2 \ - [constructor K1 (arity (prod `_` c2 c3 \ c2)), - constructor K2 - (arity (prod `_` (app [global (const «f1»), c0]) c3 \ c2)), - constructor K3 - (arity (prod `a` (app [global (const «f1»), c0]) c3 \ c2))] -raw: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «f1.u0»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -elab1: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «elpi.tests.test_API_elaborate.38»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -elab2: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «ind2.u0»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -raw: -record ind3 (sort (typ «elpi.tests.test_API_elaborate.41»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 - (sort (typ «elpi.tests.test_API_elaborate.40»)) c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -elab1: -record ind3 (sort (typ «elpi.tests.test_API_elaborate.42»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 - (sort (typ «elpi.tests.test_API_elaborate.43»)) c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -elab2: -record ind3 (sort (typ «ind3.u0»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 (sort (typ «ind3.u1»)) - c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -forall x : ind3, x -> Prop - : Type -Query assignments: - E = app - [global (const «op»), global (const «c»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = app [global (const «field»), global (const «c»)] -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.50 elpi.tests.test_API_elaborate.49} |= - elpi.tests.test_API_elaborate.50 < elpi.tests.test_API_elaborate.49 - s.u0 <= elpi.tests.test_API_elaborate.50 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α21 := Type -WEAK CONSTRAINTS: - - -unknown_gref -«elpi.tests.test_API_elaborate.52» «elpi.tests.test_API_elaborate.52» -File "./tests/test_API_elaborate.v", line 160, characters 19-20: -Warning: -File "./tests/test_API_elaborate.v", line 160, characters 19-20 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_elaborate.v", line 170, characters 33-34: -Warning: -File "./tests/test_API_elaborate.v", line 170, characters 33-34 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -Query assignments: - L = [gref (indt «Empty_set»), gref (const «Empty_set_rect»), - gref (const «Empty_set_ind»), gref (const «Empty_set_rec»), - gref (const «Empty_set_sind»), gref (indt «unit»), - gref (const «unit_rect»), gref (const «unit_ind»), - gref (const «unit_rec»), gref (const «unit_sind»), - gref (indt «bool»), gref (const «bool_rect»), - gref (const «bool_ind»), gref (const «bool_rec»), - gref (const «bool_sind»), gref (const «andb»), gref (const «orb»), - gref (const «implb»), gref (const «xorb»), gref (const «negb»), - gref (const «andb_prop»), gref (const «andb_true_intro»), - gref (indt «eq_true»), gref (const «eq_true_rect»), - gref (const «eq_true_ind»), gref (const «eq_true_rec»), - gref (const «eq_true_sind»), gref (const «is_true»), - gref (const «eq_true_ind_r»), gref (const «eq_true_rec_r»), - gref (const «eq_true_rect_r»), gref (indt «BoolSpec»), - gref (const «BoolSpec_ind»), gref (const «BoolSpec_sind»), - gref (indt «nat»), gref (const «nat_rect»), gref (const «nat_ind»), - gref (const «nat_rec»), gref (const «nat_sind»), - gref (indt «option»), gref (const «option_rect»), - gref (const «option_ind»), gref (const «option_rec»), - gref (const «option_sind»), gref (const «option_map»), - gref (indt «sum»), gref (const «sum_rect»), gref (const «sum_ind»), - gref (const «sum_rec»), gref (const «sum_sind»), gref (indt «prod»), - gref (const «prod_rect»), gref (const «prod_ind»), - gref (const «prod_rec»), gref (const «prod_sind»), - gref (const «fst»), gref (const «snd»), - gref (const «surjective_pairing»), - gref (const «injective_projections»), gref (const «pair_equal_spec»), - gref (const «curry»), gref (const «uncurry»), - gref (const «rew_pair»), gref (indt «list»), - gref (const «list_rect»), gref (const «list_ind»), - gref (const «list_rec»), gref (const «list_sind»), - gref (const «length»), gref (const «app»), gref (indt «comparison»), - gref (const «comparison_rect»), gref (const «comparison_ind»), - gref (const «comparison_rec»), gref (const «comparison_sind»), - gref (const «comparison_eq_stable»), gref (const «CompOpp»), - gref (const «CompOpp_involutive»), gref (const «CompOpp_inj»), - gref (const «CompOpp_iff»), gref (indt «CompareSpec»), - gref (const «CompareSpec_ind»), gref (const «CompareSpec_sind»), - gref (indt «CompareSpecT»), gref (const «CompareSpecT_rect»), - gref (const «CompareSpecT_ind»), gref (const «CompareSpecT_rec»), - gref (const «CompareSpecT_sind»), gref (const «CompareSpec2Type»), - gref (const «CompSpec»), gref (const «CompSpecT»), - gref (const «CompSpec2Type»), gref (const «ID»), gref (const «id»), - gref (const «IDProp»), gref (const «idProp»)] - MP = «Coq.Init.Datatypes» -elpi.tests.test_API_module.X.i -[elpi, tests, test_API_module, X, Y] -[elpi, tests, test_API_module, X, Y] -Query assignments: - %arg1 = elpi.tests.test_API_module.X.i - %arg2 = elpi.tests.test_API_module.X.i - %arg3 = elpi.tests.test_API_module.X.Y.i - %arg4 = [elpi, tests, test_API_module, X, Y] - %arg5 = [elpi, tests, test_API_module, X, Y] - L = [gref (indt «X.i»), gref (const «X.i_rect»), gref (const «X.i_ind»), - gref (const «X.i_rec»), gref (const «X.i_sind»), gref (const «X.d»), - submodule «elpi.tests.test_API_module.X.Y» - [gref (indt «X.Y.i»), gref (const «X.Y.i_rect»), - gref (const «X.Y.i_ind»), gref (const «X.Y.i_rec»), - gref (const «X.Y.i_sind»), gref (const «X.Y.d»)]] - MP = «elpi.tests.test_API_module.X» - XYi = «X.Y.i» - XYr = «X.Y.i_rect» - Xi = «X.i» -Query assignments: - I = «Y.i» - ID = j - J = «Y.j» - MP = «elpi.tests.test_API_module.Y» - P = [elpi, tests, test_API_module, Y] -Query assignments: - Mp_ta = «elpi.tests.test_API_module.TA» -Query assignments: - GRy = EXN PRINTING: Not_found - I = EXN PRINTING: Not_found - L = [gref (const «A.z»), gref (const «A.i»)] - MP = «elpi.tests.test_API_module.A» - MP_TA = «elpi.tests.test_API_module.TA» - X1_ = «A.i.u0» - X2_ = «elpi.tests.test_API_module.11» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_module.11 A.i.u0} -FLEXIBLE UNIVERSES: - elpi.tests.test_API_module.11 - A.i.u0 -SORTS: - -WEAK CONSTRAINTS: - - -Module -A - : TA -:= Struct - Definition x - Module B - Definition z - Inductive i1 - Definition i1_rect - Definition i1_ind - Definition i1_rec - Definition i1_sind - Definition i - End -A.z - : nat -A.i - : Type -*** [ A.i : Type ] -Query assignments: - A = «elpi.tests.test_API_module.a» - MP_TA = «elpi.tests.test_API_module.TA» - TF = «elpi.tests.test_API_module.TF» -Query assignments: - %arg1 = «elpi.tests.test_API_module.a» - %arg2 = const const EXN PRINTING: Not_found - MP_TA = «elpi.tests.test_API_module.TA» - MP_TF = «elpi.tests.test_API_module.TF» -Module -F - : Funsig (a:TA) Funsig (b:TA) TF -:= Functor (a:TA) Functor (b:TA) Struct Definition w : nat. End -Module B : Sig Parameter w : nat. End := (F A A) -*** [ B.w : nat ] -Query assignments: - MP_TA = «elpi.tests.test_API_module.TA» -Module Type TB = Funsig (A:TA) Sig End -Query assignments: - A = «elpi.tests.test_API_module.A» -Query assignments: - %arg1 = «elpi.tests.test_API_module.A» -Module IA := Struct Definition z : nat. Definition i : Type. End -Query assignments: - %arg1 = «elpi.tests.test_API_module.IA» -Query assignments: - %arg1 = «elpi.tests.test_API_module.IA» -i - : Type -Query assignments: - %arg1 = «elpi.tests.test_API_module.TA» -Query assignments: - %arg1 = «elpi.tests.test_API_module.TA» -Module Type ITA = Sig Parameter z : nat. Parameter i : Type. End -Query assignments: - F = «elpi.tests.test_API_module.R.F» - FT = «elpi.tests.test_API_module.R.FT» - L = [submodule «elpi.tests.test_API_module.R.S» [gref (const «R.S.x»)], - module-type «elpi.tests.test_API_module.R.P1», - module-type «elpi.tests.test_API_module.R.P2», - «elpi.tests.test_API_module.R.F» module-functor - [«elpi.tests.test_API_module.R.P1», «elpi.tests.test_API_module.R.P2»], - «elpi.tests.test_API_module.R.FT» module-type-functor - [«elpi.tests.test_API_module.R.P2», «elpi.tests.test_API_module.R.P1»], - gref (const «R.a»)] - P1 = «elpi.tests.test_API_module.R.P1» - P2 = «elpi.tests.test_API_module.R.P2» - R = «elpi.tests.test_API_module.R» - S = «elpi.tests.test_API_module.R.S» -File "./tests/test_API_module.v", line 7, characters 69-70: -Warning: -File "./tests/test_API_module.v", line 7, characters 69-70 -L is linear: name it _L (discard) or L_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 50, characters 26-28: -Warning: -File "./tests/test_API_module.v", line 50, characters 26-28 -ID is linear: name it _ID (discard) or ID_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 49, characters 28-29: -Warning: -File "./tests/test_API_module.v", line 49, characters 28-29 -P is linear: name it _P (discard) or P_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 77, characters 21-22: -Warning: -File "./tests/test_API_module.v", line 77, characters 21-22 -L is linear: name it _L (discard) or L_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 67, characters 27-32: +File "./tests/perf_calls.v", line 11, characters 2-3: Warning: -File "./tests/test_API_module.v", line 67, characters 27-32 -MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) +File "./tests/perf_calls.v", line 11, characters 2-3 +N is linear: name it _N (discard) or N_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 102, characters 31-36: +File "./tests/perf_calls.v", line 13, characters 9-11: Warning: -File "./tests/test_API_module.v", line 102, characters 31-36 -MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) +File "./tests/perf_calls.v", line 13, characters 9-11 +GR is linear: name it _GR (discard) or GR_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 101, characters 27-32: +File "./tests/perf_calls.v", line 13, characters 7-8: Warning: -File "./tests/test_API_module.v", line 101, characters 27-32 -MP_TF is linear: name it _MP_TF (discard) or MP_TF_ (fresh variable) +File "./tests/perf_calls.v", line 13, characters 7-8 +N is linear: name it _N (discard) or N_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -Query q X0 -Query r X0 -Result r 1 Coq version: 8.20.1 = 8 . 20 . 1 Query assignments: MA = 8 @@ -9964,49 +9613,513 @@ [elpi.TC.hints,elpi,default] File "./tests/test_API_TC_CS.v", line 42, characters 0-30: Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.reflexive_proxy_tac A R) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 66-67: +Warning: +File "./tests/test_API_TC_CS.v", line 43, characters 66-67 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) (equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 102, characters 27-28: +Warning: +File "./tests/test_API_TC_CS.v", line 102, characters 27-28 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_TC_CS.v", line 159, characters 32-33: +Warning: +File "./tests/test_API_TC_CS.v", line 159, characters 32-33 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +«elpi.tests.test_API_notations.abbr» +Query assignments: + A = «elpi.tests.test_API_notations.abbr» + X1_ = X0 + X2_ = c0 \ +X1 c0 + X3_ = c0 \ +X2 c0 +Syntactic constraints: + {c0} : decl c0 `x` X0 ?- evar (X2 c0) (X3 c0) (X2 c0) /* suspended on X2 */ + {c0} : decl c0 `x` X0 + ?- evar (X4 c0) (sort (typ «elpi.tests.test_API_notations.3»)) (X3 c0) /* suspended on X4, X3 */ + {c0} : decl c0 `x` X0 + ?- evar (X1 c0) (sort (typ «elpi.tests.test_API_notations.2»)) (X1 c0) /* suspended on X1 */ + evar (X0) (sort (typ «elpi.tests.test_API_notations.1»)) (X0) /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_notations.3 elpi.tests.test_API_notations.2 + elpi.tests.test_API_notations.1} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α1 + α2 + α3 +WEAK CONSTRAINTS: + + +Notation abbr _elpi_ctx_entry_2_was_x_ _elpi_ctx_entry_1_ := + (_elpi_ctx_entry_2_was_x_ = _elpi_ctx_entry_2_was_x_) +Expands to: Notation elpi.tests.test_API_notations.abbr +4 = 4 + : Prop +Query assignments: + X4_ = X0 + X5_ = c0 \ +X1 c0 + X6_ = c0 \ +X2 c0 +Syntactic constraints: + {c0} : decl c0 `x` X0 ?- evar (X2 c0) (X3 c0) (X2 c0) /* suspended on X2 */ + {c0} : decl c0 `x` X0 + ?- evar (X4 c0) (sort (typ «elpi.tests.test_API_notations.6»)) (X3 c0) /* suspended on X4, X3 */ + {c0} : decl c0 `x` X0 + ?- evar (X1 c0) (sort (typ «elpi.tests.test_API_notations.5»)) (X1 c0) /* suspended on X1 */ + evar (X0) (sort (typ «elpi.tests.test_API_notations.4»)) (X0) /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_notations.6 elpi.tests.test_API_notations.5 + elpi.tests.test_API_notations.4} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α4 + α5 + α6 +WEAK CONSTRAINTS: + + +Notation abbr2 _elpi_ctx_entry_1_was_x_ := + (fun _ => _elpi_ctx_entry_1_was_x_ = _elpi_ctx_entry_1_was_x_) +Expands to: Notation elpi.tests.test_API_notations.abbr2 +(fun _ : nat => 2 = 2) 3 + : Prop +fun `_` X0 c0 \ + app [global (indt «eq»), X1, fun `x` X2 c1 \ c1, fun `x` X2 c1 \ c1] +Query assignments: + %arg1 = «elpi.tests.test_API_notations.abbr2» + T = fun `_` X0 c0 \ + app [global (indt «eq»), X1, fun `x` X2 c1 \ c1, fun `x` X2 c1 \ c1] + X7_ = X2 +Query assignments: + %arg1 = «elpi.tests.test_API_notations.abbr2» +Query assignments: + E = fun `n` (global (indt «nat»)) c0 \ + fun `t` (app [global (const «T2»), c0]) c1 \ + fun `x` + (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ + app + [global (const «g3»), c0, app [global (const «h»), c0, c1], + app + [global (indc «S»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = prod `n` (global (indt «nat»)) c0 \ + prod `t` (app [global (const «T2»), c0]) c1 \ + prod `x` + (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ + global (indt «nat») + X1_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.13 elpi.tests.test_API_elaborate.10 + elpi.tests.test_API_elaborate.9} |= + elpi.tests.test_API_elaborate.13 < elpi.tests.test_API_elaborate.9 + Set <= elpi.tests.test_API_elaborate.10 + Set <= elpi.tests.test_API_elaborate.13 + T2.u0 <= elpi.tests.test_API_elaborate.13 + f3.u0 <= elpi.tests.test_API_elaborate.13 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_elaborate.10} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_elaborate.10 +SORTS: + α4 := Type + α5 := Type +WEAK CONSTRAINTS: + + +Query assignments: + E = app + [global (const «bar»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]], + global (const «xxx»)] + TY = prop + X2_ = X0 + X3_ = X1 +Query assignments: + E = app + [global (const «op»), global (const «c»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = app [global (const «field»), global (const «c»)] + X4_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.19 elpi.tests.test_API_elaborate.18} |= + elpi.tests.test_API_elaborate.19 < elpi.tests.test_API_elaborate.18 + s.u0 <= elpi.tests.test_API_elaborate.19 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α11 := Type +WEAK CONSTRAINTS: + + +raw: +parameter A explicit (global (const «T1»)) c0 \ + inductive ind1 tt + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.22»))) c1 \ + [constructor K1 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), + constructor K2 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ + arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), + constructor K3 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ + arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] +elab1: +parameter A explicit (global (const «T1»)) c0 \ + inductive ind1 tt + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.23»)) + c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.25»))) c1 \ + [constructor K1 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.28»)) + c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), + constructor K2 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.30»)) + c2 \ + arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), + constructor K3 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.33»)) + c2 \ + arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] +elab2: +parameter A explicit (global (const «T1»)) c0 \ + parameter B explicit (sort (typ «ind1.u0»)) c1 \ + inductive ind1 tt (arity (sort (typ «ind1.u1»))) c2 \ + [constructor K1 (arity (prod `_` c2 c3 \ c2)), + constructor K2 + (arity (prod `_` (app [global (const «f1»), c0]) c3 \ c2)), + constructor K3 + (arity (prod `a` (app [global (const «f1»), c0]) c3 \ c2))] +raw: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «f1.u0»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +elab1: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «elpi.tests.test_API_elaborate.38»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +elab2: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «ind2.u0»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +raw: +record ind3 (sort (typ «elpi.tests.test_API_elaborate.41»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 + (sort (typ «elpi.tests.test_API_elaborate.40»)) c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +elab1: +record ind3 (sort (typ «elpi.tests.test_API_elaborate.42»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 + (sort (typ «elpi.tests.test_API_elaborate.43»)) c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +elab2: +record ind3 (sort (typ «ind3.u0»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 (sort (typ «ind3.u1»)) + c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +forall x : ind3, x -> Prop + : Type +Query assignments: + E = app + [global (const «op»), global (const «c»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = app [global (const «field»), global (const «c»)] +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.50 elpi.tests.test_API_elaborate.49} |= + elpi.tests.test_API_elaborate.50 < elpi.tests.test_API_elaborate.49 + s.u0 <= elpi.tests.test_API_elaborate.50 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α21 := Type +WEAK CONSTRAINTS: + + +unknown_gref +«elpi.tests.test_API_elaborate.52» «elpi.tests.test_API_elaborate.52» +File "./tests/test_API_elaborate.v", line 160, characters 19-20: +Warning: +File "./tests/test_API_elaborate.v", line 160, characters 19-20 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_elaborate.v", line 170, characters 33-34: +Warning: +File "./tests/test_API_elaborate.v", line 170, characters 33-34 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: + L = [gref (indt «Empty_set»), gref (const «Empty_set_rect»), + gref (const «Empty_set_ind»), gref (const «Empty_set_rec»), + gref (const «Empty_set_sind»), gref (indt «unit»), + gref (const «unit_rect»), gref (const «unit_ind»), + gref (const «unit_rec»), gref (const «unit_sind»), + gref (indt «bool»), gref (const «bool_rect»), + gref (const «bool_ind»), gref (const «bool_rec»), + gref (const «bool_sind»), gref (const «andb»), gref (const «orb»), + gref (const «implb»), gref (const «xorb»), gref (const «negb»), + gref (const «andb_prop»), gref (const «andb_true_intro»), + gref (indt «eq_true»), gref (const «eq_true_rect»), + gref (const «eq_true_ind»), gref (const «eq_true_rec»), + gref (const «eq_true_sind»), gref (const «is_true»), + gref (const «eq_true_ind_r»), gref (const «eq_true_rec_r»), + gref (const «eq_true_rect_r»), gref (indt «BoolSpec»), + gref (const «BoolSpec_ind»), gref (const «BoolSpec_sind»), + gref (indt «nat»), gref (const «nat_rect»), gref (const «nat_ind»), + gref (const «nat_rec»), gref (const «nat_sind»), + gref (indt «option»), gref (const «option_rect»), + gref (const «option_ind»), gref (const «option_rec»), + gref (const «option_sind»), gref (const «option_map»), + gref (indt «sum»), gref (const «sum_rect»), gref (const «sum_ind»), + gref (const «sum_rec»), gref (const «sum_sind»), gref (indt «prod»), + gref (const «prod_rect»), gref (const «prod_ind»), + gref (const «prod_rec»), gref (const «prod_sind»), + gref (const «fst»), gref (const «snd»), + gref (const «surjective_pairing»), + gref (const «injective_projections»), gref (const «pair_equal_spec»), + gref (const «curry»), gref (const «uncurry»), + gref (const «rew_pair»), gref (indt «list»), + gref (const «list_rect»), gref (const «list_ind»), + gref (const «list_rec»), gref (const «list_sind»), + gref (const «length»), gref (const «app»), gref (indt «comparison»), + gref (const «comparison_rect»), gref (const «comparison_ind»), + gref (const «comparison_rec»), gref (const «comparison_sind»), + gref (const «comparison_eq_stable»), gref (const «CompOpp»), + gref (const «CompOpp_involutive»), gref (const «CompOpp_inj»), + gref (const «CompOpp_iff»), gref (indt «CompareSpec»), + gref (const «CompareSpec_ind»), gref (const «CompareSpec_sind»), + gref (indt «CompareSpecT»), gref (const «CompareSpecT_rect»), + gref (const «CompareSpecT_ind»), gref (const «CompareSpecT_rec»), + gref (const «CompareSpecT_sind»), gref (const «CompareSpec2Type»), + gref (const «CompSpec»), gref (const «CompSpecT»), + gref (const «CompSpec2Type»), gref (const «ID»), gref (const «id»), + gref (const «IDProp»), gref (const «idProp»)] + MP = «Coq.Init.Datatypes» +elpi.tests.test_API_module.X.i +[elpi, tests, test_API_module, X, Y] +[elpi, tests, test_API_module, X, Y] +Query assignments: + %arg1 = elpi.tests.test_API_module.X.i + %arg2 = elpi.tests.test_API_module.X.i + %arg3 = elpi.tests.test_API_module.X.Y.i + %arg4 = [elpi, tests, test_API_module, X, Y] + %arg5 = [elpi, tests, test_API_module, X, Y] + L = [gref (indt «X.i»), gref (const «X.i_rect»), gref (const «X.i_ind»), + gref (const «X.i_rec»), gref (const «X.i_sind»), gref (const «X.d»), + submodule «elpi.tests.test_API_module.X.Y» + [gref (indt «X.Y.i»), gref (const «X.Y.i_rect»), + gref (const «X.Y.i_ind»), gref (const «X.Y.i_rec»), + gref (const «X.Y.i_sind»), gref (const «X.Y.d»)]] + MP = «elpi.tests.test_API_module.X» + XYi = «X.Y.i» + XYr = «X.Y.i_rect» + Xi = «X.i» +Query assignments: + I = «Y.i» + ID = j + J = «Y.j» + MP = «elpi.tests.test_API_module.Y» + P = [elpi, tests, test_API_module, Y] +Query assignments: + Mp_ta = «elpi.tests.test_API_module.TA» +Query assignments: + GRy = EXN PRINTING: Not_found + I = EXN PRINTING: Not_found + L = [gref (const «A.z»), gref (const «A.i»)] + MP = «elpi.tests.test_API_module.A» + MP_TA = «elpi.tests.test_API_module.TA» + X1_ = «A.i.u0» + X2_ = «elpi.tests.test_API_module.11» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_module.11 A.i.u0} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_module.11 + A.i.u0 +SORTS: + +WEAK CONSTRAINTS: + + +Module +A + : TA +:= Struct + Definition x + Module B + Definition z + Inductive i1 + Definition i1_rect + Definition i1_ind + Definition i1_rec + Definition i1_sind + Definition i + End +A.z + : nat +A.i + : Type +*** [ A.i : Type ] +Query assignments: + A = «elpi.tests.test_API_module.a» + MP_TA = «elpi.tests.test_API_module.TA» + TF = «elpi.tests.test_API_module.TF» +Query assignments: + %arg1 = «elpi.tests.test_API_module.a» + %arg2 = const const EXN PRINTING: Not_found + MP_TA = «elpi.tests.test_API_module.TA» + MP_TF = «elpi.tests.test_API_module.TF» +Module +F + : Funsig (a:TA) Funsig (b:TA) TF +:= Functor (a:TA) Functor (b:TA) Struct Definition w : nat. End +Module B : Sig Parameter w : nat. End := (F A A) +*** [ B.w : nat ] +Query assignments: + MP_TA = «elpi.tests.test_API_module.TA» +Module Type TB = Funsig (A:TA) Sig End +Query assignments: + A = «elpi.tests.test_API_module.A» +Query assignments: + %arg1 = «elpi.tests.test_API_module.A» +Module IA := Struct Definition z : nat. Definition i : Type. End +Query assignments: + %arg1 = «elpi.tests.test_API_module.IA» +Query assignments: + %arg1 = «elpi.tests.test_API_module.IA» +i + : Type +Query assignments: + %arg1 = «elpi.tests.test_API_module.TA» +Query assignments: + %arg1 = «elpi.tests.test_API_module.TA» +Module Type ITA = Sig Parameter z : nat. Parameter i : Type. End +Query assignments: + F = «elpi.tests.test_API_module.R.F» + FT = «elpi.tests.test_API_module.R.FT» + L = [submodule «elpi.tests.test_API_module.R.S» [gref (const «R.S.x»)], + module-type «elpi.tests.test_API_module.R.P1», + module-type «elpi.tests.test_API_module.R.P2», + «elpi.tests.test_API_module.R.F» module-functor + [«elpi.tests.test_API_module.R.P1», «elpi.tests.test_API_module.R.P2»], + «elpi.tests.test_API_module.R.FT» module-type-functor + [«elpi.tests.test_API_module.R.P2», «elpi.tests.test_API_module.R.P1»], + gref (const «R.a»)] + P1 = «elpi.tests.test_API_module.R.P1» + P2 = «elpi.tests.test_API_module.R.P2» + R = «elpi.tests.test_API_module.R» + S = «elpi.tests.test_API_module.R.S» +File "./tests/test_API_module.v", line 7, characters 69-70: +Warning: +File "./tests/test_API_module.v", line 7, characters 69-70 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 50, characters 26-28: Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +File "./tests/test_API_module.v", line 50, characters 26-28 +ID is linear: name it _ID (discard) or ID_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 49, characters 28-29: Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 66-67: +File "./tests/test_API_module.v", line 49, characters 28-29 +P is linear: name it _P (discard) or P_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 77, characters 21-22: Warning: -File "./tests/test_API_TC_CS.v", line 43, characters 66-67 +File "./tests/test_API_module.v", line 77, characters 21-22 L is linear: name it _L (discard) or L_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 0-70: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 0-70: -Warning: -There is an hint extern in the typeclass db: -(*external*) (equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +File "./tests/test_API_module.v", line 67, characters 27-32: Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 102, characters 27-28: +File "./tests/test_API_module.v", line 67, characters 27-32 +MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 102, characters 31-36: Warning: -File "./tests/test_API_TC_CS.v", line 102, characters 27-28 -L is linear: name it _L (discard) or L_ (fresh variable) +File "./tests/test_API_module.v", line 102, characters 31-36 +MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_TC_CS.v", line 159, characters 32-33: +File "./tests/test_API_module.v", line 101, characters 27-32: Warning: -File "./tests/test_API_TC_CS.v", line 159, characters 32-33 -L is linear: name it _L (discard) or L_ (fresh variable) +File "./tests/test_API_module.v", line 101, characters 27-32 +MP_TF is linear: name it _MP_TF (discard) or MP_TF_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +Query q X0 +Query r X0 +Result r 1 Query assignments: CA = «a» CB = «b» @@ -10030,83 +10143,6 @@ : nat bar : bool -> nat : bool -> nat -«elpi.tests.test_API_notations.abbr» -Query assignments: - A = «elpi.tests.test_API_notations.abbr» - X1_ = X0 - X2_ = c0 \ -X1 c0 - X3_ = c0 \ -X2 c0 -Syntactic constraints: - {c0} : decl c0 `x` X0 ?- evar (X2 c0) (X3 c0) (X2 c0) /* suspended on X2 */ - {c0} : decl c0 `x` X0 - ?- evar (X4 c0) (sort (typ «elpi.tests.test_API_notations.3»)) (X3 c0) /* suspended on X4, X3 */ - {c0} : decl c0 `x` X0 - ?- evar (X1 c0) (sort (typ «elpi.tests.test_API_notations.2»)) (X1 c0) /* suspended on X1 */ - evar (X0) (sort (typ «elpi.tests.test_API_notations.1»)) (X0) /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_notations.3 elpi.tests.test_API_notations.2 - elpi.tests.test_API_notations.1} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α1 - α2 - α3 -WEAK CONSTRAINTS: - - -Notation abbr _elpi_ctx_entry_2_was_x_ _elpi_ctx_entry_1_ := - (_elpi_ctx_entry_2_was_x_ = _elpi_ctx_entry_2_was_x_) -Expands to: Notation elpi.tests.test_API_notations.abbr -4 = 4 - : Prop -Query assignments: - X4_ = X0 - X5_ = c0 \ -X1 c0 - X6_ = c0 \ -X2 c0 -Syntactic constraints: - {c0} : decl c0 `x` X0 ?- evar (X2 c0) (X3 c0) (X2 c0) /* suspended on X2 */ - {c0} : decl c0 `x` X0 - ?- evar (X4 c0) (sort (typ «elpi.tests.test_API_notations.6»)) (X3 c0) /* suspended on X4, X3 */ - {c0} : decl c0 `x` X0 - ?- evar (X1 c0) (sort (typ «elpi.tests.test_API_notations.5»)) (X1 c0) /* suspended on X1 */ - evar (X0) (sort (typ «elpi.tests.test_API_notations.4»)) (X0) /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_notations.6 elpi.tests.test_API_notations.5 - elpi.tests.test_API_notations.4} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α4 - α5 - α6 -WEAK CONSTRAINTS: - - -Notation abbr2 _elpi_ctx_entry_1_was_x_ := - (fun _ => _elpi_ctx_entry_1_was_x_ = _elpi_ctx_entry_1_was_x_) -Expands to: Notation elpi.tests.test_API_notations.abbr2 -(fun _ : nat => 2 = 2) 3 - : Prop -fun `_` X0 c0 \ - app [global (indt «eq»), X1, fun `x` X2 c1 \ c1, fun `x` X2 c1 \ c1] -Query assignments: - %arg1 = «elpi.tests.test_API_notations.abbr2» - T = fun `_` X0 c0 \ - app [global (indt «eq»), X1, fun `x` X2 c1 \ c1, fun `x` X2 c1 \ c1] - X7_ = X2 -Query assignments: - %arg1 = «elpi.tests.test_API_notations.abbr2» Query assignments: BO = fix `add` 0 (prod `n` (global (indt «nat»)) c0 \ @@ -10246,6 +10282,26 @@ File "./tests/test_File3.v", line 18, characters 2-16: Warning: This command does not support this attribute: phase. [unsupported-attributes,parsing,default] +d1 + : nat +d2 + : nat +i1 + : Prop +i2 + : Prop +k1 + : i1 +k2 + : i2 +r1 + : Set +r2 + : Type +f1 + : r1 -> nat +f2 + : r2 -> nat {c0} : decl c0 `x` (global (indt «nat»)) ?- evar (X0 c0) (prod `_` (global (indt «bool»)) c1 \ global (indt «True»)) @@ -11203,664 +11259,6 @@ File "./tests/test_HOAS.v", line 630, characters 36-37 U is linear: name it _U (discard) or U_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -d1 - : nat -d2 - : nat -i1 - : Prop -i2 - : Prop -k1 - : i1 -k2 - : i2 -r1 - : Set -r2 - : Type -f1 - : r1 -> nat -f2 - : r2 -> nat -Query assignments: - B = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - GR = «Nat.add» - RB = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - T = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -Syntactic constraints: - {c0 c1 c2 c3} : - decl c3 `n` (global (indt «nat»)), decl c2 `m` (global (indt «nat»)), - decl c1 `n` (global (indt «nat»)), - decl c0 `add` - (prod `n` (global (indt «nat»)) c1 \ - prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) - ?- evar (X0 c0 c1 c2 c3) (sort (typ «elpi.tests.test_elaborator.17»)) - (X1 c0 c1 c2 c3) /* suspended on X0, X1 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.23 elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.21 elpi.tests.test_elaborator.20 - elpi.tests.test_elaborator.19 elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.17 elpi.tests.test_elaborator.16 - elpi.tests.test_elaborator.15 elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.13 elpi.tests.test_elaborator.12 - elpi.tests.test_elaborator.11 elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.9 elpi.tests.test_elaborator.8 - elpi.tests.test_elaborator.7 elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.5 elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.3 elpi.tests.test_elaborator.2 - elpi.tests.test_elaborator.1} |= - Set <= elpi.tests.test_elaborator.1 - Set <= elpi.tests.test_elaborator.2 - Set <= elpi.tests.test_elaborator.3 - Set <= elpi.tests.test_elaborator.8 - Set <= elpi.tests.test_elaborator.12 - Set <= elpi.tests.test_elaborator.16 - Set <= elpi.tests.test_elaborator.20 - elpi.tests.test_elaborator.1 <= elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.2 <= elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.3 <= elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.4 <= elpi.tests.test_elaborator.5 - elpi.tests.test_elaborator.5 <= elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.6 <= elpi.tests.test_elaborator.7 - elpi.tests.test_elaborator.8 <= elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.9 <= elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.10 <= elpi.tests.test_elaborator.11 - elpi.tests.test_elaborator.12 <= elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.13 <= elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.14 <= elpi.tests.test_elaborator.15 - elpi.tests.test_elaborator.16 <= elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.17 <= elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.18 <= elpi.tests.test_elaborator.19 - elpi.tests.test_elaborator.20 <= elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.21 <= elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.22 <= elpi.tests.test_elaborator.23 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - B = fun `n` (global (indt «nat»)) c0 \ - app - [global (const «nat_ind»), - fun `n` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]], - let `_` - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app - [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) - (app - [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) - c1 \ c1, - fun `n` (global (indt «nat»)) c1 \ - fun `IHn` - (app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ - let `_` - (app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), c1], - app - [global (const «Nat.add»), app [global (indc «S»), c1], - global (indc «O»)]]) - (app - [global (const «f_equal_nat»), global (indt «nat»), - global (indc «S»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ - c3, c0] - GR = «plus_n_O» - RB = fun `n` (global (indt «nat»)) c0 \ - app - [global (const «nat_ind»), - fun `n` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]], - let `_` - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app - [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) - (app - [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) - c1 \ c1, - fun `n` (global (indt «nat»)) c1 \ - fun `IHn` - (app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ - let `_` - (app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), c1], - app - [global (const «Nat.add»), app [global (indc «S»), c1], - global (indc «O»)]]) - (app - [global (const «f_equal_nat»), global (indt «nat»), - global (indc «S»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ - c3, c0] - TY = prod `n` (global (indt «nat»)) c0 \ - app - [global (indt «eq»), global (indt «nat»), c0, - app [global (const «Nat.add»), c0, global (indc «O»)]] -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.38 elpi.tests.test_elaborator.37 - elpi.tests.test_elaborator.36 elpi.tests.test_elaborator.35 - elpi.tests.test_elaborator.34 elpi.tests.test_elaborator.33 - elpi.tests.test_elaborator.32 elpi.tests.test_elaborator.31 - elpi.tests.test_elaborator.30 elpi.tests.test_elaborator.29 - elpi.tests.test_elaborator.28 elpi.tests.test_elaborator.27 - elpi.tests.test_elaborator.26 elpi.tests.test_elaborator.25 - elpi.tests.test_elaborator.24} |= - Set <= eq.u0 - Set <= Coq.Init.Logic.11 - Set <= elpi.tests.test_elaborator.24 - Set <= elpi.tests.test_elaborator.28 - Set <= elpi.tests.test_elaborator.32 - elpi.tests.test_elaborator.24 <= elpi.tests.test_elaborator.26 - elpi.tests.test_elaborator.25 <= elpi.tests.test_elaborator.26 - elpi.tests.test_elaborator.26 <= elpi.tests.test_elaborator.27 - elpi.tests.test_elaborator.28 <= elpi.tests.test_elaborator.30 - elpi.tests.test_elaborator.29 <= elpi.tests.test_elaborator.30 - elpi.tests.test_elaborator.30 <= elpi.tests.test_elaborator.31 - elpi.tests.test_elaborator.32 <= elpi.tests.test_elaborator.34 - elpi.tests.test_elaborator.33 <= elpi.tests.test_elaborator.34 - elpi.tests.test_elaborator.34 <= elpi.tests.test_elaborator.35 - elpi.tests.test_elaborator.36 <= elpi.tests.test_elaborator.37 - elpi.tests.test_elaborator.37 <= elpi.tests.test_elaborator.38 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -CHR: Uniqueness of typing of frozen--911 + [] <-> [] -[c0] |> [decl c0 `x` (uvar frozen--911 [])] |- frozen--911 [] : -sort (typ «elpi.tests.test_elaborator.40») -[] |> [] |- frozen--911 [] : sort (typ «elpi.tests.test_elaborator.39») -[] |> [] |- -unify-eq (sort (typ «elpi.tests.test_elaborator.40»)) - (sort (typ «elpi.tests.test_elaborator.39»)) - -Query assignments: - R = fun `x` X0 c0 \ c0 - T = prod `x` X0 c0 \ X0 - X1_ = X1 -Syntactic constraints: - {c0} : decl c0 `x` X0 - ?- evar X2 (sort (typ «elpi.tests.test_elaborator.40»)) X0 /* suspended on X2, X0 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.42 elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.40 elpi.tests.test_elaborator.39} |= - elpi.tests.test_elaborator.39 <= elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.39 - elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.41 <= elpi.tests.test_elaborator.42 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - R = fun `x` (global (indt «nat»)) c0 \ - app [global (const «Nat.add»), c0, global (indc «O»)] - T = prod `x` (global (indt «nat»)) c0 \ global (indt «nat») - X2_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.46 elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.44 elpi.tests.test_elaborator.43} |= - elpi.tests.test_elaborator.43 <= elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.44 <= elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.45 <= elpi.tests.test_elaborator.46 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -sort (typ X0) -Query assignments: - X3_ = X0 -Query assignments: - S = sort (typ «elpi.tests.test_elaborator.48») - T = sort (typ «elpi.tests.test_elaborator.47») - X4_ = «elpi.tests.test_elaborator.47» -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.48 elpi.tests.test_elaborator.47} |= - elpi.tests.test_elaborator.47 < elpi.tests.test_elaborator.48 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.47} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.47 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - S = sort (typ «elpi.tests.test_elaborator.50») - T = sort (typ «elpi.tests.test_elaborator.49») - TW = sort (typ «elpi.tests.test_elaborator.49») - W = sort (typ «elpi.tests.test_elaborator.51») - X5_ = «elpi.tests.test_elaborator.49» - X6_ = «elpi.tests.test_elaborator.51» -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.50 - elpi.tests.test_elaborator.49} |= - elpi.tests.test_elaborator.49 < elpi.tests.test_elaborator.50 - elpi.tests.test_elaborator.51 < elpi.tests.test_elaborator.49 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.49} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.51 - elpi.tests.test_elaborator.49 -SORTS: - -WEAK CONSTRAINTS: - - -Debug: Cannot enforce elpi.tests.test_elaborator.52 < -elpi.tests.test_elaborator.52 because elpi.tests.test_elaborator.52 -= elpi.tests.test_elaborator.52 -Query assignments: - X = sort (typ X0) - X7_ = X0 -Query assignments: - X = sort (typ «elpi.tests.test_elaborator.53») - Y = sort (typ «elpi.tests.test_elaborator.54») -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} |= - elpi.tests.test_elaborator.53 < elpi.tests.test_elaborator.54 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.54 - elpi.tests.test_elaborator.53 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - D = X0 - R = app - [global (indc «ex_intro»), X0, - fun `hd_beta_auto` X0 c0 \ - app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - global (indc «O»)], X1, global (const «p»)] - TY = app - [global (indt «ex»), X0, - fun `hd_beta_auto` X0 c0 \ - app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - global (indc «O»)]] - X10_ = X2 - X11_ = X3 - X9_ = X4 -Syntactic constraints: - evar (X4) (sort (typ «ex.u0»)) X0 /* suspended on X4, X0 */ - evar (X3) X0 (X1) /* suspended on X3, X1 */ - evar (X1) X0 X5 /* suspended on X1, X5 */ -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, c0], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, c0]] - X12_ = X0 - X13_ = X1 -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] - X14_ = X0 - X15_ = c0 \ -X1 c0 - X16_ = X2 - X17_ = X3 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.58 elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.56 elpi.tests.test_elaborator.55} |= - Set <= elpi.tests.test_elaborator.55 - elpi.tests.test_elaborator.55 <= elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.56 <= elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.57 <= elpi.tests.test_elaborator.58 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] - X18_ = X0 - X19_ = c0 \ -X1 c0 - X20_ = X2 - X21_ = X3 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.62 elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.60 elpi.tests.test_elaborator.59} |= - Set <= elpi.tests.test_elaborator.59 - elpi.tests.test_elaborator.59 <= elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.60 <= elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.61 <= elpi.tests.test_elaborator.62 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - A = tt - B = 0 - C = 0 - D = sort (typ «Set») - E = [«true», «false»] - F = [global (indt «bool»), global (indt «bool»)] - GR = «bool» -Query assignments: - F = app [global (const «nat_of_bool»), global (indc «true»)] -c0 \ app [global (const «nat_of_bool»), c0] -Query assignments: - Res = app - [global (const «map»), global (indt «bool»), global (indt «nat»), - fun `x` (global (indt «bool»)) c0 \ - app [global (const «nat_of_bool»), c0], - app - [global (indc «cons»), global (indt «bool»), global (indc «true»), - app [global (indc «nil»), global (indt «bool»)]]] - X22_ = X0 - X23_ = X1 -Query assignments: - Res = app - [global (const «Z_of_nat»), - app [global (const «nat_of_bool»), global (indc «true»)]] -c0 \ -app [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]] -Query assignments: - Res = app - [global (const «map»), global (indt «bool»), global (const «Z»), - fun `x` (global (indt «bool»)) c0 \ - app - [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]], - app - [global (indc «cons»), global (indt «bool»), global (indc «true»), - app [global (indc «nil»), global (indt «bool»)]]] - X24_ = X0 - X25_ = X1 -Query assignments: - R = prod `r` (global (const «ring»)) c0 \ - prod `x` (app [global (const «carr»), c0]) c1 \ - app [global (indt «eq»), app [global (const «carr»), c0], c1, c1] - T = sort (typ «elpi.tests.test_elaborator.75») - X26_ = c0 \ c1 \ -X0 c0 c1 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.75 elpi.tests.test_elaborator.74 - elpi.tests.test_elaborator.73 elpi.tests.test_elaborator.72 - elpi.tests.test_elaborator.70} |= - ring.u0 <= elpi.tests.test_elaborator.70 - elpi.tests.test_elaborator.70 <= elpi.tests.test_elaborator.75 - elpi.tests.test_elaborator.73 <= elpi.tests.test_elaborator.74 - elpi.tests.test_elaborator.74 <= elpi.tests.test_elaborator.75 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - T = global (const «int») - X = primitive (uint63 99) -Query assignments: - T = global (const «float») - X = primitive (float64 993000) -Query assignments: - X27_ = X0 -File "./tests/test_elaborator.v", line 16, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 16, characters 10-12 -RB is linear: name it _RB (discard) or RB_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 15, characters 58-59: -Warning: -File "./tests/test_elaborator.v", line 15, characters 58-59 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 16, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 16, characters 7-9 -TY is linear: name it _TY (discard) or TY_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 21, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 21, characters 10-12 -RB is linear: name it _RB (discard) or RB_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 21, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 21, characters 7-9 -TY is linear: name it _TY (discard) or TY_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 27, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 27, characters 41-42 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 27, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 27, characters 39-40 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 29, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 29, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 29, characters 43-44: -Warning: -File "./tests/test_elaborator.v", line 29, characters 43-44 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 36, characters 29-30: -Warning: -File "./tests/test_elaborator.v", line 36, characters 29-30 -S is linear: name it _S (discard) or S_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 36, characters 31-32: -Warning: -File "./tests/test_elaborator.v", line 36, characters 31-32 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 39, characters 15-16: -Warning: -File "./tests/test_elaborator.v", line 39, characters 15-16 -S is linear: name it _S (discard) or S_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 40, characters 29-31: -Warning: -File "./tests/test_elaborator.v", line 40, characters 29-31 -TW is linear: name it _TW (discard) or TW_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 62, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 62, characters 32-33 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 69, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 69, characters 32-33 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 76, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 76, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 88, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 88, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 62-63: -Warning: -File "./tests/test_elaborator.v", line 95, characters 62-63 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 64-65: -Warning: -File "./tests/test_elaborator.v", line 95, characters 64-65 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 95, characters 66-67 -C is linear: name it _C (discard) or C_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 68-69: -Warning: -File "./tests/test_elaborator.v", line 95, characters 68-69 -D is linear: name it _D (discard) or D_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 70-71: -Warning: -File "./tests/test_elaborator.v", line 95, characters 70-71 -E is linear: name it _E (discard) or E_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 95, characters 72-73: -Warning: -File "./tests/test_elaborator.v", line 95, characters 72-73 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 106, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 106, characters 66-67 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 119, characters 35-38: -Warning: -File "./tests/test_elaborator.v", line 119, characters 35-38 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 133, characters 64-67: -Warning: -File "./tests/test_elaborator.v", line 133, characters 64-67 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 136, characters 33-36: -Warning: -File "./tests/test_elaborator.v", line 136, characters 33-36 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 149, characters 49-50: -Warning: -File "./tests/test_elaborator.v", line 149, characters 49-50 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 149, characters 47-48: -Warning: -File "./tests/test_elaborator.v", line 149, characters 47-48 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 154, characters 36-37: -Warning: -File "./tests/test_elaborator.v", line 154, characters 36-37 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 154, characters 38-39: -Warning: -File "./tests/test_elaborator.v", line 154, characters 38-39 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 156, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 156, characters 39-40 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 156, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 156, characters 41-42 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] Debug: ----<<---- enter: coq.say raw: @@ -14617,6 +14015,644 @@ Eliminators around the declaration for full backwards compatibility. [automatic-prop-lowering,deprecated-since-8.20,deprecated,default] Query assignments: + B = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + GR = «Nat.add» + RB = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + T = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +Syntactic constraints: + {c0 c1 c2 c3} : + decl c3 `n` (global (indt «nat»)), decl c2 `m` (global (indt «nat»)), + decl c1 `n` (global (indt «nat»)), + decl c0 `add` + (prod `n` (global (indt «nat»)) c1 \ + prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) + ?- evar (X0 c0 c1 c2 c3) (sort (typ «elpi.tests.test_elaborator.17»)) + (X1 c0 c1 c2 c3) /* suspended on X0, X1 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.23 elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.21 elpi.tests.test_elaborator.20 + elpi.tests.test_elaborator.19 elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.17 elpi.tests.test_elaborator.16 + elpi.tests.test_elaborator.15 elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.13 elpi.tests.test_elaborator.12 + elpi.tests.test_elaborator.11 elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.9 elpi.tests.test_elaborator.8 + elpi.tests.test_elaborator.7 elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.5 elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.3 elpi.tests.test_elaborator.2 + elpi.tests.test_elaborator.1} |= + Set <= elpi.tests.test_elaborator.1 + Set <= elpi.tests.test_elaborator.2 + Set <= elpi.tests.test_elaborator.3 + Set <= elpi.tests.test_elaborator.8 + Set <= elpi.tests.test_elaborator.12 + Set <= elpi.tests.test_elaborator.16 + Set <= elpi.tests.test_elaborator.20 + elpi.tests.test_elaborator.1 <= elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.2 <= elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.3 <= elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.4 <= elpi.tests.test_elaborator.5 + elpi.tests.test_elaborator.5 <= elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.6 <= elpi.tests.test_elaborator.7 + elpi.tests.test_elaborator.8 <= elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.9 <= elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.10 <= elpi.tests.test_elaborator.11 + elpi.tests.test_elaborator.12 <= elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.13 <= elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.14 <= elpi.tests.test_elaborator.15 + elpi.tests.test_elaborator.16 <= elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.17 <= elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.18 <= elpi.tests.test_elaborator.19 + elpi.tests.test_elaborator.20 <= elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.21 <= elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.22 <= elpi.tests.test_elaborator.23 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + B = fun `n` (global (indt «nat»)) c0 \ + app + [global (const «nat_ind»), + fun `n` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]], + let `_` + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) + (app + [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) + c1 \ c1, + fun `n` (global (indt «nat»)) c1 \ + fun `IHn` + (app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ + let `_` + (app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), c1], + app + [global (const «Nat.add»), app [global (indc «S»), c1], + global (indc «O»)]]) + (app + [global (const «f_equal_nat»), global (indt «nat»), + global (indc «S»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ + c3, c0] + GR = «plus_n_O» + RB = fun `n` (global (indt «nat»)) c0 \ + app + [global (const «nat_ind»), + fun `n` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]], + let `_` + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) + (app + [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) + c1 \ c1, + fun `n` (global (indt «nat»)) c1 \ + fun `IHn` + (app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ + let `_` + (app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), c1], + app + [global (const «Nat.add»), app [global (indc «S»), c1], + global (indc «O»)]]) + (app + [global (const «f_equal_nat»), global (indt «nat»), + global (indc «S»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ + c3, c0] + TY = prod `n` (global (indt «nat»)) c0 \ + app + [global (indt «eq»), global (indt «nat»), c0, + app [global (const «Nat.add»), c0, global (indc «O»)]] +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.38 elpi.tests.test_elaborator.37 + elpi.tests.test_elaborator.36 elpi.tests.test_elaborator.35 + elpi.tests.test_elaborator.34 elpi.tests.test_elaborator.33 + elpi.tests.test_elaborator.32 elpi.tests.test_elaborator.31 + elpi.tests.test_elaborator.30 elpi.tests.test_elaborator.29 + elpi.tests.test_elaborator.28 elpi.tests.test_elaborator.27 + elpi.tests.test_elaborator.26 elpi.tests.test_elaborator.25 + elpi.tests.test_elaborator.24} |= + Set <= eq.u0 + Set <= Coq.Init.Logic.11 + Set <= elpi.tests.test_elaborator.24 + Set <= elpi.tests.test_elaborator.28 + Set <= elpi.tests.test_elaborator.32 + elpi.tests.test_elaborator.24 <= elpi.tests.test_elaborator.26 + elpi.tests.test_elaborator.25 <= elpi.tests.test_elaborator.26 + elpi.tests.test_elaborator.26 <= elpi.tests.test_elaborator.27 + elpi.tests.test_elaborator.28 <= elpi.tests.test_elaborator.30 + elpi.tests.test_elaborator.29 <= elpi.tests.test_elaborator.30 + elpi.tests.test_elaborator.30 <= elpi.tests.test_elaborator.31 + elpi.tests.test_elaborator.32 <= elpi.tests.test_elaborator.34 + elpi.tests.test_elaborator.33 <= elpi.tests.test_elaborator.34 + elpi.tests.test_elaborator.34 <= elpi.tests.test_elaborator.35 + elpi.tests.test_elaborator.36 <= elpi.tests.test_elaborator.37 + elpi.tests.test_elaborator.37 <= elpi.tests.test_elaborator.38 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +CHR: Uniqueness of typing of frozen--911 + [] <-> [] +[c0] |> [decl c0 `x` (uvar frozen--911 [])] |- frozen--911 [] : +sort (typ «elpi.tests.test_elaborator.40») +[] |> [] |- frozen--911 [] : sort (typ «elpi.tests.test_elaborator.39») +[] |> [] |- +unify-eq (sort (typ «elpi.tests.test_elaborator.40»)) + (sort (typ «elpi.tests.test_elaborator.39»)) + +Query assignments: + R = fun `x` X0 c0 \ c0 + T = prod `x` X0 c0 \ X0 + X1_ = X1 +Syntactic constraints: + {c0} : decl c0 `x` X0 + ?- evar X2 (sort (typ «elpi.tests.test_elaborator.40»)) X0 /* suspended on X2, X0 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.42 elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.40 elpi.tests.test_elaborator.39} |= + elpi.tests.test_elaborator.39 <= elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.39 + elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.41 <= elpi.tests.test_elaborator.42 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + R = fun `x` (global (indt «nat»)) c0 \ + app [global (const «Nat.add»), c0, global (indc «O»)] + T = prod `x` (global (indt «nat»)) c0 \ global (indt «nat») + X2_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.46 elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.44 elpi.tests.test_elaborator.43} |= + elpi.tests.test_elaborator.43 <= elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.44 <= elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.45 <= elpi.tests.test_elaborator.46 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +sort (typ X0) +Query assignments: + X3_ = X0 +Query assignments: + S = sort (typ «elpi.tests.test_elaborator.48») + T = sort (typ «elpi.tests.test_elaborator.47») + X4_ = «elpi.tests.test_elaborator.47» +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.48 elpi.tests.test_elaborator.47} |= + elpi.tests.test_elaborator.47 < elpi.tests.test_elaborator.48 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.47} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.47 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + S = sort (typ «elpi.tests.test_elaborator.50») + T = sort (typ «elpi.tests.test_elaborator.49») + TW = sort (typ «elpi.tests.test_elaborator.49») + W = sort (typ «elpi.tests.test_elaborator.51») + X5_ = «elpi.tests.test_elaborator.49» + X6_ = «elpi.tests.test_elaborator.51» +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.50 + elpi.tests.test_elaborator.49} |= + elpi.tests.test_elaborator.49 < elpi.tests.test_elaborator.50 + elpi.tests.test_elaborator.51 < elpi.tests.test_elaborator.49 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.49} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.51 + elpi.tests.test_elaborator.49 +SORTS: + +WEAK CONSTRAINTS: + + +Debug: Cannot enforce elpi.tests.test_elaborator.52 < +elpi.tests.test_elaborator.52 because elpi.tests.test_elaborator.52 += elpi.tests.test_elaborator.52 +Query assignments: + X = sort (typ X0) + X7_ = X0 +Query assignments: + X = sort (typ «elpi.tests.test_elaborator.53») + Y = sort (typ «elpi.tests.test_elaborator.54») +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} |= + elpi.tests.test_elaborator.53 < elpi.tests.test_elaborator.54 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.54 + elpi.tests.test_elaborator.53 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + D = X0 + R = app + [global (indc «ex_intro»), X0, + fun `hd_beta_auto` X0 c0 \ + app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + global (indc «O»)], X1, global (const «p»)] + TY = app + [global (indt «ex»), X0, + fun `hd_beta_auto` X0 c0 \ + app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + global (indc «O»)]] + X10_ = X2 + X11_ = X3 + X9_ = X4 +Syntactic constraints: + evar (X4) (sort (typ «ex.u0»)) X0 /* suspended on X4, X0 */ + evar (X3) X0 (X1) /* suspended on X3, X1 */ + evar (X1) X0 X5 /* suspended on X1, X5 */ +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, c0], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, c0]] + X12_ = X0 + X13_ = X1 +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] + X14_ = X0 + X15_ = c0 \ +X1 c0 + X16_ = X2 + X17_ = X3 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.58 elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.56 elpi.tests.test_elaborator.55} |= + Set <= elpi.tests.test_elaborator.55 + elpi.tests.test_elaborator.55 <= elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.56 <= elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.57 <= elpi.tests.test_elaborator.58 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] + X18_ = X0 + X19_ = c0 \ +X1 c0 + X20_ = X2 + X21_ = X3 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.62 elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.60 elpi.tests.test_elaborator.59} |= + Set <= elpi.tests.test_elaborator.59 + elpi.tests.test_elaborator.59 <= elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.60 <= elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.61 <= elpi.tests.test_elaborator.62 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + A = tt + B = 0 + C = 0 + D = sort (typ «Set») + E = [«true», «false»] + F = [global (indt «bool»), global (indt «bool»)] + GR = «bool» +Query assignments: + F = app [global (const «nat_of_bool»), global (indc «true»)] +c0 \ app [global (const «nat_of_bool»), c0] +Query assignments: + Res = app + [global (const «map»), global (indt «bool»), global (indt «nat»), + fun `x` (global (indt «bool»)) c0 \ + app [global (const «nat_of_bool»), c0], + app + [global (indc «cons»), global (indt «bool»), global (indc «true»), + app [global (indc «nil»), global (indt «bool»)]]] + X22_ = X0 + X23_ = X1 +Query assignments: + Res = app + [global (const «Z_of_nat»), + app [global (const «nat_of_bool»), global (indc «true»)]] +c0 \ +app [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]] +Query assignments: + Res = app + [global (const «map»), global (indt «bool»), global (const «Z»), + fun `x` (global (indt «bool»)) c0 \ + app + [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]], + app + [global (indc «cons»), global (indt «bool»), global (indc «true»), + app [global (indc «nil»), global (indt «bool»)]]] + X24_ = X0 + X25_ = X1 +Query assignments: + R = prod `r` (global (const «ring»)) c0 \ + prod `x` (app [global (const «carr»), c0]) c1 \ + app [global (indt «eq»), app [global (const «carr»), c0], c1, c1] + T = sort (typ «elpi.tests.test_elaborator.75») + X26_ = c0 \ c1 \ +X0 c0 c1 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.75 elpi.tests.test_elaborator.74 + elpi.tests.test_elaborator.73 elpi.tests.test_elaborator.72 + elpi.tests.test_elaborator.70} |= + ring.u0 <= elpi.tests.test_elaborator.70 + elpi.tests.test_elaborator.70 <= elpi.tests.test_elaborator.75 + elpi.tests.test_elaborator.73 <= elpi.tests.test_elaborator.74 + elpi.tests.test_elaborator.74 <= elpi.tests.test_elaborator.75 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + T = global (const «int») + X = primitive (uint63 99) +Query assignments: + T = global (const «float») + X = primitive (float64 993000) +Query assignments: + X27_ = X0 +File "./tests/test_elaborator.v", line 16, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 16, characters 10-12 +RB is linear: name it _RB (discard) or RB_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 15, characters 58-59: +Warning: +File "./tests/test_elaborator.v", line 15, characters 58-59 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 16, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 16, characters 7-9 +TY is linear: name it _TY (discard) or TY_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 21, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 21, characters 10-12 +RB is linear: name it _RB (discard) or RB_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 21, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 21, characters 7-9 +TY is linear: name it _TY (discard) or TY_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 27, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 27, characters 41-42 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 27, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 27, characters 39-40 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 29, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 29, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 29, characters 43-44: +Warning: +File "./tests/test_elaborator.v", line 29, characters 43-44 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 36, characters 29-30: +Warning: +File "./tests/test_elaborator.v", line 36, characters 29-30 +S is linear: name it _S (discard) or S_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 36, characters 31-32: +Warning: +File "./tests/test_elaborator.v", line 36, characters 31-32 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 39, characters 15-16: +Warning: +File "./tests/test_elaborator.v", line 39, characters 15-16 +S is linear: name it _S (discard) or S_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 40, characters 29-31: +Warning: +File "./tests/test_elaborator.v", line 40, characters 29-31 +TW is linear: name it _TW (discard) or TW_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 62, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 62, characters 32-33 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 69, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 69, characters 32-33 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 76, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 76, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 88, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 88, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 62-63: +Warning: +File "./tests/test_elaborator.v", line 95, characters 62-63 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 64-65: +Warning: +File "./tests/test_elaborator.v", line 95, characters 64-65 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 95, characters 66-67 +C is linear: name it _C (discard) or C_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 68-69: +Warning: +File "./tests/test_elaborator.v", line 95, characters 68-69 +D is linear: name it _D (discard) or D_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 70-71: +Warning: +File "./tests/test_elaborator.v", line 95, characters 70-71 +E is linear: name it _E (discard) or E_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 95, characters 72-73: +Warning: +File "./tests/test_elaborator.v", line 95, characters 72-73 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 106, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 106, characters 66-67 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 119, characters 35-38: +Warning: +File "./tests/test_elaborator.v", line 119, characters 35-38 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 133, characters 64-67: +Warning: +File "./tests/test_elaborator.v", line 133, characters 64-67 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 136, characters 33-36: +Warning: +File "./tests/test_elaborator.v", line 136, characters 33-36 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 149, characters 49-50: +Warning: +File "./tests/test_elaborator.v", line 149, characters 49-50 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 149, characters 47-48: +Warning: +File "./tests/test_elaborator.v", line 149, characters 47-48 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 154, characters 36-37: +Warning: +File "./tests/test_elaborator.v", line 154, characters 36-37 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 154, characters 38-39: +Warning: +File "./tests/test_elaborator.v", line 154, characters 38-39 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 156, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 156, characters 39-40 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 156, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 156, characters 41-42 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: BO = fix `add` 0 (prod `n` (global (indt «nat»)) c0 \ prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ @@ -16379,7 +16415,7 @@ RingMicromega.PsatzZ; RMicromega.CPow; Field_theory.FEinv; Tauto.IFF; Ring_polynom.PEpow; RMicromega.CInv; Field_theory.FEdiv; Tauto.EQ; RMicromega.COpp; Field_theory.FEpow; }} - T = 1.600272 + T = 4.084303 Query assignments: %arg1 = 4 S = {{ Nat.add; eq; nat; O; }} @@ -17126,7 +17162,7 @@ c5 \ app [c2, c4, c5]]] Debug: [elpi] - Elpi: query-compilation:0.0016 static-check:0.0000 optimization:0.0001 runtime:0.0075 (with success) + Elpi: query-compilation:0.0015 static-check:0.0000 optimization:0.0001 runtime:0.0273 (with success) Query assignments: GR = indc «Ord» @@ -19523,7 +19559,7 @@ (sort (typ «elpi.tests.test_quotation.39»)) (X10 c0 c1 c2 c3 c4) Debug: [elpi] - Elpi: query-compilation:0.0010 static-check:0.0000 optimization:0.0001 runtime:0.0238 (with error) + Elpi: query-compilation:0.0009 static-check:0.0000 optimization:0.0001 runtime:0.0753 (with error) hd : forall A : Type, A -> list A -> A @@ -19767,6 +19803,253 @@ File "./tests/test_vernacular1.v", line 65, characters 26-27 X is linear: name it _X (discard) or X_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: + X1 = «x1» + X2 = «x2» + X3 = «x3» +Query assignments: + M = [[mode-ground], [mode-input]] +1 +1 +1.000000 +1.2 +Query assignments: + C1 = «Nat.add» + C2 = «times» + X1 = tt + X2 = ff +Query assignments: + C1 = «x» +Query assignments: + XX = «elpi.tests.test_API2.xx» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx» +Query assignments: + XX = «elpi.tests.test_API2.xx2» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx2» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx3» +Query assignments: + X1_ = X0 + X2_ = X1 +Syntactic constraints: + evar (X1) (X2) (X1) /* suspended on X1 */ + evar X3 (sort (typ «elpi.tests.test_API2.6»)) (X2) /* suspended on X3, X2 */ + evar (X0) (X4) (X0) /* suspended on X0 */ + evar X5 (sort (typ «elpi.tests.test_API2.5»)) (X4) /* suspended on X5, X4 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API2.6 elpi.tests.test_API2.5} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α4 + α5 +WEAK CONSTRAINTS: + + +Non-discriminated database +Unfoldable variable definitions: all +Unfoldable constant definitions: all +Unfoldable projection definitions: all +Cut: emp +For any goal -> +For xeq -> exact xxx(level 0, pattern 0 = _, id 0) + +Query assignments: + X3_ = «elpi.tests.test_API2.7» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API2.7} +FLEXIBLE UNIVERSES: + elpi.tests.test_API2.7 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + %arg1 = «elpi.tests.test_API2.T» +Query assignments: + GR = const const EXN PRINTING: Not_found +Query assignments: + %arg1 = «elpi.tests.test_API2.F» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.G» +Query assignments: + G = «elpi.tests.test_API2.G» +Module G : Sig Definition id : X.T -> X.T. End := (F X) +Query assignments: + %arg1 = «elpi.tests.test_API2.F» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.H» +Query assignments: + H = «elpi.tests.test_API2.H» +Module H : Sig Definition id : nat -> nat. End := (F X) +Query assignments: + %arg1 = «elpi.tests.test_API2.T» +Query assignments: + GR = const const EXN PRINTING: Not_found +Module Type FT = Funsig (P:T) Sig Parameter idT : P.T -> P.T. End +Query assignments: + %arg1 = «elpi.tests.test_API2.FT» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.GT» +Query assignments: + G = «elpi.tests.test_API2.GT» +Module Type GT = Sig Parameter idT : X.T -> X.T. End +Query assignments: + %arg1 = «elpi.tests.test_API2.FT» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.HT» +Query assignments: + H = «elpi.tests.test_API2.HT» +Module Type HT = Sig Parameter idT : nat -> nat. End +Query assignments: + L = [«elpi.tests.test_API2.8», «elpi.tests.test_API2.9»] + S = {{ elpi.tests.test_API2.8; elpi.tests.test_API2.9; }} + U = «elpi.tests.test_API2.8» + UV = «elpi.tests.test_API2.8» + V = «elpi.tests.test_API2.9» + VV = «elpi.tests.test_API2.9» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API2.9 elpi.tests.test_API2.8} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API2.9 elpi.tests.test_API2.8} +FLEXIBLE UNIVERSES: + elpi.tests.test_API2.9 + elpi.tests.test_API2.8 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + X10_ = c0 \ +X0 c0 + X11_ = X1 + X12_ = c0 \ +X0 c0 + X13_ = X2 + X14_ = c0 \ +X3 c0 + X15_ = c0 \ c1 \ +X4 c0 c1 + X16_ = X5 + X17_ = c0 \ +X6 c0 + X18_ = c0 \ c1 \ +X7 c0 c1 + X19_ = X8 + X20_ = c0 \ +X9 c0 + X21_ = c0 \ c1 \ +X10 c0 c1 + X22_ = X8 + X4_ = X11 + X5_ = X11 + X6_ = X12 + X7_ = X13 + X8_ = c0 \ +X14 c0 + X9_ = X1 +Syntactic constraints: + evar X8 (sort (typ «elpi.tests.test_API2.25»)) X8 /* suspended on X8 */ + evar X8 (sort (typ «elpi.tests.test_API2.28»)) X8 /* suspended on X8 */ + {c0 c1} : decl c1 `x` (X9 c0), decl c0 `z` X8 + ?- evar (X10 c0 c1) (sort (typ «elpi.tests.test_API2.27»)) (X10 c0 c1) /* suspended on X10 */ + {c0} : decl c0 `z` X8 + ?- evar (X9 c0) (sort (typ «elpi.tests.test_API2.26»)) (X9 c0) /* suspended on X9 */ + {c0 c1} : decl c1 `x` (X6 c0), decl c0 `z` X5 + ?- evar (X7 c0 c1) (sort (typ «elpi.tests.test_API2.24»)) (X7 c0 c1) /* suspended on X7 */ + {c0} : decl c0 `z` X5 + ?- evar (X6 c0) (sort (typ «elpi.tests.test_API2.23»)) (X6 c0) /* suspended on X6 */ + evar (X5) (sort (typ «elpi.tests.test_API2.22»)) (X5) /* suspended on X5 */ + {c0 c1} : decl c1 `x` (X3 c0), decl c0 `z` X2 + ?- evar (X4 c0 c1) (sort (typ «elpi.tests.test_API2.21»)) (X4 c0 c1) /* suspended on X4 */ + {c0} : decl c0 `z` X2 + ?- evar (X3 c0) (sort (typ «elpi.tests.test_API2.20»)) (X3 c0) /* suspended on X3 */ + evar (X2) (sort (typ «elpi.tests.test_API2.19»)) (X2) /* suspended on X2 */ + evar X1 (sort (typ «elpi.tests.test_API2.15»)) X1 /* suspended on X1 */ + evar X1 (sort (typ «elpi.tests.test_API2.17»)) X1 /* suspended on X1 */ + {c0} : decl c0 `x` X1 + ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.16»)) (X0 c0) /* suspended on X0 */ + {c0} : decl c0 `x` X1 + ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.18»)) (X0 c0) /* suspended on X0 */ + {c0} : decl c0 `x` X13 + ?- evar (X14 c0) (sort (typ «elpi.tests.test_API2.14»)) (X14 c0) /* suspended on X14 */ + evar (X13) (sort (typ «elpi.tests.test_API2.13»)) (X13) /* suspended on X13 */ + evar (X12) (sort (typ «elpi.tests.test_API2.12»)) (X12) /* suspended on X12 */ + evar X11 (sort (typ «elpi.tests.test_API2.10»)) X11 /* suspended on X11 */ + evar X11 (sort (typ «elpi.tests.test_API2.11»)) X11 /* suspended on X11 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API2.28 elpi.tests.test_API2.27 elpi.tests.test_API2.26 + elpi.tests.test_API2.25 elpi.tests.test_API2.24 elpi.tests.test_API2.23 + elpi.tests.test_API2.22 elpi.tests.test_API2.21 elpi.tests.test_API2.20 + elpi.tests.test_API2.19 elpi.tests.test_API2.18 elpi.tests.test_API2.17 + elpi.tests.test_API2.16 elpi.tests.test_API2.15 elpi.tests.test_API2.14 + elpi.tests.test_API2.13 elpi.tests.test_API2.12 elpi.tests.test_API2.11 + elpi.tests.test_API2.10} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α6 + α7 + α8 + α9 + α10 + α11 + α12 + α13 + α14 + α15 + α16 + α17 + α18 + α19 + α20 + α21 + α22 + α23 + α24 +WEAK CONSTRAINTS: + + +File "./tests/test_API2.v", line 127, characters 0-16: +Warning: Option Foo Bar is deprecated. elpi +[deprecated-option,deprecated,default] +File "./tests/test_API2.v", line 135, characters 0-14: +Warning: Option Foo Bar is deprecated. elpi +[deprecated-option,deprecated,default] +File "./tests/test_API2.v", line 216, characters 23-24: +Warning: +File "./tests/test_API2.v", line 216, characters 23-24 +M is linear: name it _M (discard) or M_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API2.v", line 224, characters 31-32: +Warning: +File "./tests/test_API2.v", line 224, characters 31-32 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API2.v", line 372, characters 0-228: +Warning: +Undeclared globals: +- File "./tests/test_API2.v", line 373, column 2, characters 8768-8778: test. +Please add the following text to your program: +type test term -> term -> prop. +[elpi.missing-types,elpi.typecheck,elpi,default] nabla c1 \ seal (goal [decl c1 `P` (sort prop)] (app [global (const «id»), X0, X1]) @@ -20857,7 +21140,7 @@ global (indc «O»)], c2], c1]]) (X1 c0 c1) -Debug: }}} -> (0.001s) +Debug: }}} -> (0.017s) Debug: run 7 {{{ Debug: @@ -21238,7 +21521,7 @@ File "/build/reproducible-path/coq-elpi-2.4.0/elpi/elpi-ltac.elpi", line 117, column 0, characters 4541-4640: File "/build/reproducible-path/coq-elpi-2.4.0/elpi/elpi-ltac.elpi", line 119, column 0, characters 4642-4704: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.016s) Debug: select 53 {{{ Debug: @@ -21838,7 +22121,7 @@ Debug: rid:4 step:120 gid:246 user:rule:backchain = success -Debug: }}} -> (0.008s) +Debug: }}} -> (0.000s) w : nat File "./tests/test_tactic.v", line 5, characters 28-32: @@ -21847,253 +22130,6 @@ Type is linear: name it _Type (discard) or Type_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] hello1 -Query assignments: - X1 = «x1» - X2 = «x2» - X3 = «x3» -Query assignments: - M = [[mode-ground], [mode-input]] -1 -1 -1.000000 -1.2 -Query assignments: - C1 = «Nat.add» - C2 = «times» - X1 = tt - X2 = ff -Query assignments: - C1 = «x» -Query assignments: - XX = «elpi.tests.test_API2.xx» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx» -Query assignments: - XX = «elpi.tests.test_API2.xx2» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx2» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx3» -Query assignments: - X1_ = X0 - X2_ = X1 -Syntactic constraints: - evar (X1) (X2) (X1) /* suspended on X1 */ - evar X3 (sort (typ «elpi.tests.test_API2.6»)) (X2) /* suspended on X3, X2 */ - evar (X0) (X4) (X0) /* suspended on X0 */ - evar X5 (sort (typ «elpi.tests.test_API2.5»)) (X4) /* suspended on X5, X4 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.6 elpi.tests.test_API2.5} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α4 - α5 -WEAK CONSTRAINTS: - - -Non-discriminated database -Unfoldable variable definitions: all -Unfoldable constant definitions: all -Unfoldable projection definitions: all -Cut: emp -For any goal -> -For xeq -> exact xxx(level 0, pattern 0 = _, id 0) - -Query assignments: - X3_ = «elpi.tests.test_API2.7» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API2.7} -FLEXIBLE UNIVERSES: - elpi.tests.test_API2.7 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - %arg1 = «elpi.tests.test_API2.T» -Query assignments: - GR = const const EXN PRINTING: Not_found -Query assignments: - %arg1 = «elpi.tests.test_API2.F» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.G» -Query assignments: - G = «elpi.tests.test_API2.G» -Module G : Sig Definition id : X.T -> X.T. End := (F X) -Query assignments: - %arg1 = «elpi.tests.test_API2.F» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.H» -Query assignments: - H = «elpi.tests.test_API2.H» -Module H : Sig Definition id : nat -> nat. End := (F X) -Query assignments: - %arg1 = «elpi.tests.test_API2.T» -Query assignments: - GR = const const EXN PRINTING: Not_found -Module Type FT = Funsig (P:T) Sig Parameter idT : P.T -> P.T. End -Query assignments: - %arg1 = «elpi.tests.test_API2.FT» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.GT» -Query assignments: - G = «elpi.tests.test_API2.GT» -Module Type GT = Sig Parameter idT : X.T -> X.T. End -Query assignments: - %arg1 = «elpi.tests.test_API2.FT» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.HT» -Query assignments: - H = «elpi.tests.test_API2.HT» -Module Type HT = Sig Parameter idT : nat -> nat. End -Query assignments: - L = [«elpi.tests.test_API2.8», «elpi.tests.test_API2.9»] - S = {{ elpi.tests.test_API2.8; elpi.tests.test_API2.9; }} - U = «elpi.tests.test_API2.8» - UV = «elpi.tests.test_API2.8» - V = «elpi.tests.test_API2.9» - VV = «elpi.tests.test_API2.9» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.9 elpi.tests.test_API2.8} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API2.9 elpi.tests.test_API2.8} -FLEXIBLE UNIVERSES: - elpi.tests.test_API2.9 - elpi.tests.test_API2.8 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - X10_ = c0 \ -X0 c0 - X11_ = X1 - X12_ = c0 \ -X0 c0 - X13_ = X2 - X14_ = c0 \ -X3 c0 - X15_ = c0 \ c1 \ -X4 c0 c1 - X16_ = X5 - X17_ = c0 \ -X6 c0 - X18_ = c0 \ c1 \ -X7 c0 c1 - X19_ = X8 - X20_ = c0 \ -X9 c0 - X21_ = c0 \ c1 \ -X10 c0 c1 - X22_ = X8 - X4_ = X11 - X5_ = X11 - X6_ = X12 - X7_ = X13 - X8_ = c0 \ -X14 c0 - X9_ = X1 -Syntactic constraints: - evar X8 (sort (typ «elpi.tests.test_API2.25»)) X8 /* suspended on X8 */ - evar X8 (sort (typ «elpi.tests.test_API2.28»)) X8 /* suspended on X8 */ - {c0 c1} : decl c1 `x` (X9 c0), decl c0 `z` X8 - ?- evar (X10 c0 c1) (sort (typ «elpi.tests.test_API2.27»)) (X10 c0 c1) /* suspended on X10 */ - {c0} : decl c0 `z` X8 - ?- evar (X9 c0) (sort (typ «elpi.tests.test_API2.26»)) (X9 c0) /* suspended on X9 */ - {c0 c1} : decl c1 `x` (X6 c0), decl c0 `z` X5 - ?- evar (X7 c0 c1) (sort (typ «elpi.tests.test_API2.24»)) (X7 c0 c1) /* suspended on X7 */ - {c0} : decl c0 `z` X5 - ?- evar (X6 c0) (sort (typ «elpi.tests.test_API2.23»)) (X6 c0) /* suspended on X6 */ - evar (X5) (sort (typ «elpi.tests.test_API2.22»)) (X5) /* suspended on X5 */ - {c0 c1} : decl c1 `x` (X3 c0), decl c0 `z` X2 - ?- evar (X4 c0 c1) (sort (typ «elpi.tests.test_API2.21»)) (X4 c0 c1) /* suspended on X4 */ - {c0} : decl c0 `z` X2 - ?- evar (X3 c0) (sort (typ «elpi.tests.test_API2.20»)) (X3 c0) /* suspended on X3 */ - evar (X2) (sort (typ «elpi.tests.test_API2.19»)) (X2) /* suspended on X2 */ - evar X1 (sort (typ «elpi.tests.test_API2.15»)) X1 /* suspended on X1 */ - evar X1 (sort (typ «elpi.tests.test_API2.17»)) X1 /* suspended on X1 */ - {c0} : decl c0 `x` X1 - ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.16»)) (X0 c0) /* suspended on X0 */ - {c0} : decl c0 `x` X1 - ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.18»)) (X0 c0) /* suspended on X0 */ - {c0} : decl c0 `x` X13 - ?- evar (X14 c0) (sort (typ «elpi.tests.test_API2.14»)) (X14 c0) /* suspended on X14 */ - evar (X13) (sort (typ «elpi.tests.test_API2.13»)) (X13) /* suspended on X13 */ - evar (X12) (sort (typ «elpi.tests.test_API2.12»)) (X12) /* suspended on X12 */ - evar X11 (sort (typ «elpi.tests.test_API2.10»)) X11 /* suspended on X11 */ - evar X11 (sort (typ «elpi.tests.test_API2.11»)) X11 /* suspended on X11 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.28 elpi.tests.test_API2.27 elpi.tests.test_API2.26 - elpi.tests.test_API2.25 elpi.tests.test_API2.24 elpi.tests.test_API2.23 - elpi.tests.test_API2.22 elpi.tests.test_API2.21 elpi.tests.test_API2.20 - elpi.tests.test_API2.19 elpi.tests.test_API2.18 elpi.tests.test_API2.17 - elpi.tests.test_API2.16 elpi.tests.test_API2.15 elpi.tests.test_API2.14 - elpi.tests.test_API2.13 elpi.tests.test_API2.12 elpi.tests.test_API2.11 - elpi.tests.test_API2.10} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α6 - α7 - α8 - α9 - α10 - α11 - α12 - α13 - α14 - α15 - α16 - α17 - α18 - α19 - α20 - α21 - α22 - α23 - α24 -WEAK CONSTRAINTS: - - -File "./tests/test_API2.v", line 127, characters 0-16: -Warning: Option Foo Bar is deprecated. elpi -[deprecated-option,deprecated,default] -File "./tests/test_API2.v", line 135, characters 0-14: -Warning: Option Foo Bar is deprecated. elpi -[deprecated-option,deprecated,default] -File "./tests/test_API2.v", line 216, characters 23-24: -Warning: -File "./tests/test_API2.v", line 216, characters 23-24 -M is linear: name it _M (discard) or M_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API2.v", line 224, characters 31-32: -Warning: -File "./tests/test_API2.v", line 224, characters 31-32 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API2.v", line 372, characters 0-228: -Warning: -Undeclared globals: -- File "./tests/test_API2.v", line 373, column 2, characters 8768-8778: test. -Please add the following text to your program: -type test term -> term -> prop. -[elpi.missing-types,elpi.typecheck,elpi,default] it = elpi_subproof : True it : True @@ -22539,16 +22575,22 @@ File "./tests/test_vernacular2.v", line 10, characters 2-17: Warning: This command does not support this attribute: fwd_compat_attr. [unsupported-attributes,parsing,default] -program -[p] global (indc «O») app [global (indc «S»), app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] -Finished transaction in 1.591 secs (0.798u,0.015s) (successful) -Finished transaction in 16.621 secs (15.87u,0.147s) (successful) -Finished transaction in 0.244 secs (0.243u,0.s) (successful) +program +[p] +Finished transaction in 4.207 secs (0.749u,0.031s) (successful) +Finished transaction in 75.099 secs (15.714u,0.144s) (successful) +Finished transaction in 0.894 secs (0.242u,0.s) (successful) dune build $(find apps -type d -name tests) +d + : nat +trying i = i +trying elpi_ctx_entry_2_ = elpi_ctx_entry_2_ +trying elpi_ctx_entry_1_ = elpi_ctx_entry_1_ /\ p0 = p0 +trying elpi_ctx_entry_1_ = elpi_ctx_entry_1_ /\ p0 = p0 Foo.x = 3 : nat Foo.x = 3 @@ -22584,12 +22626,6 @@ : nat A2.B2.f = 2 : nat -d - : nat -trying i = i -trying elpi_ctx_entry_2_ = elpi_ctx_entry_2_ -trying elpi_ctx_entry_1_ = elpi_ctx_entry_1_ /\ p0 = p0 -trying elpi_ctx_entry_1_ = elpi_ctx_entry_1_ /\ p0 = p0 Module d3 : d3_Locked @@ -23067,6 +23103,61 @@ elpi predicate : tc-C search mode is : tc.deterministic modes are : [o, o] +((fun (A : Type) (f : Type -> Type) (H : forall x : Type, Y (f x)) => + ex_intro (fun g : Type -> Type => Ex g A /\ g nat = g bool) f + (conj (Inst2 A f H) ?Goal)) + : + goal) +2 focused goals (shelved: 1) + + A : Type + f : Type -> Type + H : forall x : Type, Y (f x) + ============================ + Ex ?g A + +goal 2 is: + ?g nat = ?g bool +1 focused goal (shelved: 1) + + A : Type + f : Type -> Type + H : forall x : Type, Y (f x) + ============================ + (fun H0 : Type => f ?e0@{T:=H0}) nat = + (fun H0 : Type => f ?e0@{T:=H0}) bool +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 2) without backtracking +Debug: 2: no match for (E 2), 0 possibilities +Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 1) without backtracking +Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (E 2) without backtracking +Debug: 1: no match for (E 2), 0 possibilities +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 2) without backtracking +Debug: 2: no match for (E 2), 0 possibilities +Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 1) without backtracking +Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) +[seal (goal [] (X0) (app [global (indt «C»), X1]) (X2) []), + seal (goal [] (X3) (app [global (indt «E»), X1]) (X4) [])] +Goal is C ?i +Solution for C 2 is i2 +Goal is E 2 +Solution for C 1 is i1 +Goal is E 1 +Solution for E 1 is e1 Query assignments: Len = 288 Rules = [tc.instance [] (const «RelationClasses.iff_Symmetric») @@ -23612,29 +23703,26 @@ (indt «RelationClasses.PER») [], tc.instance [] (const «ssrsetoid.compat_Reflexive») (const «ssrclasses.Reflexive») []] -((fun (A : Type) (f : Type -> Type) (H : forall x : Type, Y (f x)) => - ex_intro (fun g : Type -> Type => Ex g A /\ g nat = g bool) f - (conj (Inst2 A f H) ?Goal)) - : - goal) -2 focused goals (shelved: 1) +All the remaining goals are on the shelf. + +1 goal + +goal 1 is: + C +1 goal - A : Type - f : Type -> Type - H : forall x : Type, Y (f x) ============================ - Ex ?g A + C +All the remaining goals are on the shelf. -goal 2 is: - ?g nat = ?g bool -1 focused goal (shelved: 1) +1 goal + +goal 1 is: + C +1 goal - A : Type - f : Type -> Type - H : forall x : Type, Y (f x) ============================ - (fun H0 : Type => f ?e0@{T:=H0}) nat = - (fun H0 : Type => f ?e0@{T:=H0}) bool + C File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: Warning: There is an hint extern in the typeclass db: @@ -23957,58 +24045,6 @@ There is an hint extern in the typeclass db: (*external*) (reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 2) without backtracking -Debug: 2: no match for (E 2), 0 possibilities -Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 1) without backtracking -Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (E 2) without backtracking -Debug: 1: no match for (E 2), 0 possibilities -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 2) without backtracking -Debug: 2: no match for (E 2), 0 possibilities -Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 1) without backtracking -Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) -[seal (goal [] (X0) (app [global (indt «C»), X1]) (X2) []), - seal (goal [] (X3) (app [global (indt «E»), X1]) (X4) [])] -Goal is C ?i -Solution for C 2 is i2 -Goal is E 2 -Solution for C 1 is i1 -Goal is E 1 -Solution for E 1 is e1 -All the remaining goals are on the shelf. - -1 goal - -goal 1 is: - C -1 goal - - ============================ - C -All the remaining goals are on the shelf. - -1 goal - -goal 1 is: - C -1 goal - - ============================ - C Now click "Start watching" in the Elpi Trace Browser panel and then execute the Command/Tactic/Query you want to trace. Also try "F1 Elpi". (fun H : C Q => @@ -24343,10 +24379,10 @@ [global (const «IsAnimal»), global (indc «Fly»), global (const «dove»)] Query assignments: S = X0 +(fun x : tele => tele_fmap) Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] Normalizing app [global (indt «nat2»), global (indc «S»)] Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] -(fun x : tele => tele_fmap) File "./apps/tc/tests/test_tc_declare.v", line 8, characters 2-36: Warning: This command does not fully mirror the watned behavior if the class has methods @@ -24807,13 +24843,13 @@ C2 T (fun x : Type => H x) -> D Debug: [tactic-unification] Leaving unification with success Debug: [elpitime] Elpi: get_and_compile 0.0001 -Debug: [TC] - Time of instance search is 0.000088 -Debug: [TC] - Time of refine.typecheck is 0.004335 +Debug: [TC] - Time of instance search is 0.000080 +Debug: [TC] - Time of refine.typecheck is 0.000206 Debug: [elpitime] - Elpi: query-compilation:0.0001 static-check:0.0000 optimization:0.0001 runtime:0.0061 (with success) + Elpi: query-compilation:0.0001 static-check:0.0000 optimization:0.0001 runtime:0.0018 (with success) -Finished transaction in 0.006 secs (0.002u,0.s) (successful) +Finished transaction in 0.002 secs (0.002u,0.s) (successful) File "./apps/tc/tests/importOrder/f1.v", line 5, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -25138,6 +25174,311 @@ [elpi.TC.hints,elpi,default] Received the following event [str new_instance, str I4, str A, str Export, int -1] +Query assignments: + T = c0 \ +prod `c` X0 c1 \ + prod `_` (prod `a` X1 c2 \ app [global X2, app [c0, c2], c1]) c2 \ + app [global X3, c0, c1] +Good padding from here +Query assignments: + ToCompile = prod `T` + (prod `_` (sort (typ X0)) c0 \ + prod `_` (sort (typ X1)) c1 \ prod `_` (sort (typ X2)) c2 \ sort (typ X3)) + c0 \ + prod `_` (prod `a` (sort (typ X4)) c1 \ app [global (indt «d»), c1, c0]) + c1 \ app [global (indt «c»), c0] + X1_ = X0 + X2_ = X1 + X3_ = X2 + X4_ = X3 + X5_ = X4 +Finished transaction in 0.262 secs (0.042u,0.003s) (successful) +Query assignments: + A = c0 \ +c0 + A2 = X0 + X6_ = X1 + X7_ = X2 +Query assignments: + N = s (s z) + X10_ = X0 + X11_ = c0 \ +X1 c0 + X8_ = «elpi.apps.tc.tests.test.140» + X9_ = «elpi.apps.tc.tests.test.141» +Syntactic constraints: + {c0 c1} : decl c1 `elpi_ctx_entry_1_` X0 + ?- evar (X1 c1) (sort (typ «elpi.apps.tc.tests.test.143»)) (X1 c1) /* suspended on X1 */ + {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.142»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.143 elpi.apps.tc.tests.test.142 + elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} |= + +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.141 + elpi.apps.tc.tests.test.140 +SORTS: + α125 + α126 +WEAK CONSTRAINTS: + + +Query assignments: + N = s z + X12_ = X0 + X13_ = «elpi.apps.tc.tests.test.253» + X14_ = «elpi.apps.tc.tests.test.254» +Syntactic constraints: + {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.255»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.255 elpi.apps.tc.tests.test.254 + elpi.apps.tc.tests.test.253} |= +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.254 elpi.apps.tc.tests.test.253} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.254 + elpi.apps.tc.tests.test.253 +SORTS: + α191 +WEAK CONSTRAINTS: + + +Query assignments: + X15_ = X0 +Syntactic constraints: + evar (X1) (X2) (X1) /* suspended on X1 */ + evar X3 (sort (typ «elpi.apps.tc.tests.test.292»)) (X2) /* suspended on X3, X2 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.292} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α208 +WEAK CONSTRAINTS: + + +Query assignments: + N = s (s z) + X16_ = «elpi.apps.tc.tests.test.318» + X17_ = «elpi.apps.tc.tests.test.319» + X18_ = «elpi.apps.tc.tests.test.320» + X19_ = «elpi.apps.tc.tests.test.321» + X20_ = X0 +Syntactic constraints: + {c0 c1} : evar X0 (sort (typ «elpi.apps.tc.tests.test.322»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.322 elpi.apps.tc.tests.test.321 + elpi.apps.tc.tests.test.320 elpi.apps.tc.tests.test.319 + elpi.apps.tc.tests.test.318} |= +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.321 elpi.apps.tc.tests.test.320 + elpi.apps.tc.tests.test.319 elpi.apps.tc.tests.test.318} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.321 + elpi.apps.tc.tests.test.320 + elpi.apps.tc.tests.test.319 + elpi.apps.tc.tests.test.318 +SORTS: + α224 +WEAK CONSTRAINTS: + + +fun `_` X0 c0 \ global (indc «O») +Query assignments: + P = c0 \ c1 \ +fun `_` X0 c2 \ global (indc «O») + X22_ = X0 + X23_ = X0 +app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] +Query assignments: + A = c0 \ +fun `y` (X1 c0) c1 \ app [X2, c1, c0] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] + F = X2 + Inn = c0 \ +tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0] + T = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] + X24_ = X0 + X25_ = c0 \ +X1 c0 +Syntactic constraints: + evar (X2) (X3) (X2) /* suspended on X2 */ + {c0} : decl c0 `x` X0 + ?- evar (X1 c0) (sort (typ «elpi.apps.tc.tests.test.394»)) (X1 c0) /* suspended on X1 */ + evar (X0) (sort (typ «elpi.apps.tc.tests.test.393»)) (X0) /* suspended on X0 */ + evar X4 (sort (typ «elpi.apps.tc.tests.test.395»)) (X3) /* suspended on X4, X3 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.395 elpi.apps.tc.tests.test.394 + elpi.apps.tc.tests.test.393} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α283 + α284 + α285 +WEAK CONSTRAINTS: + + +Query assignments: + A = X0 + Body1 = c0 \ +tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) [ + c0] + Body2 = c0 \ c1 \ +tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1] + C = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` X3 c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) + [c0]) []] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` X3 c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) + [c0]) []] + X = X2 + X26_ = X3 + X27_ = c0 \ +X1 + Y = c0 \ c1 \ +app [X0, c0, c1] +Query assignments: + A = X0 + Body1 = c0 \ +tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) [ + c0] + Body2 = c0 \ c1 \ +tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0] + C = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X3) c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) + [c0]) []] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X3) c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) + [c0]) []] + X = X2 + X28_ = X3 + X29_ = c0 \ +X1 + Y = c0 \ c1 \ +app [X0, c0, c1] +Syntactic constraints: + {c0} : decl c0 `x` X3 + ?- evar X1 (sort (typ «elpi.apps.tc.tests.test.506»)) X1 /* suspended on X1 */ + evar (X0) (X4) (X0) /* suspended on X0 */ + evar (X2) (X5) (X2) /* suspended on X2 */ + evar (X3) (sort (typ «elpi.apps.tc.tests.test.505»)) (X3) /* suspended on X3 */ + evar X6 (sort (typ «elpi.apps.tc.tests.test.508»)) (X4) /* suspended on X6, X4 */ + evar X7 (sort (typ «elpi.apps.tc.tests.test.507»)) (X5) /* suspended on X7, X5 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.508 elpi.apps.tc.tests.test.507 + elpi.apps.tc.tests.test.506 elpi.apps.tc.tests.test.505} |= + +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α335 + α336 + α337 + α338 +WEAK CONSTRAINTS: + + +File "./apps/tc/tests/test.v", line 121, characters 61-65: +Warning: +File "./apps/tc/tests/test.v", line 121, characters 61-65 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 131, characters 59-60: +Warning: +File "./apps/tc/tests/test.v", line 131, characters 59-60 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 249, characters 66-67: +Warning: +File "./apps/tc/tests/test.v", line 249, characters 66-67 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 340, characters 63-64: +Warning: +File "./apps/tc/tests/test.v", line 340, characters 63-64 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 461, characters 37-40: +Warning: +File "./apps/tc/tests/test.v", line 461, characters 37-40 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 456, characters 44-45: +Warning: +File "./apps/tc/tests/test.v", line 456, characters 44-45 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 515, characters 46-47: +Warning: +File "./apps/tc/tests/test.v", line 515, characters 46-47 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 518, characters 51-56: +Warning: +File "./apps/tc/tests/test.v", line 518, characters 51-56 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 555, characters 50-51: +Warning: +File "./apps/tc/tests/test.v", line 555, characters 50-51 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 558, characters 51-56: +Warning: +File "./apps/tc/tests/test.v", line 558, characters 51-56 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -25460,633 +25801,6 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (RelationClasses.equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || - Init.class_apply @Morphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (Morphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (CMorphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @CMorphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.complement_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply RelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply CRelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) Init.unconvertible -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || - Init.class_apply @CMorphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] -Query assignments: - T = c0 \ -prod `c` X0 c1 \ - prod `_` (prod `a` X1 c2 \ app [global X2, app [c0, c2], c1]) c2 \ - app [global X3, c0, c1] -Good padding from here -Query assignments: - ToCompile = prod `T` - (prod `_` (sort (typ X0)) c0 \ - prod `_` (sort (typ X1)) c1 \ prod `_` (sort (typ X2)) c2 \ sort (typ X3)) - c0 \ - prod `_` (prod `a` (sort (typ X4)) c1 \ app [global (indt «d»), c1, c0]) - c1 \ app [global (indt «c»), c0] - X1_ = X0 - X2_ = X1 - X3_ = X2 - X4_ = X3 - X5_ = X4 -Finished transaction in 0.062 secs (0.043u,0.003s) (successful) -Query assignments: - A = c0 \ -c0 - A2 = X0 - X6_ = X1 - X7_ = X2 -Query assignments: - N = s (s z) - X10_ = X0 - X11_ = c0 \ -X1 c0 - X8_ = «elpi.apps.tc.tests.test.140» - X9_ = «elpi.apps.tc.tests.test.141» -Syntactic constraints: - {c0 c1} : decl c1 `elpi_ctx_entry_1_` X0 - ?- evar (X1 c1) (sort (typ «elpi.apps.tc.tests.test.143»)) (X1 c1) /* suspended on X1 */ - {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.142»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.143 elpi.apps.tc.tests.test.142 - elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} |= - -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.141 - elpi.apps.tc.tests.test.140 -SORTS: - α125 - α126 -WEAK CONSTRAINTS: - - -Query assignments: - N = s z - X12_ = X0 - X13_ = «elpi.apps.tc.tests.test.253» - X14_ = «elpi.apps.tc.tests.test.254» -Syntactic constraints: - {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.255»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.255 elpi.apps.tc.tests.test.254 - elpi.apps.tc.tests.test.253} |= -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.254 elpi.apps.tc.tests.test.253} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.254 - elpi.apps.tc.tests.test.253 -SORTS: - α191 -WEAK CONSTRAINTS: - - -Query assignments: - X15_ = X0 -Syntactic constraints: - evar (X1) (X2) (X1) /* suspended on X1 */ - evar X3 (sort (typ «elpi.apps.tc.tests.test.292»)) (X2) /* suspended on X3, X2 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.292} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α208 -WEAK CONSTRAINTS: - - -Query assignments: - N = s (s z) - X16_ = «elpi.apps.tc.tests.test.318» - X17_ = «elpi.apps.tc.tests.test.319» - X18_ = «elpi.apps.tc.tests.test.320» - X19_ = «elpi.apps.tc.tests.test.321» - X20_ = X0 -Syntactic constraints: - {c0 c1} : evar X0 (sort (typ «elpi.apps.tc.tests.test.322»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.322 elpi.apps.tc.tests.test.321 - elpi.apps.tc.tests.test.320 elpi.apps.tc.tests.test.319 - elpi.apps.tc.tests.test.318} |= -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.321 elpi.apps.tc.tests.test.320 - elpi.apps.tc.tests.test.319 elpi.apps.tc.tests.test.318} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.321 - elpi.apps.tc.tests.test.320 - elpi.apps.tc.tests.test.319 - elpi.apps.tc.tests.test.318 -SORTS: - α224 -WEAK CONSTRAINTS: - - -fun `_` X0 c0 \ global (indc «O») -Query assignments: - P = c0 \ c1 \ -fun `_` X0 c2 \ global (indc «O») - X22_ = X0 - X23_ = X0 -app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] -Query assignments: - A = c0 \ -fun `y` (X1 c0) c1 \ app [X2, c1, c0] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] - F = X2 - Inn = c0 \ -tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0] - T = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] - X24_ = X0 - X25_ = c0 \ -X1 c0 -Syntactic constraints: - evar (X2) (X3) (X2) /* suspended on X2 */ - {c0} : decl c0 `x` X0 - ?- evar (X1 c0) (sort (typ «elpi.apps.tc.tests.test.394»)) (X1 c0) /* suspended on X1 */ - evar (X0) (sort (typ «elpi.apps.tc.tests.test.393»)) (X0) /* suspended on X0 */ - evar X4 (sort (typ «elpi.apps.tc.tests.test.395»)) (X3) /* suspended on X4, X3 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.395 elpi.apps.tc.tests.test.394 - elpi.apps.tc.tests.test.393} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α283 - α284 - α285 -WEAK CONSTRAINTS: - - -Query assignments: - A = X0 - Body1 = c0 \ -tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) [ - c0] - Body2 = c0 \ c1 \ -tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1] - C = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` X3 c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) - [c0]) []] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` X3 c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) - [c0]) []] - X = X2 - X26_ = X3 - X27_ = c0 \ -X1 - Y = c0 \ c1 \ -app [X0, c0, c1] -Query assignments: - A = X0 - Body1 = c0 \ -tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) [ - c0] - Body2 = c0 \ c1 \ -tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0] - C = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X3) c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) - [c0]) []] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X3) c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) - [c0]) []] - X = X2 - X28_ = X3 - X29_ = c0 \ -X1 - Y = c0 \ c1 \ -app [X0, c0, c1] -Syntactic constraints: - {c0} : decl c0 `x` X3 - ?- evar X1 (sort (typ «elpi.apps.tc.tests.test.506»)) X1 /* suspended on X1 */ - evar (X0) (X4) (X0) /* suspended on X0 */ - evar (X2) (X5) (X2) /* suspended on X2 */ - evar (X3) (sort (typ «elpi.apps.tc.tests.test.505»)) (X3) /* suspended on X3 */ - evar X6 (sort (typ «elpi.apps.tc.tests.test.508»)) (X4) /* suspended on X6, X4 */ - evar X7 (sort (typ «elpi.apps.tc.tests.test.507»)) (X5) /* suspended on X7, X5 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.508 elpi.apps.tc.tests.test.507 - elpi.apps.tc.tests.test.506 elpi.apps.tc.tests.test.505} |= - -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α335 - α336 - α337 - α338 -WEAK CONSTRAINTS: - - -File "./apps/tc/tests/test.v", line 121, characters 61-65: -Warning: -File "./apps/tc/tests/test.v", line 121, characters 61-65 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 131, characters 59-60: -Warning: -File "./apps/tc/tests/test.v", line 131, characters 59-60 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 249, characters 66-67: -Warning: -File "./apps/tc/tests/test.v", line 249, characters 66-67 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 340, characters 63-64: -Warning: -File "./apps/tc/tests/test.v", line 340, characters 63-64 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 461, characters 37-40: -Warning: -File "./apps/tc/tests/test.v", line 461, characters 37-40 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 456, characters 44-45: -Warning: -File "./apps/tc/tests/test.v", line 456, characters 44-45 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 515, characters 46-47: -Warning: -File "./apps/tc/tests/test.v", line 515, characters 46-47 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 518, characters 51-56: -Warning: -File "./apps/tc/tests/test.v", line 518, characters 51-56 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 555, characters 50-51: -Warning: -File "./apps/tc/tests/test.v", line 555, characters 50-51 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 558, characters 51-56: -Warning: -File "./apps/tc/tests/test.v", line 558, characters 51-56 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: @@ -29307,417 +29021,649 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) rewrite_relation_fun +(*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (equiv_rewrite_relation R) +(*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (eq_rewrite_relation A) +(*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_StrictOrder) +(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @PartialOrder_StrictOrder) +(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_StrictOrder) +(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) +(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_PreOrder) +(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PreOrder) +(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_PreOrder) +(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) +(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Symmetric) +(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Symmetric) +(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @PartialOrder_inverse) +(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PartialOrder) +(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @eq_proper_proxy || - class_apply @reflexive_proper_proxy) +(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || + Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @proper_proper_proxy) +(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) normalizes +(*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip2) +(*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip1) +(*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (subrelation_tac T U) +(*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (apply (forall_subrelation B R S); intro) +(*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @subrelation_symmetric) +(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) +(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Transitive) +(*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip2) +(*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip1) +(*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.subrelation_symmetric) +(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.proper_flip_proper) +(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Transitive) +(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Irreflexive) +(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Irreflexive) +(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Asymmetric) +(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @flip_proper) +(*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @complement_proper) +(*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @proper_flip_proper) +(*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) partial_application_tactic +(*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) proper_subrelation +(*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) proper_normalization +(*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) proper_reflexive +(*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Irreflexive) +(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Irreflexive) +(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Asymmetric) +(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @irreflexivity) +(*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (apply flip_Reflexive) +(*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.irreflexivity) +(*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) unconvertible +(*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.eq_proper_proxy || - class_apply @CMorphisms.reflexive_proper_proxy) +(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || + Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) +(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Antisymmetric) +(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Symmetric) +(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Symmetric) +(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: -(*external*) (reflexive_proxy_tac A R) +(*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_PreOrder) +(*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PreOrder) +(*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_PreOrder) +(*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PreOrder) +(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @flip_proper) +(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @complement_proper) +(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @proper_flip_proper) +(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) partial_application_tactic +(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_subrelation +(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_normalization +(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_reflexive +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @flip_proper) +(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @complement_proper) +(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) (class_apply @proper_flip_proper) +(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) partial_application_tactic +(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_subrelation +(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_normalization +(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || + Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: -(*external*) proper_reflexive +(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (Morphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (CMorphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @CMorphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply RelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply CRelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) Init.unconvertible +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || + Init.class_apply @CMorphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] File "./apps/tc/tests/importOrder/f3a.v", line 4, characters 0-21: Warning: @@ -30041,328 +29987,421 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun +(*external*) rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (RelationClasses.equiv_rewrite_relation R) +(*external*) (equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) +(*external*) (eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) +(*external*) (class_apply @flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) +(*external*) (class_apply @PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) +(*external*) (class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) +(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) +(*external*) (class_apply @flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) +(*external*) (class_apply @StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) +(*external*) (class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) +(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) +(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) +(*external*) (class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) +(*external*) (class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) +(*external*) (class_apply @PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) +(*external*) (class_apply @StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || - Init.class_apply @Morphisms.reflexive_proper_proxy) +(*external*) (class_apply @eq_proper_proxy || + class_apply @reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) +(*external*) (not_evar R; class_apply @proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.normalizes +(*external*) normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip2) +(*external*) (class_apply @flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip1) +(*external*) (class_apply @flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Morphisms.subrelation_tac T U) +(*external*) (subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (apply (Morphisms.forall_subrelation B R S); intro) +(*external*) (apply (forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) +(*external*) (class_apply @subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) +(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) +(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Transitive) +(*external*) (class_apply @flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip2) +(*external*) (class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip1) +(*external*) (class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) +(*external*) (class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) +(*external*) (class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) +(*external*) (class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) +(*external*) (class_apply @flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) +(*external*) (class_apply @complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) +(*external*) (class_apply @flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.flip_proper) +(*external*) (apply @flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.complement_proper) +(*external*) (apply @complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.proper_flip_proper) +(*external*) (class_apply @proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.partial_application_tactic +(*external*) partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_subrelation +(*external*) proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_normalization +(*external*) proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_reflexive +(*external*) proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) +(*external*) (class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) +(*external*) (class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) +(*external*) (class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.irreflexivity) +(*external*) (class_apply @irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (apply RelationClasses.flip_Reflexive) +(*external*) (apply flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.irreflexivity) +(*external*) (class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) Init.unconvertible +(*external*) unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || - Init.class_apply @CMorphisms.reflexive_proper_proxy) +(*external*) (class_apply @CMorphisms.eq_proper_proxy || + class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) +(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) +(*external*) (class_apply @flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) +(*external*) (class_apply @flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) +(*external*) (class_apply @complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3b.v", line 4, characters 0-21: +File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) +(*external*) (reflexive_proxy_tac A R) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 519, characters 0-134: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/bigTest.v", line 1709, characters 0-186: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_reflexive [elpi.TC.hints,elpi,default] +Inductive elpi.apps.derive.tests.test_param1.Coverage.is_unit +Inductive elpi.apps.derive.tests.test_param1.OtherTests.is_unit + (shorter name to refer to it in current context is OtherTests.is_unit) File "./apps/tc/tests/importOrder/f3e.v", line 7, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -32617,101 +32656,6 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -Inductive elpi.apps.derive.tests.test_param1.Coverage.is_unit -Inductive elpi.apps.derive.tests.test_param1.OtherTests.is_unit - (shorter name to refer to it in current context is OtherTests.is_unit) -derive.param1_trivial: wrong shape is_nest -. It does not look like a unary parametricity translation of an inductive with no indexes. -derive.param1_trivial: wrong shape is_vect A PA -. It does not look like a unary parametricity translation of an inductive with no indexes. -Debug: Cannot enforce elpi.apps.derive.tests.test_derive.3246 <= Set -Skipping derivation map on indt «nat» since it has been already run -Derivation lens on indt «nat» -Derivation lens on indt «nat» failed, continuing -Skipping derivation param1 on indt «nat» since it has been already run -Skipping derivation param2 on indt «nat» since it has been already run -Skipping derivation tag on indt «nat» since it has been already run -Skipping derivation eqType_ast on indt «nat» since it has been already run -Derivation projK on indt «nat» -Derivation projK on indt «nat» took 0.001195 -Derivation isK on indt «nat» -Derivation isK on indt «nat» took 0.001961 -Derivation eq on indt «nat» -Derivation eq on indt «nat» took 0.001523 -Derivation invert on indt «nat» -Derivation invert on indt «nat» took 0.001452 -Skipping derivation lens_laws on indt «nat» since it has been already run -Skipping derivation param1_congr on indt «nat» -since it has been already run -Skipping derivation param1_inhab on indt «nat» -since it has been already run -Skipping derivation param1_functor on indt «nat» -since it has been already run -Skipping derivation fields on indt «nat» since it has been already run -Derivation bcongr on indt «nat» -Derivation bcongr on indt «nat» took 0.002711 -Derivation idx2inv on indt «nat» -Derivation idx2inv on indt «nat» failed, continuing -Skipping derivation param1_trivial on indt «nat» -since it has been already run -Skipping derivation induction on indt «nat» since it has been already run -Skipping derivation eqb on indt «nat» since it has been already run -Derivation eqK on indt «nat» -Derivation eqK on indt «nat» took 0.003308 -Skipping derivation eqbcorrect on indt «nat» since it has been already run -Derivation eqcorrect on indt «nat» -Derivation eqcorrect on indt «nat» took 0.000990 -Skipping derivation eqbOK on indt «nat» since it has been already run -Derivation eqOK on indt «nat» -Derivation eqOK on indt «nat» took 0.000569 -Skipping derivation map on indt «nat» since the user did not select it -Skipping derivation lens on indt «nat» since the user did not select it -Skipping derivation param1 on indt «nat» since it has been already run -Skipping derivation param2 on indt «nat» since the user did not select it -Skipping derivation tag on indt «nat» since the user did not select it -Skipping derivation eqType_ast on indt «nat» -since the user did not select it -Skipping derivation projK on indt «nat» since it has been already run -Skipping derivation isK on indt «nat» since it has been already run -Skipping derivation eq on indt «nat» since it has been already run -Skipping derivation invert on indt «nat» since the user did not select it -Skipping derivation lens_laws on indt «nat» -since the user did not select it -Skipping derivation param1_congr on indt «nat» -since it has been already run -Skipping derivation param1_inhab on indt «nat» -since it has been already run -Skipping derivation param1_functor on indt «nat» -since it has been already run -Skipping derivation fields on indt «nat» since the user did not select it -Skipping derivation bcongr on indt «nat» since it has been already run -Skipping derivation idx2inv on indt «nat» since the user did not select it -Skipping derivation param1_trivial on indt «nat» -since it has been already run -Skipping derivation induction on indt «nat» since it has been already run -Skipping derivation eqb on indt «nat» since the user did not select it -Skipping derivation eqK on indt «nat» since it has been already run -Skipping derivation eqbcorrect on indt «nat» -since the user did not select it -Skipping derivation eqcorrect on indt «nat» since it has been already run -Skipping derivation eqbOK on indt «nat» since the user did not select it -Skipping derivation eqOK on indt «nat» since it has been already run -derive.param1_trivial: wrong shape is_t A PA -. It does not look like a unary parametricity translation of an inductive with no indexes. -derive.param1_trivial: wrong shape is_triv -. It does not look like a unary parametricity translation of an inductive with no indexes. -Debug: Cannot enforce elpi.apps.derive.tests.test_derive.4292 <= Set -derive.param1_trivial: wrong shape is_Pred -. It does not look like a unary parametricity translation of an inductive with no indexes. -wimpls.wimpls not a defined object. -wimpls.Kwi not a defined object. -File "./apps/derive/tests/test_derive.v", line 33, characters 2-9: -Warning: This command does not support this attribute: verbose. -[unsupported-attributes,parsing,default] -File "./apps/derive/tests/test_derive.v", line 70, characters 0-15: -Warning: Using Vector.t is known to be technically difficult, see -. -[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] File "./apps/tc/tests/importOrder/f4.v", line 8, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -33034,6 +32978,98 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] +derive.param1_trivial: wrong shape is_nest +. It does not look like a unary parametricity translation of an inductive with no indexes. +derive.param1_trivial: wrong shape is_vect A PA +. It does not look like a unary parametricity translation of an inductive with no indexes. +Debug: Cannot enforce elpi.apps.derive.tests.test_derive.3246 <= Set +Skipping derivation map on indt «nat» since it has been already run +Derivation lens on indt «nat» +Derivation lens on indt «nat» failed, continuing +Skipping derivation param1 on indt «nat» since it has been already run +Skipping derivation param2 on indt «nat» since it has been already run +Skipping derivation tag on indt «nat» since it has been already run +Skipping derivation eqType_ast on indt «nat» since it has been already run +Derivation projK on indt «nat» +Derivation projK on indt «nat» took 0.001111 +Derivation isK on indt «nat» +Derivation isK on indt «nat» took 0.018012 +Derivation eq on indt «nat» +Derivation eq on indt «nat» took 0.001512 +Derivation invert on indt «nat» +Derivation invert on indt «nat» took 0.013381 +Skipping derivation lens_laws on indt «nat» since it has been already run +Skipping derivation param1_congr on indt «nat» +since it has been already run +Skipping derivation param1_inhab on indt «nat» +since it has been already run +Skipping derivation param1_functor on indt «nat» +since it has been already run +Skipping derivation fields on indt «nat» since it has been already run +Derivation bcongr on indt «nat» +Derivation bcongr on indt «nat» took 0.002652 +Derivation idx2inv on indt «nat» +Derivation idx2inv on indt «nat» failed, continuing +Skipping derivation param1_trivial on indt «nat» +since it has been already run +Skipping derivation induction on indt «nat» since it has been already run +Skipping derivation eqb on indt «nat» since it has been already run +Derivation eqK on indt «nat» +Derivation eqK on indt «nat» took 0.019405 +Skipping derivation eqbcorrect on indt «nat» since it has been already run +Derivation eqcorrect on indt «nat» +Derivation eqcorrect on indt «nat» took 0.021141 +Skipping derivation eqbOK on indt «nat» since it has been already run +Derivation eqOK on indt «nat» +Derivation eqOK on indt «nat» took 0.000573 +Skipping derivation map on indt «nat» since the user did not select it +Skipping derivation lens on indt «nat» since the user did not select it +Skipping derivation param1 on indt «nat» since it has been already run +Skipping derivation param2 on indt «nat» since the user did not select it +Skipping derivation tag on indt «nat» since the user did not select it +Skipping derivation eqType_ast on indt «nat» +since the user did not select it +Skipping derivation projK on indt «nat» since it has been already run +Skipping derivation isK on indt «nat» since it has been already run +Skipping derivation eq on indt «nat» since it has been already run +Skipping derivation invert on indt «nat» since the user did not select it +Skipping derivation lens_laws on indt «nat» +since the user did not select it +Skipping derivation param1_congr on indt «nat» +since it has been already run +Skipping derivation param1_inhab on indt «nat» +since it has been already run +Skipping derivation param1_functor on indt «nat» +since it has been already run +Skipping derivation fields on indt «nat» since the user did not select it +Skipping derivation bcongr on indt «nat» since it has been already run +Skipping derivation idx2inv on indt «nat» since the user did not select it +Skipping derivation param1_trivial on indt «nat» +since it has been already run +Skipping derivation induction on indt «nat» since it has been already run +Skipping derivation eqb on indt «nat» since the user did not select it +Skipping derivation eqK on indt «nat» since it has been already run +Skipping derivation eqbcorrect on indt «nat» +since the user did not select it +Skipping derivation eqcorrect on indt «nat» since it has been already run +Skipping derivation eqbOK on indt «nat» since the user did not select it +Skipping derivation eqOK on indt «nat» since it has been already run +derive.param1_trivial: wrong shape is_t A PA +. It does not look like a unary parametricity translation of an inductive with no indexes. +derive.param1_trivial: wrong shape is_triv +. It does not look like a unary parametricity translation of an inductive with no indexes. +Debug: Cannot enforce elpi.apps.derive.tests.test_derive.4292 <= Set +derive.param1_trivial: wrong shape is_Pred +. It does not look like a unary parametricity translation of an inductive with no indexes. +wimpls.wimpls not a defined object. +wimpls.Kwi not a defined object. +File "./apps/derive/tests/test_derive.v", line 33, characters 2-9: +Warning: This command does not support this attribute: verbose. +[unsupported-attributes,parsing,default] +File "./apps/derive/tests/test_derive.v", line 70, characters 0-15: +Warning: Using Vector.t is known to be technically difficult, see +. +[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' create-stamp debian/debhelper-build-stamp dh_prep @@ -33042,7 +33078,7 @@ dune install coq-elpi --destdir=/build/reproducible-path/coq-elpi-2.4.0/debian/tmp --prefix=/usr --libdir=/usr/lib/aarch64-linux-gnu/ocaml/5.3.0 Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created rm -fr /build/reproducible-path/coq-elpi-2.4.0/debian/tmp/usr/doc/coq-elpi make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' @@ -33090,12 +33126,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/201626/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/3533563 and its subdirectories -I: Current time: Wed Feb 26 01:10:53 -12 2025 -I: pbuilder-time-stamp: 1740575453 +I: removing directory /srv/workspace/pbuilder/201626 and its subdirectories +I: Current time: Wed Apr 1 09:43:10 +14 2026 +I: pbuilder-time-stamp: 1774986190