MAYBE We are left with following problem, upon which TcT provides the certificate MAYBE. Strict Trs: { eq(0(), 0()) -> true() , eq(0(), s(x)) -> false() , eq(s(x), 0()) -> false() , eq(s(x), s(y)) -> eq(x, y) , or(true(), y) -> true() , or(false(), y) -> y , union(empty(), h) -> h , union(edge(x, y, i), h) -> edge(x, y, union(i, h)) , isEmpty(empty()) -> true() , isEmpty(edge(x, y, i)) -> false() , from(edge(x, y, i)) -> x , to(edge(x, y, i)) -> y , rest(empty()) -> empty() , rest(edge(x, y, i)) -> i , reach(x, y, i, h) -> if1(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h) , if1(true(), b1, b2, b3, x, y, i, h) -> true() , if1(false(), b1, b2, b3, x, y, i, h) -> if2(b1, b2, b3, x, y, i, h) , if2(true(), b2, b3, x, y, i, h) -> false() , if2(false(), b2, b3, x, y, i, h) -> if3(b2, b3, x, y, i, h) , if3(true(), b3, x, y, i, h) -> if4(b3, x, y, i, h) , if3(false(), b3, x, y, i, h) -> reach(x, y, rest(i), edge(from(i), to(i), h)) , if4(true(), x, y, i, h) -> true() , if4(false(), x, y, i, h) -> or(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty())) } Obligation: runtime complexity Answer: MAYBE None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'WithProblem (timeout of 60 seconds)' failed due to the following reason: Computation stopped due to timeout after 60.0 seconds. 2) 'Best' failed due to the following reason: None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'WithProblem (timeout of 30 seconds) (timeout of 60 seconds)' failed due to the following reason: Computation stopped due to timeout after 30.0 seconds. 2) 'Best' failed due to the following reason: None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'Polynomial Path Order (PS) (timeout of 60 seconds)' failed due to the following reason: The processor is inapplicable, reason: Processor only applicable for innermost runtime complexity analysis 2) 'bsearch-popstar (timeout of 60 seconds)' failed due to the following reason: The processor is inapplicable, reason: Processor only applicable for innermost runtime complexity analysis 3) 'Fastest (timeout of 5 seconds) (timeout of 60 seconds)' failed due to the following reason: None of the processors succeeded. Details of failed attempt(s): ----------------------------- 1) 'Bounds with perSymbol-enrichment and initial automaton 'match'' failed due to the following reason: match-boundness of the problem could not be verified. 2) 'Bounds with minimal-enrichment and initial automaton 'match'' failed due to the following reason: match-boundness of the problem could not be verified. 3) 'Innermost Weak Dependency Pairs (timeout of 60 seconds)' failed due to the following reason: We add the following weak dependency pairs: Strict DPs: { eq^#(0(), 0()) -> c_1() , eq^#(0(), s(x)) -> c_2() , eq^#(s(x), 0()) -> c_3() , eq^#(s(x), s(y)) -> c_4(eq^#(x, y)) , or^#(true(), y) -> c_5() , or^#(false(), y) -> c_6(y) , union^#(empty(), h) -> c_7(h) , union^#(edge(x, y, i), h) -> c_8(x, y, union^#(i, h)) , isEmpty^#(empty()) -> c_9() , isEmpty^#(edge(x, y, i)) -> c_10() , from^#(edge(x, y, i)) -> c_11(x) , to^#(edge(x, y, i)) -> c_12(y) , rest^#(empty()) -> c_13() , rest^#(edge(x, y, i)) -> c_14(i) , reach^#(x, y, i, h) -> c_15(if1^#(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h)) , if1^#(true(), b1, b2, b3, x, y, i, h) -> c_16() , if1^#(false(), b1, b2, b3, x, y, i, h) -> c_17(if2^#(b1, b2, b3, x, y, i, h)) , if2^#(true(), b2, b3, x, y, i, h) -> c_18() , if2^#(false(), b2, b3, x, y, i, h) -> c_19(if3^#(b2, b3, x, y, i, h)) , if3^#(true(), b3, x, y, i, h) -> c_20(if4^#(b3, x, y, i, h)) , if3^#(false(), b3, x, y, i, h) -> c_21(reach^#(x, y, rest(i), edge(from(i), to(i), h))) , if4^#(true(), x, y, i, h) -> c_22() , if4^#(false(), x, y, i, h) -> c_23(or^#(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty()))) } and mark the set of starting terms. We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { eq^#(0(), 0()) -> c_1() , eq^#(0(), s(x)) -> c_2() , eq^#(s(x), 0()) -> c_3() , eq^#(s(x), s(y)) -> c_4(eq^#(x, y)) , or^#(true(), y) -> c_5() , or^#(false(), y) -> c_6(y) , union^#(empty(), h) -> c_7(h) , union^#(edge(x, y, i), h) -> c_8(x, y, union^#(i, h)) , isEmpty^#(empty()) -> c_9() , isEmpty^#(edge(x, y, i)) -> c_10() , from^#(edge(x, y, i)) -> c_11(x) , to^#(edge(x, y, i)) -> c_12(y) , rest^#(empty()) -> c_13() , rest^#(edge(x, y, i)) -> c_14(i) , reach^#(x, y, i, h) -> c_15(if1^#(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h)) , if1^#(true(), b1, b2, b3, x, y, i, h) -> c_16() , if1^#(false(), b1, b2, b3, x, y, i, h) -> c_17(if2^#(b1, b2, b3, x, y, i, h)) , if2^#(true(), b2, b3, x, y, i, h) -> c_18() , if2^#(false(), b2, b3, x, y, i, h) -> c_19(if3^#(b2, b3, x, y, i, h)) , if3^#(true(), b3, x, y, i, h) -> c_20(if4^#(b3, x, y, i, h)) , if3^#(false(), b3, x, y, i, h) -> c_21(reach^#(x, y, rest(i), edge(from(i), to(i), h))) , if4^#(true(), x, y, i, h) -> c_22() , if4^#(false(), x, y, i, h) -> c_23(or^#(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty()))) } Strict Trs: { eq(0(), 0()) -> true() , eq(0(), s(x)) -> false() , eq(s(x), 0()) -> false() , eq(s(x), s(y)) -> eq(x, y) , or(true(), y) -> true() , or(false(), y) -> y , union(empty(), h) -> h , union(edge(x, y, i), h) -> edge(x, y, union(i, h)) , isEmpty(empty()) -> true() , isEmpty(edge(x, y, i)) -> false() , from(edge(x, y, i)) -> x , to(edge(x, y, i)) -> y , rest(empty()) -> empty() , rest(edge(x, y, i)) -> i , reach(x, y, i, h) -> if1(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h) , if1(true(), b1, b2, b3, x, y, i, h) -> true() , if1(false(), b1, b2, b3, x, y, i, h) -> if2(b1, b2, b3, x, y, i, h) , if2(true(), b2, b3, x, y, i, h) -> false() , if2(false(), b2, b3, x, y, i, h) -> if3(b2, b3, x, y, i, h) , if3(true(), b3, x, y, i, h) -> if4(b3, x, y, i, h) , if3(false(), b3, x, y, i, h) -> reach(x, y, rest(i), edge(from(i), to(i), h)) , if4(true(), x, y, i, h) -> true() , if4(false(), x, y, i, h) -> or(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty())) } Obligation: runtime complexity Answer: MAYBE We estimate the number of application of {1,2,3,5,9,10,13,16,18,22} by applications of Pre({1,2,3,5,9,10,13,16,18,22}) = {4,6,7,8,11,12,14,15,17,20,23}. Here rules are labeled as follows: DPs: { 1: eq^#(0(), 0()) -> c_1() , 2: eq^#(0(), s(x)) -> c_2() , 3: eq^#(s(x), 0()) -> c_3() , 4: eq^#(s(x), s(y)) -> c_4(eq^#(x, y)) , 5: or^#(true(), y) -> c_5() , 6: or^#(false(), y) -> c_6(y) , 7: union^#(empty(), h) -> c_7(h) , 8: union^#(edge(x, y, i), h) -> c_8(x, y, union^#(i, h)) , 9: isEmpty^#(empty()) -> c_9() , 10: isEmpty^#(edge(x, y, i)) -> c_10() , 11: from^#(edge(x, y, i)) -> c_11(x) , 12: to^#(edge(x, y, i)) -> c_12(y) , 13: rest^#(empty()) -> c_13() , 14: rest^#(edge(x, y, i)) -> c_14(i) , 15: reach^#(x, y, i, h) -> c_15(if1^#(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h)) , 16: if1^#(true(), b1, b2, b3, x, y, i, h) -> c_16() , 17: if1^#(false(), b1, b2, b3, x, y, i, h) -> c_17(if2^#(b1, b2, b3, x, y, i, h)) , 18: if2^#(true(), b2, b3, x, y, i, h) -> c_18() , 19: if2^#(false(), b2, b3, x, y, i, h) -> c_19(if3^#(b2, b3, x, y, i, h)) , 20: if3^#(true(), b3, x, y, i, h) -> c_20(if4^#(b3, x, y, i, h)) , 21: if3^#(false(), b3, x, y, i, h) -> c_21(reach^#(x, y, rest(i), edge(from(i), to(i), h))) , 22: if4^#(true(), x, y, i, h) -> c_22() , 23: if4^#(false(), x, y, i, h) -> c_23(or^#(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty()))) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { eq^#(s(x), s(y)) -> c_4(eq^#(x, y)) , or^#(false(), y) -> c_6(y) , union^#(empty(), h) -> c_7(h) , union^#(edge(x, y, i), h) -> c_8(x, y, union^#(i, h)) , from^#(edge(x, y, i)) -> c_11(x) , to^#(edge(x, y, i)) -> c_12(y) , rest^#(edge(x, y, i)) -> c_14(i) , reach^#(x, y, i, h) -> c_15(if1^#(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h)) , if1^#(false(), b1, b2, b3, x, y, i, h) -> c_17(if2^#(b1, b2, b3, x, y, i, h)) , if2^#(false(), b2, b3, x, y, i, h) -> c_19(if3^#(b2, b3, x, y, i, h)) , if3^#(true(), b3, x, y, i, h) -> c_20(if4^#(b3, x, y, i, h)) , if3^#(false(), b3, x, y, i, h) -> c_21(reach^#(x, y, rest(i), edge(from(i), to(i), h))) , if4^#(false(), x, y, i, h) -> c_23(or^#(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty()))) } Strict Trs: { eq(0(), 0()) -> true() , eq(0(), s(x)) -> false() , eq(s(x), 0()) -> false() , eq(s(x), s(y)) -> eq(x, y) , or(true(), y) -> true() , or(false(), y) -> y , union(empty(), h) -> h , union(edge(x, y, i), h) -> edge(x, y, union(i, h)) , isEmpty(empty()) -> true() , isEmpty(edge(x, y, i)) -> false() , from(edge(x, y, i)) -> x , to(edge(x, y, i)) -> y , rest(empty()) -> empty() , rest(edge(x, y, i)) -> i , reach(x, y, i, h) -> if1(eq(x, y), isEmpty(i), eq(x, from(i)), eq(y, to(i)), x, y, i, h) , if1(true(), b1, b2, b3, x, y, i, h) -> true() , if1(false(), b1, b2, b3, x, y, i, h) -> if2(b1, b2, b3, x, y, i, h) , if2(true(), b2, b3, x, y, i, h) -> false() , if2(false(), b2, b3, x, y, i, h) -> if3(b2, b3, x, y, i, h) , if3(true(), b3, x, y, i, h) -> if4(b3, x, y, i, h) , if3(false(), b3, x, y, i, h) -> reach(x, y, rest(i), edge(from(i), to(i), h)) , if4(true(), x, y, i, h) -> true() , if4(false(), x, y, i, h) -> or(reach(x, y, rest(i), h), reach(to(i), y, union(rest(i), h), empty())) } Weak DPs: { eq^#(0(), 0()) -> c_1() , eq^#(0(), s(x)) -> c_2() , eq^#(s(x), 0()) -> c_3() , or^#(true(), y) -> c_5() , isEmpty^#(empty()) -> c_9() , isEmpty^#(edge(x, y, i)) -> c_10() , rest^#(empty()) -> c_13() , if1^#(true(), b1, b2, b3, x, y, i, h) -> c_16() , if2^#(true(), b2, b3, x, y, i, h) -> c_18() , if4^#(true(), x, y, i, h) -> c_22() } Obligation: runtime complexity Answer: MAYBE Empty strict component of the problem is NOT empty. Arrrr..