| 0 < i, ¬ inv(mk(mkarray(i→n(i)), i, 0, 0)) ∨ ¬ abs(mk(mkarray(i→n(i)), i, 0, 0), []) ∨ mk(mkarray(i→n(i)), i, 0, 0) .size ≠ i ⊦ |
⊦ inv(buf) ↔ buf .size = n→i(# buf .data) ∧ buf .size ≠ 0 ∧ 0 ≤ buf .first ∧ buf .first < buf .size ∧ 0 ≤ buf .len ∧ buf .len ≤ buf .size
0 < i, ¬ ( mk(mkarray(i→n(i)), i, 0, 0) .size = n→i(# mk(mkarray(i→n(i)), i, 0, 0) .data) ∧ mk(mkarray(i→n(i)), i, 0, 0) .size ≠ 0 ∧ 0 ≤ mk(mkarray(i→n(i)), i, 0, 0) .first ∧ mk(mkarray(i→n(i)), i, 0, 0) .first < mk(mkarray(i→n(i)), i, 0, 0) .size ∧ 0 ≤ mk(mkarray(i→n(i)), i, 0, 0) .len ∧ mk(mkarray(i→n(i)), i, 0, 0) .len ≤ mk(mkarray(i→n(i)), i, 0, 0) .size) ∨ ¬ abs(mk(mkarray(i→n(i)), i, 0, 0), []) ∨ mk(mkarray(i→n(i)), i, 0, 0) .size ≠ i ⊦
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (mk(mkarray(i→n(i)), i, 0, 0))]]