| ∀ x, n. ordered(ixs0, x) ∧ n < # ixs0 → ixs0 = [] ∨ ordered(ixs0[n], x), ordered(ix + ixs0, x), n < #(ix + ixs0) ⊦ ix + ixs0 = [], ordered((ix + ixs0)[n], x) |
[Concretesimprules((Csimpnamedseq(orderedl-rec,,, ⊦ ordered(ix ' + ixs, x) ↔ ordered(ix, x) ∧ ordered(ixs, x)) Csimpnamedseq(nat,,lels, ⊦ ¬ m < n ↔ n ≤ m) Csimpnamedseq(nat-basic2,,c, ⊦ m + n = n + m) Csimpnamedseq(nat-basic2,,a, ⊦ (m + n0) + n1 = m + n0 + n1) Csimpnamedseq(nat-basic2,,s, ⊦ m < n + 1 ↔ ¬ n < m) Csimpnamedseq(list,indexseq-stackseq,len-02, ⊦ # ix ' = 0 +1) Csimpnamedseq(list,indexseq-stackseq,len, ⊦ #(ixs + ixs0) = # ixs + # ixs0) Csimpnamedseq(list,indexseq-stackseq,a, ⊦ (ixs + ixs0) + ixs1 = ixs + ixs0 + ixs1) Csimpnamedseq(list,indexseq-stackseq,e-01, ⊦ ix ' + ixs ≠ []) Csimpnamedseq(list,indexseq-stackseq,c, ⊦ ix + ixs = ix ' + ixs)))]