| ∀ n, m. dropn(n, lax0.to-adr(m)) = dropn(n, lax0).to-adr(m) ⊦ (@(m, m0, m1) ' + lax0.to-adr(m) = [] ⊃ [];dropn(n - 1, (@(m, m0, m1) ' + lax0.to-adr(m)).tail)) = dropn(n, @(m0, m1) ' + lax0).to-adr(m), n = 0 |
∀ n, m. dropn(n, lax0.to-adr(m)) = dropn(n, lax0).to-adr(m) ⊦ dropn(n - 1, lax0.to-adr(m)) = dropn(n, @(m0, m1) ' + lax0).to-adr(m), n = 0
Used simplifier rules: ⊦ (adr ' + ax).tail = ax; (s)%a: ⊦ (ax + ax0) + ax1 = ax + ax0 + ax1; from specification list[address-list-set]% ⊦ adr ' + ax ≠ []; (s)