| # ar0 = # ar1, ar0[n] = elemindex(a0, m2), ar1[n] = elemindex(a, m1), n < # ar1, n < # ar1 → ar1[m, ar1[m].idx:= m0][n].elem = ar0[n].elem ⊦ a = a0 |
# ar0 = # ar1, ar1[n] = elemindex(a, m1), ar0[n] = elemindex(ar1[m, ar1[m].idx:= m0][n].elem, m2), n < # ar1 ⊦ a = ar1[m, ar1[m].idx:= m0][n].elem
Used simplifier rules: ⊦ elemindex(a, m).elem = a; (s)