YES We show the termination of the TRS R: a__from(X) -> cons(mark(X),from(s(X))) a__length(nil()) -> |0|() a__length(cons(X,Y)) -> s(a__length1(Y)) a__length1(X) -> a__length(X) mark(from(X)) -> a__from(mark(X)) mark(length(X)) -> a__length(X) mark(length1(X)) -> a__length1(X) mark(cons(X1,X2)) -> cons(mark(X1),X2) mark(s(X)) -> s(mark(X)) mark(nil()) -> nil() mark(|0|()) -> |0|() a__from(X) -> from(X) a__length(X) -> length(X) a__length1(X) -> length1(X) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: a__length#(cons(X,Y)) -> a__length1#(Y) p3: a__length1#(X) -> a__length#(X) p4: mark#(from(X)) -> a__from#(mark(X)) p5: mark#(from(X)) -> mark#(X) p6: mark#(length(X)) -> a__length#(X) p7: mark#(length1(X)) -> a__length1#(X) p8: mark#(cons(X1,X2)) -> mark#(X1) p9: mark#(s(X)) -> mark#(X) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: {p1, p4, p5, p8, p9} {p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(s(X)) -> mark#(X) p3: mark#(cons(X1,X2)) -> mark#(X1) p4: mark#(from(X)) -> mark#(X) p5: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: a__from#_A(x1) = ((1,1),(1,1)) x1 + (4,9) mark#_A(x1) = ((0,1),(0,1)) x1 + (3,9) s_A(x1) = ((0,0),(0,1)) x1 + (1,0) cons_A(x1,x2) = ((0,0),(0,1)) x1 + (2,1) from_A(x1) = ((0,0),(0,1)) x1 + (1,8) mark_A(x1) = ((0,0),(0,1)) x1 + (4,2) a__from_A(x1) = ((0,0),(0,1)) x1 + (3,8) a__length_A(x1) = (2,2) nil_A() = (2,1) |0|_A() = (1,1) a__length1_A(x1) = (3,2) length_A(x1) = (1,1) length1_A(x1) = (1,1) precedence: |0| > cons = mark = a__from = a__length = nil = a__length1 > length > a__from# = mark# = s = from > length1 partial status: pi(a__from#) = [] pi(mark#) = [] pi(s) = [] pi(cons) = [] pi(from) = [] pi(mark) = [] pi(a__from) = [] pi(a__length) = [] pi(nil) = [] pi(|0|) = [] pi(a__length1) = [] pi(length) = [] pi(length1) = [] The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(s(X)) -> mark#(X) p3: mark#(from(X)) -> mark#(X) p4: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(from(X)) -> a__from#(mark(X)) p3: mark#(from(X)) -> mark#(X) p4: mark#(s(X)) -> mark#(X) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: a__from#_A(x1) = ((0,1),(0,0)) x1 + (2,4) mark#_A(x1) = ((0,1),(0,0)) x1 + (1,4) from_A(x1) = ((0,0),(0,1)) x1 + (0,3) mark_A(x1) = x1 + (0,1) s_A(x1) = ((0,0),(0,1)) x1 + (1,0) a__from_A(x1) = ((0,0),(0,1)) x1 + (0,3) cons_A(x1,x2) = ((1,0),(1,1)) x2 a__length_A(x1) = ((0,0),(1,1)) x1 + (2,2) nil_A() = (2,1) |0|_A() = (1,2) a__length1_A(x1) = ((1,1),(1,1)) x1 + (3,2) length_A(x1) = ((0,0),(1,1)) x1 + (2,1) length1_A(x1) = ((1,1),(1,1)) x1 + (3,2) precedence: nil > a__from# = mark# = from = mark = s = a__from = cons = a__length = |0| = a__length1 = length = length1 partial status: pi(a__from#) = [] pi(mark#) = [] pi(from) = [] pi(mark) = [1] pi(s) = [] pi(a__from) = [] pi(cons) = [] pi(a__length) = [] pi(nil) = [] pi(|0|) = [] pi(a__length1) = [1] pi(length) = [] pi(length1) = [1] The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(from(X)) -> a__from#(mark(X)) p3: mark#(s(X)) -> mark#(X) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(s(X)) -> mark#(X) p3: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: a__from#_A(x1) = ((1,0),(0,0)) x1 + (3,4) mark#_A(x1) = ((1,0),(0,0)) x1 + (2,4) s_A(x1) = ((1,0),(0,0)) x1 + (1,3) from_A(x1) = ((1,0),(1,0)) x1 + (6,0) mark_A(x1) = x1 + (4,14) a__from_A(x1) = ((1,0),(1,0)) x1 + (6,10) cons_A(x1,x2) = ((0,1),(1,0)) x2 + (0,3) a__length_A(x1) = ((1,1),(0,1)) x1 + (2,0) nil_A() = (0,0) |0|_A() = (1,0) a__length1_A(x1) = ((1,1),(0,1)) x1 + (3,0) length_A(x1) = ((1,1),(0,1)) x1 length1_A(x1) = ((1,1),(0,1)) x1 precedence: nil > from = mark = a__from = a__length1 > cons > s = a__length = |0| = length > length1 > a__from# = mark# partial status: pi(a__from#) = [] pi(mark#) = [] pi(s) = [] pi(from) = [] pi(mark) = [1] pi(a__from) = [] pi(cons) = [] pi(a__length) = [] pi(nil) = [] pi(|0|) = [] pi(a__length1) = [] pi(length) = [] pi(length1) = [] The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__from#(X) -> mark#(X) p2: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: a__from#_A(x1) = ((1,0),(0,0)) x1 + (3,3) mark#_A(x1) = ((1,0),(0,0)) x1 + (2,3) from_A(x1) = ((1,0),(0,0)) x1 + (4,2) mark_A(x1) = ((1,0),(0,0)) x1 + (2,2) a__from_A(x1) = ((1,0),(0,0)) x1 + (4,2) cons_A(x1,x2) = ((0,1),(0,0)) x2 + (1,1) s_A(x1) = (0,2) a__length_A(x1) = ((0,1),(0,0)) x1 + (2,2) nil_A() = (2,1) |0|_A() = (1,2) a__length1_A(x1) = ((0,1),(0,0)) x1 + (4,2) length_A(x1) = ((0,1),(0,0)) x1 + (1,1) length1_A(x1) = ((0,1),(0,0)) x1 + (3,1) precedence: mark# > a__from# = from = mark = a__from > a__length = a__length1 > nil > cons > s = |0| = length = length1 partial status: pi(a__from#) = [] pi(mark#) = [] pi(from) = [] pi(mark) = [] pi(a__from) = [] pi(cons) = [] pi(s) = [] pi(a__length) = [] pi(nil) = [] pi(|0|) = [] pi(a__length1) = [] pi(length) = [] pi(length1) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(from(X)) -> a__from#(mark(X)) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: (no SCCs) -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__length#(cons(X,Y)) -> a__length1#(Y) p2: a__length1#(X) -> a__length#(X) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: a__length#_A(x1) = ((0,1),(0,0)) x1 + (1,3) cons_A(x1,x2) = ((1,1),(1,1)) x1 + ((0,0),(0,1)) x2 + (1,2) a__length1#_A(x1) = ((0,1),(0,0)) x1 + (2,3) precedence: a__length# > cons = a__length1# partial status: pi(a__length#) = [] pi(cons) = [1] pi(a__length1#) = [] The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__length#(cons(X,Y)) -> a__length1#(Y) and R consists of: r1: a__from(X) -> cons(mark(X),from(s(X))) r2: a__length(nil()) -> |0|() r3: a__length(cons(X,Y)) -> s(a__length1(Y)) r4: a__length1(X) -> a__length(X) r5: mark(from(X)) -> a__from(mark(X)) r6: mark(length(X)) -> a__length(X) r7: mark(length1(X)) -> a__length1(X) r8: mark(cons(X1,X2)) -> cons(mark(X1),X2) r9: mark(s(X)) -> s(mark(X)) r10: mark(nil()) -> nil() r11: mark(|0|()) -> |0|() r12: a__from(X) -> from(X) r13: a__length(X) -> length(X) r14: a__length1(X) -> length1(X) The estimated dependency graph contains the following SCCs: (no SCCs)