YES Problem: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Proof: DP Processor: DPs: fact#(s(x)) -> p#(s(x)) fact#(s(x)) -> fact#(p(s(x))) fact#(s(x)) -> *#(s(x),fact(p(s(x)))) *#(s(x),y) -> *#(x,y) *#(s(x),y) -> +#(*(x,y),y) +#(x,s(y)) -> +#(x,y) TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) EDG Processor: DPs: fact#(s(x)) -> p#(s(x)) fact#(s(x)) -> fact#(p(s(x))) fact#(s(x)) -> *#(s(x),fact(p(s(x)))) *#(s(x),y) -> *#(x,y) *#(s(x),y) -> +#(*(x,y),y) +#(x,s(y)) -> +#(x,y) TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) graph: +#(x,s(y)) -> +#(x,y) -> +#(x,s(y)) -> +#(x,y) *#(s(x),y) -> +#(*(x,y),y) -> +#(x,s(y)) -> +#(x,y) *#(s(x),y) -> *#(x,y) -> *#(s(x),y) -> *#(x,y) *#(s(x),y) -> *#(x,y) -> *#(s(x),y) -> +#(*(x,y),y) fact#(s(x)) -> *#(s(x),fact(p(s(x)))) -> *#(s(x),y) -> *#(x,y) fact#(s(x)) -> *#(s(x),fact(p(s(x)))) -> *#(s(x),y) -> +#(*(x,y),y) fact#(s(x)) -> fact#(p(s(x))) -> fact#(s(x)) -> p#(s(x)) fact#(s(x)) -> fact#(p(s(x))) -> fact#(s(x)) -> fact#(p(s(x))) fact#(s(x)) -> fact#(p(s(x))) -> fact#(s(x)) -> *#(s(x),fact(p(s(x)))) SCC Processor: #sccs: 3 #rules: 3 #arcs: 9/36 DPs: fact#(s(x)) -> fact#(p(s(x))) TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Usable Rule Processor: DPs: fact#(s(x)) -> fact#(p(s(x))) TRS: p(s(x)) -> x Bounds Processor: bound: 0 enrichment: match automaton: final states: {2,1} transitions: f100() -> 2* fact{#,0}(4) -> 1* p0(3) -> 4* s0(2) -> 3* 2 -> 4* problem: DPs: TRS: p(s(x)) -> x Qed DPs: *#(s(x),y) -> *#(x,y) TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Subterm Criterion Processor: simple projection: pi(*#) = 0 problem: DPs: TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Qed DPs: +#(x,s(y)) -> +#(x,y) TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Subterm Criterion Processor: simple projection: pi(+#) = 1 problem: DPs: TRS: p(s(x)) -> x fact(0()) -> s(0()) fact(s(x)) -> *(s(x),fact(p(s(x)))) *(0(),y) -> 0() *(s(x),y) -> +(*(x,y),y) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) Qed