MAYBE We are left with following problem, upon which TcT provides the certificate MAYBE. Strict Trs: { msort(nil()) -> nil() , msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))) , min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } Obligation: innermost runtime complexity Answer: MAYBE We add following dependency tuples: Strict DPs: { msort^#(nil()) -> c_1() , msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , min^#(x, nil()) -> c_3() , min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , del^#(x, nil()) -> c_5() , del^#(x, .(y, z)) -> c_6(del^#(x, z)) } and mark the set of starting terms. We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { msort^#(nil()) -> c_1() , msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , min^#(x, nil()) -> c_3() , min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , del^#(x, nil()) -> c_5() , del^#(x, .(y, z)) -> c_6(del^#(x, z)) } Weak Trs: { msort(nil()) -> nil() , msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))) , min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } Obligation: innermost runtime complexity Answer: MAYBE We estimate the number of application of {1,3,5} by applications of Pre({1,3,5}) = {2,4,6}. Here rules are labeled as follows: DPs: { 1: msort^#(nil()) -> c_1() , 2: msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , 3: min^#(x, nil()) -> c_3() , 4: min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , 5: del^#(x, nil()) -> c_5() , 6: del^#(x, .(y, z)) -> c_6(del^#(x, z)) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , del^#(x, .(y, z)) -> c_6(del^#(x, z)) } Weak DPs: { msort^#(nil()) -> c_1() , min^#(x, nil()) -> c_3() , del^#(x, nil()) -> c_5() } Weak Trs: { msort(nil()) -> nil() , msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))) , min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } 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. { msort^#(nil()) -> c_1() , min^#(x, nil()) -> c_3() , del^#(x, nil()) -> c_5() } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , del^#(x, .(y, z)) -> c_6(del^#(x, z)) } Weak Trs: { msort(nil()) -> nil() , msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))) , min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } Obligation: innermost runtime complexity Answer: MAYBE We replace rewrite rules by usable rules: Weak Usable Rules: { min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } We are left with following problem, upon which TcT provides the certificate MAYBE. Strict DPs: { msort^#(.(x, y)) -> c_2(min^#(x, y), msort^#(del(min(x, y), .(x, y))), del^#(min(x, y), .(x, y)), min^#(x, y)) , min^#(x, .(y, z)) -> c_4(min^#(x, z), min^#(y, z)) , del^#(x, .(y, z)) -> c_6(del^#(x, z)) } Weak Trs: { min(x, nil()) -> x , min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)) , del(x, nil()) -> nil() , del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z))) } Obligation: innermost runtime complexity Answer: MAYBE The input cannot be shown compatible Arrrr..