Test "bugs/nested-rec-rule-nfields"
Expected: ✋ reject · Size: 39.9 KB · Lines: 728 · lean4export: 3.1.0 · Lean: 4.34.1 · 📄 Declaration · 🔗 Source
Proof of False via trusted field count in the recursor rule of a nested inductive.
T is nested through C, and T.mk : C T → (Type → Prop) → T. Lie by
saying that the T.mk rule of T.rec has one field instead of two. A checker
that uses this number when ι-reducing passes only the last field, which then
lands in the slot of the first one. The next argument after the major premise
lands in the slot of the second one. With a minor premise that returns that
second field, the proposition badProp (really True) reduces to Bool.
A Prop with two distinguishable inhabitants gives False.
Nanoda validated the rules of non-nested inductives, but not of nested ones, until it was fixed.
| Checker | Result | ⏱️ | 🧠 | |||
|---|---|---|---|---|---|---|
| logos-kernel | ✋ | 0.631 ms | 4.6 MB | |||
| nano-lean | ✋ | 1.14 ms | 32.5 MB | |||
| sokonanoda | ✋ | 1.30 ms | 29.9 MB | |||
| pestka | ✋ | 1.46 ms | 10.5 MB | |||
| kefir | ✋ | 1.85 ms | 6.4 MB | |||
| nanoclo | ✋ | 1.39 ms | 55.4 MB | |||
| kefir-wasm | ✋ | 217 ms | 107.5 MB | |||
| con-ron | ✋ | 23.2 ms | 39.8 MB | |||
| con-agua | ✋ | 19.6 ms | 12.3 MB | |||
| nanoda | ✋ | 1.73 ms | 3.2 MB | |||
| lazylean | ✋ | 1.85 ms | 21.3 MB | |||
| con-leche | ✋ | 5.98 ms | 22.8 MB | |||
| pestka-wasm | ✋ | 117 ms | 106.5 MB | |||
| tenet-jvm | ✋ | 150 ms | 66.5 MB | |||
| eink0rn | ✋ | 3.02 ms | 14.8 MB | |||
| official | ✋ | 31.7 ms | 67.1 MB | |||
| ind-models | ✋ | 104 ms | 110.7 MB | |||
| lean4lean | ✋ | 32.1 ms | 99.2 MB | |||
| tenet | ✋ | 143 ms | 45.5 MB | |||
| tenet-hs | ✋ | 3.24 ms | 12.9 MB | |||
| ocaml4lean | ✋ | 15.3 ms | 26.9 MB | |||
| lean4cobol | ✋ | 25.7 ms | 13.8 MB | |||
| evmlean | ✋ | 5.59 s | 280.9 MB | |||
| overfull | ⌛ | 0 ms | 0 B | |||
| vow-lean-kernel | ✋ | 283 ms | 14.7 MB | |||
| mini | 🚫 | 36.0 ms | 73.9 MB | |||
| canonical-min | ✋ | 392 ms | 1.1 GB | |||
| kiota | ✋ | 2.59 ms | 11.1 MB | |||
| metalean-slow | 👍 | 44.6 ms | 74.1 MB | |||
| nanobruijn | ✋ | 2.76 ms | 12.1 MB | |||
| metalean-fast | 👍 | 34.3 ms | 73.8 MB | |||
| nanoclo-fortran | 👍 | 2.83 ms | 4.6 MB | |||
| rpylean | ✋ | 1.48 ms | 5.8 MB | |||
| mathgraph | 👍 | 1.12 ms | 43.8 MB | |||
| parse-only | 👍 | 29.5 ms | 65.4 MB |