WORST_CASE(Omega(n^1),O(n^1)) * Step 1: Sum WORST_CASE(Omega(n^1),O(n^1)) + Considered Problem: - Strict TRS: f(s(0()),g(x)) -> f(x,g(x)) g(s(x)) -> g(x) - Signature: {f/2,g/1} / {0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {f,g} 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: f(s(0()),g(x)) -> f(x,g(x)) g(s(x)) -> g(x) - Signature: {f/2,g/1} / {0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {f,g} and constructors {0,s} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: g(x){x -> s(x)} = g(s(x)) ->^+ g(x) = C[g(x) = g(x){}] ** Step 1.b:1: DependencyPairs WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: f(s(0()),g(x)) -> f(x,g(x)) g(s(x)) -> g(x) - Signature: {f/2,g/1} / {0/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {f,g} and constructors {0,s} + Applied Processor: DependencyPairs {dpKind_ = DT} + Details: We add the following dependency tuples: Strict DPs f#(s(0()),g(x)) -> c_1(f#(x,g(x)),g#(x)) g#(s(x)) -> c_2(g#(x)) Weak DPs and mark the set of starting terms. ** Step 1.b:2: RemoveInapplicable WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: f#(s(0()),g(x)) -> c_1(f#(x,g(x)),g#(x)) g#(s(x)) -> c_2(g#(x)) - Weak TRS: f(s(0()),g(x)) -> f(x,g(x)) g(s(x)) -> g(x) - Signature: {f/2,g/1,f#/2,g#/1} / {0/0,s/1,c_1/2,c_2/1} - Obligation: innermost runtime complexity wrt. defined symbols {f#,g#} and constructors {0,s} + Applied Processor: RemoveInapplicable + Details: Only the nodes {2} are reachable from nodes {2} that start derivation from marked basic terms. The nodes not reachable are removed from the problem. ** Step 1.b:3: UsableRules WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: g#(s(x)) -> c_2(g#(x)) - Weak TRS: f(s(0()),g(x)) -> f(x,g(x)) g(s(x)) -> g(x) - Signature: {f/2,g/1,f#/2,g#/1} / {0/0,s/1,c_1/2,c_2/1} - Obligation: innermost runtime complexity wrt. defined symbols {f#,g#} and constructors {0,s} + Applied Processor: UsableRules + Details: We replace rewrite rules by usable rules: g#(s(x)) -> c_2(g#(x)) ** Step 1.b:4: WeightGap WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: g#(s(x)) -> c_2(g#(x)) - Signature: {f/2,g/1,f#/2,g#/1} / {0/0,s/1,c_1/2,c_2/1} - Obligation: innermost runtime complexity wrt. defined symbols {f#,g#} and constructors {0,s} + Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} + Details: The weightgap principle applies using the following constant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(c_2) = {1} Following symbols are considered usable: all TcT has computed the following interpretation: p(0) = [0] p(f) = [0] p(g) = [0] p(s) = [1] x1 + [9] p(f#) = [0] p(g#) = [3] x1 + [0] p(c_1) = [0] p(c_2) = [1] x1 + [0] Following rules are strictly oriented: g#(s(x)) = [3] x + [27] > [3] x + [0] = c_2(g#(x)) Following rules are (at-least) weakly oriented: Further, it can be verified that all rules not oriented are covered by the weightgap condition. ** Step 1.b:5: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak DPs: g#(s(x)) -> c_2(g#(x)) - Signature: {f/2,g/1,f#/2,g#/1} / {0/0,s/1,c_1/2,c_2/1} - Obligation: innermost runtime complexity wrt. defined symbols {f#,g#} 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^1))