| ∀ ar. m0 < # ar → # arr2list(ar, m0) = m0 + 1, m0 +1 < # ar ⊦ # arr2list(ar, m0 +1) = m0 +1 + 1 |
⊦ n + 1 < # ar → arr2list(ar, n + 1) = arr2list(ar, n) + ar[n + 1] '
m0 + 1 < # ar, ∀ ar. m0 < # ar → # arr2list(ar, m0) = m0 + 1 ⊦ # arr2list(ar, m0) = 1 + m0
[[CONCRETESIMPRULES : ([CSIMPSEQ : n < n0 ⊦ m + ((* n)) = m0 + ((* n0)) ↔ m = m0 + (n0 - n)], [CSIMPSEQ : ⊦ (x + y) + z = x + y + z], [CSIMPSEQ : ⊦ # bv ' = 0 +1], [CSIMPSEQ : ⊦ # (x + y) = # x + # y], [CSIMPSEQ : ⊦ m + n = n + m], [CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m +1 = m + 1])]]