WORST_CASE(?,O(n^2)) * Step 1: Ara WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: 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(false(),s(x),s(y)) -> gcd(minus(y,x),s(x)) if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y)) le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) - Signature: {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true} + Applied Processor: Ara {heuristics_ = NoHeuristics, minDegree = 1, maxDegree = 3, araTimeout = 60, araFindStrictRules = Nothing, araSmtSolver = Z3} + Details: Signatures used: ---------------- 0 :: [] -(0)-> A(4, 4) 0 :: [] -(0)-> A(0, 4) 0 :: [] -(0)-> A(0, 0) 0 :: [] -(0)-> A(2, 0) false :: [] -(0)-> A(9, 9) false :: [] -(0)-> A(15, 15) gcd :: [A(4, 4) x A(0, 4)] -(1)-> A(0, 0) if_gcd :: [A(9, 9) x A(1, 4) x A(0, 4)] -(2)-> A(0, 0) le :: [A(0, 0) x A(2, 0)] -(1)-> A(12, 12) minus :: [A(4, 4) x A(0, 0)] -(1)-> A(4, 4) s :: [A(8, 4)] -(4)-> A(4, 4) s :: [A(4, 4)] -(0)-> A(0, 4) s :: [A(5, 4)] -(1)-> A(1, 4) s :: [A(0, 0)] -(0)-> A(0, 0) s :: [A(2, 0)] -(2)-> A(2, 0) s :: [A(2, 1)] -(1)-> A(1, 1) true :: [] -(0)-> A(9, 9) true :: [] -(0)-> A(15, 15) Cost-free Signatures used: -------------------------- 0 :: [] -(0)-> A_cf(0, 0) false :: [] -(0)-> A_cf(1, 1) false :: [] -(0)-> A_cf(5, 3) false :: [] -(0)-> A_cf(3, 15) false :: [] -(0)-> A_cf(0, 0) gcd :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) if_gcd :: [A_cf(1, 1) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) if_gcd :: [A_cf(0, 0) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(3, 3) le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(3, 13) le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) le :: [A_cf(0, 0) x A_cf(0, 0)] -(1)-> A_cf(0, 0) minus :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) minus :: [A_cf(4, 0) x A_cf(0, 0)] -(1)-> A_cf(0, 0) s :: [A_cf(0, 0)] -(0)-> A_cf(0, 0) s :: [A_cf(4, 0)] -(4)-> A_cf(4, 0) true :: [] -(0)-> A_cf(1, 1) true :: [] -(0)-> A_cf(3, 3) true :: [] -(0)-> A_cf(3, 15) true :: [] -(0)-> A_cf(0, 0) Base Constructor Signatures used: --------------------------------- 0_A :: [] -(0)-> A(1, 0) 0_A :: [] -(0)-> A(0, 1) false_A :: [] -(0)-> A(1, 0) false_A :: [] -(0)-> A(0, 1) s_A :: [A(1, 0)] -(1)-> A(1, 0) s_A :: [A(1, 1)] -(0)-> A(0, 1) true_A :: [] -(0)-> A(1, 0) true_A :: [] -(0)-> A(0, 1) * Step 2: Open MAYBE - Strict TRS: 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(false(),s(x),s(y)) -> gcd(minus(y,x),s(x)) if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y)) le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) - Signature: {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true} Following problems could not be solved: - Strict TRS: 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(false(),s(x),s(y)) -> gcd(minus(y,x),s(x)) if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y)) le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) - Signature: {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true} WORST_CASE(?,O(n^2))