| 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 |
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, x ≠ tolist(mk(ar, i, (i0 + 1) % i, n→i(# x)), # x) ∨ a ≠ ar[i→n(i0)] ⊦ # ar = 0
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i→n(n→i(n)) = n], [CSIMPSEQ : ⊦ n→i(m) = n→i(n) ↔ m = n], [CSIMPSEQ : ⊦ mk(ar, i, i0, i1) .len = i1])]]