YES We show the termination of the TRS R: f(|0|(),y) -> |0|() f(s(x),y) -> f(f(x,y),y) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: f#(s(x),y) -> f#(f(x,y),y) p2: f#(s(x),y) -> f#(x,y) and R consists of: r1: f(|0|(),y) -> |0|() r2: f(s(x),y) -> f(f(x,y),y) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: f#(s(x),y) -> f#(f(x,y),y) p2: f#(s(x),y) -> f#(x,y) and R consists of: r1: f(|0|(),y) -> |0|() r2: f(s(x),y) -> f(f(x,y),y) The set of usable rules consists of r1, r2 Take the reduction pair: generalized weighted path order (>=MG, >G) base order 1: trivial reduction triple (T x T, T x T, Φ) base order 2: model-based reduction triple (=A, >=A!, >A!): finite algebra: carrier: {0,1} interpretations: f#_A(0,0) = 0 f#_A(0,1) = 1 f#_A(1,0) = 0 f#_A(1,1) = 1 s_A(0) = 1 s_A(1) = 1 f_A(0,0) = 0 f_A(0,1) = 0 f_A(1,0) = 0 f_A(1,1) = 0 |0|_A = 0 f#!_A(0,0) = 0 f#!_A(0,1) = 0 f#!_A(1,0) = 1 f#!_A(1,1) = 1 s!_A(0) = 0 s!_A(1) = 1 f!_A(0,0) = 0 f!_A(0,1) = 0 f!_A(1,0) = 0 f!_A(1,1) = 1 |0|!_A = 0 partial status: pi(f#) = [2] pi(s) = [1] pi(f) = [] pi(|0|) = [] The following rules are removed: p1 -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: f#(s(x),y) -> f#(x,y) and R consists of: r1: f(|0|(),y) -> |0|() r2: f(s(x),y) -> f(f(x,y),y) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: f#(s(x),y) -> f#(x,y) and R consists of: r1: f(|0|(),y) -> |0|() r2: f(s(x),y) -> f(f(x,y),y) The set of usable rules consists of r1, r2 Take the reduction pair: generalized weighted path order (>=MG, >G) base order 1: trivial reduction triple (T x T, T x T, Φ) base order 2: model-based reduction triple (=A, >=A!, >A!): finite algebra: carrier: {0,1} interpretations: f#_A(0,0) = 0 f#_A(0,1) = 0 f#_A(1,0) = 0 f#_A(1,1) = 0 s_A(0) = 0 s_A(1) = 1 f_A(0,0) = 0 f_A(0,1) = 0 f_A(1,0) = 0 f_A(1,1) = 1 |0|_A = 0 f#!_A(0,0) = 0 f#!_A(0,1) = 0 f#!_A(1,0) = 0 f#!_A(1,1) = 0 s!_A(0) = 0 s!_A(1) = 0 f!_A(0,0) = 0 f!_A(0,1) = 0 f!_A(1,0) = 0 f!_A(1,1) = 0 |0|!_A = 0 partial status: pi(f#) = [1] pi(s) = [1] pi(f) = [] pi(|0|) = [] The following rules are removed: p1 Then no dependency pair remains.