YES We show the termination of the TRS R: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) f(true(),x,y,z) -> del(.(y,z)) f(false(),x,y,z) -> .(x,del(.(y,z))) =(nil(),nil()) -> true() =(.(x,y),nil()) -> false() =(nil(),.(y,z)) -> false() =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: del#(.(x,.(y,z))) -> f#(=(x,y),x,y,z) p2: del#(.(x,.(y,z))) -> =#(x,y) p3: f#(true(),x,y,z) -> del#(.(y,z)) p4: f#(false(),x,y,z) -> del#(.(y,z)) p5: =#(.(x,y),.(u(),v())) -> =#(x,u()) p6: =#(.(x,y),.(u(),v())) -> =#(y,v()) and R consists of: r1: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) r2: f(true(),x,y,z) -> del(.(y,z)) r3: f(false(),x,y,z) -> .(x,del(.(y,z))) r4: =(nil(),nil()) -> true() r5: =(.(x,y),nil()) -> false() r6: =(nil(),.(y,z)) -> false() r7: =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) The estimated dependency graph contains the following SCCs: {p1, p3, p4} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: del#(.(x,.(y,z))) -> f#(=(x,y),x,y,z) p2: f#(false(),x,y,z) -> del#(.(y,z)) p3: f#(true(),x,y,z) -> del#(.(y,z)) and R consists of: r1: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) r2: f(true(),x,y,z) -> del(.(y,z)) r3: f(false(),x,y,z) -> .(x,del(.(y,z))) r4: =(nil(),nil()) -> true() r5: =(.(x,y),nil()) -> false() r6: =(nil(),.(y,z)) -> false() r7: =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) The set of usable rules consists of r4, r5, r6, r7 Take the reduction pair: lexicographic combination of reduction pairs: 1. weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: del#_A(x1) = x1 + (1,3) ._A(x1,x2) = x1 + x2 + (4,3) f#_A(x1,x2,x3,x4) = x3 + x4 + (6,7) =_A(x1,x2) = (2,10) false_A() = (1,2) true_A() = (1,2) nil_A() = (2,1) u_A() = (3,0) v_A() = (1,0) and_A(x1,x2) = (0,0) precedence: false > f# > del# > . = = = u = v > true = nil > and partial status: pi(del#) = [] pi(.) = [1, 2] pi(f#) = [4] pi(=) = [] pi(false) = [] pi(true) = [] pi(nil) = [] pi(u) = [] pi(v) = [] pi(and) = [] 2. weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: del#_A(x1) = (0,0) ._A(x1,x2) = x2 f#_A(x1,x2,x3,x4) = ((1,0),(1,1)) x4 + (1,1) =_A(x1,x2) = (3,0) false_A() = (0,0) true_A() = (1,1) nil_A() = (0,0) u_A() = (1,0) v_A() = (1,0) and_A(x1,x2) = (2,0) precedence: u > = = and > v > del# = . = f# = false = true = nil partial status: pi(del#) = [] pi(.) = [] pi(f#) = [4] pi(=) = [] pi(false) = [] pi(true) = [] pi(nil) = [] pi(u) = [] pi(v) = [] pi(and) = [] The next rules are strictly ordered: p1, p2, p3 We remove them from the problem. Then no dependency pair remains.