| a0 ' + ((a2 ' + y) -1l a) ≠ [] ∧ (a0 ' + ((a2 ' + y) -1l a)).rest ≠ [], ordered≤(a2 ' + y), ∀ a1. ordered≤((a2 ' + y) -1l a1) ⊦ a = a0, ¬ (a0 ' + ((a2 ' + y) -1l a)).rest.first < (a0 ' + ((a2 ' + y) -1l a)).first ∧ ordered≤((a0 ' + ((a2 ' + y) -1l a)).rest), a2 < a0 |
ordered≤(a2 ' + y), ∀ a1. ordered≤((a2 ' + y) -1l a1) ⊦ a = a0, (a2 ' + y) -1l a = [], a2 < a0, ¬ ((a2 ' + y) -1l a).first < a0 ∧ ordered≤((a2 ' + y) -1l a)
Used simplifier rules: c-08: ⊦ (a ' + x).first = a; from specification list%e-01: ⊦ a ' + x ≠ []; from specification list%a: ⊦ (x + y) + z = x + y + z; from specification list%c-07: ⊦ (a ' + x).rest = x; from specification list