YES (ignored inputs)COMMENT translated from Cops 189 *** Computating Strongly Quasi-Reducible Parts *** TRS: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), +(0,?y) -> ?y, +(s(?x),?y) -> s(+(?x,?y)), dbl(0) -> 0, dbl(s(?x)) -> s(s(dbl(?x))), +(+(?x,?y),?z) -> +(?x,+(?y,?z)), +(?x,?y) -> +(?y,?x), dbl(+(?x,?y)) -> +(dbl(?x),dbl(?y)) ] Constructors: {0,s} Defined function symbols: {+,dbl} Constructor subsystem: [ ] Rule part & Conj Part: [ +(0,?y) -> ?y, +(s(?x),?y) -> s(+(?x,?y)), dbl(0) -> 0, dbl(s(?x)) -> s(s(dbl(?x))) ] [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), +(+(?x,?y),?z) -> +(?x,+(?y,?z)), dbl(+(?x,?y)) -> +(dbl(?x),dbl(?y)), +(?x,?y) -> +(?y,?x) ] Rule part & Conj Part: [ +(?x,0) -> ?x, +(?x,s(?y)) -> s(+(?x,?y)), dbl(0) -> 0, dbl(s(?x)) -> s(s(dbl(?x))) ] [ +(0,?y) -> ?y, +(s(?x),?y) -> s(+(?x,?y)), +(+(?x,?y),?z) -> +(?x,+(?y,?z)), dbl(+(?x,?y)) -> +(dbl(?x),dbl(?y)), +(?x,?y) -> +(?y,?x) ] *** Ground Confluence Check by Rewriting Induction *** Sort: {Nat} Signature: [ + : Nat,Nat -> Nat, 0 : Nat, s : Nat -> Nat, dbl : Nat -> Nat ] Rule Part: [ +(0,?y) -> ?y, +(s(?x),?y) -> s(+(?x,?y)), dbl(0) -> 0, dbl(s(?x)) -> s(s(dbl(?x))) ] Conjecture Part: [ +(?x,0) = ?x, +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(?x,?y) = +(?y,?x) ] Precedence (by weight): {(+,3),(0,1),(s,0),(dbl,2)} Rule part is confluent. R0 is ground confluent. Check conj part consists of inductive theorems of R0. Rules: [ +(0,?y) -> ?y, +(s(?x),?y) -> s(+(?x,?y)), dbl(0) -> 0, dbl(s(?x)) -> s(s(dbl(?x))) ] Conjectures: [ +(?x,0) = ?x, +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(?x,?y) = +(?y,?x) ] STEP 0 ES: [ +(?x,0) = ?x, +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(?x,?y) = +(?y,?x) ] HS: [ ] ES0: [ +(?x,0) = ?x, +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(?x,?y) = +(?y,?x) ] HS0: [ ] ES1: [ +(?x,0) = ?x, +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(?x,?y) = +(?y,?x) ] HS1: [ ] Expand +(?x,0) = ?x [ 0 = 0, s(+(?x_2,0)) = s(?x_2) ] ES2: [ 0 = 0, s(+(?x_2,0)) = s(?x_2), +(?x,?y) = +(?y,?x), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS2: [ +(?x,0) -> ?x ] STEP 1 ES: [ 0 = 0, s(+(?x_2,0)) = s(?x_2), +(?x,?y) = +(?y,?x), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS: [ +(?x,0) -> ?x ] ES0: [ 0 = 0, s(?x_2) = s(?x_2), +(?x,?y) = +(?y,?x), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS0: [ +(?x,0) -> ?x ] ES1: [ +(?x,?y) = +(?y,?x), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS1: [ +(?x,0) -> ?x ] Expand +(?x,?y) = +(?y,?x) [ ?y_1 = +(?y_1,0), s(+(?x_2,?y_2)) = +(?y_2,s(?x_2)) ] ES2: [ ?y_1 = +(?y_1,0), s(+(?x_2,?y_2)) = +(?y_2,s(?x_2)), +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)) ] HS2: [ +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] STEP 2 ES: [ ?y_1 = +(?y_1,0), s(+(?x_2,?y_2)) = +(?y_2,s(?x_2)), +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)) ] HS: [ +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES0: [ ?y_1 = ?y_1, s(+(?x_2,?y_2)) = +(?y_2,s(?x_2)), +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)) ] HS0: [ +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES1: [ s(+(?x_2,?y_2)) = +(?y_2,s(?x_2)), +(?x,s(?y)) = s(+(?x,?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)) ] HS1: [ +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] Expand +(?y_2,s(?x_2)) = s(+(?x_2,?y_2)) [ s(?x) = s(+(?x,0)), s(+(?x_2,s(?x))) = s(+(?x,s(?x_2))) ] ES2: [ s(?x) = s(+(?x,0)), s(+(?x_2,s(?x))) = s(+(?x,s(?x_2))), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS2: [ +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] STEP 3 ES: [ s(?x) = s(+(?x,0)), s(+(?x_2,s(?x))) = s(+(?x,s(?x_2))), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), +(?x,s(?y)) = s(+(?x,?y)) ] HS: [ +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES0: [ s(?x) = s(?x), s(s(+(?x,?x_2))) = s(s(+(?x_2,?x))), dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)), s(+(?y,?x)) = s(+(?x,?y)) ] HS0: [ +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES1: [ dbl(+(?x,?y)) = +(dbl(?x),dbl(?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)) ] HS1: [ +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] Expand +(dbl(?x),dbl(?y)) = dbl(+(?x,?y)) [ +(0,dbl(?y)) = dbl(+(0,?y)), +(s(s(dbl(?x_3))),dbl(?y)) = dbl(+(s(?x_3),?y)) ] ES2: [ dbl(?y) = dbl(+(0,?y)), s(s(+(dbl(?x_3),dbl(?y)))) = dbl(+(s(?x_3),?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)) ] HS2: [ +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] STEP 4 ES: [ dbl(?y) = dbl(+(0,?y)), s(s(+(dbl(?x_3),dbl(?y)))) = dbl(+(s(?x_3),?y)), +(+(?x,?y),?z) = +(?x,+(?y,?z)) ] HS: [ +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES0: [ dbl(?y) = dbl(?y), s(s(dbl(+(?x_3,?y)))) = s(s(dbl(+(?x_3,?y)))), +(+(?x,?y),?z) = +(?x,+(?y,?z)) ] HS0: [ +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES1: [ +(+(?x,?y),?z) = +(?x,+(?y,?z)) ] HS1: [ +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] Expand +(+(?x,?y),?z) = +(?x,+(?y,?z)) [ +(?y_1,?z) = +(0,+(?y_1,?z)), +(s(+(?x_2,?y_2)),?z) = +(s(?x_2),+(?y_2,?z)) ] ES2: [ +(?y_1,?z) = +(0,+(?y_1,?z)), s(+(+(?x_2,?y_2),?z)) = +(s(?x_2),+(?y_2,?z)) ] HS2: [ +(+(?x,?y),?z) -> +(?x,+(?y,?z)), +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] STEP 5 ES: [ +(?y_1,?z) = +(0,+(?y_1,?z)), s(+(+(?x_2,?y_2),?z)) = +(s(?x_2),+(?y_2,?z)) ] HS: [ +(+(?x,?y),?z) -> +(?x,+(?y,?z)), +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES0: [ +(?y_1,?z) = +(?y_1,?z), s(+(+(?x_2,?y_2),?z)) = s(+(?x_2,+(?y_2,?z))) ] HS0: [ +(+(?x,?y),?z) -> +(?x,+(?y,?z)), +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] ES1: [ ] HS1: [ +(+(?x,?y),?z) -> +(?x,+(?y,?z)), +(dbl(?x),dbl(?y)) -> dbl(+(?x,?y)), +(?y_2,s(?x_2)) -> s(+(?x_2,?y_2)), +(?x,?y) -> +(?y,?x), +(?x,0) -> ?x ] Conj part consisits of inductive theorems of R0. examples/fromCops/cr/189.trs: Success(GCR) (13 msec.)