8.47/8.79 YES 8.47/8.79 8.47/8.79 Problem 1: 8.47/8.79 8.47/8.79 (VAR u x y z) 8.47/8.79 (THEORY 8.47/8.79 (AC plus times)) 8.47/8.79 (RULES 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 ) 8.47/8.79 8.47/8.79 Problem 1: 8.47/8.79 8.47/8.79 Dependency Pairs Processor: 8.47/8.79 -> FAxioms: 8.47/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.47/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.47/8.79 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.47/8.79 TIMES(x4,x5) = TIMES(x5,x4) 8.47/8.79 -> Pairs: 8.47/8.79 ABS(x) -> IF_ABS(x,x,S) 8.47/8.79 IF_ABS(0(x),y,z) -> IF_ABS(x,y,z) 8.47/8.79 IF_ABS(1(x),y,z) -> IF_ABS(x,y,1(S)) 8.47/8.79 IF_ABS(S,x,j(S)) -> OPP(x) 8.47/8.79 IF_ABS(j(x),y,z) -> IF_ABS(x,y,j(S)) 8.47/8.79 IF_MIN(0(x),y,z,u) -> IF_MIN(x,y,z,u) 8.47/8.79 IF_MIN(1(x),y,z,u) -> IF_MIN(x,y,z,1(S)) 8.47/8.79 IF_MIN(j(x),y,z,u) -> IF_MIN(x,y,z,j(S)) 8.47/8.79 IF_SIGN(0(x),y) -> IF_SIGN(x,y) 8.47/8.79 IF_SIGN(1(x),y) -> IF_SIGN(x,1(S)) 8.47/8.79 IF_SIGN(j(x),y) -> IF_SIGN(x,j(S)) 8.47/8.79 MIN(x,y) -> ABS(x) 8.47/8.79 MIN(x,y) -> ABS(y) 8.47/8.79 MIN(x,y) -> IF_MIN(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 MIN(x,y) -> MINUS(abs(y),abs(x)) 8.47/8.79 MIN'(x,y) -> ABS(1(x)) 8.47/8.79 MIN'(x,y) -> ABS(1(y)) 8.47/8.79 MIN'(x,y) -> IF_MIN(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 MIN'(x,y) -> MINUS(abs(1(y)),abs(1(x))) 8.47/8.79 MIN''(x,y) -> ABS(j(x)) 8.47/8.79 MIN''(x,y) -> ABS(j(y)) 8.47/8.79 MIN''(x,y) -> IF_MIN(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 MIN''(x,y) -> MINUS(abs(j(y)),abs(j(x))) 8.47/8.79 MINUS(x,y) -> OPP(y) 8.47/8.79 MINUS(x,y) -> PLUS(opp(y),x) 8.47/8.79 OPP(0(x)) -> 0#(opp(x)) 8.47/8.79 OPP(0(x)) -> OPP(x) 8.47/8.79 OPP(1(x)) -> OPP(x) 8.47/8.79 OPP(j(x)) -> OPP(x) 8.47/8.79 PLUS(0(x),0(y)) -> 0#(plus(x,y)) 8.47/8.79 PLUS(0(x),0(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> 0#(plus(x,y)) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> 0#(plus(x,y)) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),j(y)) -> 0#(plus(x,y)) 8.47/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.47/8.79 SIGN(x) -> IF_SIGN(x,S) 8.47/8.79 TIMES(0(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(0(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(times(0(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(1(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(1(x),y),x4) -> PLUS(0(times(x,y)),y) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(j(x),y),x4) -> MINUS(0(times(x,y)),y) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(1(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(1(x),y) -> PLUS(0(times(x,y)),y) 8.47/8.79 TIMES(1(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(j(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(j(x),y) -> MINUS(0(times(x,y)),y) 8.47/8.79 TIMES(j(x),y) -> TIMES(x,y) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 -> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.47/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.47/8.79 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.47/8.79 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.47/8.79 8.47/8.79 Problem 1: 8.47/8.79 8.47/8.79 SCC Processor: 8.47/8.79 -> FAxioms: 8.47/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.47/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.47/8.79 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.47/8.79 TIMES(x4,x5) = TIMES(x5,x4) 8.47/8.79 -> Pairs: 8.47/8.79 ABS(x) -> IF_ABS(x,x,S) 8.47/8.79 IF_ABS(0(x),y,z) -> IF_ABS(x,y,z) 8.47/8.79 IF_ABS(1(x),y,z) -> IF_ABS(x,y,1(S)) 8.47/8.79 IF_ABS(S,x,j(S)) -> OPP(x) 8.47/8.79 IF_ABS(j(x),y,z) -> IF_ABS(x,y,j(S)) 8.47/8.79 IF_MIN(0(x),y,z,u) -> IF_MIN(x,y,z,u) 8.47/8.79 IF_MIN(1(x),y,z,u) -> IF_MIN(x,y,z,1(S)) 8.47/8.79 IF_MIN(j(x),y,z,u) -> IF_MIN(x,y,z,j(S)) 8.47/8.79 IF_SIGN(0(x),y) -> IF_SIGN(x,y) 8.47/8.79 IF_SIGN(1(x),y) -> IF_SIGN(x,1(S)) 8.47/8.79 IF_SIGN(j(x),y) -> IF_SIGN(x,j(S)) 8.47/8.79 MIN(x,y) -> ABS(x) 8.47/8.79 MIN(x,y) -> ABS(y) 8.47/8.79 MIN(x,y) -> IF_MIN(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 MIN(x,y) -> MINUS(abs(y),abs(x)) 8.47/8.79 MIN'(x,y) -> ABS(1(x)) 8.47/8.79 MIN'(x,y) -> ABS(1(y)) 8.47/8.79 MIN'(x,y) -> IF_MIN(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 MIN'(x,y) -> MINUS(abs(1(y)),abs(1(x))) 8.47/8.79 MIN''(x,y) -> ABS(j(x)) 8.47/8.79 MIN''(x,y) -> ABS(j(y)) 8.47/8.79 MIN''(x,y) -> IF_MIN(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 MIN''(x,y) -> MINUS(abs(j(y)),abs(j(x))) 8.47/8.79 MINUS(x,y) -> OPP(y) 8.47/8.79 MINUS(x,y) -> PLUS(opp(y),x) 8.47/8.79 OPP(0(x)) -> 0#(opp(x)) 8.47/8.79 OPP(0(x)) -> OPP(x) 8.47/8.79 OPP(1(x)) -> OPP(x) 8.47/8.79 OPP(j(x)) -> OPP(x) 8.47/8.79 PLUS(0(x),0(y)) -> 0#(plus(x,y)) 8.47/8.79 PLUS(0(x),0(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> 0#(plus(x,y)) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> 0#(plus(x,y)) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),j(y)) -> 0#(plus(x,y)) 8.47/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.47/8.79 SIGN(x) -> IF_SIGN(x,S) 8.47/8.79 TIMES(0(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(0(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(times(0(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(1(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(1(x),y),x4) -> PLUS(0(times(x,y)),y) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> 0#(times(x,y)) 8.47/8.79 TIMES(times(j(x),y),x4) -> MINUS(0(times(x,y)),y) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(1(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(1(x),y) -> PLUS(0(times(x,y)),y) 8.47/8.79 TIMES(1(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(j(x),y) -> 0#(times(x,y)) 8.47/8.79 TIMES(j(x),y) -> MINUS(0(times(x,y)),y) 8.47/8.79 TIMES(j(x),y) -> TIMES(x,y) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 -> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.47/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.47/8.79 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.47/8.79 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.47/8.79 ->Strongly Connected Components: 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 PLUS(0(x),0(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.47/8.79 PLUS(x4,x5) -> PLUS(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.47/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 OPP(0(x)) -> OPP(x) 8.47/8.79 OPP(1(x)) -> OPP(x) 8.47/8.79 OPP(j(x)) -> OPP(x) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 Empty 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 TIMES(0(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.47/8.79 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.47/8.79 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.47/8.79 TIMES(1(x),y) -> TIMES(x,y) 8.47/8.79 TIMES(j(x),y) -> TIMES(x,y) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.47/8.79 TIMES(x4,x5) -> TIMES(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.47/8.79 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 IF_SIGN(0(x),y) -> IF_SIGN(x,y) 8.47/8.79 IF_SIGN(1(x),y) -> IF_SIGN(x,1(S)) 8.47/8.79 IF_SIGN(j(x),y) -> IF_SIGN(x,j(S)) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 Empty 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 IF_MIN(0(x),y,z,u) -> IF_MIN(x,y,z,u) 8.47/8.79 IF_MIN(1(x),y,z,u) -> IF_MIN(x,y,z,1(S)) 8.47/8.79 IF_MIN(j(x),y,z,u) -> IF_MIN(x,y,z,j(S)) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 Empty 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 IF_ABS(0(x),y,z) -> IF_ABS(x,y,z) 8.47/8.79 IF_ABS(1(x),y,z) -> IF_ABS(x,y,1(S)) 8.47/8.79 IF_ABS(j(x),y,z) -> IF_ABS(x,y,j(S)) 8.47/8.79 -> FAxioms: 8.47/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) -> plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) -> times(x5,x4) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 ->->-> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 Empty 8.47/8.79 8.47/8.79 8.47/8.79 The problem is decomposed in 6 subproblems. 8.47/8.79 8.47/8.79 Problem 1.1: 8.47/8.79 8.47/8.79 Reduction Pairs Processor: 8.47/8.79 -> FAxioms: 8.47/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.47/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.47/8.79 -> Pairs: 8.47/8.79 PLUS(0(x),0(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 -> Usable Equations: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 -> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> Usable Rules: 8.47/8.79 0(S) -> S 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 -> SRules: 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.47/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.47/8.79 ->Interpretation type: 8.47/8.79 Linear 8.47/8.79 ->Coefficients: 8.47/8.79 Natural Numbers 8.47/8.79 ->Dimension: 8.47/8.79 1 8.47/8.79 ->Bound: 8.47/8.79 2 8.47/8.79 ->Interpretation: 8.47/8.79 8.47/8.79 [0](X) = X + 2 8.47/8.79 [abs](X) = 0 8.47/8.79 [if_abs](X1,X2,X3) = 0 8.47/8.79 [if_min](X1,X2,X3,X4) = 0 8.47/8.79 [if_sign](X1,X2) = 0 8.47/8.79 [min](X1,X2) = 0 8.47/8.79 [min'](X1,X2) = 0 8.47/8.79 [min''](X1,X2) = 0 8.47/8.79 [minus](X1,X2) = 0 8.47/8.79 [opp](X) = 0 8.47/8.79 [plus](X1,X2) = X1 + X2 8.47/8.79 [sign](X) = 0 8.47/8.79 [times](X1,X2) = 0 8.47/8.79 [1](X) = X + 2 8.47/8.79 [S] = 0 8.47/8.79 [j](X) = X + 2 8.47/8.79 [0#](X) = 0 8.47/8.79 [ABS](X) = 0 8.47/8.79 [IF_ABS](X1,X2,X3) = 0 8.47/8.79 [IF_MIN](X1,X2,X3,X4) = 0 8.47/8.79 [IF_SIGN](X1,X2) = 0 8.47/8.79 [MIN](X1,X2) = 0 8.47/8.79 [MIN'](X1,X2) = 0 8.47/8.79 [MIN''](X1,X2) = 0 8.47/8.79 [MINUS](X1,X2) = 0 8.47/8.79 [OPP](X) = 0 8.47/8.79 [PLUS](X1,X2) = 2.X1 + 2.X2 8.47/8.79 [SIGN](X) = 0 8.47/8.79 [TIMES](X1,X2) = 0 8.47/8.79 8.47/8.79 Problem 1.1: 8.47/8.79 8.47/8.79 SCC Processor: 8.47/8.79 -> FAxioms: 8.47/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.47/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.47/8.79 -> Pairs: 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.47/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.47/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.47/8.79 -> EAxioms: 8.47/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.47/8.79 plus(x4,x5) = plus(x5,x4) 8.47/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.47/8.79 times(x4,x5) = times(x5,x4) 8.47/8.79 -> Rules: 8.47/8.79 0(S) -> S 8.47/8.79 abs(x) -> if_abs(x,x,S) 8.47/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.47/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.47/8.79 if_abs(S,x,1(S)) -> x 8.47/8.79 if_abs(S,x,S) -> S 8.47/8.79 if_abs(S,x,j(S)) -> opp(x) 8.47/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.47/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.47/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.47/8.79 if_min(S,x,y,1(S)) -> x 8.47/8.79 if_min(S,x,y,S) -> x 8.47/8.79 if_min(S,x,y,j(S)) -> y 8.47/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.47/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.47/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.47/8.79 if_sign(S,x) -> x 8.47/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.47/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.47/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.47/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.47/8.79 minus(x,y) -> plus(opp(y),x) 8.47/8.79 opp(0(x)) -> 0(opp(x)) 8.47/8.79 opp(1(x)) -> j(opp(x)) 8.47/8.79 opp(S) -> S 8.47/8.79 opp(j(x)) -> 1(opp(x)) 8.47/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.47/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.47/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.47/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.47/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.47/8.79 plus(S,x) -> x 8.47/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.47/8.79 sign(x) -> if_sign(x,S) 8.47/8.79 times(0(x),y) -> 0(times(x,y)) 8.47/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.47/8.79 times(S,x) -> S 8.47/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.47/8.79 -> SRules: 8.47/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.47/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.47/8.79 ->Strongly Connected Components: 8.47/8.79 ->->Cycle: 8.47/8.79 ->->-> Pairs: 8.47/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.47/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.47/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.47/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> FAxioms: 8.48/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) -> plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) -> times(x5,x4) 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 ->->-> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 Reduction Pairs Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(0(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Usable Equations: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> Usable Rules: 8.48/8.79 0(S) -> S 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Interpretation type: 8.48/8.79 Linear 8.48/8.79 ->Coefficients: 8.48/8.79 Natural Numbers 8.48/8.79 ->Dimension: 8.48/8.79 1 8.48/8.79 ->Bound: 8.48/8.79 2 8.48/8.79 ->Interpretation: 8.48/8.79 8.48/8.79 [0](X) = X + 2 8.48/8.79 [abs](X) = 0 8.48/8.79 [if_abs](X1,X2,X3) = 0 8.48/8.79 [if_min](X1,X2,X3,X4) = 0 8.48/8.79 [if_sign](X1,X2) = 0 8.48/8.79 [min](X1,X2) = 0 8.48/8.79 [min'](X1,X2) = 0 8.48/8.79 [min''](X1,X2) = 0 8.48/8.79 [minus](X1,X2) = 0 8.48/8.79 [opp](X) = 0 8.48/8.79 [plus](X1,X2) = X1 + X2 8.48/8.79 [sign](X) = 0 8.48/8.79 [times](X1,X2) = 0 8.48/8.79 [1](X) = X + 2 8.48/8.79 [S] = 0 8.48/8.79 [j](X) = X + 2 8.48/8.79 [0#](X) = 0 8.48/8.79 [ABS](X) = 0 8.48/8.79 [IF_ABS](X1,X2,X3) = 0 8.48/8.79 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.79 [IF_SIGN](X1,X2) = 0 8.48/8.79 [MIN](X1,X2) = 0 8.48/8.79 [MIN'](X1,X2) = 0 8.48/8.79 [MIN''](X1,X2) = 0 8.48/8.79 [MINUS](X1,X2) = 0 8.48/8.79 [OPP](X) = 0 8.48/8.79 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.79 [SIGN](X) = 0 8.48/8.79 [TIMES](X1,X2) = 0 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 SCC Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Strongly Connected Components: 8.48/8.79 ->->Cycle: 8.48/8.79 ->->-> Pairs: 8.48/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> FAxioms: 8.48/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) -> plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) -> times(x5,x4) 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 ->->-> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 Reduction Pairs Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(0(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Usable Equations: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> Usable Rules: 8.48/8.79 0(S) -> S 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Interpretation type: 8.48/8.79 Linear 8.48/8.79 ->Coefficients: 8.48/8.79 Natural Numbers 8.48/8.79 ->Dimension: 8.48/8.79 1 8.48/8.79 ->Bound: 8.48/8.79 2 8.48/8.79 ->Interpretation: 8.48/8.79 8.48/8.79 [0](X) = X 8.48/8.79 [abs](X) = 0 8.48/8.79 [if_abs](X1,X2,X3) = 0 8.48/8.79 [if_min](X1,X2,X3,X4) = 0 8.48/8.79 [if_sign](X1,X2) = 0 8.48/8.79 [min](X1,X2) = 0 8.48/8.79 [min'](X1,X2) = 0 8.48/8.79 [min''](X1,X2) = 0 8.48/8.79 [minus](X1,X2) = 0 8.48/8.79 [opp](X) = 0 8.48/8.79 [plus](X1,X2) = X1 + X2 8.48/8.79 [sign](X) = 0 8.48/8.79 [times](X1,X2) = 0 8.48/8.79 [1](X) = X + 2 8.48/8.79 [S] = 0 8.48/8.79 [j](X) = X + 2 8.48/8.79 [0#](X) = 0 8.48/8.79 [ABS](X) = 0 8.48/8.79 [IF_ABS](X1,X2,X3) = 0 8.48/8.79 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.79 [IF_SIGN](X1,X2) = 0 8.48/8.79 [MIN](X1,X2) = 0 8.48/8.79 [MIN'](X1,X2) = 0 8.48/8.79 [MIN''](X1,X2) = 0 8.48/8.79 [MINUS](X1,X2) = 0 8.48/8.79 [OPP](X) = 0 8.48/8.79 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.79 [SIGN](X) = 0 8.48/8.79 [TIMES](X1,X2) = 0 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 SCC Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Strongly Connected Components: 8.48/8.79 ->->Cycle: 8.48/8.79 ->->-> Pairs: 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> FAxioms: 8.48/8.79 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) -> plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) -> times(x5,x4) 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 ->->-> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 Reduction Pairs Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Usable Equations: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> Usable Rules: 8.48/8.79 0(S) -> S 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Interpretation type: 8.48/8.79 Linear 8.48/8.79 ->Coefficients: 8.48/8.79 Natural Numbers 8.48/8.79 ->Dimension: 8.48/8.79 1 8.48/8.79 ->Bound: 8.48/8.79 2 8.48/8.79 ->Interpretation: 8.48/8.79 8.48/8.79 [0](X) = X + 2 8.48/8.79 [abs](X) = 0 8.48/8.79 [if_abs](X1,X2,X3) = 0 8.48/8.79 [if_min](X1,X2,X3,X4) = 0 8.48/8.79 [if_sign](X1,X2) = 0 8.48/8.79 [min](X1,X2) = 0 8.48/8.79 [min'](X1,X2) = 0 8.48/8.79 [min''](X1,X2) = 0 8.48/8.79 [minus](X1,X2) = 0 8.48/8.79 [opp](X) = 0 8.48/8.79 [plus](X1,X2) = X1 + X2 8.48/8.79 [sign](X) = 0 8.48/8.79 [times](X1,X2) = 0 8.48/8.79 [1](X) = X + 2 8.48/8.79 [S] = 0 8.48/8.79 [j](X) = X + 2 8.48/8.79 [0#](X) = 0 8.48/8.79 [ABS](X) = 0 8.48/8.79 [IF_ABS](X1,X2,X3) = 0 8.48/8.79 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.79 [IF_SIGN](X1,X2) = 0 8.48/8.79 [MIN](X1,X2) = 0 8.48/8.79 [MIN'](X1,X2) = 0 8.48/8.79 [MIN''](X1,X2) = 0 8.48/8.79 [MINUS](X1,X2) = 0 8.48/8.79 [OPP](X) = 0 8.48/8.79 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.79 [SIGN](X) = 0 8.48/8.79 [TIMES](X1,X2) = 0 8.48/8.79 8.48/8.79 Problem 1.1: 8.48/8.79 8.48/8.79 SCC Processor: 8.48/8.79 -> FAxioms: 8.48/8.79 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.79 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.79 -> Pairs: 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.79 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.79 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.79 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.79 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.79 -> EAxioms: 8.48/8.79 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.79 plus(x4,x5) = plus(x5,x4) 8.48/8.79 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.79 times(x4,x5) = times(x5,x4) 8.48/8.79 -> Rules: 8.48/8.79 0(S) -> S 8.48/8.79 abs(x) -> if_abs(x,x,S) 8.48/8.79 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.79 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.79 if_abs(S,x,1(S)) -> x 8.48/8.79 if_abs(S,x,S) -> S 8.48/8.79 if_abs(S,x,j(S)) -> opp(x) 8.48/8.79 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.79 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.79 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.79 if_min(S,x,y,1(S)) -> x 8.48/8.79 if_min(S,x,y,S) -> x 8.48/8.79 if_min(S,x,y,j(S)) -> y 8.48/8.79 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.79 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.79 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.79 if_sign(S,x) -> x 8.48/8.79 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.79 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.79 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.79 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.79 minus(x,y) -> plus(opp(y),x) 8.48/8.79 opp(0(x)) -> 0(opp(x)) 8.48/8.79 opp(1(x)) -> j(opp(x)) 8.48/8.79 opp(S) -> S 8.48/8.79 opp(j(x)) -> 1(opp(x)) 8.48/8.79 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.79 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.79 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.79 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.79 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.79 plus(S,x) -> x 8.48/8.79 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.79 sign(x) -> if_sign(x,S) 8.48/8.79 times(0(x),y) -> 0(times(x,y)) 8.48/8.79 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.79 times(S,x) -> S 8.48/8.79 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.79 -> SRules: 8.48/8.79 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.79 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.79 ->Strongly Connected Components: 8.48/8.79 ->->Cycle: 8.48/8.79 ->->-> Pairs: 8.48/8.79 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.79 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),0(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 2 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(1(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 2 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 1 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(j(plus(x,y)),x4) 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 1 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 1 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 1 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(0(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 2 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 1 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 1 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(0(plus(x,y)),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Usable Equations: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> Usable Rules: 8.48/8.80 0(S) -> S 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Interpretation type: 8.48/8.80 Linear 8.48/8.80 ->Coefficients: 8.48/8.80 Natural Numbers 8.48/8.80 ->Dimension: 8.48/8.80 1 8.48/8.80 ->Bound: 8.48/8.80 2 8.48/8.80 ->Interpretation: 8.48/8.80 8.48/8.80 [0](X) = X + 1 8.48/8.80 [abs](X) = 0 8.48/8.80 [if_abs](X1,X2,X3) = 0 8.48/8.80 [if_min](X1,X2,X3,X4) = 0 8.48/8.80 [if_sign](X1,X2) = 0 8.48/8.80 [min](X1,X2) = 0 8.48/8.80 [min'](X1,X2) = 0 8.48/8.80 [min''](X1,X2) = 0 8.48/8.80 [minus](X1,X2) = 0 8.48/8.80 [opp](X) = 0 8.48/8.80 [plus](X1,X2) = X1 + X2 8.48/8.80 [sign](X) = 0 8.48/8.80 [times](X1,X2) = 0 8.48/8.80 [1](X) = X + 2 8.48/8.80 [S] = 0 8.48/8.80 [j](X) = X + 2 8.48/8.80 [0#](X) = 0 8.48/8.80 [ABS](X) = 0 8.48/8.80 [IF_ABS](X1,X2,X3) = 0 8.48/8.80 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.80 [IF_SIGN](X1,X2) = 0 8.48/8.80 [MIN](X1,X2) = 0 8.48/8.80 [MIN'](X1,X2) = 0 8.48/8.80 [MIN''](X1,X2) = 0 8.48/8.80 [MINUS](X1,X2) = 0 8.48/8.80 [OPP](X) = 0 8.48/8.80 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.80 [SIGN](X) = 0 8.48/8.80 [TIMES](X1,X2) = 0 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 SCC Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 -> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 ->Strongly Connected Components: 8.48/8.80 ->->Cycle: 8.48/8.80 ->->-> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.80 -> FAxioms: 8.48/8.80 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) -> plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) -> times(x5,x4) 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.80 -> EAxioms: 8.48/8.80 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.80 plus(x4,x5) = plus(x5,x4) 8.48/8.80 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.80 times(x4,x5) = times(x5,x4) 8.48/8.80 ->->-> Rules: 8.48/8.80 0(S) -> S 8.48/8.80 abs(x) -> if_abs(x,x,S) 8.48/8.80 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.80 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.80 if_abs(S,x,1(S)) -> x 8.48/8.80 if_abs(S,x,S) -> S 8.48/8.80 if_abs(S,x,j(S)) -> opp(x) 8.48/8.80 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.80 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.80 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.80 if_min(S,x,y,1(S)) -> x 8.48/8.80 if_min(S,x,y,S) -> x 8.48/8.80 if_min(S,x,y,j(S)) -> y 8.48/8.80 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.80 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.80 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.80 if_sign(S,x) -> x 8.48/8.80 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.80 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.80 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.80 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.80 minus(x,y) -> plus(opp(y),x) 8.48/8.80 opp(0(x)) -> 0(opp(x)) 8.48/8.80 opp(1(x)) -> j(opp(x)) 8.48/8.80 opp(S) -> S 8.48/8.80 opp(j(x)) -> 1(opp(x)) 8.48/8.80 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.80 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.80 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.80 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.80 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.80 plus(S,x) -> x 8.48/8.80 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.80 sign(x) -> if_sign(x,S) 8.48/8.80 times(0(x),y) -> 0(times(x,y)) 8.48/8.80 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.80 times(S,x) -> S 8.48/8.80 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.80 -> SRules: 8.48/8.80 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.80 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.80 8.48/8.80 Problem 1.1: 8.48/8.80 8.48/8.80 Reduction Pairs Processor: 8.48/8.80 -> FAxioms: 8.48/8.80 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.80 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.80 -> Pairs: 8.48/8.80 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(1(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.80 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.80 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.80 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Usable Equations: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> Usable Rules: 8.48/8.81 0(S) -> S 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Interpretation type: 8.48/8.81 Linear 8.48/8.81 ->Coefficients: 8.48/8.81 Natural Numbers 8.48/8.81 ->Dimension: 8.48/8.81 1 8.48/8.81 ->Bound: 8.48/8.81 2 8.48/8.81 ->Interpretation: 8.48/8.81 8.48/8.81 [0](X) = X 8.48/8.81 [abs](X) = 0 8.48/8.81 [if_abs](X1,X2,X3) = 0 8.48/8.81 [if_min](X1,X2,X3,X4) = 0 8.48/8.81 [if_sign](X1,X2) = 0 8.48/8.81 [min](X1,X2) = 0 8.48/8.81 [min'](X1,X2) = 0 8.48/8.81 [min''](X1,X2) = 0 8.48/8.81 [minus](X1,X2) = 0 8.48/8.81 [opp](X) = 0 8.48/8.81 [plus](X1,X2) = X1 + X2 8.48/8.81 [sign](X) = 0 8.48/8.81 [times](X1,X2) = 0 8.48/8.81 [1](X) = X + 2 8.48/8.81 [S] = 0 8.48/8.81 [j](X) = X + 2 8.48/8.81 [0#](X) = 0 8.48/8.81 [ABS](X) = 0 8.48/8.81 [IF_ABS](X1,X2,X3) = 0 8.48/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.81 [IF_SIGN](X1,X2) = 0 8.48/8.81 [MIN](X1,X2) = 0 8.48/8.81 [MIN'](X1,X2) = 0 8.48/8.81 [MIN''](X1,X2) = 0 8.48/8.81 [MINUS](X1,X2) = 0 8.48/8.81 [OPP](X) = 0 8.48/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.81 [SIGN](X) = 0 8.48/8.81 [TIMES](X1,X2) = 0 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 SCC Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Strongly Connected Components: 8.48/8.81 ->->Cycle: 8.48/8.81 ->->-> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> FAxioms: 8.48/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) -> plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) -> times(x5,x4) 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 ->->-> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 Reduction Pairs Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Usable Equations: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> Usable Rules: 8.48/8.81 0(S) -> S 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Interpretation type: 8.48/8.81 Linear 8.48/8.81 ->Coefficients: 8.48/8.81 Natural Numbers 8.48/8.81 ->Dimension: 8.48/8.81 1 8.48/8.81 ->Bound: 8.48/8.81 2 8.48/8.81 ->Interpretation: 8.48/8.81 8.48/8.81 [0](X) = X + 2 8.48/8.81 [abs](X) = 0 8.48/8.81 [if_abs](X1,X2,X3) = 0 8.48/8.81 [if_min](X1,X2,X3,X4) = 0 8.48/8.81 [if_sign](X1,X2) = 0 8.48/8.81 [min](X1,X2) = 0 8.48/8.81 [min'](X1,X2) = 0 8.48/8.81 [min''](X1,X2) = 0 8.48/8.81 [minus](X1,X2) = 0 8.48/8.81 [opp](X) = 0 8.48/8.81 [plus](X1,X2) = X1 + X2 8.48/8.81 [sign](X) = 0 8.48/8.81 [times](X1,X2) = 0 8.48/8.81 [1](X) = X + 2 8.48/8.81 [S] = 0 8.48/8.81 [j](X) = X + 2 8.48/8.81 [0#](X) = 0 8.48/8.81 [ABS](X) = 0 8.48/8.81 [IF_ABS](X1,X2,X3) = 0 8.48/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.81 [IF_SIGN](X1,X2) = 0 8.48/8.81 [MIN](X1,X2) = 0 8.48/8.81 [MIN'](X1,X2) = 0 8.48/8.81 [MIN''](X1,X2) = 0 8.48/8.81 [MINUS](X1,X2) = 0 8.48/8.81 [OPP](X) = 0 8.48/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.81 [SIGN](X) = 0 8.48/8.81 [TIMES](X1,X2) = 0 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 SCC Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Strongly Connected Components: 8.48/8.81 ->->Cycle: 8.48/8.81 ->->-> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> FAxioms: 8.48/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) -> plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) -> times(x5,x4) 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 ->->-> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 Reduction Pairs Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Usable Equations: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> Usable Rules: 8.48/8.81 0(S) -> S 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Interpretation type: 8.48/8.81 Linear 8.48/8.81 ->Coefficients: 8.48/8.81 Natural Numbers 8.48/8.81 ->Dimension: 8.48/8.81 1 8.48/8.81 ->Bound: 8.48/8.81 2 8.48/8.81 ->Interpretation: 8.48/8.81 8.48/8.81 [0](X) = X + 1 8.48/8.81 [abs](X) = 0 8.48/8.81 [if_abs](X1,X2,X3) = 0 8.48/8.81 [if_min](X1,X2,X3,X4) = 0 8.48/8.81 [if_sign](X1,X2) = 0 8.48/8.81 [min](X1,X2) = 0 8.48/8.81 [min'](X1,X2) = 0 8.48/8.81 [min''](X1,X2) = 0 8.48/8.81 [minus](X1,X2) = 0 8.48/8.81 [opp](X) = 0 8.48/8.81 [plus](X1,X2) = X1 + X2 8.48/8.81 [sign](X) = 0 8.48/8.81 [times](X1,X2) = 0 8.48/8.81 [1](X) = X + 2 8.48/8.81 [S] = 0 8.48/8.81 [j](X) = X + 2 8.48/8.81 [0#](X) = 0 8.48/8.81 [ABS](X) = 0 8.48/8.81 [IF_ABS](X1,X2,X3) = 0 8.48/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.81 [IF_SIGN](X1,X2) = 0 8.48/8.81 [MIN](X1,X2) = 0 8.48/8.81 [MIN'](X1,X2) = 0 8.48/8.81 [MIN''](X1,X2) = 0 8.48/8.81 [MINUS](X1,X2) = 0 8.48/8.81 [OPP](X) = 0 8.48/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.81 [SIGN](X) = 0 8.48/8.81 [TIMES](X1,X2) = 0 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 SCC Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Strongly Connected Components: 8.48/8.81 ->->Cycle: 8.48/8.81 ->->-> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> FAxioms: 8.48/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) -> plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) -> times(x5,x4) 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 ->->-> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 Reduction Pairs Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(1(S),plus(x,y)) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Usable Equations: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> Usable Rules: 8.48/8.81 0(S) -> S 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Interpretation type: 8.48/8.81 Linear 8.48/8.81 ->Coefficients: 8.48/8.81 Natural Numbers 8.48/8.81 ->Dimension: 8.48/8.81 1 8.48/8.81 ->Bound: 8.48/8.81 2 8.48/8.81 ->Interpretation: 8.48/8.81 8.48/8.81 [0](X) = X 8.48/8.81 [abs](X) = 0 8.48/8.81 [if_abs](X1,X2,X3) = 0 8.48/8.81 [if_min](X1,X2,X3,X4) = 0 8.48/8.81 [if_sign](X1,X2) = 0 8.48/8.81 [min](X1,X2) = 0 8.48/8.81 [min'](X1,X2) = 0 8.48/8.81 [min''](X1,X2) = 0 8.48/8.81 [minus](X1,X2) = 0 8.48/8.81 [opp](X) = 0 8.48/8.81 [plus](X1,X2) = X1 + X2 8.48/8.81 [sign](X) = 0 8.48/8.81 [times](X1,X2) = 0 8.48/8.81 [1](X) = X + 2 8.48/8.81 [S] = 0 8.48/8.81 [j](X) = X + 2 8.48/8.81 [0#](X) = 0 8.48/8.81 [ABS](X) = 0 8.48/8.81 [IF_ABS](X1,X2,X3) = 0 8.48/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.81 [IF_SIGN](X1,X2) = 0 8.48/8.81 [MIN](X1,X2) = 0 8.48/8.81 [MIN'](X1,X2) = 0 8.48/8.81 [MIN''](X1,X2) = 0 8.48/8.81 [MINUS](X1,X2) = 0 8.48/8.81 [OPP](X) = 0 8.48/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.81 [SIGN](X) = 0 8.48/8.81 [TIMES](X1,X2) = 0 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 SCC Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Strongly Connected Components: 8.48/8.81 ->->Cycle: 8.48/8.81 ->->-> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> FAxioms: 8.48/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) -> plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) -> times(x5,x4) 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 ->->-> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 Reduction Pairs Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),1(y)) -> PLUS(x,y) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Usable Equations: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> Usable Rules: 8.48/8.81 0(S) -> S 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Interpretation type: 8.48/8.81 Linear 8.48/8.81 ->Coefficients: 8.48/8.81 Natural Numbers 8.48/8.81 ->Dimension: 8.48/8.81 1 8.48/8.81 ->Bound: 8.48/8.81 2 8.48/8.81 ->Interpretation: 8.48/8.81 8.48/8.81 [0](X) = X + 1 8.48/8.81 [abs](X) = 0 8.48/8.81 [if_abs](X1,X2,X3) = 0 8.48/8.81 [if_min](X1,X2,X3,X4) = 0 8.48/8.81 [if_sign](X1,X2) = 0 8.48/8.81 [min](X1,X2) = 0 8.48/8.81 [min'](X1,X2) = 0 8.48/8.81 [min''](X1,X2) = 0 8.48/8.81 [minus](X1,X2) = 0 8.48/8.81 [opp](X) = 0 8.48/8.81 [plus](X1,X2) = X1 + X2 8.48/8.81 [sign](X) = 0 8.48/8.81 [times](X1,X2) = 0 8.48/8.81 [1](X) = X + 2 8.48/8.81 [S] = 0 8.48/8.81 [j](X) = X + 2 8.48/8.81 [0#](X) = 0 8.48/8.81 [ABS](X) = 0 8.48/8.81 [IF_ABS](X1,X2,X3) = 0 8.48/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.48/8.81 [IF_SIGN](X1,X2) = 0 8.48/8.81 [MIN](X1,X2) = 0 8.48/8.81 [MIN'](X1,X2) = 0 8.48/8.81 [MIN''](X1,X2) = 0 8.48/8.81 [MINUS](X1,X2) = 0 8.48/8.81 [OPP](X) = 0 8.48/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.48/8.81 [SIGN](X) = 0 8.48/8.81 [TIMES](X1,X2) = 0 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 SCC Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 -> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 ->Strongly Connected Components: 8.48/8.81 ->->Cycle: 8.48/8.81 ->->-> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> FAxioms: 8.48/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) -> plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) -> times(x5,x4) 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.48/8.81 ->->-> Rules: 8.48/8.81 0(S) -> S 8.48/8.81 abs(x) -> if_abs(x,x,S) 8.48/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.48/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.48/8.81 if_abs(S,x,1(S)) -> x 8.48/8.81 if_abs(S,x,S) -> S 8.48/8.81 if_abs(S,x,j(S)) -> opp(x) 8.48/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.48/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.48/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.48/8.81 if_min(S,x,y,1(S)) -> x 8.48/8.81 if_min(S,x,y,S) -> x 8.48/8.81 if_min(S,x,y,j(S)) -> y 8.48/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.48/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.48/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.48/8.81 if_sign(S,x) -> x 8.48/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.48/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.48/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.48/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.48/8.81 minus(x,y) -> plus(opp(y),x) 8.48/8.81 opp(0(x)) -> 0(opp(x)) 8.48/8.81 opp(1(x)) -> j(opp(x)) 8.48/8.81 opp(S) -> S 8.48/8.81 opp(j(x)) -> 1(opp(x)) 8.48/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.48/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.48/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.48/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.48/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.48/8.81 plus(S,x) -> x 8.48/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.48/8.81 sign(x) -> if_sign(x,S) 8.48/8.81 times(0(x),y) -> 0(times(x,y)) 8.48/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.48/8.81 times(S,x) -> S 8.48/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.48/8.81 -> SRules: 8.48/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.48/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.48/8.81 8.48/8.81 Problem 1.1: 8.48/8.81 8.48/8.81 Reduction Pairs Processor: 8.48/8.81 -> FAxioms: 8.48/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.48/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.48/8.81 -> Pairs: 8.48/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.48/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.48/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.48/8.81 PLUS(1(x),j(y)) -> PLUS(x,y) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.48/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.48/8.81 -> EAxioms: 8.48/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.48/8.81 plus(x4,x5) = plus(x5,x4) 8.48/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.48/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Usable Equations: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> Usable Rules: 8.49/8.81 0(S) -> S 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Interpretation type: 8.49/8.81 Linear 8.49/8.81 ->Coefficients: 8.49/8.81 Natural Numbers 8.49/8.81 ->Dimension: 8.49/8.81 1 8.49/8.81 ->Bound: 8.49/8.81 2 8.49/8.81 ->Interpretation: 8.49/8.81 8.49/8.81 [0](X) = X + 1 8.49/8.81 [abs](X) = 0 8.49/8.81 [if_abs](X1,X2,X3) = 0 8.49/8.81 [if_min](X1,X2,X3,X4) = 0 8.49/8.81 [if_sign](X1,X2) = 0 8.49/8.81 [min](X1,X2) = 0 8.49/8.81 [min'](X1,X2) = 0 8.49/8.81 [min''](X1,X2) = 0 8.49/8.81 [minus](X1,X2) = 0 8.49/8.81 [opp](X) = 0 8.49/8.81 [plus](X1,X2) = X1 + X2 8.49/8.81 [sign](X) = 0 8.49/8.81 [times](X1,X2) = 0 8.49/8.81 [1](X) = X + 2 8.49/8.81 [S] = 0 8.49/8.81 [j](X) = X + 2 8.49/8.81 [0#](X) = 0 8.49/8.81 [ABS](X) = 0 8.49/8.81 [IF_ABS](X1,X2,X3) = 0 8.49/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.81 [IF_SIGN](X1,X2) = 0 8.49/8.81 [MIN](X1,X2) = 0 8.49/8.81 [MIN'](X1,X2) = 0 8.49/8.81 [MIN''](X1,X2) = 0 8.49/8.81 [MINUS](X1,X2) = 0 8.49/8.81 [OPP](X) = 0 8.49/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.49/8.81 [SIGN](X) = 0 8.49/8.81 [TIMES](X1,X2) = 0 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 SCC Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Strongly Connected Components: 8.49/8.81 ->->Cycle: 8.49/8.81 ->->-> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> FAxioms: 8.49/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) -> plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) -> times(x5,x4) 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 ->->-> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 Reduction Pairs Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(j(S),plus(x,y)) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Usable Equations: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> Usable Rules: 8.49/8.81 0(S) -> S 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Interpretation type: 8.49/8.81 Linear 8.49/8.81 ->Coefficients: 8.49/8.81 Natural Numbers 8.49/8.81 ->Dimension: 8.49/8.81 1 8.49/8.81 ->Bound: 8.49/8.81 2 8.49/8.81 ->Interpretation: 8.49/8.81 8.49/8.81 [0](X) = X + 2 8.49/8.81 [abs](X) = 0 8.49/8.81 [if_abs](X1,X2,X3) = 0 8.49/8.81 [if_min](X1,X2,X3,X4) = 0 8.49/8.81 [if_sign](X1,X2) = 0 8.49/8.81 [min](X1,X2) = 0 8.49/8.81 [min'](X1,X2) = 0 8.49/8.81 [min''](X1,X2) = 0 8.49/8.81 [minus](X1,X2) = 0 8.49/8.81 [opp](X) = 0 8.49/8.81 [plus](X1,X2) = X1 + X2 8.49/8.81 [sign](X) = 0 8.49/8.81 [times](X1,X2) = 0 8.49/8.81 [1](X) = X + 2 8.49/8.81 [S] = 0 8.49/8.81 [j](X) = X + 2 8.49/8.81 [0#](X) = 0 8.49/8.81 [ABS](X) = 0 8.49/8.81 [IF_ABS](X1,X2,X3) = 0 8.49/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.81 [IF_SIGN](X1,X2) = 0 8.49/8.81 [MIN](X1,X2) = 0 8.49/8.81 [MIN'](X1,X2) = 0 8.49/8.81 [MIN''](X1,X2) = 0 8.49/8.81 [MINUS](X1,X2) = 0 8.49/8.81 [OPP](X) = 0 8.49/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.49/8.81 [SIGN](X) = 0 8.49/8.81 [TIMES](X1,X2) = 0 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 SCC Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Strongly Connected Components: 8.49/8.81 ->->Cycle: 8.49/8.81 ->->-> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> FAxioms: 8.49/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) -> plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) -> times(x5,x4) 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 ->->-> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 Reduction Pairs Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 PLUS(j(x),j(y)) -> PLUS(x,y) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Usable Equations: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> Usable Rules: 8.49/8.81 0(S) -> S 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Interpretation type: 8.49/8.81 Linear 8.49/8.81 ->Coefficients: 8.49/8.81 Natural Numbers 8.49/8.81 ->Dimension: 8.49/8.81 1 8.49/8.81 ->Bound: 8.49/8.81 2 8.49/8.81 ->Interpretation: 8.49/8.81 8.49/8.81 [0](X) = X + 1 8.49/8.81 [abs](X) = 0 8.49/8.81 [if_abs](X1,X2,X3) = 0 8.49/8.81 [if_min](X1,X2,X3,X4) = 0 8.49/8.81 [if_sign](X1,X2) = 0 8.49/8.81 [min](X1,X2) = 0 8.49/8.81 [min'](X1,X2) = 0 8.49/8.81 [min''](X1,X2) = 0 8.49/8.81 [minus](X1,X2) = 0 8.49/8.81 [opp](X) = 0 8.49/8.81 [plus](X1,X2) = X1 + X2 8.49/8.81 [sign](X) = 0 8.49/8.81 [times](X1,X2) = 0 8.49/8.81 [1](X) = X + 2 8.49/8.81 [S] = 0 8.49/8.81 [j](X) = X + 2 8.49/8.81 [0#](X) = 0 8.49/8.81 [ABS](X) = 0 8.49/8.81 [IF_ABS](X1,X2,X3) = 0 8.49/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.81 [IF_SIGN](X1,X2) = 0 8.49/8.81 [MIN](X1,X2) = 0 8.49/8.81 [MIN'](X1,X2) = 0 8.49/8.81 [MIN''](X1,X2) = 0 8.49/8.81 [MINUS](X1,X2) = 0 8.49/8.81 [OPP](X) = 0 8.49/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.49/8.81 [SIGN](X) = 0 8.49/8.81 [TIMES](X1,X2) = 0 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 SCC Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Strongly Connected Components: 8.49/8.81 ->->Cycle: 8.49/8.81 ->->-> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> FAxioms: 8.49/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) -> plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) -> times(x5,x4) 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 ->->-> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 Reduction Pairs Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(1(x),1(y)),x4) -> PLUS(j(plus(1(S),plus(x,y))),x4) 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Usable Equations: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> Usable Rules: 8.49/8.81 0(S) -> S 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Interpretation type: 8.49/8.81 Linear 8.49/8.81 ->Coefficients: 8.49/8.81 Natural Numbers 8.49/8.81 ->Dimension: 8.49/8.81 1 8.49/8.81 ->Bound: 8.49/8.81 2 8.49/8.81 ->Interpretation: 8.49/8.81 8.49/8.81 [0](X) = 2 8.49/8.81 [abs](X) = 0 8.49/8.81 [if_abs](X1,X2,X3) = 0 8.49/8.81 [if_min](X1,X2,X3,X4) = 0 8.49/8.81 [if_sign](X1,X2) = 0 8.49/8.81 [min](X1,X2) = 0 8.49/8.81 [min'](X1,X2) = 0 8.49/8.81 [min''](X1,X2) = 0 8.49/8.81 [minus](X1,X2) = 0 8.49/8.81 [opp](X) = 0 8.49/8.81 [plus](X1,X2) = X1 + X2 + 2 8.49/8.81 [sign](X) = 0 8.49/8.81 [times](X1,X2) = 0 8.49/8.81 [1](X) = 2 8.49/8.81 [S] = 0 8.49/8.81 [j](X) = 0 8.49/8.81 [0#](X) = 0 8.49/8.81 [ABS](X) = 0 8.49/8.81 [IF_ABS](X1,X2,X3) = 0 8.49/8.81 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.81 [IF_SIGN](X1,X2) = 0 8.49/8.81 [MIN](X1,X2) = 0 8.49/8.81 [MIN'](X1,X2) = 0 8.49/8.81 [MIN''](X1,X2) = 0 8.49/8.81 [MINUS](X1,X2) = 0 8.49/8.81 [OPP](X) = 0 8.49/8.81 [PLUS](X1,X2) = 2.X1 + 2.X2 8.49/8.81 [SIGN](X) = 0 8.49/8.81 [TIMES](X1,X2) = 0 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 SCC Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 ->Strongly Connected Components: 8.49/8.81 ->->Cycle: 8.49/8.81 ->->-> Pairs: 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> FAxioms: 8.49/8.81 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) -> plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) -> times(x5,x4) 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) -> PLUS(x5,x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 ->->-> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.81 opp(j(x)) -> 1(opp(x)) 8.49/8.81 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.81 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.81 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.81 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.81 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.81 plus(S,x) -> x 8.49/8.81 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.81 sign(x) -> if_sign(x,S) 8.49/8.81 times(0(x),y) -> 0(times(x,y)) 8.49/8.81 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.81 times(S,x) -> S 8.49/8.81 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.81 -> SRules: 8.49/8.81 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.81 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.81 8.49/8.81 Problem 1.1: 8.49/8.81 8.49/8.81 Reduction Pairs Processor: 8.49/8.81 -> FAxioms: 8.49/8.81 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.81 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.81 -> Pairs: 8.49/8.81 PLUS(plus(S,x),x4) -> PLUS(x,x4) 8.49/8.81 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.81 -> EAxioms: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.81 times(x4,x5) = times(x5,x4) 8.49/8.81 -> Usable Equations: 8.49/8.81 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.81 plus(x4,x5) = plus(x5,x4) 8.49/8.81 -> Rules: 8.49/8.81 0(S) -> S 8.49/8.81 abs(x) -> if_abs(x,x,S) 8.49/8.81 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.81 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.81 if_abs(S,x,1(S)) -> x 8.49/8.81 if_abs(S,x,S) -> S 8.49/8.81 if_abs(S,x,j(S)) -> opp(x) 8.49/8.81 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.81 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.81 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.81 if_min(S,x,y,1(S)) -> x 8.49/8.81 if_min(S,x,y,S) -> x 8.49/8.81 if_min(S,x,y,j(S)) -> y 8.49/8.81 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.81 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.81 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.81 if_sign(S,x) -> x 8.49/8.81 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.81 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.81 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.81 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.81 minus(x,y) -> plus(opp(y),x) 8.49/8.81 opp(0(x)) -> 0(opp(x)) 8.49/8.81 opp(1(x)) -> j(opp(x)) 8.49/8.81 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 -> SRules: 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.82 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Linear 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 2 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = 0 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = 0 8.49/8.82 [opp](X) = 0 8.49/8.82 [plus](X1,X2) = X1 + X2 + 2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = 0 8.49/8.82 [1](X) = 0 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = X1 + X2 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = 0 8.49/8.82 8.49/8.82 Problem 1.1: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.82 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.82 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,plus(x5,x6)) 8.49/8.82 PLUS(x4,x5) -> PLUS(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.82 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.1: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.82 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 PLUS(plus(j(x),j(y)),x4) -> PLUS(1(plus(j(S),plus(x,y))),x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 -> SRules: 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.82 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Linear 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 2 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = 2 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = 0 8.49/8.82 [opp](X) = 0 8.49/8.82 [plus](X1,X2) = X1 + X2 + 2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = 0 8.49/8.82 [1](X) = 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = 0 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 2.X1 + 2.X2 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = 0 8.49/8.82 8.49/8.82 Problem 1.1: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 PLUS(plus(x4,x5),x6) = PLUS(x4,plus(x5,x6)) 8.49/8.82 PLUS(x4,x5) = PLUS(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 Empty 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 PLUS(plus(x4,x5),x6) -> PLUS(x4,x5) 8.49/8.82 PLUS(x4,plus(x5,x6)) -> PLUS(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 There is no strongly connected component 8.49/8.82 8.49/8.82 The problem is finite. 8.49/8.82 8.49/8.82 Problem 1.2: 8.49/8.82 8.49/8.82 Subterm Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 Empty 8.49/8.82 -> Pairs: 8.49/8.82 OPP(0(x)) -> OPP(x) 8.49/8.82 OPP(1(x)) -> OPP(x) 8.49/8.82 OPP(j(x)) -> OPP(x) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 Empty 8.49/8.82 ->Projection: 8.49/8.82 pi(OPP) = [1] 8.49/8.82 8.49/8.82 Problem 1.2: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 Empty 8.49/8.82 -> Pairs: 8.49/8.82 Empty 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 Empty 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 There is no strongly connected component 8.49/8.82 8.49/8.82 The problem is finite. 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(0(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X + 1 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 8.49/8.82 [opp](X) = X 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X + 1 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 8.49/8.82 [opp](X) = X 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(plus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 + 1 8.49/8.82 [opp](X) = X + 1 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(1(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X + 1 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 8.49/8.82 [opp](X) = X 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(minus(0(times(x,y)),y),x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 8.49/8.82 [opp](X) = X 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(times(j(x),y),x4) -> TIMES(x,y) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 + 1 8.49/8.82 [opp](X) = X + 1 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 Reduction Pairs Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(1(x),y) -> TIMES(x,y) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Usable Equations: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> Usable Rules: 8.49/8.82 0(S) -> S 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Interpretation type: 8.49/8.82 Simple mixed 8.49/8.82 ->Coefficients: 8.49/8.82 Natural Numbers 8.49/8.82 ->Dimension: 8.49/8.82 1 8.49/8.82 ->Bound: 8.49/8.82 1 8.49/8.82 ->Interpretation: 8.49/8.82 8.49/8.82 [0](X) = X + 1 8.49/8.82 [abs](X) = 0 8.49/8.82 [if_abs](X1,X2,X3) = 0 8.49/8.82 [if_min](X1,X2,X3,X4) = 0 8.49/8.82 [if_sign](X1,X2) = 0 8.49/8.82 [min](X1,X2) = 0 8.49/8.82 [min'](X1,X2) = 0 8.49/8.82 [min''](X1,X2) = 0 8.49/8.82 [minus](X1,X2) = X1 + X2 8.49/8.82 [opp](X) = X 8.49/8.82 [plus](X1,X2) = X1 + X2 8.49/8.82 [sign](X) = 0 8.49/8.82 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 [1](X) = X + 1 8.49/8.82 [S] = 0 8.49/8.82 [j](X) = X + 1 8.49/8.82 [0#](X) = 0 8.49/8.82 [ABS](X) = 0 8.49/8.82 [IF_ABS](X1,X2,X3) = 0 8.49/8.82 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.82 [IF_SIGN](X1,X2) = 0 8.49/8.82 [MIN](X1,X2) = 0 8.49/8.82 [MIN'](X1,X2) = 0 8.49/8.82 [MIN''](X1,X2) = 0 8.49/8.82 [MINUS](X1,X2) = 0 8.49/8.82 [OPP](X) = 0 8.49/8.82 [PLUS](X1,X2) = 0 8.49/8.82 [SIGN](X) = 0 8.49/8.82 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.82 8.49/8.82 Problem 1.3: 8.49/8.82 8.49/8.82 SCC Processor: 8.49/8.82 -> FAxioms: 8.49/8.82 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.82 -> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 -> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.82 opp(1(x)) -> j(opp(x)) 8.49/8.82 opp(S) -> S 8.49/8.82 opp(j(x)) -> 1(opp(x)) 8.49/8.82 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.82 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.82 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.82 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.82 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.82 plus(S,x) -> x 8.49/8.82 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.82 sign(x) -> if_sign(x,S) 8.49/8.82 times(0(x),y) -> 0(times(x,y)) 8.49/8.82 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.82 times(S,x) -> S 8.49/8.82 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.82 -> SRules: 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.82 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.82 ->Strongly Connected Components: 8.49/8.82 ->->Cycle: 8.49/8.82 ->->-> Pairs: 8.49/8.82 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.82 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.82 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.82 -> FAxioms: 8.49/8.82 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) -> plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) -> times(x5,x4) 8.49/8.82 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.82 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.82 -> EAxioms: 8.49/8.82 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.82 plus(x4,x5) = plus(x5,x4) 8.49/8.82 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.82 times(x4,x5) = times(x5,x4) 8.49/8.82 ->->-> Rules: 8.49/8.82 0(S) -> S 8.49/8.82 abs(x) -> if_abs(x,x,S) 8.49/8.82 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.82 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.82 if_abs(S,x,1(S)) -> x 8.49/8.82 if_abs(S,x,S) -> S 8.49/8.82 if_abs(S,x,j(S)) -> opp(x) 8.49/8.82 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.82 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.82 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.82 if_min(S,x,y,1(S)) -> x 8.49/8.82 if_min(S,x,y,S) -> x 8.49/8.82 if_min(S,x,y,j(S)) -> y 8.49/8.82 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.82 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.82 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.82 if_sign(S,x) -> x 8.49/8.82 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.82 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.82 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.82 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.82 minus(x,y) -> plus(opp(y),x) 8.49/8.82 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 Reduction Pairs Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 TIMES(j(x),y) -> TIMES(x,y) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Usable Equations: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> Usable Rules: 8.49/8.83 0(S) -> S 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Interpretation type: 8.49/8.83 Simple mixed 8.49/8.83 ->Coefficients: 8.49/8.83 Natural Numbers 8.49/8.83 ->Dimension: 8.49/8.83 1 8.49/8.83 ->Bound: 8.49/8.83 1 8.49/8.83 ->Interpretation: 8.49/8.83 8.49/8.83 [0](X) = X + 1 8.49/8.83 [abs](X) = 0 8.49/8.83 [if_abs](X1,X2,X3) = 0 8.49/8.83 [if_min](X1,X2,X3,X4) = 0 8.49/8.83 [if_sign](X1,X2) = 0 8.49/8.83 [min](X1,X2) = 0 8.49/8.83 [min'](X1,X2) = 0 8.49/8.83 [min''](X1,X2) = 0 8.49/8.83 [minus](X1,X2) = X1 + X2 8.49/8.83 [opp](X) = X 8.49/8.83 [plus](X1,X2) = X1 + X2 8.49/8.83 [sign](X) = 0 8.49/8.83 [times](X1,X2) = X1.X2 + X1 + X2 8.49/8.83 [1](X) = X + 1 8.49/8.83 [S] = 0 8.49/8.83 [j](X) = X + 1 8.49/8.83 [0#](X) = 0 8.49/8.83 [ABS](X) = 0 8.49/8.83 [IF_ABS](X1,X2,X3) = 0 8.49/8.83 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.83 [IF_SIGN](X1,X2) = 0 8.49/8.83 [MIN](X1,X2) = 0 8.49/8.83 [MIN'](X1,X2) = 0 8.49/8.83 [MIN''](X1,X2) = 0 8.49/8.83 [MINUS](X1,X2) = 0 8.49/8.83 [OPP](X) = 0 8.49/8.83 [PLUS](X1,X2) = 0 8.49/8.83 [SIGN](X) = 0 8.49/8.83 [TIMES](X1,X2) = X1.X2 + X1 + X2 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 ->->Cycle: 8.49/8.83 ->->-> Pairs: 8.49/8.83 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> FAxioms: 8.49/8.83 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) -> plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) -> times(x5,x4) 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 ->->-> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 Reduction Pairs Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 TIMES(times(0(x),y),x4) -> TIMES(0(times(x,y)),x4) 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Usable Equations: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> Usable Rules: 8.49/8.83 0(S) -> S 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Interpretation type: 8.49/8.83 Linear 8.49/8.83 ->Coefficients: 8.49/8.83 Natural Numbers 8.49/8.83 ->Dimension: 8.49/8.83 1 8.49/8.83 ->Bound: 8.49/8.83 2 8.49/8.83 ->Interpretation: 8.49/8.83 8.49/8.83 [0](X) = 2 8.49/8.83 [abs](X) = 0 8.49/8.83 [if_abs](X1,X2,X3) = 0 8.49/8.83 [if_min](X1,X2,X3,X4) = 0 8.49/8.83 [if_sign](X1,X2) = 0 8.49/8.83 [min](X1,X2) = 0 8.49/8.83 [min'](X1,X2) = 0 8.49/8.83 [min''](X1,X2) = 0 8.49/8.83 [minus](X1,X2) = X1 + X2 + 1 8.49/8.83 [opp](X) = X + 1 8.49/8.83 [plus](X1,X2) = X1 + X2 8.49/8.83 [sign](X) = 0 8.49/8.83 [times](X1,X2) = X1 + X2 + 2 8.49/8.83 [1](X) = 1 8.49/8.83 [S] = 0 8.49/8.83 [j](X) = 1 8.49/8.83 [0#](X) = 0 8.49/8.83 [ABS](X) = 0 8.49/8.83 [IF_ABS](X1,X2,X3) = 0 8.49/8.83 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.83 [IF_SIGN](X1,X2) = 0 8.49/8.83 [MIN](X1,X2) = 0 8.49/8.83 [MIN'](X1,X2) = 0 8.49/8.83 [MIN''](X1,X2) = 0 8.49/8.83 [MINUS](X1,X2) = 0 8.49/8.83 [OPP](X) = 0 8.49/8.83 [PLUS](X1,X2) = 0 8.49/8.83 [SIGN](X) = 0 8.49/8.83 [TIMES](X1,X2) = 2.X1 + 2.X2 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 ->->Cycle: 8.49/8.83 ->->-> Pairs: 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> FAxioms: 8.49/8.83 plus(plus(x4,x5),x6) -> plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) -> plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) -> times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) -> times(x5,x4) 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) -> TIMES(x5,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 ->->-> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 Reduction Pairs Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 TIMES(times(S,x),x4) -> TIMES(S,x4) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Usable Equations: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> Usable Rules: 8.49/8.83 0(S) -> S 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Interpretation type: 8.49/8.83 Linear 8.49/8.83 ->Coefficients: 8.49/8.83 Natural Numbers 8.49/8.83 ->Dimension: 8.49/8.83 1 8.49/8.83 ->Bound: 8.49/8.83 2 8.49/8.83 ->Interpretation: 8.49/8.83 8.49/8.83 [0](X) = 1 8.49/8.83 [abs](X) = 0 8.49/8.83 [if_abs](X1,X2,X3) = 0 8.49/8.83 [if_min](X1,X2,X3,X4) = 0 8.49/8.83 [if_sign](X1,X2) = 0 8.49/8.83 [min](X1,X2) = 0 8.49/8.83 [min'](X1,X2) = 0 8.49/8.83 [min''](X1,X2) = 0 8.49/8.83 [minus](X1,X2) = X1 + X2 + 2 8.49/8.83 [opp](X) = X + 1 8.49/8.83 [plus](X1,X2) = X1 + X2 + 1 8.49/8.83 [sign](X) = 0 8.49/8.83 [times](X1,X2) = X1 + X2 + 1 8.49/8.83 [1](X) = 1 8.49/8.83 [S] = 1 8.49/8.83 [j](X) = 2 8.49/8.83 [0#](X) = 0 8.49/8.83 [ABS](X) = 0 8.49/8.83 [IF_ABS](X1,X2,X3) = 0 8.49/8.83 [IF_MIN](X1,X2,X3,X4) = 0 8.49/8.83 [IF_SIGN](X1,X2) = 0 8.49/8.83 [MIN](X1,X2) = 0 8.49/8.83 [MIN'](X1,X2) = 0 8.49/8.83 [MIN''](X1,X2) = 0 8.49/8.83 [MINUS](X1,X2) = 0 8.49/8.83 [OPP](X) = 0 8.49/8.83 [PLUS](X1,X2) = 0 8.49/8.83 [SIGN](X) = 0 8.49/8.83 [TIMES](X1,X2) = 2.X1 + 2.X2 8.49/8.83 8.49/8.83 Problem 1.3: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 TIMES(times(x4,x5),x6) = TIMES(x4,times(x5,x6)) 8.49/8.83 TIMES(x4,x5) = TIMES(x5,x4) 8.49/8.83 -> Pairs: 8.49/8.83 Empty 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 TIMES(times(x4,x5),x6) -> TIMES(x4,x5) 8.49/8.83 TIMES(x4,times(x5,x6)) -> TIMES(x5,x6) 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 There is no strongly connected component 8.49/8.83 8.49/8.83 The problem is finite. 8.49/8.83 8.49/8.83 Problem 1.4: 8.49/8.83 8.49/8.83 Subterm Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 IF_SIGN(0(x),y) -> IF_SIGN(x,y) 8.49/8.83 IF_SIGN(1(x),y) -> IF_SIGN(x,1(S)) 8.49/8.83 IF_SIGN(j(x),y) -> IF_SIGN(x,j(S)) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Projection: 8.49/8.83 pi(IF_SIGN) = [1] 8.49/8.83 8.49/8.83 Problem 1.4: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 Empty 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 There is no strongly connected component 8.49/8.83 8.49/8.83 The problem is finite. 8.49/8.83 8.49/8.83 Problem 1.5: 8.49/8.83 8.49/8.83 Subterm Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 IF_MIN(0(x),y,z,u) -> IF_MIN(x,y,z,u) 8.49/8.83 IF_MIN(1(x),y,z,u) -> IF_MIN(x,y,z,1(S)) 8.49/8.83 IF_MIN(j(x),y,z,u) -> IF_MIN(x,y,z,j(S)) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Projection: 8.49/8.83 pi(IF_MIN) = [1] 8.49/8.83 8.49/8.83 Problem 1.5: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 Empty 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 There is no strongly connected component 8.49/8.83 8.49/8.83 The problem is finite. 8.49/8.83 8.49/8.83 Problem 1.6: 8.49/8.83 8.49/8.83 Subterm Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 IF_ABS(0(x),y,z) -> IF_ABS(x,y,z) 8.49/8.83 IF_ABS(1(x),y,z) -> IF_ABS(x,y,1(S)) 8.49/8.83 IF_ABS(j(x),y,z) -> IF_ABS(x,y,j(S)) 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Projection: 8.49/8.83 pi(IF_ABS) = [1] 8.49/8.83 8.49/8.83 Problem 1.6: 8.49/8.83 8.49/8.83 SCC Processor: 8.49/8.83 -> FAxioms: 8.49/8.83 Empty 8.49/8.83 -> Pairs: 8.49/8.83 Empty 8.49/8.83 -> EAxioms: 8.49/8.83 plus(plus(x4,x5),x6) = plus(x4,plus(x5,x6)) 8.49/8.83 plus(x4,x5) = plus(x5,x4) 8.49/8.83 times(times(x4,x5),x6) = times(x4,times(x5,x6)) 8.49/8.83 times(x4,x5) = times(x5,x4) 8.49/8.83 -> Rules: 8.49/8.83 0(S) -> S 8.49/8.83 abs(x) -> if_abs(x,x,S) 8.49/8.83 if_abs(0(x),y,z) -> if_abs(x,y,z) 8.49/8.83 if_abs(1(x),y,z) -> if_abs(x,y,1(S)) 8.49/8.83 if_abs(S,x,1(S)) -> x 8.49/8.83 if_abs(S,x,S) -> S 8.49/8.83 if_abs(S,x,j(S)) -> opp(x) 8.49/8.83 if_abs(j(x),y,z) -> if_abs(x,y,j(S)) 8.49/8.83 if_min(0(x),y,z,u) -> if_min(x,y,z,u) 8.49/8.83 if_min(1(x),y,z,u) -> if_min(x,y,z,1(S)) 8.49/8.83 if_min(S,x,y,1(S)) -> x 8.49/8.83 if_min(S,x,y,S) -> x 8.49/8.83 if_min(S,x,y,j(S)) -> y 8.49/8.83 if_min(j(x),y,z,u) -> if_min(x,y,z,j(S)) 8.49/8.83 if_sign(0(x),y) -> if_sign(x,y) 8.49/8.83 if_sign(1(x),y) -> if_sign(x,1(S)) 8.49/8.83 if_sign(S,x) -> x 8.49/8.83 if_sign(j(x),y) -> if_sign(x,j(S)) 8.49/8.83 min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S) 8.49/8.83 min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S) 8.49/8.83 min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S) 8.49/8.83 minus(x,y) -> plus(opp(y),x) 8.49/8.83 opp(0(x)) -> 0(opp(x)) 8.49/8.83 opp(1(x)) -> j(opp(x)) 8.49/8.83 opp(S) -> S 8.49/8.83 opp(j(x)) -> 1(opp(x)) 8.49/8.83 plus(0(x),0(y)) -> 0(plus(x,y)) 8.49/8.83 plus(0(x),1(y)) -> 1(plus(x,y)) 8.49/8.83 plus(0(x),j(y)) -> j(plus(x,y)) 8.49/8.83 plus(1(x),1(y)) -> j(plus(1(S),plus(x,y))) 8.49/8.83 plus(1(x),j(y)) -> 0(plus(x,y)) 8.49/8.83 plus(S,x) -> x 8.49/8.83 plus(j(x),j(y)) -> 1(plus(j(S),plus(x,y))) 8.49/8.83 sign(x) -> if_sign(x,S) 8.49/8.83 times(0(x),y) -> 0(times(x,y)) 8.49/8.83 times(1(x),y) -> plus(0(times(x,y)),y) 8.49/8.83 times(S,x) -> S 8.49/8.83 times(j(x),y) -> minus(0(times(x,y)),y) 8.49/8.83 -> SRules: 8.49/8.83 Empty 8.49/8.83 ->Strongly Connected Components: 8.49/8.83 There is no strongly connected component 8.49/8.83 8.49/8.83 The problem is finite. 8.49/8.83 EOF