| ar[m1].idx:= m0 = elemindex(a, m4), kar[ar[m1].idx] = key-index(key, m1), m0 + 1 < # kar, m0 < ar[m1].idx, ar[m1].idx < # kar, m0 < # kar, m1 < # ar ⊦ m4 = m0 |
Used simplifier rules: f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ elemindex(a, m).idx:= m0 = elemindex(a, m0); (s)% ⊦ elemindex(a, m) = elemindex(a0, m0) ↔ a = a0 ∧ m = m0; (ws)% ⊦ a = ei.elem ∧ m = ei.idx ↔ ei = elemindex(a, m); (elim) Used terms: ar[m1], a0, m