YES We show the termination of the TRS R: xor(x,F()) -> x xor(x,neg(x)) -> F() and(x,T()) -> x and(x,F()) -> F() and(x,x) -> x and(xor(x,y),z) -> xor(and(x,z),and(y,z)) xor(x,x) -> F() impl(x,y) -> xor(and(x,y),xor(x,T())) or(x,y) -> xor(and(x,y),xor(x,y)) equiv(x,y) -> xor(x,xor(y,T())) neg(x) -> xor(x,T()) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: and#(xor(x,y),z) -> xor#(and(x,z),and(y,z)) p2: and#(xor(x,y),z) -> and#(x,z) p3: and#(xor(x,y),z) -> and#(y,z) p4: impl#(x,y) -> xor#(and(x,y),xor(x,T())) p5: impl#(x,y) -> and#(x,y) p6: impl#(x,y) -> xor#(x,T()) p7: or#(x,y) -> xor#(and(x,y),xor(x,y)) p8: or#(x,y) -> and#(x,y) p9: or#(x,y) -> xor#(x,y) p10: equiv#(x,y) -> xor#(x,xor(y,T())) p11: equiv#(x,y) -> xor#(y,T()) p12: neg#(x) -> xor#(x,T()) and R consists of: r1: xor(x,F()) -> x r2: xor(x,neg(x)) -> F() r3: and(x,T()) -> x r4: and(x,F()) -> F() r5: and(x,x) -> x r6: and(xor(x,y),z) -> xor(and(x,z),and(y,z)) r7: xor(x,x) -> F() r8: impl(x,y) -> xor(and(x,y),xor(x,T())) r9: or(x,y) -> xor(and(x,y),xor(x,y)) r10: equiv(x,y) -> xor(x,xor(y,T())) r11: neg(x) -> xor(x,T()) The estimated dependency graph contains the following SCCs: {p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: and#(xor(x,y),z) -> and#(x,z) p2: and#(xor(x,y),z) -> and#(y,z) and R consists of: r1: xor(x,F()) -> x r2: xor(x,neg(x)) -> F() r3: and(x,T()) -> x r4: and(x,F()) -> F() r5: and(x,x) -> x r6: and(xor(x,y),z) -> xor(and(x,z),and(y,z)) r7: xor(x,x) -> F() r8: impl(x,y) -> xor(and(x,y),xor(x,T())) r9: or(x,y) -> xor(and(x,y),xor(x,y)) r10: equiv(x,y) -> xor(x,xor(y,T())) r11: neg(x) -> xor(x,T()) The set of usable rules consists of r1, r2, r4 Take the reduction pair: generalized weighted path order (>=MG, >MG) base order 1: max/plus interpretation on natural numbers: and#_A(x1,x2) = max{1, x1 - 1} xor_A(x1,x2) = max{9, x1 + 8, x2 + 3} F_A = 1 neg_A(x1) = max{2, x1 - 4} and_A(x1,x2) = max{10, x1 - 10, x2 - 10} base order 2: precedence: xor > and# = neg > and > F partial status: pi(and#) = [] pi(xor) = [2] pi(F) = [] pi(neg) = [] pi(and) = [] The following rules are removed: p2 -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: and#(xor(x,y),z) -> and#(x,z) and R consists of: r1: xor(x,F()) -> x r2: xor(x,neg(x)) -> F() r3: and(x,T()) -> x r4: and(x,F()) -> F() r5: and(x,x) -> x r6: and(xor(x,y),z) -> xor(and(x,z),and(y,z)) r7: xor(x,x) -> F() r8: impl(x,y) -> xor(and(x,y),xor(x,T())) r9: or(x,y) -> xor(and(x,y),xor(x,y)) r10: equiv(x,y) -> xor(x,xor(y,T())) r11: neg(x) -> xor(x,T()) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: and#(xor(x,y),z) -> and#(x,z) and R consists of: r1: xor(x,F()) -> x r2: xor(x,neg(x)) -> F() r3: and(x,T()) -> x r4: and(x,F()) -> F() r5: and(x,x) -> x r6: and(xor(x,y),z) -> xor(and(x,z),and(y,z)) r7: xor(x,x) -> F() r8: impl(x,y) -> xor(and(x,y),xor(x,T())) r9: or(x,y) -> xor(and(x,y),xor(x,y)) r10: equiv(x,y) -> xor(x,xor(y,T())) r11: neg(x) -> xor(x,T()) The set of usable rules consists of r1, r2, r4 Take the reduction pair: generalized weighted path order (>=MG, >MG) base order 1: max/plus interpretation on natural numbers: and#_A(x1,x2) = max{1, x1 - 1} xor_A(x1,x2) = max{12, x1 + 2, x2 - 13} F_A = 3 neg_A(x1) = max{11, x1 - 1} and_A(x1,x2) = max{4, x1 - 20, x2 - 28} base order 2: precedence: and# = xor > neg > and > F partial status: pi(and#) = [] pi(xor) = [1] pi(F) = [] pi(neg) = [] pi(and) = [] The following rules are removed: p1 Then no dependency pair remains.