*** 1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: app(cons(X),YS) -> cons(X) app(nil(),YS) -> YS from(X) -> cons(X) prefix(L) -> cons(nil()) zWadr(XS,nil()) -> nil() zWadr(cons(X),cons(Y)) -> cons(app(Y,cons(X))) zWadr(nil(),YS) -> nil() Weak DP Rules: Weak TRS Rules: Signature: {app/2,from/1,prefix/1,zWadr/2} / {cons/1,nil/0} Obligation: Full basic terms: {app,from,prefix,zWadr}/{cons,nil} Applied Processor: ToInnermost Proof: switch to innermost, as the system is overlay and right linear and does not contain weak rules *** 1.1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: app(cons(X),YS) -> cons(X) app(nil(),YS) -> YS from(X) -> cons(X) prefix(L) -> cons(nil()) zWadr(XS,nil()) -> nil() zWadr(cons(X),cons(Y)) -> cons(app(Y,cons(X))) zWadr(nil(),YS) -> nil() Weak DP Rules: Weak TRS Rules: Signature: {app/2,from/1,prefix/1,zWadr/2} / {cons/1,nil/0} Obligation: Innermost basic terms: {app,from,prefix,zWadr}/{cons,nil} Applied Processor: DependencyPairs {dpKind_ = DT} Proof: We add the following dependency tuples: Strict DPs app#(cons(X),YS) -> c_1() app#(nil(),YS) -> c_2() from#(X) -> c_3() prefix#(L) -> c_4() zWadr#(XS,nil()) -> c_5() zWadr#(cons(X),cons(Y)) -> c_6(app#(Y,cons(X))) zWadr#(nil(),YS) -> c_7() Weak DPs and mark the set of starting terms. *** 1.1.1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: app#(cons(X),YS) -> c_1() app#(nil(),YS) -> c_2() from#(X) -> c_3() prefix#(L) -> c_4() zWadr#(XS,nil()) -> c_5() zWadr#(cons(X),cons(Y)) -> c_6(app#(Y,cons(X))) zWadr#(nil(),YS) -> c_7() Strict TRS Rules: Weak DP Rules: Weak TRS Rules: app(cons(X),YS) -> cons(X) app(nil(),YS) -> YS from(X) -> cons(X) prefix(L) -> cons(nil()) zWadr(XS,nil()) -> nil() zWadr(cons(X),cons(Y)) -> cons(app(Y,cons(X))) zWadr(nil(),YS) -> nil() Signature: {app/2,from/1,prefix/1,zWadr/2,app#/2,from#/1,prefix#/1,zWadr#/2} / {cons/1,nil/0,c_1/0,c_2/0,c_3/0,c_4/0,c_5/0,c_6/1,c_7/0} Obligation: Innermost basic terms: {app#,from#,prefix#,zWadr#}/{cons,nil} Applied Processor: UsableRules Proof: We replace rewrite rules by usable rules: app#(cons(X),YS) -> c_1() app#(nil(),YS) -> c_2() from#(X) -> c_3() prefix#(L) -> c_4() zWadr#(XS,nil()) -> c_5() zWadr#(cons(X),cons(Y)) -> c_6(app#(Y,cons(X))) zWadr#(nil(),YS) -> c_7() *** 1.1.1.1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: app#(cons(X),YS) -> c_1() app#(nil(),YS) -> c_2() from#(X) -> c_3() prefix#(L) -> c_4() zWadr#(XS,nil()) -> c_5() zWadr#(cons(X),cons(Y)) -> c_6(app#(Y,cons(X))) zWadr#(nil(),YS) -> c_7() Strict TRS Rules: Weak DP Rules: Weak TRS Rules: Signature: {app/2,from/1,prefix/1,zWadr/2,app#/2,from#/1,prefix#/1,zWadr#/2} / {cons/1,nil/0,c_1/0,c_2/0,c_3/0,c_4/0,c_5/0,c_6/1,c_7/0} Obligation: Innermost basic terms: {app#,from#,prefix#,zWadr#}/{cons,nil} Applied Processor: Trivial Proof: Consider the dependency graph 1:S:app#(cons(X),YS) -> c_1() 2:S:app#(nil(),YS) -> c_2() 3:S:from#(X) -> c_3() 4:S:prefix#(L) -> c_4() 5:S:zWadr#(XS,nil()) -> c_5() 6:S:zWadr#(cons(X),cons(Y)) -> c_6(app#(Y,cons(X))) -->_1 app#(nil(),YS) -> c_2():2 -->_1 app#(cons(X),YS) -> c_1():1 7:S:zWadr#(nil(),YS) -> c_7() The dependency graph contains no loops, we remove all dependency pairs. *** 1.1.1.1.1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: Weak DP Rules: Weak TRS Rules: Signature: {app/2,from/1,prefix/1,zWadr/2,app#/2,from#/1,prefix#/1,zWadr#/2} / {cons/1,nil/0,c_1/0,c_2/0,c_3/0,c_4/0,c_5/0,c_6/1,c_7/0} Obligation: Innermost basic terms: {app#,from#,prefix#,zWadr#}/{cons,nil} Applied Processor: EmptyProcessor Proof: The problem is already closed. The intended complexity is O(1).