| #(a0 + x0) < #((a0 + x0) -l a), ∀ a. # x0 < #(x0 -l a) → x0 -l a = [] ⊦ (a0 + x0) -l a = [] |
1 + # x0 < #((a0 ' + x0) -l a), ∀ a. # x0 < #(x0 -l a) → x0 -l a = [] ⊦ (a0 ' + x0) -l a = []
Used simplifier rules: ⊦ # x = 0 ↔ x = []; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ # a ' = 0 +1; (s)% ⊦ #(x + y) = # x + # y; (s)% ⊦ a + x = a ' + x; (s)