| nused0 < # zbrar ⊦ nused0 = 0, zbrar[0].key < key, (key0 = key ∨ key0 ∈ ri ∧ ¬ zbrar[0].key < key0 → key0 ∈ (ri |≤ zbrar[0].key)[key, adr]) ∧ (key0 ∈ (ri |≤ zbrar[0].key)[key, adr] → ri[key, adr][key0] = (ri |≤ zbrar[0].key)[key, adr][key0]) |
⊦ key ≠ key0 → ri[key0, adr][key] = ri[key]
Used simplifier rules: ⊦ key ≠ key0 → (key ∈ ri[key0, adr] ↔ key ∈ ri); (s)% ⊦ key0 ∈ ri |≤ key1 ↔ key0 ∈ ri ∧ ¬ key1 < key0; (s)% ⊦ key ≠ key0 → ri[key0, adr][key] = ri[key]; (s)% ⊦ ¬ key1 < key0 ∧ key0 ∈ ri → (ri |≤ key1)[key0] = ri[key0]; (s)% ⊦ key ∈ ri[key, adr]; (s)% ⊦ ri[key, adr][key] = adr; (s) Used terms: key0, adr, key, ri |≤ zbrar[0].key