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: 1 enrichment: match automaton: final states: {5} transitions: p0(4) -> 4* fact{#,1}(12) -> 13* p1(11) -> 12* s1(10) -> 11* fact{#,0}(4) -> 5* s0(4) -> 4* 4 -> 10* 10 -> 12* 13 -> 5* 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