MAYBE We are left with following problem, upon which TcT provides the certificate MAYBE. Strict Trs: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) , gcd(0(), y) -> y , gcd(s(x), 0()) -> s(x) , gcd(s(x), s(y)) -> if_gcd(le(y, x), s(x), s(y)) , if_gcd(true(), s(x), s(y)) -> gcd(minus(x, y), s(y)) , if_gcd(false(), s(x), s(y)) -> gcd(minus(y, x), s(x)) } Obligation: innermost runtime complexity Answer: MAYBE We add following dependency tuples: Strict DPs: { le^#(0(), y) -> c_1() , le^#(s(x), 0()) -> c_2() , le^#(s(x), s(y)) -> c_3(le^#(x, y)) , minus^#(0(), y) -> c_4() , minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , if_minus^#(true(), s(x), y) -> c_6() , if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , gcd^#(0(), y) -> c_8() , gcd^#(s(x), 0()) -> c_9() , gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } and mark the set of starting terms. We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { le^#(0(), y) -> c_1() , le^#(s(x), 0()) -> c_2() , le^#(s(x), s(y)) -> c_3(le^#(x, y)) , minus^#(0(), y) -> c_4() , minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , if_minus^#(true(), s(x), y) -> c_6() , if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , gcd^#(0(), y) -> c_8() , gcd^#(s(x), 0()) -> c_9() , gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } Weak Trs: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) , gcd(0(), y) -> y , gcd(s(x), 0()) -> s(x) , gcd(s(x), s(y)) -> if_gcd(le(y, x), s(x), s(y)) , if_gcd(true(), s(x), s(y)) -> gcd(minus(x, y), s(y)) , if_gcd(false(), s(x), s(y)) -> gcd(minus(y, x), s(x)) } Obligation: innermost runtime complexity Answer: MAYBE We estimate the number of application of {1,2,4,6,8,9} by applications of Pre({1,2,4,6,8,9}) = {3,5,7,10,11,12}. Here rules are labeled as follows: DPs: { 1: le^#(0(), y) -> c_1() , 2: le^#(s(x), 0()) -> c_2() , 3: le^#(s(x), s(y)) -> c_3(le^#(x, y)) , 4: minus^#(0(), y) -> c_4() , 5: minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , 6: if_minus^#(true(), s(x), y) -> c_6() , 7: if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , 8: gcd^#(0(), y) -> c_8() , 9: gcd^#(s(x), 0()) -> c_9() , 10: gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , 11: if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , 12: if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { le^#(s(x), s(y)) -> c_3(le^#(x, y)) , minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } Weak DPs: { le^#(0(), y) -> c_1() , le^#(s(x), 0()) -> c_2() , minus^#(0(), y) -> c_4() , if_minus^#(true(), s(x), y) -> c_6() , gcd^#(0(), y) -> c_8() , gcd^#(s(x), 0()) -> c_9() } Weak Trs: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) , gcd(0(), y) -> y , gcd(s(x), 0()) -> s(x) , gcd(s(x), s(y)) -> if_gcd(le(y, x), s(x), s(y)) , if_gcd(true(), s(x), s(y)) -> gcd(minus(x, y), s(y)) , if_gcd(false(), s(x), s(y)) -> gcd(minus(y, x), s(x)) } 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. { le^#(0(), y) -> c_1() , le^#(s(x), 0()) -> c_2() , minus^#(0(), y) -> c_4() , if_minus^#(true(), s(x), y) -> c_6() , gcd^#(0(), y) -> c_8() , gcd^#(s(x), 0()) -> c_9() } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { le^#(s(x), s(y)) -> c_3(le^#(x, y)) , minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } Weak Trs: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) , gcd(0(), y) -> y , gcd(s(x), 0()) -> s(x) , gcd(s(x), s(y)) -> if_gcd(le(y, x), s(x), s(y)) , if_gcd(true(), s(x), s(y)) -> gcd(minus(x, y), s(y)) , if_gcd(false(), s(x), s(y)) -> gcd(minus(y, x), s(x)) } Obligation: innermost runtime complexity Answer: MAYBE We replace rewrite rules by usable rules: Weak Usable Rules: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { le^#(s(x), s(y)) -> c_3(le^#(x, y)) , minus^#(s(x), y) -> c_5(if_minus^#(le(s(x), y), s(x), y), le^#(s(x), y)) , if_minus^#(false(), s(x), y) -> c_7(minus^#(x, y)) , gcd^#(s(x), s(y)) -> c_10(if_gcd^#(le(y, x), s(x), s(y)), le^#(y, x)) , if_gcd^#(true(), s(x), s(y)) -> c_11(gcd^#(minus(x, y), s(y)), minus^#(x, y)) , if_gcd^#(false(), s(x), s(y)) -> c_12(gcd^#(minus(y, x), s(x)), minus^#(y, x)) } Weak Trs: { le(0(), y) -> true() , le(s(x), 0()) -> false() , le(s(x), s(y)) -> le(x, y) , minus(0(), y) -> 0() , minus(s(x), y) -> if_minus(le(s(x), y), s(x), y) , if_minus(true(), s(x), y) -> 0() , if_minus(false(), s(x), y) -> s(minus(x, y)) } Obligation: innermost runtime complexity Answer: MAYBE The input cannot be shown compatible Arrrr..