* Step 1: Sum WORST_CASE(Omega(n^1),O(n^5))
+ Considered Problem:
- Strict TRS:
f_0(x) -> a()
f_1(x) -> g_1(x,x)
f_2(x) -> g_2(x,x)
f_3(x) -> g_3(x,x)
f_4(x) -> g_4(x,x)
f_5(x) -> g_5(x,x)
g_1(s(x),y) -> b(f_0(y),g_1(x,y))
g_2(s(x),y) -> b(f_1(y),g_2(x,y))
g_3(s(x),y) -> b(f_2(y),g_3(x,y))
g_4(s(x),y) -> b(f_3(y),g_4(x,y))
g_5(s(x),y) -> b(f_4(y),g_5(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2} / {a/0,b/2,s/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0,f_1,f_2,f_3,f_4,f_5,g_1,g_2,g_3,g_4
,g_5} and constructors {a,b,s}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
** Step 1.a:1: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
f_0(x) -> a()
f_1(x) -> g_1(x,x)
f_2(x) -> g_2(x,x)
f_3(x) -> g_3(x,x)
f_4(x) -> g_4(x,x)
f_5(x) -> g_5(x,x)
g_1(s(x),y) -> b(f_0(y),g_1(x,y))
g_2(s(x),y) -> b(f_1(y),g_2(x,y))
g_3(s(x),y) -> b(f_2(y),g_3(x,y))
g_4(s(x),y) -> b(f_3(y),g_4(x,y))
g_5(s(x),y) -> b(f_4(y),g_5(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2} / {a/0,b/2,s/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0,f_1,f_2,f_3,f_4,f_5,g_1,g_2,g_3,g_4
,g_5} and constructors {a,b,s}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
g_1(x,y){x -> s(x)} =
g_1(s(x),y) ->^+ b(f_0(y),g_1(x,y))
= C[g_1(x,y) = g_1(x,y){}]
** Step 1.b:1: DependencyPairs WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict TRS:
f_0(x) -> a()
f_1(x) -> g_1(x,x)
f_2(x) -> g_2(x,x)
f_3(x) -> g_3(x,x)
f_4(x) -> g_4(x,x)
f_5(x) -> g_5(x,x)
g_1(s(x),y) -> b(f_0(y),g_1(x,y))
g_2(s(x),y) -> b(f_1(y),g_2(x,y))
g_3(s(x),y) -> b(f_2(y),g_3(x,y))
g_4(s(x),y) -> b(f_3(y),g_4(x,y))
g_5(s(x),y) -> b(f_4(y),g_5(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2} / {a/0,b/2,s/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0,f_1,f_2,f_3,f_4,f_5,g_1,g_2,g_3,g_4
,g_5} and constructors {a,b,s}
+ Applied Processor:
DependencyPairs {dpKind_ = WIDP}
+ Details:
We add the following weak innermost dependency pairs:
Strict DPs
f_0#(x) -> c_1()
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
Weak DPs
and mark the set of starting terms.
** Step 1.b:2: UsableRules WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_0#(x) -> c_1()
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Strict TRS:
f_0(x) -> a()
f_1(x) -> g_1(x,x)
f_2(x) -> g_2(x,x)
f_3(x) -> g_3(x,x)
f_4(x) -> g_4(x,x)
f_5(x) -> g_5(x,x)
g_1(s(x),y) -> b(f_0(y),g_1(x,y))
g_2(s(x),y) -> b(f_1(y),g_2(x,y))
g_3(s(x),y) -> b(f_2(y),g_3(x,y))
g_4(s(x),y) -> b(f_3(y),g_4(x,y))
g_5(s(x),y) -> b(f_4(y),g_5(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/2,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
UsableRules
+ Details:
We replace rewrite rules by usable rules:
f_0#(x) -> c_1()
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
** Step 1.b:3: PredecessorEstimation WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_0#(x) -> c_1()
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/2,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimation {onSelection = all simple predecessor estimation selector}
+ Details:
We estimate the number of application of
{1}
by application of
Pre({1}) = {7}.
Here rules are labelled as follows:
1: f_0#(x) -> c_1()
2: f_1#(x) -> c_2(g_1#(x,x))
3: f_2#(x) -> c_3(g_2#(x,x))
4: f_3#(x) -> c_4(g_3#(x,x))
5: f_4#(x) -> c_5(g_4#(x,x))
6: f_5#(x) -> c_6(g_5#(x,x))
7: g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
8: g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
9: g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
10: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
11: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
** Step 1.b:4: RemoveWeakSuffixes WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_0#(x) -> c_1()
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/2,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:S:f_1#(x) -> c_2(g_1#(x,x))
-->_1 g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y)):6
2:S:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
3:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
4:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
5:S:f_5#(x) -> c_6(g_5#(x,x))
-->_1 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
6:S:g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
-->_1 f_0#(x) -> c_1():11
-->_2 g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y)):6
7:S:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
-->_1 f_1#(x) -> c_2(g_1#(x,x)):1
8:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
-->_1 f_2#(x) -> c_3(g_2#(x,x)):2
9:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
-->_1 f_3#(x) -> c_4(g_3#(x,x)):3
10:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
-->_1 f_4#(x) -> c_5(g_4#(x,x)):4
11:W:f_0#(x) -> c_1()
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
11: f_0#(x) -> c_1()
** Step 1.b:5: SimplifyRHS WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/2,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
SimplifyRHS
+ Details:
Consider the dependency graph
1:S:f_1#(x) -> c_2(g_1#(x,x))
-->_1 g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y)):6
2:S:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
3:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
4:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
5:S:f_5#(x) -> c_6(g_5#(x,x))
-->_1 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
6:S:g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y))
-->_2 g_1#(s(x),y) -> c_7(f_0#(y),g_1#(x,y)):6
7:S:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
-->_1 f_1#(x) -> c_2(g_1#(x,x)):1
8:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
-->_1 f_2#(x) -> c_3(g_2#(x,x)):2
9:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
-->_1 f_3#(x) -> c_4(g_3#(x,x)):3
10:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
-->_1 f_4#(x) -> c_5(g_4#(x,x)):4
Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
g_1#(s(x),y) -> c_7(g_1#(x,y))
** Step 1.b:6: RemoveHeads WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
f_5#(x) -> c_6(g_5#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveHeads
+ Details:
Consider the dependency graph
1:S:f_1#(x) -> c_2(g_1#(x,x))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):6
2:S:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
3:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
4:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
5:S:f_5#(x) -> c_6(g_5#(x,x))
-->_1 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
6:S:g_1#(s(x),y) -> c_7(g_1#(x,y))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):6
7:S:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):7
-->_1 f_1#(x) -> c_2(g_1#(x,x)):1
8:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):8
-->_1 f_2#(x) -> c_3(g_2#(x,x)):2
9:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):9
-->_1 f_3#(x) -> c_4(g_3#(x,x)):3
10:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):10
-->_1 f_4#(x) -> c_5(g_4#(x,x)):4
Following roots of the dependency graph are removed, as the considered set of starting terms is closed under reduction with respect to these rules (modulo compound contexts).
[(5,f_5#(x) -> c_6(g_5#(x,x)))]
** Step 1.b:7: Decompose WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
+ Details:
We analyse the complexity of following sub-problems (R) and (S).
Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
Problem (R)
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2
,c_9/2,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
Problem (S)
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2
,c_9/2,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
*** Step 1.b:7.a:1: DecomposeDG WORST_CASE(?,O(n^5))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
and a lower component
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
Further, following extension rules are added to the lower component.
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
**** Step 1.b:7.a:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
The strictly oriented rules are moved into the weak component.
***** Step 1.b:7.a:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_11) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [0]
p(b) = [1] x1 + [1] x2 + [0]
p(f_0) = [0]
p(f_1) = [0]
p(f_2) = [0]
p(f_3) = [0]
p(f_4) = [0]
p(f_5) = [0]
p(g_1) = [0]
p(g_2) = [0]
p(g_3) = [0]
p(g_4) = [0]
p(g_5) = [1] x2 + [0]
p(s) = [1] x1 + [1]
p(f_0#) = [0]
p(f_1#) = [1]
p(f_2#) = [1] x1 + [1]
p(f_3#) = [1] x1 + [0]
p(f_4#) = [0]
p(f_5#) = [0]
p(g_1#) = [1] x1 + [4]
p(g_2#) = [4] x2 + [1]
p(g_3#) = [0]
p(g_4#) = [2] x2 + [1]
p(g_5#) = [1] x1 + [11] x2 + [0]
p(c_1) = [1]
p(c_2) = [0]
p(c_3) = [2]
p(c_4) = [0]
p(c_5) = [1] x1 + [1]
p(c_6) = [1] x1 + [0]
p(c_7) = [1]
p(c_8) = [2] x1 + [1] x2 + [2]
p(c_9) = [2] x1 + [1]
p(c_10) = [1] x2 + [1]
p(c_11) = [1] x2 + [0]
Following rules are strictly oriented:
g_5#(s(x),y) = [1] x + [11] y + [1]
> [1] x + [11] y + [0]
= c_11(f_4#(y),g_5#(x,y))
Following rules are (at-least) weakly oriented:
***** Step 1.b:7.a:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
***** Step 1.b:7.a:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):1
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
***** Step 1.b:7.a:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
**** Step 1.b:7.a:1.b:1: DecomposeDG WORST_CASE(?,O(n^4))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
and a lower component
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
Further, following extension rules are added to the lower component.
f_4#(x) -> g_4#(x,x)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
***** Step 1.b:7.a:1.b:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
The strictly oriented rules are moved into the weak component.
****** Step 1.b:7.a:1.b:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_5) = {1},
uargs(c_10) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [2]
p(b) = [1] x1 + [2]
p(f_0) = [1]
p(f_1) = [0]
p(f_2) = [1] x1 + [0]
p(f_3) = [0]
p(f_4) = [2] x1 + [1]
p(f_5) = [1] x1 + [1]
p(g_1) = [8] x1 + [1] x2 + [1]
p(g_2) = [1] x1 + [1]
p(g_3) = [1] x1 + [1] x2 + [0]
p(g_4) = [1] x1 + [1] x2 + [0]
p(g_5) = [1] x1 + [1] x2 + [0]
p(s) = [1] x1 + [8]
p(f_0#) = [0]
p(f_1#) = [1] x1 + [1]
p(f_2#) = [1] x1 + [2]
p(f_3#) = [0]
p(f_4#) = [2] x1 + [2]
p(f_5#) = [8] x1 + [2]
p(g_1#) = [8]
p(g_2#) = [2]
p(g_3#) = [1] x2 + [1]
p(g_4#) = [1] x1 + [0]
p(g_5#) = [8] x2 + [11]
p(c_1) = [4]
p(c_2) = [1] x1 + [1]
p(c_3) = [1]
p(c_4) = [4]
p(c_5) = [2] x1 + [2]
p(c_6) = [1] x1 + [0]
p(c_7) = [1]
p(c_8) = [1] x1 + [1]
p(c_9) = [1] x1 + [0]
p(c_10) = [1] x2 + [2]
p(c_11) = [1] x1 + [1] x2 + [1]
Following rules are strictly oriented:
g_4#(s(x),y) = [1] x + [8]
> [1] x + [2]
= c_10(f_3#(y),g_4#(x,y))
Following rules are (at-least) weakly oriented:
f_4#(x) = [2] x + [2]
>= [2] x + [2]
= c_5(g_4#(x,x))
g_5#(s(x),y) = [8] y + [11]
>= [2] y + [2]
= f_4#(y)
g_5#(s(x),y) = [8] y + [11]
>= [8] y + [11]
= g_5#(x,y)
****** Step 1.b:7.a:1.b:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
****** Step 1.b:7.a:1.b:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
2:W:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
3:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> c_5(g_4#(x,x)):1
4:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):4
-->_1 g_5#(s(x),y) -> f_4#(y):3
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
4: g_5#(s(x),y) -> g_5#(x,y)
3: g_5#(s(x),y) -> f_4#(y)
1: f_4#(x) -> c_5(g_4#(x,x))
2: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
****** Step 1.b:7.a:1.b:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
***** Step 1.b:7.a:1.b:1.b:1: DecomposeDG WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
and a lower component
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
Further, following extension rules are added to the lower component.
f_3#(x) -> g_3#(x,x)
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> f_2#(y)
g_3#(s(x),y) -> g_3#(x,y)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
****** Step 1.b:7.a:1.b:1.b:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.a:1.b:1.b:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_4) = {1},
uargs(c_9) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [0]
p(b) = [1] x1 + [1] x2 + [0]
p(f_0) = [0]
p(f_1) = [0]
p(f_2) = [0]
p(f_3) = [0]
p(f_4) = [0]
p(f_5) = [0]
p(g_1) = [0]
p(g_2) = [0]
p(g_3) = [0]
p(g_4) = [0]
p(g_5) = [0]
p(s) = [1] x1 + [5]
p(f_0#) = [0]
p(f_1#) = [0]
p(f_2#) = [0]
p(f_3#) = [5] x1 + [10]
p(f_4#) = [5] x1 + [10]
p(f_5#) = [0]
p(g_1#) = [0]
p(g_2#) = [0]
p(g_3#) = [1] x1 + [0]
p(g_4#) = [5] x2 + [10]
p(g_5#) = [2] x1 + [5] x2 + [0]
p(c_1) = [0]
p(c_2) = [1] x1 + [0]
p(c_3) = [1]
p(c_4) = [4] x1 + [0]
p(c_5) = [0]
p(c_6) = [0]
p(c_7) = [0]
p(c_8) = [0]
p(c_9) = [1] x2 + [0]
p(c_10) = [0]
p(c_11) = [0]
Following rules are strictly oriented:
g_3#(s(x),y) = [1] x + [5]
> [1] x + [0]
= c_9(f_2#(y),g_3#(x,y))
Following rules are (at-least) weakly oriented:
f_3#(x) = [5] x + [10]
>= [4] x + [0]
= c_4(g_3#(x,x))
f_4#(x) = [5] x + [10]
>= [5] x + [10]
= g_4#(x,x)
g_4#(s(x),y) = [5] y + [10]
>= [5] y + [10]
= f_3#(y)
g_4#(s(x),y) = [5] y + [10]
>= [5] y + [10]
= g_4#(x,y)
g_5#(s(x),y) = [2] x + [5] y + [10]
>= [5] y + [10]
= f_4#(y)
g_5#(s(x),y) = [2] x + [5] y + [10]
>= [2] x + [5] y + [0]
= g_5#(x,y)
******* Step 1.b:7.a:1.b:1.b:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.a:1.b:1.b:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
2:W:f_4#(x) -> g_4#(x,x)
-->_1 g_4#(s(x),y) -> g_4#(x,y):5
-->_1 g_4#(s(x),y) -> f_3#(y):4
3:W:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
4:W:g_4#(s(x),y) -> f_3#(y)
-->_1 f_3#(x) -> c_4(g_3#(x,x)):1
5:W:g_4#(s(x),y) -> g_4#(x,y)
-->_1 g_4#(s(x),y) -> g_4#(x,y):5
-->_1 g_4#(s(x),y) -> f_3#(y):4
6:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> g_4#(x,x):2
7:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):7
-->_1 g_5#(s(x),y) -> f_4#(y):6
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
7: g_5#(s(x),y) -> g_5#(x,y)
6: g_5#(s(x),y) -> f_4#(y)
2: f_4#(x) -> g_4#(x,x)
5: g_4#(s(x),y) -> g_4#(x,y)
4: g_4#(s(x),y) -> f_3#(y)
1: f_3#(x) -> c_4(g_3#(x,x))
3: g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
******* Step 1.b:7.a:1.b:1.b:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
****** Step 1.b:7.a:1.b:1.b:1.b:1: PredecessorEstimationCP WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> g_3#(x,x)
f_4#(x) -> g_4#(x,x)
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> f_2#(y)
g_3#(s(x),y) -> g_3#(x,y)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: f_1#(x) -> c_2(g_1#(x,x))
2: g_1#(s(x),y) -> c_7(g_1#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.a:1.b:1.b:1.b:1.a:1: NaturalPI WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> g_3#(x,x)
f_4#(x) -> g_4#(x,x)
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> f_2#(y)
g_3#(s(x),y) -> g_3#(x,y)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a polynomial interpretation of kind constructor-based(mixed(2)):
The following argument positions are considered usable:
uargs(c_2) = {1},
uargs(c_3) = {1},
uargs(c_7) = {1},
uargs(c_8) = {1,2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = 1
p(b) = x1
p(f_0) = x1
p(f_1) = 1
p(f_2) = 1
p(f_3) = 1 + x1^2
p(f_4) = 1 + x1 + x1^2
p(f_5) = 2 + 2*x1
p(g_1) = 2 + x1 + x1*x2 + x1^2 + 4*x2^2
p(g_2) = 4*x1 + 2*x1*x2
p(g_3) = 1 + x1^2
p(g_4) = 1 + 2*x1*x2 + 4*x1^2 + x2 + x2^2
p(g_5) = 0
p(s) = 1 + x1
p(f_0#) = 4 + x1 + x1^2
p(f_1#) = 2 + x1
p(f_2#) = 5*x1 + 2*x1^2
p(f_3#) = 6*x1 + 4*x1^2
p(f_4#) = 4 + 6*x1 + 7*x1^2
p(f_5#) = 0
p(g_1#) = x1
p(g_2#) = 3*x1 + 2*x1*x2 + 2*x2
p(g_3#) = 5*x2 + 3*x2^2
p(g_4#) = 1 + x1^2 + 6*x2 + 5*x2^2
p(g_5#) = 4*x1 + 4*x1*x2 + x1^2 + 5*x2 + 7*x2^2
p(c_1) = 0
p(c_2) = 1 + x1
p(c_3) = x1
p(c_4) = 0
p(c_5) = 1
p(c_6) = 0
p(c_7) = x1
p(c_8) = x1 + x2
p(c_9) = x2
p(c_10) = x1
p(c_11) = 1 + x2
Following rules are strictly oriented:
f_1#(x) = 2 + x
> 1 + x
= c_2(g_1#(x,x))
g_1#(s(x),y) = 1 + x
> x
= c_7(g_1#(x,y))
Following rules are (at-least) weakly oriented:
f_2#(x) = 5*x + 2*x^2
>= 5*x + 2*x^2
= c_3(g_2#(x,x))
f_3#(x) = 6*x + 4*x^2
>= 5*x + 3*x^2
= g_3#(x,x)
f_4#(x) = 4 + 6*x + 7*x^2
>= 1 + 6*x + 6*x^2
= g_4#(x,x)
g_2#(s(x),y) = 3 + 3*x + 2*x*y + 4*y
>= 2 + 3*x + 2*x*y + 3*y
= c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) = 5*y + 3*y^2
>= 5*y + 2*y^2
= f_2#(y)
g_3#(s(x),y) = 5*y + 3*y^2
>= 5*y + 3*y^2
= g_3#(x,y)
g_4#(s(x),y) = 2 + 2*x + x^2 + 6*y + 5*y^2
>= 6*y + 4*y^2
= f_3#(y)
g_4#(s(x),y) = 2 + 2*x + x^2 + 6*y + 5*y^2
>= 1 + x^2 + 6*y + 5*y^2
= g_4#(x,y)
g_5#(s(x),y) = 5 + 6*x + 4*x*y + x^2 + 9*y + 7*y^2
>= 4 + 6*y + 7*y^2
= f_4#(y)
g_5#(s(x),y) = 5 + 6*x + 4*x*y + x^2 + 9*y + 7*y^2
>= 4*x + 4*x*y + x^2 + 5*y + 7*y^2
= g_5#(x,y)
******* Step 1.b:7.a:1.b:1.b:1.b:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> g_3#(x,x)
f_4#(x) -> g_4#(x,x)
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> f_2#(y)
g_3#(s(x),y) -> g_3#(x,y)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.a:1.b:1.b:1.b:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_1#(x) -> c_2(g_1#(x,x))
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> g_3#(x,x)
f_4#(x) -> g_4#(x,x)
g_1#(s(x),y) -> c_7(g_1#(x,y))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> f_2#(y)
g_3#(s(x),y) -> g_3#(x,y)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_1#(x) -> c_2(g_1#(x,x))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):5
2:W:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):6
3:W:f_3#(x) -> g_3#(x,x)
-->_1 g_3#(s(x),y) -> g_3#(x,y):8
-->_1 g_3#(s(x),y) -> f_2#(y):7
4:W:f_4#(x) -> g_4#(x,x)
-->_1 g_4#(s(x),y) -> g_4#(x,y):10
-->_1 g_4#(s(x),y) -> f_3#(y):9
5:W:g_1#(s(x),y) -> c_7(g_1#(x,y))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):5
6:W:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):6
-->_1 f_1#(x) -> c_2(g_1#(x,x)):1
7:W:g_3#(s(x),y) -> f_2#(y)
-->_1 f_2#(x) -> c_3(g_2#(x,x)):2
8:W:g_3#(s(x),y) -> g_3#(x,y)
-->_1 g_3#(s(x),y) -> g_3#(x,y):8
-->_1 g_3#(s(x),y) -> f_2#(y):7
9:W:g_4#(s(x),y) -> f_3#(y)
-->_1 f_3#(x) -> g_3#(x,x):3
10:W:g_4#(s(x),y) -> g_4#(x,y)
-->_1 g_4#(s(x),y) -> g_4#(x,y):10
-->_1 g_4#(s(x),y) -> f_3#(y):9
11:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> g_4#(x,x):4
12:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):12
-->_1 g_5#(s(x),y) -> f_4#(y):11
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
12: g_5#(s(x),y) -> g_5#(x,y)
11: g_5#(s(x),y) -> f_4#(y)
4: f_4#(x) -> g_4#(x,x)
10: g_4#(s(x),y) -> g_4#(x,y)
9: g_4#(s(x),y) -> f_3#(y)
3: f_3#(x) -> g_3#(x,x)
8: g_3#(s(x),y) -> g_3#(x,y)
7: g_3#(s(x),y) -> f_2#(y)
2: f_2#(x) -> c_3(g_2#(x,x))
6: g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
1: f_1#(x) -> c_2(g_1#(x,x))
5: g_1#(s(x),y) -> c_7(g_1#(x,y))
******* Step 1.b:7.a:1.b:1.b:1.b:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
*** Step 1.b:7.b:1: RemoveWeakSuffixes WORST_CASE(?,O(n^4))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_1#(x) -> c_2(g_1#(x,x))
g_1#(s(x),y) -> c_7(g_1#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:S:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):4
2:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
3:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):6
4:S:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_1 f_1#(x) -> c_2(g_1#(x,x)):8
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):4
5:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
-->_1 f_2#(x) -> c_3(g_2#(x,x)):1
6:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):6
-->_1 f_3#(x) -> c_4(g_3#(x,x)):2
7:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):7
-->_1 f_4#(x) -> c_5(g_4#(x,x)):3
8:W:f_1#(x) -> c_2(g_1#(x,x))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):9
9:W:g_1#(s(x),y) -> c_7(g_1#(x,y))
-->_1 g_1#(s(x),y) -> c_7(g_1#(x,y)):9
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
8: f_1#(x) -> c_2(g_1#(x,x))
9: g_1#(s(x),y) -> c_7(g_1#(x,y))
*** Step 1.b:7.b:2: SimplifyRHS WORST_CASE(?,O(n^4))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/2,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
SimplifyRHS
+ Details:
Consider the dependency graph
1:S:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):4
2:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
3:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):6
4:S:g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y))
-->_2 g_2#(s(x),y) -> c_8(f_1#(y),g_2#(x,y)):4
5:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
-->_1 f_2#(x) -> c_3(g_2#(x,x)):1
6:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):6
-->_1 f_3#(x) -> c_4(g_3#(x,x)):2
7:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):7
-->_1 f_4#(x) -> c_5(g_4#(x,x)):3
Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
g_2#(s(x),y) -> c_8(g_2#(x,y))
*** Step 1.b:7.b:3: Decompose WORST_CASE(?,O(n^4))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
+ Details:
We analyse the complexity of following sub-problems (R) and (S).
Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
Problem (R)
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/2,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
Problem (S)
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/2,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
**** Step 1.b:7.b:3.a:1: DecomposeDG WORST_CASE(?,O(n^4))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
and a lower component
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
Further, following extension rules are added to the lower component.
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
***** Step 1.b:7.b:3.a:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
The strictly oriented rules are moved into the weak component.
****** Step 1.b:7.b:3.a:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_11) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [0]
p(b) = [1] x1 + [1] x2 + [0]
p(f_0) = [0]
p(f_1) = [0]
p(f_2) = [0]
p(f_3) = [0]
p(f_4) = [0]
p(f_5) = [1] x1 + [0]
p(g_1) = [1]
p(g_2) = [2] x2 + [1]
p(g_3) = [1] x2 + [2]
p(g_4) = [1] x1 + [1] x2 + [1]
p(g_5) = [1] x1 + [1] x2 + [0]
p(s) = [1] x1 + [5]
p(f_0#) = [2] x1 + [2]
p(f_1#) = [1] x1 + [4]
p(f_2#) = [1] x1 + [4]
p(f_3#) = [2] x1 + [2]
p(f_4#) = [6]
p(f_5#) = [1]
p(g_1#) = [4] x2 + [0]
p(g_2#) = [1] x2 + [0]
p(g_3#) = [1] x1 + [1] x2 + [1]
p(g_4#) = [1] x2 + [2]
p(g_5#) = [4] x1 + [9] x2 + [8]
p(c_1) = [8]
p(c_2) = [2] x1 + [0]
p(c_3) = [1] x1 + [0]
p(c_4) = [2] x1 + [1]
p(c_5) = [0]
p(c_6) = [4] x1 + [1]
p(c_7) = [1]
p(c_8) = [2] x1 + [1]
p(c_9) = [1] x1 + [1] x2 + [1]
p(c_10) = [2] x1 + [1] x2 + [1]
p(c_11) = [2] x1 + [1] x2 + [4]
Following rules are strictly oriented:
g_5#(s(x),y) = [4] x + [9] y + [28]
> [4] x + [9] y + [24]
= c_11(f_4#(y),g_5#(x,y))
Following rules are (at-least) weakly oriented:
****** Step 1.b:7.b:3.a:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
****** Step 1.b:7.b:3.a:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):1
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
****** Step 1.b:7.b:3.a:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
***** Step 1.b:7.b:3.a:1.b:1: DecomposeDG WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
and a lower component
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
Further, following extension rules are added to the lower component.
f_4#(x) -> g_4#(x,x)
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
****** Step 1.b:7.b:3.a:1.b:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.a:1.b:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_5) = {1},
uargs(c_10) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [0]
p(b) = [1] x1 + [1] x2 + [0]
p(f_0) = [0]
p(f_1) = [0]
p(f_2) = [0]
p(f_3) = [0]
p(f_4) = [0]
p(f_5) = [0]
p(g_1) = [0]
p(g_2) = [0]
p(g_3) = [0]
p(g_4) = [0]
p(g_5) = [0]
p(s) = [1] x1 + [8]
p(f_0#) = [0]
p(f_1#) = [0]
p(f_2#) = [1] x1 + [0]
p(f_3#) = [1]
p(f_4#) = [2] x1 + [9]
p(f_5#) = [8] x1 + [0]
p(g_1#) = [0]
p(g_2#) = [2] x2 + [0]
p(g_3#) = [8] x2 + [0]
p(g_4#) = [1] x1 + [1] x2 + [8]
p(g_5#) = [1] x1 + [2] x2 + [14]
p(c_1) = [1]
p(c_2) = [1] x1 + [1]
p(c_3) = [1]
p(c_4) = [1]
p(c_5) = [1] x1 + [1]
p(c_6) = [1] x1 + [8]
p(c_7) = [4]
p(c_8) = [2]
p(c_9) = [1] x1 + [1] x2 + [1]
p(c_10) = [3] x1 + [1] x2 + [3]
p(c_11) = [1] x2 + [0]
Following rules are strictly oriented:
g_4#(s(x),y) = [1] x + [1] y + [16]
> [1] x + [1] y + [14]
= c_10(f_3#(y),g_4#(x,y))
Following rules are (at-least) weakly oriented:
f_4#(x) = [2] x + [9]
>= [2] x + [9]
= c_5(g_4#(x,x))
g_5#(s(x),y) = [1] x + [2] y + [22]
>= [2] y + [9]
= f_4#(y)
g_5#(s(x),y) = [1] x + [2] y + [22]
>= [1] x + [2] y + [14]
= g_5#(x,y)
******* Step 1.b:7.b:3.a:1.b:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.a:1.b:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
2:W:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
3:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> c_5(g_4#(x,x)):1
4:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):4
-->_1 g_5#(s(x),y) -> f_4#(y):3
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
4: g_5#(s(x),y) -> g_5#(x,y)
3: g_5#(s(x),y) -> f_4#(y)
1: f_4#(x) -> c_5(g_4#(x,x))
2: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
******* Step 1.b:7.b:3.a:1.b:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
****** Step 1.b:7.b:3.a:1.b:1.b:1: PredecessorEstimationCP WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: f_2#(x) -> c_3(g_2#(x,x))
2: g_2#(s(x),y) -> c_8(g_2#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.a:1.b:1.b:1.a:1: NaturalPI WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a polynomial interpretation of kind constructor-based(mixed(2)):
The following argument positions are considered usable:
uargs(c_3) = {1},
uargs(c_4) = {1},
uargs(c_8) = {1},
uargs(c_9) = {1,2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = 0
p(b) = 1 + x1
p(f_0) = 1 + 4*x1 + x1^2
p(f_1) = 1
p(f_2) = 1 + x1 + 4*x1^2
p(f_3) = 1 + x1^2
p(f_4) = 1
p(f_5) = 2
p(g_1) = 4
p(g_2) = x1 + x1*x2 + x1^2 + x2^2
p(g_3) = x1 + x1*x2
p(g_4) = x1 + 4*x1^2
p(g_5) = 1 + x1 + 2*x1*x2 + x2^2
p(s) = 1 + x1
p(f_0#) = 4 + x1 + x1^2
p(f_1#) = 0
p(f_2#) = 1 + 4*x1
p(f_3#) = 1 + 6*x1 + 6*x1^2
p(f_4#) = 6 + 6*x1 + 7*x1^2
p(f_5#) = x1 + 4*x1^2
p(g_1#) = 2 + x2 + 2*x2^2
p(g_2#) = x1 + x2
p(g_3#) = 4*x1 + 5*x1*x2 + x2
p(g_4#) = 4 + x1*x2 + 5*x2 + 6*x2^2
p(g_5#) = 3 + 4*x1 + x1^2 + 7*x2 + 7*x2^2
p(c_1) = 0
p(c_2) = x1
p(c_3) = x1
p(c_4) = x1
p(c_5) = 1
p(c_6) = 0
p(c_7) = 1
p(c_8) = x1
p(c_9) = x1 + x2
p(c_10) = 0
p(c_11) = x1
Following rules are strictly oriented:
f_2#(x) = 1 + 4*x
> 2*x
= c_3(g_2#(x,x))
g_2#(s(x),y) = 1 + x + y
> x + y
= c_8(g_2#(x,y))
Following rules are (at-least) weakly oriented:
f_3#(x) = 1 + 6*x + 6*x^2
>= 5*x + 5*x^2
= c_4(g_3#(x,x))
f_4#(x) = 6 + 6*x + 7*x^2
>= 4 + 5*x + 7*x^2
= g_4#(x,x)
g_3#(s(x),y) = 4 + 4*x + 5*x*y + 6*y
>= 1 + 4*x + 5*x*y + 5*y
= c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) = 4 + x*y + 6*y + 6*y^2
>= 1 + 6*y + 6*y^2
= f_3#(y)
g_4#(s(x),y) = 4 + x*y + 6*y + 6*y^2
>= 4 + x*y + 5*y + 6*y^2
= g_4#(x,y)
g_5#(s(x),y) = 8 + 6*x + x^2 + 7*y + 7*y^2
>= 6 + 6*y + 7*y^2
= f_4#(y)
g_5#(s(x),y) = 8 + 6*x + x^2 + 7*y + 7*y^2
>= 3 + 4*x + x^2 + 7*y + 7*y^2
= g_5#(x,y)
******* Step 1.b:7.b:3.a:1.b:1.b:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_2#(s(x),y) -> c_8(g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.a:1.b:1.b:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> g_4#(x,x)
g_2#(s(x),y) -> c_8(g_2#(x,y))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> f_3#(y)
g_4#(s(x),y) -> g_4#(x,y)
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(g_2#(x,y)):4
2:W:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
3:W:f_4#(x) -> g_4#(x,x)
-->_1 g_4#(s(x),y) -> g_4#(x,y):7
-->_1 g_4#(s(x),y) -> f_3#(y):6
4:W:g_2#(s(x),y) -> c_8(g_2#(x,y))
-->_1 g_2#(s(x),y) -> c_8(g_2#(x,y)):4
5:W:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):5
-->_1 f_2#(x) -> c_3(g_2#(x,x)):1
6:W:g_4#(s(x),y) -> f_3#(y)
-->_1 f_3#(x) -> c_4(g_3#(x,x)):2
7:W:g_4#(s(x),y) -> g_4#(x,y)
-->_1 g_4#(s(x),y) -> g_4#(x,y):7
-->_1 g_4#(s(x),y) -> f_3#(y):6
8:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> g_4#(x,x):3
9:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):9
-->_1 g_5#(s(x),y) -> f_4#(y):8
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
9: g_5#(s(x),y) -> g_5#(x,y)
8: g_5#(s(x),y) -> f_4#(y)
3: f_4#(x) -> g_4#(x,x)
7: g_4#(s(x),y) -> g_4#(x,y)
6: g_4#(s(x),y) -> f_3#(y)
2: f_3#(x) -> c_4(g_3#(x,x))
5: g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
1: f_2#(x) -> c_3(g_2#(x,x))
4: g_2#(s(x),y) -> c_8(g_2#(x,y))
******* Step 1.b:7.b:3.a:1.b:1.b:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
**** Step 1.b:7.b:3.b:1: RemoveWeakSuffixes WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_2#(x) -> c_3(g_2#(x,x))
g_2#(s(x),y) -> c_8(g_2#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
2:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
3:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_1 f_2#(x) -> c_3(g_2#(x,x)):6
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
4:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
-->_1 f_3#(x) -> c_4(g_3#(x,x)):1
5:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):5
-->_1 f_4#(x) -> c_5(g_4#(x,x)):2
6:W:f_2#(x) -> c_3(g_2#(x,x))
-->_1 g_2#(s(x),y) -> c_8(g_2#(x,y)):7
7:W:g_2#(s(x),y) -> c_8(g_2#(x,y))
-->_1 g_2#(s(x),y) -> c_8(g_2#(x,y)):7
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
6: f_2#(x) -> c_3(g_2#(x,x))
7: g_2#(s(x),y) -> c_8(g_2#(x,y))
**** Step 1.b:7.b:3.b:2: SimplifyRHS WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/2
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
SimplifyRHS
+ Details:
Consider the dependency graph
1:S:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
2:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
3:S:g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y))
-->_2 g_3#(s(x),y) -> c_9(f_2#(y),g_3#(x,y)):3
4:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
-->_1 f_3#(x) -> c_4(g_3#(x,x)):1
5:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):5
-->_1 f_4#(x) -> c_5(g_4#(x,x)):2
Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
g_3#(s(x),y) -> c_9(g_3#(x,y))
**** Step 1.b:7.b:3.b:3: Decompose WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
+ Details:
We analyse the complexity of following sub-problems (R) and (S).
Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
Problem (R)
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/1,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
Problem (S)
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/1,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
***** Step 1.b:7.b:3.b:3.a:1: DecomposeDG WORST_CASE(?,O(n^3))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
+ Details:
We decompose the input problem according to the dependency graph into the upper component
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
and a lower component
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
Further, following extension rules are added to the lower component.
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
****** Step 1.b:7.b:3.b:3.a:1.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.b:3.a:1.a:1.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_11) = {2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [0]
p(b) = [1] x1 + [1] x2 + [0]
p(f_0) = [0]
p(f_1) = [0]
p(f_2) = [0]
p(f_3) = [0]
p(f_4) = [0]
p(f_5) = [0]
p(g_1) = [0]
p(g_2) = [0]
p(g_3) = [0]
p(g_4) = [0]
p(g_5) = [0]
p(s) = [1] x1 + [4]
p(f_0#) = [0]
p(f_1#) = [0]
p(f_2#) = [0]
p(f_3#) = [1] x1 + [0]
p(f_4#) = [11]
p(f_5#) = [0]
p(g_1#) = [2]
p(g_2#) = [1] x2 + [1]
p(g_3#) = [1] x1 + [2] x2 + [0]
p(g_4#) = [8] x1 + [2]
p(g_5#) = [4] x1 + [4] x2 + [13]
p(c_1) = [0]
p(c_2) = [1]
p(c_3) = [1] x1 + [1]
p(c_4) = [1] x1 + [1]
p(c_5) = [1]
p(c_6) = [2] x1 + [0]
p(c_7) = [8]
p(c_8) = [2] x1 + [4]
p(c_9) = [0]
p(c_10) = [8] x2 + [2]
p(c_11) = [1] x1 + [1] x2 + [4]
Following rules are strictly oriented:
g_5#(s(x),y) = [4] x + [4] y + [29]
> [4] x + [4] y + [28]
= c_11(f_4#(y),g_5#(x,y))
Following rules are (at-least) weakly oriented:
******* Step 1.b:7.b:3.b:3.a:1.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.b:3.a:1.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):1
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
1: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
******* Step 1.b:7.b:3.b:3.a:1.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
****** Step 1.b:7.b:3.b:3.a:1.b:1: PredecessorEstimationCP WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: f_3#(x) -> c_4(g_3#(x,x))
2: g_3#(s(x),y) -> c_9(g_3#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.b:3.a:1.b:1.a:1: NaturalPI WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a polynomial interpretation of kind constructor-based(mixed(2)):
The following argument positions are considered usable:
uargs(c_4) = {1},
uargs(c_5) = {1},
uargs(c_9) = {1},
uargs(c_10) = {1,2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = 1
p(b) = 0
p(f_0) = x1 + x1^2
p(f_1) = 4 + x1^2
p(f_2) = 1 + 2*x1^2
p(f_3) = 1
p(f_4) = 4 + x1
p(f_5) = x1^2
p(g_1) = 1 + 2*x1^2 + x2^2
p(g_2) = 4 + x1
p(g_3) = 4*x1 + x2
p(g_4) = x1 + 2*x1*x2 + 4*x1^2 + x2
p(g_5) = x1 + x1^2 + x2^2
p(s) = 1 + x1
p(f_0#) = x1 + 2*x1^2
p(f_1#) = 1
p(f_2#) = 1 + 2*x1
p(f_3#) = 2 + x1
p(f_4#) = 1 + 6*x1 + 4*x1^2
p(f_5#) = 2 + 2*x1 + 4*x1^2
p(g_1#) = 1 + x1 + x1^2
p(g_2#) = x1 + 2*x1*x2 + 2*x2 + 4*x2^2
p(g_3#) = x1
p(g_4#) = 4*x1 + 2*x1*x2 + 2*x2 + x2^2
p(g_5#) = x1 + 4*x1*x2 + 6*x2 + 4*x2^2
p(c_1) = 0
p(c_2) = x1
p(c_3) = 1 + x1
p(c_4) = x1
p(c_5) = 1 + x1
p(c_6) = 0
p(c_7) = 1
p(c_8) = 1 + x1
p(c_9) = x1
p(c_10) = x1 + x2
p(c_11) = x1 + x2
Following rules are strictly oriented:
f_3#(x) = 2 + x
> x
= c_4(g_3#(x,x))
g_3#(s(x),y) = 1 + x
> x
= c_9(g_3#(x,y))
Following rules are (at-least) weakly oriented:
f_4#(x) = 1 + 6*x + 4*x^2
>= 1 + 6*x + 3*x^2
= c_5(g_4#(x,x))
g_4#(s(x),y) = 4 + 4*x + 2*x*y + 4*y + y^2
>= 2 + 4*x + 2*x*y + 3*y + y^2
= c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) = 1 + x + 4*x*y + 10*y + 4*y^2
>= 1 + 6*y + 4*y^2
= f_4#(y)
g_5#(s(x),y) = 1 + x + 4*x*y + 10*y + 4*y^2
>= x + 4*x*y + 6*y + 4*y^2
= g_5#(x,y)
******* Step 1.b:7.b:3.b:3.a:1.b:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.b:3.a:1.b:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
f_4#(x) -> c_5(g_4#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> f_4#(y)
g_5#(s(x),y) -> g_5#(x,y)
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(g_3#(x,y)):3
2:W:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
3:W:g_3#(s(x),y) -> c_9(g_3#(x,y))
-->_1 g_3#(s(x),y) -> c_9(g_3#(x,y)):3
4:W:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):4
-->_1 f_3#(x) -> c_4(g_3#(x,x)):1
5:W:g_5#(s(x),y) -> f_4#(y)
-->_1 f_4#(x) -> c_5(g_4#(x,x)):2
6:W:g_5#(s(x),y) -> g_5#(x,y)
-->_1 g_5#(s(x),y) -> g_5#(x,y):6
-->_1 g_5#(s(x),y) -> f_4#(y):5
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
6: g_5#(s(x),y) -> g_5#(x,y)
5: g_5#(s(x),y) -> f_4#(y)
2: f_4#(x) -> c_5(g_4#(x,x))
4: g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
1: f_3#(x) -> c_4(g_3#(x,x))
3: g_3#(s(x),y) -> c_9(g_3#(x,y))
******* Step 1.b:7.b:3.b:3.a:1.b:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
***** Step 1.b:7.b:3.b:3.b:1: RemoveWeakSuffixes WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_3#(x) -> c_4(g_3#(x,x))
g_3#(s(x),y) -> c_9(g_3#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
2:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_1 f_3#(x) -> c_4(g_3#(x,x)):4
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
3:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):3
-->_1 f_4#(x) -> c_5(g_4#(x,x)):1
4:W:f_3#(x) -> c_4(g_3#(x,x))
-->_1 g_3#(s(x),y) -> c_9(g_3#(x,y)):5
5:W:g_3#(s(x),y) -> c_9(g_3#(x,y))
-->_1 g_3#(s(x),y) -> c_9(g_3#(x,y)):5
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
4: f_3#(x) -> c_4(g_3#(x,x))
5: g_3#(s(x),y) -> c_9(g_3#(x,y))
***** Step 1.b:7.b:3.b:3.b:2: SimplifyRHS WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/2,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
SimplifyRHS
+ Details:
Consider the dependency graph
1:S:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
2:S:g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y))
-->_2 g_4#(s(x),y) -> c_10(f_3#(y),g_4#(x,y)):2
3:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):3
-->_1 f_4#(x) -> c_5(g_4#(x,x)):1
Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
g_4#(s(x),y) -> c_10(g_4#(x,y))
***** Step 1.b:7.b:3.b:3.b:3: Decompose WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
+ Details:
We analyse the complexity of following sub-problems (R) and (S).
Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
Problem (R)
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/1,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
Problem (S)
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1
,f_5#/1,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1
,c_9/1,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
****** Step 1.b:7.b:3.b:3.b:3.a:1: PredecessorEstimationCP WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: f_4#(x) -> c_5(g_4#(x,x))
2: g_4#(s(x),y) -> c_10(g_4#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.b:3.b:3.a:1.a:1: NaturalPI WORST_CASE(?,O(n^2))
+ Considered Problem:
- Strict DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
- Weak DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a polynomial interpretation of kind constructor-based(mixed(2)):
The following argument positions are considered usable:
uargs(c_5) = {1},
uargs(c_10) = {1},
uargs(c_11) = {1,2}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = 1
p(b) = 0
p(f_0) = 4*x1 + x1^2
p(f_1) = x1
p(f_2) = x1 + x1^2
p(f_3) = 2*x1
p(f_4) = 1
p(f_5) = 1 + 2*x1
p(g_1) = 2 + x1 + 2*x1^2 + 2*x2 + 2*x2^2
p(g_2) = 1 + x1 + x1*x2 + x1^2 + x2
p(g_3) = 1 + x1 + x1^2
p(g_4) = 8 + 2*x1^2 + x2^2
p(g_5) = 1 + 8*x1*x2 + x1^2 + x2 + x2^2
p(s) = 1 + x1
p(f_0#) = 1 + x1
p(f_1#) = 1 + x1^2
p(f_2#) = 4*x1 + x1^2
p(f_3#) = 1 + 2*x1 + x1^2
p(f_4#) = 9 + 8*x1
p(f_5#) = x1 + x1^2
p(g_1#) = 1
p(g_2#) = x1*x2 + x1^2 + x2 + x2^2
p(g_3#) = 2 + 2*x1*x2 + 4*x1^2
p(g_4#) = 5 + 2*x1
p(g_5#) = 8 + 2*x1 + 8*x1*x2 + 7*x1^2 + 4*x2 + 10*x2^2
p(c_1) = 1
p(c_2) = 1 + x1
p(c_3) = 0
p(c_4) = x1
p(c_5) = x1
p(c_6) = 0
p(c_7) = 1
p(c_8) = x1
p(c_9) = 1 + x1
p(c_10) = x1
p(c_11) = x1 + x2
Following rules are strictly oriented:
f_4#(x) = 9 + 8*x
> 5 + 2*x
= c_5(g_4#(x,x))
g_4#(s(x),y) = 7 + 2*x
> 5 + 2*x
= c_10(g_4#(x,y))
Following rules are (at-least) weakly oriented:
g_5#(s(x),y) = 17 + 16*x + 8*x*y + 7*x^2 + 12*y + 10*y^2
>= 17 + 2*x + 8*x*y + 7*x^2 + 12*y + 10*y^2
= c_11(f_4#(y),g_5#(x,y))
******* Step 1.b:7.b:3.b:3.b:3.a:1.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.b:3.b:3.a:1.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(g_4#(x,y)):2
2:W:g_4#(s(x),y) -> c_10(g_4#(x,y))
-->_1 g_4#(s(x),y) -> c_10(g_4#(x,y)):2
3:W:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):3
-->_1 f_4#(x) -> c_5(g_4#(x,x)):1
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
3: g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
1: f_4#(x) -> c_5(g_4#(x,x))
2: g_4#(s(x),y) -> c_10(g_4#(x,y))
******* Step 1.b:7.b:3.b:3.b:3.a:1.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
****** Step 1.b:7.b:3.b:3.b:3.b:1: RemoveWeakSuffixes WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Weak DPs:
f_4#(x) -> c_5(g_4#(x,x))
g_4#(s(x),y) -> c_10(g_4#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_1 f_4#(x) -> c_5(g_4#(x,x)):2
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):1
2:W:f_4#(x) -> c_5(g_4#(x,x))
-->_1 g_4#(s(x),y) -> c_10(g_4#(x,y)):3
3:W:g_4#(s(x),y) -> c_10(g_4#(x,y))
-->_1 g_4#(s(x),y) -> c_10(g_4#(x,y)):3
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
2: f_4#(x) -> c_5(g_4#(x,x))
3: g_4#(s(x),y) -> c_10(g_4#(x,y))
****** Step 1.b:7.b:3.b:3.b:3.b:2: SimplifyRHS WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/2}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
SimplifyRHS
+ Details:
Consider the dependency graph
1:S:g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y))
-->_2 g_5#(s(x),y) -> c_11(f_4#(y),g_5#(x,y)):1
Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
g_5#(s(x),y) -> c_11(g_5#(x,y))
****** Step 1.b:7.b:3.b:3.b:3.b:3: PredecessorEstimationCP WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}}
+ Details:
We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing} to orient following rules strictly:
1: g_5#(s(x),y) -> c_11(g_5#(x,y))
The strictly oriented rules are moved into the weak component.
******* Step 1.b:7.b:3.b:3.b:3.b:3.a:1: NaturalMI WORST_CASE(?,O(n^1))
+ Considered Problem:
- Strict DPs:
g_5#(s(x),y) -> c_11(g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation on any intersect of rules of CDG leaf and strict-rules}
+ Details:
We apply a matrix interpretation of kind constructor based matrix interpretation:
The following argument positions are considered usable:
uargs(c_11) = {1}
Following symbols are considered usable:
{f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#,g_5#}
TcT has computed the following interpretation:
p(a) = [1]
p(b) = [0]
p(f_0) = [1]
p(f_1) = [2]
p(f_2) = [1]
p(f_3) = [1] x1 + [1]
p(f_4) = [8] x1 + [0]
p(f_5) = [0]
p(g_1) = [2] x1 + [0]
p(g_2) = [1] x1 + [1] x2 + [1]
p(g_3) = [1] x2 + [4]
p(g_4) = [4] x1 + [1] x2 + [4]
p(g_5) = [2] x1 + [2] x2 + [0]
p(s) = [1] x1 + [4]
p(f_0#) = [2] x1 + [0]
p(f_1#) = [8] x1 + [0]
p(f_2#) = [0]
p(f_3#) = [2] x1 + [0]
p(f_4#) = [1] x1 + [0]
p(f_5#) = [1] x1 + [0]
p(g_1#) = [4] x1 + [1] x2 + [0]
p(g_2#) = [0]
p(g_3#) = [1] x1 + [0]
p(g_4#) = [1] x1 + [0]
p(g_5#) = [1] x1 + [12]
p(c_1) = [0]
p(c_2) = [0]
p(c_3) = [0]
p(c_4) = [0]
p(c_5) = [1] x1 + [0]
p(c_6) = [0]
p(c_7) = [1] x1 + [0]
p(c_8) = [1] x1 + [2]
p(c_9) = [0]
p(c_10) = [1] x1 + [4]
p(c_11) = [1] x1 + [0]
Following rules are strictly oriented:
g_5#(s(x),y) = [1] x + [16]
> [1] x + [12]
= c_11(g_5#(x,y))
Following rules are (at-least) weakly oriented:
******* Step 1.b:7.b:3.b:3.b:3.b:3.a:2: Assumption WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
Assumption {assumed = Certificate {spaceUB = Unknown, spaceLB = Unknown, timeUB = Poly (Just 0), timeLB = Unknown}}
+ Details:
()
******* Step 1.b:7.b:3.b:3.b:3.b:3.b:1: RemoveWeakSuffixes WORST_CASE(?,O(1))
+ Considered Problem:
- Weak DPs:
g_5#(s(x),y) -> c_11(g_5#(x,y))
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
RemoveWeakSuffixes
+ Details:
Consider the dependency graph
1:W:g_5#(s(x),y) -> c_11(g_5#(x,y))
-->_1 g_5#(s(x),y) -> c_11(g_5#(x,y)):1
The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
1: g_5#(s(x),y) -> c_11(g_5#(x,y))
******* Step 1.b:7.b:3.b:3.b:3.b:3.b:2: EmptyProcessor WORST_CASE(?,O(1))
+ Considered Problem:
- Signature:
{f_0/1,f_1/1,f_2/1,f_3/1,f_4/1,f_5/1,g_1/2,g_2/2,g_3/2,g_4/2,g_5/2,f_0#/1,f_1#/1,f_2#/1,f_3#/1,f_4#/1,f_5#/1
,g_1#/2,g_2#/2,g_3#/2,g_4#/2,g_5#/2} / {a/0,b/2,s/1,c_1/0,c_2/1,c_3/1,c_4/1,c_5/1,c_6/1,c_7/1,c_8/1,c_9/1
,c_10/1,c_11/1}
- Obligation:
innermost runtime complexity wrt. defined symbols {f_0#,f_1#,f_2#,f_3#,f_4#,f_5#,g_1#,g_2#,g_3#,g_4#
,g_5#} and constructors {a,b,s}
+ Applied Processor:
EmptyProcessor
+ Details:
The problem is already closed. The intended complexity is O(1).
WORST_CASE(Omega(n^1),O(n^5))