WORST_CASE(Omega(n^1),O(n^1)) * Step 1: Sum WORST_CASE(Omega(n^1),O(n^1)) + Considered Problem: - Strict TRS: add0(x,Nil()) -> x add0(x',Cons(x,xs)) -> add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) -> add0(x,y) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() - Signature: {add0/2,goal/2,notEmpty/1} / {Cons/2,False/0,Nil/0,True/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,notEmpty} and constructors {Cons,False,Nil ,True} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:1: DecreasingLoops WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: add0(x,Nil()) -> x add0(x',Cons(x,xs)) -> add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) -> add0(x,y) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() - Signature: {add0/2,goal/2,notEmpty/1} / {Cons/2,False/0,Nil/0,True/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,notEmpty} and constructors {Cons,False,Nil ,True} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: add0(x,z){z -> Cons(y,z)} = add0(x,Cons(y,z)) ->^+ add0(Cons(Cons(Nil(),Nil()),x),z) = C[add0(Cons(Cons(Nil(),Nil()),x),z) = add0(x,z){x -> Cons(Cons(Nil(),Nil()),x)}] ** Step 1.b:1: NaturalPI WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: add0(x,Nil()) -> x add0(x',Cons(x,xs)) -> add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) -> add0(x,y) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() - Signature: {add0/2,goal/2,notEmpty/1} / {Cons/2,False/0,Nil/0,True/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,notEmpty} and constructors {Cons,False,Nil ,True} + Applied Processor: NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules} + Details: We apply a polynomial interpretation of kind constructor-based(linear): The following argument positions are considered usable: none Following symbols are considered usable: {add0,goal,notEmpty} TcT has computed the following interpretation: p(Cons) = x1 + x2 p(False) = 0 p(Nil) = 0 p(True) = 0 p(add0) = 2 + 8*x1 p(goal) = 2 + 8*x1 p(notEmpty) = 0 Following rules are strictly oriented: add0(x,Nil()) = 2 + 8*x > x = x Following rules are (at-least) weakly oriented: add0(x',Cons(x,xs)) = 2 + 8*x' >= 2 + 8*x' = add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) = 2 + 8*x >= 2 + 8*x = add0(x,y) notEmpty(Cons(x,xs)) = 0 >= 0 = True() notEmpty(Nil()) = 0 >= 0 = False() ** Step 1.b:2: NaturalPI WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: add0(x',Cons(x,xs)) -> add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) -> add0(x,y) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() - Weak TRS: add0(x,Nil()) -> x - Signature: {add0/2,goal/2,notEmpty/1} / {Cons/2,False/0,Nil/0,True/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,notEmpty} and constructors {Cons,False,Nil ,True} + Applied Processor: NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules} + Details: We apply a polynomial interpretation of kind constructor-based(linear): The following argument positions are considered usable: none Following symbols are considered usable: {add0,goal,notEmpty} TcT has computed the following interpretation: p(Cons) = 4 + x2 p(False) = 0 p(Nil) = 1 p(True) = 0 p(add0) = 2 + 2*x1 + 4*x2 p(goal) = 11 + 3*x1 + 4*x2 p(notEmpty) = 10 + x1 Following rules are strictly oriented: add0(x',Cons(x,xs)) = 18 + 2*x' + 4*xs > 10 + 2*x' + 4*xs = add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) = 11 + 3*x + 4*y > 2 + 2*x + 4*y = add0(x,y) notEmpty(Cons(x,xs)) = 14 + xs > 0 = True() notEmpty(Nil()) = 11 > 0 = False() Following rules are (at-least) weakly oriented: add0(x,Nil()) = 6 + 2*x >= x = x ** Step 1.b:3: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: add0(x,Nil()) -> x add0(x',Cons(x,xs)) -> add0(Cons(Cons(Nil(),Nil()),x'),xs) goal(x,y) -> add0(x,y) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() - Signature: {add0/2,goal/2,notEmpty/1} / {Cons/2,False/0,Nil/0,True/0} - Obligation: innermost runtime complexity wrt. defined symbols {add0,goal,notEmpty} and constructors {Cons,False,Nil ,True} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(Omega(n^1),O(n^1))