YES(O(1),O(n^4)) 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 We are left with following problem, upon which TcT provides the 154.75/60.08 certificate YES(O(1),O(n^4)). 154.75/60.08 154.75/60.08 Strict Trs: 154.75/60.08 { f(a(), x) -> f(b(), f(c(), x)) 154.75/60.08 , f(a(), f(b(), x)) -> f(b(), f(a(), x)) 154.75/60.08 , f(a(), f(c(), x)) -> f(c(), f(a(), x)) 154.75/60.08 , f(d(), f(c(), x)) -> f(d(), f(a(), x)) } 154.75/60.08 Obligation: 154.75/60.08 derivational complexity 154.75/60.08 Answer: 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 We uncurry the input using the following uncurry rules. 154.75/60.08 154.75/60.08 { f(a(), x_1) -> a_1(x_1) 154.75/60.08 , f(b(), x_1) -> b_1(x_1) 154.75/60.08 , f(c(), x_1) -> c_1(x_1) 154.75/60.08 , f(d(), x_1) -> d_1(x_1) } 154.75/60.08 154.75/60.08 We are left with following problem, upon which TcT provides the 154.75/60.08 certificate YES(O(1),O(n^4)). 154.75/60.08 154.75/60.08 Strict Trs: 154.75/60.08 { a_1(x) -> b_1(c_1(x)) 154.75/60.08 , a_1(b_1(x)) -> b_1(a_1(x)) 154.75/60.08 , a_1(c_1(x)) -> c_1(a_1(x)) 154.75/60.08 , d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.08 Weak Trs: 154.75/60.08 { f(a(), x_1) -> a_1(x_1) 154.75/60.08 , f(b(), x_1) -> b_1(x_1) 154.75/60.08 , f(c(), x_1) -> c_1(x_1) 154.75/60.08 , f(d(), x_1) -> d_1(x_1) } 154.75/60.08 Obligation: 154.75/60.08 derivational complexity 154.75/60.08 Answer: 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 The weightgap principle applies (using the following nonconstant 154.75/60.08 growth matrix-interpretation) 154.75/60.08 154.75/60.08 TcT has computed the following triangular matrix interpretation. 154.75/60.08 Note that the diagonal of the component-wise maxima of 154.75/60.08 interpretation-entries contains no more than 1 non-zero entries. 154.75/60.08 154.75/60.08 [f](x1, x2) = [1] x1 + [1] x2 + [1] 154.75/60.08 154.75/60.08 [a_1](x1) = [1] x1 + [1] 154.75/60.08 154.75/60.08 [b_1](x1) = [1] x1 + [0] 154.75/60.08 154.75/60.08 [c_1](x1) = [1] x1 + [0] 154.75/60.08 154.75/60.08 [d_1](x1) = [1] x1 + [0] 154.75/60.08 154.75/60.08 [a] = [2] 154.75/60.08 154.75/60.08 [b] = [1] 154.75/60.08 154.75/60.08 [c] = [1] 154.75/60.08 154.75/60.08 [d] = [1] 154.75/60.08 154.75/60.08 The order satisfies the following ordering constraints: 154.75/60.08 154.75/60.08 [f(a(), x_1)] = [1] x_1 + [3] 154.75/60.08 > [1] x_1 + [1] 154.75/60.08 = [a_1(x_1)] 154.75/60.08 154.75/60.08 [f(b(), x_1)] = [1] x_1 + [2] 154.75/60.08 > [1] x_1 + [0] 154.75/60.08 = [b_1(x_1)] 154.75/60.08 154.75/60.08 [f(c(), x_1)] = [1] x_1 + [2] 154.75/60.08 > [1] x_1 + [0] 154.75/60.08 = [c_1(x_1)] 154.75/60.08 154.75/60.08 [f(d(), x_1)] = [1] x_1 + [2] 154.75/60.08 > [1] x_1 + [0] 154.75/60.08 = [d_1(x_1)] 154.75/60.08 154.75/60.08 [a_1(x)] = [1] x + [1] 154.75/60.08 > [1] x + [0] 154.75/60.08 = [b_1(c_1(x))] 154.75/60.08 154.75/60.08 [a_1(b_1(x))] = [1] x + [1] 154.75/60.08 >= [1] x + [1] 154.75/60.08 = [b_1(a_1(x))] 154.75/60.08 154.75/60.08 [a_1(c_1(x))] = [1] x + [1] 154.75/60.08 >= [1] x + [1] 154.75/60.08 = [c_1(a_1(x))] 154.75/60.08 154.75/60.08 [d_1(c_1(x))] = [1] x + [0] 154.75/60.08 ? [1] x + [1] 154.75/60.08 = [d_1(a_1(x))] 154.75/60.08 154.75/60.08 154.75/60.08 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 154.75/60.08 154.75/60.08 We are left with following problem, upon which TcT provides the 154.75/60.08 certificate YES(O(1),O(n^4)). 154.75/60.08 154.75/60.08 Strict Trs: 154.75/60.08 { a_1(b_1(x)) -> b_1(a_1(x)) 154.75/60.08 , a_1(c_1(x)) -> c_1(a_1(x)) 154.75/60.08 , d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.08 Weak Trs: 154.75/60.08 { f(a(), x_1) -> a_1(x_1) 154.75/60.08 , f(b(), x_1) -> b_1(x_1) 154.75/60.08 , f(c(), x_1) -> c_1(x_1) 154.75/60.08 , f(d(), x_1) -> d_1(x_1) 154.75/60.08 , a_1(x) -> b_1(c_1(x)) } 154.75/60.08 Obligation: 154.75/60.08 derivational complexity 154.75/60.08 Answer: 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 We use the processor 'matrix interpretation of dimension 2' to 154.75/60.08 orient following rules strictly. 154.75/60.08 154.75/60.08 Trs: { d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.08 154.75/60.08 The induced complexity on above rules (modulo remaining rules) is 154.75/60.08 YES(?,O(n^2)) . These rules are moved into the corresponding weak 154.75/60.08 component(s). 154.75/60.08 154.75/60.08 Sub-proof: 154.75/60.08 ---------- 154.75/60.08 TcT has computed the following triangular matrix interpretation. 154.75/60.08 154.75/60.08 [f](x1, x2) = [1 0] x1 + [1 2] x2 + [0] 154.75/60.08 [0 0] [0 1] [1] 154.75/60.08 154.75/60.08 [a_1](x1) = [1 0] x1 + [1] 154.75/60.08 [0 1] [0] 154.75/60.08 154.75/60.08 [b_1](x1) = [1 0] x1 + [0] 154.75/60.08 [0 0] [0] 154.75/60.08 154.75/60.08 [c_1](x1) = [1 0] x1 + [0] 154.75/60.08 [0 1] [1] 154.75/60.08 154.75/60.08 [d_1](x1) = [1 2] x1 + [0] 154.75/60.08 [0 0] [0] 154.75/60.08 154.75/60.08 [a] = [1] 154.75/60.08 [0] 154.75/60.08 154.75/60.08 [b] = [0] 154.75/60.08 [0] 154.75/60.08 154.75/60.08 [c] = [0] 154.75/60.08 [0] 154.75/60.08 154.75/60.08 [d] = [0] 154.75/60.08 [0] 154.75/60.08 154.75/60.08 The order satisfies the following ordering constraints: 154.75/60.08 154.75/60.08 [f(a(), x_1)] = [1 2] x_1 + [1] 154.75/60.08 [0 1] [1] 154.75/60.08 >= [1 0] x_1 + [1] 154.75/60.08 [0 1] [0] 154.75/60.08 = [a_1(x_1)] 154.75/60.08 154.75/60.08 [f(b(), x_1)] = [1 2] x_1 + [0] 154.75/60.08 [0 1] [1] 154.75/60.08 >= [1 0] x_1 + [0] 154.75/60.08 [0 0] [0] 154.75/60.08 = [b_1(x_1)] 154.75/60.08 154.75/60.08 [f(c(), x_1)] = [1 2] x_1 + [0] 154.75/60.08 [0 1] [1] 154.75/60.08 >= [1 0] x_1 + [0] 154.75/60.08 [0 1] [1] 154.75/60.08 = [c_1(x_1)] 154.75/60.08 154.75/60.08 [f(d(), x_1)] = [1 2] x_1 + [0] 154.75/60.08 [0 1] [1] 154.75/60.08 >= [1 2] x_1 + [0] 154.75/60.08 [0 0] [0] 154.75/60.08 = [d_1(x_1)] 154.75/60.08 154.75/60.08 [a_1(x)] = [1 0] x + [1] 154.75/60.08 [0 1] [0] 154.75/60.08 > [1 0] x + [0] 154.75/60.08 [0 0] [0] 154.75/60.08 = [b_1(c_1(x))] 154.75/60.08 154.75/60.08 [a_1(b_1(x))] = [1 0] x + [1] 154.75/60.08 [0 0] [0] 154.75/60.08 >= [1 0] x + [1] 154.75/60.08 [0 0] [0] 154.75/60.08 = [b_1(a_1(x))] 154.75/60.08 154.75/60.08 [a_1(c_1(x))] = [1 0] x + [1] 154.75/60.08 [0 1] [1] 154.75/60.08 >= [1 0] x + [1] 154.75/60.08 [0 1] [1] 154.75/60.08 = [c_1(a_1(x))] 154.75/60.08 154.75/60.08 [d_1(c_1(x))] = [1 2] x + [2] 154.75/60.08 [0 0] [0] 154.75/60.08 > [1 2] x + [1] 154.75/60.08 [0 0] [0] 154.75/60.08 = [d_1(a_1(x))] 154.75/60.08 154.75/60.08 154.75/60.08 We return to the main proof. 154.75/60.08 154.75/60.08 We are left with following problem, upon which TcT provides the 154.75/60.08 certificate YES(O(1),O(n^4)). 154.75/60.08 154.75/60.08 Strict Trs: 154.75/60.08 { a_1(b_1(x)) -> b_1(a_1(x)) 154.75/60.08 , a_1(c_1(x)) -> c_1(a_1(x)) } 154.75/60.08 Weak Trs: 154.75/60.08 { f(a(), x_1) -> a_1(x_1) 154.75/60.08 , f(b(), x_1) -> b_1(x_1) 154.75/60.08 , f(c(), x_1) -> c_1(x_1) 154.75/60.08 , f(d(), x_1) -> d_1(x_1) 154.75/60.08 , a_1(x) -> b_1(c_1(x)) 154.75/60.08 , d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.08 Obligation: 154.75/60.08 derivational complexity 154.75/60.08 Answer: 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 We use the processor 'matrix interpretation of dimension 4' to 154.75/60.08 orient following rules strictly. 154.75/60.08 154.75/60.08 Trs: { a_1(b_1(x)) -> b_1(a_1(x)) } 154.75/60.08 154.75/60.08 The induced complexity on above rules (modulo remaining rules) is 154.75/60.08 YES(?,O(n^4)) . These rules are moved into the corresponding weak 154.75/60.08 component(s). 154.75/60.08 154.75/60.08 Sub-proof: 154.75/60.08 ---------- 154.75/60.08 TcT has computed the following triangular matrix interpretation. 154.75/60.08 154.75/60.08 [1 1 0 1] [1 1 1 1] [1] 154.75/60.08 [f](x1, x2) = [0 1 1 0] x1 + [0 1 1 1] x2 + [1] 154.75/60.08 [0 0 0 1] [0 0 1 1] [1] 154.75/60.08 [0 0 0 0] [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 0 0 1] [0] 154.75/60.08 [a_1](x1) = [0 1 1 0] x1 + [0] 154.75/60.08 [0 0 1 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 0 0 0] [0] 154.75/60.08 [b_1](x1) = [0 0 0 0] x1 + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 0 0 0] [0] 154.75/60.08 [c_1](x1) = [0 1 1 1] x1 + [0] 154.75/60.08 [0 0 1 0] [1] 154.75/60.08 [0 0 0 1] [0] 154.75/60.08 154.75/60.08 [1 1 0 0] [1] 154.75/60.08 [d_1](x1) = [0 0 0 0] x1 + [1] 154.75/60.08 [0 0 1 1] [1] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 154.75/60.08 [0] 154.75/60.08 [a] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [b] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [c] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [d] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 The order satisfies the following ordering constraints: 154.75/60.08 154.75/60.08 [f(a(), x_1)] = [1 1 1 1] [2] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 > [1 0 0 1] [0] 154.75/60.08 [0 1 1 0] x_1 + [0] 154.75/60.08 [0 0 1 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 = [a_1(x_1)] 154.75/60.08 154.75/60.08 [f(b(), x_1)] = [1 1 1 1] [3] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 > [1 0 0 0] [0] 154.75/60.08 [0 0 0 0] x_1 + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 = [b_1(x_1)] 154.75/60.08 154.75/60.08 [f(c(), x_1)] = [1 1 1 1] [3] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 > [1 0 0 0] [0] 154.75/60.08 [0 1 1 1] x_1 + [0] 154.75/60.08 [0 0 1 0] [1] 154.75/60.08 [0 0 0 1] [0] 154.75/60.08 = [c_1(x_1)] 154.75/60.08 154.75/60.08 [f(d(), x_1)] = [1 1 1 1] [3] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 > [1 1 0 0] [1] 154.75/60.08 [0 0 0 0] x_1 + [1] 154.75/60.08 [0 0 1 1] [1] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 = [d_1(x_1)] 154.75/60.08 154.75/60.08 [a_1(x)] = [1 0 0 1] [0] 154.75/60.08 [0 1 1 0] x + [0] 154.75/60.08 [0 0 1 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 >= [1 0 0 0] [0] 154.75/60.08 [0 0 0 0] x + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 = [b_1(c_1(x))] 154.75/60.08 154.75/60.08 [a_1(b_1(x))] = [1 0 0 1] [1] 154.75/60.08 [0 0 0 0] x + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [2] 154.75/60.08 > [1 0 0 1] [0] 154.75/60.08 [0 0 0 0] x + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [2] 154.75/60.08 = [b_1(a_1(x))] 154.75/60.08 154.75/60.08 [a_1(c_1(x))] = [1 0 0 1] [0] 154.75/60.08 [0 1 2 1] x + [1] 154.75/60.08 [0 0 1 0] [1] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 >= [1 0 0 1] [0] 154.75/60.08 [0 1 2 1] x + [1] 154.75/60.08 [0 0 1 0] [1] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 = [c_1(a_1(x))] 154.75/60.08 154.75/60.08 [d_1(c_1(x))] = [1 1 1 1] [1] 154.75/60.08 [0 0 0 0] x + [1] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 >= [1 1 1 1] [1] 154.75/60.08 [0 0 0 0] x + [1] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 = [d_1(a_1(x))] 154.75/60.08 154.75/60.08 154.75/60.08 We return to the main proof. 154.75/60.08 154.75/60.08 We are left with following problem, upon which TcT provides the 154.75/60.08 certificate YES(O(1),O(n^4)). 154.75/60.08 154.75/60.08 Strict Trs: { a_1(c_1(x)) -> c_1(a_1(x)) } 154.75/60.08 Weak Trs: 154.75/60.08 { f(a(), x_1) -> a_1(x_1) 154.75/60.08 , f(b(), x_1) -> b_1(x_1) 154.75/60.08 , f(c(), x_1) -> c_1(x_1) 154.75/60.08 , f(d(), x_1) -> d_1(x_1) 154.75/60.08 , a_1(x) -> b_1(c_1(x)) 154.75/60.08 , a_1(b_1(x)) -> b_1(a_1(x)) 154.75/60.08 , d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.08 Obligation: 154.75/60.08 derivational complexity 154.75/60.08 Answer: 154.75/60.08 YES(O(1),O(n^4)) 154.75/60.08 154.75/60.08 We use the processor 'matrix interpretation of dimension 4' to 154.75/60.08 orient following rules strictly. 154.75/60.08 154.75/60.08 Trs: { a_1(c_1(x)) -> c_1(a_1(x)) } 154.75/60.08 154.75/60.08 The induced complexity on above rules (modulo remaining rules) is 154.75/60.08 YES(?,O(n^4)) . These rules are moved into the corresponding weak 154.75/60.08 component(s). 154.75/60.08 154.75/60.08 Sub-proof: 154.75/60.08 ---------- 154.75/60.08 TcT has computed the following triangular matrix interpretation. 154.75/60.08 154.75/60.08 [1 1 0 1] [1 1 1 1] [1] 154.75/60.08 [f](x1, x2) = [0 1 0 1] x1 + [0 1 1 1] x2 + [1] 154.75/60.08 [0 0 1 0] [0 0 1 1] [1] 154.75/60.08 [0 0 0 1] [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 0 0 1] [0] 154.75/60.08 [a_1](x1) = [0 1 1 0] x1 + [0] 154.75/60.08 [0 0 1 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 0 0 0] [0] 154.75/60.08 [b_1](x1) = [0 0 0 0] x1 + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [0] 154.75/60.08 154.75/60.08 [1 0 0 0] [0] 154.75/60.08 [c_1](x1) = [0 1 1 1] x1 + [0] 154.75/60.08 [0 0 1 0] [1] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 154.75/60.08 [1 1 0 0] [1] 154.75/60.08 [d_1](x1) = [0 0 0 0] x1 + [1] 154.75/60.08 [0 0 1 1] [1] 154.75/60.08 [0 0 0 0] [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [a] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [b] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [0] 154.75/60.08 [c] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 [1] 154.75/60.08 [d] = [0] 154.75/60.08 [1] 154.75/60.08 [1] 154.75/60.08 154.75/60.08 The order satisfies the following ordering constraints: 154.75/60.08 154.75/60.08 [f(a(), x_1)] = [1 1 1 1] [3] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [2] 154.75/60.08 > [1 0 0 1] [0] 154.75/60.08 [0 1 1 0] x_1 + [0] 154.75/60.08 [0 0 1 0] [0] 154.75/60.08 [0 0 0 1] [1] 154.75/60.08 = [a_1(x_1)] 154.75/60.08 154.75/60.08 [f(b(), x_1)] = [1 1 1 1] [3] 154.75/60.08 [0 1 1 1] x_1 + [2] 154.75/60.08 [0 0 1 1] [2] 154.75/60.08 [0 0 0 1] [2] 154.75/60.08 > [1 0 0 0] [0] 154.75/60.08 [0 0 0 0] x_1 + [0] 154.75/60.08 [0 0 0 0] [0] 154.75/60.08 [0 0 0 1] [0] 154.75/60.09 = [b_1(x_1)] 154.75/60.09 154.75/60.09 [f(c(), x_1)] = [1 1 1 1] [2] 154.75/60.09 [0 1 1 1] x_1 + [2] 154.75/60.09 [0 0 1 1] [2] 154.75/60.09 [0 0 0 1] [2] 154.75/60.09 > [1 0 0 0] [0] 154.75/60.09 [0 1 1 1] x_1 + [0] 154.75/60.09 [0 0 1 0] [1] 154.75/60.09 [0 0 0 1] [1] 154.75/60.09 = [c_1(x_1)] 154.75/60.09 154.75/60.09 [f(d(), x_1)] = [1 1 1 1] [3] 154.75/60.09 [0 1 1 1] x_1 + [2] 154.75/60.09 [0 0 1 1] [2] 154.75/60.09 [0 0 0 1] [2] 154.75/60.09 > [1 1 0 0] [1] 154.75/60.09 [0 0 0 0] x_1 + [1] 154.75/60.09 [0 0 1 1] [1] 154.75/60.09 [0 0 0 0] [1] 154.75/60.09 = [d_1(x_1)] 154.75/60.09 154.75/60.09 [a_1(x)] = [1 0 0 1] [0] 154.75/60.09 [0 1 1 0] x + [0] 154.75/60.09 [0 0 1 0] [0] 154.75/60.09 [0 0 0 1] [1] 154.75/60.09 >= [1 0 0 0] [0] 154.75/60.09 [0 0 0 0] x + [0] 154.75/60.09 [0 0 0 0] [0] 154.75/60.09 [0 0 0 1] [1] 154.75/60.09 = [b_1(c_1(x))] 154.75/60.09 154.75/60.09 [a_1(b_1(x))] = [1 0 0 1] [0] 154.75/60.09 [0 0 0 0] x + [0] 154.75/60.09 [0 0 0 0] [0] 154.75/60.09 [0 0 0 1] [1] 154.75/60.09 >= [1 0 0 1] [0] 154.75/60.09 [0 0 0 0] x + [0] 154.75/60.09 [0 0 0 0] [0] 154.75/60.09 [0 0 0 1] [1] 154.75/60.09 = [b_1(a_1(x))] 154.75/60.09 154.75/60.09 [a_1(c_1(x))] = [1 0 0 1] [1] 154.75/60.09 [0 1 2 1] x + [1] 154.75/60.09 [0 0 1 0] [1] 154.75/60.09 [0 0 0 1] [2] 154.75/60.09 > [1 0 0 1] [0] 154.75/60.09 [0 1 2 1] x + [1] 154.75/60.09 [0 0 1 0] [1] 154.75/60.09 [0 0 0 1] [2] 154.75/60.09 = [c_1(a_1(x))] 154.75/60.09 154.75/60.09 [d_1(c_1(x))] = [1 1 1 1] [1] 154.75/60.09 [0 0 0 0] x + [1] 154.75/60.09 [0 0 1 1] [3] 154.75/60.09 [0 0 0 0] [1] 154.75/60.09 >= [1 1 1 1] [1] 154.75/60.09 [0 0 0 0] x + [1] 154.75/60.09 [0 0 1 1] [2] 154.75/60.09 [0 0 0 0] [1] 154.75/60.09 = [d_1(a_1(x))] 154.75/60.09 154.75/60.09 154.75/60.09 We return to the main proof. 154.75/60.09 154.75/60.09 We are left with following problem, upon which TcT provides the 154.75/60.09 certificate YES(O(1),O(1)). 154.75/60.09 154.75/60.09 Weak Trs: 154.75/60.09 { f(a(), x_1) -> a_1(x_1) 154.75/60.09 , f(b(), x_1) -> b_1(x_1) 154.75/60.09 , f(c(), x_1) -> c_1(x_1) 154.75/60.09 , f(d(), x_1) -> d_1(x_1) 154.75/60.09 , a_1(x) -> b_1(c_1(x)) 154.75/60.09 , a_1(b_1(x)) -> b_1(a_1(x)) 154.75/60.09 , a_1(c_1(x)) -> c_1(a_1(x)) 154.75/60.09 , d_1(c_1(x)) -> d_1(a_1(x)) } 154.75/60.09 Obligation: 154.75/60.09 derivational complexity 154.75/60.09 Answer: 154.75/60.09 YES(O(1),O(1)) 154.75/60.09 154.75/60.09 Empty rules are trivially bounded 154.75/60.09 154.75/60.09 Hurray, we answered YES(O(1),O(n^4)) 154.96/60.10 EOF