WORST_CASE(?,O(n^2)) * Step 1: Ara WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: add0(C(x,y),y') -> add0(y,C(S(),y')) add0(Z(),y) -> y goal(xs,ys) -> mul0(xs,ys) isZero(C(x,y)) -> False() isZero(Z()) -> True() mul0(C(x,y),y') -> add0(mul0(y,y'),y') mul0(Z(),y) -> Z() second(C(x,y)) -> y - Signature: {add0/2,goal/2,isZero/1,mul0/2,second/1} / {C/2,False/0,S/0,True/0,Z/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,isZero,mul0,second} and constructors {C,False,S ,True,Z} + Applied Processor: Ara {heuristics_ = NoHeuristics, minDegree = 1, maxDegree = 3, araTimeout = 60, araFindStrictRules = Nothing, araSmtSolver = MiniSMT} + Details: Signatures used: ---------------- C :: [A(0, 0) x A(1, 0)] -(1)-> A(1, 0) C :: [A(0, 0) x A(4, 0)] -(4)-> A(4, 0) C :: [A(0, 0) x A(6, 1)] -(5)-> A(5, 1) C :: [A(0, 0) x A(0, 0)] -(0)-> A(0, 0) False :: [] -(0)-> A(4, 0) S :: [] -(0)-> A(0, 2) True :: [] -(0)-> A(1, 0) Z :: [] -(0)-> A(1, 0) Z :: [] -(0)-> A(4, 0) Z :: [] -(0)-> A(5, 1) Z :: [] -(0)-> A(0, 0) add0 :: [A(1, 0) x A(0, 0)] -(4)-> A(0, 0) goal :: [A(5, 1) x A(3, 1)] -(2)-> A(0, 0) isZero :: [A(4, 0)] -(4)-> A(0, 0) mul0 :: [A(5, 1) x A(3, 1)] -(1)-> A(0, 0) second :: [A(0, 0)] -(4)-> A(0, 0) Cost-free Signatures used: -------------------------- C :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) C :: [A_cf(0, 0) x A_cf(1, 0)] -(1)-> A_cf(1, 0) S :: [] -(0)-> A_cf(0, 0) S :: [] -(0)-> A_cf(3, 1) Z :: [] -(0)-> A_cf(0, 0) Z :: [] -(0)-> A_cf(1, 0) Z :: [] -(0)-> A_cf(6, 4) add0 :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) add0 :: [A_cf(1, 0) x A_cf(1, 0)] -(0)-> A_cf(1, 0) mul0 :: [A_cf(1, 0) x A_cf(0, 0)] -(0)-> A_cf(1, 0) Base Constructor Signatures used: --------------------------------- C_A :: [A(0, 0) x A(1, 0)] -(1)-> A(1, 0) C_A :: [A(0, 0) x A(1, 1)] -(0)-> A(0, 1) False_A :: [] -(0)-> A(1, 0) False_A :: [] -(1)-> A(0, 1) S_A :: [] -(0)-> A(1, 0) S_A :: [] -(0)-> A(0, 1) True_A :: [] -(0)-> A(1, 0) True_A :: [] -(1)-> A(0, 1) Z_A :: [] -(0)-> A(1, 0) Z_A :: [] -(0)-> A(0, 1) * Step 2: Open MAYBE - Strict TRS: add0(C(x,y),y') -> add0(y,C(S(),y')) add0(Z(),y) -> y goal(xs,ys) -> mul0(xs,ys) isZero(C(x,y)) -> False() isZero(Z()) -> True() mul0(C(x,y),y') -> add0(mul0(y,y'),y') mul0(Z(),y) -> Z() second(C(x,y)) -> y - Signature: {add0/2,goal/2,isZero/1,mul0/2,second/1} / {C/2,False/0,S/0,True/0,Z/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,isZero,mul0,second} and constructors {C,False,S ,True,Z} Following problems could not be solved: - Strict TRS: add0(C(x,y),y') -> add0(y,C(S(),y')) add0(Z(),y) -> y goal(xs,ys) -> mul0(xs,ys) isZero(C(x,y)) -> False() isZero(Z()) -> True() mul0(C(x,y),y') -> add0(mul0(y,y'),y') mul0(Z(),y) -> Z() second(C(x,y)) -> y - Signature: {add0/2,goal/2,isZero/1,mul0/2,second/1} / {C/2,False/0,S/0,True/0,Z/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,isZero,mul0,second} and constructors {C,False,S ,True,Z} WORST_CASE(?,O(n^2))