YES We show the termination of the TRS R: if(true(),x,y) -> x if(false(),x,y) -> y if(x,y,y) -> y if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) if(x,if(x,y,z),z) -> if(x,y,z) if(x,y,if(x,y,z)) -> if(x,y,z) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: if#(if(x,y,z),u,v) -> if#(x,if(y,u,v),if(z,u,v)) p2: if#(if(x,y,z),u,v) -> if#(y,u,v) p3: if#(if(x,y,z),u,v) -> if#(z,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) 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: if#(if(x,y,z),u,v) -> if#(x,if(y,u,v),if(z,u,v)) p2: if#(if(x,y,z),u,v) -> if#(z,u,v) p3: if#(if(x,y,z),u,v) -> if#(y,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) The set of usable rules consists of r1, r2, r3, r4, r5, r6 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: if#_A(x1,x2,x3) = max{1, x1 - 1} if_A(x1,x2,x3) = max{x1 + 3, x2, x3} true_A = 0 false_A = 0 precedence: true > if = false > if# partial status: pi(if#) = [] pi(if) = [1, 2, 3] pi(true) = [] pi(false) = [] 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: if#(if(x,y,z),u,v) -> if#(z,u,v) p2: if#(if(x,y,z),u,v) -> if#(y,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: if#(if(x,y,z),u,v) -> if#(z,u,v) p2: if#(if(x,y,z),u,v) -> if#(y,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: if#_A(x1,x2,x3) = max{0, x1 - 2} if_A(x1,x2,x3) = max{x1 + 3, x2 + 1, x3} precedence: if# = if partial status: pi(if#) = [] pi(if) = [3] 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: if#(if(x,y,z),u,v) -> if#(z,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: if#(if(x,y,z),u,v) -> if#(z,u,v) and R consists of: r1: if(true(),x,y) -> x r2: if(false(),x,y) -> y r3: if(x,y,y) -> y r4: if(if(x,y,z),u,v) -> if(x,if(y,u,v),if(z,u,v)) r5: if(x,if(x,y,z),z) -> if(x,y,z) r6: if(x,y,if(x,y,z)) -> if(x,y,z) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: if#_A(x1,x2,x3) = max{0, x1 - 2} if_A(x1,x2,x3) = max{x1 + 3, x2 + 3, x3 + 1} precedence: if# = if partial status: pi(if#) = [] pi(if) = [3] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.