WORST_CASE(Omega(n^1),O(n^1)) * Step 1: Sum. WORST_CASE(Omega(n^1),O(n^1)) + Considered Problem: - Strict TRS: F(0()) -> c() F(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() - Weak TRS: f(0()) -> 1() f(s(z0)) -> +(f(z0),s(f(z0))) f(s(z0)) -> g(f(z0)) g(z0) -> +(z0,s(z0)) - Signature: {F/1,G/1,f/1,g/1} / {+/2,0/0,1/0,c/0,c1/2,c2/1,c3/1,c4/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,G,f,g} and constructors {+,0,1,c,c1,c2,c3,c4,s} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:1: Sum. WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: F(0()) -> c() F(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() - Weak TRS: f(0()) -> 1() f(s(z0)) -> +(f(z0),s(f(z0))) f(s(z0)) -> g(f(z0)) g(z0) -> +(z0,s(z0)) - Signature: {F/1,G/1,f/1,g/1} / {+/2,0/0,1/0,c/0,c1/2,c2/1,c3/1,c4/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,G,f,g} and constructors {+,0,1,c,c1,c2,c3,c4,s} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () ** Step 1.a:2: DecreasingLoops. WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: F(0()) -> c() F(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() - Weak TRS: f(0()) -> 1() f(s(z0)) -> +(f(z0),s(f(z0))) f(s(z0)) -> g(f(z0)) g(z0) -> +(z0,s(z0)) - Signature: {F/1,G/1,f/1,g/1} / {+/2,0/0,1/0,c/0,c1/2,c2/1,c3/1,c4/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,G,f,g} and constructors {+,0,1,c,c1,c2,c3,c4,s} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: F(x){x -> s(x)} = F(s(x)) ->^+ c1(G(f(x)),F(x)) = C[F(x) = F(x){}] ** Step 1.b:1: NaturalMI. WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: F(0()) -> c() F(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() - Weak TRS: f(0()) -> 1() f(s(z0)) -> +(f(z0),s(f(z0))) f(s(z0)) -> g(f(z0)) g(z0) -> +(z0,s(z0)) - Signature: {F/1,G/1,f/1,g/1} / {+/2,0/0,1/0,c/0,c1/2,c2/1,c3/1,c4/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,G,f,g} and constructors {+,0,1,c,c1,c2,c3,c4,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(G) = {1}, uargs(c1) = {1,2}, uargs(c2) = {1}, uargs(c3) = {1}, uargs(g) = {1}, uargs(s) = {1} Following symbols are considered usable: {F,G,f,g} TcT has computed the following interpretation: p(+) = [1] x1 + [1] x2 + [0] p(0) = [1] p(1) = [0] p(F) = [8] x1 + [2] p(G) = [1] x1 + [0] p(c) = [1] p(c1) = [1] x1 + [1] x2 + [0] p(c2) = [1] x1 + [0] p(c3) = [1] x1 + [0] p(c4) = [0] p(f) = [0] p(g) = [8] x1 + [0] p(s) = [1] x1 + [0] Following rules are strictly oriented: F(0()) = [10] > [1] = c() Following rules are (at-least) weakly oriented: F(s(z0)) = [8] z0 + [2] >= [8] z0 + [2] = c1(G(f(z0)),F(z0)) F(s(z0)) = [8] z0 + [2] >= [8] z0 + [2] = c2(F(z0)) F(s(z0)) = [8] z0 + [2] >= [8] z0 + [2] = c3(F(z0)) G(z0) = [1] z0 + [0] >= [0] = c4() f(0()) = [0] >= [0] = 1() f(s(z0)) = [0] >= [0] = +(f(z0),s(f(z0))) f(s(z0)) = [0] >= [0] = g(f(z0)) g(z0) = [8] z0 + [0] >= [2] z0 + [0] = +(z0,s(z0)) ** Step 1.b:2: Ara. WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: F(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() - Weak TRS: F(0()) -> c() f(0()) -> 1() f(s(z0)) -> +(f(z0),s(f(z0))) f(s(z0)) -> g(f(z0)) g(z0) -> +(z0,s(z0)) - Signature: {F/1,G/1,f/1,g/1} / {+/2,0/0,1/0,c/0,c1/2,c2/1,c3/1,c4/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {F,G,f,g} and constructors {+,0,1,c,c1,c2,c3,c4,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 "0") :: [] -(0)-> "A"(2) F (TrsFun "0") :: [] -(0)-> "A"(0) F (TrsFun "1") :: [] -(0)-> "A"(0) F (TrsFun "F") :: ["A"(2)] -(0)-> "A"(0) F (TrsFun "G") :: ["A"(0)] -(1)-> "A"(0) F (TrsFun "c") :: [] -(0)-> "A"(0) F (TrsFun "c1") :: ["A"(0) x "A"(0)] -(0)-> "A"(0) F (TrsFun "c2") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "c3") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "c4") :: [] -(0)-> "A"(0) F (TrsFun "f") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "g") :: ["A"(0)] -(0)-> "A"(0) F (TrsFun "s") :: ["A"(2)] -(2)-> "A"(2) 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(s(z0)) -> c1(G(f(z0)),F(z0)) F(s(z0)) -> c2(F(z0)) F(s(z0)) -> c3(F(z0)) G(z0) -> c4() 2. Weak: WORST_CASE(Omega(n^1),O(n^1))