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