| n ≤ # vals0, ∀ n, bv. n < # vals0 → (booleanvalues(vals0)[n, bv]) = booleanvalues(vals0[n, boolval(bv)]) ⊦ n = 0, (val .boolval ' + booleanvalues(vals0))[n, bv] = val .boolval ' + booleanvalues(vals0[n - 1, boolval(bv)]) |
n = m + 1, n ≤ # vals0, ∀ n, bv. n < # vals0 → (booleanvalues(vals0)[n, bv]) = booleanvalues(vals0[n, boolval(bv)]) ⊦ n = 0, (val .boolval ' + booleanvalues(vals0))[n, bv] = val .boolval ' + booleanvalues(vals0[m, boolval(bv)])
[[CONCRETESIMPRULES : ([CSIMPELIM : n ≠ 0 ⊦ m = n - 1 ↔ n = m + 1])], [EXTRATERMS : (n, m)]]