| r -- sk ∈ st, is_newref_list(refs, st), 0 ≤ i, r ∈ st ⊦ st[r -- sk] = (addarrays(refs, ty, ints, i, st)[r -- sk]), ¬ r ∈ refs ∧ # refs = i→n(countrefs(ints)) ∧ ints ≠ [] ∧ posints(ints) |
⊦ ints = [] ∨ n→i(# refs) ≠ countrefs(ints) ∨ ¬ posints(ints) → addarrays(refs, ty, ints, i, st) = st
¬ (ints = [] ∨ n→i(# refs) ≠ countrefs(ints) ∨ ¬ posints(ints)), r -- sk ∈ st, is_newref_list(refs, st), 0 ≤ i, r ∈ st ⊦ st[r -- sk] = (addarrays(refs, ty, ints, i, st)[r -- sk]), ¬ r ∈ refs ∧ # refs = i→n(countrefs(ints)) ∧ ints ≠ [] ∧ posints(ints)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, i, ints, ty, refs)]]