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