MAYBE 801.00/297.06 MAYBE 801.00/297.06 801.00/297.06 We are left with following problem, upon which TcT provides the 801.00/297.06 certificate MAYBE. 801.00/297.06 801.00/297.06 Strict Trs: 801.00/297.06 { app(X1, X2) -> n__app(X1, X2) 801.00/297.06 , app(nil(), YS) -> YS 801.00/297.06 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.06 , nil() -> n__nil() 801.00/297.06 , activate(X) -> X 801.00/297.06 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.06 , activate(n__from(X)) -> from(activate(X)) 801.00/297.06 , activate(n__s(X)) -> s(activate(X)) 801.00/297.06 , activate(n__nil()) -> nil() 801.00/297.06 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.06 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.06 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.06 , from(X) -> n__from(X) 801.00/297.06 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.06 , zWadr(XS, nil()) -> nil() 801.00/297.06 , zWadr(nil(), YS) -> nil() 801.00/297.06 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.06 cons(app(Y, cons(X, n__nil())), 801.00/297.06 n__zWadr(activate(XS), activate(YS))) 801.00/297.06 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.06 , prefix(X) -> n__prefix(X) 801.00/297.06 , s(X) -> n__s(X) } 801.00/297.06 Obligation: 801.00/297.06 innermost runtime complexity 801.00/297.06 Answer: 801.00/297.06 MAYBE 801.00/297.06 801.00/297.06 Arguments of following rules are not normal-forms: 801.00/297.06 801.00/297.06 { app(nil(), YS) -> YS 801.00/297.06 , zWadr(XS, nil()) -> nil() 801.00/297.06 , zWadr(nil(), YS) -> nil() } 801.00/297.06 801.00/297.06 All above mentioned rules can be savely removed. 801.00/297.06 801.00/297.06 We are left with following problem, upon which TcT provides the 801.00/297.06 certificate MAYBE. 801.00/297.06 801.00/297.06 Strict Trs: 801.00/297.06 { app(X1, X2) -> n__app(X1, X2) 801.00/297.06 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.06 , nil() -> n__nil() 801.00/297.06 , activate(X) -> X 801.00/297.06 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.06 , activate(n__from(X)) -> from(activate(X)) 801.00/297.06 , activate(n__s(X)) -> s(activate(X)) 801.00/297.06 , activate(n__nil()) -> nil() 801.00/297.06 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.06 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.06 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.06 , from(X) -> n__from(X) 801.00/297.06 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.06 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.06 cons(app(Y, cons(X, n__nil())), 801.00/297.06 n__zWadr(activate(XS), activate(YS))) 801.00/297.06 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.06 , prefix(X) -> n__prefix(X) 801.00/297.06 , s(X) -> n__s(X) } 801.00/297.06 Obligation: 801.00/297.06 innermost runtime complexity 801.00/297.06 Answer: 801.00/297.06 MAYBE 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'empty' failed due to the following reason: 801.00/297.06 801.00/297.06 Empty strict component of the problem is NOT empty. 801.00/297.06 801.00/297.06 2) 'Best' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'With Problem ... (timeout of 297 seconds)' failed due to the 801.00/297.06 following reason: 801.00/297.06 801.00/297.06 Computation stopped due to timeout after 297.0 seconds. 801.00/297.06 801.00/297.06 2) 'Best' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'With Problem ... (timeout of 148 seconds) (timeout of 297 801.00/297.06 seconds)' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'empty' failed due to the following reason: 801.00/297.06 801.00/297.06 Empty strict component of the problem is NOT empty. 801.00/297.06 801.00/297.06 2) 'With Problem ...' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'empty' failed due to the following reason: 801.00/297.06 801.00/297.06 Empty strict component of the problem is NOT empty. 801.00/297.06 801.00/297.06 2) 'Fastest' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'With Problem ...' failed due to the following reason: 801.00/297.06 801.00/297.06 None of the processors succeeded. 801.00/297.06 801.00/297.06 Details of failed attempt(s): 801.00/297.06 ----------------------------- 801.00/297.06 1) 'empty' failed due to the following reason: 801.00/297.06 801.00/297.06 Empty strict component of the problem is NOT empty. 801.00/297.06 801.00/297.06 2) 'With Problem ...' failed due to the following reason: 801.00/297.06 801.00/297.06 The weightgap principle applies (using the following nonconstant 801.00/297.06 growth matrix-interpretation) 801.00/297.06 801.00/297.06 The following argument positions are usable: 801.00/297.06 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.06 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.06 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.06 801.00/297.06 TcT has computed the following matrix interpretation satisfying 801.00/297.06 not(EDA) and not(IDA(1)). 801.00/297.06 801.00/297.06 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 801.00/297.06 [nil] = [4] 801.00/297.06 [4] 801.00/297.06 801.00/297.06 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.06 [0 1] [0 1] [0] 801.00/297.06 801.00/297.06 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [0] 801.00/297.06 [0 0] [1 1] [0] 801.00/297.06 801.00/297.06 [activate](x1) = [1 1] x1 + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 801.00/297.06 [from](x1) = [1 0] x1 + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 801.00/297.06 [n__from](x1) = [1 0] x1 + [0] 801.00/297.06 [0 1] [0] 801.00/297.06 801.00/297.06 [n__s](x1) = [0 0] x1 + [0] 801.00/297.06 [1 1] [0] 801.00/297.06 801.00/297.06 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 801.00/297.06 [n__nil] = [0] 801.00/297.06 [0] 801.00/297.06 801.00/297.06 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.06 [0 1] [0 1] [0] 801.00/297.06 801.00/297.06 [prefix](x1) = [1 0] x1 + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 801.00/297.06 [n__prefix](x1) = [0 0] x1 + [0] 801.00/297.06 [1 1] [0] 801.00/297.06 801.00/297.06 [s](x1) = [1 0] x1 + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 801.00/297.06 The order satisfies the following ordering constraints: 801.00/297.06 801.00/297.06 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 ? [1 1] X1 + [0 0] X2 + [0] 801.00/297.06 [0 0] [1 1] [0] 801.00/297.06 = [n__app(X1, X2)] 801.00/297.06 801.00/297.06 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.06 [0 0] [0 0] [0 0] [0] 801.00/297.06 ? [0 0] YS + [1 0] X + [1 1] XS + [0] 801.00/297.06 [1 1] [0 1] [0 0] [0] 801.00/297.06 = [cons(X, n__app(activate(XS), YS))] 801.00/297.06 801.00/297.06 [nil()] = [4] 801.00/297.06 [4] 801.00/297.06 > [0] 801.00/297.06 [0] 801.00/297.06 = [n__nil()] 801.00/297.06 801.00/297.06 [activate(X)] = [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [1 0] X + [0] 801.00/297.06 [0 1] [0] 801.00/297.06 = [X] 801.00/297.06 801.00/297.06 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 = [app(activate(X1), activate(X2))] 801.00/297.06 801.00/297.06 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 >= [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 = [from(activate(X))] 801.00/297.06 801.00/297.06 [activate(n__s(X))] = [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 >= [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 = [s(activate(X))] 801.00/297.06 801.00/297.06 [activate(n__nil())] = [0] 801.00/297.06 [0] 801.00/297.06 ? [4] 801.00/297.06 [4] 801.00/297.06 = [nil()] 801.00/297.06 801.00/297.06 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 = [zWadr(activate(X1), activate(X2))] 801.00/297.06 801.00/297.06 [activate(n__prefix(X))] = [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 >= [1 1] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 = [prefix(activate(X))] 801.00/297.06 801.00/297.06 [from(X)] = [1 0] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [1 0] X + [0] 801.00/297.06 [1 2] [0] 801.00/297.06 = [cons(X, n__from(n__s(X)))] 801.00/297.06 801.00/297.06 [from(X)] = [1 0] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [1 0] X + [0] 801.00/297.06 [0 1] [0] 801.00/297.06 = [n__from(X)] 801.00/297.06 801.00/297.06 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.06 [0 0] [0 0] [0] 801.00/297.06 ? [1 0] X1 + [1 0] X2 + [0] 801.00/297.06 [0 1] [0 1] [0] 801.00/297.06 = [n__zWadr(X1, X2)] 801.00/297.06 801.00/297.06 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.06 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.06 >= [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [0] 801.00/297.06 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.06 = [cons(app(Y, cons(X, n__nil())), 801.00/297.06 n__zWadr(activate(XS), activate(YS)))] 801.00/297.06 801.00/297.06 [prefix(L)] = [1 0] L + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [1 0] L + [4] 801.00/297.06 [1 2] [4] 801.00/297.06 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.06 801.00/297.06 [prefix(X)] = [1 0] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [0 0] X + [0] 801.00/297.06 [1 1] [0] 801.00/297.06 = [n__prefix(X)] 801.00/297.06 801.00/297.06 [s(X)] = [1 0] X + [0] 801.00/297.06 [0 0] [0] 801.00/297.06 ? [0 0] X + [0] 801.00/297.06 [1 1] [0] 801.00/297.06 = [n__s(X)] 801.00/297.06 801.00/297.06 801.00/297.06 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.06 801.00/297.06 We are left with following problem, upon which TcT provides the 801.00/297.06 certificate MAYBE. 801.00/297.06 801.00/297.06 Strict Trs: 801.00/297.06 { app(X1, X2) -> n__app(X1, X2) 801.00/297.06 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.06 , activate(X) -> X 801.00/297.06 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.06 , activate(n__from(X)) -> from(activate(X)) 801.00/297.06 , activate(n__s(X)) -> s(activate(X)) 801.00/297.06 , activate(n__nil()) -> nil() 801.00/297.06 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.06 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.06 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.06 , from(X) -> n__from(X) 801.00/297.06 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.06 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.06 cons(app(Y, cons(X, n__nil())), 801.00/297.06 n__zWadr(activate(XS), activate(YS))) 801.00/297.06 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.06 , prefix(X) -> n__prefix(X) 801.00/297.06 , s(X) -> n__s(X) } 801.00/297.06 Weak Trs: { nil() -> n__nil() } 801.00/297.06 Obligation: 801.00/297.06 innermost runtime complexity 801.00/297.06 Answer: 801.00/297.06 MAYBE 801.00/297.06 801.00/297.06 The weightgap principle applies (using the following nonconstant 801.00/297.06 growth matrix-interpretation) 801.00/297.06 801.00/297.06 The following argument positions are usable: 801.00/297.06 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.06 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.06 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.06 801.00/297.06 TcT has computed the following matrix interpretation satisfying 801.00/297.06 not(EDA) and not(IDA(1)). 801.00/297.06 801.00/297.06 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [nil] = [4] 801.00/297.07 [4] 801.00/297.07 801.00/297.07 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [0] 801.00/297.07 [0 0] [1 1] [0] 801.00/297.07 801.00/297.07 [activate](x1) = [1 1] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [from](x1) = [1 0] x1 + [1] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__from](x1) = [1 0] x1 + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__s](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [n__nil] = [0] 801.00/297.07 [0] 801.00/297.07 801.00/297.07 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [prefix](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [n__prefix](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [s](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 The order satisfies the following ordering constraints: 801.00/297.07 801.00/297.07 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 1] X1 + [0 0] X2 + [0] 801.00/297.07 [0 0] [1 1] [0] 801.00/297.07 = [n__app(X1, X2)] 801.00/297.07 801.00/297.07 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0] 801.00/297.07 ? [0 0] YS + [1 0] X + [1 1] XS + [0] 801.00/297.07 [1 1] [0 1] [0 0] [0] 801.00/297.07 = [cons(X, n__app(activate(XS), YS))] 801.00/297.07 801.00/297.07 [nil()] = [4] 801.00/297.07 [4] 801.00/297.07 > [0] 801.00/297.07 [0] 801.00/297.07 = [n__nil()] 801.00/297.07 801.00/297.07 [activate(X)] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [X] 801.00/297.07 801.00/297.07 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [app(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 1] X + [1] 801.00/297.07 [0 0] [0] 801.00/297.07 = [from(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__s(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 >= [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [s(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__nil())] = [0] 801.00/297.07 [0] 801.00/297.07 ? [4] 801.00/297.07 [4] 801.00/297.07 = [nil()] 801.00/297.07 801.00/297.07 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [zWadr(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__prefix(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 >= [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [prefix(activate(X))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [1] 801.00/297.07 [0 1] [0] 801.00/297.07 ? [1 0] X + [0] 801.00/297.07 [1 2] [0] 801.00/297.07 = [cons(X, n__from(n__s(X)))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [1] 801.00/297.07 [0 1] [0] 801.00/297.07 > [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [n__from(X)] 801.00/297.07 801.00/297.07 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 0] X1 + [1 0] X2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 = [n__zWadr(X1, X2)] 801.00/297.07 801.00/297.07 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 >= [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 = [cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS)))] 801.00/297.07 801.00/297.07 [prefix(L)] = [1 0] L + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] L + [4] 801.00/297.07 [1 2] [4] 801.00/297.07 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.07 801.00/297.07 [prefix(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__prefix(X)] 801.00/297.07 801.00/297.07 [s(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__s(X)] 801.00/297.07 801.00/297.07 801.00/297.07 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.07 801.00/297.07 We are left with following problem, upon which TcT provides the 801.00/297.07 certificate MAYBE. 801.00/297.07 801.00/297.07 Strict Trs: 801.00/297.07 { app(X1, X2) -> n__app(X1, X2) 801.00/297.07 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.07 , activate(X) -> X 801.00/297.07 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.07 , activate(n__from(X)) -> from(activate(X)) 801.00/297.07 , activate(n__s(X)) -> s(activate(X)) 801.00/297.07 , activate(n__nil()) -> nil() 801.00/297.07 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.07 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.07 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.07 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.07 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.07 cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS))) 801.00/297.07 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.07 , prefix(X) -> n__prefix(X) 801.00/297.07 , s(X) -> n__s(X) } 801.00/297.07 Weak Trs: 801.00/297.07 { nil() -> n__nil() 801.00/297.07 , from(X) -> n__from(X) } 801.00/297.07 Obligation: 801.00/297.07 innermost runtime complexity 801.00/297.07 Answer: 801.00/297.07 MAYBE 801.00/297.07 801.00/297.07 The weightgap principle applies (using the following nonconstant 801.00/297.07 growth matrix-interpretation) 801.00/297.07 801.00/297.07 The following argument positions are usable: 801.00/297.07 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.07 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.07 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.07 801.00/297.07 TcT has computed the following matrix interpretation satisfying 801.00/297.07 not(EDA) and not(IDA(1)). 801.00/297.07 801.00/297.07 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [nil] = [4] 801.00/297.07 [4] 801.00/297.07 801.00/297.07 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [4] 801.00/297.07 [0 0] [1 1] [4] 801.00/297.07 801.00/297.07 [activate](x1) = [1 1] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [from](x1) = [1 0] x1 + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__from](x1) = [1 0] x1 + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__s](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [n__nil] = [0] 801.00/297.07 [0] 801.00/297.07 801.00/297.07 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [prefix](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [n__prefix](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [s](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 The order satisfies the following ordering constraints: 801.00/297.07 801.00/297.07 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 1] X1 + [0 0] X2 + [4] 801.00/297.07 [0 0] [1 1] [4] 801.00/297.07 = [n__app(X1, X2)] 801.00/297.07 801.00/297.07 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0] 801.00/297.07 ? [0 0] YS + [1 0] X + [1 1] XS + [4] 801.00/297.07 [1 1] [0 1] [0 0] [4] 801.00/297.07 = [cons(X, n__app(activate(XS), YS))] 801.00/297.07 801.00/297.07 [nil()] = [4] 801.00/297.07 [4] 801.00/297.07 > [0] 801.00/297.07 [0] 801.00/297.07 = [n__nil()] 801.00/297.07 801.00/297.07 [activate(X)] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [X] 801.00/297.07 801.00/297.07 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [8] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 > [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [app(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 1] X + [4] 801.00/297.07 [0 0] [0] 801.00/297.07 = [from(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__s(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 >= [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [s(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__nil())] = [0] 801.00/297.07 [0] 801.00/297.07 ? [4] 801.00/297.07 [4] 801.00/297.07 = [nil()] 801.00/297.07 801.00/297.07 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [zWadr(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__prefix(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 >= [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [prefix(activate(X))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 ? [1 0] X + [0] 801.00/297.07 [1 2] [0] 801.00/297.07 = [cons(X, n__from(n__s(X)))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 > [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [n__from(X)] 801.00/297.07 801.00/297.07 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 0] X1 + [1 0] X2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 = [n__zWadr(X1, X2)] 801.00/297.07 801.00/297.07 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 >= [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 = [cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS)))] 801.00/297.07 801.00/297.07 [prefix(L)] = [1 0] L + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] L + [4] 801.00/297.07 [1 2] [4] 801.00/297.07 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.07 801.00/297.07 [prefix(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__prefix(X)] 801.00/297.07 801.00/297.07 [s(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__s(X)] 801.00/297.07 801.00/297.07 801.00/297.07 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.07 801.00/297.07 We are left with following problem, upon which TcT provides the 801.00/297.07 certificate MAYBE. 801.00/297.07 801.00/297.07 Strict Trs: 801.00/297.07 { app(X1, X2) -> n__app(X1, X2) 801.00/297.07 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.07 , activate(X) -> X 801.00/297.07 , activate(n__from(X)) -> from(activate(X)) 801.00/297.07 , activate(n__s(X)) -> s(activate(X)) 801.00/297.07 , activate(n__nil()) -> nil() 801.00/297.07 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.07 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.07 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.07 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.07 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.07 cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS))) 801.00/297.07 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.07 , prefix(X) -> n__prefix(X) 801.00/297.07 , s(X) -> n__s(X) } 801.00/297.07 Weak Trs: 801.00/297.07 { nil() -> n__nil() 801.00/297.07 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.07 , from(X) -> n__from(X) } 801.00/297.07 Obligation: 801.00/297.07 innermost runtime complexity 801.00/297.07 Answer: 801.00/297.07 MAYBE 801.00/297.07 801.00/297.07 The weightgap principle applies (using the following nonconstant 801.00/297.07 growth matrix-interpretation) 801.00/297.07 801.00/297.07 The following argument positions are usable: 801.00/297.07 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.07 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.07 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.07 801.00/297.07 TcT has computed the following matrix interpretation satisfying 801.00/297.07 not(EDA) and not(IDA(1)). 801.00/297.07 801.00/297.07 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [nil] = [4] 801.00/297.07 [4] 801.00/297.07 801.00/297.07 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [4] 801.00/297.07 [0 0] [1 1] [4] 801.00/297.07 801.00/297.07 [activate](x1) = [1 1] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [from](x1) = [1 0] x1 + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__from](x1) = [1 0] x1 + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__s](x1) = [0 0] x1 + [4] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [n__nil] = [0] 801.00/297.07 [0] 801.00/297.07 801.00/297.07 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [prefix](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [n__prefix](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [s](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 The order satisfies the following ordering constraints: 801.00/297.07 801.00/297.07 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 1] X1 + [0 0] X2 + [4] 801.00/297.07 [0 0] [1 1] [4] 801.00/297.07 = [n__app(X1, X2)] 801.00/297.07 801.00/297.07 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0] 801.00/297.07 ? [0 0] YS + [1 0] X + [1 1] XS + [4] 801.00/297.07 [1 1] [0 1] [0 0] [4] 801.00/297.07 = [cons(X, n__app(activate(XS), YS))] 801.00/297.07 801.00/297.07 [nil()] = [4] 801.00/297.07 [4] 801.00/297.07 > [0] 801.00/297.07 [0] 801.00/297.07 = [n__nil()] 801.00/297.07 801.00/297.07 [activate(X)] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [X] 801.00/297.07 801.00/297.07 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [8] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 > [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [app(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 1] X + [4] 801.00/297.07 [0 0] [0] 801.00/297.07 = [from(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__s(X))] = [1 1] X + [4] 801.00/297.07 [0 0] [0] 801.00/297.07 > [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [s(activate(X))] 801.00/297.07 801.00/297.07 [activate(n__nil())] = [0] 801.00/297.07 [0] 801.00/297.07 ? [4] 801.00/297.07 [4] 801.00/297.07 = [nil()] 801.00/297.07 801.00/297.07 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 = [zWadr(activate(X1), activate(X2))] 801.00/297.07 801.00/297.07 [activate(n__prefix(X))] = [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 >= [1 1] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 = [prefix(activate(X))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 ? [1 0] X + [4] 801.00/297.07 [1 2] [0] 801.00/297.07 = [cons(X, n__from(n__s(X)))] 801.00/297.07 801.00/297.07 [from(X)] = [1 0] X + [4] 801.00/297.07 [0 1] [0] 801.00/297.07 > [1 0] X + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 = [n__from(X)] 801.00/297.07 801.00/297.07 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 ? [1 0] X1 + [1 0] X2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 = [n__zWadr(X1, X2)] 801.00/297.07 801.00/297.07 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 >= [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [0] 801.00/297.07 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.07 = [cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS)))] 801.00/297.07 801.00/297.07 [prefix(L)] = [1 0] L + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [1 0] L + [4] 801.00/297.07 [1 2] [4] 801.00/297.07 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.07 801.00/297.07 [prefix(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__prefix(X)] 801.00/297.07 801.00/297.07 [s(X)] = [1 0] X + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 ? [0 0] X + [4] 801.00/297.07 [1 1] [0] 801.00/297.07 = [n__s(X)] 801.00/297.07 801.00/297.07 801.00/297.07 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.07 801.00/297.07 We are left with following problem, upon which TcT provides the 801.00/297.07 certificate MAYBE. 801.00/297.07 801.00/297.07 Strict Trs: 801.00/297.07 { app(X1, X2) -> n__app(X1, X2) 801.00/297.07 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.07 , activate(X) -> X 801.00/297.07 , activate(n__from(X)) -> from(activate(X)) 801.00/297.07 , activate(n__nil()) -> nil() 801.00/297.07 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.07 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.07 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.07 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.07 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.07 cons(app(Y, cons(X, n__nil())), 801.00/297.07 n__zWadr(activate(XS), activate(YS))) 801.00/297.07 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.07 , prefix(X) -> n__prefix(X) 801.00/297.07 , s(X) -> n__s(X) } 801.00/297.07 Weak Trs: 801.00/297.07 { nil() -> n__nil() 801.00/297.07 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.07 , activate(n__s(X)) -> s(activate(X)) 801.00/297.07 , from(X) -> n__from(X) } 801.00/297.07 Obligation: 801.00/297.07 innermost runtime complexity 801.00/297.07 Answer: 801.00/297.07 MAYBE 801.00/297.07 801.00/297.07 The weightgap principle applies (using the following nonconstant 801.00/297.07 growth matrix-interpretation) 801.00/297.07 801.00/297.07 The following argument positions are usable: 801.00/297.07 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.07 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.07 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.07 801.00/297.07 TcT has computed the following matrix interpretation satisfying 801.00/297.07 not(EDA) and not(IDA(1)). 801.00/297.07 801.00/297.07 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [nil] = [0] 801.00/297.07 [4] 801.00/297.07 801.00/297.07 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [n__app](x1, x2) = [1 0] x1 + [0 0] x2 + [0] 801.00/297.07 [0 1] [1 1] [0] 801.00/297.07 801.00/297.07 [activate](x1) = [1 1] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [from](x1) = [1 0] x1 + [0] 801.00/297.07 [0 1] [4] 801.00/297.07 801.00/297.07 [n__from](x1) = [1 0] x1 + [0] 801.00/297.07 [0 1] [0] 801.00/297.07 801.00/297.07 [n__s](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.07 [0 0] [0 0] [0] 801.00/297.07 801.00/297.07 [n__nil] = [0] 801.00/297.07 [0] 801.00/297.07 801.00/297.07 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [4] 801.00/297.07 [0 1] [0 1] [0] 801.00/297.07 801.00/297.07 [prefix](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.07 801.00/297.07 [n__prefix](x1) = [0 0] x1 + [0] 801.00/297.07 [1 1] [0] 801.00/297.07 801.00/297.07 [s](x1) = [1 0] x1 + [0] 801.00/297.07 [0 0] [0] 801.00/297.08 801.00/297.08 The order satisfies the following ordering constraints: 801.00/297.08 801.00/297.08 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 0] X1 + [0 0] X2 + [0] 801.00/297.08 [0 1] [1 1] [0] 801.00/297.08 = [n__app(X1, X2)] 801.00/297.08 801.00/297.08 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0] 801.00/297.08 ? [0 0] YS + [1 0] X + [1 1] XS + [0] 801.00/297.08 [1 1] [0 1] [0 0] [0] 801.00/297.08 = [cons(X, n__app(activate(XS), YS))] 801.00/297.08 801.00/297.08 [nil()] = [0] 801.00/297.08 [4] 801.00/297.08 >= [0] 801.00/297.08 [0] 801.00/297.08 = [n__nil()] 801.00/297.08 801.00/297.08 [activate(X)] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [X] 801.00/297.08 801.00/297.08 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [app(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 1] X + [0] 801.00/297.08 [0 0] [4] 801.00/297.08 = [from(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__s(X))] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 >= [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 = [s(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__nil())] = [0] 801.00/297.08 [0] 801.00/297.08 ? [0] 801.00/297.08 [4] 801.00/297.08 = [nil()] 801.00/297.08 801.00/297.08 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [4] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 > [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [zWadr(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__prefix(X))] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 >= [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 = [prefix(activate(X))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [0] 801.00/297.08 [0 1] [4] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [1 2] [0] 801.00/297.08 = [cons(X, n__from(n__s(X)))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [0] 801.00/297.08 [0 1] [4] 801.00/297.08 >= [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [n__from(X)] 801.00/297.08 801.00/297.08 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 0] X1 + [1 0] X2 + [4] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 = [n__zWadr(X1, X2)] 801.00/297.08 801.00/297.08 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 ? [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [4] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 = [cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS)))] 801.00/297.08 801.00/297.08 [prefix(L)] = [1 0] L + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] L + [4] 801.00/297.08 [1 2] [4] 801.00/297.08 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.08 801.00/297.08 [prefix(X)] = [1 0] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [0] 801.00/297.08 [1 1] [0] 801.00/297.08 = [n__prefix(X)] 801.00/297.08 801.00/297.08 [s(X)] = [1 0] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [0] 801.00/297.08 [1 1] [0] 801.00/297.08 = [n__s(X)] 801.00/297.08 801.00/297.08 801.00/297.08 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.08 801.00/297.08 We are left with following problem, upon which TcT provides the 801.00/297.08 certificate MAYBE. 801.00/297.08 801.00/297.08 Strict Trs: 801.00/297.08 { app(X1, X2) -> n__app(X1, X2) 801.00/297.08 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.08 , activate(X) -> X 801.00/297.08 , activate(n__from(X)) -> from(activate(X)) 801.00/297.08 , activate(n__nil()) -> nil() 801.00/297.08 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.08 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.08 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.08 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.08 cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS))) 801.00/297.08 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.08 , prefix(X) -> n__prefix(X) 801.00/297.08 , s(X) -> n__s(X) } 801.00/297.08 Weak Trs: 801.00/297.08 { nil() -> n__nil() 801.00/297.08 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.08 , activate(n__s(X)) -> s(activate(X)) 801.00/297.08 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.08 , from(X) -> n__from(X) } 801.00/297.08 Obligation: 801.00/297.08 innermost runtime complexity 801.00/297.08 Answer: 801.00/297.08 MAYBE 801.00/297.08 801.00/297.08 The weightgap principle applies (using the following nonconstant 801.00/297.08 growth matrix-interpretation) 801.00/297.08 801.00/297.08 The following argument positions are usable: 801.00/297.08 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.08 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.08 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.08 801.00/297.08 TcT has computed the following matrix interpretation satisfying 801.00/297.08 not(EDA) and not(IDA(1)). 801.00/297.08 801.00/297.08 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 801.00/297.08 [nil] = [0] 801.00/297.08 [0] 801.00/297.08 801.00/297.08 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 801.00/297.08 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [0] 801.00/297.08 [0 0] [1 1] [0] 801.00/297.08 801.00/297.08 [activate](x1) = [1 1] x1 + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 [from](x1) = [1 0] x1 + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 801.00/297.08 [n__from](x1) = [1 0] x1 + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 801.00/297.08 [n__s](x1) = [0 0] x1 + [0] 801.00/297.08 [1 1] [0] 801.00/297.08 801.00/297.08 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 801.00/297.08 [n__nil] = [0] 801.00/297.08 [0] 801.00/297.08 801.00/297.08 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 801.00/297.08 [prefix](x1) = [1 0] x1 + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 [n__prefix](x1) = [0 0] x1 + [4] 801.00/297.08 [1 1] [0] 801.00/297.08 801.00/297.08 [s](x1) = [1 0] x1 + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 The order satisfies the following ordering constraints: 801.00/297.08 801.00/297.08 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 1] X1 + [0 0] X2 + [0] 801.00/297.08 [0 0] [1 1] [0] 801.00/297.08 = [n__app(X1, X2)] 801.00/297.08 801.00/297.08 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0] 801.00/297.08 ? [0 0] YS + [1 0] X + [1 1] XS + [0] 801.00/297.08 [1 1] [0 1] [0 0] [0] 801.00/297.08 = [cons(X, n__app(activate(XS), YS))] 801.00/297.08 801.00/297.08 [nil()] = [0] 801.00/297.08 [0] 801.00/297.08 >= [0] 801.00/297.08 [0] 801.00/297.08 = [n__nil()] 801.00/297.08 801.00/297.08 [activate(X)] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [X] 801.00/297.08 801.00/297.08 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [app(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__from(X))] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 >= [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 = [from(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__s(X))] = [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 >= [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 = [s(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__nil())] = [0] 801.00/297.08 [0] 801.00/297.08 >= [0] 801.00/297.08 [0] 801.00/297.08 = [nil()] 801.00/297.08 801.00/297.08 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 >= [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [zWadr(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__prefix(X))] = [1 1] X + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 > [1 1] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 = [prefix(activate(X))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [1 2] [0] 801.00/297.08 = [cons(X, n__from(n__s(X)))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 >= [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [n__from(X)] 801.00/297.08 801.00/297.08 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 0] X1 + [1 0] X2 + [0] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 = [n__zWadr(X1, X2)] 801.00/297.08 801.00/297.08 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 >= [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 = [cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS)))] 801.00/297.08 801.00/297.08 [prefix(L)] = [1 0] L + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] L + [4] 801.00/297.08 [1 2] [0] 801.00/297.08 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.08 801.00/297.08 [prefix(X)] = [1 0] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [4] 801.00/297.08 [1 1] [0] 801.00/297.08 = [n__prefix(X)] 801.00/297.08 801.00/297.08 [s(X)] = [1 0] X + [0] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [0] 801.00/297.08 [1 1] [0] 801.00/297.08 = [n__s(X)] 801.00/297.08 801.00/297.08 801.00/297.08 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.08 801.00/297.08 We are left with following problem, upon which TcT provides the 801.00/297.08 certificate MAYBE. 801.00/297.08 801.00/297.08 Strict Trs: 801.00/297.08 { app(X1, X2) -> n__app(X1, X2) 801.00/297.08 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.08 , activate(X) -> X 801.00/297.08 , activate(n__from(X)) -> from(activate(X)) 801.00/297.08 , activate(n__nil()) -> nil() 801.00/297.08 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.08 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.08 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.08 cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS))) 801.00/297.08 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.08 , prefix(X) -> n__prefix(X) 801.00/297.08 , s(X) -> n__s(X) } 801.00/297.08 Weak Trs: 801.00/297.08 { nil() -> n__nil() 801.00/297.08 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.08 , activate(n__s(X)) -> s(activate(X)) 801.00/297.08 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.08 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.08 , from(X) -> n__from(X) } 801.00/297.08 Obligation: 801.00/297.08 innermost runtime complexity 801.00/297.08 Answer: 801.00/297.08 MAYBE 801.00/297.08 801.00/297.08 The weightgap principle applies (using the following nonconstant 801.00/297.08 growth matrix-interpretation) 801.00/297.08 801.00/297.08 The following argument positions are usable: 801.00/297.08 Uargs(app) = {1, 2}, Uargs(cons) = {1, 2}, Uargs(n__app) = {1}, 801.00/297.08 Uargs(from) = {1}, Uargs(zWadr) = {1, 2}, Uargs(n__zWadr) = {1, 2}, 801.00/297.08 Uargs(prefix) = {1}, Uargs(s) = {1} 801.00/297.08 801.00/297.08 TcT has computed the following matrix interpretation satisfying 801.00/297.08 not(EDA) and not(IDA(1)). 801.00/297.08 801.00/297.08 [app](x1, x2) = [1 1] x1 + [1 0] x2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 801.00/297.08 [nil] = [0] 801.00/297.08 [0] 801.00/297.08 801.00/297.08 [cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 801.00/297.08 [n__app](x1, x2) = [1 1] x1 + [0 0] x2 + [4] 801.00/297.08 [0 0] [1 1] [0] 801.00/297.08 801.00/297.08 [activate](x1) = [1 1] x1 + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 [from](x1) = [1 0] x1 + [4] 801.00/297.08 [0 1] [0] 801.00/297.08 801.00/297.08 [n__from](x1) = [1 0] x1 + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 801.00/297.08 [n__s](x1) = [0 0] x1 + [0] 801.00/297.08 [1 1] [4] 801.00/297.08 801.00/297.08 [zWadr](x1, x2) = [1 1] x1 + [1 1] x2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 801.00/297.08 [n__nil] = [0] 801.00/297.08 [0] 801.00/297.08 801.00/297.08 [n__zWadr](x1, x2) = [1 0] x1 + [1 0] x2 + [4] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 801.00/297.08 [prefix](x1) = [1 0] x1 + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 [n__prefix](x1) = [0 0] x1 + [4] 801.00/297.08 [1 1] [4] 801.00/297.08 801.00/297.08 [s](x1) = [1 0] x1 + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 801.00/297.08 The order satisfies the following ordering constraints: 801.00/297.08 801.00/297.08 [app(X1, X2)] = [1 1] X1 + [1 0] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 1] X1 + [0 0] X2 + [4] 801.00/297.08 [0 0] [1 1] [0] 801.00/297.08 = [n__app(X1, X2)] 801.00/297.08 801.00/297.08 [app(cons(X, XS), YS)] = [1 0] YS + [1 1] X + [1 1] XS + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0] 801.00/297.08 ? [0 0] YS + [1 0] X + [1 1] XS + [8] 801.00/297.08 [1 1] [0 1] [0 0] [0] 801.00/297.08 = [cons(X, n__app(activate(XS), YS))] 801.00/297.08 801.00/297.08 [nil()] = [0] 801.00/297.08 [0] 801.00/297.08 >= [0] 801.00/297.08 [0] 801.00/297.08 = [n__nil()] 801.00/297.08 801.00/297.08 [activate(X)] = [1 1] X + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [X] 801.00/297.08 801.00/297.08 [activate(n__app(X1, X2))] = [1 1] X1 + [1 1] X2 + [8] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 >= [1 1] X1 + [1 1] X2 + [8] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [app(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__from(X))] = [1 1] X + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 1] X + [8] 801.00/297.08 [0 0] [0] 801.00/297.08 = [from(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__s(X))] = [1 1] X + [8] 801.00/297.08 [0 0] [0] 801.00/297.08 >= [1 1] X + [8] 801.00/297.08 [0 0] [0] 801.00/297.08 = [s(activate(X))] 801.00/297.08 801.00/297.08 [activate(n__nil())] = [4] 801.00/297.08 [0] 801.00/297.08 > [0] 801.00/297.08 [0] 801.00/297.08 = [nil()] 801.00/297.08 801.00/297.08 [activate(n__zWadr(X1, X2))] = [1 1] X1 + [1 1] X2 + [8] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 >= [1 1] X1 + [1 1] X2 + [8] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 = [zWadr(activate(X1), activate(X2))] 801.00/297.08 801.00/297.08 [activate(n__prefix(X))] = [1 1] X + [12] 801.00/297.08 [0 0] [0] 801.00/297.08 > [1 1] X + [8] 801.00/297.08 [0 0] [0] 801.00/297.08 = [prefix(activate(X))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [4] 801.00/297.08 [0 1] [0] 801.00/297.08 ? [1 0] X + [0] 801.00/297.08 [1 2] [4] 801.00/297.08 = [cons(X, n__from(n__s(X)))] 801.00/297.08 801.00/297.08 [from(X)] = [1 0] X + [4] 801.00/297.08 [0 1] [0] 801.00/297.08 > [1 0] X + [0] 801.00/297.08 [0 1] [0] 801.00/297.08 = [n__from(X)] 801.00/297.08 801.00/297.08 [zWadr(X1, X2)] = [1 1] X1 + [1 1] X2 + [0] 801.00/297.08 [0 0] [0 0] [0] 801.00/297.08 ? [1 0] X1 + [1 0] X2 + [4] 801.00/297.08 [0 1] [0 1] [0] 801.00/297.08 = [n__zWadr(X1, X2)] 801.00/297.08 801.00/297.08 [zWadr(cons(X, XS), cons(Y, YS))] = [1 1] YS + [1 1] X + [1 1] XS + [1 1] Y + [0] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 ? [1 1] YS + [1 0] X + [1 1] XS + [1 1] Y + [12] 801.00/297.08 [0 0] [0 0] [0 0] [0 0] [0] 801.00/297.08 = [cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS)))] 801.00/297.08 801.00/297.08 [prefix(L)] = [1 0] L + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [1 0] L + [8] 801.00/297.08 [1 2] [4] 801.00/297.08 = [cons(nil(), n__zWadr(L, n__prefix(L)))] 801.00/297.08 801.00/297.08 [prefix(X)] = [1 0] X + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [4] 801.00/297.08 [1 1] [4] 801.00/297.08 = [n__prefix(X)] 801.00/297.08 801.00/297.08 [s(X)] = [1 0] X + [4] 801.00/297.08 [0 0] [0] 801.00/297.08 ? [0 0] X + [0] 801.00/297.08 [1 1] [4] 801.00/297.08 = [n__s(X)] 801.00/297.08 801.00/297.08 801.00/297.08 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 801.00/297.08 801.00/297.08 We are left with following problem, upon which TcT provides the 801.00/297.08 certificate MAYBE. 801.00/297.08 801.00/297.08 Strict Trs: 801.00/297.08 { app(X1, X2) -> n__app(X1, X2) 801.00/297.08 , app(cons(X, XS), YS) -> cons(X, n__app(activate(XS), YS)) 801.00/297.08 , activate(X) -> X 801.00/297.08 , activate(n__from(X)) -> from(activate(X)) 801.00/297.08 , from(X) -> cons(X, n__from(n__s(X))) 801.00/297.08 , zWadr(X1, X2) -> n__zWadr(X1, X2) 801.00/297.08 , zWadr(cons(X, XS), cons(Y, YS)) -> 801.00/297.08 cons(app(Y, cons(X, n__nil())), 801.00/297.08 n__zWadr(activate(XS), activate(YS))) 801.00/297.08 , prefix(L) -> cons(nil(), n__zWadr(L, n__prefix(L))) 801.00/297.08 , prefix(X) -> n__prefix(X) 801.00/297.08 , s(X) -> n__s(X) } 801.00/297.08 Weak Trs: 801.00/297.08 { nil() -> n__nil() 801.00/297.08 , activate(n__app(X1, X2)) -> app(activate(X1), activate(X2)) 801.00/297.08 , activate(n__s(X)) -> s(activate(X)) 801.00/297.08 , activate(n__nil()) -> nil() 801.00/297.08 , activate(n__zWadr(X1, X2)) -> zWadr(activate(X1), activate(X2)) 801.00/297.08 , activate(n__prefix(X)) -> prefix(activate(X)) 801.00/297.08 , from(X) -> n__from(X) } 801.00/297.08 Obligation: 801.00/297.08 innermost runtime complexity 801.00/297.08 Answer: 801.00/297.08 MAYBE 801.00/297.08 801.00/297.08 None of the processors succeeded. 801.00/297.08 801.00/297.08 Details of failed attempt(s): 801.00/297.08 ----------------------------- 801.00/297.08 1) 'empty' failed due to the following reason: 801.00/297.08 801.00/297.08 Empty strict component of the problem is NOT empty. 801.00/297.08 801.00/297.08 2) 'With Problem ...' failed due to the following reason: 801.00/297.08 801.00/297.08 None of the processors succeeded. 801.00/297.08 801.00/297.08 Details of failed attempt(s): 801.00/297.08 ----------------------------- 801.00/297.08 1) 'empty' failed due to the following reason: 801.00/297.08 801.00/297.08 Empty strict component of the problem is NOT empty. 801.00/297.08 801.00/297.08 2) 'With Problem ...' failed due to the following reason: 801.00/297.08 801.00/297.08 Empty strict component of the problem is NOT empty. 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 2) 'With Problem ...' failed due to the following reason: 801.00/297.08 801.00/297.08 None of the processors succeeded. 801.00/297.08 801.00/297.08 Details of failed attempt(s): 801.00/297.08 ----------------------------- 801.00/297.08 1) 'empty' failed due to the following reason: 801.00/297.08 801.00/297.08 Empty strict component of the problem is NOT empty. 801.00/297.08 801.00/297.08 2) 'With Problem ...' failed due to the following reason: 801.00/297.08 801.00/297.08 Empty strict component of the problem is NOT empty. 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 2) 'Best' failed due to the following reason: 801.00/297.08 801.00/297.08 None of the processors succeeded. 801.00/297.08 801.00/297.08 Details of failed attempt(s): 801.00/297.08 ----------------------------- 801.00/297.08 1) 'bsearch-popstar (timeout of 297 seconds)' failed due to the 801.00/297.08 following reason: 801.00/297.08 801.00/297.08 The input cannot be shown compatible 801.00/297.08 801.00/297.08 2) 'Polynomial Path Order (PS) (timeout of 297 seconds)' failed due 801.00/297.08 to the following reason: 801.00/297.08 801.00/297.08 The input cannot be shown compatible 801.00/297.08 801.00/297.08 801.00/297.08 3) 'Fastest (timeout of 24 seconds) (timeout of 297 seconds)' 801.00/297.08 failed due to the following reason: 801.00/297.08 801.00/297.08 None of the processors succeeded. 801.00/297.08 801.00/297.08 Details of failed attempt(s): 801.00/297.08 ----------------------------- 801.00/297.08 1) 'Bounds with perSymbol-enrichment and initial automaton 'match'' 801.00/297.08 failed due to the following reason: 801.00/297.08 801.00/297.08 match-boundness of the problem could not be verified. 801.00/297.08 801.00/297.08 2) 'Bounds with minimal-enrichment and initial automaton 'match'' 801.00/297.08 failed due to the following reason: 801.00/297.08 801.00/297.08 match-boundness of the problem could not be verified. 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 801.00/297.08 Arrrr.. 801.68/297.64 EOF