YES We show the termination of the TRS R: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) din(der(times(X,Y))) -> u31(din(der(X)),X,Y) u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) din(der(der(X))) -> u41(din(der(X)),X) u41(dout(DX),X) -> u42(din(der(DX)),X,DX) u42(dout(DDX),X,DX) -> dout(DDX) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(plus(X,Y))) -> u21#(din(der(X)),X,Y) p2: din#(der(plus(X,Y))) -> din#(der(X)) p3: u21#(dout(DX),X,Y) -> u22#(din(der(Y)),X,Y,DX) p4: u21#(dout(DX),X,Y) -> din#(der(Y)) p5: din#(der(times(X,Y))) -> u31#(din(der(X)),X,Y) p6: din#(der(times(X,Y))) -> din#(der(X)) p7: u31#(dout(DX),X,Y) -> u32#(din(der(Y)),X,Y,DX) p8: u31#(dout(DX),X,Y) -> din#(der(Y)) p9: din#(der(der(X))) -> u41#(din(der(X)),X) p10: din#(der(der(X))) -> din#(der(X)) p11: u41#(dout(DX),X) -> u42#(din(der(DX)),X,DX) p12: u41#(dout(DX),X) -> din#(der(DX)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The estimated dependency graph contains the following SCCs: {p1, p2, p4, p5, p6, p8, p9, p10, p12} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(plus(X,Y))) -> u21#(din(der(X)),X,Y) p2: u21#(dout(DX),X,Y) -> din#(der(Y)) p3: din#(der(der(X))) -> din#(der(X)) p4: din#(der(der(X))) -> u41#(din(der(X)),X) p5: u41#(dout(DX),X) -> din#(der(DX)) p6: din#(der(times(X,Y))) -> din#(der(X)) p7: din#(der(times(X,Y))) -> u31#(din(der(X)),X,Y) p8: u31#(dout(DX),X,Y) -> din#(der(Y)) p9: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = ((0,0),(1,0)) x1 + (23,68) der_A(x1) = ((1,0),(1,1)) x1 + (2,29) plus_A(x1,x2) = x1 + (19,10) u21#_A(x1,x2,x3) = ((1,0),(1,0)) x1 + (12,47) din_A(x1) = ((0,0),(1,0)) x1 + (10,24) dout_A(x1) = (24,30) u41#_A(x1,x2) = x1 + (12,2) times_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (7,33) u31#_A(x1,x2,x3) = x1 + ((0,0),(1,0)) x3 + (12,42) u22_A(x1,x2,x3,x4) = ((1,0),(1,0)) x1 + (1,7) u32_A(x1,x2,x3,x4) = ((1,0),(0,0)) x1 + (3,31) u42_A(x1,x2,x3) = x1 + (1,5) u21_A(x1,x2,x3) = ((1,0),(1,0)) x1 + (0,1) u31_A(x1,x2,x3) = ((1,0),(0,0)) x1 + (0,32) u41_A(x1,x2) = ((1,0),(0,0)) x1 + (0,27) precedence: dout = u22 > din# = der = u21# = u41# = u31# > plus > times > din = u32 = u31 > u41 > u42 > u21 partial status: pi(din#) = [] pi(der) = [] pi(plus) = [1] pi(u21#) = [] pi(din) = [] pi(dout) = [] pi(u41#) = [] pi(times) = [] pi(u31#) = [] pi(u22) = [] pi(u32) = [] pi(u42) = [1] pi(u21) = [] pi(u31) = [] pi(u41) = [] 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: din#(der(plus(X,Y))) -> u21#(din(der(X)),X,Y) p2: din#(der(der(X))) -> din#(der(X)) p3: din#(der(der(X))) -> u41#(din(der(X)),X) p4: u41#(dout(DX),X) -> din#(der(DX)) p5: din#(der(times(X,Y))) -> din#(der(X)) p6: din#(der(times(X,Y))) -> u31#(din(der(X)),X,Y) p7: u31#(dout(DX),X,Y) -> din#(der(Y)) p8: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The estimated dependency graph contains the following SCCs: {p2, p3, p4, p5, p6, p7, p8} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(der(X))) -> din#(der(X)) p2: din#(der(plus(X,Y))) -> din#(der(X)) p3: din#(der(times(X,Y))) -> u31#(din(der(X)),X,Y) p4: u31#(dout(DX),X,Y) -> din#(der(Y)) p5: din#(der(times(X,Y))) -> din#(der(X)) p6: din#(der(der(X))) -> u41#(din(der(X)),X) p7: u41#(dout(DX),X) -> din#(der(DX)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = x1 + (3,2) der_A(x1) = x1 + (4,22) plus_A(x1,x2) = ((1,0),(1,1)) x1 + (0,12) times_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (0,46) u31#_A(x1,x2,x3) = x1 + x3 + (1,18) din_A(x1) = ((1,0),(1,1)) x1 + (1,1) dout_A(x1) = x1 + (13,7) u41#_A(x1,x2) = x1 + (1,18) u22_A(x1,x2,x3,x4) = ((1,0),(1,1)) x4 + (13,20) u32_A(x1,x2,x3,x4) = ((1,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (0,53) u42_A(x1,x2,x3) = ((1,0),(1,0)) x1 + ((0,0),(1,0)) x2 + (9,1) u21_A(x1,x2,x3) = ((1,0),(1,1)) x1 + (0,1) u31_A(x1,x2,x3) = ((1,0),(1,1)) x2 + ((1,0),(1,0)) x3 + (5,59) u41_A(x1,x2) = x1 + (2,14) precedence: times > din = u22 = u21 > dout = u32 = u31 > der > din# = u31# = u41# > plus = u41 > u42 partial status: pi(din#) = [1] pi(der) = [] pi(plus) = [1] pi(times) = [1] pi(u31#) = [] pi(din) = [1] pi(dout) = [] pi(u41#) = [1] pi(u22) = [] pi(u32) = [] pi(u42) = [] pi(u21) = [] pi(u31) = [] pi(u41) = [] The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(der(X))) -> din#(der(X)) p2: din#(der(plus(X,Y))) -> din#(der(X)) p3: din#(der(times(X,Y))) -> u31#(din(der(X)),X,Y) p4: din#(der(times(X,Y))) -> din#(der(X)) p5: din#(der(der(X))) -> u41#(din(der(X)),X) p6: u41#(dout(DX),X) -> din#(der(DX)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The estimated dependency graph contains the following SCCs: {p1, p2, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(der(X))) -> din#(der(X)) p2: din#(der(der(X))) -> u41#(din(der(X)),X) p3: u41#(dout(DX),X) -> din#(der(DX)) p4: din#(der(times(X,Y))) -> din#(der(X)) p5: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = ((0,0),(1,0)) x1 + (11,3) der_A(x1) = x1 + (13,0) u41#_A(x1,x2) = x1 + (2,14) din_A(x1) = ((0,0),(1,0)) x1 + (8,1) dout_A(x1) = ((0,0),(1,0)) x1 + (12,17) times_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (7,20) plus_A(x1,x2) = ((1,0),(0,0)) x1 + (7,20) u22_A(x1,x2,x3,x4) = ((1,0),(0,0)) x1 + (1,18) u32_A(x1,x2,x3,x4) = x1 + (1,4) u42_A(x1,x2,x3) = x1 + (3,1) u21_A(x1,x2,x3) = ((1,0),(0,0)) x1 + (0,19) u31_A(x1,x2,x3) = ((1,0),(0,0)) x1 + ((0,0),(1,0)) x3 + (0,19) u41_A(x1,x2) = ((1,0),(1,1)) x1 + (0,1) precedence: din = dout = u22 = u32 = u42 = u21 = u31 = u41 > der = times > din# = u41# = plus partial status: pi(din#) = [] pi(der) = [1] pi(u41#) = [] pi(din) = [] pi(dout) = [] pi(times) = [2] pi(plus) = [] pi(u22) = [] pi(u32) = [] pi(u42) = [] pi(u21) = [] pi(u31) = [] pi(u41) = [] 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: din#(der(der(X))) -> u41#(din(der(X)),X) p2: u41#(dout(DX),X) -> din#(der(DX)) p3: din#(der(times(X,Y))) -> din#(der(X)) p4: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) 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: din#(der(der(X))) -> u41#(din(der(X)),X) p2: u41#(dout(DX),X) -> din#(der(DX)) p3: din#(der(plus(X,Y))) -> din#(der(X)) p4: din#(der(times(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = (11,3) der_A(x1) = x1 u41#_A(x1,x2) = ((1,0),(1,0)) x1 + (2,1) din_A(x1) = ((0,0),(1,0)) x1 + (1,0) dout_A(x1) = ((1,0),(1,0)) x1 + (10,4) plus_A(x1,x2) = ((0,0),(1,0)) x2 + (7,3) times_A(x1,x2) = (9,5) u22_A(x1,x2,x3,x4) = ((1,0),(1,0)) x1 + ((1,0),(0,0)) x4 + (8,4) u32_A(x1,x2,x3,x4) = ((1,0),(1,0)) x1 + ((0,0),(1,0)) x2 + ((0,0),(1,0)) x3 + ((0,0),(1,0)) x4 + (8,4) u42_A(x1,x2,x3) = ((1,0),(1,0)) x1 + (1,0) u21_A(x1,x2,x3) = ((1,0),(0,0)) x1 + (0,6) u31_A(x1,x2,x3) = ((1,0),(0,0)) x1 + (0,8) u41_A(x1,x2) = x1 precedence: din = u22 = u32 = u21 = u31 > u41# > din# > u41 > der = plus = times > dout = u42 partial status: pi(din#) = [] pi(der) = [] pi(u41#) = [] pi(din) = [] pi(dout) = [] pi(plus) = [] pi(times) = [] pi(u22) = [] pi(u32) = [] pi(u42) = [] pi(u21) = [] pi(u31) = [] pi(u41) = [] 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: u41#(dout(DX),X) -> din#(der(DX)) p2: din#(der(plus(X,Y))) -> din#(der(X)) p3: din#(der(times(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The estimated dependency graph contains the following SCCs: {p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(plus(X,Y))) -> din#(der(X)) p2: din#(der(times(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = ((1,0),(0,0)) x1 + (0,1) der_A(x1) = ((1,0),(0,0)) x1 + (0,2) plus_A(x1,x2) = ((1,0),(1,1)) x1 + x2 times_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (1,0) precedence: din# = der = plus = times partial status: pi(din#) = [] pi(der) = [] pi(plus) = [2] pi(times) = [2] 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: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: din#(der(plus(X,Y))) -> din#(der(X)) and R consists of: r1: din(der(plus(X,Y))) -> u21(din(der(X)),X,Y) r2: u21(dout(DX),X,Y) -> u22(din(der(Y)),X,Y,DX) r3: u22(dout(DY),X,Y,DX) -> dout(plus(DX,DY)) r4: din(der(times(X,Y))) -> u31(din(der(X)),X,Y) r5: u31(dout(DX),X,Y) -> u32(din(der(Y)),X,Y,DX) r6: u32(dout(DY),X,Y,DX) -> dout(plus(times(X,DY),times(Y,DX))) r7: din(der(der(X))) -> u41(din(der(X)),X) r8: u41(dout(DX),X) -> u42(din(der(DX)),X,DX) r9: u42(dout(DDX),X,DX) -> dout(DDX) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: din#_A(x1) = ((0,0),(1,0)) x1 + (4,1) der_A(x1) = ((1,0),(0,0)) x1 + (1,5) plus_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (2,6) precedence: din# = der = plus partial status: pi(din#) = [] pi(der) = [] pi(plus) = [2] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.