MAYBE * Step 1: DependencyPairs MAYBE + Considered Problem: - Strict TRS: *(x,0()) -> 0() *(*(x,y),z) -> *(x,*(y,z)) *(0(),x) -> 0() *(s(x),s(y)) -> s(+(*(x,y),+(x,y))) +(x,0()) -> x +(+(x,y),z) -> +(x,+(y,z)) +(0(),x) -> x +(s(x),s(y)) -> s(s(+(x,y))) prod(cons(x,l)) -> *(x,prod(l)) prod(nil()) -> s(0()) sum(cons(x,l)) -> +(x,sum(l)) sum(nil()) -> 0() - Signature: {*/2,+/2,prod/1,sum/1} / {0/0,cons/2,nil/0,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {*,+,prod,sum} and constructors {0,cons,nil,s} + Applied Processor: DependencyPairs {dpKind_ = DT} + Details: We add the following dependency tuples: Strict DPs *#(x,0()) -> c_1() *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) *#(0(),x) -> c_3() *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) +#(x,0()) -> c_5() +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) +#(0(),x) -> c_7() +#(s(x),s(y)) -> c_8(+#(x,y)) prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) prod#(nil()) -> c_10() sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) sum#(nil()) -> c_12() Weak DPs and mark the set of starting terms. * Step 2: PredecessorEstimation MAYBE + Considered Problem: - Strict DPs: *#(x,0()) -> c_1() *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) *#(0(),x) -> c_3() *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) +#(x,0()) -> c_5() +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) +#(0(),x) -> c_7() +#(s(x),s(y)) -> c_8(+#(x,y)) prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) prod#(nil()) -> c_10() sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) sum#(nil()) -> c_12() - Weak TRS: *(x,0()) -> 0() *(*(x,y),z) -> *(x,*(y,z)) *(0(),x) -> 0() *(s(x),s(y)) -> s(+(*(x,y),+(x,y))) +(x,0()) -> x +(+(x,y),z) -> +(x,+(y,z)) +(0(),x) -> x +(s(x),s(y)) -> s(s(+(x,y))) prod(cons(x,l)) -> *(x,prod(l)) prod(nil()) -> s(0()) sum(cons(x,l)) -> +(x,sum(l)) sum(nil()) -> 0() - Signature: {*/2,+/2,prod/1,sum/1,*#/2,+#/2,prod#/1,sum#/1} / {0/0,cons/2,nil/0,s/1,c_1/0,c_2/2,c_3/0,c_4/3,c_5/0,c_6/2 ,c_7/0,c_8/1,c_9/2,c_10/0,c_11/2,c_12/0} - Obligation: innermost runtime complexity wrt. defined symbols {*#,+#,prod#,sum#} and constructors {0,cons,nil,s} + Applied Processor: PredecessorEstimation {onSelection = all simple predecessor estimation selector} + Details: We estimate the number of application of {1,3,5,7,10,12} by application of Pre({1,3,5,7,10,12}) = {2,4,6,8,9,11}. Here rules are labelled as follows: 1: *#(x,0()) -> c_1() 2: *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) 3: *#(0(),x) -> c_3() 4: *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) 5: +#(x,0()) -> c_5() 6: +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) 7: +#(0(),x) -> c_7() 8: +#(s(x),s(y)) -> c_8(+#(x,y)) 9: prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) 10: prod#(nil()) -> c_10() 11: sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) 12: sum#(nil()) -> c_12() * Step 3: RemoveWeakSuffixes MAYBE + Considered Problem: - Strict DPs: *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) +#(s(x),s(y)) -> c_8(+#(x,y)) prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) - Weak DPs: *#(x,0()) -> c_1() *#(0(),x) -> c_3() +#(x,0()) -> c_5() +#(0(),x) -> c_7() prod#(nil()) -> c_10() sum#(nil()) -> c_12() - Weak TRS: *(x,0()) -> 0() *(*(x,y),z) -> *(x,*(y,z)) *(0(),x) -> 0() *(s(x),s(y)) -> s(+(*(x,y),+(x,y))) +(x,0()) -> x +(+(x,y),z) -> +(x,+(y,z)) +(0(),x) -> x +(s(x),s(y)) -> s(s(+(x,y))) prod(cons(x,l)) -> *(x,prod(l)) prod(nil()) -> s(0()) sum(cons(x,l)) -> +(x,sum(l)) sum(nil()) -> 0() - Signature: {*/2,+/2,prod/1,sum/1,*#/2,+#/2,prod#/1,sum#/1} / {0/0,cons/2,nil/0,s/1,c_1/0,c_2/2,c_3/0,c_4/3,c_5/0,c_6/2 ,c_7/0,c_8/1,c_9/2,c_10/0,c_11/2,c_12/0} - Obligation: innermost runtime complexity wrt. defined symbols {*#,+#,prod#,sum#} and constructors {0,cons,nil,s} + Applied Processor: RemoveWeakSuffixes + Details: Consider the dependency graph 1:S:*#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) -->_2 *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)):2 -->_1 *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)):2 -->_2 *#(0(),x) -> c_3():8 -->_1 *#(0(),x) -> c_3():8 -->_2 *#(x,0()) -> c_1():7 -->_1 *#(x,0()) -> c_1():7 -->_2 *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)):1 -->_1 *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)):1 2:S:*#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) -->_3 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_1 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_3 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 -->_1 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 -->_3 +#(0(),x) -> c_7():10 -->_1 +#(0(),x) -> c_7():10 -->_3 +#(x,0()) -> c_5():9 -->_1 +#(x,0()) -> c_5():9 -->_2 *#(0(),x) -> c_3():8 -->_2 *#(x,0()) -> c_1():7 -->_2 *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)):2 -->_2 *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)):1 3:S:+#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) -->_2 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_1 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_2 +#(0(),x) -> c_7():10 -->_1 +#(0(),x) -> c_7():10 -->_2 +#(x,0()) -> c_5():9 -->_1 +#(x,0()) -> c_5():9 -->_2 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 -->_1 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 4:S:+#(s(x),s(y)) -> c_8(+#(x,y)) -->_1 +#(0(),x) -> c_7():10 -->_1 +#(x,0()) -> c_5():9 -->_1 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_1 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 5:S:prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) -->_2 prod#(nil()) -> c_10():11 -->_1 *#(0(),x) -> c_3():8 -->_1 *#(x,0()) -> c_1():7 -->_2 prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)):5 -->_1 *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)):2 -->_1 *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)):1 6:S:sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) -->_2 sum#(nil()) -> c_12():12 -->_1 +#(0(),x) -> c_7():10 -->_1 +#(x,0()) -> c_5():9 -->_2 sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)):6 -->_1 +#(s(x),s(y)) -> c_8(+#(x,y)):4 -->_1 +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)):3 7:W:*#(x,0()) -> c_1() 8:W:*#(0(),x) -> c_3() 9:W:+#(x,0()) -> c_5() 10:W:+#(0(),x) -> c_7() 11:W:prod#(nil()) -> c_10() 12:W:sum#(nil()) -> c_12() The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 12: sum#(nil()) -> c_12() 11: prod#(nil()) -> c_10() 7: *#(x,0()) -> c_1() 8: *#(0(),x) -> c_3() 9: +#(x,0()) -> c_5() 10: +#(0(),x) -> c_7() * Step 4: Failure MAYBE + Considered Problem: - Strict DPs: *#(*(x,y),z) -> c_2(*#(x,*(y,z)),*#(y,z)) *#(s(x),s(y)) -> c_4(+#(*(x,y),+(x,y)),*#(x,y),+#(x,y)) +#(+(x,y),z) -> c_6(+#(x,+(y,z)),+#(y,z)) +#(s(x),s(y)) -> c_8(+#(x,y)) prod#(cons(x,l)) -> c_9(*#(x,prod(l)),prod#(l)) sum#(cons(x,l)) -> c_11(+#(x,sum(l)),sum#(l)) - Weak TRS: *(x,0()) -> 0() *(*(x,y),z) -> *(x,*(y,z)) *(0(),x) -> 0() *(s(x),s(y)) -> s(+(*(x,y),+(x,y))) +(x,0()) -> x +(+(x,y),z) -> +(x,+(y,z)) +(0(),x) -> x +(s(x),s(y)) -> s(s(+(x,y))) prod(cons(x,l)) -> *(x,prod(l)) prod(nil()) -> s(0()) sum(cons(x,l)) -> +(x,sum(l)) sum(nil()) -> 0() - Signature: {*/2,+/2,prod/1,sum/1,*#/2,+#/2,prod#/1,sum#/1} / {0/0,cons/2,nil/0,s/1,c_1/0,c_2/2,c_3/0,c_4/3,c_5/0,c_6/2 ,c_7/0,c_8/1,c_9/2,c_10/0,c_11/2,c_12/0} - Obligation: innermost runtime complexity wrt. defined symbols {*#,+#,prod#,sum#} and constructors {0,cons,nil,s} + Applied Processor: EmptyProcessor + Details: The problem is still open. MAYBE