Test "tutorial/071_BogusRecursor"
Expected: ✋ reject · Size: 1.8 KB · Lines: 27 · lean4export: 3.1.0 · Lean: 4.29.1 · 📄 Declaration · 🔗 Source
A kernel must not blindly trust the recursors it is handed. If we write
inductive BogusRecursor : Type where
| mk : BogusRecursor
then the recursor BogusRecursor.rec will be correctly derived with type
{motive : BogusRecursor → Sort u} → motive .mk → (t : BogusRecursor) → motive t.
This test instead claims that the recursor is a constant of type False, and
then uses it to prove bogusRecursorFalse : False. A kernel that validates
the recursors it is handed rejects the bogus recursor itself; a kernel that
ignores them and derives the recursors anew rejects the proof of False
(the derived recursor neither has type False nor zero universe parameters).
Either way, this test must be rejected.
| Checker | Result | ⏱️ | 🧠 | |||
|---|---|---|---|---|---|---|
| mathgraph | ✋ | 1 ms | 30.0 MB | |||
| ind-models | ✋ | 58 ms | 100.5 MB | |||
| official-nightly | ✋ | 28 ms | 64.1 MB | |||
| evmlean | ✋ | 525 ms | 132.7 MB | |||
| nanoda | ✋ | 0 ms | 3.0 MB | |||
| mini | ✋ | 34 ms | 70.4 MB | |||
| lean4lean | ✋ | 28 ms | 97.9 MB | |||
| sokonanoda | ✋ | 1 ms | 29.7 MB | |||
| zignodamus | ✋ | 36 ms | 25.7 MB | |||
| nanoclo | ✋ | 1 ms | 45.7 MB | |||
| nanobruijn | ✋ | 1 ms | 3.3 MB | |||
| kiota | ✋ | 1 ms | 6.8 MB | |||
| official | ✋ | 28 ms | 63.8 MB | |||
| vow-lean-kernel | 👍 | 65 ms | 8.1 MB | |||
| rpylean | 👍 | 1 ms | 7.9 MB | |||
| official-v4.28.0 | ✋ | 34 ms | 72.4 MB | |||
| still-nanoda | ✋ | 0 ms | 3.0 MB | |||
| nyaya | 👍 | 2 ms | 9.3 MB | |||
| parse-only | 👍 | 27 ms | 60.3 MB |