WORST_CASE(?,O(n^1)) * Step 1: NaturalMI WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: duplicate(Cons(x,xs)) -> Cons(x,Cons(x,duplicate(xs))) duplicate(Nil()) -> Nil() goal(x) -> duplicate(x) - Signature: {duplicate/1,goal/1} / {Cons/2,Nil/0} - Obligation: innermost runtime complexity wrt. defined symbols {duplicate,goal} and constructors {Cons,Nil} + Applied Processor: NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just any strict-rules} + Details: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(Cons) = {2} Following symbols are considered usable: {duplicate,goal} TcT has computed the following interpretation: p(Cons) = [1] x2 + [0] p(Nil) = [0] p(duplicate) = [1] p(goal) = [5] Following rules are strictly oriented: duplicate(Nil()) = [1] > [0] = Nil() goal(x) = [5] > [1] = duplicate(x) Following rules are (at-least) weakly oriented: duplicate(Cons(x,xs)) = [1] >= [1] = Cons(x,Cons(x,duplicate(xs))) * Step 2: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: duplicate(Cons(x,xs)) -> Cons(x,Cons(x,duplicate(xs))) - Weak TRS: duplicate(Nil()) -> Nil() goal(x) -> duplicate(x) - Signature: {duplicate/1,goal/1} / {Cons/2,Nil/0} - Obligation: innermost runtime complexity wrt. defined symbols {duplicate,goal} and constructors {Cons,Nil} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(Cons) = {2} Following symbols are considered usable: all TcT has computed the following interpretation: p(Cons) = [1] x2 + [4] p(Nil) = [3] p(duplicate) = [5] x1 + [2] p(goal) = [5] x1 + [2] Following rules are strictly oriented: duplicate(Cons(x,xs)) = [5] xs + [22] > [5] xs + [10] = Cons(x,Cons(x,duplicate(xs))) Following rules are (at-least) weakly oriented: duplicate(Nil()) = [17] >= [3] = Nil() goal(x) = [5] x + [2] >= [5] x + [2] = duplicate(x) Further, it can be verified that all rules not oriented are covered by the weightgap condition. * Step 3: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: duplicate(Cons(x,xs)) -> Cons(x,Cons(x,duplicate(xs))) duplicate(Nil()) -> Nil() goal(x) -> duplicate(x) - Signature: {duplicate/1,goal/1} / {Cons/2,Nil/0} - Obligation: innermost runtime complexity wrt. defined symbols {duplicate,goal} and constructors {Cons,Nil} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(?,O(n^1))