MAYBE We are left with following problem, upon which TcT provides the certificate MAYBE. Strict Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) , fac(x) -> help(x, 0()) , help(x, c) -> if(lt(c, x), x, c) , if(true(), x, c) -> times(s(c), help(x, s(c))) , if(false(), x, c) -> s(0()) } Obligation: innermost runtime complexity Answer: MAYBE We add following dependency tuples: Strict DPs: { lt^#(x, 0()) -> c_1() , lt^#(0(), s(x)) -> c_2() , lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , fac^#(x) -> c_4(help^#(x, 0())) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) , if^#(false(), x, c) -> c_7() } and mark the set of starting terms. We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { lt^#(x, 0()) -> c_1() , lt^#(0(), s(x)) -> c_2() , lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , fac^#(x) -> c_4(help^#(x, 0())) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) , if^#(false(), x, c) -> c_7() } Weak Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) , fac(x) -> help(x, 0()) , help(x, c) -> if(lt(c, x), x, c) , if(true(), x, c) -> times(s(c), help(x, s(c))) , if(false(), x, c) -> s(0()) } Obligation: innermost runtime complexity Answer: MAYBE We estimate the number of application of {1,2,7} by applications of Pre({1,2,7}) = {3,5}. Here rules are labeled as follows: DPs: { 1: lt^#(x, 0()) -> c_1() , 2: lt^#(0(), s(x)) -> c_2() , 3: lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , 4: fac^#(x) -> c_4(help^#(x, 0())) , 5: help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , 6: if^#(true(), x, c) -> c_6(help^#(x, s(c))) , 7: if^#(false(), x, c) -> c_7() } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , fac^#(x) -> c_4(help^#(x, 0())) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) } Weak DPs: { lt^#(x, 0()) -> c_1() , lt^#(0(), s(x)) -> c_2() , if^#(false(), x, c) -> c_7() } Weak Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) , fac(x) -> help(x, 0()) , help(x, c) -> if(lt(c, x), x, c) , if(true(), x, c) -> times(s(c), help(x, s(c))) , if(false(), x, c) -> s(0()) } Obligation: innermost runtime complexity Answer: MAYBE The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. { lt^#(x, 0()) -> c_1() , lt^#(0(), s(x)) -> c_2() , if^#(false(), x, c) -> c_7() } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , fac^#(x) -> c_4(help^#(x, 0())) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) } Weak Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) , fac(x) -> help(x, 0()) , help(x, c) -> if(lt(c, x), x, c) , if(true(), x, c) -> times(s(c), help(x, s(c))) , if(false(), x, c) -> s(0()) } Obligation: innermost runtime complexity Answer: MAYBE Consider the dependency graph 1: lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) -->_1 lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) :1 2: fac^#(x) -> c_4(help^#(x, 0())) -->_1 help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) :3 3: help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) -->_1 if^#(true(), x, c) -> c_6(help^#(x, s(c))) :4 -->_2 lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) :1 4: if^#(true(), x, c) -> c_6(help^#(x, s(c))) -->_1 help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) :3 Following roots of the dependency graph are removed, as the considered set of starting terms is closed under reduction with respect to these rules (modulo compound contexts). { fac^#(x) -> c_4(help^#(x, 0())) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) } Weak Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) , fac(x) -> help(x, 0()) , help(x, c) -> if(lt(c, x), x, c) , if(true(), x, c) -> times(s(c), help(x, s(c))) , if(false(), x, c) -> s(0()) } Obligation: innermost runtime complexity Answer: MAYBE We replace rewrite rules by usable rules: Weak Usable Rules: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { lt^#(s(x), s(y)) -> c_3(lt^#(x, y)) , help^#(x, c) -> c_5(if^#(lt(c, x), x, c), lt^#(c, x)) , if^#(true(), x, c) -> c_6(help^#(x, s(c))) } Weak Trs: { lt(x, 0()) -> false() , lt(0(), s(x)) -> true() , lt(s(x), s(y)) -> lt(x, y) } Obligation: innermost runtime complexity Answer: MAYBE None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'matrices' failed due to the following reason: None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'matrix interpretation of dimension 4' failed due to the following reason: The input cannot be shown compatible 2) 'matrix interpretation of dimension 3' failed due to the following reason: The input cannot be shown compatible 3) 'matrix interpretation of dimension 3' failed due to the following reason: The input cannot be shown compatible 4) 'matrix interpretation of dimension 2' failed due to the following reason: The input cannot be shown compatible 5) 'matrix interpretation of dimension 2' failed due to the following reason: The input cannot be shown compatible 6) 'matrix interpretation of dimension 1' failed due to the following reason: The input cannot be shown compatible 2) 'empty' failed due to the following reason: Empty strict component of the problem is NOT empty. Arrrr..