Test "corner-cases/nested-redex-aux"
Expected: 🤷 either · Size: 43.0 KB · Lines: 755 · lean4export: 3.1.0 · Lean: 4.34.1 · 📄 Declaration · 🔗 Source
A nested inductive whose two nested occurrences differ only by a beta-redex:
| a : List ((fun _ : Bool => NestedRedex) true) → NestedRedex
| b : List NestedRedex → NestedRedex
The official kernel finds nested occurrences syntactically, so these become
two auxiliary types and NestedRedex.rec has three motives; the theorem
reduces a recursor application that goes through both, and the official
kernel accepts it.
A checker that normalises constructor types before it collects nested occurrences merges the two into one auxiliary type, derives a recursor with two motives and rejects the theorem. Whether such a field is a nested occurrence at all is debatable: the elaborator never writes one, and the official kernel's answer follows from its syntactic test rather than from the type theory (see https://github.com/intgrah/sokonanoda/issues/12).
| Checker | Result | ⏱️ | 🧠 | |||
|---|---|---|---|---|---|---|
| logos-kernel | 👍 | 0.743 ms | 4.6 MB | |||
| nano-lean | 👍 | 0.816 ms | 28.1 MB | |||
| sokonanoda | ✋ | 1.37 ms | 29.8 MB | |||
| pestka | 👍 | 1.98 ms | 10.8 MB | |||
| kefir | 👍 | 4.66 ms | 6.7 MB | |||
| nanoclo | 👍 | 1.56 ms | 47.5 MB | |||
| kefir-wasm | 👍 | 283 ms | 110.1 MB | |||
| con-ron | 👍 | 23.6 ms | 39.8 MB | |||
| con-agua | 👍 | 20.4 ms | 13.8 MB | |||
| nanoda | 👍 | 2.11 ms | 3.3 MB | |||
| lazylean | 👍 | 2.13 ms | 21.5 MB | |||
| con-leche | 👍 | 7.35 ms | 23.1 MB | |||
| pestka-wasm | 👍 | 126 ms | 108.4 MB | |||
| tenet-jvm | 👍 | 173 ms | 70.3 MB | |||
| eink0rn | 👍 | 5.51 ms | 20.0 MB | |||
| official | 👍 | 31.6 ms | 65.9 MB | |||
| ind-models | 👍 | 251 ms | 116.7 MB | |||
| lean4lean | 👍 | 31.5 ms | 97.0 MB | |||
| tenet | 👍 | 150 ms | 46.0 MB | |||
| tenet-hs | 👍 | 4.04 ms | 14.7 MB | |||
| ocaml4lean | 👍 | 16.6 ms | 27.0 MB | |||
| lean4cobol | 👍 | 35.2 ms | 14.0 MB | |||
| evmlean | 👍 | 12.7 s | 324.0 MB | |||
| overfull | ⌛ | 0 ms | 0 B | |||
| vow-lean-kernel | 👍 | 306 ms | 14.8 MB | |||
| mini | 🚫 | 35.4 ms | 73.7 MB | |||
| canonical-min | 🚫 | 389 ms | 1.1 GB | |||
| kiota | 👍 | 2.51 ms | 11.0 MB | |||
| metalean-slow | 👍 | 47.0 ms | 76.1 MB | |||
| nanobruijn | 👍 | 3.16 ms | 14.5 MB | |||
| metalean-fast | 👍 | 34.1 ms | 78.6 MB | |||
| nanoclo-fortran | 👍 | 3.76 ms | 5.0 MB | |||
| rpylean | 👍 | 1.46 ms | 5.7 MB | |||
| mathgraph | ✋ | 1.02 ms | 39.8 MB | |||
| parse-only | 👍 | 29.7 ms | 65.9 MB |