| m < # x ⊦ sublist(m, 1, x) = x[m] ' |
m < # x ⊦ restn(m, x).head = x[m], x = []
Used simplifier rules: sublist-def: ⊦ sublist(m, n, x) = firstn(n, restn(m, x));%first-num: n ≠ 0 ⊦ firstn((* n), x) = x.head ' + firstn(n -1, x.tail);%firstN-zero: ⊦ firstn(0, x) = [];% ⊦ # x = 0 ↔ x = []; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ a ' = b ' ↔ a = b; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ x + [] = x; (s)