Diff of the two buildlogs: -- --- b1/build.log 2025-08-15 22:57:15.876134715 +0000 +++ b2/build.log 2025-08-15 22:58:36.672246795 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Sep 17 17:19:03 -12 2026 -I: pbuilder-time-stamp: 1789708743 +I: Current time: Sat Aug 16 12:57:18 +14 2025 +I: pbuilder-time-stamp: 1755298638 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -22,53 +22,85 @@ dpkg-source: info: unpacking coq-hierarchy-builder_1.8.1-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1375453/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/985170/tmp/hooks/D01_modify_environment starting +debug: Running on codethink04-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 Aug 15 22:57 /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/985170/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/985170/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='forky' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='d1de5a7db5434c9e845d49aec801043f' - 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='1375453' - PS1='# ' - PS2='> ' + INVOCATION_ID=374003c1758d44d59742547f1598c407 + 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=985170 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.RI2wI3a9/pbuilderrc_ES8p --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.RI2wI3a9/b1 --logfile b1/build.log coq-hierarchy-builder_1.8.1-1.dsc' - SUDO_GID='109' - SUDO_HOME='/var/lib/jenkins' - 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.RI2wI3a9/pbuilderrc_0JLb --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.RI2wI3a9/b2 --logfile b2/build.log coq-hierarchy-builder_1.8.1-1.dsc' + SUDO_GID=109 + SUDO_HOME=/var/lib/jenkins + 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 codethink03-arm64 6.12.41+deb13-cloud-arm64 #1 SMP Debian 6.12.41-1 (2025-08-12) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.12.41+deb13-cloud-arm64 #1 SMP Debian 6.12.41-1 (2025-08-12) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 12 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1375453/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/985170/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -196,7 +228,7 @@ Get: 78 http://deb.debian.org/debian forky/main arm64 libelpi-ocaml-dev arm64 2.0.7-1+b1 [15.9 MB] Get: 79 http://deb.debian.org/debian forky/main arm64 libcoq-elpi arm64 2.5.0-1.1 [12.8 MB] Get: 80 http://deb.debian.org/debian forky/main arm64 wdiff arm64 1.2.2-9 [122 kB] -Fetched 362 MB in 1s (308 MB/s) +Fetched 362 MB in 1s (333 MB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1: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 ... 19963 files and directories currently installed.) @@ -467,8 +499,8 @@ Setting up tzdata (2025b-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri Sep 18 05:19:30 UTC 2026. -Universal Time is now: Fri Sep 18 05:19:30 UTC 2026. +Local time is now: Fri Aug 15 22:57:46 UTC 2025. +Universal Time is now: Fri Aug 15 22:57:46 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... @@ -543,7 +575,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/coq-hierarchy-builder-1.8.1/ && 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-hierarchy-builder_1.8.1-1_source.changes +I: user script /srv/workspace/pbuilder/985170/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/985170/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/coq-hierarchy-builder-1.8.1/ && 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-hierarchy-builder_1.8.1-1_source.changes dpkg-buildpackage: info: source package coq-hierarchy-builder dpkg-buildpackage: info: source version 1.8.1-1 dpkg-buildpackage: info: source distribution unstable @@ -609,21 +645,27 @@ COQC examples/demo3/hierarchy_1.v COQC examples/demo3/hierarchy_2.v COQC examples/demo4/hierarchy_0.v +File "./examples/demo1/hierarchy_3.v", line 39, characters 2-87: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +[1755298678.843987] HB: begin module for builders +[1755298678.844260] HB: begin module Super +[1755298678.844374] HB: ended module Super +[1755298678.844628] HB: postulating factories +[1755298678.844757] HB: processing key context-item +[1755298678.845027] HB: processing mixin parameter a +[1755298678.845441] HB: declaring parameters and key as section variables +Here is the list of mixins to declare (the order matters): [] +File "./examples/demo1/hierarchy_1.v", line 55, characters 0-123: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] File "./examples/demo2/classical.v", line 422, characters 0-39: Warning: Notations "_ ^~ _" defined at level 10 with arguments constr at next level and "_ ^~" defined at level 2 with arguments constr at next level have incompatible prefixes. One of them will likely not work. [notation-incompatible-prefix,parsing,default] -[1789708779.709963] HB: begin module for builders -[1789708779.710329] HB: begin module Super -[1789708779.710483] HB: ended module Super -[1789708779.710754] HB: postulating factories -[1789708779.710923] HB: processing key context-item -[1789708779.711190] HB: processing mixin parameter a -[1789708779.711532] HB: declaring parameters and key as section variables -Here is the list of mixins to declare (the order matters): [] -[1789708779.718339] HB: start module and section AddComoid_of_Type -[1789708779.720301] HB: converting arguments +[1755298678.944826] HB: start module and section AddComoid_of_Type +[1755298678.946421] HB: converting arguments indt-decl (parameter A explicit X0 c0 \ record AddComoid_of_Type (sort (typ X1)) Build_AddComoid_of_Type @@ -648,23 +690,23 @@ (prod `x` (X9 c4) c5 \ app [global (indt «eq»), X10 c4 c5, app [c2, c1, c5], c5]) c5 \ end-record)) to factories -[1789708779.720716] HB: processing key parameter -[1789708779.721080] HB: converting factories +[1755298678.947035] HB: processing key parameter +[1755298678.947522] HB: converting factories w-params.nil A (sort (typ «HB.examples.readme.2»)) c0 \ [] to mixins -[1789708779.721215] HB: declaring context +[1755298678.947682] HB: declaring context w-params.nil A (sort (typ «HB.examples.readme.2»)) c0 \ [] -[1789708779.721359] HB: declaring parameters and key as section variables +[1755298678.947908] HB: declaring parameters and key as section variables Here is the list of mixins to declare (the order matters): [] -[1789708779.721838] HB: declare mixin or factory -[1789708779.721920] HB: declare record axioms_ -[1789708779.726292] HB: declare notation Build -[1789708779.730293] HB: declare notation axioms -[1789708779.733792] HB: start module Exports -[1789708779.736316] HB: end modules and sections; export -«HB.examples.readme.AddComoid_of_Type.Exports» -File "./examples/demo1/hierarchy_1.v", line 55, characters 0-123: +[1755298678.948564] HB: declare mixin or factory +[1755298678.948674] HB: declare record axioms_ +[1755298678.955364] HB: declare notation Build +[1755298678.960963] HB: declare notation axioms +[1755298678.965389] HB: start module Exports +File "./examples/demo1/hierarchy_2.v", line 39, characters 2-91: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] +[1755298678.968646] HB: end modules and sections; export +«HB.examples.readme.AddComoid_of_Type.Exports» (* Module AddComoid_of_Type. @@ -720,41 +762,42 @@ Notation AddComoid_of_Type X1 := ( AddComoid_of_Type.phant_axioms X1). *) -[1789708779.753410] HB: start module AddComoid -[1789708779.753795] HB: declare axioms record +[1755298678.994376] HB: start module AddComoid +[1755298678.994788] HB: declare axioms record w-params.nil A (sort (typ «HB.examples.readme.25»)) c0 \ [triple (indt «AddComoid_of_Type.axioms_») [] c0] -[1789708779.754012] HB: typing class field +[1755298678.995073] HB: typing class field indt «AddComoid_of_Type.axioms_» -[1789708779.755788] HB: declare type record -[1789708779.757197] HB: structure: new mixins +[1755298678.997512] HB: declare type record +[1755298678.999452] HB: structure: new mixins [indt «AddComoid_of_Type.axioms_»] -[1789708779.757350] HB: structure: mixin first class +[1755298678.999637] HB: structure: mixin first class [mixin-first-class (indt «AddComoid_of_Type.axioms_») (indt «axioms_»)] -[1789708779.757415] HB: declaring clone abbreviation -[1789708779.760701] HB: declaring pack_ constant -[1789708779.761298] HB: declaring pack_ constant = +[1755298678.999789] HB: declaring clone abbreviation +[1755298679.004279] HB: declaring pack_ constant +[1755298679.004912] HB: declaring pack_ constant = fun `A` (sort (typ «axioms_.u0»)) c0 \ fun `m` (app [global (indt «AddComoid_of_Type.axioms_»), c0]) c1 \ app [global (indc «Pack»), c0, app [global (indc «Class»), c0, c1]] -[1789708779.762573] HB: start module Exports -[1789708779.762888] HB: making coercion from type to target -[1789708779.762966] HB: declare sort coercion -[1789708779.763249] HB: exporting unification hints -[1789708779.763433] HB: exporting coercions from class to mixins -[1789708779.763626] HB: export class to mixin coercion for mixin +[1755298679.006263] HB: start module Exports +[1755298679.006654] HB: making coercion from type to target +[1755298679.010035] HB: declare sort coercion +[1755298679.010474] HB: exporting unification hints +[1755298679.010764] HB: exporting coercions from class to mixins +[1755298679.010967] HB: export class to mixin coercion for mixin readme_AddComoid_of_Type -[1789708779.763899] HB: accumulating various props -[1789708779.764385] HB: stop module Exports -[1789708779.764838] HB: declaring on_ abbreviation -[1789708779.766918] HB: declaring `copy` abbreviation -[1789708779.767638] HB: declaring on abbreviation -[1789708779.769182] HB: end modules; export +[1755298679.011308] HB: accumulating various props +[1755298679.011962] HB: stop module Exports +[1755298679.012528] HB: declaring on_ abbreviation +[1755298679.015524] HB: declaring `copy` abbreviation +[1755298679.018240] HB: declaring on abbreviation +[1755298679.019821] HB: end modules; export «HB.examples.readme.AddComoid.Exports» -[1789708779.769696] HB: exporting operations -[1789708779.770602] HB: export operation zero -[1789708779.772767] HB: export operation add -[1789708779.775188] HB: export operation addrA +[1755298679.020486] HB: exporting operations +[1755298679.021655] HB: export operation zero +[1755298679.024344] HB: export operation add +[1755298679.027612] HB: export operation addrA +COQC examples/demo5/hierarchy_0.v File "./examples/demo2/classical.v", line 625, characters 0-75: Warning: Postfix notations (i.e. starting with a nonterminal symbol and ending with a terminal symbol) should usually be at level 1 (default). @@ -767,13 +810,10 @@ Warning: Postfix notations (i.e. starting with a nonterminal symbol and ending with a terminal symbol) should usually be at level 1 (default). [postfix-notation-not-level-1,parsing,default] -[1789708779.860344] HB: export operation addrC -File "./examples/demo1/hierarchy_5.v", line 39, characters 2-97: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -[1789708779.862793] HB: export operation add0r -[1789708779.864381] HB: operations meta-data module: ElpiOperations -[1789708779.865469] HB: abbreviation factory-by-classname +[1755298679.114944] HB: export operation addrC +[1755298679.117220] HB: export operation add0r +[1755298679.118743] HB: operations meta-data module: ElpiOperations +[1755298679.120004] HB: abbreviation factory-by-classname (* Module AddComoid. @@ -870,49 +910,35 @@ *) forall (M : AddComoid.type) (x : M), x + x = 0 : Prop -COQC examples/demo5/hierarchy_0.v -File "./examples/demo1/hierarchy_3.v", line 39, characters 2-87: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] +File "./examples/demo1/hierarchy_2.v", line 57, characters 0-57: +Warning: +pulling in dependencies: +[hierarchy_2_AddComoid_of_TYPE, hierarchy_2_AddAG_of_AddComoid] + +Please list them or end the declaration with '&' +[HB.implicit-structure-dependency,HB,elpi,default] AbelianGrp.phant_on_ BinNums_Z__canonical__readme_AbelianGrp (Phant BinNums_Z__canonical__readme_AbelianGrp) : AbelianGrp.axioms_ Z : AbelianGrp.axioms_ Z -COQC examples/FSCD2020_material/V1.v HB: Z is canonically equipped with structures: - AbelianGrp (from "./examples/readme.v", line 32) - AddComoid (from "./examples/readme.v", line 31) -File "./examples/demo1/hierarchy_4.v", line 40, characters 2-97: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -File "./examples/demo1/hierarchy_2.v", line 39, characters 2-91: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -COQC examples/FSCD2020_material/V2.v -File "./examples/demo1/hierarchy_5.v", line 68, characters 2-91: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -File "./examples/demo1/hierarchy_4.v", line 69, characters 2-91: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -COQC examples/FSCD2020_material/V3.v -File "./examples/demo1/hierarchy_2.v", line 57, characters 0-57: -Warning: -pulling in dependencies: -[hierarchy_2_AddComoid_of_TYPE, hierarchy_2_AddAG_of_AddComoid] - -Please list them or end the declaration with '&' -[HB.implicit-structure-dependency,HB,elpi,default] +COQC examples/FSCD2020_material/V1.v File "./examples/hulk.v", line 143, characters 0-63: Warning: pulling in dependencies: [Feather_HasEqDec] Please list them or end the declaration with '&' [HB.implicit-structure-dependency,HB,elpi,default] +[1755298679.411896] HB: declare builder from hierarchy_2_Ring_of_AddComoid +to hierarchy_2_AddAG_of_AddComoid +[1755298679.412159] HB: declare builder from hierarchy_2_Ring_of_AddComoid +to hierarchy_2_Ring_of_AddAG HB: A is canonically equipped with structures: - Equality Singleton @@ -923,20 +949,21 @@ where ?T : [ |- Type] ?s : [ |- s1.type ?T] -File "./examples/demo5/hierarchy_0.v", line 35, characters 2-91: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] eq_refl : inhab = 7 : inhab = 7 eq_refl : inhab = (7 :: nil)%list : inhab = (7 :: nil)%list where ?T : [ |- Type] +COQC examples/FSCD2020_material/V2.v +COQC examples/FSCD2020_material/V3.v +File "./examples/demo1/hierarchy_5.v", line 39, characters 2-97: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] COQC examples/FSCD2020_material/V4.v -[1789708780.750671] HB: declare builder from hierarchy_2_Ring_of_AddComoid -to hierarchy_2_AddAG_of_AddComoid -[1789708780.755654] HB: declare builder from hierarchy_2_Ring_of_AddComoid -to hierarchy_2_Ring_of_AddAG +File "./examples/demo1/hierarchy_4.v", line 40, characters 2-97: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] fun X : s2.type nat => inhab : X : forall X : s2.type nat, X fun X : s2.type nat => inj : nat -> X @@ -944,20 +971,20 @@ s2_to_s1 not a defined object. COQC examples/FSCD2020_talk/V1.v COQC examples/FSCD2020_talk/V2.v +File "./examples/demo5/hierarchy_0.v", line 35, characters 2-91: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +File "./examples/demo1/hierarchy_5.v", line 68, characters 2-91: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] COQC examples/FSCD2020_talk/V3.v -HB.check: -SemiRing_of_AddComoid.axioms_ -: -forall (A : Type) (m : AddMonoid_of_TYPE.axioms_ A), -AddComoid_of_AddMonoid.axioms_ A m -> Type -: -forall (A : Type) (m : AddMonoid_of_TYPE.axioms_ A), -AddComoid_of_AddMonoid.axioms_ A m -> Type -COQC examples/Coq2020_material/CoqWS_demo.v -COQC examples/Coq2020_material/CoqWS_abstract.v +File "./examples/demo1/hierarchy_4.v", line 69, characters 2-91: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] File "./examples/demo5/hierarchy_0.v", line 68, characters 2-109: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] +COQC examples/Coq2020_material/CoqWS_demo.v Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. Arguments Monoid.Pack sort%type_scope class @@ -967,21 +994,37 @@ : forall s : Monoid.type, s -> s -> s @addNr : forall s : Ring.type, left_inverse 0 opp add +COQC examples/Coq2020_material/CoqWS_abstract.v COQC examples/Coq2020_material/CoqWS_expansion/withHB.v -Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. +HB.check: +SemiRing_of_AddComoid.axioms_ +: +forall (A : Type) (m : AddMonoid_of_TYPE.axioms_ A), +AddComoid_of_AddMonoid.axioms_ A m -> Type +: +forall (A : Type) (m : AddMonoid_of_TYPE.axioms_ A), +AddComoid_of_AddMonoid.axioms_ A m -> Type +File "./examples/FSCD2020_talk/V2.v", line 17, characters 0-66: +Warning: +pulling in dependencies: [V2_is_semigroup] -Arguments Monoid.Pack sort%type_scope class -Arguments Monoid.sort record -Arguments Monoid.class record -@add - : forall s : Monoid.type, s -> s -> s -@addNr - : forall s : AbelianGroup.type, left_inverse 0 opp add -@addrC - : forall s : AbelianGroup.type, commutative add +Please list them or end the declaration with '&' +[HB.implicit-structure-dependency,HB,elpi,default] COQC examples/Coq2020_material/CoqWS_expansion/withoutHB.v +File "./examples/FSCD2020_talk/V3.v", line 28, characters 2-118: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] COQC tests/type_of_exported_ops.v COQC tests/duplicate_structure.v +COQC tests/instance_params_no_type.v +add + : ?s -> ?s -> ?s +where +?s : [ |- CMonoid.type] +addrC + : commutative add +where +?s : [ |- CMonoid.type] Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. Arguments Monoid.Pack sort%type_scope class @@ -993,37 +1036,6 @@ : forall s : AbelianGroup.type, left_inverse 0 opp add @addrC : forall s : AbelianGroup.type, commutative add -addrC - : commutative add -where -?s : [ |- CMonoid.type] -COQC tests/instance_params_no_type.v -File "./examples/FSCD2020_talk/V3.v", line 28, characters 2-118: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -add - : ?s -> ?s -> ?s -where -?s : [ |- CMonoid.type] -addrC - : commutative add -where -?s : [ |- CMonoid.type] -COQC tests/test_CS_db_filtering.v -File "./examples/FSCD2020_talk/V2.v", line 17, characters 0-66: -Warning: -pulling in dependencies: [V2_is_semigroup] - -Please list them or end the declaration with '&' -[HB.implicit-structure-dependency,HB,elpi,default] -COQC tests/subtype.v -File "./examples/Coq2020_material/CoqWS_abstract.v", line 23, characters 0-71: -Warning: -pulling in dependencies: [CoqWS_abstract_CMonoid_of_Type] - -Please list them or end the declaration with '&' -[HB.implicit-structure-dependency,HB,elpi,default] -COQC tests/exports.v File "./examples/Coq2020_material/CoqWS_demo.v", line 73, characters 0-73: Warning: pulling in dependencies: [CoqWS_demo_CMonoid_of_Type] @@ -1034,12 +1046,25 @@ : Prop where ?t : [x : ?t y : ?t |- AbelianGrp.type] (x, y cannot be used) -COQC tests/log_impargs_record.v -COQC tests/compress_coe.v +COQC tests/test_CS_db_filtering.v +COQC tests/subtype.v +Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. + +Arguments Monoid.Pack sort%type_scope class +Arguments Monoid.sort record +Arguments Monoid.class record +@add + : forall s : Monoid.type, s -> s -> s +@addNr + : forall s : AbelianGroup.type, left_inverse 0 opp add +@addrC + : forall s : AbelianGroup.type, commutative add +COQC tests/exports.v forall x y : ?t, 1 + x = y * x : Prop where ?t : [x : ?t y : ?t |- SemiRing.type] (x, y cannot be used) +COQC tests/log_impargs_record.v forall (R : Ring.type) (x y : R), 1 * x = y - x : Prop forall @@ -1052,38 +1077,37 @@ join_CoqWS_demo_Ring_between_CoqWS_demo_AbelianGrp_and_CoqWS_demo_SemiRing ?t y : ?t |- Ring.type] (x, y cannot be used) +forall x : Z, x * - (1 + x) = 0 + 1 + : Prop +COQC tests/compress_coe.v +add + : A -> A -> A File "./tests/instance_params_no_type.v", line 5, characters 0-70: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] +forall x : Z, x * - (1 + x) = 0 + 1 + : Prop File "./tests/instance_params_no_type.v", line 6, characters 0-76: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] +File "./examples/Coq2020_material/CoqWS_expansion/withoutHB.v", line 10, characters 50-62: +Warning: The format modifier has no effect for only-parsing notations. +[discarded-format-only-parsing,parsing,default] File "./tests/instance_params_no_type.v", line 7, characters 0-78: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] -forall x : Z, x * - (1 + x) = 0 + 1 - : Prop list_foo' : forall P A : Type, is_foo.axioms_ P (list A) list_foo' is not universe polymorphic Arguments list_foo' (P A)%type_scope list_foo' is transparent Expands to: Constant HB.tests.instance_params_no_type.list_foo' -Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. - -Arguments Monoid.Pack sort%type_scope class -Arguments Monoid.sort record -Arguments Monoid.class record -@add - : forall s : Monoid.type, s -> s -> s -@addNr - : forall s : AbelianGroup.type, left_inverse 0 opp add -@addrC - : forall s : AbelianGroup.type, commutative add +COQC tests/funclass.v nat_foo : forall P : Type, is_foo.axioms_ P nat list_foo : forall P : Type, is_foo.axioms_ P (list P) +COQC tests/grefclass.v foo.type : Type -> Type Record type (P : Type) : Type := Pack @@ -1121,29 +1145,26 @@ Arguments foo.axioms_ (P A)%type_scope Arguments foo.Class (P A)%type_scope instance_params_no_type_is_foo_mixin Arguments foo.instance_params_no_type_is_foo_mixin (P A)%type_scope record -add - : A -> A -> A -COQC tests/funclass.v -COQC tests/grefclass.v -forall (G : AbelianGrp.type) (x : G), x - x = 0 - : Prop -forall (S : SemiRing.type) (x : S), x * 1 + 0 = x - : Prop -forall (R : Ring.type) (x y : R), x * - (1 * y) = - x * y - : Prop -forall x : Z, x * - (1 + x) = 0 + 1 - : Prop -File "./examples/Coq2020_material/CoqWS_expansion/withoutHB.v", line 10, characters 50-62: -Warning: The format modifier has no effect for only-parsing notations. -[discarded-format-only-parsing,parsing,default] COQC tests/local_instance.v +Record type : Type := Pack { sort : Type; class : Monoid.axioms_ sort }. + +Arguments Monoid.Pack sort%type_scope class +Arguments Monoid.sort record +Arguments Monoid.class record +@add + : forall s : Monoid.type, s -> s -> s +@addNr + : forall s : AbelianGroup.type, left_inverse 0 opp add +@addrC + : forall s : AbelianGroup.type, commutative add list_bar : forall P : b.type, is_bar.axioms_ P (list P) -forall x : Z, x * - (1 + x) = 0 + 1 - : Prop COQC tests/lock.v COQC tests/interleave_context.v -COQC tests/not_same_key.v +addrC + : commutative add +where +?s : [ |- CMonoid.type] (* Module A. @@ -1192,6 +1213,12 @@ Notation A X1 := ( A.phant_axioms X1). *) +File "./examples/Coq2020_material/CoqWS_abstract.v", line 23, characters 0-71: +Warning: +pulling in dependencies: [CoqWS_abstract_CMonoid_of_Type] + +Please list them or end the declaration with '&' +[HB.implicit-structure-dependency,HB,elpi,default] A.p : forall [T : Type] (record : A.axioms_ T) [x : T], A.f record x = x -> True @@ -1200,23 +1227,41 @@ Arguments A.p [T]%type_scope record [x] _ A.p is transparent Expands to: Constant HB.tests.log_impargs_record.A.p +COQC tests/not_same_key.v COQC tests/hb_pack.v +forall (G : AbelianGrp.type) (x : G), x - x = 0 + : Prop +forall (S : SemiRing.type) (x : S), x * 1 + 0 = x + : Prop +forall (R : Ring.type) (x y : R), x * - (1 * y) = - x * y + : Prop +forall x : Z, x * - (1 + x) = 0 + 1 + : Prop COQC tests/declare.v -[1789708783.412925] HB: start module SubInhab -[1789708783.413433] HB: declare axioms record +Notation big := big.body +Expands to: Notation HB.tests.lock.X.big + +big.body : forall R I : Type, R -> list I -> (I -> bigbody R I) -> R + +big.body is not universe polymorphic +Arguments big.body (R I)%type_scope _ _%list_scope _%function_scope +Expands to: Constant HB.tests.lock.X.big.body +COQC tests/short.v +[1755298683.064622] HB: start module SubInhab +[1755298683.064871] HB: declare axioms record w-params.cons T (sort (typ «HB.tests.subtype.280»)) c0 \ w-params.cons P (app [global (const «pred»), c0]) c1 \ w-params.nil sT (sort (typ «HB.tests.subtype.282»)) c2 \ [triple (indt «is_inhab.axioms_») [] c2, triple (indt «is_SUB.axioms_») [c0, c1] c2] -[1789708783.413832] HB: typing class field indt «is_inhab.axioms_» -[1789708783.414102] HB: typing class field indt «is_SUB.axioms_» -[1789708783.415925] HB: declare type record -[1789708783.417695] HB: structure: new mixins [] -[1789708783.417903] HB: structure: mixin first class [] -[1789708783.417988] HB: declaring clone abbreviation -[1789708783.420748] HB: declaring pack_ constant -[1789708783.421708] HB: declaring pack_ constant = +[1755298683.065088] HB: typing class field indt «is_inhab.axioms_» +[1755298683.065245] HB: typing class field indt «is_SUB.axioms_» +[1755298683.071025] HB: declare type record +[1755298683.072700] HB: structure: new mixins [] +[1755298683.078042] HB: structure: mixin first class [] +[1755298683.078265] HB: declaring clone abbreviation +[1755298683.080898] HB: declaring pack_ constant +[1755298683.081802] HB: declaring pack_ constant = fun `T` (sort (typ «axioms_.u0»)) c0 \ fun `P` (app [global (const «pred»), c0]) c1 \ fun `sT` (sort (typ «axioms_.u1»)) c2 \ @@ -1225,68 +1270,64 @@ app [global (indc «Pack»), c0, c1, c2, app [global (indc «Class»), c0, c1, c2, c3, c4]] -[1789708783.422655] HB: start module Exports -[1789708783.422988] HB: making coercion from type to target -[1789708783.423130] HB: declare sort coercion -[1789708783.423298] HB: exporting unification hints -[1789708783.424282] HB: declare coercion subtype_SubInhab__to__subtype_SUB -[1789708783.424976] HB: declare coercion hint +[1755298683.082706] HB: start module Exports +[1755298683.083011] HB: making coercion from type to target +[1755298683.086074] HB: declare sort coercion +[1755298683.086362] HB: exporting unification hints +[1755298683.087026] HB: declare coercion subtype_SubInhab__to__subtype_SUB +[1755298683.087823] HB: declare coercion hint subtype_SubInhab_class__to__subtype_SUB_class -[1789708783.426513] HB: declare unification hint +[1755298683.089392] HB: declare unification hint subtype_SubInhab__to__subtype_SUB -[1789708783.428361] HB: declare coercion subtype_SubInhab__to__subtype_Inhab -[1789708783.429034] HB: declare coercion hint +[1755298683.095763] HB: declare coercion subtype_SubInhab__to__subtype_Inhab +[1755298683.096464] HB: declare coercion hint subtype_SubInhab_class__to__subtype_Inhab_class -[1789708783.430573] HB: declare unification hint +[1755298683.097995] HB: declare unification hint subtype_SubInhab__to__subtype_Inhab -[1789708783.432796] HB: declare unification hint +[1755298683.099981] HB: declare unification hint join_subtype_SubInhab_between_subtype_Inhab_and_subtype_SUB -[1789708783.434849] HB: exporting coercions from class to mixins -[1789708783.435267] HB: export class to mixin coercion for mixin +default : nat + : nat +[1755298683.107822] HB: exporting coercions from class to mixins +[1755298683.108195] HB: export class to mixin coercion for mixin subtype_is_inhab -[1789708783.436021] HB: export class to mixin coercion for mixin +[1755298683.108872] HB: export class to mixin coercion for mixin subtype_is_SUB -[1789708783.436613] HB: accumulating various props -[1789708783.437470] HB: stop module Exports -[1789708783.439068] HB: declaring on_ abbreviation -[1789708783.441545] HB: declaring `copy` abbreviation -[1789708783.442577] HB: declaring on abbreviation -[1789708783.443783] HB: end modules; export +[1755298683.109475] HB: accumulating various props +[1755298683.110300] HB: stop module Exports +[1755298683.111978] HB: declaring on_ abbreviation +[1755298683.120114] HB: declaring `copy` abbreviation +[1755298683.121038] HB: declaring on abbreviation +[1755298683.122098] HB: end modules; export «HB.tests.subtype.SubInhab.Exports» -[1789708783.445802] HB: exporting operations -[1789708783.446180] HB: operations meta-data module: ElpiOperations -[1789708783.446724] HB: abbreviation factory-by-classname +The command did fail as expected with message: +The term "default" has type "nonempty.sort ?t" +while it is expected to have type "nat". +[1755298683.123910] HB: exporting operations +[1755298683.130219] HB: operations meta-data module: ElpiOperations +[1755298683.130920] HB: abbreviation factory-by-classname +COQC tests/instance_before_structure.v +COQC tests/primitive_records.v p : pred nat : pred nat -[1789708783.475413] HB: exporting under the module path [] -[1789708783.475724] HB: exporting modules -[Ring_of_TYPE.Exports, Ring.Exports, RingElpiOperations, RingExports, - Dummy.Exports, URing.Exports, URingElpiOperations, dummy.Exports, - Builders_1.Builders_Export_5] -[1789708783.477146] HB: exporting CS instances -[«Z_ring_axioms», «BinNums_Z__canonical__Enclosing_Ring»] -[1789708783.477629] HB: exporting Abbreviations [addr0, addrNK] -[1789708783.477890] HB: exporting Clauses X0 -COQC tests/short.v -forall (R : Enclosing.Ring.type) (x : R), x = x - : Prop -0%G - : ?s -where -?s : [ |- Enclosing.Ring.type] -Enclosing.zero : Z - : Z -COQC tests/instance_before_structure.v -Notation big := big.body -Expands to: Notation HB.tests.lock.X.big +COQC tests/non_forgetful_inheritance.v +File "./tests/interleave_context.v", line 16, characters 0-52: +Warning: +pulling in dependencies: [interleave_context_HasA, interleave_context_HasB] -big.body : forall R I : Type, R -> list I -> (I -> bigbody R I) -> R +Please list them or end the declaration with '&' +[HB.implicit-structure-dependency,HB,elpi,default] +id : forall {T : Type}, Monoid.type T -> T -big.body is not universe polymorphic -Arguments big.body (R I)%type_scope _ _%list_scope _%function_scope -Expands to: Constant HB.tests.lock.X.big.body -COQC tests/primitive_records.v -COQC tests/non_forgetful_inheritance.v +id is not universe polymorphic +Arguments id {T}%type_scope {s} +id is transparent +Expands to: Constant HB.tests.funclass.id +Monoid.phant_on_ nat Nat_add__canonical__funclass_Monoid + (Phantom (nat -> nat -> nat) Nat_add__canonical__funclass_Monoid) +: +Monoid.axioms_ nat Init.Nat.add + : Monoid.axioms_ nat Init.Nat.add Datatypes_prod__canonical__compress_coe_D = fun D D' : D.type => {| @@ -1309,124 +1350,56 @@ Arguments Datatypes_prod__canonical__compress_coe_D D D' COQC tests/fix_loop.v -default : nat - : nat -The command did fail as expected with message: -The term "default" has type "nonempty.sort ?t" -while it is expected to have type "nat". COQC tests/test_synthesis_params.v -COQC tests/hnf.v -id : forall {T : Type}, Monoid.type T -> T - -id is not universe polymorphic -Arguments id {T}%type_scope {s} -id is transparent -Expands to: Constant HB.tests.funclass.id -Monoid.phant_on_ nat Nat_add__canonical__funclass_Monoid - (Phantom (nat -> nat -> nat) Nat_add__canonical__funclass_Monoid) -: -Monoid.axioms_ nat Init.Nat.add - : Monoid.axioms_ nat Init.Nat.add -HB: nat is canonically equipped with structures: - - s1 - (from "./tests/instance_before_structure.v", line 11) - -File "./tests/instance_before_structure.v", line 16, characters 0-52: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -HB: nat is canonically equipped with structures: - - s1 - (from "./tests/instance_before_structure.v", line 11) - -File "./tests/interleave_context.v", line 16, characters 0-52: -Warning: -pulling in dependencies: [interleave_context_HasA, interleave_context_HasB] - -Please list them or end the declaration with '&' -[HB.implicit-structure-dependency,HB,elpi,default] -[1789708784.253532] HB: start module and section hasA -[1789708784.259796] HB: converting arguments +[1755298683.658069] HB: start module and section hasA +[1755298683.658374] HB: converting arguments indt-decl (parameter T explicit X0 c0 \ record hasA (sort (typ X1)) Build_hasA (field [coercion off, canonical tt] a c0 c1 \ end-record)) to factories -[1789708784.260006] HB: processing key parameter -[1789708784.260355] HB: converting factories +[1755298683.658524] HB: processing key parameter +[1755298683.658864] HB: converting factories w-params.nil T (sort (typ «HB.tests.hb_pack.8»)) c0 \ [] to mixins -[1789708784.260467] HB: declaring context +[1755298683.658986] HB: declaring context w-params.nil T (sort (typ «HB.tests.hb_pack.8»)) c0 \ [] -[1789708784.260608] HB: declaring parameters and key as section variables +[1755298683.659125] HB: declaring parameters and key as section variables Here is the list of mixins to declare (the order matters): [] -[1789708784.260990] HB: declare mixin or factory -[1789708784.261079] HB: declare record axioms_ -[1789708784.262521] HB: declare notation Build -[1789708784.263519] HB: declare notation axioms -[1789708784.265351] HB: start module Exports -[1789708784.266671] HB: end modules and sections; export +[1755298683.659516] HB: declare mixin or factory +[1755298683.659605] HB: declare record axioms_ +[1755298683.661063] HB: declare notation Build +[1755298683.662114] HB: declare notation axioms +[1755298683.664039] HB: start module Exports +[1755298683.665446] HB: end modules and sections; export «HB.tests.hb_pack.hasA.Exports» -HB: nat is canonically equipped with structures: - - s1 - (from "./tests/instance_before_structure.v", line 11) - hasA.type not a defined object. hasB.type not a defined object. -HB: nat is canonically equipped with structures: - - s1 - (from "./tests/instance_before_structure.v", line 11) - -aType - : Type -HB: nat is canonically equipped with structures: - - s3 - s2 - (from "./tests/instance_before_structure.v", line 30) - - s1 - (from "./tests/instance_before_structure.v", line 11) - -default1 - : nat -default2 - : nat -default3 - : nat -hasB.type not a defined object. -COQC tests/fun_instance.v -COQC tests/issue284.v +COQC tests/hnf.v +[1755298683.799334] HB: exporting under the module path [] +[1755298683.799624] HB: exporting modules +[Ring_of_TYPE.Exports, Ring.Exports, RingElpiOperations, RingExports, + Dummy.Exports, URing.Exports, URingElpiOperations, dummy.Exports, + Builders_1.Builders_Export_5] +[1755298683.800897] HB: exporting CS instances +[«Z_ring_axioms», «BinNums_Z__canonical__Enclosing_Ring»] +[1755298683.801362] HB: exporting Abbreviations [addr0, addrNK] +[1755298683.801560] HB: exporting Clauses X0 +forall (R : Enclosing.Ring.type) (x : R), x = x + : Prop +0%G + : ?s +where +?s : [ |- Enclosing.Ring.type] +Enclosing.zero : Z + : Z Monoid.phant_on_ nat Nat_mul__canonical__funclass_Monoid (Phantom (nat -> nat -> nat) Nat_mul__canonical__funclass_Monoid) : Monoid.axioms_ nat Init.Nat.mul : Monoid.axioms_ nat Init.Nat.mul -HB.check: forall w : wp.type nat Init.Nat.mul, w = w : Prop -COQC tests/issue287.v -Query assignments: - Ind = «hasA.axioms_» -File "./tests/non_forgetful_inheritance.v", line 35, characters 0-45: -Warning: Could not enable unknown warning HB.non-forgetful-inheritance -[unknown-warning,default] -Debug: -elpi lets escape exception: non forgetful inheritance detected. - You have two solutions: -1. (Best practice) Reorganize your hierarchy to make -non_forgetful_inheritance_HasSq depend on non_forgetful_inheritance_Mul. -See the paper "Competing inheritance paths in -dependent type theory" (https://hal.inria.fr/hal-02463336) for more -explanations -2. Use the attribute #[non_forgetful_inheritance] to disable this check. -We strongly advise you encapsulate this instance inside a module, -in order to isolate it from the rest of the code, and to be able -to import it on demand. See the above paper and the file -https://github.com/math-comp/hierarchy-builder/blob/master/tests/non_forgetful_inheritance.v -to witness devastating effects. -[HB.non-forgetful-inheritance,HB,elpi,default] -Query assignments: - Ind = «A.axioms_» -Query assignments: - Ind = «A.type» -COQC tests/two_hier.v +COQC tests/fun_instance.v hasAB.type not a defined object. hasA'.type not a defined object. -hasAB.type not a defined object. +HB.check: forall w : wp.type nat Init.Nat.mul, w = w : Prop forall T : AB.type, unkeyed {| @@ -1440,48 +1413,173 @@ |} |} : Type -Datatypes_nat__canonical__hnf_S = -{| S.sort := nat; S.class := {| S.hnf_M_mixin := HB_unnamed_mixin_8 |} |} - : S.type -HB_unnamed_mixin_8 = -{| M.x := f.y nat HB_unnamed_factory_6 + 1 |} - : M.axioms_ nat A : A.type : A.type A : A.type : A.type -Datatypes_bool__canonical__hnf_S = -{| S.sort := bool; S.class := {| S.hnf_M_mixin := HB_unnamed_mixin_12 |} |} - : S.type -HB_unnamed_mixin_12 = -Builders_1.HB_unnamed_factory_3 bool HB_unnamed_factory_9 - : M.axioms_ bool AB1 : hasB.phant_axioms A -> AB.type : hasB.phant_axioms A -> AB.type Bm : hasB.phant_axioms A : hasB.phant_axioms A AB2 : AB.type : AB.type -COQC tests/instance_merge_with_param.v -hasA'.type not a defined object. pB : T * T : T * T AB3 : AB.type : AB.type +COQC tests/issue284.v +X : Foo.type A P + : Foo.type A P +COQC tests/issue287.v +File "./tests/non_forgetful_inheritance.v", line 35, characters 0-45: +Warning: Could not enable unknown warning HB.non-forgetful-inheritance +[unknown-warning,default] +Debug: +elpi lets escape exception: non forgetful inheritance detected. + You have two solutions: +1. (Best practice) Reorganize your hierarchy to make +non_forgetful_inheritance_HasSq depend on non_forgetful_inheritance_Mul. +See the paper "Competing inheritance paths in +dependent type theory" (https://hal.inria.fr/hal-02463336) for more +explanations +2. Use the attribute #[non_forgetful_inheritance] to disable this check. +We strongly advise you encapsulate this instance inside a module, +in order to isolate it from the rest of the code, and to be able +to import it on demand. See the above paper and the file +https://github.com/math-comp/hierarchy-builder/blob/master/tests/non_forgetful_inheritance.v +to witness devastating effects. +[HB.non-forgetful-inheritance,HB,elpi,default] +Query assignments: + Ind = «hasA.axioms_» +COQC tests/two_hier.v +Query assignments: + Ind = «A.axioms_» +COQC tests/instance_merge_with_param.v +Query assignments: + Ind = «A.type» +T : Fun.type nat + : Fun.type nat +aType + : Type COQC tests/instance_merge_with_distinct_param.v +hasB.type not a defined object. +HB: nat is canonically equipped with structures: + - s1 + (from "./tests/instance_before_structure.v", line 11) + +File "./tests/instance_before_structure.v", line 16, characters 0-52: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +HB: nat is canonically equipped with structures: + - s1 + (from "./tests/instance_before_structure.v", line 11) + +HB: nat is canonically equipped with structures: + - s1 + (from "./tests/instance_before_structure.v", line 11) + +HB: nat is canonically equipped with structures: + - s1 + (from "./tests/instance_before_structure.v", line 11) + erefl : ?t = ?t : ?t = ?t where ?t : [ |- Sq.type] +HB: nat is canonically equipped with structures: + - s3 + s2 + (from "./tests/instance_before_structure.v", line 30) + - s1 + (from "./tests/instance_before_structure.v", line 11) + +default1 + : nat +default2 + : nat +default3 + : nat COQC tests/instance_merge.v COQC tests/unit/enrich_type.v -X : Foo.type A P - : Foo.type A P COQC tests/unit/mixin_src_has_mixin_instance.v -T : Fun.type nat - : Fun.type nat COQC tests/unit/mk_src_map.v +hasAB.type not a defined object. +hasA'.type not a defined object. COQC tests/unit/close_hole_term.v +Datatypes_nat__canonical__hnf_S = +{| S.sort := nat; S.class := {| S.hnf_M_mixin := HB_unnamed_mixin_8 |} |} + : S.type +HB_unnamed_mixin_8 = +{| M.x := f.y nat HB_unnamed_factory_6 + 1 |} + : M.axioms_ nat +Datatypes_bool__canonical__hnf_S = +{| S.sort := bool; S.class := {| S.hnf_M_mixin := HB_unnamed_mixin_12 |} |} + : S.type +HB_unnamed_mixin_12 = +Builders_1.HB_unnamed_factory_3 bool HB_unnamed_factory_9 + : M.axioms_ bool +COQC tests/unit/struct.v +COQC tests/factory_when_notation.v +COQC tests/saturate_on.v +nat : s3.type + : s3.type +list nat : s3.type + : s3.type +list (list nat) : s3.type + : s3.type +fun t : s3.type => list t : s3.type + : s3.type -> s3.type +nat : s3.type + : s3.type +list nat : s3.type + : s3.type +list (list nat) : s3.type + : s3.type +fun t : s3.type => list t : s3.type + : s3.type -> s3.type +COQC tests/bug_435.v +File "./tests/unit/mixin_src_has_mixin_instance.v", line 12, characters 0-57: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +Query assignments: + M1_ = const «m1.phant_axioms» + Y = has-mixin-instance (cs-gref (indt «nat»)) (const «m1.phant_axioms») + (const «nat_m1») +Query assignments: + M1_ = const «m1.phant_axioms» + Y = has-mixin-instance (cs-gref (indt «list»)) (const «m1.phant_axioms») + (const «i1») +COQC tests/bug_447.v +File "./tests/unit/mk_src_map.v", line 6, characters 0-76: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +File "./tests/unit/mk_src_map.v", line 8, characters 0-79: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +list_foo' + : forall P A : Type, is_foo.axioms_ P (list A) +list_foo + : forall P : Type, is_foo.axioms_ P (list P) +Query assignments: + MS = pi c0 \ + pi c1 \ + mixin-src (app [global (indt «list»), c1]) (indt «is_foo.axioms_») + (app [global (const «list_foo»), c0]) :- [coq.unify-eq c0 c1 ok] +Query assignments: + MS' = pi c0 \ + pi c1 \ + pi c2 \ + mixin-src (app [global (indt «list»), c2]) (indt «is_foo.axioms_») + (app [global (const «list_foo'»), c0, c1]) :- [coq.unify-eq c1 c2 ok] +COQC tests/unimported_relevant_class.v +nat : s3'.type Datatypes_nat__canonical__two_hier_s3 + : s3'.type Datatypes_nat__canonical__two_hier_s3 +list nat : s3'.type Datatypes_nat__canonical__two_hier_s3 + : s3'.type Datatypes_nat__canonical__two_hier_s3 +Datatypes_list__canonical__two_hier_s3' + : forall x : s3.type, s3'.type x -> s3'.type x +list (list nat) : s3'.type Datatypes_nat__canonical__two_hier_s3 + : s3'.type Datatypes_nat__canonical__two_hier_s3 Query assignments: X = global (indt «nat») Query assignments: @@ -1571,24 +1669,17 @@ WEAK CONSTRAINTS: -COQC tests/unit/struct.v -COQC tests/factory_when_notation.v -nat : s3.type - : s3.type -list nat : s3.type - : s3.type -list (list nat) : s3.type - : s3.type -fun t : s3.type => list t : s3.type - : s3.type -> s3.type -COQC tests/saturate_on.v +COQC tests/unimported_irrelevant_class.v +COQC examples/demo1/test_0_0.v HB: list is canonically equipped with structures: - s2 (from "./tests/instance_merge_with_param.v", line 12) - s1 (from "./tests/instance_merge_with_param.v", line 10) -COQC tests/bug_435.v +File "./tests/saturate_on.v", line 5, characters 0-64: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] HB: list is canonically equipped with structures: - s3 (from "./tests/instance_merge_with_param.v", line 23) @@ -1597,9 +1688,11 @@ - s1 (from "./tests/instance_merge_with_param.v", line 10) -COQC tests/bug_447.v -COQC tests/unimported_relevant_class.v -COQC tests/unimported_irrelevant_class.v +COQC examples/demo1/test_1_0.v +COQC examples/demo1/test_2_0.v +list unit : Pointed.type + : Pointed.type +COQC examples/demo1/test_3_0.v Query assignments: X = app [global (indt «list»), X0] X1_ = X1 @@ -1679,107 +1772,25 @@ WEAK CONSTRAINTS: -File "./tests/unit/mk_src_map.v", line 6, characters 0-76: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -COQC examples/demo1/test_0_0.v -File "./tests/unit/mk_src_map.v", line 8, characters 0-79: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -list_foo' - : forall P A : Type, is_foo.axioms_ P (list A) -list_foo - : forall P : Type, is_foo.axioms_ P (list P) -Query assignments: - MS = pi c0 \ - pi c1 \ - mixin-src (app [global (indt «list»), c1]) (indt «is_foo.axioms_») - (app [global (const «list_foo»), c0]) :- [coq.unify-eq c0 c1 ok] -Query assignments: - MS' = pi c0 \ - pi c1 \ - pi c2 \ - mixin-src (app [global (indt «list»), c2]) (indt «is_foo.axioms_») - (app [global (const «list_foo'»), c0, c1]) :- [coq.unify-eq c1 c2 ok] -COQC examples/demo1/test_1_0.v -nat : s3.type - : s3.type -list nat : s3.type - : s3.type -list (list nat) : s3.type - : s3.type -fun t : s3.type => list t : s3.type - : s3.type -> s3.type -File "./tests/factory_when_notation.v", line 6, characters 0-40: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -COQC examples/demo1/test_2_0.v -Query assignments: - H_ = [] -struct_foo1__to__struct_foo = -fun s : foo1.type => {| foo.sort := s; foo.class := foo1.class s |} - : foo1.type -> foo.type (option nat) - -Arguments struct_foo1__to__struct_foo s -struct_foo1__to__struct_foo is a reversible coercion -File "./tests/unit/mixin_src_has_mixin_instance.v", line 12, characters 0-57: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -Query assignments: - M1_ = const «m1.phant_axioms» - Y = has-mixin-instance (cs-gref (indt «nat»)) (const «m1.phant_axioms») - (const «nat_m1») -Query assignments: - M1_ = const «m1.phant_axioms» - Y = has-mixin-instance (cs-gref (indt «list»)) (const «m1.phant_axioms») - (const «i1») -COQC examples/demo1/test_3_0.v COQC examples/demo1/test_3_3.v -File "./tests/saturate_on.v", line 5, characters 0-64: -Warning: HB: no new instance is generated -[HB.no-new-instance,HB,elpi,default] -list unit : Pointed.type - : Pointed.type -COQC examples/demo1/test_4_0.v -nat : s3'.type Datatypes_nat__canonical__two_hier_s3 - : s3'.type Datatypes_nat__canonical__two_hier_s3 -list nat : s3'.type Datatypes_nat__canonical__two_hier_s3 - : s3'.type Datatypes_nat__canonical__two_hier_s3 -Datatypes_list__canonical__two_hier_s3' - : forall x : s3.type, s3'.type x -> s3'.type x -list (list nat) : s3'.type Datatypes_nat__canonical__two_hier_s3 - : s3'.type Datatypes_nat__canonical__two_hier_s3 -COQC examples/demo1/test_4_3.v -COQC examples/demo1/test_5_0.v -COQC examples/demo1/test_5_3.v -COQC examples/demo2/stage10.v -COQC examples/demo2/stage11.v -COQC examples/demo3/test_0_0.v -COQC examples/demo3/test_1_0.v -testTy : JustMixedParam.type ?T - : JustMixedParam.type ?T -where -?T : [ |- Type] -COQC examples/demo3/test_2_0.v -COQC tests/exports2.v -[1789708787.290018] HB: postulating X -[1789708787.296682] HB: declare canonical mixin instance +[1755298686.133334] HB: postulating X +[1755298686.136055] HB: declare canonical mixin instance «HB_unnamed_factory_5» -[1789708787.297322] HB: we can build a bug_435_B2 on unit -[1789708787.297566] HB: declare canonical structure instance +[1755298686.137213] HB: we can build a bug_435_B2 on unit +[1755298686.137572] HB: declare canonical structure instance Datatypes_unit__canonical__bug_435_B2 -[1789708787.297757] HB: structure instance for +[1755298686.137781] HB: structure instance for Datatypes_unit__canonical__bug_435_B2 is {| B2.sort := unit; B2.class := {| B2.bug_435_A2_mixin := HB_unnamed_factory_5 |} |} -[1789708787.299064] HB: structure instance +[1755298686.139608] HB: structure instance Datatypes_unit__canonical__bug_435_B2 declared -[1789708787.299758] HB: we can build a should_work_but_fails_B on unit -[1789708787.303716] HB: declare canonical structure instance +[1755298686.140409] HB: we can build a should_work_but_fails_B on unit +[1755298686.140746] HB: declare canonical structure instance Datatypes_unit__canonical__should_work_but_fails_B -[1789708787.304077] HB: structure instance for +[1755298686.140983] HB: structure instance for Datatypes_unit__canonical__should_work_but_fails_B is {| B.sort := unit; @@ -1789,26 +1800,51 @@ B.bug_435_A2_mixin := HB_unnamed_factory_5 |} |} -[1789708787.304602] HB: closing instance section +[1755298686.141462] HB: closing instance section unit : B.type ?t : B.type ?t where ?t : [ |- S.type] +File "./tests/factory_when_notation.v", line 6, characters 0-40: +Warning: HB: no new instance is generated +[HB.no-new-instance,HB,elpi,default] +COQC examples/demo1/test_4_0.v +COQC examples/demo1/test_4_3.v unit : B.type ?t : B.type ?t where ?t : [ |- S.type] +Query assignments: + H_ = [] +struct_foo1__to__struct_foo = +fun s : foo1.type => {| foo.sort := s; foo.class := foo1.class s |} + : foo1.type -> foo.type (option nat) + +Arguments struct_foo1__to__struct_foo s +struct_foo1__to__struct_foo is a reversible coercion +COQC examples/demo1/test_5_0.v +COQC examples/demo1/test_5_3.v +COQC examples/demo2/stage10.v +COQC examples/demo2/stage11.v +testTy : JustMixedParam.type ?T + : JustMixedParam.type ?T +where +?T : [ |- Type] +COQC examples/demo3/test_0_0.v +COQC examples/demo3/test_1_0.v +COQC examples/demo3/test_2_0.v +COQC tests/exports2.v File "./examples/demo2/stage10.v", line 4, characters 0-25: Warning: Hiding binding of key Q to Q_scope [hiding-delimiting-key,parsing,default] -[1789708787.821823] HB: exporting under the module path [] -[1789708787.822274] HB: exporting modules [] -[1789708787.822421] HB: exporting CS instances [] -[1789708787.822545] HB: exporting Abbreviations [] -[1789708787.822641] HB: exporting Clauses X0 File "./examples/demo2/stage11.v", line 3, characters 0-25: Warning: Hiding binding of key Q to Q_scope [hiding-delimiting-key,parsing,default] +[1755298687.856679] HB: exporting under the module path [] +[1755298687.857008] HB: exporting modules [] +[1755298687.857091] HB: exporting CS instances [] +[1755298687.857148] HB: exporting Abbreviations [] +[1755298687.857197] HB: exporting Clauses X0 File "./examples/demo2/stage10.v", line 112, characters 2-115: Warning: HB: no new instance is generated [HB.no-new-instance,HB,elpi,default] @@ -1845,30 +1881,30 @@ disable this warning. [deprecated-tacopt-without-locality,deprecated-since-8.17,deprecated,default] HB: skipping section opening -[1789708789.431568] HB: declare mixin instance +[1755298689.378402] HB: declare mixin instance Stage11_JoinTAddAG__to__Stage11_Uniform_wo_Topology -[1789708789.432663] HB: declare canonical mixin instance +[1755298689.379433] HB: declare canonical mixin instance «Stage11_JoinTAddAG__to__Stage11_Uniform_wo_Topology» -[1789708789.433643] HB: declare mixin instance +[1755298689.380513] HB: declare mixin instance Stage11_JoinTAddAG__to__Stage11_Join_TAddAG_Uniform -[1789708789.436914] HB: declare canonical mixin instance +[1755298689.383809] HB: declare canonical mixin instance «Stage11_JoinTAddAG__to__Stage11_Join_TAddAG_Uniform» -[1789708789.437917] HB: declare mixin instance +[1755298689.384808] HB: declare mixin instance Stage11_JoinTAddAG__to__Stage11_Join_Uniform_Topology -[1789708789.440409] HB: declare canonical mixin instance +[1755298689.387201] HB: declare canonical mixin instance «Stage11_JoinTAddAG__to__Stage11_Join_Uniform_Topology» -[1789708789.441338] HB: declare mixin instance +[1755298689.388151] HB: declare mixin instance Stage11_JoinTAddAG__to__Stage11_JoinTAddAG_wo_Uniform -[1789708789.443021] HB: declare canonical mixin instance +[1755298689.389769] HB: declare canonical mixin instance «Stage11_JoinTAddAG__to__Stage11_JoinTAddAG_wo_Uniform» -[1789708789.444355] HB: we can build a Stage11_UniformSpace_wo_Topology on +[1755298689.391080] HB: we can build a Stage11_UniformSpace_wo_Topology on Qc -[1789708789.444558] HB: declare canonical structure instance +[1755298689.391273] HB: declare canonical structure instance Qcanon_Qc__canonical__Stage11_UniformSpace_wo_Topology -[1789708789.444688] HB: Giving name HB_unnamed_mixin_46 to mixin instance +[1755298689.391424] HB: Giving name HB_unnamed_mixin_46 to mixin instance Builders_21.Stage11_JoinTAddAG__to__Stage11_Uniform_wo_Topology Qc HB_unnamed_mixin_35 HB_unnamed_mixin_40 HB_unnamed_factory_41 -[1789708789.445531] HB: structure instance for +[1755298689.392284] HB: structure instance for Qcanon_Qc__canonical__Stage11_UniformSpace_wo_Topology is {| UniformSpace_wo_Topology.sort := Qc; @@ -1878,12 +1914,12 @@ HB_unnamed_mixin_46 |} |} -[1789708789.446528] HB: structure instance +[1755298689.393261] HB: structure instance Qcanon_Qc__canonical__Stage11_UniformSpace_wo_Topology declared -[1789708789.447276] HB: we can build a Stage11_UniformSpace on Qc -[1789708789.447471] HB: declare canonical structure instance +[1755298689.394011] HB: we can build a Stage11_UniformSpace on Qc +[1755298689.394199] HB: declare canonical structure instance Qcanon_Qc__canonical__Stage11_UniformSpace -[1789708789.447622] HB: structure instance for +[1755298689.394330] HB: structure instance for Qcanon_Qc__canonical__Stage11_UniformSpace is {| UniformSpace.sort := Qc; @@ -1893,15 +1929,15 @@ UniformSpace.Stage11_Uniform_wo_Topology_mixin := HB_unnamed_mixin_46 |} |} -[1789708789.448703] HB: structure instance +[1755298689.395387] HB: structure instance Qcanon_Qc__canonical__Stage11_UniformSpace declared -[1789708789.449515] HB: we can build a Stage11_TAddAG_wo_Uniform on Qc -[1789708789.449705] HB: declare canonical structure instance +[1755298689.396226] HB: we can build a Stage11_TAddAG_wo_Uniform on Qc +[1755298689.396407] HB: declare canonical structure instance Qcanon_Qc__canonical__Stage11_TAddAG_wo_Uniform -[1789708789.449891] HB: Giving name HB_unnamed_mixin_47 to mixin instance +[1755298689.396598] HB: Giving name HB_unnamed_mixin_47 to mixin instance Builders_21.to_JoinTAddAG_wo_Uniform Qc HB_unnamed_mixin_35 HB_unnamed_mixin_40 HB_unnamed_factory_41 -[1789708789.450890] HB: structure instance for +[1755298689.397545] HB: structure instance for Qcanon_Qc__canonical__Stage11_TAddAG_wo_Uniform is {| TAddAG_wo_Uniform.sort := Qc; @@ -1913,12 +1949,12 @@ HB_unnamed_mixin_47 |} |} -[1789708789.451988] HB: structure instance +[1755298689.398495] HB: structure instance Qcanon_Qc__canonical__Stage11_TAddAG_wo_Uniform declared -[1789708789.453242] HB: we can build a Stage11_Uniform_TAddAG_unjoined on Qc -[1789708789.453426] HB: declare canonical structure instance +[1755298689.399636] HB: we can build a Stage11_Uniform_TAddAG_unjoined on Qc +[1755298689.399837] HB: declare canonical structure instance Qcanon_Qc__canonical__Stage11_Uniform_TAddAG_unjoined -[1789708789.453594] HB: structure instance for +[1755298689.399996] HB: structure instance for Qcanon_Qc__canonical__Stage11_Uniform_TAddAG_unjoined is {| Uniform_TAddAG_unjoined.sort := Qc; @@ -1933,18 +1969,18 @@ HB_unnamed_mixin_46 |} |} -[1789708789.454663] HB: structure instance +[1755298689.401103] HB: structure instance Qcanon_Qc__canonical__Stage11_Uniform_TAddAG_unjoined declared -[1789708789.456698] HB: we can build a Stage11_TAddAG on Qc -[1789708789.456906] HB: declare canonical structure instance +[1755298689.403259] HB: we can build a Stage11_TAddAG on Qc +[1755298689.403462] HB: declare canonical structure instance Qcanon_Qc__canonical__Stage11_TAddAG -[1789708789.457132] HB: Giving name HB_unnamed_mixin_48 to mixin instance +[1755298689.403716] HB: Giving name HB_unnamed_mixin_48 to mixin instance Builders_21.Stage11_JoinTAddAG__to__Stage11_Join_Uniform_Topology Qc HB_unnamed_mixin_35 HB_unnamed_mixin_40 HB_unnamed_factory_41 -[1789708789.458354] HB: Giving name HB_unnamed_mixin_49 to mixin instance +[1755298689.404922] HB: Giving name HB_unnamed_mixin_49 to mixin instance Builders_21.Stage11_JoinTAddAG__to__Stage11_Join_TAddAG_Uniform Qc HB_unnamed_mixin_35 HB_unnamed_mixin_40 HB_unnamed_factory_41 -[1789708789.459480] HB: structure instance for +[1755298689.406073] HB: structure instance for Qcanon_Qc__canonical__Stage11_TAddAG is {| TAddAG.sort := Qc; @@ -1958,13 +1994,13 @@ TAddAG.Stage11_Join_TAddAG_Uniform_mixin := HB_unnamed_mixin_49 |} |} -[1789708789.460722] HB: structure instance +[1755298689.407304] HB: structure instance Qcanon_Qc__canonical__Stage11_TAddAG declared entourage : set (set (Qc * Qc)) : set (set (Qc * Qc)) -Finished transaction in 10.664 secs (8.723u,0.536s) (successful) +Finished transaction in 11.827 secs (8.653u,0.587s) (successful) Finished transaction in 0. secs (0.u,0.s) (successful) -Finished transaction in 8.825 secs (8.384u,0.44s) (successful) +Finished transaction in 9.096 secs (8.585u,0.4s) (successful) Module Type new_concept_Locked = Sig @@ -2074,12 +2110,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/985170/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/985170/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/1375453 and its subdirectories -I: Current time: Thu Sep 17 17:20:14 -12 2026 -I: pbuilder-time-stamp: 1789708814 +I: removing directory /srv/workspace/pbuilder/985170 and its subdirectories +I: Current time: Sat Aug 16 12:58:35 +14 2025 +I: pbuilder-time-stamp: 1755298715