YES Problem: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Proof: DP Processor: DPs: -#(s(x),s(y)) -> -#(x,y) f#(s(x)) -> f#(x) f#(s(x)) -> g#(f(x)) f#(s(x)) -> -#(s(x),g(f(x))) g#(s(x)) -> g#(x) g#(s(x)) -> f#(g(x)) g#(s(x)) -> -#(s(x),f(g(x))) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) EDG Processor: DPs: -#(s(x),s(y)) -> -#(x,y) f#(s(x)) -> f#(x) f#(s(x)) -> g#(f(x)) f#(s(x)) -> -#(s(x),g(f(x))) g#(s(x)) -> g#(x) g#(s(x)) -> f#(g(x)) g#(s(x)) -> -#(s(x),f(g(x))) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) graph: g#(s(x)) -> g#(x) -> g#(s(x)) -> g#(x) g#(s(x)) -> g#(x) -> g#(s(x)) -> f#(g(x)) g#(s(x)) -> g#(x) -> g#(s(x)) -> -#(s(x),f(g(x))) g#(s(x)) -> f#(g(x)) -> f#(s(x)) -> f#(x) g#(s(x)) -> f#(g(x)) -> f#(s(x)) -> g#(f(x)) g#(s(x)) -> f#(g(x)) -> f#(s(x)) -> -#(s(x),g(f(x))) g#(s(x)) -> -#(s(x),f(g(x))) -> -#(s(x),s(y)) -> -#(x,y) f#(s(x)) -> g#(f(x)) -> g#(s(x)) -> g#(x) f#(s(x)) -> g#(f(x)) -> g#(s(x)) -> f#(g(x)) f#(s(x)) -> g#(f(x)) -> g#(s(x)) -> -#(s(x),f(g(x))) f#(s(x)) -> f#(x) -> f#(s(x)) -> f#(x) f#(s(x)) -> f#(x) -> f#(s(x)) -> g#(f(x)) f#(s(x)) -> f#(x) -> f#(s(x)) -> -#(s(x),g(f(x))) f#(s(x)) -> -#(s(x),g(f(x))) -> -#(s(x),s(y)) -> -#(x,y) -#(s(x),s(y)) -> -#(x,y) -> -#(s(x),s(y)) -> -#(x,y) SCC Processor: #sccs: 2 #rules: 5 #arcs: 15/49 DPs: g#(s(x)) -> g#(x) g#(s(x)) -> f#(g(x)) f#(s(x)) -> g#(f(x)) f#(s(x)) -> f#(x) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Matrix Interpretation Processor: dimension: 1 interpretation: [g#](x0) = x0 + 1, [f#](x0) = x0 + 1, [g](x0) = x0 + 1, [f](x0) = x0 + 1, [s](x0) = x0 + 1, [-](x0, x1) = x0, [0] = 0 orientation: g#(s(x)) = x + 2 >= x + 1 = g#(x) g#(s(x)) = x + 2 >= x + 2 = f#(g(x)) f#(s(x)) = x + 2 >= x + 2 = g#(f(x)) f#(s(x)) = x + 2 >= x + 1 = f#(x) -(x,0()) = x >= x = x -(0(),s(y)) = 0 >= 0 = 0() -(s(x),s(y)) = x + 1 >= x = -(x,y) f(0()) = 1 >= 0 = 0() f(s(x)) = x + 2 >= x + 1 = -(s(x),g(f(x))) g(0()) = 1 >= 1 = s(0()) g(s(x)) = x + 2 >= x + 1 = -(s(x),f(g(x))) problem: DPs: g#(s(x)) -> f#(g(x)) f#(s(x)) -> g#(f(x)) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Matrix Interpretation Processor: dimension: 1 interpretation: [g#](x0) = x0 + 1, [f#](x0) = x0 + 1, [g](x0) = x0 + 1, [f](x0) = x0, [s](x0) = x0 + 1, [-](x0, x1) = x0, [0] = 0 orientation: g#(s(x)) = x + 2 >= x + 2 = f#(g(x)) f#(s(x)) = x + 2 >= x + 1 = g#(f(x)) -(x,0()) = x >= x = x -(0(),s(y)) = 0 >= 0 = 0() -(s(x),s(y)) = x + 1 >= x = -(x,y) f(0()) = 0 >= 0 = 0() f(s(x)) = x + 1 >= x + 1 = -(s(x),g(f(x))) g(0()) = 1 >= 1 = s(0()) g(s(x)) = x + 2 >= x + 1 = -(s(x),f(g(x))) problem: DPs: g#(s(x)) -> f#(g(x)) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Matrix Interpretation Processor: dimension: 1 interpretation: [g#](x0) = 1, [f#](x0) = 0, [g](x0) = x0, [f](x0) = x0, [s](x0) = x0, [-](x0, x1) = x0, [0] = 0 orientation: g#(s(x)) = 1 >= 0 = f#(g(x)) -(x,0()) = x >= x = x -(0(),s(y)) = 0 >= 0 = 0() -(s(x),s(y)) = x >= x = -(x,y) f(0()) = 0 >= 0 = 0() f(s(x)) = x >= x = -(s(x),g(f(x))) g(0()) = 0 >= 0 = s(0()) g(s(x)) = x >= x = -(s(x),f(g(x))) problem: DPs: TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Qed DPs: -#(s(x),s(y)) -> -#(x,y) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Subterm Criterion Processor: simple projection: pi(-#) = 1 problem: DPs: TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) f(0()) -> 0() f(s(x)) -> -(s(x),g(f(x))) g(0()) -> s(0()) g(s(x)) -> -(s(x),f(g(x))) Qed