| ¬ i→n(countrefs(i1 ' + ints1)) ≤ # (r1 ' + refs2), ¬ # lastn(i→n(countrefs(i1 ' + ints1)), r1 ' + refs2) ≠ # (r0 ' + refs1), # refs2 = i→n(countrefs(i1 ' + ints1)) * i→n(i2) + i→n(countrefs(i1 ' + ints1)), lastn(i→n(countrefs(i1 ' + ints1)), r1 ' + refs2) = r0 ' + refs1, # refs2 ≤ # refs1, 0 ≤ i2 ⊦ |
⊦ countrefs(ints) ≠ 0
lastn(i→n(countrefs(i1 ' + ints1)), r1 ' + refs2) = r0 ' + refs1, # refs2 = i→n(countrefs(i1 ' + ints1)) * i→n(i2) + i→n(countrefs(i1 ' + ints1)), 1 + # refs2 < i→n(countrefs(i1 ' + ints1)), 0 ≤ i2, # refs2 ≤ # refs1 ⊦
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i→n(i) = 0 ↔ i = 0], [CSIMPSEQ : ⊦ m + n = n + m], [CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + n = m + n0 ↔ n = n0], [CSIMPFORWARD : ⊦ m < n → n ≠ 0], [CSIMPSEQ : ⊦ ¬ m ≤ n ↔ n < m], [CSIMPSEQ : ⊦ (refs + refs0) + refs1 = refs + refs0 + refs1], [CSIMPSEQ : ⊦ # r ' = 0 +1], [CSIMPSEQ : ⊦ # (refs + refs0) = # refs + # refs0])]]