WORST_CASE(Omega(n^1),O(n^2)) * Step 1: Sum WORST_CASE(Omega(n^1),O(n^2)) + Considered Problem: - Strict TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:1: DecreasingLoops WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: *(x,y){x -> s(x)} = *(s(x),y) ->^+ +(y,*(x,y)) = C[*(x,y) = *(x,y){}] ** Step 1.b:1: NaturalPI WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + 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: uargs(*) = {2}, uargs(+) = {2} Following symbols are considered usable: {*,-,exp} TcT has computed the following interpretation: p(*) = 1 + x2 p(+) = x2 p(-) = x1 + 9*x2 p(0) = 1 p(exp) = 8 + x1 + 2*x2 p(s) = 2 + x1 Following rules are strictly oriented: -(x,0()) = 9 + x > x = x -(s(x),s(y)) = 20 + x + 9*y > x + 9*y = -(x,y) exp(x,0()) = 10 + x > 3 = s(0()) exp(x,s(y)) = 12 + x + 2*y > 9 + x + 2*y = *(x,exp(x,y)) Following rules are (at-least) weakly oriented: *(0(),y) = 1 + y >= 1 = 0() *(s(x),y) = 1 + y >= 1 + y = +(y,*(x,y)) -(0(),y) = 1 + 9*y >= 1 = 0() ** Step 1.b:2: NaturalPI WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) -(0(),y) -> 0() - Weak TRS: -(x,0()) -> x -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + 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: uargs(*) = {2}, uargs(+) = {2} Following symbols are considered usable: {*,-,exp} TcT has computed the following interpretation: p(*) = x2 p(+) = x2 p(-) = 7 + 2*x1 p(0) = 0 p(exp) = 12 p(s) = 10 + x1 Following rules are strictly oriented: -(0(),y) = 7 > 0 = 0() Following rules are (at-least) weakly oriented: *(0(),y) = y >= 0 = 0() *(s(x),y) = y >= y = +(y,*(x,y)) -(x,0()) = 7 + 2*x >= x = x -(s(x),s(y)) = 27 + 2*x >= 7 + 2*x = -(x,y) exp(x,0()) = 12 >= 10 = s(0()) exp(x,s(y)) = 12 >= 12 = *(x,exp(x,y)) ** Step 1.b:3: NaturalPI WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) - Weak TRS: -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + 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: uargs(*) = {2}, uargs(+) = {2} Following symbols are considered usable: {*,-,exp} TcT has computed the following interpretation: p(*) = 9 + x2 p(+) = x2 p(-) = 8*x1 p(0) = 0 p(exp) = 4 + 2*x1 + 8*x2 p(s) = 3 + x1 Following rules are strictly oriented: *(0(),y) = 9 + y > 0 = 0() Following rules are (at-least) weakly oriented: *(s(x),y) = 9 + y >= 9 + y = +(y,*(x,y)) -(x,0()) = 8*x >= x = x -(0(),y) = 0 >= 0 = 0() -(s(x),s(y)) = 24 + 8*x >= 8*x = -(x,y) exp(x,0()) = 4 + 2*x >= 3 = s(0()) exp(x,s(y)) = 28 + 2*x + 8*y >= 13 + 2*x + 8*y = *(x,exp(x,y)) ** Step 1.b:4: NaturalPI WORST_CASE(?,O(n^2)) + Considered Problem: - Strict TRS: *(s(x),y) -> +(y,*(x,y)) - Weak TRS: *(0(),y) -> 0() -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + Applied Processor: NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules} + Details: We apply a polynomial interpretation of kind constructor-based(mixed(2)): The following argument positions are considered usable: uargs(*) = {2}, uargs(+) = {2} Following symbols are considered usable: {*,-,exp} TcT has computed the following interpretation: p(*) = 2 + x1 + x2 p(+) = x2 p(-) = x1*x2 + 2*x1^2 + x2 p(0) = 2 p(exp) = x1*x2 + 2*x2 p(s) = 1 + x1 Following rules are strictly oriented: *(s(x),y) = 3 + x + y > 2 + x + y = +(y,*(x,y)) Following rules are (at-least) weakly oriented: *(0(),y) = 4 + y >= 2 = 0() -(x,0()) = 2 + 2*x + 2*x^2 >= x = x -(0(),y) = 8 + 3*y >= 2 = 0() -(s(x),s(y)) = 4 + 5*x + x*y + 2*x^2 + 2*y >= x*y + 2*x^2 + y = -(x,y) exp(x,0()) = 4 + 2*x >= 3 = s(0()) exp(x,s(y)) = 2 + x + x*y + 2*y >= 2 + x + x*y + 2*y = *(x,exp(x,y)) ** Step 1.b:5: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: *(0(),y) -> 0() *(s(x),y) -> +(y,*(x,y)) -(x,0()) -> x -(0(),y) -> 0() -(s(x),s(y)) -> -(x,y) exp(x,0()) -> s(0()) exp(x,s(y)) -> *(x,exp(x,y)) - Signature: {*/2,-/2,exp/2} / {+/2,0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,exp} and constructors {+,0,s} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(Omega(n^1),O(n^2))