WORST_CASE(Omega(n^1),O(n^1)) * Step 1: Sum. WORST_CASE(Omega(n^1),O(n^1)) + Considered Problem: - Strict TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() F(s(0())) -> c2(F(0())) - Weak TRS: f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:1: Sum. WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() F(s(0())) -> c2(F(0())) - Weak TRS: f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:2: DecreasingLoops. WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() F(s(0())) -> c2(F(0())) - Weak TRS: f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: F(x){x -> +(x,y)} = F(+(x,y)) ->^+ c4(F(x)) = C[F(x) = F(x){}] ** Step 1.b:1: Ara. WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() F(s(0())) -> c2(F(0())) - Weak TRS: f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + Applied Processor: Ara {minDegree = 1, maxDegree = 1, araTimeout = 8, araRuleShifting = Just 1, isBestCase = False, mkCompletelyDefined = False, verboseOutput = False} + Details: Signatures used: ---------------- F (TrsFun "*") :: ["A"(0) x "A"(0)] -(0)-> "A"(0) F (TrsFun "+") :: ["A"(0) x "A"(0)] -(0)-> "A"(0) F (TrsFun "0") :: [] -(0)-> "A"(0) F (TrsFun "F") :: ["A"(0)] -(1)-> "A"(0) F (TrsFun "c") :: [] -(0)-> "A"(0) F (TrsFun "c1") :: [] -(0)-> "A"(0) F (TrsFun "c2") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "c3") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "c4") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "c5") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "f") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "s") :: ["A"(0)] -(0)-> "A"(0) Cost-free Signatures used: -------------------------- Base Constructor Signatures used: --------------------------------- Following Still Strict Rules were Typed as: ------------------------------------------- 1. Strict: F(0()) -> c() F(s(0())) -> c1() 2. Weak: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(s(0())) -> c2(F(0())) ** Step 1.b:2: NaturalMI. WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(s(0())) -> c2(F(0())) - Weak TRS: F(0()) -> c() F(s(0())) -> c1() f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + 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(*) = {1,2}, uargs(+) = {2}, uargs(c2) = {1}, uargs(c3) = {1}, uargs(c4) = {1}, uargs(c5) = {1} Following symbols are considered usable: {F,f} TcT has computed the following interpretation: p(*) = [1] x1 + [1] x2 + [0] p(+) = [1] x1 + [1] x2 + [6] p(0) = [0] p(F) = [4] x1 + [0] p(c) = [0] p(c1) = [0] p(c2) = [1] x1 + [0] p(c3) = [1] x1 + [11] p(c4) = [1] x1 + [5] p(c5) = [1] x1 + [6] p(f) = [2] x1 + [8] p(s) = [1] x1 + [0] Following rules are strictly oriented: F(+(z0,z1)) = [4] z0 + [4] z1 + [24] > [4] z0 + [5] = c4(F(z0)) F(+(z0,z1)) = [4] z0 + [4] z1 + [24] > [4] z1 + [6] = c5(F(z1)) F(+(z0,s(0()))) = [4] z0 + [24] > [4] z0 + [11] = c3(F(z0)) Following rules are (at-least) weakly oriented: F(0()) = [0] >= [0] = c() F(s(0())) = [0] >= [0] = c1() F(s(0())) = [0] >= [0] = c2(F(0())) f(+(z0,z1)) = [2] z0 + [2] z1 + [20] >= [2] z0 + [2] z1 + [16] = *(f(z0),f(z1)) f(+(z0,s(0()))) = [2] z0 + [20] >= [2] z0 + [14] = +(s(s(0())),f(z0)) f(0()) = [8] >= [0] = s(0()) f(s(0())) = [8] >= [8] = *(s(s(0())),f(0())) f(s(0())) = [8] >= [0] = s(s(0())) ** Step 1.b:3: NaturalMI. WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: F(s(0())) -> c2(F(0())) - Weak TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + 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(*) = {1,2}, uargs(+) = {2}, uargs(c2) = {1}, uargs(c3) = {1}, uargs(c4) = {1}, uargs(c5) = {1} Following symbols are considered usable: {F,f} TcT has computed the following interpretation: p(*) = [1] x1 + [1] x2 + [2] p(+) = [1] x1 + [1] x2 + [6] p(0) = [0] p(F) = [2] x1 + [1] p(c) = [0] p(c1) = [9] p(c2) = [1] x1 + [6] p(c3) = [1] x1 + [3] p(c4) = [1] x1 + [8] p(c5) = [1] x1 + [4] p(f) = [2] x1 + [4] p(s) = [4] Following rules are strictly oriented: F(s(0())) = [9] > [7] = c2(F(0())) Following rules are (at-least) weakly oriented: F(+(z0,z1)) = [2] z0 + [2] z1 + [13] >= [2] z0 + [9] = c4(F(z0)) F(+(z0,z1)) = [2] z0 + [2] z1 + [13] >= [2] z1 + [5] = c5(F(z1)) F(+(z0,s(0()))) = [2] z0 + [21] >= [2] z0 + [4] = c3(F(z0)) F(0()) = [1] >= [0] = c() F(s(0())) = [9] >= [9] = c1() f(+(z0,z1)) = [2] z0 + [2] z1 + [16] >= [2] z0 + [2] z1 + [10] = *(f(z0),f(z1)) f(+(z0,s(0()))) = [2] z0 + [24] >= [2] z0 + [14] = +(s(s(0())),f(z0)) f(0()) = [4] >= [4] = s(0()) f(s(0())) = [12] >= [10] = *(s(s(0())),f(0())) f(s(0())) = [12] >= [4] = s(s(0())) ** Step 1.b:4: EmptyProcessor. WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: F(+(z0,z1)) -> c4(F(z0)) F(+(z0,z1)) -> c5(F(z1)) F(+(z0,s(0()))) -> c3(F(z0)) F(0()) -> c() F(s(0())) -> c1() F(s(0())) -> c2(F(0())) f(+(z0,z1)) -> *(f(z0),f(z1)) f(+(z0,s(0()))) -> +(s(s(0())),f(z0)) f(0()) -> s(0()) f(s(0())) -> *(s(s(0())),f(0())) f(s(0())) -> s(s(0())) - Signature: {F/1,f/1} / {*/2,+/2,0/0,c/0,c1/0,c2/1,c3/1,c4/1,c5/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,f} and constructors {*,+,0,c,c1,c2,c3,c4,c5,s} + Applied Processor: EmptyProcessor + Details: The problem is already closed. The intended complexity is O(1). WORST_CASE(Omega(n^1),O(n^1))