| ordered≤(a0 ' + y) ↔ (∀ m, n. m ≤ n ∧ n < 1 + # y → ¬ (a0 ' + y)[n] < (a0 ' + y)[m]), ordered≤(a0 ' + y) ⊦ a0 < a, ∀ m, n. m ≤ n ∧ ¬ 1 + # y < n → ¬ (a ' + a0 ' + y)[n] < (a ' + a0 ' + y)[m] |
(a ' + a0 ' + y)[n] < (a ' + a0 ' + y)[m], ordered≤(a0 ' + y), m ≤ 1 + # y, n ≤ 1 + # y, m ≤ n, ∀ m, n. m ≤ n ∧ n < 1 + # y → ¬ (a0 ' + y)[n] < (a0 ' + y)[m] ⊦ a0 < a
Used simplifier rules: cons-02: ⊦ ordered≤(a ' + x) → ordered≤(x);%app-01: ⊦ ordered≤(x + y) → ordered≤(y);%let: ⊦ n ≤ n0 ∧ n0 ≤ n1 → n ≤ n1; (forward) from specification nat%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ m < n ↔ ¬ n ≤ m; (ss)