| ¬ m0 + 1 ≠ n, m0 + 1 < # ar, n ≤ m0 + 1, n < # ar, n < # arr2list(ar, m0), ∀ n, ar, bv. n < # ar ∧ n ≤ m0 ∧ m0 < # ar → (arr2list(ar, m0)[n, bv]) = arr2list(ar[n, bv], m0) ⊦ (arr2list(ar, m0)[n, bv]) + ar[m0 + 1] ' = arr2list(ar[n, bv], m0) + (ar[n, bv][m0 + 1]) ', arr2list(ar, m0) = [] |
m0 + 1 < # ar, m0 + 1 < # arr2list(ar, m0), ∀ n, ar, bv. n < # ar ∧ n ≤ m0 ∧ m0 < # ar → (arr2list(ar, m0)[n, bv]) = arr2list(ar[n, bv], m0) ⊦ arr2list(ar, m0) = [], (arr2list(ar, m0)[m0 + 1, bv]) + ar[m0 + 1] ' = arr2list(ar[m0 + 1, bv], m0) + bv '
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + n ≤ m + n0 ↔ n ≤ n0], [CSIMPSEQ : ⊦ m < # ar → (ar[m, bv][m] ↔ bv)], [CSIMPSEQ : ⊦ m + n = n + m])]]