Lean Kernel Arena / other/level-index-out-of-order

Test "other/level-index-out-of-order"

Expected: 馃憤 accept 路 Size: 328鈥疊 路 Lines: 6 路 lean4export: 0.1.0 路 Lean: 4.29.1 路 馃搫 Declaration

Lean4export will create internalization-table references contiguously in order: in references for names, il references for levels, and ie references for expressions all work this way.

However, the spec merely requires that these are integers. It's reasonable for an implementation to assume these are approximately dense (and to treat them as array indices instead of hashtable entries), but a kernel should handle skipped indices or out-of-order indices.

This test checks that the kernel doesn't require internaliation-table references to be presented in ascending order. If the level referenes 2 and 1 were swapped, this would be the expected encoding of axiom foo : Sort 2. This encoding should be equivalent.

Checker Result 鈴憋笍 馃
sokonanoda 馃憤 1鈥痬s 33.8鈥疢B
mathgraph 馃憤 1鈥痬s 31.5鈥疢B
nanoclo 馃憤 1鈥痬s 23.5鈥疢B
con-ron 馃毇 23鈥痬s 58.9鈥疢B
nanobruijn 馃憤 0鈥痬s 3.5鈥疢B
nanoda 馃毇 0鈥痬s 2.8鈥疢B
lazylean 馃憤 1鈥痬s 21.6鈥疢B
con-leche 馃毇 4鈥痬s 16.3鈥疢B
eink0rn 馃憤 1鈥痬s 11.7鈥疢B
official 馃憤 28鈥痬s 66.2鈥疢B
ind-models 馃憤 100鈥痬s 102.3鈥疢B
lean4lean 馃憤 27鈥痬s 94.5鈥疢B
tenet 馃憤 91鈥痬s 43.6鈥疢B
tenet-hs 馃憤 1鈥痬s 7.7鈥疢B
lean4cobol 馃憤 1鈥痬s 13.3鈥疢B
evmlean 馃憤 1.0鈥痵 267.7鈥疢B
mini 馃憤 34鈥痬s 73.9鈥疢B
overfull 馃憤 878鈥痬s 46.0鈥疢B
metalean-slow 馃憤 29鈥痬s 69.7鈥疢B
tenet-jvm 馃憤 85鈥痬s 64.1鈥疢B
nanoclo-fortran 馃憤 1鈥痬s 4.1鈥疢B
kiota 馃憤 1鈥痬s 7.0鈥疢B
metalean-fast 馃憤 29鈥痬s 71.4鈥疢B
canonical-min 馃憤 387鈥痬s 1.1鈥疓B
rpylean 馃憤 0鈥痬s 3.9鈥疢B
vow-lean-kernel 馃憤 45鈥痬s 8.5鈥疢B
parse-only 馃憤 27鈥痬s 65.9鈥疢B