(ignored inputs)COMMENT addition + commutative law Rewrite Rules: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), +(?x,?y) -> +(?y,?x) ] Apply Direct Methods... Inner CPs: [ ] Outer CPs: [ ?x = +(0,?x), s(+(?x_1,?y_1)) = +(s(?y_1),?x_1) ] Overlay, check Innermost Termination... unknown Innermost Terminating unknown Knuth&Bendix Linear unknown Development Closed unknown Strongly Closed unknown Upside-Parallel-Closed/Outside-Closed (inner) Parallel CPs: (not computed) unknown Toyama (Parallel CPs) Simultaneous CPs: [ s(+(?x,?y_2)) = +(s(?y_2),?x), ?x = +(0,?x), +(s(?y),?x) = s(+(?x,?y)), +(0,?x) = ?x ] unknown Okui (Simultaneous CPs) unknown Strongly Depth-Preserving & Non-E-Overlapping check Locally Decreasing Diagrams by Rule Labelling... Critical Pair <+(0,?x_2), ?x_2> by Rules <2, 0> preceded by [] joinable by a reduction of rules <[([],2),([],0)], []> Critical Pair <+(s(?y_1),?x_2), s(+(?x_2,?y_1))> by Rules <2, 1> preceded by [] joinable by a reduction of rules <[([],2),([],1)], []> unknown Diagram Decreasing check by Reduction-Preserving Completion... STEP: 1 (parallel) S: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)) ] P: [ +(?x,?y) -> +(?y,?x) ] S: terminating CP(S,S): PCP_in(symP,S): CP(S,symP): --> => no --> => no check joinability condition: check modulo reachablity from ?x to +(0,?x): maybe not reachable check modulo reachablity from s(+(?x,?y)) to +(s(?y),?x): maybe not reachable failed failure(Step 1) [ +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] Added S-Rules: [ +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] Added P-Rules: [ ] replace: +(?x,s(?y)) -> s(+(?x,?y)) => +(?x,s(?y)) -> s(+(?y,?x)) STEP: 2 (linear) S: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)) ] P: [ +(?x,?y) -> +(?y,?x) ] S: terminating CP(S,S): CP_in(symP,S): CP(S,symP): --> => no --> => no check joinability condition: check modulo reachablity from ?x to +(0,?x): maybe not reachable check modulo reachablity from s(+(?x,?y)) to +(s(?y),?x): maybe not reachable failed failure(Step 2) [ +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] Added S-Rules: [ +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] Added P-Rules: [ ] replace: +(?x,s(?y)) -> s(+(?x,?y)) => +(?x,s(?y)) -> s(+(?y,?x)) STEP: 3 (relative) S: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)) ] P: [ +(?x,?y) -> +(?y,?x) ] Check relative termination: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)) ] [ +(?x,?y) -> +(?y,?x) ] Polynomial Interpretation: +:= (1)+(2)*x1*x1+(1)*x1*x2+(2)*x2*x2 0:= (8) s:= (1)*x1 retract +(?x,0) -> ?x Polynomial Interpretation: +:= (2)*x1*x1+(1)*x1*x2+(2)*x2*x2 0:= 0 s:= (4)+(1)*x1 relatively terminating S/P: relatively terminating check CP condition: failed failure(Step 3) STEP: 4 (parallel) S: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] P: [ +(?x,?y) -> +(?y,?x) ] S: terminating CP(S,S): --> => yes <0, 0> --> <0, 0> => yes --> => yes --> => yes PCP_in(symP,S): CP(S,symP): --> => yes --> => yes --> => yes --> => yes S: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), +(s(?y),?x) -> s(+(?x,?y)), +(0,?x) -> ?x ] P: [ +(?x,?y) -> +(?y,?x) ] Success Reduction-Preserving Completion Direct Methods: CR Final result: CR /local-scratch/hzankl/2012/cops2012/106.trs: Success(CR) (118 msec.)