| a ' + x = tolist(mk(ar, i, i0, n→i(# x) + 1), 1 + # x), i0 < n→i(# ar), inv(mk(ar, i, i0, n→i(# x) + 1)), inv(mk(ar, i, (i0 + 1) % i, n→i(# x))), 0 ≤ i0, ¬ abs(mk(ar, i, (i0 + 1) % i, n→i(# x)), x) ∨ a ≠ ar[i→n(i0)] ⊦ # ar = 0 |
⊦ abs(buf, x) ↔ buf .len = n→i(# x) ∧ x = tolist(buf, i→n(buf .len))
a ' + x = tolist(mk(ar, i, i0, n→i(# x) + 1), 1 + # x), i0 < n→i(# ar), inv(mk(ar, i, i0, n→i(# x) + 1)), inv(mk(ar, i, (i0 + 1) % i, n→i(# x))), 0 ≤ i0, ¬ (mk(ar, i, (i0 + 1) % i, n→i(# x)) .len = n→i(# x) ∧ x = tolist(mk(ar, i, (i0 + 1) % i, n→i(# x)), i→n(mk(ar, i, (i0 + 1) % i, n→i(# x)) .len))) ∨ a ≠ ar[i→n(i0)] ⊦ # ar = 0
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (x, mk(ar, i, (i0 + 1) % i, n→i(# x)))]]