We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Strict Trs:
  { f(c(c(a(), y, a()), b(x, z), a())) -> b(y, f(c(f(a()), z, z)))
  , f(b(b(x, f(y)), z)) -> c(z, x, f(b(b(f(a()), y), y)))
  , c(b(a(), a()), b(y, z), x) -> b(a(), b(z, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

We add the following dependency tuples:

Strict DPs:
  { f^#(c(c(a(), y, a()), b(x, z), a())) ->
    c_1(f^#(c(f(a()), z, z)), c^#(f(a()), z, z), f^#(a()))
  , f^#(b(b(x, f(y)), z)) ->
    c_2(c^#(z, x, f(b(b(f(a()), y), y))),
        f^#(b(b(f(a()), y), y)),
        f^#(a()))
  , c^#(b(a(), a()), b(y, z), x) -> c_3() }

and mark the set of starting terms.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Strict DPs:
  { f^#(c(c(a(), y, a()), b(x, z), a())) ->
    c_1(f^#(c(f(a()), z, z)), c^#(f(a()), z, z), f^#(a()))
  , f^#(b(b(x, f(y)), z)) ->
    c_2(c^#(z, x, f(b(b(f(a()), y), y))),
        f^#(b(b(f(a()), y), y)),
        f^#(a()))
  , c^#(b(a(), a()), b(y, z), x) -> c_3() }
Weak Trs:
  { f(c(c(a(), y, a()), b(x, z), a())) -> b(y, f(c(f(a()), z, z)))
  , f(b(b(x, f(y)), z)) -> c(z, x, f(b(b(f(a()), y), y)))
  , c(b(a(), a()), b(y, z), x) -> b(a(), b(z, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

Consider the dependency graph:

  1: f^#(c(c(a(), y, a()), b(x, z), a())) ->
     c_1(f^#(c(f(a()), z, z)), c^#(f(a()), z, z), f^#(a()))
  
  2: f^#(b(b(x, f(y)), z)) ->
     c_2(c^#(z, x, f(b(b(f(a()), y), y))),
         f^#(b(b(f(a()), y), y)),
         f^#(a()))
     -->_1 c^#(b(a(), a()), b(y, z), x) -> c_3() :3
     -->_2 f^#(b(b(x, f(y)), z)) ->
           c_2(c^#(z, x, f(b(b(f(a()), y), y))),
               f^#(b(b(f(a()), y), y)),
               f^#(a())) :2
  
  3: c^#(b(a(), a()), b(y, z), x) -> c_3()
  

Only the nodes {3} are reachable from nodes {3} that start
derivation from marked basic terms. The nodes not reachable are
removed from the problem.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Strict DPs: { c^#(b(a(), a()), b(y, z), x) -> c_3() }
Weak Trs:
  { f(c(c(a(), y, a()), b(x, z), a())) -> b(y, f(c(f(a()), z, z)))
  , f(b(b(x, f(y)), z)) -> c(z, x, f(b(b(f(a()), y), y)))
  , c(b(a(), a()), b(y, z), x) -> b(a(), b(z, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

We estimate the number of application of {1} by applications of
Pre({1}) = {}. Here rules are labeled as follows:

  DPs:
    { 1: c^#(b(a(), a()), b(y, z), x) -> c_3() }

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Weak DPs: { c^#(b(a(), a()), b(y, z), x) -> c_3() }
Weak Trs:
  { f(c(c(a(), y, a()), b(x, z), a())) -> b(y, f(c(f(a()), z, z)))
  , f(b(b(x, f(y)), z)) -> c(z, x, f(b(b(f(a()), y), y)))
  , c(b(a(), a()), b(y, z), x) -> b(a(), b(z, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

The following weak DPs constitute a sub-graph of the DG that is
closed under successors. The DPs are removed.

{ c^#(b(a(), a()), b(y, z), x) -> c_3() }

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Weak Trs:
  { f(c(c(a(), y, a()), b(x, z), a())) -> b(y, f(c(f(a()), z, z)))
  , f(b(b(x, f(y)), z)) -> c(z, x, f(b(b(f(a()), y), y)))
  , c(b(a(), a()), b(y, z), x) -> b(a(), b(z, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

No rule is usable, rules are removed from the input problem.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Rules: Empty
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

Empty rules are trivially bounded

Hurray, we answered YES(O(1),O(1))