YES Problem: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Proof: DP Processor: DPs: f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) EDG Processor: DPs: f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) graph: f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) -> f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) -> f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) -> f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) -> f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) -> f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) -> f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(f(f(a(),x),b()),b()) -> f#(x,b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) -> f#(f(f(a(),x),b()),b()) -> f#(x,b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) -> f#(f(f(a(),x),b()),b()) -> f#(a(),f(f(x,b()),b())) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) -> f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) -> f#(a(),f(a(),f(a(),f(x,b())))) -> f#(f(a(),f(a(),f(a(),x))),b()) SCC Processor: #sccs: 2 #rules: 6 #arcs: 28/64 DPs: f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),x) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0, x1) = x1, [f](x0, x1) = x0 + x1, [b] = 0, [a] = 1 orientation: f#(a(),f(a(),f(a(),f(x,b())))) = x + 2 >= x + 2 = f#(a(),f(a(),f(a(),x))) f#(a(),f(a(),f(a(),f(x,b())))) = x + 2 >= x + 1 = f#(a(),f(a(),x)) f#(a(),f(a(),f(a(),f(x,b())))) = x + 2 >= x = f#(a(),x) f(a(),f(a(),f(a(),f(x,b())))) = x + 3 >= x + 3 = f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) = x + 1 >= x + 1 = f(f(a(),f(f(x,b()),b())),b()) problem: DPs: f#(a(),f(a(),f(a(),f(x,b())))) -> f#(a(),f(a(),f(a(),x))) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Bounds Processor: bound: 1 enrichment: match-dp automaton: final states: {5} transitions: f{#,1}(8,10) -> 5* a1() -> 8* f1(2,14) -> 15* f1(8,1) -> 9* f1(8,3) -> 9* f1(8,9) -> 10* f1(14,14) -> 15* f1(9,14) -> 15* f1(1,14) -> 15* f1(8,2) -> 9* f1(8,10) -> 15* f1(3,14) -> 15* f1(15,14) -> 15,10,9 f1(10,14) -> 15* b1() -> 14* f{#,0}(3,7) -> 5* a0() -> 3* f0(3,1) -> 2* f0(3,3) -> 2* f0(1,2) -> 2* f0(2,1) -> 6,7,2 f0(2,3) -> 2* f0(3,2) -> 2* f0(3,4) -> 6* f0(3,6) -> 7* f0(1,1) -> 2* f0(1,3) -> 2* f0(2,2) -> 2* b0() -> 1* 1 -> 4* 2 -> 4* 3 -> 4* problem: DPs: TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Qed DPs: f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) f#(f(f(a(),x),b()),b()) -> f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) -> f#(x,b()) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0, x1) = x0, [f](x0, x1) = x0 + x1, [b] = 0, [a] = 1 orientation: f#(f(f(a(),x),b()),b()) = x + 1 >= x + 1 = f#(f(a(),f(f(x,b()),b())),b()) f#(f(f(a(),x),b()),b()) = x + 1 >= x = f#(f(x,b()),b()) f#(f(f(a(),x),b()),b()) = x + 1 >= x = f#(x,b()) f(a(),f(a(),f(a(),f(x,b())))) = x + 3 >= x + 3 = f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) = x + 1 >= x + 1 = f(f(a(),f(f(x,b()),b())),b()) problem: DPs: f#(f(f(a(),x),b()),b()) -> f#(f(a(),f(f(x,b()),b())),b()) TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Bounds Processor: bound: 0 enrichment: match-dp automaton: final states: {5} transitions: f{#,0}(8,1) -> 5* a0() -> 2* f0(3,1) -> 7,3 f0(3,3) -> 3* f0(1,2) -> 3* f0(2,1) -> 3* f0(2,3) -> 3* f0(2,7) -> 8* f0(3,2) -> 3* f0(4,1) -> 6* f0(6,1) -> 7* f0(1,1) -> 3* f0(1,3) -> 3* f0(2,2) -> 3* b0() -> 1* 1 -> 4* 2 -> 4* 3 -> 4* problem: DPs: TRS: f(a(),f(a(),f(a(),f(x,b())))) -> f(f(a(),f(a(),f(a(),x))),b()) f(f(f(a(),x),b()),b()) -> f(f(a(),f(f(x,b()),b())),b()) Qed