MAYBE 729.89/251.17 MAYBE 729.89/251.17 729.89/251.17 We are left with following problem, upon which TcT provides the 729.89/251.17 certificate MAYBE. 729.89/251.17 729.89/251.17 Strict Trs: 729.89/251.17 { active(__(X, nil())) -> mark(X) 729.89/251.17 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 729.89/251.17 , active(__(nil(), X)) -> mark(X) 729.89/251.17 , active(U11(tt())) -> mark(tt()) 729.89/251.17 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 729.89/251.17 , active(U22(tt())) -> mark(tt()) 729.89/251.17 , active(isList(V)) -> mark(U11(isNeList(V))) 729.89/251.17 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 729.89/251.17 , active(isList(nil())) -> mark(tt()) 729.89/251.17 , active(U31(tt())) -> mark(tt()) 729.89/251.17 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 729.89/251.17 , active(U42(tt())) -> mark(tt()) 729.89/251.17 , active(isNeList(V)) -> mark(U31(isQid(V))) 729.89/251.17 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 729.89/251.17 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 729.89/251.17 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 729.89/251.17 , active(U52(tt())) -> mark(tt()) 729.89/251.17 , active(U61(tt())) -> mark(tt()) 729.89/251.17 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 729.89/251.17 , active(U72(tt())) -> mark(tt()) 729.89/251.17 , active(isPal(V)) -> mark(U81(isNePal(V))) 729.89/251.17 , active(isPal(nil())) -> mark(tt()) 729.89/251.17 , active(U81(tt())) -> mark(tt()) 729.89/251.17 , active(isQid(a())) -> mark(tt()) 729.89/251.17 , active(isQid(e())) -> mark(tt()) 729.89/251.17 , active(isQid(i())) -> mark(tt()) 729.89/251.17 , active(isQid(o())) -> mark(tt()) 729.89/251.17 , active(isQid(u())) -> mark(tt()) 729.89/251.17 , active(isNePal(V)) -> mark(U61(isQid(V))) 729.89/251.17 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 729.89/251.17 , __(X1, active(X2)) -> __(X1, X2) 729.89/251.17 , __(X1, mark(X2)) -> __(X1, X2) 729.89/251.17 , __(active(X1), X2) -> __(X1, X2) 729.89/251.17 , __(mark(X1), X2) -> __(X1, X2) 729.89/251.17 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 729.89/251.17 , mark(nil()) -> active(nil()) 729.89/251.17 , mark(U11(X)) -> active(U11(mark(X))) 729.89/251.17 , mark(tt()) -> active(tt()) 729.89/251.17 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 729.89/251.17 , mark(U22(X)) -> active(U22(mark(X))) 729.89/251.17 , mark(isList(X)) -> active(isList(X)) 729.89/251.17 , mark(U31(X)) -> active(U31(mark(X))) 729.89/251.17 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 729.89/251.17 , mark(U42(X)) -> active(U42(mark(X))) 729.89/251.17 , mark(isNeList(X)) -> active(isNeList(X)) 729.89/251.17 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 729.89/251.17 , mark(U52(X)) -> active(U52(mark(X))) 729.89/251.17 , mark(U61(X)) -> active(U61(mark(X))) 729.89/251.17 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 729.89/251.17 , mark(U72(X)) -> active(U72(mark(X))) 729.89/251.17 , mark(isPal(X)) -> active(isPal(X)) 729.89/251.17 , mark(U81(X)) -> active(U81(mark(X))) 729.89/251.17 , mark(isQid(X)) -> active(isQid(X)) 729.89/251.17 , mark(isNePal(X)) -> active(isNePal(X)) 729.89/251.17 , mark(a()) -> active(a()) 729.89/251.17 , mark(e()) -> active(e()) 729.89/251.17 , mark(i()) -> active(i()) 729.89/251.17 , mark(o()) -> active(o()) 729.89/251.17 , mark(u()) -> active(u()) 729.89/251.17 , U11(active(X)) -> U11(X) 729.89/251.17 , U11(mark(X)) -> U11(X) 729.89/251.17 , U21(X1, active(X2)) -> U21(X1, X2) 729.89/251.17 , U21(X1, mark(X2)) -> U21(X1, X2) 729.89/251.17 , U21(active(X1), X2) -> U21(X1, X2) 729.89/251.17 , U21(mark(X1), X2) -> U21(X1, X2) 729.89/251.17 , U22(active(X)) -> U22(X) 729.89/251.17 , U22(mark(X)) -> U22(X) 729.89/251.17 , isList(active(X)) -> isList(X) 729.89/251.17 , isList(mark(X)) -> isList(X) 729.89/251.17 , U31(active(X)) -> U31(X) 729.89/251.17 , U31(mark(X)) -> U31(X) 729.89/251.17 , U41(X1, active(X2)) -> U41(X1, X2) 729.89/251.17 , U41(X1, mark(X2)) -> U41(X1, X2) 729.89/251.17 , U41(active(X1), X2) -> U41(X1, X2) 729.89/251.17 , U41(mark(X1), X2) -> U41(X1, X2) 729.89/251.17 , U42(active(X)) -> U42(X) 729.89/251.17 , U42(mark(X)) -> U42(X) 729.89/251.17 , isNeList(active(X)) -> isNeList(X) 729.89/251.17 , isNeList(mark(X)) -> isNeList(X) 729.89/251.17 , U51(X1, active(X2)) -> U51(X1, X2) 729.89/251.17 , U51(X1, mark(X2)) -> U51(X1, X2) 729.89/251.17 , U51(active(X1), X2) -> U51(X1, X2) 729.89/251.17 , U51(mark(X1), X2) -> U51(X1, X2) 729.89/251.17 , U52(active(X)) -> U52(X) 729.89/251.17 , U52(mark(X)) -> U52(X) 729.89/251.17 , U61(active(X)) -> U61(X) 729.89/251.17 , U61(mark(X)) -> U61(X) 729.89/251.17 , U71(X1, active(X2)) -> U71(X1, X2) 729.89/251.17 , U71(X1, mark(X2)) -> U71(X1, X2) 729.89/251.17 , U71(active(X1), X2) -> U71(X1, X2) 729.89/251.17 , U71(mark(X1), X2) -> U71(X1, X2) 729.89/251.17 , U72(active(X)) -> U72(X) 729.89/251.17 , U72(mark(X)) -> U72(X) 729.89/251.17 , isPal(active(X)) -> isPal(X) 729.89/251.17 , isPal(mark(X)) -> isPal(X) 729.89/251.17 , U81(active(X)) -> U81(X) 729.89/251.17 , U81(mark(X)) -> U81(X) 729.89/251.17 , isQid(active(X)) -> isQid(X) 729.89/251.17 , isQid(mark(X)) -> isQid(X) 729.89/251.17 , isNePal(active(X)) -> isNePal(X) 729.89/251.17 , isNePal(mark(X)) -> isNePal(X) } 729.89/251.17 Obligation: 729.89/251.17 derivational complexity 729.89/251.17 Answer: 729.89/251.17 MAYBE 729.89/251.17 729.89/251.17 None of the processors succeeded. 729.89/251.17 729.89/251.17 Details of failed attempt(s): 729.89/251.17 ----------------------------- 729.89/251.17 1) 'Inspecting Problem... (timeout of 297 seconds)' failed due to 729.89/251.17 the following reason: 729.89/251.17 729.89/251.17 The weightgap principle applies (using the following nonconstant 729.89/251.17 growth matrix-interpretation) 729.89/251.17 729.89/251.17 TcT has computed the following triangular matrix interpretation. 729.89/251.17 Note that the diagonal of the component-wise maxima of 729.89/251.17 interpretation-entries contains no more than 1 non-zero entries. 729.89/251.17 729.89/251.17 [active](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [__](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [mark](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [nil] = [0] 729.89/251.17 729.89/251.17 [U11](x1) = [1] x1 + [1] 729.89/251.17 729.89/251.17 [tt] = [0] 729.89/251.17 729.89/251.17 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U22](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isList](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U31](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U42](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isNeList](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U52](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U61](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U72](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isPal](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U81](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isQid](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isNePal](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [a] = [0] 729.89/251.17 729.89/251.17 [e] = [0] 729.89/251.17 729.89/251.17 [i] = [0] 729.89/251.17 729.89/251.17 [o] = [0] 729.89/251.17 729.89/251.17 [u] = [0] 729.89/251.17 729.89/251.17 The order satisfies the following ordering constraints: 729.89/251.17 729.89/251.17 [active(__(X, nil()))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [mark(X)] 729.89/251.17 729.89/251.17 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 729.89/251.17 >= [1] X + [1] Y + [1] Z + [0] 729.89/251.17 = [mark(__(X, __(Y, Z)))] 729.89/251.17 729.89/251.17 [active(__(nil(), X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [mark(X)] 729.89/251.17 729.89/251.17 [active(U11(tt()))] = [1] 729.89/251.17 > [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U21(tt(), V2))] = [1] V2 + [0] 729.89/251.17 >= [1] V2 + [0] 729.89/251.17 = [mark(U22(isList(V2)))] 729.89/251.17 729.89/251.17 [active(U22(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isList(V))] = [1] V + [0] 729.89/251.17 ? [1] V + [1] 729.89/251.17 = [mark(U11(isNeList(V)))] 729.89/251.17 729.89/251.17 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.17 >= [1] V2 + [1] V1 + [0] 729.89/251.17 = [mark(U21(isList(V1), V2))] 729.89/251.17 729.89/251.17 [active(isList(nil()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U31(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U41(tt(), V2))] = [1] V2 + [0] 729.89/251.17 >= [1] V2 + [0] 729.89/251.17 = [mark(U42(isNeList(V2)))] 729.89/251.17 729.89/251.17 [active(U42(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isNeList(V))] = [1] V + [0] 729.89/251.17 >= [1] V + [0] 729.89/251.17 = [mark(U31(isQid(V)))] 729.89/251.17 729.89/251.17 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.17 >= [1] V2 + [1] V1 + [0] 729.89/251.17 = [mark(U41(isList(V1), V2))] 729.89/251.17 729.89/251.17 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.17 >= [1] V2 + [1] V1 + [0] 729.89/251.17 = [mark(U51(isNeList(V1), V2))] 729.89/251.17 729.89/251.17 [active(U51(tt(), V2))] = [1] V2 + [0] 729.89/251.17 >= [1] V2 + [0] 729.89/251.17 = [mark(U52(isList(V2)))] 729.89/251.17 729.89/251.17 [active(U52(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U61(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U71(tt(), P))] = [1] P + [0] 729.89/251.17 >= [1] P + [0] 729.89/251.17 = [mark(U72(isPal(P)))] 729.89/251.17 729.89/251.17 [active(U72(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isPal(V))] = [1] V + [0] 729.89/251.17 >= [1] V + [0] 729.89/251.17 = [mark(U81(isNePal(V)))] 729.89/251.17 729.89/251.17 [active(isPal(nil()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U81(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isQid(a()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isQid(e()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isQid(i()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isQid(o()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isQid(u()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isNePal(V))] = [1] V + [0] 729.89/251.17 >= [1] V + [0] 729.89/251.17 = [mark(U61(isQid(V)))] 729.89/251.17 729.89/251.17 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 729.89/251.17 >= [1] P + [1] I + [0] 729.89/251.17 = [mark(U71(isQid(I), P))] 729.89/251.17 729.89/251.17 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [__(X1, X2)] 729.89/251.17 729.89/251.17 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [__(X1, X2)] 729.89/251.17 729.89/251.17 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [__(X1, X2)] 729.89/251.17 729.89/251.17 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [__(X1, X2)] 729.89/251.17 729.89/251.17 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [active(__(mark(X1), mark(X2)))] 729.89/251.17 729.89/251.17 [mark(nil())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(nil())] 729.89/251.17 729.89/251.17 [mark(U11(X))] = [1] X + [1] 729.89/251.17 >= [1] X + [1] 729.89/251.17 = [active(U11(mark(X)))] 729.89/251.17 729.89/251.17 [mark(tt())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(tt())] 729.89/251.17 729.89/251.17 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [active(U21(mark(X1), X2))] 729.89/251.17 729.89/251.17 [mark(U22(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U22(mark(X)))] 729.89/251.17 729.89/251.17 [mark(isList(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(isList(X))] 729.89/251.17 729.89/251.17 [mark(U31(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U31(mark(X)))] 729.89/251.17 729.89/251.17 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [active(U41(mark(X1), X2))] 729.89/251.17 729.89/251.17 [mark(U42(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U42(mark(X)))] 729.89/251.17 729.89/251.17 [mark(isNeList(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(isNeList(X))] 729.89/251.17 729.89/251.17 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [active(U51(mark(X1), X2))] 729.89/251.17 729.89/251.17 [mark(U52(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U52(mark(X)))] 729.89/251.17 729.89/251.17 [mark(U61(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U61(mark(X)))] 729.89/251.17 729.89/251.17 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [active(U71(mark(X1), X2))] 729.89/251.17 729.89/251.17 [mark(U72(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U72(mark(X)))] 729.89/251.17 729.89/251.17 [mark(isPal(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(isPal(X))] 729.89/251.17 729.89/251.17 [mark(U81(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(U81(mark(X)))] 729.89/251.17 729.89/251.17 [mark(isQid(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(isQid(X))] 729.89/251.17 729.89/251.17 [mark(isNePal(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [active(isNePal(X))] 729.89/251.17 729.89/251.17 [mark(a())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(a())] 729.89/251.17 729.89/251.17 [mark(e())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(e())] 729.89/251.17 729.89/251.17 [mark(i())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(i())] 729.89/251.17 729.89/251.17 [mark(o())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(o())] 729.89/251.17 729.89/251.17 [mark(u())] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [active(u())] 729.89/251.17 729.89/251.17 [U11(active(X))] = [1] X + [1] 729.89/251.17 >= [1] X + [1] 729.89/251.17 = [U11(X)] 729.89/251.17 729.89/251.17 [U11(mark(X))] = [1] X + [1] 729.89/251.17 >= [1] X + [1] 729.89/251.17 = [U11(X)] 729.89/251.17 729.89/251.17 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U21(X1, X2)] 729.89/251.17 729.89/251.17 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U21(X1, X2)] 729.89/251.17 729.89/251.17 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U21(X1, X2)] 729.89/251.17 729.89/251.17 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U21(X1, X2)] 729.89/251.17 729.89/251.17 [U22(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U22(X)] 729.89/251.17 729.89/251.17 [U22(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U22(X)] 729.89/251.17 729.89/251.17 [isList(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isList(X)] 729.89/251.17 729.89/251.17 [isList(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isList(X)] 729.89/251.17 729.89/251.17 [U31(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U31(X)] 729.89/251.17 729.89/251.17 [U31(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U31(X)] 729.89/251.17 729.89/251.17 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U41(X1, X2)] 729.89/251.17 729.89/251.17 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U41(X1, X2)] 729.89/251.17 729.89/251.17 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U41(X1, X2)] 729.89/251.17 729.89/251.17 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U41(X1, X2)] 729.89/251.17 729.89/251.17 [U42(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U42(X)] 729.89/251.17 729.89/251.17 [U42(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U42(X)] 729.89/251.17 729.89/251.17 [isNeList(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isNeList(X)] 729.89/251.17 729.89/251.17 [isNeList(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isNeList(X)] 729.89/251.17 729.89/251.17 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U51(X1, X2)] 729.89/251.17 729.89/251.17 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U51(X1, X2)] 729.89/251.17 729.89/251.17 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U51(X1, X2)] 729.89/251.17 729.89/251.17 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U51(X1, X2)] 729.89/251.17 729.89/251.17 [U52(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U52(X)] 729.89/251.17 729.89/251.17 [U52(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U52(X)] 729.89/251.17 729.89/251.17 [U61(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U61(X)] 729.89/251.17 729.89/251.17 [U61(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U61(X)] 729.89/251.17 729.89/251.17 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U71(X1, X2)] 729.89/251.17 729.89/251.17 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U71(X1, X2)] 729.89/251.17 729.89/251.17 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U71(X1, X2)] 729.89/251.17 729.89/251.17 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.17 >= [1] X1 + [1] X2 + [0] 729.89/251.17 = [U71(X1, X2)] 729.89/251.17 729.89/251.17 [U72(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U72(X)] 729.89/251.17 729.89/251.17 [U72(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U72(X)] 729.89/251.17 729.89/251.17 [isPal(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isPal(X)] 729.89/251.17 729.89/251.17 [isPal(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isPal(X)] 729.89/251.17 729.89/251.17 [U81(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U81(X)] 729.89/251.17 729.89/251.17 [U81(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [U81(X)] 729.89/251.17 729.89/251.17 [isQid(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isQid(X)] 729.89/251.17 729.89/251.17 [isQid(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isQid(X)] 729.89/251.17 729.89/251.17 [isNePal(active(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isNePal(X)] 729.89/251.17 729.89/251.17 [isNePal(mark(X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [isNePal(X)] 729.89/251.17 729.89/251.17 729.89/251.17 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 729.89/251.17 729.89/251.17 We are left with following problem, upon which TcT provides the 729.89/251.17 certificate MAYBE. 729.89/251.17 729.89/251.17 Strict Trs: 729.89/251.17 { active(__(X, nil())) -> mark(X) 729.89/251.17 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 729.89/251.17 , active(__(nil(), X)) -> mark(X) 729.89/251.17 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 729.89/251.17 , active(U22(tt())) -> mark(tt()) 729.89/251.17 , active(isList(V)) -> mark(U11(isNeList(V))) 729.89/251.17 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 729.89/251.17 , active(isList(nil())) -> mark(tt()) 729.89/251.17 , active(U31(tt())) -> mark(tt()) 729.89/251.17 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 729.89/251.17 , active(U42(tt())) -> mark(tt()) 729.89/251.17 , active(isNeList(V)) -> mark(U31(isQid(V))) 729.89/251.17 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 729.89/251.17 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 729.89/251.17 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 729.89/251.17 , active(U52(tt())) -> mark(tt()) 729.89/251.17 , active(U61(tt())) -> mark(tt()) 729.89/251.17 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 729.89/251.17 , active(U72(tt())) -> mark(tt()) 729.89/251.17 , active(isPal(V)) -> mark(U81(isNePal(V))) 729.89/251.17 , active(isPal(nil())) -> mark(tt()) 729.89/251.17 , active(U81(tt())) -> mark(tt()) 729.89/251.17 , active(isQid(a())) -> mark(tt()) 729.89/251.17 , active(isQid(e())) -> mark(tt()) 729.89/251.17 , active(isQid(i())) -> mark(tt()) 729.89/251.17 , active(isQid(o())) -> mark(tt()) 729.89/251.17 , active(isQid(u())) -> mark(tt()) 729.89/251.17 , active(isNePal(V)) -> mark(U61(isQid(V))) 729.89/251.17 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 729.89/251.17 , __(X1, active(X2)) -> __(X1, X2) 729.89/251.17 , __(X1, mark(X2)) -> __(X1, X2) 729.89/251.17 , __(active(X1), X2) -> __(X1, X2) 729.89/251.17 , __(mark(X1), X2) -> __(X1, X2) 729.89/251.17 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 729.89/251.17 , mark(nil()) -> active(nil()) 729.89/251.17 , mark(U11(X)) -> active(U11(mark(X))) 729.89/251.17 , mark(tt()) -> active(tt()) 729.89/251.17 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 729.89/251.17 , mark(U22(X)) -> active(U22(mark(X))) 729.89/251.17 , mark(isList(X)) -> active(isList(X)) 729.89/251.17 , mark(U31(X)) -> active(U31(mark(X))) 729.89/251.17 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 729.89/251.17 , mark(U42(X)) -> active(U42(mark(X))) 729.89/251.17 , mark(isNeList(X)) -> active(isNeList(X)) 729.89/251.17 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 729.89/251.17 , mark(U52(X)) -> active(U52(mark(X))) 729.89/251.17 , mark(U61(X)) -> active(U61(mark(X))) 729.89/251.17 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 729.89/251.17 , mark(U72(X)) -> active(U72(mark(X))) 729.89/251.17 , mark(isPal(X)) -> active(isPal(X)) 729.89/251.17 , mark(U81(X)) -> active(U81(mark(X))) 729.89/251.17 , mark(isQid(X)) -> active(isQid(X)) 729.89/251.17 , mark(isNePal(X)) -> active(isNePal(X)) 729.89/251.17 , mark(a()) -> active(a()) 729.89/251.17 , mark(e()) -> active(e()) 729.89/251.17 , mark(i()) -> active(i()) 729.89/251.17 , mark(o()) -> active(o()) 729.89/251.17 , mark(u()) -> active(u()) 729.89/251.17 , U11(active(X)) -> U11(X) 729.89/251.17 , U11(mark(X)) -> U11(X) 729.89/251.17 , U21(X1, active(X2)) -> U21(X1, X2) 729.89/251.17 , U21(X1, mark(X2)) -> U21(X1, X2) 729.89/251.17 , U21(active(X1), X2) -> U21(X1, X2) 729.89/251.17 , U21(mark(X1), X2) -> U21(X1, X2) 729.89/251.17 , U22(active(X)) -> U22(X) 729.89/251.17 , U22(mark(X)) -> U22(X) 729.89/251.17 , isList(active(X)) -> isList(X) 729.89/251.17 , isList(mark(X)) -> isList(X) 729.89/251.17 , U31(active(X)) -> U31(X) 729.89/251.17 , U31(mark(X)) -> U31(X) 729.89/251.17 , U41(X1, active(X2)) -> U41(X1, X2) 729.89/251.17 , U41(X1, mark(X2)) -> U41(X1, X2) 729.89/251.17 , U41(active(X1), X2) -> U41(X1, X2) 729.89/251.17 , U41(mark(X1), X2) -> U41(X1, X2) 729.89/251.17 , U42(active(X)) -> U42(X) 729.89/251.17 , U42(mark(X)) -> U42(X) 729.89/251.17 , isNeList(active(X)) -> isNeList(X) 729.89/251.17 , isNeList(mark(X)) -> isNeList(X) 729.89/251.17 , U51(X1, active(X2)) -> U51(X1, X2) 729.89/251.17 , U51(X1, mark(X2)) -> U51(X1, X2) 729.89/251.17 , U51(active(X1), X2) -> U51(X1, X2) 729.89/251.17 , U51(mark(X1), X2) -> U51(X1, X2) 729.89/251.17 , U52(active(X)) -> U52(X) 729.89/251.17 , U52(mark(X)) -> U52(X) 729.89/251.17 , U61(active(X)) -> U61(X) 729.89/251.17 , U61(mark(X)) -> U61(X) 729.89/251.17 , U71(X1, active(X2)) -> U71(X1, X2) 729.89/251.17 , U71(X1, mark(X2)) -> U71(X1, X2) 729.89/251.17 , U71(active(X1), X2) -> U71(X1, X2) 729.89/251.17 , U71(mark(X1), X2) -> U71(X1, X2) 729.89/251.17 , U72(active(X)) -> U72(X) 729.89/251.17 , U72(mark(X)) -> U72(X) 729.89/251.17 , isPal(active(X)) -> isPal(X) 729.89/251.17 , isPal(mark(X)) -> isPal(X) 729.89/251.17 , U81(active(X)) -> U81(X) 729.89/251.17 , U81(mark(X)) -> U81(X) 729.89/251.17 , isQid(active(X)) -> isQid(X) 729.89/251.17 , isQid(mark(X)) -> isQid(X) 729.89/251.17 , isNePal(active(X)) -> isNePal(X) 729.89/251.17 , isNePal(mark(X)) -> isNePal(X) } 729.89/251.17 Weak Trs: { active(U11(tt())) -> mark(tt()) } 729.89/251.17 Obligation: 729.89/251.17 derivational complexity 729.89/251.17 Answer: 729.89/251.17 MAYBE 729.89/251.17 729.89/251.17 The weightgap principle applies (using the following nonconstant 729.89/251.17 growth matrix-interpretation) 729.89/251.17 729.89/251.17 TcT has computed the following triangular matrix interpretation. 729.89/251.17 Note that the diagonal of the component-wise maxima of 729.89/251.17 interpretation-entries contains no more than 1 non-zero entries. 729.89/251.17 729.89/251.17 [active](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [__](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [mark](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [nil] = [0] 729.89/251.17 729.89/251.17 [U11](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [tt] = [0] 729.89/251.17 729.89/251.17 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U22](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isList](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U31](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U42](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isNeList](x1) = [1] x1 + [1] 729.89/251.17 729.89/251.17 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U52](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U61](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.17 729.89/251.17 [U72](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isPal](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [U81](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isQid](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [isNePal](x1) = [1] x1 + [0] 729.89/251.17 729.89/251.17 [a] = [0] 729.89/251.17 729.89/251.17 [e] = [0] 729.89/251.17 729.89/251.17 [i] = [0] 729.89/251.17 729.89/251.17 [o] = [0] 729.89/251.17 729.89/251.17 [u] = [0] 729.89/251.17 729.89/251.17 The order satisfies the following ordering constraints: 729.89/251.17 729.89/251.17 [active(__(X, nil()))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [mark(X)] 729.89/251.17 729.89/251.17 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 729.89/251.17 >= [1] X + [1] Y + [1] Z + [0] 729.89/251.17 = [mark(__(X, __(Y, Z)))] 729.89/251.17 729.89/251.17 [active(__(nil(), X))] = [1] X + [0] 729.89/251.17 >= [1] X + [0] 729.89/251.17 = [mark(X)] 729.89/251.17 729.89/251.17 [active(U11(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U21(tt(), V2))] = [1] V2 + [0] 729.89/251.17 >= [1] V2 + [0] 729.89/251.17 = [mark(U22(isList(V2)))] 729.89/251.17 729.89/251.17 [active(U22(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isList(V))] = [1] V + [0] 729.89/251.17 ? [1] V + [1] 729.89/251.17 = [mark(U11(isNeList(V)))] 729.89/251.17 729.89/251.17 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.17 >= [1] V2 + [1] V1 + [0] 729.89/251.17 = [mark(U21(isList(V1), V2))] 729.89/251.17 729.89/251.17 [active(isList(nil()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U31(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(U41(tt(), V2))] = [1] V2 + [0] 729.89/251.17 ? [1] V2 + [1] 729.89/251.17 = [mark(U42(isNeList(V2)))] 729.89/251.17 729.89/251.17 [active(U42(tt()))] = [0] 729.89/251.17 >= [0] 729.89/251.17 = [mark(tt())] 729.89/251.17 729.89/251.17 [active(isNeList(V))] = [1] V + [1] 729.89/251.17 > [1] V + [0] 729.89/251.18 = [mark(U31(isQid(V)))] 729.89/251.18 729.89/251.18 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 729.89/251.18 > [1] V2 + [1] V1 + [0] 729.89/251.18 = [mark(U41(isList(V1), V2))] 729.89/251.18 729.89/251.18 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 729.89/251.18 >= [1] V2 + [1] V1 + [1] 729.89/251.18 = [mark(U51(isNeList(V1), V2))] 729.89/251.18 729.89/251.18 [active(U51(tt(), V2))] = [1] V2 + [0] 729.89/251.18 >= [1] V2 + [0] 729.89/251.18 = [mark(U52(isList(V2)))] 729.89/251.18 729.89/251.18 [active(U52(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U61(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U71(tt(), P))] = [1] P + [0] 729.89/251.18 >= [1] P + [0] 729.89/251.18 = [mark(U72(isPal(P)))] 729.89/251.18 729.89/251.18 [active(U72(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isPal(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U81(isNePal(V)))] 729.89/251.18 729.89/251.18 [active(isPal(nil()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U81(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(a()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(e()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(i()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(o()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(u()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isNePal(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U61(isQid(V)))] 729.89/251.18 729.89/251.18 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 729.89/251.18 >= [1] P + [1] I + [0] 729.89/251.18 = [mark(U71(isQid(I), P))] 729.89/251.18 729.89/251.18 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(__(mark(X1), mark(X2)))] 729.89/251.18 729.89/251.18 [mark(nil())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(nil())] 729.89/251.18 729.89/251.18 [mark(U11(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U11(mark(X)))] 729.89/251.18 729.89/251.18 [mark(tt())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(tt())] 729.89/251.18 729.89/251.18 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U21(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U22(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U22(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isList(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isList(X))] 729.89/251.18 729.89/251.18 [mark(U31(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U31(mark(X)))] 729.89/251.18 729.89/251.18 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U41(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U42(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U42(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isNeList(X))] = [1] X + [1] 729.89/251.18 >= [1] X + [1] 729.89/251.18 = [active(isNeList(X))] 729.89/251.18 729.89/251.18 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U51(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U52(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U52(mark(X)))] 729.89/251.18 729.89/251.18 [mark(U61(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U61(mark(X)))] 729.89/251.18 729.89/251.18 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U71(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U72(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U72(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isPal(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isPal(X))] 729.89/251.18 729.89/251.18 [mark(U81(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U81(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isQid(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isQid(X))] 729.89/251.18 729.89/251.18 [mark(isNePal(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isNePal(X))] 729.89/251.18 729.89/251.18 [mark(a())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(a())] 729.89/251.18 729.89/251.18 [mark(e())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(e())] 729.89/251.18 729.89/251.18 [mark(i())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(i())] 729.89/251.18 729.89/251.18 [mark(o())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(o())] 729.89/251.18 729.89/251.18 [mark(u())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(u())] 729.89/251.18 729.89/251.18 [U11(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U11(X)] 729.89/251.18 729.89/251.18 [U11(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U11(X)] 729.89/251.18 729.89/251.18 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U21(X1, X2)] 729.89/251.18 729.89/251.18 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U21(X1, X2)] 729.89/251.18 729.89/251.18 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U21(X1, X2)] 729.89/251.18 729.89/251.18 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U21(X1, X2)] 729.89/251.18 729.89/251.18 [U22(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U22(X)] 729.89/251.18 729.89/251.18 [U22(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U22(X)] 729.89/251.18 729.89/251.18 [isList(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isList(X)] 729.89/251.18 729.89/251.18 [isList(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isList(X)] 729.89/251.18 729.89/251.18 [U31(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U31(X)] 729.89/251.18 729.89/251.18 [U31(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U31(X)] 729.89/251.18 729.89/251.18 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U41(X1, X2)] 729.89/251.18 729.89/251.18 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U41(X1, X2)] 729.89/251.18 729.89/251.18 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U41(X1, X2)] 729.89/251.18 729.89/251.18 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U41(X1, X2)] 729.89/251.18 729.89/251.18 [U42(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U42(X)] 729.89/251.18 729.89/251.18 [U42(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U42(X)] 729.89/251.18 729.89/251.18 [isNeList(active(X))] = [1] X + [1] 729.89/251.18 >= [1] X + [1] 729.89/251.18 = [isNeList(X)] 729.89/251.18 729.89/251.18 [isNeList(mark(X))] = [1] X + [1] 729.89/251.18 >= [1] X + [1] 729.89/251.18 = [isNeList(X)] 729.89/251.18 729.89/251.18 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U51(X1, X2)] 729.89/251.18 729.89/251.18 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U51(X1, X2)] 729.89/251.18 729.89/251.18 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U51(X1, X2)] 729.89/251.18 729.89/251.18 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U51(X1, X2)] 729.89/251.18 729.89/251.18 [U52(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U52(X)] 729.89/251.18 729.89/251.18 [U52(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U52(X)] 729.89/251.18 729.89/251.18 [U61(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U61(X)] 729.89/251.18 729.89/251.18 [U61(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U61(X)] 729.89/251.18 729.89/251.18 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U71(X1, X2)] 729.89/251.18 729.89/251.18 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U71(X1, X2)] 729.89/251.18 729.89/251.18 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U71(X1, X2)] 729.89/251.18 729.89/251.18 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [U71(X1, X2)] 729.89/251.18 729.89/251.18 [U72(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U72(X)] 729.89/251.18 729.89/251.18 [U72(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U72(X)] 729.89/251.18 729.89/251.18 [isPal(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isPal(X)] 729.89/251.18 729.89/251.18 [isPal(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isPal(X)] 729.89/251.18 729.89/251.18 [U81(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U81(X)] 729.89/251.18 729.89/251.18 [U81(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [U81(X)] 729.89/251.18 729.89/251.18 [isQid(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isQid(X)] 729.89/251.18 729.89/251.18 [isQid(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isQid(X)] 729.89/251.18 729.89/251.18 [isNePal(active(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isNePal(X)] 729.89/251.18 729.89/251.18 [isNePal(mark(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [isNePal(X)] 729.89/251.18 729.89/251.18 729.89/251.18 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 729.89/251.18 729.89/251.18 We are left with following problem, upon which TcT provides the 729.89/251.18 certificate MAYBE. 729.89/251.18 729.89/251.18 Strict Trs: 729.89/251.18 { active(__(X, nil())) -> mark(X) 729.89/251.18 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 729.89/251.18 , active(__(nil(), X)) -> mark(X) 729.89/251.18 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 729.89/251.18 , active(U22(tt())) -> mark(tt()) 729.89/251.18 , active(isList(V)) -> mark(U11(isNeList(V))) 729.89/251.18 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 729.89/251.18 , active(isList(nil())) -> mark(tt()) 729.89/251.18 , active(U31(tt())) -> mark(tt()) 729.89/251.18 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 729.89/251.18 , active(U42(tt())) -> mark(tt()) 729.89/251.18 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 729.89/251.18 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 729.89/251.18 , active(U52(tt())) -> mark(tt()) 729.89/251.18 , active(U61(tt())) -> mark(tt()) 729.89/251.18 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 729.89/251.18 , active(U72(tt())) -> mark(tt()) 729.89/251.18 , active(isPal(V)) -> mark(U81(isNePal(V))) 729.89/251.18 , active(isPal(nil())) -> mark(tt()) 729.89/251.18 , active(U81(tt())) -> mark(tt()) 729.89/251.18 , active(isQid(a())) -> mark(tt()) 729.89/251.18 , active(isQid(e())) -> mark(tt()) 729.89/251.18 , active(isQid(i())) -> mark(tt()) 729.89/251.18 , active(isQid(o())) -> mark(tt()) 729.89/251.18 , active(isQid(u())) -> mark(tt()) 729.89/251.18 , active(isNePal(V)) -> mark(U61(isQid(V))) 729.89/251.18 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 729.89/251.18 , __(X1, active(X2)) -> __(X1, X2) 729.89/251.18 , __(X1, mark(X2)) -> __(X1, X2) 729.89/251.18 , __(active(X1), X2) -> __(X1, X2) 729.89/251.18 , __(mark(X1), X2) -> __(X1, X2) 729.89/251.18 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 729.89/251.18 , mark(nil()) -> active(nil()) 729.89/251.18 , mark(U11(X)) -> active(U11(mark(X))) 729.89/251.18 , mark(tt()) -> active(tt()) 729.89/251.18 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 729.89/251.18 , mark(U22(X)) -> active(U22(mark(X))) 729.89/251.18 , mark(isList(X)) -> active(isList(X)) 729.89/251.18 , mark(U31(X)) -> active(U31(mark(X))) 729.89/251.18 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 729.89/251.18 , mark(U42(X)) -> active(U42(mark(X))) 729.89/251.18 , mark(isNeList(X)) -> active(isNeList(X)) 729.89/251.18 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 729.89/251.18 , mark(U52(X)) -> active(U52(mark(X))) 729.89/251.18 , mark(U61(X)) -> active(U61(mark(X))) 729.89/251.18 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 729.89/251.18 , mark(U72(X)) -> active(U72(mark(X))) 729.89/251.18 , mark(isPal(X)) -> active(isPal(X)) 729.89/251.18 , mark(U81(X)) -> active(U81(mark(X))) 729.89/251.18 , mark(isQid(X)) -> active(isQid(X)) 729.89/251.18 , mark(isNePal(X)) -> active(isNePal(X)) 729.89/251.18 , mark(a()) -> active(a()) 729.89/251.18 , mark(e()) -> active(e()) 729.89/251.18 , mark(i()) -> active(i()) 729.89/251.18 , mark(o()) -> active(o()) 729.89/251.18 , mark(u()) -> active(u()) 729.89/251.18 , U11(active(X)) -> U11(X) 729.89/251.18 , U11(mark(X)) -> U11(X) 729.89/251.18 , U21(X1, active(X2)) -> U21(X1, X2) 729.89/251.18 , U21(X1, mark(X2)) -> U21(X1, X2) 729.89/251.18 , U21(active(X1), X2) -> U21(X1, X2) 729.89/251.18 , U21(mark(X1), X2) -> U21(X1, X2) 729.89/251.18 , U22(active(X)) -> U22(X) 729.89/251.18 , U22(mark(X)) -> U22(X) 729.89/251.18 , isList(active(X)) -> isList(X) 729.89/251.18 , isList(mark(X)) -> isList(X) 729.89/251.18 , U31(active(X)) -> U31(X) 729.89/251.18 , U31(mark(X)) -> U31(X) 729.89/251.18 , U41(X1, active(X2)) -> U41(X1, X2) 729.89/251.18 , U41(X1, mark(X2)) -> U41(X1, X2) 729.89/251.18 , U41(active(X1), X2) -> U41(X1, X2) 729.89/251.18 , U41(mark(X1), X2) -> U41(X1, X2) 729.89/251.18 , U42(active(X)) -> U42(X) 729.89/251.18 , U42(mark(X)) -> U42(X) 729.89/251.18 , isNeList(active(X)) -> isNeList(X) 729.89/251.18 , isNeList(mark(X)) -> isNeList(X) 729.89/251.18 , U51(X1, active(X2)) -> U51(X1, X2) 729.89/251.18 , U51(X1, mark(X2)) -> U51(X1, X2) 729.89/251.18 , U51(active(X1), X2) -> U51(X1, X2) 729.89/251.18 , U51(mark(X1), X2) -> U51(X1, X2) 729.89/251.18 , U52(active(X)) -> U52(X) 729.89/251.18 , U52(mark(X)) -> U52(X) 729.89/251.18 , U61(active(X)) -> U61(X) 729.89/251.18 , U61(mark(X)) -> U61(X) 729.89/251.18 , U71(X1, active(X2)) -> U71(X1, X2) 729.89/251.18 , U71(X1, mark(X2)) -> U71(X1, X2) 729.89/251.18 , U71(active(X1), X2) -> U71(X1, X2) 729.89/251.18 , U71(mark(X1), X2) -> U71(X1, X2) 729.89/251.18 , U72(active(X)) -> U72(X) 729.89/251.18 , U72(mark(X)) -> U72(X) 729.89/251.18 , isPal(active(X)) -> isPal(X) 729.89/251.18 , isPal(mark(X)) -> isPal(X) 729.89/251.18 , U81(active(X)) -> U81(X) 729.89/251.18 , U81(mark(X)) -> U81(X) 729.89/251.18 , isQid(active(X)) -> isQid(X) 729.89/251.18 , isQid(mark(X)) -> isQid(X) 729.89/251.18 , isNePal(active(X)) -> isNePal(X) 729.89/251.18 , isNePal(mark(X)) -> isNePal(X) } 729.89/251.18 Weak Trs: 729.89/251.18 { active(U11(tt())) -> mark(tt()) 729.89/251.18 , active(isNeList(V)) -> mark(U31(isQid(V))) 729.89/251.18 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) } 729.89/251.18 Obligation: 729.89/251.18 derivational complexity 729.89/251.18 Answer: 729.89/251.18 MAYBE 729.89/251.18 729.89/251.18 The weightgap principle applies (using the following nonconstant 729.89/251.18 growth matrix-interpretation) 729.89/251.18 729.89/251.18 TcT has computed the following triangular matrix interpretation. 729.89/251.18 Note that the diagonal of the component-wise maxima of 729.89/251.18 interpretation-entries contains no more than 1 non-zero entries. 729.89/251.18 729.89/251.18 [active](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [__](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.18 729.89/251.18 [mark](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [nil] = [0] 729.89/251.18 729.89/251.18 [U11](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [tt] = [0] 729.89/251.18 729.89/251.18 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.18 729.89/251.18 [U22](x1) = [1] x1 + [1] 729.89/251.18 729.89/251.18 [isList](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U31](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.18 729.89/251.18 [U42](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [isNeList](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.18 729.89/251.18 [U52](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U61](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.18 729.89/251.18 [U72](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [isPal](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [U81](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [isQid](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [isNePal](x1) = [1] x1 + [0] 729.89/251.18 729.89/251.18 [a] = [0] 729.89/251.18 729.89/251.18 [e] = [0] 729.89/251.18 729.89/251.18 [i] = [0] 729.89/251.18 729.89/251.18 [o] = [0] 729.89/251.18 729.89/251.18 [u] = [0] 729.89/251.18 729.89/251.18 The order satisfies the following ordering constraints: 729.89/251.18 729.89/251.18 [active(__(X, nil()))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [mark(X)] 729.89/251.18 729.89/251.18 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 729.89/251.18 >= [1] X + [1] Y + [1] Z + [0] 729.89/251.18 = [mark(__(X, __(Y, Z)))] 729.89/251.18 729.89/251.18 [active(__(nil(), X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [mark(X)] 729.89/251.18 729.89/251.18 [active(U11(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U21(tt(), V2))] = [1] V2 + [0] 729.89/251.18 ? [1] V2 + [1] 729.89/251.18 = [mark(U22(isList(V2)))] 729.89/251.18 729.89/251.18 [active(U22(tt()))] = [1] 729.89/251.18 > [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isList(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U11(isNeList(V)))] 729.89/251.18 729.89/251.18 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.18 >= [1] V2 + [1] V1 + [0] 729.89/251.18 = [mark(U21(isList(V1), V2))] 729.89/251.18 729.89/251.18 [active(isList(nil()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U31(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U41(tt(), V2))] = [1] V2 + [0] 729.89/251.18 >= [1] V2 + [0] 729.89/251.18 = [mark(U42(isNeList(V2)))] 729.89/251.18 729.89/251.18 [active(U42(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isNeList(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U31(isQid(V)))] 729.89/251.18 729.89/251.18 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.18 >= [1] V2 + [1] V1 + [0] 729.89/251.18 = [mark(U41(isList(V1), V2))] 729.89/251.18 729.89/251.18 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.18 >= [1] V2 + [1] V1 + [0] 729.89/251.18 = [mark(U51(isNeList(V1), V2))] 729.89/251.18 729.89/251.18 [active(U51(tt(), V2))] = [1] V2 + [0] 729.89/251.18 >= [1] V2 + [0] 729.89/251.18 = [mark(U52(isList(V2)))] 729.89/251.18 729.89/251.18 [active(U52(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U61(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U71(tt(), P))] = [1] P + [0] 729.89/251.18 >= [1] P + [0] 729.89/251.18 = [mark(U72(isPal(P)))] 729.89/251.18 729.89/251.18 [active(U72(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isPal(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U81(isNePal(V)))] 729.89/251.18 729.89/251.18 [active(isPal(nil()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(U81(tt()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(a()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(e()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(i()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(o()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isQid(u()))] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [mark(tt())] 729.89/251.18 729.89/251.18 [active(isNePal(V))] = [1] V + [0] 729.89/251.18 >= [1] V + [0] 729.89/251.18 = [mark(U61(isQid(V)))] 729.89/251.18 729.89/251.18 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 729.89/251.18 >= [1] P + [1] I + [0] 729.89/251.18 = [mark(U71(isQid(I), P))] 729.89/251.18 729.89/251.18 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [__(X1, X2)] 729.89/251.18 729.89/251.18 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(__(mark(X1), mark(X2)))] 729.89/251.18 729.89/251.18 [mark(nil())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(nil())] 729.89/251.18 729.89/251.18 [mark(U11(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U11(mark(X)))] 729.89/251.18 729.89/251.18 [mark(tt())] = [0] 729.89/251.18 >= [0] 729.89/251.18 = [active(tt())] 729.89/251.18 729.89/251.18 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U21(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U22(X))] = [1] X + [1] 729.89/251.18 >= [1] X + [1] 729.89/251.18 = [active(U22(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isList(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isList(X))] 729.89/251.18 729.89/251.18 [mark(U31(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U31(mark(X)))] 729.89/251.18 729.89/251.18 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U41(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U42(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U42(mark(X)))] 729.89/251.18 729.89/251.18 [mark(isNeList(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(isNeList(X))] 729.89/251.18 729.89/251.18 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.18 >= [1] X1 + [1] X2 + [0] 729.89/251.18 = [active(U51(mark(X1), X2))] 729.89/251.18 729.89/251.18 [mark(U52(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U52(mark(X)))] 729.89/251.18 729.89/251.18 [mark(U61(X))] = [1] X + [0] 729.89/251.18 >= [1] X + [0] 729.89/251.18 = [active(U61(mark(X)))] 729.89/251.19 729.89/251.19 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(U71(mark(X1), X2))] 729.89/251.19 729.89/251.19 [mark(U72(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U72(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isPal(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isPal(X))] 729.89/251.19 729.89/251.19 [mark(U81(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U81(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isQid(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isQid(X))] 729.89/251.19 729.89/251.19 [mark(isNePal(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isNePal(X))] 729.89/251.19 729.89/251.19 [mark(a())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(a())] 729.89/251.19 729.89/251.19 [mark(e())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(e())] 729.89/251.19 729.89/251.19 [mark(i())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(i())] 729.89/251.19 729.89/251.19 [mark(o())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(o())] 729.89/251.19 729.89/251.19 [mark(u())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(u())] 729.89/251.19 729.89/251.19 [U11(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U11(X)] 729.89/251.19 729.89/251.19 [U11(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U11(X)] 729.89/251.19 729.89/251.19 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U22(active(X))] = [1] X + [1] 729.89/251.19 >= [1] X + [1] 729.89/251.19 = [U22(X)] 729.89/251.19 729.89/251.19 [U22(mark(X))] = [1] X + [1] 729.89/251.19 >= [1] X + [1] 729.89/251.19 = [U22(X)] 729.89/251.19 729.89/251.19 [isList(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isList(X)] 729.89/251.19 729.89/251.19 [isList(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isList(X)] 729.89/251.19 729.89/251.19 [U31(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U31(X)] 729.89/251.19 729.89/251.19 [U31(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U31(X)] 729.89/251.19 729.89/251.19 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U42(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U42(X)] 729.89/251.19 729.89/251.19 [U42(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U42(X)] 729.89/251.19 729.89/251.19 [isNeList(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNeList(X)] 729.89/251.19 729.89/251.19 [isNeList(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNeList(X)] 729.89/251.19 729.89/251.19 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U52(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U52(X)] 729.89/251.19 729.89/251.19 [U52(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U52(X)] 729.89/251.19 729.89/251.19 [U61(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U61(X)] 729.89/251.19 729.89/251.19 [U61(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U61(X)] 729.89/251.19 729.89/251.19 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U71(X1, X2)] 729.89/251.19 729.89/251.19 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U71(X1, X2)] 729.89/251.19 729.89/251.19 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U71(X1, X2)] 729.89/251.19 729.89/251.19 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U71(X1, X2)] 729.89/251.19 729.89/251.19 [U72(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U72(X)] 729.89/251.19 729.89/251.19 [U72(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U72(X)] 729.89/251.19 729.89/251.19 [isPal(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isPal(X)] 729.89/251.19 729.89/251.19 [isPal(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isPal(X)] 729.89/251.19 729.89/251.19 [U81(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U81(X)] 729.89/251.19 729.89/251.19 [U81(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U81(X)] 729.89/251.19 729.89/251.19 [isQid(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isQid(X)] 729.89/251.19 729.89/251.19 [isQid(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isQid(X)] 729.89/251.19 729.89/251.19 [isNePal(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNePal(X)] 729.89/251.19 729.89/251.19 [isNePal(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNePal(X)] 729.89/251.19 729.89/251.19 729.89/251.19 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 729.89/251.19 729.89/251.19 We are left with following problem, upon which TcT provides the 729.89/251.19 certificate MAYBE. 729.89/251.19 729.89/251.19 Strict Trs: 729.89/251.19 { active(__(X, nil())) -> mark(X) 729.89/251.19 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 729.89/251.19 , active(__(nil(), X)) -> mark(X) 729.89/251.19 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 729.89/251.19 , active(isList(V)) -> mark(U11(isNeList(V))) 729.89/251.19 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 729.89/251.19 , active(isList(nil())) -> mark(tt()) 729.89/251.19 , active(U31(tt())) -> mark(tt()) 729.89/251.19 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 729.89/251.19 , active(U42(tt())) -> mark(tt()) 729.89/251.19 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 729.89/251.19 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 729.89/251.19 , active(U52(tt())) -> mark(tt()) 729.89/251.19 , active(U61(tt())) -> mark(tt()) 729.89/251.19 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 729.89/251.19 , active(U72(tt())) -> mark(tt()) 729.89/251.19 , active(isPal(V)) -> mark(U81(isNePal(V))) 729.89/251.19 , active(isPal(nil())) -> mark(tt()) 729.89/251.19 , active(U81(tt())) -> mark(tt()) 729.89/251.19 , active(isQid(a())) -> mark(tt()) 729.89/251.19 , active(isQid(e())) -> mark(tt()) 729.89/251.19 , active(isQid(i())) -> mark(tt()) 729.89/251.19 , active(isQid(o())) -> mark(tt()) 729.89/251.19 , active(isQid(u())) -> mark(tt()) 729.89/251.19 , active(isNePal(V)) -> mark(U61(isQid(V))) 729.89/251.19 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 729.89/251.19 , __(X1, active(X2)) -> __(X1, X2) 729.89/251.19 , __(X1, mark(X2)) -> __(X1, X2) 729.89/251.19 , __(active(X1), X2) -> __(X1, X2) 729.89/251.19 , __(mark(X1), X2) -> __(X1, X2) 729.89/251.19 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 729.89/251.19 , mark(nil()) -> active(nil()) 729.89/251.19 , mark(U11(X)) -> active(U11(mark(X))) 729.89/251.19 , mark(tt()) -> active(tt()) 729.89/251.19 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 729.89/251.19 , mark(U22(X)) -> active(U22(mark(X))) 729.89/251.19 , mark(isList(X)) -> active(isList(X)) 729.89/251.19 , mark(U31(X)) -> active(U31(mark(X))) 729.89/251.19 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 729.89/251.19 , mark(U42(X)) -> active(U42(mark(X))) 729.89/251.19 , mark(isNeList(X)) -> active(isNeList(X)) 729.89/251.19 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 729.89/251.19 , mark(U52(X)) -> active(U52(mark(X))) 729.89/251.19 , mark(U61(X)) -> active(U61(mark(X))) 729.89/251.19 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 729.89/251.19 , mark(U72(X)) -> active(U72(mark(X))) 729.89/251.19 , mark(isPal(X)) -> active(isPal(X)) 729.89/251.19 , mark(U81(X)) -> active(U81(mark(X))) 729.89/251.19 , mark(isQid(X)) -> active(isQid(X)) 729.89/251.19 , mark(isNePal(X)) -> active(isNePal(X)) 729.89/251.19 , mark(a()) -> active(a()) 729.89/251.19 , mark(e()) -> active(e()) 729.89/251.19 , mark(i()) -> active(i()) 729.89/251.19 , mark(o()) -> active(o()) 729.89/251.19 , mark(u()) -> active(u()) 729.89/251.19 , U11(active(X)) -> U11(X) 729.89/251.19 , U11(mark(X)) -> U11(X) 729.89/251.19 , U21(X1, active(X2)) -> U21(X1, X2) 729.89/251.19 , U21(X1, mark(X2)) -> U21(X1, X2) 729.89/251.19 , U21(active(X1), X2) -> U21(X1, X2) 729.89/251.19 , U21(mark(X1), X2) -> U21(X1, X2) 729.89/251.19 , U22(active(X)) -> U22(X) 729.89/251.19 , U22(mark(X)) -> U22(X) 729.89/251.19 , isList(active(X)) -> isList(X) 729.89/251.19 , isList(mark(X)) -> isList(X) 729.89/251.19 , U31(active(X)) -> U31(X) 729.89/251.19 , U31(mark(X)) -> U31(X) 729.89/251.19 , U41(X1, active(X2)) -> U41(X1, X2) 729.89/251.19 , U41(X1, mark(X2)) -> U41(X1, X2) 729.89/251.19 , U41(active(X1), X2) -> U41(X1, X2) 729.89/251.19 , U41(mark(X1), X2) -> U41(X1, X2) 729.89/251.19 , U42(active(X)) -> U42(X) 729.89/251.19 , U42(mark(X)) -> U42(X) 729.89/251.19 , isNeList(active(X)) -> isNeList(X) 729.89/251.19 , isNeList(mark(X)) -> isNeList(X) 729.89/251.19 , U51(X1, active(X2)) -> U51(X1, X2) 729.89/251.19 , U51(X1, mark(X2)) -> U51(X1, X2) 729.89/251.19 , U51(active(X1), X2) -> U51(X1, X2) 729.89/251.19 , U51(mark(X1), X2) -> U51(X1, X2) 729.89/251.19 , U52(active(X)) -> U52(X) 729.89/251.19 , U52(mark(X)) -> U52(X) 729.89/251.19 , U61(active(X)) -> U61(X) 729.89/251.19 , U61(mark(X)) -> U61(X) 729.89/251.19 , U71(X1, active(X2)) -> U71(X1, X2) 729.89/251.19 , U71(X1, mark(X2)) -> U71(X1, X2) 729.89/251.19 , U71(active(X1), X2) -> U71(X1, X2) 729.89/251.19 , U71(mark(X1), X2) -> U71(X1, X2) 729.89/251.19 , U72(active(X)) -> U72(X) 729.89/251.19 , U72(mark(X)) -> U72(X) 729.89/251.19 , isPal(active(X)) -> isPal(X) 729.89/251.19 , isPal(mark(X)) -> isPal(X) 729.89/251.19 , U81(active(X)) -> U81(X) 729.89/251.19 , U81(mark(X)) -> U81(X) 729.89/251.19 , isQid(active(X)) -> isQid(X) 729.89/251.19 , isQid(mark(X)) -> isQid(X) 729.89/251.19 , isNePal(active(X)) -> isNePal(X) 729.89/251.19 , isNePal(mark(X)) -> isNePal(X) } 729.89/251.19 Weak Trs: 729.89/251.19 { active(U11(tt())) -> mark(tt()) 729.89/251.19 , active(U22(tt())) -> mark(tt()) 729.89/251.19 , active(isNeList(V)) -> mark(U31(isQid(V))) 729.89/251.19 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) } 729.89/251.19 Obligation: 729.89/251.19 derivational complexity 729.89/251.19 Answer: 729.89/251.19 MAYBE 729.89/251.19 729.89/251.19 The weightgap principle applies (using the following nonconstant 729.89/251.19 growth matrix-interpretation) 729.89/251.19 729.89/251.19 TcT has computed the following triangular matrix interpretation. 729.89/251.19 Note that the diagonal of the component-wise maxima of 729.89/251.19 interpretation-entries contains no more than 1 non-zero entries. 729.89/251.19 729.89/251.19 [active](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [__](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.19 729.89/251.19 [mark](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [nil] = [0] 729.89/251.19 729.89/251.19 [U11](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [tt] = [0] 729.89/251.19 729.89/251.19 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.19 729.89/251.19 [U22](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [isList](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U31](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.19 729.89/251.19 [U42](x1) = [1] x1 + [1] 729.89/251.19 729.89/251.19 [isNeList](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.19 729.89/251.19 [U52](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U61](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 729.89/251.19 729.89/251.19 [U72](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [isPal](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [U81](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [isQid](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [isNePal](x1) = [1] x1 + [0] 729.89/251.19 729.89/251.19 [a] = [0] 729.89/251.19 729.89/251.19 [e] = [0] 729.89/251.19 729.89/251.19 [i] = [0] 729.89/251.19 729.89/251.19 [o] = [0] 729.89/251.19 729.89/251.19 [u] = [0] 729.89/251.19 729.89/251.19 The order satisfies the following ordering constraints: 729.89/251.19 729.89/251.19 [active(__(X, nil()))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [mark(X)] 729.89/251.19 729.89/251.19 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 729.89/251.19 >= [1] X + [1] Y + [1] Z + [0] 729.89/251.19 = [mark(__(X, __(Y, Z)))] 729.89/251.19 729.89/251.19 [active(__(nil(), X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [mark(X)] 729.89/251.19 729.89/251.19 [active(U11(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U21(tt(), V2))] = [1] V2 + [0] 729.89/251.19 >= [1] V2 + [0] 729.89/251.19 = [mark(U22(isList(V2)))] 729.89/251.19 729.89/251.19 [active(U22(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isList(V))] = [1] V + [0] 729.89/251.19 >= [1] V + [0] 729.89/251.19 = [mark(U11(isNeList(V)))] 729.89/251.19 729.89/251.19 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.19 >= [1] V2 + [1] V1 + [0] 729.89/251.19 = [mark(U21(isList(V1), V2))] 729.89/251.19 729.89/251.19 [active(isList(nil()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U31(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U41(tt(), V2))] = [1] V2 + [0] 729.89/251.19 ? [1] V2 + [1] 729.89/251.19 = [mark(U42(isNeList(V2)))] 729.89/251.19 729.89/251.19 [active(U42(tt()))] = [1] 729.89/251.19 > [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isNeList(V))] = [1] V + [0] 729.89/251.19 >= [1] V + [0] 729.89/251.19 = [mark(U31(isQid(V)))] 729.89/251.19 729.89/251.19 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.19 >= [1] V2 + [1] V1 + [0] 729.89/251.19 = [mark(U41(isList(V1), V2))] 729.89/251.19 729.89/251.19 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 729.89/251.19 >= [1] V2 + [1] V1 + [0] 729.89/251.19 = [mark(U51(isNeList(V1), V2))] 729.89/251.19 729.89/251.19 [active(U51(tt(), V2))] = [1] V2 + [0] 729.89/251.19 >= [1] V2 + [0] 729.89/251.19 = [mark(U52(isList(V2)))] 729.89/251.19 729.89/251.19 [active(U52(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U61(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U71(tt(), P))] = [1] P + [0] 729.89/251.19 >= [1] P + [0] 729.89/251.19 = [mark(U72(isPal(P)))] 729.89/251.19 729.89/251.19 [active(U72(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isPal(V))] = [1] V + [0] 729.89/251.19 >= [1] V + [0] 729.89/251.19 = [mark(U81(isNePal(V)))] 729.89/251.19 729.89/251.19 [active(isPal(nil()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(U81(tt()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isQid(a()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isQid(e()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isQid(i()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isQid(o()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isQid(u()))] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [mark(tt())] 729.89/251.19 729.89/251.19 [active(isNePal(V))] = [1] V + [0] 729.89/251.19 >= [1] V + [0] 729.89/251.19 = [mark(U61(isQid(V)))] 729.89/251.19 729.89/251.19 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 729.89/251.19 >= [1] P + [1] I + [0] 729.89/251.19 = [mark(U71(isQid(I), P))] 729.89/251.19 729.89/251.19 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [__(X1, X2)] 729.89/251.19 729.89/251.19 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [__(X1, X2)] 729.89/251.19 729.89/251.19 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [__(X1, X2)] 729.89/251.19 729.89/251.19 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [__(X1, X2)] 729.89/251.19 729.89/251.19 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(__(mark(X1), mark(X2)))] 729.89/251.19 729.89/251.19 [mark(nil())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(nil())] 729.89/251.19 729.89/251.19 [mark(U11(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U11(mark(X)))] 729.89/251.19 729.89/251.19 [mark(tt())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(tt())] 729.89/251.19 729.89/251.19 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(U21(mark(X1), X2))] 729.89/251.19 729.89/251.19 [mark(U22(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U22(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isList(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isList(X))] 729.89/251.19 729.89/251.19 [mark(U31(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U31(mark(X)))] 729.89/251.19 729.89/251.19 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(U41(mark(X1), X2))] 729.89/251.19 729.89/251.19 [mark(U42(X))] = [1] X + [1] 729.89/251.19 >= [1] X + [1] 729.89/251.19 = [active(U42(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isNeList(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isNeList(X))] 729.89/251.19 729.89/251.19 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(U51(mark(X1), X2))] 729.89/251.19 729.89/251.19 [mark(U52(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U52(mark(X)))] 729.89/251.19 729.89/251.19 [mark(U61(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U61(mark(X)))] 729.89/251.19 729.89/251.19 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [active(U71(mark(X1), X2))] 729.89/251.19 729.89/251.19 [mark(U72(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U72(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isPal(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isPal(X))] 729.89/251.19 729.89/251.19 [mark(U81(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(U81(mark(X)))] 729.89/251.19 729.89/251.19 [mark(isQid(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isQid(X))] 729.89/251.19 729.89/251.19 [mark(isNePal(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [active(isNePal(X))] 729.89/251.19 729.89/251.19 [mark(a())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(a())] 729.89/251.19 729.89/251.19 [mark(e())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(e())] 729.89/251.19 729.89/251.19 [mark(i())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(i())] 729.89/251.19 729.89/251.19 [mark(o())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(o())] 729.89/251.19 729.89/251.19 [mark(u())] = [0] 729.89/251.19 >= [0] 729.89/251.19 = [active(u())] 729.89/251.19 729.89/251.19 [U11(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U11(X)] 729.89/251.19 729.89/251.19 [U11(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U11(X)] 729.89/251.19 729.89/251.19 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U21(X1, X2)] 729.89/251.19 729.89/251.19 [U22(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U22(X)] 729.89/251.19 729.89/251.19 [U22(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U22(X)] 729.89/251.19 729.89/251.19 [isList(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isList(X)] 729.89/251.19 729.89/251.19 [isList(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isList(X)] 729.89/251.19 729.89/251.19 [U31(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U31(X)] 729.89/251.19 729.89/251.19 [U31(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [U31(X)] 729.89/251.19 729.89/251.19 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U41(X1, X2)] 729.89/251.19 729.89/251.19 [U42(active(X))] = [1] X + [1] 729.89/251.19 >= [1] X + [1] 729.89/251.19 = [U42(X)] 729.89/251.19 729.89/251.19 [U42(mark(X))] = [1] X + [1] 729.89/251.19 >= [1] X + [1] 729.89/251.19 = [U42(X)] 729.89/251.19 729.89/251.19 [isNeList(active(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNeList(X)] 729.89/251.19 729.89/251.19 [isNeList(mark(X))] = [1] X + [0] 729.89/251.19 >= [1] X + [0] 729.89/251.19 = [isNeList(X)] 729.89/251.19 729.89/251.19 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 729.89/251.19 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 729.89/251.19 >= [1] X1 + [1] X2 + [0] 729.89/251.19 = [U51(X1, X2)] 729.89/251.19 730.10/251.20 [U52(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U52(X)] 730.10/251.20 730.10/251.20 [U52(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U52(X)] 730.10/251.20 730.10/251.20 [U61(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U61(X)] 730.10/251.20 730.10/251.20 [U61(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U61(X)] 730.10/251.20 730.10/251.20 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U72(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U72(X)] 730.10/251.20 730.10/251.20 [U72(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U72(X)] 730.10/251.20 730.10/251.20 [isPal(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isPal(X)] 730.10/251.20 730.10/251.20 [isPal(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isPal(X)] 730.10/251.20 730.10/251.20 [U81(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U81(X)] 730.10/251.20 730.10/251.20 [U81(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U81(X)] 730.10/251.20 730.10/251.20 [isQid(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isQid(X)] 730.10/251.20 730.10/251.20 [isQid(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isQid(X)] 730.10/251.20 730.10/251.20 [isNePal(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isNePal(X)] 730.10/251.20 730.10/251.20 [isNePal(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isNePal(X)] 730.10/251.20 730.10/251.20 730.10/251.20 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.20 730.10/251.20 We are left with following problem, upon which TcT provides the 730.10/251.20 certificate MAYBE. 730.10/251.20 730.10/251.20 Strict Trs: 730.10/251.20 { active(__(X, nil())) -> mark(X) 730.10/251.20 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.20 , active(__(nil(), X)) -> mark(X) 730.10/251.20 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.20 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.20 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.20 , active(isList(nil())) -> mark(tt()) 730.10/251.20 , active(U31(tt())) -> mark(tt()) 730.10/251.20 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.20 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.20 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.20 , active(U52(tt())) -> mark(tt()) 730.10/251.20 , active(U61(tt())) -> mark(tt()) 730.10/251.20 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.20 , active(U72(tt())) -> mark(tt()) 730.10/251.20 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.20 , active(isPal(nil())) -> mark(tt()) 730.10/251.20 , active(U81(tt())) -> mark(tt()) 730.10/251.20 , active(isQid(a())) -> mark(tt()) 730.10/251.20 , active(isQid(e())) -> mark(tt()) 730.10/251.20 , active(isQid(i())) -> mark(tt()) 730.10/251.20 , active(isQid(o())) -> mark(tt()) 730.10/251.20 , active(isQid(u())) -> mark(tt()) 730.10/251.20 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.20 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.20 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.20 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.20 , __(active(X1), X2) -> __(X1, X2) 730.10/251.20 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.20 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.20 , mark(nil()) -> active(nil()) 730.10/251.20 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.20 , mark(tt()) -> active(tt()) 730.10/251.20 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.20 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.20 , mark(isList(X)) -> active(isList(X)) 730.10/251.20 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.20 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.20 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.20 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.20 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.20 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.20 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.20 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.20 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.20 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.20 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.20 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.20 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.20 , mark(a()) -> active(a()) 730.10/251.20 , mark(e()) -> active(e()) 730.10/251.20 , mark(i()) -> active(i()) 730.10/251.20 , mark(o()) -> active(o()) 730.10/251.20 , mark(u()) -> active(u()) 730.10/251.20 , U11(active(X)) -> U11(X) 730.10/251.20 , U11(mark(X)) -> U11(X) 730.10/251.20 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.20 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.20 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.20 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.20 , U22(active(X)) -> U22(X) 730.10/251.20 , U22(mark(X)) -> U22(X) 730.10/251.20 , isList(active(X)) -> isList(X) 730.10/251.20 , isList(mark(X)) -> isList(X) 730.10/251.20 , U31(active(X)) -> U31(X) 730.10/251.20 , U31(mark(X)) -> U31(X) 730.10/251.20 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.20 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.20 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.20 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.20 , U42(active(X)) -> U42(X) 730.10/251.20 , U42(mark(X)) -> U42(X) 730.10/251.20 , isNeList(active(X)) -> isNeList(X) 730.10/251.20 , isNeList(mark(X)) -> isNeList(X) 730.10/251.20 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.20 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.20 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.20 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.20 , U52(active(X)) -> U52(X) 730.10/251.20 , U52(mark(X)) -> U52(X) 730.10/251.20 , U61(active(X)) -> U61(X) 730.10/251.20 , U61(mark(X)) -> U61(X) 730.10/251.20 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.20 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.20 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.20 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.20 , U72(active(X)) -> U72(X) 730.10/251.20 , U72(mark(X)) -> U72(X) 730.10/251.20 , isPal(active(X)) -> isPal(X) 730.10/251.20 , isPal(mark(X)) -> isPal(X) 730.10/251.20 , U81(active(X)) -> U81(X) 730.10/251.20 , U81(mark(X)) -> U81(X) 730.10/251.20 , isQid(active(X)) -> isQid(X) 730.10/251.20 , isQid(mark(X)) -> isQid(X) 730.10/251.20 , isNePal(active(X)) -> isNePal(X) 730.10/251.20 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.20 Weak Trs: 730.10/251.20 { active(U11(tt())) -> mark(tt()) 730.10/251.20 , active(U22(tt())) -> mark(tt()) 730.10/251.20 , active(U42(tt())) -> mark(tt()) 730.10/251.20 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.20 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) } 730.10/251.20 Obligation: 730.10/251.20 derivational complexity 730.10/251.20 Answer: 730.10/251.20 MAYBE 730.10/251.20 730.10/251.20 The weightgap principle applies (using the following nonconstant 730.10/251.20 growth matrix-interpretation) 730.10/251.20 730.10/251.20 TcT has computed the following triangular matrix interpretation. 730.10/251.20 Note that the diagonal of the component-wise maxima of 730.10/251.20 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.20 730.10/251.20 [active](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.20 730.10/251.20 [mark](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [nil] = [0] 730.10/251.20 730.10/251.20 [U11](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [tt] = [0] 730.10/251.20 730.10/251.20 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.20 730.10/251.20 [U22](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [isList](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U31](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.20 730.10/251.20 [U42](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [isNeList](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.20 730.10/251.20 [U52](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U61](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U71](x1, x2) = [1] x1 + [1] x2 + [1] 730.10/251.20 730.10/251.20 [U72](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [isPal](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [U81](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [isQid](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [isNePal](x1) = [1] x1 + [0] 730.10/251.20 730.10/251.20 [a] = [0] 730.10/251.20 730.10/251.20 [e] = [0] 730.10/251.20 730.10/251.20 [i] = [0] 730.10/251.20 730.10/251.20 [o] = [0] 730.10/251.20 730.10/251.20 [u] = [0] 730.10/251.20 730.10/251.20 The order satisfies the following ordering constraints: 730.10/251.20 730.10/251.20 [active(__(X, nil()))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [mark(X)] 730.10/251.20 730.10/251.20 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.20 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.20 = [mark(__(X, __(Y, Z)))] 730.10/251.20 730.10/251.20 [active(__(nil(), X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [mark(X)] 730.10/251.20 730.10/251.20 [active(U11(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.20 >= [1] V2 + [0] 730.10/251.20 = [mark(U22(isList(V2)))] 730.10/251.20 730.10/251.20 [active(U22(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isList(V))] = [1] V + [0] 730.10/251.20 >= [1] V + [0] 730.10/251.20 = [mark(U11(isNeList(V)))] 730.10/251.20 730.10/251.20 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.20 >= [1] V2 + [1] V1 + [0] 730.10/251.20 = [mark(U21(isList(V1), V2))] 730.10/251.20 730.10/251.20 [active(isList(nil()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U31(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.20 >= [1] V2 + [0] 730.10/251.20 = [mark(U42(isNeList(V2)))] 730.10/251.20 730.10/251.20 [active(U42(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isNeList(V))] = [1] V + [0] 730.10/251.20 >= [1] V + [0] 730.10/251.20 = [mark(U31(isQid(V)))] 730.10/251.20 730.10/251.20 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.20 >= [1] V2 + [1] V1 + [0] 730.10/251.20 = [mark(U41(isList(V1), V2))] 730.10/251.20 730.10/251.20 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.20 >= [1] V2 + [1] V1 + [0] 730.10/251.20 = [mark(U51(isNeList(V1), V2))] 730.10/251.20 730.10/251.20 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.20 >= [1] V2 + [0] 730.10/251.20 = [mark(U52(isList(V2)))] 730.10/251.20 730.10/251.20 [active(U52(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U61(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U71(tt(), P))] = [1] P + [1] 730.10/251.20 > [1] P + [0] 730.10/251.20 = [mark(U72(isPal(P)))] 730.10/251.20 730.10/251.20 [active(U72(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isPal(V))] = [1] V + [0] 730.10/251.20 >= [1] V + [0] 730.10/251.20 = [mark(U81(isNePal(V)))] 730.10/251.20 730.10/251.20 [active(isPal(nil()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(U81(tt()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isQid(a()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isQid(e()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isQid(i()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isQid(o()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isQid(u()))] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [mark(tt())] 730.10/251.20 730.10/251.20 [active(isNePal(V))] = [1] V + [0] 730.10/251.20 >= [1] V + [0] 730.10/251.20 = [mark(U61(isQid(V)))] 730.10/251.20 730.10/251.20 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.20 ? [1] P + [1] I + [1] 730.10/251.20 = [mark(U71(isQid(I), P))] 730.10/251.20 730.10/251.20 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [__(X1, X2)] 730.10/251.20 730.10/251.20 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [__(X1, X2)] 730.10/251.20 730.10/251.20 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [__(X1, X2)] 730.10/251.20 730.10/251.20 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [__(X1, X2)] 730.10/251.20 730.10/251.20 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [active(__(mark(X1), mark(X2)))] 730.10/251.20 730.10/251.20 [mark(nil())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(nil())] 730.10/251.20 730.10/251.20 [mark(U11(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U11(mark(X)))] 730.10/251.20 730.10/251.20 [mark(tt())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(tt())] 730.10/251.20 730.10/251.20 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [active(U21(mark(X1), X2))] 730.10/251.20 730.10/251.20 [mark(U22(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U22(mark(X)))] 730.10/251.20 730.10/251.20 [mark(isList(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(isList(X))] 730.10/251.20 730.10/251.20 [mark(U31(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U31(mark(X)))] 730.10/251.20 730.10/251.20 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [active(U41(mark(X1), X2))] 730.10/251.20 730.10/251.20 [mark(U42(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U42(mark(X)))] 730.10/251.20 730.10/251.20 [mark(isNeList(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(isNeList(X))] 730.10/251.20 730.10/251.20 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [active(U51(mark(X1), X2))] 730.10/251.20 730.10/251.20 [mark(U52(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U52(mark(X)))] 730.10/251.20 730.10/251.20 [mark(U61(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U61(mark(X)))] 730.10/251.20 730.10/251.20 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [1] 730.10/251.20 >= [1] X1 + [1] X2 + [1] 730.10/251.20 = [active(U71(mark(X1), X2))] 730.10/251.20 730.10/251.20 [mark(U72(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U72(mark(X)))] 730.10/251.20 730.10/251.20 [mark(isPal(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(isPal(X))] 730.10/251.20 730.10/251.20 [mark(U81(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(U81(mark(X)))] 730.10/251.20 730.10/251.20 [mark(isQid(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(isQid(X))] 730.10/251.20 730.10/251.20 [mark(isNePal(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [active(isNePal(X))] 730.10/251.20 730.10/251.20 [mark(a())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(a())] 730.10/251.20 730.10/251.20 [mark(e())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(e())] 730.10/251.20 730.10/251.20 [mark(i())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(i())] 730.10/251.20 730.10/251.20 [mark(o())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(o())] 730.10/251.20 730.10/251.20 [mark(u())] = [0] 730.10/251.20 >= [0] 730.10/251.20 = [active(u())] 730.10/251.20 730.10/251.20 [U11(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U11(X)] 730.10/251.20 730.10/251.20 [U11(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U11(X)] 730.10/251.20 730.10/251.20 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U21(X1, X2)] 730.10/251.20 730.10/251.20 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U21(X1, X2)] 730.10/251.20 730.10/251.20 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U21(X1, X2)] 730.10/251.20 730.10/251.20 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U21(X1, X2)] 730.10/251.20 730.10/251.20 [U22(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U22(X)] 730.10/251.20 730.10/251.20 [U22(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U22(X)] 730.10/251.20 730.10/251.20 [isList(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isList(X)] 730.10/251.20 730.10/251.20 [isList(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isList(X)] 730.10/251.20 730.10/251.20 [U31(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U31(X)] 730.10/251.20 730.10/251.20 [U31(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U31(X)] 730.10/251.20 730.10/251.20 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U41(X1, X2)] 730.10/251.20 730.10/251.20 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U41(X1, X2)] 730.10/251.20 730.10/251.20 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U41(X1, X2)] 730.10/251.20 730.10/251.20 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U41(X1, X2)] 730.10/251.20 730.10/251.20 [U42(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U42(X)] 730.10/251.20 730.10/251.20 [U42(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U42(X)] 730.10/251.20 730.10/251.20 [isNeList(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isNeList(X)] 730.10/251.20 730.10/251.20 [isNeList(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [isNeList(X)] 730.10/251.20 730.10/251.20 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U51(X1, X2)] 730.10/251.20 730.10/251.20 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U51(X1, X2)] 730.10/251.20 730.10/251.20 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U51(X1, X2)] 730.10/251.20 730.10/251.20 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.20 >= [1] X1 + [1] X2 + [0] 730.10/251.20 = [U51(X1, X2)] 730.10/251.20 730.10/251.20 [U52(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U52(X)] 730.10/251.20 730.10/251.20 [U52(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U52(X)] 730.10/251.20 730.10/251.20 [U61(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U61(X)] 730.10/251.20 730.10/251.20 [U61(mark(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.20 = [U61(X)] 730.10/251.20 730.10/251.20 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.20 >= [1] X1 + [1] X2 + [1] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.20 >= [1] X1 + [1] X2 + [1] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.20 >= [1] X1 + [1] X2 + [1] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.20 >= [1] X1 + [1] X2 + [1] 730.10/251.20 = [U71(X1, X2)] 730.10/251.20 730.10/251.20 [U72(active(X))] = [1] X + [0] 730.10/251.20 >= [1] X + [0] 730.10/251.21 = [U72(X)] 730.10/251.21 730.10/251.21 [U72(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U72(X)] 730.10/251.21 730.10/251.21 [isPal(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isPal(X)] 730.10/251.21 730.10/251.21 [isPal(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isPal(X)] 730.10/251.21 730.10/251.21 [U81(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U81(X)] 730.10/251.21 730.10/251.21 [U81(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U81(X)] 730.10/251.21 730.10/251.21 [isQid(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isQid(X)] 730.10/251.21 730.10/251.21 [isQid(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isQid(X)] 730.10/251.21 730.10/251.21 [isNePal(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNePal(X)] 730.10/251.21 730.10/251.21 [isNePal(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNePal(X)] 730.10/251.21 730.10/251.21 730.10/251.21 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.21 730.10/251.21 We are left with following problem, upon which TcT provides the 730.10/251.21 certificate MAYBE. 730.10/251.21 730.10/251.21 Strict Trs: 730.10/251.21 { active(__(X, nil())) -> mark(X) 730.10/251.21 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.21 , active(__(nil(), X)) -> mark(X) 730.10/251.21 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.21 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.21 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.21 , active(isList(nil())) -> mark(tt()) 730.10/251.21 , active(U31(tt())) -> mark(tt()) 730.10/251.21 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.21 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.21 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.21 , active(U52(tt())) -> mark(tt()) 730.10/251.21 , active(U61(tt())) -> mark(tt()) 730.10/251.21 , active(U72(tt())) -> mark(tt()) 730.10/251.21 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.21 , active(isPal(nil())) -> mark(tt()) 730.10/251.21 , active(U81(tt())) -> mark(tt()) 730.10/251.21 , active(isQid(a())) -> mark(tt()) 730.10/251.21 , active(isQid(e())) -> mark(tt()) 730.10/251.21 , active(isQid(i())) -> mark(tt()) 730.10/251.21 , active(isQid(o())) -> mark(tt()) 730.10/251.21 , active(isQid(u())) -> mark(tt()) 730.10/251.21 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.21 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.21 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.21 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.21 , __(active(X1), X2) -> __(X1, X2) 730.10/251.21 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.21 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.21 , mark(nil()) -> active(nil()) 730.10/251.21 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.21 , mark(tt()) -> active(tt()) 730.10/251.21 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.21 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.21 , mark(isList(X)) -> active(isList(X)) 730.10/251.21 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.21 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.21 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.21 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.21 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.21 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.21 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.21 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.21 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.21 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.21 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.21 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.21 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.21 , mark(a()) -> active(a()) 730.10/251.21 , mark(e()) -> active(e()) 730.10/251.21 , mark(i()) -> active(i()) 730.10/251.21 , mark(o()) -> active(o()) 730.10/251.21 , mark(u()) -> active(u()) 730.10/251.21 , U11(active(X)) -> U11(X) 730.10/251.21 , U11(mark(X)) -> U11(X) 730.10/251.21 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.21 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.21 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.21 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.21 , U22(active(X)) -> U22(X) 730.10/251.21 , U22(mark(X)) -> U22(X) 730.10/251.21 , isList(active(X)) -> isList(X) 730.10/251.21 , isList(mark(X)) -> isList(X) 730.10/251.21 , U31(active(X)) -> U31(X) 730.10/251.21 , U31(mark(X)) -> U31(X) 730.10/251.21 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.21 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.21 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.21 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.21 , U42(active(X)) -> U42(X) 730.10/251.21 , U42(mark(X)) -> U42(X) 730.10/251.21 , isNeList(active(X)) -> isNeList(X) 730.10/251.21 , isNeList(mark(X)) -> isNeList(X) 730.10/251.21 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.21 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.21 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.21 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.21 , U52(active(X)) -> U52(X) 730.10/251.21 , U52(mark(X)) -> U52(X) 730.10/251.21 , U61(active(X)) -> U61(X) 730.10/251.21 , U61(mark(X)) -> U61(X) 730.10/251.21 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.21 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.21 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.21 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.21 , U72(active(X)) -> U72(X) 730.10/251.21 , U72(mark(X)) -> U72(X) 730.10/251.21 , isPal(active(X)) -> isPal(X) 730.10/251.21 , isPal(mark(X)) -> isPal(X) 730.10/251.21 , U81(active(X)) -> U81(X) 730.10/251.21 , U81(mark(X)) -> U81(X) 730.10/251.21 , isQid(active(X)) -> isQid(X) 730.10/251.21 , isQid(mark(X)) -> isQid(X) 730.10/251.21 , isNePal(active(X)) -> isNePal(X) 730.10/251.21 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.21 Weak Trs: 730.10/251.21 { active(U11(tt())) -> mark(tt()) 730.10/251.21 , active(U22(tt())) -> mark(tt()) 730.10/251.21 , active(U42(tt())) -> mark(tt()) 730.10/251.21 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.21 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.21 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.21 Obligation: 730.10/251.21 derivational complexity 730.10/251.21 Answer: 730.10/251.21 MAYBE 730.10/251.21 730.10/251.21 The weightgap principle applies (using the following nonconstant 730.10/251.21 growth matrix-interpretation) 730.10/251.21 730.10/251.21 TcT has computed the following triangular matrix interpretation. 730.10/251.21 Note that the diagonal of the component-wise maxima of 730.10/251.21 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.21 730.10/251.21 [active](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [mark](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [nil] = [0] 730.10/251.21 730.10/251.21 [U11](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [tt] = [0] 730.10/251.21 730.10/251.21 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U22](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isList](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U31](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U42](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isNeList](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U52](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U61](x1) = [1] x1 + [1] 730.10/251.21 730.10/251.21 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U72](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isPal](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U81](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isQid](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isNePal](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [a] = [0] 730.10/251.21 730.10/251.21 [e] = [0] 730.10/251.21 730.10/251.21 [i] = [0] 730.10/251.21 730.10/251.21 [o] = [0] 730.10/251.21 730.10/251.21 [u] = [0] 730.10/251.21 730.10/251.21 The order satisfies the following ordering constraints: 730.10/251.21 730.10/251.21 [active(__(X, nil()))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [mark(X)] 730.10/251.21 730.10/251.21 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.21 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.21 = [mark(__(X, __(Y, Z)))] 730.10/251.21 730.10/251.21 [active(__(nil(), X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [mark(X)] 730.10/251.21 730.10/251.21 [active(U11(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.21 >= [1] V2 + [0] 730.10/251.21 = [mark(U22(isList(V2)))] 730.10/251.21 730.10/251.21 [active(U22(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isList(V))] = [1] V + [0] 730.10/251.21 >= [1] V + [0] 730.10/251.21 = [mark(U11(isNeList(V)))] 730.10/251.21 730.10/251.21 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.21 >= [1] V2 + [1] V1 + [0] 730.10/251.21 = [mark(U21(isList(V1), V2))] 730.10/251.21 730.10/251.21 [active(isList(nil()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U31(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.21 >= [1] V2 + [0] 730.10/251.21 = [mark(U42(isNeList(V2)))] 730.10/251.21 730.10/251.21 [active(U42(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isNeList(V))] = [1] V + [0] 730.10/251.21 >= [1] V + [0] 730.10/251.21 = [mark(U31(isQid(V)))] 730.10/251.21 730.10/251.21 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.21 >= [1] V2 + [1] V1 + [0] 730.10/251.21 = [mark(U41(isList(V1), V2))] 730.10/251.21 730.10/251.21 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.21 >= [1] V2 + [1] V1 + [0] 730.10/251.21 = [mark(U51(isNeList(V1), V2))] 730.10/251.21 730.10/251.21 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.21 >= [1] V2 + [0] 730.10/251.21 = [mark(U52(isList(V2)))] 730.10/251.21 730.10/251.21 [active(U52(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U61(tt()))] = [1] 730.10/251.21 > [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.21 >= [1] P + [0] 730.10/251.21 = [mark(U72(isPal(P)))] 730.10/251.21 730.10/251.21 [active(U72(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isPal(V))] = [1] V + [0] 730.10/251.21 >= [1] V + [0] 730.10/251.21 = [mark(U81(isNePal(V)))] 730.10/251.21 730.10/251.21 [active(isPal(nil()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(U81(tt()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isQid(a()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isQid(e()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isQid(i()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isQid(o()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isQid(u()))] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [mark(tt())] 730.10/251.21 730.10/251.21 [active(isNePal(V))] = [1] V + [0] 730.10/251.21 ? [1] V + [1] 730.10/251.21 = [mark(U61(isQid(V)))] 730.10/251.21 730.10/251.21 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.21 >= [1] P + [1] I + [0] 730.10/251.21 = [mark(U71(isQid(I), P))] 730.10/251.21 730.10/251.21 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [__(X1, X2)] 730.10/251.21 730.10/251.21 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [__(X1, X2)] 730.10/251.21 730.10/251.21 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [__(X1, X2)] 730.10/251.21 730.10/251.21 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [__(X1, X2)] 730.10/251.21 730.10/251.21 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [active(__(mark(X1), mark(X2)))] 730.10/251.21 730.10/251.21 [mark(nil())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(nil())] 730.10/251.21 730.10/251.21 [mark(U11(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U11(mark(X)))] 730.10/251.21 730.10/251.21 [mark(tt())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(tt())] 730.10/251.21 730.10/251.21 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [active(U21(mark(X1), X2))] 730.10/251.21 730.10/251.21 [mark(U22(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U22(mark(X)))] 730.10/251.21 730.10/251.21 [mark(isList(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(isList(X))] 730.10/251.21 730.10/251.21 [mark(U31(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U31(mark(X)))] 730.10/251.21 730.10/251.21 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [active(U41(mark(X1), X2))] 730.10/251.21 730.10/251.21 [mark(U42(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U42(mark(X)))] 730.10/251.21 730.10/251.21 [mark(isNeList(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(isNeList(X))] 730.10/251.21 730.10/251.21 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [active(U51(mark(X1), X2))] 730.10/251.21 730.10/251.21 [mark(U52(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U52(mark(X)))] 730.10/251.21 730.10/251.21 [mark(U61(X))] = [1] X + [1] 730.10/251.21 >= [1] X + [1] 730.10/251.21 = [active(U61(mark(X)))] 730.10/251.21 730.10/251.21 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [active(U71(mark(X1), X2))] 730.10/251.21 730.10/251.21 [mark(U72(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U72(mark(X)))] 730.10/251.21 730.10/251.21 [mark(isPal(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(isPal(X))] 730.10/251.21 730.10/251.21 [mark(U81(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(U81(mark(X)))] 730.10/251.21 730.10/251.21 [mark(isQid(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(isQid(X))] 730.10/251.21 730.10/251.21 [mark(isNePal(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [active(isNePal(X))] 730.10/251.21 730.10/251.21 [mark(a())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(a())] 730.10/251.21 730.10/251.21 [mark(e())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(e())] 730.10/251.21 730.10/251.21 [mark(i())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(i())] 730.10/251.21 730.10/251.21 [mark(o())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(o())] 730.10/251.21 730.10/251.21 [mark(u())] = [0] 730.10/251.21 >= [0] 730.10/251.21 = [active(u())] 730.10/251.21 730.10/251.21 [U11(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U11(X)] 730.10/251.21 730.10/251.21 [U11(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U11(X)] 730.10/251.21 730.10/251.21 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U21(X1, X2)] 730.10/251.21 730.10/251.21 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U21(X1, X2)] 730.10/251.21 730.10/251.21 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U21(X1, X2)] 730.10/251.21 730.10/251.21 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U21(X1, X2)] 730.10/251.21 730.10/251.21 [U22(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U22(X)] 730.10/251.21 730.10/251.21 [U22(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U22(X)] 730.10/251.21 730.10/251.21 [isList(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isList(X)] 730.10/251.21 730.10/251.21 [isList(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isList(X)] 730.10/251.21 730.10/251.21 [U31(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U31(X)] 730.10/251.21 730.10/251.21 [U31(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U31(X)] 730.10/251.21 730.10/251.21 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U41(X1, X2)] 730.10/251.21 730.10/251.21 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U41(X1, X2)] 730.10/251.21 730.10/251.21 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U41(X1, X2)] 730.10/251.21 730.10/251.21 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U41(X1, X2)] 730.10/251.21 730.10/251.21 [U42(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U42(X)] 730.10/251.21 730.10/251.21 [U42(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U42(X)] 730.10/251.21 730.10/251.21 [isNeList(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNeList(X)] 730.10/251.21 730.10/251.21 [isNeList(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNeList(X)] 730.10/251.21 730.10/251.21 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U51(X1, X2)] 730.10/251.21 730.10/251.21 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U51(X1, X2)] 730.10/251.21 730.10/251.21 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U51(X1, X2)] 730.10/251.21 730.10/251.21 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U51(X1, X2)] 730.10/251.21 730.10/251.21 [U52(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U52(X)] 730.10/251.21 730.10/251.21 [U52(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U52(X)] 730.10/251.21 730.10/251.21 [U61(active(X))] = [1] X + [1] 730.10/251.21 >= [1] X + [1] 730.10/251.21 = [U61(X)] 730.10/251.21 730.10/251.21 [U61(mark(X))] = [1] X + [1] 730.10/251.21 >= [1] X + [1] 730.10/251.21 = [U61(X)] 730.10/251.21 730.10/251.21 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U71(X1, X2)] 730.10/251.21 730.10/251.21 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U71(X1, X2)] 730.10/251.21 730.10/251.21 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U71(X1, X2)] 730.10/251.21 730.10/251.21 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.21 >= [1] X1 + [1] X2 + [0] 730.10/251.21 = [U71(X1, X2)] 730.10/251.21 730.10/251.21 [U72(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U72(X)] 730.10/251.21 730.10/251.21 [U72(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U72(X)] 730.10/251.21 730.10/251.21 [isPal(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isPal(X)] 730.10/251.21 730.10/251.21 [isPal(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isPal(X)] 730.10/251.21 730.10/251.21 [U81(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U81(X)] 730.10/251.21 730.10/251.21 [U81(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [U81(X)] 730.10/251.21 730.10/251.21 [isQid(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isQid(X)] 730.10/251.21 730.10/251.21 [isQid(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isQid(X)] 730.10/251.21 730.10/251.21 [isNePal(active(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNePal(X)] 730.10/251.21 730.10/251.21 [isNePal(mark(X))] = [1] X + [0] 730.10/251.21 >= [1] X + [0] 730.10/251.21 = [isNePal(X)] 730.10/251.21 730.10/251.21 730.10/251.21 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.21 730.10/251.21 We are left with following problem, upon which TcT provides the 730.10/251.21 certificate MAYBE. 730.10/251.21 730.10/251.21 Strict Trs: 730.10/251.21 { active(__(X, nil())) -> mark(X) 730.10/251.21 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.21 , active(__(nil(), X)) -> mark(X) 730.10/251.21 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.21 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.21 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.21 , active(isList(nil())) -> mark(tt()) 730.10/251.21 , active(U31(tt())) -> mark(tt()) 730.10/251.21 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.21 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.21 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.21 , active(U52(tt())) -> mark(tt()) 730.10/251.21 , active(U72(tt())) -> mark(tt()) 730.10/251.21 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.21 , active(isPal(nil())) -> mark(tt()) 730.10/251.21 , active(U81(tt())) -> mark(tt()) 730.10/251.21 , active(isQid(a())) -> mark(tt()) 730.10/251.21 , active(isQid(e())) -> mark(tt()) 730.10/251.21 , active(isQid(i())) -> mark(tt()) 730.10/251.21 , active(isQid(o())) -> mark(tt()) 730.10/251.21 , active(isQid(u())) -> mark(tt()) 730.10/251.21 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.21 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.21 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.21 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.21 , __(active(X1), X2) -> __(X1, X2) 730.10/251.21 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.21 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.21 , mark(nil()) -> active(nil()) 730.10/251.21 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.21 , mark(tt()) -> active(tt()) 730.10/251.21 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.21 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.21 , mark(isList(X)) -> active(isList(X)) 730.10/251.21 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.21 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.21 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.21 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.21 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.21 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.21 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.21 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.21 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.21 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.21 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.21 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.21 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.21 , mark(a()) -> active(a()) 730.10/251.21 , mark(e()) -> active(e()) 730.10/251.21 , mark(i()) -> active(i()) 730.10/251.21 , mark(o()) -> active(o()) 730.10/251.21 , mark(u()) -> active(u()) 730.10/251.21 , U11(active(X)) -> U11(X) 730.10/251.21 , U11(mark(X)) -> U11(X) 730.10/251.21 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.21 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.21 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.21 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.21 , U22(active(X)) -> U22(X) 730.10/251.21 , U22(mark(X)) -> U22(X) 730.10/251.21 , isList(active(X)) -> isList(X) 730.10/251.21 , isList(mark(X)) -> isList(X) 730.10/251.21 , U31(active(X)) -> U31(X) 730.10/251.21 , U31(mark(X)) -> U31(X) 730.10/251.21 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.21 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.21 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.21 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.21 , U42(active(X)) -> U42(X) 730.10/251.21 , U42(mark(X)) -> U42(X) 730.10/251.21 , isNeList(active(X)) -> isNeList(X) 730.10/251.21 , isNeList(mark(X)) -> isNeList(X) 730.10/251.21 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.21 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.21 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.21 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.21 , U52(active(X)) -> U52(X) 730.10/251.21 , U52(mark(X)) -> U52(X) 730.10/251.21 , U61(active(X)) -> U61(X) 730.10/251.21 , U61(mark(X)) -> U61(X) 730.10/251.21 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.21 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.21 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.21 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.21 , U72(active(X)) -> U72(X) 730.10/251.21 , U72(mark(X)) -> U72(X) 730.10/251.21 , isPal(active(X)) -> isPal(X) 730.10/251.21 , isPal(mark(X)) -> isPal(X) 730.10/251.21 , U81(active(X)) -> U81(X) 730.10/251.21 , U81(mark(X)) -> U81(X) 730.10/251.21 , isQid(active(X)) -> isQid(X) 730.10/251.21 , isQid(mark(X)) -> isQid(X) 730.10/251.21 , isNePal(active(X)) -> isNePal(X) 730.10/251.21 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.21 Weak Trs: 730.10/251.21 { active(U11(tt())) -> mark(tt()) 730.10/251.21 , active(U22(tt())) -> mark(tt()) 730.10/251.21 , active(U42(tt())) -> mark(tt()) 730.10/251.21 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.21 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.21 , active(U61(tt())) -> mark(tt()) 730.10/251.21 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.21 Obligation: 730.10/251.21 derivational complexity 730.10/251.21 Answer: 730.10/251.21 MAYBE 730.10/251.21 730.10/251.21 The weightgap principle applies (using the following nonconstant 730.10/251.21 growth matrix-interpretation) 730.10/251.21 730.10/251.21 TcT has computed the following triangular matrix interpretation. 730.10/251.21 Note that the diagonal of the component-wise maxima of 730.10/251.21 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.21 730.10/251.21 [active](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [mark](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [nil] = [0] 730.10/251.21 730.10/251.21 [U11](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [tt] = [0] 730.10/251.21 730.10/251.21 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U22](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isList](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U31](x1) = [1] x1 + [1] 730.10/251.21 730.10/251.21 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U42](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isNeList](x1) = [1] x1 + [1] 730.10/251.21 730.10/251.21 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U52](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U61](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.21 730.10/251.21 [U72](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isPal](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [U81](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isQid](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [isNePal](x1) = [1] x1 + [0] 730.10/251.21 730.10/251.21 [a] = [0] 730.10/251.21 730.10/251.21 [e] = [0] 730.10/251.21 730.10/251.22 [i] = [0] 730.10/251.22 730.10/251.22 [o] = [0] 730.10/251.22 730.10/251.22 [u] = [0] 730.10/251.22 730.10/251.22 The order satisfies the following ordering constraints: 730.10/251.22 730.10/251.22 [active(__(X, nil()))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [mark(X)] 730.10/251.22 730.10/251.22 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.22 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.22 = [mark(__(X, __(Y, Z)))] 730.10/251.22 730.10/251.22 [active(__(nil(), X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [mark(X)] 730.10/251.22 730.10/251.22 [active(U11(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.22 >= [1] V2 + [0] 730.10/251.22 = [mark(U22(isList(V2)))] 730.10/251.22 730.10/251.22 [active(U22(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isList(V))] = [1] V + [0] 730.10/251.22 ? [1] V + [1] 730.10/251.22 = [mark(U11(isNeList(V)))] 730.10/251.22 730.10/251.22 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.22 >= [1] V2 + [1] V1 + [0] 730.10/251.22 = [mark(U21(isList(V1), V2))] 730.10/251.22 730.10/251.22 [active(isList(nil()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U31(tt()))] = [1] 730.10/251.22 > [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.22 ? [1] V2 + [1] 730.10/251.22 = [mark(U42(isNeList(V2)))] 730.10/251.22 730.10/251.22 [active(U42(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isNeList(V))] = [1] V + [1] 730.10/251.22 >= [1] V + [1] 730.10/251.22 = [mark(U31(isQid(V)))] 730.10/251.22 730.10/251.22 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.22 > [1] V2 + [1] V1 + [0] 730.10/251.22 = [mark(U41(isList(V1), V2))] 730.10/251.22 730.10/251.22 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.22 >= [1] V2 + [1] V1 + [1] 730.10/251.22 = [mark(U51(isNeList(V1), V2))] 730.10/251.22 730.10/251.22 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.22 >= [1] V2 + [0] 730.10/251.22 = [mark(U52(isList(V2)))] 730.10/251.22 730.10/251.22 [active(U52(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U61(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.22 >= [1] P + [0] 730.10/251.22 = [mark(U72(isPal(P)))] 730.10/251.22 730.10/251.22 [active(U72(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isPal(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U81(isNePal(V)))] 730.10/251.22 730.10/251.22 [active(isPal(nil()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U81(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(a()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(e()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(i()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(o()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(u()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isNePal(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U61(isQid(V)))] 730.10/251.22 730.10/251.22 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.22 >= [1] P + [1] I + [0] 730.10/251.22 = [mark(U71(isQid(I), P))] 730.10/251.22 730.10/251.22 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(__(mark(X1), mark(X2)))] 730.10/251.22 730.10/251.22 [mark(nil())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(nil())] 730.10/251.22 730.10/251.22 [mark(U11(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U11(mark(X)))] 730.10/251.22 730.10/251.22 [mark(tt())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(tt())] 730.10/251.22 730.10/251.22 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(U21(mark(X1), X2))] 730.10/251.22 730.10/251.22 [mark(U22(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U22(mark(X)))] 730.10/251.22 730.10/251.22 [mark(isList(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(isList(X))] 730.10/251.22 730.10/251.22 [mark(U31(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [active(U31(mark(X)))] 730.10/251.22 730.10/251.22 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(U41(mark(X1), X2))] 730.10/251.22 730.10/251.22 [mark(U42(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U42(mark(X)))] 730.10/251.22 730.10/251.22 [mark(isNeList(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [active(isNeList(X))] 730.10/251.22 730.10/251.22 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(U51(mark(X1), X2))] 730.10/251.22 730.10/251.22 [mark(U52(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U52(mark(X)))] 730.10/251.22 730.10/251.22 [mark(U61(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U61(mark(X)))] 730.10/251.22 730.10/251.22 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(U71(mark(X1), X2))] 730.10/251.22 730.10/251.22 [mark(U72(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U72(mark(X)))] 730.10/251.22 730.10/251.22 [mark(isPal(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(isPal(X))] 730.10/251.22 730.10/251.22 [mark(U81(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U81(mark(X)))] 730.10/251.22 730.10/251.22 [mark(isQid(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(isQid(X))] 730.10/251.22 730.10/251.22 [mark(isNePal(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(isNePal(X))] 730.10/251.22 730.10/251.22 [mark(a())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(a())] 730.10/251.22 730.10/251.22 [mark(e())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(e())] 730.10/251.22 730.10/251.22 [mark(i())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(i())] 730.10/251.22 730.10/251.22 [mark(o())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(o())] 730.10/251.22 730.10/251.22 [mark(u())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(u())] 730.10/251.22 730.10/251.22 [U11(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U11(X)] 730.10/251.22 730.10/251.22 [U11(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U11(X)] 730.10/251.22 730.10/251.22 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U21(X1, X2)] 730.10/251.22 730.10/251.22 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U21(X1, X2)] 730.10/251.22 730.10/251.22 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U21(X1, X2)] 730.10/251.22 730.10/251.22 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U21(X1, X2)] 730.10/251.22 730.10/251.22 [U22(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U22(X)] 730.10/251.22 730.10/251.22 [U22(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U22(X)] 730.10/251.22 730.10/251.22 [isList(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isList(X)] 730.10/251.22 730.10/251.22 [isList(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isList(X)] 730.10/251.22 730.10/251.22 [U31(active(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [U31(X)] 730.10/251.22 730.10/251.22 [U31(mark(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [U31(X)] 730.10/251.22 730.10/251.22 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U41(X1, X2)] 730.10/251.22 730.10/251.22 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U41(X1, X2)] 730.10/251.22 730.10/251.22 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U41(X1, X2)] 730.10/251.22 730.10/251.22 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U41(X1, X2)] 730.10/251.22 730.10/251.22 [U42(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U42(X)] 730.10/251.22 730.10/251.22 [U42(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U42(X)] 730.10/251.22 730.10/251.22 [isNeList(active(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [isNeList(X)] 730.10/251.22 730.10/251.22 [isNeList(mark(X))] = [1] X + [1] 730.10/251.22 >= [1] X + [1] 730.10/251.22 = [isNeList(X)] 730.10/251.22 730.10/251.22 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U51(X1, X2)] 730.10/251.22 730.10/251.22 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U51(X1, X2)] 730.10/251.22 730.10/251.22 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U51(X1, X2)] 730.10/251.22 730.10/251.22 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U51(X1, X2)] 730.10/251.22 730.10/251.22 [U52(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U52(X)] 730.10/251.22 730.10/251.22 [U52(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U52(X)] 730.10/251.22 730.10/251.22 [U61(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U61(X)] 730.10/251.22 730.10/251.22 [U61(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U61(X)] 730.10/251.22 730.10/251.22 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U71(X1, X2)] 730.10/251.22 730.10/251.22 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U71(X1, X2)] 730.10/251.22 730.10/251.22 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U71(X1, X2)] 730.10/251.22 730.10/251.22 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [U71(X1, X2)] 730.10/251.22 730.10/251.22 [U72(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U72(X)] 730.10/251.22 730.10/251.22 [U72(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U72(X)] 730.10/251.22 730.10/251.22 [isPal(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isPal(X)] 730.10/251.22 730.10/251.22 [isPal(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isPal(X)] 730.10/251.22 730.10/251.22 [U81(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U81(X)] 730.10/251.22 730.10/251.22 [U81(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [U81(X)] 730.10/251.22 730.10/251.22 [isQid(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isQid(X)] 730.10/251.22 730.10/251.22 [isQid(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isQid(X)] 730.10/251.22 730.10/251.22 [isNePal(active(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isNePal(X)] 730.10/251.22 730.10/251.22 [isNePal(mark(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [isNePal(X)] 730.10/251.22 730.10/251.22 730.10/251.22 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.22 730.10/251.22 We are left with following problem, upon which TcT provides the 730.10/251.22 certificate MAYBE. 730.10/251.22 730.10/251.22 Strict Trs: 730.10/251.22 { active(__(X, nil())) -> mark(X) 730.10/251.22 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.22 , active(__(nil(), X)) -> mark(X) 730.10/251.22 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.22 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.22 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.22 , active(isList(nil())) -> mark(tt()) 730.10/251.22 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.22 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.22 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.22 , active(U52(tt())) -> mark(tt()) 730.10/251.22 , active(U72(tt())) -> mark(tt()) 730.10/251.22 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.22 , active(isPal(nil())) -> mark(tt()) 730.10/251.22 , active(U81(tt())) -> mark(tt()) 730.10/251.22 , active(isQid(a())) -> mark(tt()) 730.10/251.22 , active(isQid(e())) -> mark(tt()) 730.10/251.22 , active(isQid(i())) -> mark(tt()) 730.10/251.22 , active(isQid(o())) -> mark(tt()) 730.10/251.22 , active(isQid(u())) -> mark(tt()) 730.10/251.22 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.22 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.22 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.22 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.22 , __(active(X1), X2) -> __(X1, X2) 730.10/251.22 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.22 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.22 , mark(nil()) -> active(nil()) 730.10/251.22 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.22 , mark(tt()) -> active(tt()) 730.10/251.22 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.22 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.22 , mark(isList(X)) -> active(isList(X)) 730.10/251.22 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.22 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.22 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.22 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.22 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.22 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.22 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.22 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.22 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.22 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.22 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.22 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.22 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.22 , mark(a()) -> active(a()) 730.10/251.22 , mark(e()) -> active(e()) 730.10/251.22 , mark(i()) -> active(i()) 730.10/251.22 , mark(o()) -> active(o()) 730.10/251.22 , mark(u()) -> active(u()) 730.10/251.22 , U11(active(X)) -> U11(X) 730.10/251.22 , U11(mark(X)) -> U11(X) 730.10/251.22 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.22 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.22 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.22 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.22 , U22(active(X)) -> U22(X) 730.10/251.22 , U22(mark(X)) -> U22(X) 730.10/251.22 , isList(active(X)) -> isList(X) 730.10/251.22 , isList(mark(X)) -> isList(X) 730.10/251.22 , U31(active(X)) -> U31(X) 730.10/251.22 , U31(mark(X)) -> U31(X) 730.10/251.22 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.22 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.22 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.22 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.22 , U42(active(X)) -> U42(X) 730.10/251.22 , U42(mark(X)) -> U42(X) 730.10/251.22 , isNeList(active(X)) -> isNeList(X) 730.10/251.22 , isNeList(mark(X)) -> isNeList(X) 730.10/251.22 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.22 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.22 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.22 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.22 , U52(active(X)) -> U52(X) 730.10/251.22 , U52(mark(X)) -> U52(X) 730.10/251.22 , U61(active(X)) -> U61(X) 730.10/251.22 , U61(mark(X)) -> U61(X) 730.10/251.22 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.22 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.22 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.22 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.22 , U72(active(X)) -> U72(X) 730.10/251.22 , U72(mark(X)) -> U72(X) 730.10/251.22 , isPal(active(X)) -> isPal(X) 730.10/251.22 , isPal(mark(X)) -> isPal(X) 730.10/251.22 , U81(active(X)) -> U81(X) 730.10/251.22 , U81(mark(X)) -> U81(X) 730.10/251.22 , isQid(active(X)) -> isQid(X) 730.10/251.22 , isQid(mark(X)) -> isQid(X) 730.10/251.22 , isNePal(active(X)) -> isNePal(X) 730.10/251.22 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.22 Weak Trs: 730.10/251.22 { active(U11(tt())) -> mark(tt()) 730.10/251.22 , active(U22(tt())) -> mark(tt()) 730.10/251.22 , active(U31(tt())) -> mark(tt()) 730.10/251.22 , active(U42(tt())) -> mark(tt()) 730.10/251.22 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.22 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.22 , active(U61(tt())) -> mark(tt()) 730.10/251.22 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.22 Obligation: 730.10/251.22 derivational complexity 730.10/251.22 Answer: 730.10/251.22 MAYBE 730.10/251.22 730.10/251.22 The weightgap principle applies (using the following nonconstant 730.10/251.22 growth matrix-interpretation) 730.10/251.22 730.10/251.22 TcT has computed the following triangular matrix interpretation. 730.10/251.22 Note that the diagonal of the component-wise maxima of 730.10/251.22 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.22 730.10/251.22 [active](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.22 730.10/251.22 [mark](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [nil] = [0] 730.10/251.22 730.10/251.22 [U11](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [tt] = [0] 730.10/251.22 730.10/251.22 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.22 730.10/251.22 [U22](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [isList](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [U31](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.22 730.10/251.22 [U42](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [isNeList](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.22 730.10/251.22 [U52](x1) = [1] x1 + [1] 730.10/251.22 730.10/251.22 [U61](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.22 730.10/251.22 [U72](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [isPal](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [U81](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [isQid](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [isNePal](x1) = [1] x1 + [0] 730.10/251.22 730.10/251.22 [a] = [0] 730.10/251.22 730.10/251.22 [e] = [0] 730.10/251.22 730.10/251.22 [i] = [0] 730.10/251.22 730.10/251.22 [o] = [0] 730.10/251.22 730.10/251.22 [u] = [0] 730.10/251.22 730.10/251.22 The order satisfies the following ordering constraints: 730.10/251.22 730.10/251.22 [active(__(X, nil()))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [mark(X)] 730.10/251.22 730.10/251.22 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.22 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.22 = [mark(__(X, __(Y, Z)))] 730.10/251.22 730.10/251.22 [active(__(nil(), X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [mark(X)] 730.10/251.22 730.10/251.22 [active(U11(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.22 >= [1] V2 + [0] 730.10/251.22 = [mark(U22(isList(V2)))] 730.10/251.22 730.10/251.22 [active(U22(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isList(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U11(isNeList(V)))] 730.10/251.22 730.10/251.22 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.22 >= [1] V2 + [1] V1 + [0] 730.10/251.22 = [mark(U21(isList(V1), V2))] 730.10/251.22 730.10/251.22 [active(isList(nil()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U31(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.22 >= [1] V2 + [0] 730.10/251.22 = [mark(U42(isNeList(V2)))] 730.10/251.22 730.10/251.22 [active(U42(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isNeList(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U31(isQid(V)))] 730.10/251.22 730.10/251.22 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.22 >= [1] V2 + [1] V1 + [0] 730.10/251.22 = [mark(U41(isList(V1), V2))] 730.10/251.22 730.10/251.22 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.22 >= [1] V2 + [1] V1 + [0] 730.10/251.22 = [mark(U51(isNeList(V1), V2))] 730.10/251.22 730.10/251.22 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.22 ? [1] V2 + [1] 730.10/251.22 = [mark(U52(isList(V2)))] 730.10/251.22 730.10/251.22 [active(U52(tt()))] = [1] 730.10/251.22 > [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U61(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.22 >= [1] P + [0] 730.10/251.22 = [mark(U72(isPal(P)))] 730.10/251.22 730.10/251.22 [active(U72(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isPal(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U81(isNePal(V)))] 730.10/251.22 730.10/251.22 [active(isPal(nil()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(U81(tt()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(a()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(e()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(i()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(o()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isQid(u()))] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [mark(tt())] 730.10/251.22 730.10/251.22 [active(isNePal(V))] = [1] V + [0] 730.10/251.22 >= [1] V + [0] 730.10/251.22 = [mark(U61(isQid(V)))] 730.10/251.22 730.10/251.22 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.22 >= [1] P + [1] I + [0] 730.10/251.22 = [mark(U71(isQid(I), P))] 730.10/251.22 730.10/251.22 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [__(X1, X2)] 730.10/251.22 730.10/251.22 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.22 >= [1] X1 + [1] X2 + [0] 730.10/251.22 = [active(__(mark(X1), mark(X2)))] 730.10/251.22 730.10/251.22 [mark(nil())] = [0] 730.10/251.22 >= [0] 730.10/251.22 = [active(nil())] 730.10/251.22 730.10/251.22 [mark(U11(X))] = [1] X + [0] 730.10/251.22 >= [1] X + [0] 730.10/251.22 = [active(U11(mark(X)))] 730.10/251.22 730.10/251.22 [mark(tt())] = [0] 730.10/251.22 >= [0] 730.10/251.23 = [active(tt())] 730.10/251.23 730.10/251.23 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U21(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U22(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U22(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isList(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isList(X))] 730.10/251.23 730.10/251.23 [mark(U31(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U31(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U41(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U42(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U42(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isNeList(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isNeList(X))] 730.10/251.23 730.10/251.23 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U51(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U52(X))] = [1] X + [1] 730.10/251.23 >= [1] X + [1] 730.10/251.23 = [active(U52(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U61(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U61(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U71(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U72(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U72(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isPal(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isPal(X))] 730.10/251.23 730.10/251.23 [mark(U81(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U81(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isQid(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isQid(X))] 730.10/251.23 730.10/251.23 [mark(isNePal(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isNePal(X))] 730.10/251.23 730.10/251.23 [mark(a())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(a())] 730.10/251.23 730.10/251.23 [mark(e())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(e())] 730.10/251.23 730.10/251.23 [mark(i())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(i())] 730.10/251.23 730.10/251.23 [mark(o())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(o())] 730.10/251.23 730.10/251.23 [mark(u())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(u())] 730.10/251.23 730.10/251.23 [U11(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U11(X)] 730.10/251.23 730.10/251.23 [U11(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U11(X)] 730.10/251.23 730.10/251.23 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U22(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U22(X)] 730.10/251.23 730.10/251.23 [U22(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U22(X)] 730.10/251.23 730.10/251.23 [isList(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isList(X)] 730.10/251.23 730.10/251.23 [isList(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isList(X)] 730.10/251.23 730.10/251.23 [U31(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U31(X)] 730.10/251.23 730.10/251.23 [U31(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U31(X)] 730.10/251.23 730.10/251.23 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U41(X1, X2)] 730.10/251.23 730.10/251.23 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U41(X1, X2)] 730.10/251.23 730.10/251.23 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U41(X1, X2)] 730.10/251.23 730.10/251.23 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U41(X1, X2)] 730.10/251.23 730.10/251.23 [U42(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U42(X)] 730.10/251.23 730.10/251.23 [U42(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U42(X)] 730.10/251.23 730.10/251.23 [isNeList(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isNeList(X)] 730.10/251.23 730.10/251.23 [isNeList(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isNeList(X)] 730.10/251.23 730.10/251.23 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U51(X1, X2)] 730.10/251.23 730.10/251.23 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U51(X1, X2)] 730.10/251.23 730.10/251.23 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U51(X1, X2)] 730.10/251.23 730.10/251.23 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U51(X1, X2)] 730.10/251.23 730.10/251.23 [U52(active(X))] = [1] X + [1] 730.10/251.23 >= [1] X + [1] 730.10/251.23 = [U52(X)] 730.10/251.23 730.10/251.23 [U52(mark(X))] = [1] X + [1] 730.10/251.23 >= [1] X + [1] 730.10/251.23 = [U52(X)] 730.10/251.23 730.10/251.23 [U61(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U61(X)] 730.10/251.23 730.10/251.23 [U61(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U61(X)] 730.10/251.23 730.10/251.23 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U71(X1, X2)] 730.10/251.23 730.10/251.23 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U71(X1, X2)] 730.10/251.23 730.10/251.23 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U71(X1, X2)] 730.10/251.23 730.10/251.23 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U71(X1, X2)] 730.10/251.23 730.10/251.23 [U72(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U72(X)] 730.10/251.23 730.10/251.23 [U72(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U72(X)] 730.10/251.23 730.10/251.23 [isPal(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isPal(X)] 730.10/251.23 730.10/251.23 [isPal(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isPal(X)] 730.10/251.23 730.10/251.23 [U81(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U81(X)] 730.10/251.23 730.10/251.23 [U81(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U81(X)] 730.10/251.23 730.10/251.23 [isQid(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isQid(X)] 730.10/251.23 730.10/251.23 [isQid(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isQid(X)] 730.10/251.23 730.10/251.23 [isNePal(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isNePal(X)] 730.10/251.23 730.10/251.23 [isNePal(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isNePal(X)] 730.10/251.23 730.10/251.23 730.10/251.23 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.23 730.10/251.23 We are left with following problem, upon which TcT provides the 730.10/251.23 certificate MAYBE. 730.10/251.23 730.10/251.23 Strict Trs: 730.10/251.23 { active(__(X, nil())) -> mark(X) 730.10/251.23 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.23 , active(__(nil(), X)) -> mark(X) 730.10/251.23 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.23 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.23 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.23 , active(isList(nil())) -> mark(tt()) 730.10/251.23 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.23 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.23 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.23 , active(U72(tt())) -> mark(tt()) 730.10/251.23 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.23 , active(isPal(nil())) -> mark(tt()) 730.10/251.23 , active(U81(tt())) -> mark(tt()) 730.10/251.23 , active(isQid(a())) -> mark(tt()) 730.10/251.23 , active(isQid(e())) -> mark(tt()) 730.10/251.23 , active(isQid(i())) -> mark(tt()) 730.10/251.23 , active(isQid(o())) -> mark(tt()) 730.10/251.23 , active(isQid(u())) -> mark(tt()) 730.10/251.23 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.23 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.23 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.23 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.23 , __(active(X1), X2) -> __(X1, X2) 730.10/251.23 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.23 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.23 , mark(nil()) -> active(nil()) 730.10/251.23 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.23 , mark(tt()) -> active(tt()) 730.10/251.23 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.23 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.23 , mark(isList(X)) -> active(isList(X)) 730.10/251.23 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.23 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.23 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.23 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.23 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.23 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.23 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.23 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.23 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.23 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.23 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.23 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.23 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.23 , mark(a()) -> active(a()) 730.10/251.23 , mark(e()) -> active(e()) 730.10/251.23 , mark(i()) -> active(i()) 730.10/251.23 , mark(o()) -> active(o()) 730.10/251.23 , mark(u()) -> active(u()) 730.10/251.23 , U11(active(X)) -> U11(X) 730.10/251.23 , U11(mark(X)) -> U11(X) 730.10/251.23 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.23 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.23 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.23 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.23 , U22(active(X)) -> U22(X) 730.10/251.23 , U22(mark(X)) -> U22(X) 730.10/251.23 , isList(active(X)) -> isList(X) 730.10/251.23 , isList(mark(X)) -> isList(X) 730.10/251.23 , U31(active(X)) -> U31(X) 730.10/251.23 , U31(mark(X)) -> U31(X) 730.10/251.23 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.23 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.23 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.23 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.23 , U42(active(X)) -> U42(X) 730.10/251.23 , U42(mark(X)) -> U42(X) 730.10/251.23 , isNeList(active(X)) -> isNeList(X) 730.10/251.23 , isNeList(mark(X)) -> isNeList(X) 730.10/251.23 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.23 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.23 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.23 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.23 , U52(active(X)) -> U52(X) 730.10/251.23 , U52(mark(X)) -> U52(X) 730.10/251.23 , U61(active(X)) -> U61(X) 730.10/251.23 , U61(mark(X)) -> U61(X) 730.10/251.23 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.23 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.23 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.23 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.23 , U72(active(X)) -> U72(X) 730.10/251.23 , U72(mark(X)) -> U72(X) 730.10/251.23 , isPal(active(X)) -> isPal(X) 730.10/251.23 , isPal(mark(X)) -> isPal(X) 730.10/251.23 , U81(active(X)) -> U81(X) 730.10/251.23 , U81(mark(X)) -> U81(X) 730.10/251.23 , isQid(active(X)) -> isQid(X) 730.10/251.23 , isQid(mark(X)) -> isQid(X) 730.10/251.23 , isNePal(active(X)) -> isNePal(X) 730.10/251.23 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.23 Weak Trs: 730.10/251.23 { active(U11(tt())) -> mark(tt()) 730.10/251.23 , active(U22(tt())) -> mark(tt()) 730.10/251.23 , active(U31(tt())) -> mark(tt()) 730.10/251.23 , active(U42(tt())) -> mark(tt()) 730.10/251.23 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.23 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.23 , active(U52(tt())) -> mark(tt()) 730.10/251.23 , active(U61(tt())) -> mark(tt()) 730.10/251.23 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.23 Obligation: 730.10/251.23 derivational complexity 730.10/251.23 Answer: 730.10/251.23 MAYBE 730.10/251.23 730.10/251.23 The weightgap principle applies (using the following nonconstant 730.10/251.23 growth matrix-interpretation) 730.10/251.23 730.10/251.23 TcT has computed the following triangular matrix interpretation. 730.10/251.23 Note that the diagonal of the component-wise maxima of 730.10/251.23 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.23 730.10/251.23 [active](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.23 730.10/251.23 [mark](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [nil] = [0] 730.10/251.23 730.10/251.23 [U11](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [tt] = [0] 730.10/251.23 730.10/251.23 [U21](x1, x2) = [1] x1 + [1] x2 + [1] 730.10/251.23 730.10/251.23 [U22](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [isList](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U31](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.23 730.10/251.23 [U42](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [isNeList](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.23 730.10/251.23 [U52](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U61](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.23 730.10/251.23 [U72](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [isPal](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [U81](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [isQid](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [isNePal](x1) = [1] x1 + [0] 730.10/251.23 730.10/251.23 [a] = [0] 730.10/251.23 730.10/251.23 [e] = [0] 730.10/251.23 730.10/251.23 [i] = [0] 730.10/251.23 730.10/251.23 [o] = [0] 730.10/251.23 730.10/251.23 [u] = [0] 730.10/251.23 730.10/251.23 The order satisfies the following ordering constraints: 730.10/251.23 730.10/251.23 [active(__(X, nil()))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [mark(X)] 730.10/251.23 730.10/251.23 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.23 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.23 = [mark(__(X, __(Y, Z)))] 730.10/251.23 730.10/251.23 [active(__(nil(), X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [mark(X)] 730.10/251.23 730.10/251.23 [active(U11(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U21(tt(), V2))] = [1] V2 + [1] 730.10/251.23 > [1] V2 + [0] 730.10/251.23 = [mark(U22(isList(V2)))] 730.10/251.23 730.10/251.23 [active(U22(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isList(V))] = [1] V + [0] 730.10/251.23 >= [1] V + [0] 730.10/251.23 = [mark(U11(isNeList(V)))] 730.10/251.23 730.10/251.23 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.23 ? [1] V2 + [1] V1 + [1] 730.10/251.23 = [mark(U21(isList(V1), V2))] 730.10/251.23 730.10/251.23 [active(isList(nil()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U31(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.23 >= [1] V2 + [0] 730.10/251.23 = [mark(U42(isNeList(V2)))] 730.10/251.23 730.10/251.23 [active(U42(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isNeList(V))] = [1] V + [0] 730.10/251.23 >= [1] V + [0] 730.10/251.23 = [mark(U31(isQid(V)))] 730.10/251.23 730.10/251.23 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.23 >= [1] V2 + [1] V1 + [0] 730.10/251.23 = [mark(U41(isList(V1), V2))] 730.10/251.23 730.10/251.23 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.23 >= [1] V2 + [1] V1 + [0] 730.10/251.23 = [mark(U51(isNeList(V1), V2))] 730.10/251.23 730.10/251.23 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.23 >= [1] V2 + [0] 730.10/251.23 = [mark(U52(isList(V2)))] 730.10/251.23 730.10/251.23 [active(U52(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U61(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.23 >= [1] P + [0] 730.10/251.23 = [mark(U72(isPal(P)))] 730.10/251.23 730.10/251.23 [active(U72(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isPal(V))] = [1] V + [0] 730.10/251.23 >= [1] V + [0] 730.10/251.23 = [mark(U81(isNePal(V)))] 730.10/251.23 730.10/251.23 [active(isPal(nil()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(U81(tt()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isQid(a()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isQid(e()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isQid(i()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isQid(o()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isQid(u()))] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [mark(tt())] 730.10/251.23 730.10/251.23 [active(isNePal(V))] = [1] V + [0] 730.10/251.23 >= [1] V + [0] 730.10/251.23 = [mark(U61(isQid(V)))] 730.10/251.23 730.10/251.23 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.23 >= [1] P + [1] I + [0] 730.10/251.23 = [mark(U71(isQid(I), P))] 730.10/251.23 730.10/251.23 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [__(X1, X2)] 730.10/251.23 730.10/251.23 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [__(X1, X2)] 730.10/251.23 730.10/251.23 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [__(X1, X2)] 730.10/251.23 730.10/251.23 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [__(X1, X2)] 730.10/251.23 730.10/251.23 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(__(mark(X1), mark(X2)))] 730.10/251.23 730.10/251.23 [mark(nil())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(nil())] 730.10/251.23 730.10/251.23 [mark(U11(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U11(mark(X)))] 730.10/251.23 730.10/251.23 [mark(tt())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(tt())] 730.10/251.23 730.10/251.23 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [1] 730.10/251.23 >= [1] X1 + [1] X2 + [1] 730.10/251.23 = [active(U21(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U22(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U22(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isList(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isList(X))] 730.10/251.23 730.10/251.23 [mark(U31(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U31(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U41(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U42(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U42(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isNeList(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isNeList(X))] 730.10/251.23 730.10/251.23 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U51(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U52(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U52(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U61(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U61(mark(X)))] 730.10/251.23 730.10/251.23 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [active(U71(mark(X1), X2))] 730.10/251.23 730.10/251.23 [mark(U72(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U72(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isPal(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isPal(X))] 730.10/251.23 730.10/251.23 [mark(U81(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(U81(mark(X)))] 730.10/251.23 730.10/251.23 [mark(isQid(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isQid(X))] 730.10/251.23 730.10/251.23 [mark(isNePal(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [active(isNePal(X))] 730.10/251.23 730.10/251.23 [mark(a())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(a())] 730.10/251.23 730.10/251.23 [mark(e())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(e())] 730.10/251.23 730.10/251.23 [mark(i())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(i())] 730.10/251.23 730.10/251.23 [mark(o())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(o())] 730.10/251.23 730.10/251.23 [mark(u())] = [0] 730.10/251.23 >= [0] 730.10/251.23 = [active(u())] 730.10/251.23 730.10/251.23 [U11(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U11(X)] 730.10/251.23 730.10/251.23 [U11(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U11(X)] 730.10/251.23 730.10/251.23 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.23 >= [1] X1 + [1] X2 + [1] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.23 >= [1] X1 + [1] X2 + [1] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.23 >= [1] X1 + [1] X2 + [1] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.23 >= [1] X1 + [1] X2 + [1] 730.10/251.23 = [U21(X1, X2)] 730.10/251.23 730.10/251.23 [U22(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U22(X)] 730.10/251.23 730.10/251.23 [U22(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U22(X)] 730.10/251.23 730.10/251.23 [isList(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isList(X)] 730.10/251.23 730.10/251.23 [isList(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [isList(X)] 730.10/251.23 730.10/251.23 [U31(active(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U31(X)] 730.10/251.23 730.10/251.23 [U31(mark(X))] = [1] X + [0] 730.10/251.23 >= [1] X + [0] 730.10/251.23 = [U31(X)] 730.10/251.23 730.10/251.23 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.23 = [U41(X1, X2)] 730.10/251.23 730.10/251.23 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.23 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U42(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U42(X)] 730.10/251.24 730.10/251.24 [U42(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U42(X)] 730.10/251.24 730.10/251.24 [isNeList(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNeList(X)] 730.10/251.24 730.10/251.24 [isNeList(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNeList(X)] 730.10/251.24 730.10/251.24 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U52(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U52(X)] 730.10/251.24 730.10/251.24 [U52(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U52(X)] 730.10/251.24 730.10/251.24 [U61(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U61(X)] 730.10/251.24 730.10/251.24 [U61(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U61(X)] 730.10/251.24 730.10/251.24 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U72(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U72(X)] 730.10/251.24 730.10/251.24 [U72(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U72(X)] 730.10/251.24 730.10/251.24 [isPal(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isPal(X)] 730.10/251.24 730.10/251.24 [isPal(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isPal(X)] 730.10/251.24 730.10/251.24 [U81(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U81(X)] 730.10/251.24 730.10/251.24 [U81(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U81(X)] 730.10/251.24 730.10/251.24 [isQid(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isQid(X)] 730.10/251.24 730.10/251.24 [isQid(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isQid(X)] 730.10/251.24 730.10/251.24 [isNePal(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNePal(X)] 730.10/251.24 730.10/251.24 [isNePal(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNePal(X)] 730.10/251.24 730.10/251.24 730.10/251.24 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.24 730.10/251.24 We are left with following problem, upon which TcT provides the 730.10/251.24 certificate MAYBE. 730.10/251.24 730.10/251.24 Strict Trs: 730.10/251.24 { active(__(X, nil())) -> mark(X) 730.10/251.24 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.24 , active(__(nil(), X)) -> mark(X) 730.10/251.24 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.24 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.24 , active(isList(nil())) -> mark(tt()) 730.10/251.24 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.24 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.24 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.24 , active(U72(tt())) -> mark(tt()) 730.10/251.24 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.24 , active(isPal(nil())) -> mark(tt()) 730.10/251.24 , active(U81(tt())) -> mark(tt()) 730.10/251.24 , active(isQid(a())) -> mark(tt()) 730.10/251.24 , active(isQid(e())) -> mark(tt()) 730.10/251.24 , active(isQid(i())) -> mark(tt()) 730.10/251.24 , active(isQid(o())) -> mark(tt()) 730.10/251.24 , active(isQid(u())) -> mark(tt()) 730.10/251.24 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.24 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.24 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.24 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.24 , __(active(X1), X2) -> __(X1, X2) 730.10/251.24 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.24 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.24 , mark(nil()) -> active(nil()) 730.10/251.24 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.24 , mark(tt()) -> active(tt()) 730.10/251.24 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.24 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.24 , mark(isList(X)) -> active(isList(X)) 730.10/251.24 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.24 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.24 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.24 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.24 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.24 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.24 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.24 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.24 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.24 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.24 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.24 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.24 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.24 , mark(a()) -> active(a()) 730.10/251.24 , mark(e()) -> active(e()) 730.10/251.24 , mark(i()) -> active(i()) 730.10/251.24 , mark(o()) -> active(o()) 730.10/251.24 , mark(u()) -> active(u()) 730.10/251.24 , U11(active(X)) -> U11(X) 730.10/251.24 , U11(mark(X)) -> U11(X) 730.10/251.24 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.24 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.24 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.24 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.24 , U22(active(X)) -> U22(X) 730.10/251.24 , U22(mark(X)) -> U22(X) 730.10/251.24 , isList(active(X)) -> isList(X) 730.10/251.24 , isList(mark(X)) -> isList(X) 730.10/251.24 , U31(active(X)) -> U31(X) 730.10/251.24 , U31(mark(X)) -> U31(X) 730.10/251.24 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.24 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.24 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.24 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.24 , U42(active(X)) -> U42(X) 730.10/251.24 , U42(mark(X)) -> U42(X) 730.10/251.24 , isNeList(active(X)) -> isNeList(X) 730.10/251.24 , isNeList(mark(X)) -> isNeList(X) 730.10/251.24 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.24 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.24 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.24 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.24 , U52(active(X)) -> U52(X) 730.10/251.24 , U52(mark(X)) -> U52(X) 730.10/251.24 , U61(active(X)) -> U61(X) 730.10/251.24 , U61(mark(X)) -> U61(X) 730.10/251.24 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.24 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.24 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.24 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.24 , U72(active(X)) -> U72(X) 730.10/251.24 , U72(mark(X)) -> U72(X) 730.10/251.24 , isPal(active(X)) -> isPal(X) 730.10/251.24 , isPal(mark(X)) -> isPal(X) 730.10/251.24 , U81(active(X)) -> U81(X) 730.10/251.24 , U81(mark(X)) -> U81(X) 730.10/251.24 , isQid(active(X)) -> isQid(X) 730.10/251.24 , isQid(mark(X)) -> isQid(X) 730.10/251.24 , isNePal(active(X)) -> isNePal(X) 730.10/251.24 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.24 Weak Trs: 730.10/251.24 { active(U11(tt())) -> mark(tt()) 730.10/251.24 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.24 , active(U22(tt())) -> mark(tt()) 730.10/251.24 , active(U31(tt())) -> mark(tt()) 730.10/251.24 , active(U42(tt())) -> mark(tt()) 730.10/251.24 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.24 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.24 , active(U52(tt())) -> mark(tt()) 730.10/251.24 , active(U61(tt())) -> mark(tt()) 730.10/251.24 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.24 Obligation: 730.10/251.24 derivational complexity 730.10/251.24 Answer: 730.10/251.24 MAYBE 730.10/251.24 730.10/251.24 The weightgap principle applies (using the following nonconstant 730.10/251.24 growth matrix-interpretation) 730.10/251.24 730.10/251.24 TcT has computed the following triangular matrix interpretation. 730.10/251.24 Note that the diagonal of the component-wise maxima of 730.10/251.24 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.24 730.10/251.24 [active](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.24 730.10/251.24 [mark](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [nil] = [0] 730.10/251.24 730.10/251.24 [U11](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [tt] = [0] 730.10/251.24 730.10/251.24 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.24 730.10/251.24 [U22](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [isList](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U31](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.24 730.10/251.24 [U42](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [isNeList](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U51](x1, x2) = [1] x1 + [1] x2 + [1] 730.10/251.24 730.10/251.24 [U52](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U61](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.24 730.10/251.24 [U72](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [isPal](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [U81](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [isQid](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [isNePal](x1) = [1] x1 + [0] 730.10/251.24 730.10/251.24 [a] = [0] 730.10/251.24 730.10/251.24 [e] = [0] 730.10/251.24 730.10/251.24 [i] = [0] 730.10/251.24 730.10/251.24 [o] = [0] 730.10/251.24 730.10/251.24 [u] = [0] 730.10/251.24 730.10/251.24 The order satisfies the following ordering constraints: 730.10/251.24 730.10/251.24 [active(__(X, nil()))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [mark(X)] 730.10/251.24 730.10/251.24 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.24 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.24 = [mark(__(X, __(Y, Z)))] 730.10/251.24 730.10/251.24 [active(__(nil(), X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [mark(X)] 730.10/251.24 730.10/251.24 [active(U11(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.24 >= [1] V2 + [0] 730.10/251.24 = [mark(U22(isList(V2)))] 730.10/251.24 730.10/251.24 [active(U22(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isList(V))] = [1] V + [0] 730.10/251.24 >= [1] V + [0] 730.10/251.24 = [mark(U11(isNeList(V)))] 730.10/251.24 730.10/251.24 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.24 >= [1] V2 + [1] V1 + [0] 730.10/251.24 = [mark(U21(isList(V1), V2))] 730.10/251.24 730.10/251.24 [active(isList(nil()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U31(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.24 >= [1] V2 + [0] 730.10/251.24 = [mark(U42(isNeList(V2)))] 730.10/251.24 730.10/251.24 [active(U42(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isNeList(V))] = [1] V + [0] 730.10/251.24 >= [1] V + [0] 730.10/251.24 = [mark(U31(isQid(V)))] 730.10/251.24 730.10/251.24 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.24 >= [1] V2 + [1] V1 + [0] 730.10/251.24 = [mark(U41(isList(V1), V2))] 730.10/251.24 730.10/251.24 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.24 ? [1] V2 + [1] V1 + [1] 730.10/251.24 = [mark(U51(isNeList(V1), V2))] 730.10/251.24 730.10/251.24 [active(U51(tt(), V2))] = [1] V2 + [1] 730.10/251.24 > [1] V2 + [0] 730.10/251.24 = [mark(U52(isList(V2)))] 730.10/251.24 730.10/251.24 [active(U52(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U61(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.24 >= [1] P + [0] 730.10/251.24 = [mark(U72(isPal(P)))] 730.10/251.24 730.10/251.24 [active(U72(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isPal(V))] = [1] V + [0] 730.10/251.24 >= [1] V + [0] 730.10/251.24 = [mark(U81(isNePal(V)))] 730.10/251.24 730.10/251.24 [active(isPal(nil()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(U81(tt()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isQid(a()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isQid(e()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isQid(i()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isQid(o()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isQid(u()))] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [mark(tt())] 730.10/251.24 730.10/251.24 [active(isNePal(V))] = [1] V + [0] 730.10/251.24 >= [1] V + [0] 730.10/251.24 = [mark(U61(isQid(V)))] 730.10/251.24 730.10/251.24 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.24 >= [1] P + [1] I + [0] 730.10/251.24 = [mark(U71(isQid(I), P))] 730.10/251.24 730.10/251.24 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [__(X1, X2)] 730.10/251.24 730.10/251.24 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [__(X1, X2)] 730.10/251.24 730.10/251.24 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [__(X1, X2)] 730.10/251.24 730.10/251.24 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [__(X1, X2)] 730.10/251.24 730.10/251.24 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [active(__(mark(X1), mark(X2)))] 730.10/251.24 730.10/251.24 [mark(nil())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(nil())] 730.10/251.24 730.10/251.24 [mark(U11(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U11(mark(X)))] 730.10/251.24 730.10/251.24 [mark(tt())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(tt())] 730.10/251.24 730.10/251.24 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [active(U21(mark(X1), X2))] 730.10/251.24 730.10/251.24 [mark(U22(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U22(mark(X)))] 730.10/251.24 730.10/251.24 [mark(isList(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(isList(X))] 730.10/251.24 730.10/251.24 [mark(U31(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U31(mark(X)))] 730.10/251.24 730.10/251.24 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [active(U41(mark(X1), X2))] 730.10/251.24 730.10/251.24 [mark(U42(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U42(mark(X)))] 730.10/251.24 730.10/251.24 [mark(isNeList(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(isNeList(X))] 730.10/251.24 730.10/251.24 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [1] 730.10/251.24 >= [1] X1 + [1] X2 + [1] 730.10/251.24 = [active(U51(mark(X1), X2))] 730.10/251.24 730.10/251.24 [mark(U52(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U52(mark(X)))] 730.10/251.24 730.10/251.24 [mark(U61(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U61(mark(X)))] 730.10/251.24 730.10/251.24 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [active(U71(mark(X1), X2))] 730.10/251.24 730.10/251.24 [mark(U72(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U72(mark(X)))] 730.10/251.24 730.10/251.24 [mark(isPal(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(isPal(X))] 730.10/251.24 730.10/251.24 [mark(U81(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(U81(mark(X)))] 730.10/251.24 730.10/251.24 [mark(isQid(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(isQid(X))] 730.10/251.24 730.10/251.24 [mark(isNePal(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [active(isNePal(X))] 730.10/251.24 730.10/251.24 [mark(a())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(a())] 730.10/251.24 730.10/251.24 [mark(e())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(e())] 730.10/251.24 730.10/251.24 [mark(i())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(i())] 730.10/251.24 730.10/251.24 [mark(o())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(o())] 730.10/251.24 730.10/251.24 [mark(u())] = [0] 730.10/251.24 >= [0] 730.10/251.24 = [active(u())] 730.10/251.24 730.10/251.24 [U11(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U11(X)] 730.10/251.24 730.10/251.24 [U11(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U11(X)] 730.10/251.24 730.10/251.24 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U21(X1, X2)] 730.10/251.24 730.10/251.24 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U21(X1, X2)] 730.10/251.24 730.10/251.24 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U21(X1, X2)] 730.10/251.24 730.10/251.24 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U21(X1, X2)] 730.10/251.24 730.10/251.24 [U22(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U22(X)] 730.10/251.24 730.10/251.24 [U22(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U22(X)] 730.10/251.24 730.10/251.24 [isList(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isList(X)] 730.10/251.24 730.10/251.24 [isList(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isList(X)] 730.10/251.24 730.10/251.24 [U31(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U31(X)] 730.10/251.24 730.10/251.24 [U31(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U31(X)] 730.10/251.24 730.10/251.24 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U41(X1, X2)] 730.10/251.24 730.10/251.24 [U42(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U42(X)] 730.10/251.24 730.10/251.24 [U42(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U42(X)] 730.10/251.24 730.10/251.24 [isNeList(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNeList(X)] 730.10/251.24 730.10/251.24 [isNeList(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNeList(X)] 730.10/251.24 730.10/251.24 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.24 >= [1] X1 + [1] X2 + [1] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.24 >= [1] X1 + [1] X2 + [1] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.24 >= [1] X1 + [1] X2 + [1] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.24 >= [1] X1 + [1] X2 + [1] 730.10/251.24 = [U51(X1, X2)] 730.10/251.24 730.10/251.24 [U52(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U52(X)] 730.10/251.24 730.10/251.24 [U52(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U52(X)] 730.10/251.24 730.10/251.24 [U61(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U61(X)] 730.10/251.24 730.10/251.24 [U61(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U61(X)] 730.10/251.24 730.10/251.24 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.24 >= [1] X1 + [1] X2 + [0] 730.10/251.24 = [U71(X1, X2)] 730.10/251.24 730.10/251.24 [U72(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U72(X)] 730.10/251.24 730.10/251.24 [U72(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U72(X)] 730.10/251.24 730.10/251.24 [isPal(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isPal(X)] 730.10/251.24 730.10/251.24 [isPal(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isPal(X)] 730.10/251.24 730.10/251.24 [U81(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U81(X)] 730.10/251.24 730.10/251.24 [U81(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [U81(X)] 730.10/251.24 730.10/251.24 [isQid(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isQid(X)] 730.10/251.24 730.10/251.24 [isQid(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isQid(X)] 730.10/251.24 730.10/251.24 [isNePal(active(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNePal(X)] 730.10/251.24 730.10/251.24 [isNePal(mark(X))] = [1] X + [0] 730.10/251.24 >= [1] X + [0] 730.10/251.24 = [isNePal(X)] 730.10/251.24 730.10/251.24 730.10/251.24 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.24 730.10/251.24 We are left with following problem, upon which TcT provides the 730.10/251.24 certificate MAYBE. 730.10/251.24 730.10/251.24 Strict Trs: 730.10/251.24 { active(__(X, nil())) -> mark(X) 730.10/251.24 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.24 , active(__(nil(), X)) -> mark(X) 730.10/251.24 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.24 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.24 , active(isList(nil())) -> mark(tt()) 730.10/251.24 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.24 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.24 , active(U72(tt())) -> mark(tt()) 730.10/251.24 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.24 , active(isPal(nil())) -> mark(tt()) 730.10/251.24 , active(U81(tt())) -> mark(tt()) 730.10/251.24 , active(isQid(a())) -> mark(tt()) 730.10/251.24 , active(isQid(e())) -> mark(tt()) 730.10/251.24 , active(isQid(i())) -> mark(tt()) 730.10/251.24 , active(isQid(o())) -> mark(tt()) 730.10/251.24 , active(isQid(u())) -> mark(tt()) 730.10/251.24 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.24 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.25 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.25 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.25 , __(active(X1), X2) -> __(X1, X2) 730.10/251.25 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.25 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.25 , mark(nil()) -> active(nil()) 730.10/251.25 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.25 , mark(tt()) -> active(tt()) 730.10/251.25 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.25 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.25 , mark(isList(X)) -> active(isList(X)) 730.10/251.25 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.25 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.25 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.25 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.25 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.25 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.25 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.25 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.25 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.25 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.25 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.25 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.25 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.25 , mark(a()) -> active(a()) 730.10/251.25 , mark(e()) -> active(e()) 730.10/251.25 , mark(i()) -> active(i()) 730.10/251.25 , mark(o()) -> active(o()) 730.10/251.25 , mark(u()) -> active(u()) 730.10/251.25 , U11(active(X)) -> U11(X) 730.10/251.25 , U11(mark(X)) -> U11(X) 730.10/251.25 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.25 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.25 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.25 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.25 , U22(active(X)) -> U22(X) 730.10/251.25 , U22(mark(X)) -> U22(X) 730.10/251.25 , isList(active(X)) -> isList(X) 730.10/251.25 , isList(mark(X)) -> isList(X) 730.10/251.25 , U31(active(X)) -> U31(X) 730.10/251.25 , U31(mark(X)) -> U31(X) 730.10/251.25 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.25 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.25 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.25 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.25 , U42(active(X)) -> U42(X) 730.10/251.25 , U42(mark(X)) -> U42(X) 730.10/251.25 , isNeList(active(X)) -> isNeList(X) 730.10/251.25 , isNeList(mark(X)) -> isNeList(X) 730.10/251.25 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.25 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.25 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.25 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.25 , U52(active(X)) -> U52(X) 730.10/251.25 , U52(mark(X)) -> U52(X) 730.10/251.25 , U61(active(X)) -> U61(X) 730.10/251.25 , U61(mark(X)) -> U61(X) 730.10/251.25 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.25 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.25 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.25 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.25 , U72(active(X)) -> U72(X) 730.10/251.25 , U72(mark(X)) -> U72(X) 730.10/251.25 , isPal(active(X)) -> isPal(X) 730.10/251.25 , isPal(mark(X)) -> isPal(X) 730.10/251.25 , U81(active(X)) -> U81(X) 730.10/251.25 , U81(mark(X)) -> U81(X) 730.10/251.25 , isQid(active(X)) -> isQid(X) 730.10/251.25 , isQid(mark(X)) -> isQid(X) 730.10/251.25 , isNePal(active(X)) -> isNePal(X) 730.10/251.25 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.25 Weak Trs: 730.10/251.25 { active(U11(tt())) -> mark(tt()) 730.10/251.25 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.25 , active(U22(tt())) -> mark(tt()) 730.10/251.25 , active(U31(tt())) -> mark(tt()) 730.10/251.25 , active(U42(tt())) -> mark(tt()) 730.10/251.25 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.25 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.25 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.25 , active(U52(tt())) -> mark(tt()) 730.10/251.25 , active(U61(tt())) -> mark(tt()) 730.10/251.25 , active(U71(tt(), P)) -> mark(U72(isPal(P))) } 730.10/251.25 Obligation: 730.10/251.25 derivational complexity 730.10/251.25 Answer: 730.10/251.25 MAYBE 730.10/251.25 730.10/251.25 The weightgap principle applies (using the following nonconstant 730.10/251.25 growth matrix-interpretation) 730.10/251.25 730.10/251.25 TcT has computed the following triangular matrix interpretation. 730.10/251.25 Note that the diagonal of the component-wise maxima of 730.10/251.25 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.25 730.10/251.25 [active](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.25 730.10/251.25 [mark](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [nil] = [0] 730.10/251.25 730.10/251.25 [U11](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [tt] = [0] 730.10/251.25 730.10/251.25 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.25 730.10/251.25 [U22](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [isList](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U31](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.25 730.10/251.25 [U42](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [isNeList](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.25 730.10/251.25 [U52](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U61](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.25 730.10/251.25 [U72](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [isPal](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [U81](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [isQid](x1) = [1] x1 + [0] 730.10/251.25 730.10/251.25 [isNePal](x1) = [1] x1 + [1] 730.10/251.25 730.10/251.25 [a] = [0] 730.10/251.25 730.10/251.25 [e] = [0] 730.10/251.25 730.10/251.25 [i] = [0] 730.10/251.25 730.10/251.25 [o] = [0] 730.10/251.25 730.10/251.25 [u] = [0] 730.10/251.25 730.10/251.25 The order satisfies the following ordering constraints: 730.10/251.25 730.10/251.25 [active(__(X, nil()))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [mark(X)] 730.10/251.25 730.10/251.25 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.25 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.25 = [mark(__(X, __(Y, Z)))] 730.10/251.25 730.10/251.25 [active(__(nil(), X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [mark(X)] 730.10/251.25 730.10/251.25 [active(U11(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.25 >= [1] V2 + [0] 730.10/251.25 = [mark(U22(isList(V2)))] 730.10/251.25 730.10/251.25 [active(U22(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isList(V))] = [1] V + [0] 730.10/251.25 >= [1] V + [0] 730.10/251.25 = [mark(U11(isNeList(V)))] 730.10/251.25 730.10/251.25 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.25 >= [1] V2 + [1] V1 + [0] 730.10/251.25 = [mark(U21(isList(V1), V2))] 730.10/251.25 730.10/251.25 [active(isList(nil()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U31(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.25 >= [1] V2 + [0] 730.10/251.25 = [mark(U42(isNeList(V2)))] 730.10/251.25 730.10/251.25 [active(U42(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isNeList(V))] = [1] V + [0] 730.10/251.25 >= [1] V + [0] 730.10/251.25 = [mark(U31(isQid(V)))] 730.10/251.25 730.10/251.25 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.25 >= [1] V2 + [1] V1 + [0] 730.10/251.25 = [mark(U41(isList(V1), V2))] 730.10/251.25 730.10/251.25 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.25 >= [1] V2 + [1] V1 + [0] 730.10/251.25 = [mark(U51(isNeList(V1), V2))] 730.10/251.25 730.10/251.25 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.25 >= [1] V2 + [0] 730.10/251.25 = [mark(U52(isList(V2)))] 730.10/251.25 730.10/251.25 [active(U52(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U61(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.25 >= [1] P + [0] 730.10/251.25 = [mark(U72(isPal(P)))] 730.10/251.25 730.10/251.25 [active(U72(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isPal(V))] = [1] V + [0] 730.10/251.25 ? [1] V + [1] 730.10/251.25 = [mark(U81(isNePal(V)))] 730.10/251.25 730.10/251.25 [active(isPal(nil()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(U81(tt()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isQid(a()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isQid(e()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isQid(i()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isQid(o()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isQid(u()))] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [mark(tt())] 730.10/251.25 730.10/251.25 [active(isNePal(V))] = [1] V + [1] 730.10/251.25 > [1] V + [0] 730.10/251.25 = [mark(U61(isQid(V)))] 730.10/251.25 730.10/251.25 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.10/251.25 > [1] P + [1] I + [0] 730.10/251.25 = [mark(U71(isQid(I), P))] 730.10/251.25 730.10/251.25 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [__(X1, X2)] 730.10/251.25 730.10/251.25 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [__(X1, X2)] 730.10/251.25 730.10/251.25 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [__(X1, X2)] 730.10/251.25 730.10/251.25 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [__(X1, X2)] 730.10/251.25 730.10/251.25 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [active(__(mark(X1), mark(X2)))] 730.10/251.25 730.10/251.25 [mark(nil())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(nil())] 730.10/251.25 730.10/251.25 [mark(U11(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U11(mark(X)))] 730.10/251.25 730.10/251.25 [mark(tt())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(tt())] 730.10/251.25 730.10/251.25 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [active(U21(mark(X1), X2))] 730.10/251.25 730.10/251.25 [mark(U22(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U22(mark(X)))] 730.10/251.25 730.10/251.25 [mark(isList(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(isList(X))] 730.10/251.25 730.10/251.25 [mark(U31(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U31(mark(X)))] 730.10/251.25 730.10/251.25 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [active(U41(mark(X1), X2))] 730.10/251.25 730.10/251.25 [mark(U42(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U42(mark(X)))] 730.10/251.25 730.10/251.25 [mark(isNeList(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(isNeList(X))] 730.10/251.25 730.10/251.25 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [active(U51(mark(X1), X2))] 730.10/251.25 730.10/251.25 [mark(U52(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U52(mark(X)))] 730.10/251.25 730.10/251.25 [mark(U61(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U61(mark(X)))] 730.10/251.25 730.10/251.25 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [active(U71(mark(X1), X2))] 730.10/251.25 730.10/251.25 [mark(U72(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U72(mark(X)))] 730.10/251.25 730.10/251.25 [mark(isPal(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(isPal(X))] 730.10/251.25 730.10/251.25 [mark(U81(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(U81(mark(X)))] 730.10/251.25 730.10/251.25 [mark(isQid(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [active(isQid(X))] 730.10/251.25 730.10/251.25 [mark(isNePal(X))] = [1] X + [1] 730.10/251.25 >= [1] X + [1] 730.10/251.25 = [active(isNePal(X))] 730.10/251.25 730.10/251.25 [mark(a())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(a())] 730.10/251.25 730.10/251.25 [mark(e())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(e())] 730.10/251.25 730.10/251.25 [mark(i())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(i())] 730.10/251.25 730.10/251.25 [mark(o())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(o())] 730.10/251.25 730.10/251.25 [mark(u())] = [0] 730.10/251.25 >= [0] 730.10/251.25 = [active(u())] 730.10/251.25 730.10/251.25 [U11(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U11(X)] 730.10/251.25 730.10/251.25 [U11(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U11(X)] 730.10/251.25 730.10/251.25 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U21(X1, X2)] 730.10/251.25 730.10/251.25 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U21(X1, X2)] 730.10/251.25 730.10/251.25 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U21(X1, X2)] 730.10/251.25 730.10/251.25 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U21(X1, X2)] 730.10/251.25 730.10/251.25 [U22(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U22(X)] 730.10/251.25 730.10/251.25 [U22(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U22(X)] 730.10/251.25 730.10/251.25 [isList(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isList(X)] 730.10/251.25 730.10/251.25 [isList(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isList(X)] 730.10/251.25 730.10/251.25 [U31(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U31(X)] 730.10/251.25 730.10/251.25 [U31(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U31(X)] 730.10/251.25 730.10/251.25 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U41(X1, X2)] 730.10/251.25 730.10/251.25 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U41(X1, X2)] 730.10/251.25 730.10/251.25 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U41(X1, X2)] 730.10/251.25 730.10/251.25 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U41(X1, X2)] 730.10/251.25 730.10/251.25 [U42(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U42(X)] 730.10/251.25 730.10/251.25 [U42(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U42(X)] 730.10/251.25 730.10/251.25 [isNeList(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isNeList(X)] 730.10/251.25 730.10/251.25 [isNeList(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isNeList(X)] 730.10/251.25 730.10/251.25 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U51(X1, X2)] 730.10/251.25 730.10/251.25 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U51(X1, X2)] 730.10/251.25 730.10/251.25 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U51(X1, X2)] 730.10/251.25 730.10/251.25 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U51(X1, X2)] 730.10/251.25 730.10/251.25 [U52(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U52(X)] 730.10/251.25 730.10/251.25 [U52(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U52(X)] 730.10/251.25 730.10/251.25 [U61(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U61(X)] 730.10/251.25 730.10/251.25 [U61(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U61(X)] 730.10/251.25 730.10/251.25 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U71(X1, X2)] 730.10/251.25 730.10/251.25 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U71(X1, X2)] 730.10/251.25 730.10/251.25 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U71(X1, X2)] 730.10/251.25 730.10/251.25 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.25 >= [1] X1 + [1] X2 + [0] 730.10/251.25 = [U71(X1, X2)] 730.10/251.25 730.10/251.25 [U72(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U72(X)] 730.10/251.25 730.10/251.25 [U72(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U72(X)] 730.10/251.25 730.10/251.25 [isPal(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isPal(X)] 730.10/251.25 730.10/251.25 [isPal(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isPal(X)] 730.10/251.25 730.10/251.25 [U81(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U81(X)] 730.10/251.25 730.10/251.25 [U81(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [U81(X)] 730.10/251.25 730.10/251.25 [isQid(active(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isQid(X)] 730.10/251.25 730.10/251.25 [isQid(mark(X))] = [1] X + [0] 730.10/251.25 >= [1] X + [0] 730.10/251.25 = [isQid(X)] 730.10/251.25 730.10/251.25 [isNePal(active(X))] = [1] X + [1] 730.10/251.25 >= [1] X + [1] 730.10/251.25 = [isNePal(X)] 730.10/251.25 730.10/251.25 [isNePal(mark(X))] = [1] X + [1] 730.10/251.25 >= [1] X + [1] 730.10/251.25 = [isNePal(X)] 730.10/251.25 730.10/251.25 730.10/251.25 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.25 730.10/251.25 We are left with following problem, upon which TcT provides the 730.10/251.25 certificate MAYBE. 730.10/251.25 730.10/251.25 Strict Trs: 730.10/251.25 { active(__(X, nil())) -> mark(X) 730.10/251.25 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.25 , active(__(nil(), X)) -> mark(X) 730.10/251.25 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.25 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.25 , active(isList(nil())) -> mark(tt()) 730.10/251.25 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.25 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.25 , active(U72(tt())) -> mark(tt()) 730.10/251.25 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.25 , active(isPal(nil())) -> mark(tt()) 730.10/251.25 , active(U81(tt())) -> mark(tt()) 730.10/251.25 , active(isQid(a())) -> mark(tt()) 730.10/251.25 , active(isQid(e())) -> mark(tt()) 730.10/251.25 , active(isQid(i())) -> mark(tt()) 730.10/251.25 , active(isQid(o())) -> mark(tt()) 730.10/251.25 , active(isQid(u())) -> mark(tt()) 730.10/251.25 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.25 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.25 , __(active(X1), X2) -> __(X1, X2) 730.10/251.25 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.25 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.25 , mark(nil()) -> active(nil()) 730.10/251.25 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.25 , mark(tt()) -> active(tt()) 730.10/251.25 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.25 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.25 , mark(isList(X)) -> active(isList(X)) 730.10/251.25 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.25 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.25 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.25 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.25 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.25 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.25 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.25 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.25 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.25 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.25 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.25 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.25 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.25 , mark(a()) -> active(a()) 730.10/251.25 , mark(e()) -> active(e()) 730.10/251.25 , mark(i()) -> active(i()) 730.10/251.25 , mark(o()) -> active(o()) 730.10/251.25 , mark(u()) -> active(u()) 730.10/251.25 , U11(active(X)) -> U11(X) 730.10/251.25 , U11(mark(X)) -> U11(X) 730.10/251.25 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.25 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.25 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.25 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.25 , U22(active(X)) -> U22(X) 730.10/251.25 , U22(mark(X)) -> U22(X) 730.10/251.25 , isList(active(X)) -> isList(X) 730.10/251.25 , isList(mark(X)) -> isList(X) 730.10/251.25 , U31(active(X)) -> U31(X) 730.10/251.25 , U31(mark(X)) -> U31(X) 730.10/251.25 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.25 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.25 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.25 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.25 , U42(active(X)) -> U42(X) 730.10/251.25 , U42(mark(X)) -> U42(X) 730.10/251.25 , isNeList(active(X)) -> isNeList(X) 730.10/251.25 , isNeList(mark(X)) -> isNeList(X) 730.10/251.25 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.25 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.25 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.25 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.25 , U52(active(X)) -> U52(X) 730.10/251.25 , U52(mark(X)) -> U52(X) 730.10/251.25 , U61(active(X)) -> U61(X) 730.10/251.25 , U61(mark(X)) -> U61(X) 730.10/251.25 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.25 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.25 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.25 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.25 , U72(active(X)) -> U72(X) 730.10/251.25 , U72(mark(X)) -> U72(X) 730.10/251.25 , isPal(active(X)) -> isPal(X) 730.10/251.25 , isPal(mark(X)) -> isPal(X) 730.10/251.25 , U81(active(X)) -> U81(X) 730.10/251.25 , U81(mark(X)) -> U81(X) 730.10/251.25 , isQid(active(X)) -> isQid(X) 730.10/251.25 , isQid(mark(X)) -> isQid(X) 730.10/251.25 , isNePal(active(X)) -> isNePal(X) 730.10/251.25 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.25 Weak Trs: 730.10/251.25 { active(U11(tt())) -> mark(tt()) 730.10/251.25 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.25 , active(U22(tt())) -> mark(tt()) 730.10/251.25 , active(U31(tt())) -> mark(tt()) 730.10/251.25 , active(U42(tt())) -> mark(tt()) 730.10/251.25 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.25 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.25 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.25 , active(U52(tt())) -> mark(tt()) 730.10/251.25 , active(U61(tt())) -> mark(tt()) 730.10/251.25 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.25 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.25 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) } 730.10/251.25 Obligation: 730.10/251.25 derivational complexity 730.10/251.25 Answer: 730.10/251.25 MAYBE 730.10/251.25 730.10/251.25 The weightgap principle applies (using the following nonconstant 730.10/251.25 growth matrix-interpretation) 730.10/251.25 730.10/251.25 TcT has computed the following triangular matrix interpretation. 730.10/251.26 Note that the diagonal of the component-wise maxima of 730.10/251.26 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.26 730.10/251.26 [active](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [mark](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [nil] = [0] 730.10/251.26 730.10/251.26 [U11](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [tt] = [0] 730.10/251.26 730.10/251.26 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U22](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isList](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U31](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U42](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isNeList](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U52](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U61](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U72](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isPal](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U81](x1) = [1] x1 + [1] 730.10/251.26 730.10/251.26 [isQid](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isNePal](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [a] = [0] 730.10/251.26 730.10/251.26 [e] = [0] 730.10/251.26 730.10/251.26 [i] = [0] 730.10/251.26 730.10/251.26 [o] = [0] 730.10/251.26 730.10/251.26 [u] = [0] 730.10/251.26 730.10/251.26 The order satisfies the following ordering constraints: 730.10/251.26 730.10/251.26 [active(__(X, nil()))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [mark(X)] 730.10/251.26 730.10/251.26 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.26 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.26 = [mark(__(X, __(Y, Z)))] 730.10/251.26 730.10/251.26 [active(__(nil(), X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [mark(X)] 730.10/251.26 730.10/251.26 [active(U11(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U22(isList(V2)))] 730.10/251.26 730.10/251.26 [active(U22(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isList(V))] = [1] V + [0] 730.10/251.26 >= [1] V + [0] 730.10/251.26 = [mark(U11(isNeList(V)))] 730.10/251.26 730.10/251.26 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U21(isList(V1), V2))] 730.10/251.26 730.10/251.26 [active(isList(nil()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U31(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U42(isNeList(V2)))] 730.10/251.26 730.10/251.26 [active(U42(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isNeList(V))] = [1] V + [0] 730.10/251.26 >= [1] V + [0] 730.10/251.26 = [mark(U31(isQid(V)))] 730.10/251.26 730.10/251.26 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U41(isList(V1), V2))] 730.10/251.26 730.10/251.26 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U51(isNeList(V1), V2))] 730.10/251.26 730.10/251.26 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U52(isList(V2)))] 730.10/251.26 730.10/251.26 [active(U52(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U61(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.26 >= [1] P + [0] 730.10/251.26 = [mark(U72(isPal(P)))] 730.10/251.26 730.10/251.26 [active(U72(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isPal(V))] = [1] V + [0] 730.10/251.26 ? [1] V + [1] 730.10/251.26 = [mark(U81(isNePal(V)))] 730.10/251.26 730.10/251.26 [active(isPal(nil()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U81(tt()))] = [1] 730.10/251.26 > [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(a()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(e()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(i()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(o()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(u()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isNePal(V))] = [1] V + [0] 730.10/251.26 >= [1] V + [0] 730.10/251.26 = [mark(U61(isQid(V)))] 730.10/251.26 730.10/251.26 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [0] 730.10/251.26 >= [1] P + [1] I + [0] 730.10/251.26 = [mark(U71(isQid(I), P))] 730.10/251.26 730.10/251.26 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [__(X1, X2)] 730.10/251.26 730.10/251.26 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [__(X1, X2)] 730.10/251.26 730.10/251.26 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [__(X1, X2)] 730.10/251.26 730.10/251.26 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [__(X1, X2)] 730.10/251.26 730.10/251.26 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [active(__(mark(X1), mark(X2)))] 730.10/251.26 730.10/251.26 [mark(nil())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(nil())] 730.10/251.26 730.10/251.26 [mark(U11(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U11(mark(X)))] 730.10/251.26 730.10/251.26 [mark(tt())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(tt())] 730.10/251.26 730.10/251.26 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [active(U21(mark(X1), X2))] 730.10/251.26 730.10/251.26 [mark(U22(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U22(mark(X)))] 730.10/251.26 730.10/251.26 [mark(isList(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(isList(X))] 730.10/251.26 730.10/251.26 [mark(U31(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U31(mark(X)))] 730.10/251.26 730.10/251.26 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [active(U41(mark(X1), X2))] 730.10/251.26 730.10/251.26 [mark(U42(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U42(mark(X)))] 730.10/251.26 730.10/251.26 [mark(isNeList(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(isNeList(X))] 730.10/251.26 730.10/251.26 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [active(U51(mark(X1), X2))] 730.10/251.26 730.10/251.26 [mark(U52(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U52(mark(X)))] 730.10/251.26 730.10/251.26 [mark(U61(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U61(mark(X)))] 730.10/251.26 730.10/251.26 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [active(U71(mark(X1), X2))] 730.10/251.26 730.10/251.26 [mark(U72(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(U72(mark(X)))] 730.10/251.26 730.10/251.26 [mark(isPal(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(isPal(X))] 730.10/251.26 730.10/251.26 [mark(U81(X))] = [1] X + [1] 730.10/251.26 >= [1] X + [1] 730.10/251.26 = [active(U81(mark(X)))] 730.10/251.26 730.10/251.26 [mark(isQid(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(isQid(X))] 730.10/251.26 730.10/251.26 [mark(isNePal(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [active(isNePal(X))] 730.10/251.26 730.10/251.26 [mark(a())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(a())] 730.10/251.26 730.10/251.26 [mark(e())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(e())] 730.10/251.26 730.10/251.26 [mark(i())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(i())] 730.10/251.26 730.10/251.26 [mark(o())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(o())] 730.10/251.26 730.10/251.26 [mark(u())] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [active(u())] 730.10/251.26 730.10/251.26 [U11(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U11(X)] 730.10/251.26 730.10/251.26 [U11(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U11(X)] 730.10/251.26 730.10/251.26 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U21(X1, X2)] 730.10/251.26 730.10/251.26 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U21(X1, X2)] 730.10/251.26 730.10/251.26 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U21(X1, X2)] 730.10/251.26 730.10/251.26 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U21(X1, X2)] 730.10/251.26 730.10/251.26 [U22(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U22(X)] 730.10/251.26 730.10/251.26 [U22(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U22(X)] 730.10/251.26 730.10/251.26 [isList(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isList(X)] 730.10/251.26 730.10/251.26 [isList(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isList(X)] 730.10/251.26 730.10/251.26 [U31(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U31(X)] 730.10/251.26 730.10/251.26 [U31(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U31(X)] 730.10/251.26 730.10/251.26 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U41(X1, X2)] 730.10/251.26 730.10/251.26 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U41(X1, X2)] 730.10/251.26 730.10/251.26 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U41(X1, X2)] 730.10/251.26 730.10/251.26 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U41(X1, X2)] 730.10/251.26 730.10/251.26 [U42(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U42(X)] 730.10/251.26 730.10/251.26 [U42(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U42(X)] 730.10/251.26 730.10/251.26 [isNeList(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isNeList(X)] 730.10/251.26 730.10/251.26 [isNeList(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isNeList(X)] 730.10/251.26 730.10/251.26 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U51(X1, X2)] 730.10/251.26 730.10/251.26 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U51(X1, X2)] 730.10/251.26 730.10/251.26 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U51(X1, X2)] 730.10/251.26 730.10/251.26 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U51(X1, X2)] 730.10/251.26 730.10/251.26 [U52(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U52(X)] 730.10/251.26 730.10/251.26 [U52(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U52(X)] 730.10/251.26 730.10/251.26 [U61(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U61(X)] 730.10/251.26 730.10/251.26 [U61(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U61(X)] 730.10/251.26 730.10/251.26 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U71(X1, X2)] 730.10/251.26 730.10/251.26 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U71(X1, X2)] 730.10/251.26 730.10/251.26 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U71(X1, X2)] 730.10/251.26 730.10/251.26 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.26 >= [1] X1 + [1] X2 + [0] 730.10/251.26 = [U71(X1, X2)] 730.10/251.26 730.10/251.26 [U72(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U72(X)] 730.10/251.26 730.10/251.26 [U72(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [U72(X)] 730.10/251.26 730.10/251.26 [isPal(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isPal(X)] 730.10/251.26 730.10/251.26 [isPal(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isPal(X)] 730.10/251.26 730.10/251.26 [U81(active(X))] = [1] X + [1] 730.10/251.26 >= [1] X + [1] 730.10/251.26 = [U81(X)] 730.10/251.26 730.10/251.26 [U81(mark(X))] = [1] X + [1] 730.10/251.26 >= [1] X + [1] 730.10/251.26 = [U81(X)] 730.10/251.26 730.10/251.26 [isQid(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isQid(X)] 730.10/251.26 730.10/251.26 [isQid(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isQid(X)] 730.10/251.26 730.10/251.26 [isNePal(active(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isNePal(X)] 730.10/251.26 730.10/251.26 [isNePal(mark(X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [isNePal(X)] 730.10/251.26 730.10/251.26 730.10/251.26 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.26 730.10/251.26 We are left with following problem, upon which TcT provides the 730.10/251.26 certificate MAYBE. 730.10/251.26 730.10/251.26 Strict Trs: 730.10/251.26 { active(__(X, nil())) -> mark(X) 730.10/251.26 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.26 , active(__(nil(), X)) -> mark(X) 730.10/251.26 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.26 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.26 , active(isList(nil())) -> mark(tt()) 730.10/251.26 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.26 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.26 , active(U72(tt())) -> mark(tt()) 730.10/251.26 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.26 , active(isPal(nil())) -> mark(tt()) 730.10/251.26 , active(isQid(a())) -> mark(tt()) 730.10/251.26 , active(isQid(e())) -> mark(tt()) 730.10/251.26 , active(isQid(i())) -> mark(tt()) 730.10/251.26 , active(isQid(o())) -> mark(tt()) 730.10/251.26 , active(isQid(u())) -> mark(tt()) 730.10/251.26 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.26 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.26 , __(active(X1), X2) -> __(X1, X2) 730.10/251.26 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.26 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.26 , mark(nil()) -> active(nil()) 730.10/251.26 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.26 , mark(tt()) -> active(tt()) 730.10/251.26 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.26 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.26 , mark(isList(X)) -> active(isList(X)) 730.10/251.26 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.26 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.26 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.26 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.26 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.26 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.26 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.26 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.26 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.26 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.26 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.26 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.26 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.26 , mark(a()) -> active(a()) 730.10/251.26 , mark(e()) -> active(e()) 730.10/251.26 , mark(i()) -> active(i()) 730.10/251.26 , mark(o()) -> active(o()) 730.10/251.26 , mark(u()) -> active(u()) 730.10/251.26 , U11(active(X)) -> U11(X) 730.10/251.26 , U11(mark(X)) -> U11(X) 730.10/251.26 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.26 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.26 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.26 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.26 , U22(active(X)) -> U22(X) 730.10/251.26 , U22(mark(X)) -> U22(X) 730.10/251.26 , isList(active(X)) -> isList(X) 730.10/251.26 , isList(mark(X)) -> isList(X) 730.10/251.26 , U31(active(X)) -> U31(X) 730.10/251.26 , U31(mark(X)) -> U31(X) 730.10/251.26 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.26 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.26 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.26 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.26 , U42(active(X)) -> U42(X) 730.10/251.26 , U42(mark(X)) -> U42(X) 730.10/251.26 , isNeList(active(X)) -> isNeList(X) 730.10/251.26 , isNeList(mark(X)) -> isNeList(X) 730.10/251.26 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.26 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.26 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.26 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.26 , U52(active(X)) -> U52(X) 730.10/251.26 , U52(mark(X)) -> U52(X) 730.10/251.26 , U61(active(X)) -> U61(X) 730.10/251.26 , U61(mark(X)) -> U61(X) 730.10/251.26 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.26 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.26 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.26 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.26 , U72(active(X)) -> U72(X) 730.10/251.26 , U72(mark(X)) -> U72(X) 730.10/251.26 , isPal(active(X)) -> isPal(X) 730.10/251.26 , isPal(mark(X)) -> isPal(X) 730.10/251.26 , U81(active(X)) -> U81(X) 730.10/251.26 , U81(mark(X)) -> U81(X) 730.10/251.26 , isQid(active(X)) -> isQid(X) 730.10/251.26 , isQid(mark(X)) -> isQid(X) 730.10/251.26 , isNePal(active(X)) -> isNePal(X) 730.10/251.26 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.26 Weak Trs: 730.10/251.26 { active(U11(tt())) -> mark(tt()) 730.10/251.26 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.26 , active(U22(tt())) -> mark(tt()) 730.10/251.26 , active(U31(tt())) -> mark(tt()) 730.10/251.26 , active(U42(tt())) -> mark(tt()) 730.10/251.26 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.26 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.26 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.26 , active(U52(tt())) -> mark(tt()) 730.10/251.26 , active(U61(tt())) -> mark(tt()) 730.10/251.26 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.26 , active(U81(tt())) -> mark(tt()) 730.10/251.26 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.26 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) } 730.10/251.26 Obligation: 730.10/251.26 derivational complexity 730.10/251.26 Answer: 730.10/251.26 MAYBE 730.10/251.26 730.10/251.26 We use the processor 'matrix interpretation of dimension 1' to 730.10/251.26 orient following rules strictly. 730.10/251.26 730.10/251.26 Trs: { active(isPal(nil())) -> mark(tt()) } 730.10/251.26 730.10/251.26 The induced complexity on above rules (modulo remaining rules) is 730.10/251.26 YES(?,O(n^1)) . These rules are moved into the corresponding weak 730.10/251.26 component(s). 730.10/251.26 730.10/251.26 Sub-proof: 730.10/251.26 ---------- 730.10/251.26 TcT has computed the following triangular matrix interpretation. 730.10/251.26 730.10/251.26 [active](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [mark](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [nil] = [0] 730.10/251.26 730.10/251.26 [U11](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [tt] = [0] 730.10/251.26 730.10/251.26 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U22](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isList](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U31](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U42](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isNeList](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.26 730.10/251.26 [U52](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U61](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [U71](x1, x2) = [1] x1 + [1] x2 + [1] 730.10/251.26 730.10/251.26 [U72](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isPal](x1) = [1] x1 + [1] 730.10/251.26 730.10/251.26 [U81](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isQid](x1) = [1] x1 + [0] 730.10/251.26 730.10/251.26 [isNePal](x1) = [1] x1 + [1] 730.10/251.26 730.10/251.26 [a] = [0] 730.10/251.26 730.10/251.26 [e] = [0] 730.10/251.26 730.10/251.26 [i] = [0] 730.10/251.26 730.10/251.26 [o] = [0] 730.10/251.26 730.10/251.26 [u] = [0] 730.10/251.26 730.10/251.26 The order satisfies the following ordering constraints: 730.10/251.26 730.10/251.26 [active(__(X, nil()))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [mark(X)] 730.10/251.26 730.10/251.26 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.26 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.26 = [mark(__(X, __(Y, Z)))] 730.10/251.26 730.10/251.26 [active(__(nil(), X))] = [1] X + [0] 730.10/251.26 >= [1] X + [0] 730.10/251.26 = [mark(X)] 730.10/251.26 730.10/251.26 [active(U11(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U22(isList(V2)))] 730.10/251.26 730.10/251.26 [active(U22(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isList(V))] = [1] V + [0] 730.10/251.26 >= [1] V + [0] 730.10/251.26 = [mark(U11(isNeList(V)))] 730.10/251.26 730.10/251.26 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U21(isList(V1), V2))] 730.10/251.26 730.10/251.26 [active(isList(nil()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U31(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U42(isNeList(V2)))] 730.10/251.26 730.10/251.26 [active(U42(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isNeList(V))] = [1] V + [0] 730.10/251.26 >= [1] V + [0] 730.10/251.26 = [mark(U31(isQid(V)))] 730.10/251.26 730.10/251.26 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U41(isList(V1), V2))] 730.10/251.26 730.10/251.26 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.26 >= [1] V2 + [1] V1 + [0] 730.10/251.26 = [mark(U51(isNeList(V1), V2))] 730.10/251.26 730.10/251.26 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.26 >= [1] V2 + [0] 730.10/251.26 = [mark(U52(isList(V2)))] 730.10/251.26 730.10/251.26 [active(U52(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U61(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U71(tt(), P))] = [1] P + [1] 730.10/251.26 >= [1] P + [1] 730.10/251.26 = [mark(U72(isPal(P)))] 730.10/251.26 730.10/251.26 [active(U72(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isPal(V))] = [1] V + [1] 730.10/251.26 >= [1] V + [1] 730.10/251.26 = [mark(U81(isNePal(V)))] 730.10/251.26 730.10/251.26 [active(isPal(nil()))] = [1] 730.10/251.26 > [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(U81(tt()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(a()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(e()))] = [0] 730.10/251.26 >= [0] 730.10/251.26 = [mark(tt())] 730.10/251.26 730.10/251.26 [active(isQid(i()))] = [0] 730.10/251.26 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(o()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(u()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isNePal(V))] = [1] V + [1] 730.10/251.27 > [1] V + [0] 730.10/251.27 = [mark(U61(isQid(V)))] 730.10/251.27 730.10/251.27 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.10/251.27 >= [1] P + [1] I + [1] 730.10/251.27 = [mark(U71(isQid(I), P))] 730.10/251.27 730.10/251.27 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(__(mark(X1), mark(X2)))] 730.10/251.27 730.10/251.27 [mark(nil())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(nil())] 730.10/251.27 730.10/251.27 [mark(U11(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U11(mark(X)))] 730.10/251.27 730.10/251.27 [mark(tt())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(tt())] 730.10/251.27 730.10/251.27 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U21(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U22(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U22(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isList(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(isList(X))] 730.10/251.27 730.10/251.27 [mark(U31(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U31(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U41(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U42(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U42(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isNeList(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(isNeList(X))] 730.10/251.27 730.10/251.27 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U51(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U52(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U52(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U61(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U61(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [1] 730.10/251.27 >= [1] X1 + [1] X2 + [1] 730.10/251.27 = [active(U71(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U72(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U72(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isPal(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [active(isPal(X))] 730.10/251.27 730.10/251.27 [mark(U81(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U81(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isQid(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(isQid(X))] 730.10/251.27 730.10/251.27 [mark(isNePal(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [active(isNePal(X))] 730.10/251.27 730.10/251.27 [mark(a())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(a())] 730.10/251.27 730.10/251.27 [mark(e())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(e())] 730.10/251.27 730.10/251.27 [mark(i())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(i())] 730.10/251.27 730.10/251.27 [mark(o())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(o())] 730.10/251.27 730.10/251.27 [mark(u())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(u())] 730.10/251.27 730.10/251.27 [U11(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U11(X)] 730.10/251.27 730.10/251.27 [U11(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U11(X)] 730.10/251.27 730.10/251.27 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U21(X1, X2)] 730.10/251.27 730.10/251.27 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U21(X1, X2)] 730.10/251.27 730.10/251.27 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U21(X1, X2)] 730.10/251.27 730.10/251.27 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U21(X1, X2)] 730.10/251.27 730.10/251.27 [U22(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U22(X)] 730.10/251.27 730.10/251.27 [U22(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U22(X)] 730.10/251.27 730.10/251.27 [isList(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isList(X)] 730.10/251.27 730.10/251.27 [isList(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isList(X)] 730.10/251.27 730.10/251.27 [U31(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U31(X)] 730.10/251.27 730.10/251.27 [U31(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U31(X)] 730.10/251.27 730.10/251.27 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U41(X1, X2)] 730.10/251.27 730.10/251.27 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U41(X1, X2)] 730.10/251.27 730.10/251.27 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U41(X1, X2)] 730.10/251.27 730.10/251.27 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U41(X1, X2)] 730.10/251.27 730.10/251.27 [U42(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U42(X)] 730.10/251.27 730.10/251.27 [U42(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U42(X)] 730.10/251.27 730.10/251.27 [isNeList(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isNeList(X)] 730.10/251.27 730.10/251.27 [isNeList(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isNeList(X)] 730.10/251.27 730.10/251.27 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U51(X1, X2)] 730.10/251.27 730.10/251.27 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U51(X1, X2)] 730.10/251.27 730.10/251.27 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U51(X1, X2)] 730.10/251.27 730.10/251.27 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U51(X1, X2)] 730.10/251.27 730.10/251.27 [U52(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U52(X)] 730.10/251.27 730.10/251.27 [U52(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U52(X)] 730.10/251.27 730.10/251.27 [U61(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U61(X)] 730.10/251.27 730.10/251.27 [U61(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U61(X)] 730.10/251.27 730.10/251.27 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.27 >= [1] X1 + [1] X2 + [1] 730.10/251.27 = [U71(X1, X2)] 730.10/251.27 730.10/251.27 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.27 >= [1] X1 + [1] X2 + [1] 730.10/251.27 = [U71(X1, X2)] 730.10/251.27 730.10/251.27 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.27 >= [1] X1 + [1] X2 + [1] 730.10/251.27 = [U71(X1, X2)] 730.10/251.27 730.10/251.27 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.27 >= [1] X1 + [1] X2 + [1] 730.10/251.27 = [U71(X1, X2)] 730.10/251.27 730.10/251.27 [U72(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U72(X)] 730.10/251.27 730.10/251.27 [U72(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U72(X)] 730.10/251.27 730.10/251.27 [isPal(active(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [isPal(X)] 730.10/251.27 730.10/251.27 [isPal(mark(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [isPal(X)] 730.10/251.27 730.10/251.27 [U81(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U81(X)] 730.10/251.27 730.10/251.27 [U81(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U81(X)] 730.10/251.27 730.10/251.27 [isQid(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isQid(X)] 730.10/251.27 730.10/251.27 [isQid(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [isQid(X)] 730.10/251.27 730.10/251.27 [isNePal(active(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [isNePal(X)] 730.10/251.27 730.10/251.27 [isNePal(mark(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [isNePal(X)] 730.10/251.27 730.10/251.27 730.10/251.27 We return to the main proof. 730.10/251.27 730.10/251.27 We are left with following problem, upon which TcT provides the 730.10/251.27 certificate MAYBE. 730.10/251.27 730.10/251.27 Strict Trs: 730.10/251.27 { active(__(X, nil())) -> mark(X) 730.10/251.27 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.27 , active(__(nil(), X)) -> mark(X) 730.10/251.27 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.27 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.27 , active(isList(nil())) -> mark(tt()) 730.10/251.27 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.27 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.27 , active(U72(tt())) -> mark(tt()) 730.10/251.27 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.27 , active(isQid(a())) -> mark(tt()) 730.10/251.27 , active(isQid(e())) -> mark(tt()) 730.10/251.27 , active(isQid(i())) -> mark(tt()) 730.10/251.27 , active(isQid(o())) -> mark(tt()) 730.10/251.27 , active(isQid(u())) -> mark(tt()) 730.10/251.27 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.27 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.27 , __(active(X1), X2) -> __(X1, X2) 730.10/251.27 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.27 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.27 , mark(nil()) -> active(nil()) 730.10/251.27 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.27 , mark(tt()) -> active(tt()) 730.10/251.27 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.27 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.27 , mark(isList(X)) -> active(isList(X)) 730.10/251.27 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.27 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.27 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.27 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.27 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.27 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.27 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.27 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.27 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.27 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.27 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.27 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.27 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.27 , mark(a()) -> active(a()) 730.10/251.27 , mark(e()) -> active(e()) 730.10/251.27 , mark(i()) -> active(i()) 730.10/251.27 , mark(o()) -> active(o()) 730.10/251.27 , mark(u()) -> active(u()) 730.10/251.27 , U11(active(X)) -> U11(X) 730.10/251.27 , U11(mark(X)) -> U11(X) 730.10/251.27 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.27 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.27 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.27 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.27 , U22(active(X)) -> U22(X) 730.10/251.27 , U22(mark(X)) -> U22(X) 730.10/251.27 , isList(active(X)) -> isList(X) 730.10/251.27 , isList(mark(X)) -> isList(X) 730.10/251.27 , U31(active(X)) -> U31(X) 730.10/251.27 , U31(mark(X)) -> U31(X) 730.10/251.27 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.27 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.27 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.27 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.27 , U42(active(X)) -> U42(X) 730.10/251.27 , U42(mark(X)) -> U42(X) 730.10/251.27 , isNeList(active(X)) -> isNeList(X) 730.10/251.27 , isNeList(mark(X)) -> isNeList(X) 730.10/251.27 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.27 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.27 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.27 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.27 , U52(active(X)) -> U52(X) 730.10/251.27 , U52(mark(X)) -> U52(X) 730.10/251.27 , U61(active(X)) -> U61(X) 730.10/251.27 , U61(mark(X)) -> U61(X) 730.10/251.27 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.27 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.27 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.27 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.27 , U72(active(X)) -> U72(X) 730.10/251.27 , U72(mark(X)) -> U72(X) 730.10/251.27 , isPal(active(X)) -> isPal(X) 730.10/251.27 , isPal(mark(X)) -> isPal(X) 730.10/251.27 , U81(active(X)) -> U81(X) 730.10/251.27 , U81(mark(X)) -> U81(X) 730.10/251.27 , isQid(active(X)) -> isQid(X) 730.10/251.27 , isQid(mark(X)) -> isQid(X) 730.10/251.27 , isNePal(active(X)) -> isNePal(X) 730.10/251.27 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.27 Weak Trs: 730.10/251.27 { active(U11(tt())) -> mark(tt()) 730.10/251.27 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.27 , active(U22(tt())) -> mark(tt()) 730.10/251.27 , active(U31(tt())) -> mark(tt()) 730.10/251.27 , active(U42(tt())) -> mark(tt()) 730.10/251.27 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.27 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.27 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.27 , active(U52(tt())) -> mark(tt()) 730.10/251.27 , active(U61(tt())) -> mark(tt()) 730.10/251.27 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.27 , active(isPal(nil())) -> mark(tt()) 730.10/251.27 , active(U81(tt())) -> mark(tt()) 730.10/251.27 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.27 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) } 730.10/251.27 Obligation: 730.10/251.27 derivational complexity 730.10/251.27 Answer: 730.10/251.27 MAYBE 730.10/251.27 730.10/251.27 The weightgap principle applies (using the following nonconstant 730.10/251.27 growth matrix-interpretation) 730.10/251.27 730.10/251.27 TcT has computed the following triangular matrix interpretation. 730.10/251.27 Note that the diagonal of the component-wise maxima of 730.10/251.27 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.27 730.10/251.27 [active](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.27 730.10/251.27 [mark](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [nil] = [0] 730.10/251.27 730.10/251.27 [U11](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [tt] = [0] 730.10/251.27 730.10/251.27 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.27 730.10/251.27 [U22](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [isList](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [U31](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.27 730.10/251.27 [U42](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [isNeList](x1) = [1] x1 + [1] 730.10/251.27 730.10/251.27 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.27 730.10/251.27 [U52](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [U61](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.27 730.10/251.27 [U72](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [isPal](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [U81](x1) = [1] x1 + [0] 730.10/251.27 730.10/251.27 [isQid](x1) = [1] x1 + [1] 730.10/251.27 730.10/251.27 [isNePal](x1) = [1] x1 + [1] 730.10/251.27 730.10/251.27 [a] = [0] 730.10/251.27 730.10/251.27 [e] = [0] 730.10/251.27 730.10/251.27 [i] = [0] 730.10/251.27 730.10/251.27 [o] = [0] 730.10/251.27 730.10/251.27 [u] = [0] 730.10/251.27 730.10/251.27 The order satisfies the following ordering constraints: 730.10/251.27 730.10/251.27 [active(__(X, nil()))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [mark(X)] 730.10/251.27 730.10/251.27 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.27 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.27 = [mark(__(X, __(Y, Z)))] 730.10/251.27 730.10/251.27 [active(__(nil(), X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [mark(X)] 730.10/251.27 730.10/251.27 [active(U11(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.27 >= [1] V2 + [0] 730.10/251.27 = [mark(U22(isList(V2)))] 730.10/251.27 730.10/251.27 [active(U22(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isList(V))] = [1] V + [0] 730.10/251.27 ? [1] V + [1] 730.10/251.27 = [mark(U11(isNeList(V)))] 730.10/251.27 730.10/251.27 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.27 >= [1] V2 + [1] V1 + [0] 730.10/251.27 = [mark(U21(isList(V1), V2))] 730.10/251.27 730.10/251.27 [active(isList(nil()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U31(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.27 ? [1] V2 + [1] 730.10/251.27 = [mark(U42(isNeList(V2)))] 730.10/251.27 730.10/251.27 [active(U42(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isNeList(V))] = [1] V + [1] 730.10/251.27 >= [1] V + [1] 730.10/251.27 = [mark(U31(isQid(V)))] 730.10/251.27 730.10/251.27 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.27 > [1] V2 + [1] V1 + [0] 730.10/251.27 = [mark(U41(isList(V1), V2))] 730.10/251.27 730.10/251.27 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.27 >= [1] V2 + [1] V1 + [1] 730.10/251.27 = [mark(U51(isNeList(V1), V2))] 730.10/251.27 730.10/251.27 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.27 >= [1] V2 + [0] 730.10/251.27 = [mark(U52(isList(V2)))] 730.10/251.27 730.10/251.27 [active(U52(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U61(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U71(tt(), P))] = [1] P + [0] 730.10/251.27 >= [1] P + [0] 730.10/251.27 = [mark(U72(isPal(P)))] 730.10/251.27 730.10/251.27 [active(U72(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isPal(V))] = [1] V + [0] 730.10/251.27 ? [1] V + [1] 730.10/251.27 = [mark(U81(isNePal(V)))] 730.10/251.27 730.10/251.27 [active(isPal(nil()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(U81(tt()))] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(a()))] = [1] 730.10/251.27 > [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(e()))] = [1] 730.10/251.27 > [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(i()))] = [1] 730.10/251.27 > [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(o()))] = [1] 730.10/251.27 > [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isQid(u()))] = [1] 730.10/251.27 > [0] 730.10/251.27 = [mark(tt())] 730.10/251.27 730.10/251.27 [active(isNePal(V))] = [1] V + [1] 730.10/251.27 >= [1] V + [1] 730.10/251.27 = [mark(U61(isQid(V)))] 730.10/251.27 730.10/251.27 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.10/251.27 >= [1] P + [1] I + [1] 730.10/251.27 = [mark(U71(isQid(I), P))] 730.10/251.27 730.10/251.27 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [__(X1, X2)] 730.10/251.27 730.10/251.27 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(__(mark(X1), mark(X2)))] 730.10/251.27 730.10/251.27 [mark(nil())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(nil())] 730.10/251.27 730.10/251.27 [mark(U11(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U11(mark(X)))] 730.10/251.27 730.10/251.27 [mark(tt())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(tt())] 730.10/251.27 730.10/251.27 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U21(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U22(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U22(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isList(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(isList(X))] 730.10/251.27 730.10/251.27 [mark(U31(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U31(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U41(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U42(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U42(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isNeList(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [active(isNeList(X))] 730.10/251.27 730.10/251.27 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U51(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U52(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U52(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U61(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U61(mark(X)))] 730.10/251.27 730.10/251.27 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [active(U71(mark(X1), X2))] 730.10/251.27 730.10/251.27 [mark(U72(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U72(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isPal(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(isPal(X))] 730.10/251.27 730.10/251.27 [mark(U81(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [active(U81(mark(X)))] 730.10/251.27 730.10/251.27 [mark(isQid(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [active(isQid(X))] 730.10/251.27 730.10/251.27 [mark(isNePal(X))] = [1] X + [1] 730.10/251.27 >= [1] X + [1] 730.10/251.27 = [active(isNePal(X))] 730.10/251.27 730.10/251.27 [mark(a())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(a())] 730.10/251.27 730.10/251.27 [mark(e())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(e())] 730.10/251.27 730.10/251.27 [mark(i())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(i())] 730.10/251.27 730.10/251.27 [mark(o())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(o())] 730.10/251.27 730.10/251.27 [mark(u())] = [0] 730.10/251.27 >= [0] 730.10/251.27 = [active(u())] 730.10/251.27 730.10/251.27 [U11(active(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U11(X)] 730.10/251.27 730.10/251.27 [U11(mark(X))] = [1] X + [0] 730.10/251.27 >= [1] X + [0] 730.10/251.27 = [U11(X)] 730.10/251.27 730.10/251.27 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.27 = [U21(X1, X2)] 730.10/251.27 730.10/251.27 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.27 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U22(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U22(X)] 730.10/251.28 730.10/251.28 [U22(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U22(X)] 730.10/251.28 730.10/251.28 [isList(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isList(X)] 730.10/251.28 730.10/251.28 [isList(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isList(X)] 730.10/251.28 730.10/251.28 [U31(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U31(X)] 730.10/251.28 730.10/251.28 [U31(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U31(X)] 730.10/251.28 730.10/251.28 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U42(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U42(X)] 730.10/251.28 730.10/251.28 [U42(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U42(X)] 730.10/251.28 730.10/251.28 [isNeList(active(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isNeList(X)] 730.10/251.28 730.10/251.28 [isNeList(mark(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isNeList(X)] 730.10/251.28 730.10/251.28 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U52(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U52(X)] 730.10/251.28 730.10/251.28 [U52(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U52(X)] 730.10/251.28 730.10/251.28 [U61(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U61(X)] 730.10/251.28 730.10/251.28 [U61(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U61(X)] 730.10/251.28 730.10/251.28 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U72(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U72(X)] 730.10/251.28 730.10/251.28 [U72(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U72(X)] 730.10/251.28 730.10/251.28 [isPal(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isPal(X)] 730.10/251.28 730.10/251.28 [isPal(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isPal(X)] 730.10/251.28 730.10/251.28 [U81(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U81(X)] 730.10/251.28 730.10/251.28 [U81(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U81(X)] 730.10/251.28 730.10/251.28 [isQid(active(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isQid(X)] 730.10/251.28 730.10/251.28 [isQid(mark(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isQid(X)] 730.10/251.28 730.10/251.28 [isNePal(active(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isNePal(X)] 730.10/251.28 730.10/251.28 [isNePal(mark(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [isNePal(X)] 730.10/251.28 730.10/251.28 730.10/251.28 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.28 730.10/251.28 We are left with following problem, upon which TcT provides the 730.10/251.28 certificate MAYBE. 730.10/251.28 730.10/251.28 Strict Trs: 730.10/251.28 { active(__(X, nil())) -> mark(X) 730.10/251.28 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.28 , active(__(nil(), X)) -> mark(X) 730.10/251.28 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.28 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.28 , active(isList(nil())) -> mark(tt()) 730.10/251.28 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.28 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.28 , active(U72(tt())) -> mark(tt()) 730.10/251.28 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.28 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.28 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.28 , __(active(X1), X2) -> __(X1, X2) 730.10/251.28 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.28 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.28 , mark(nil()) -> active(nil()) 730.10/251.28 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.28 , mark(tt()) -> active(tt()) 730.10/251.28 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.28 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.28 , mark(isList(X)) -> active(isList(X)) 730.10/251.28 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.28 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.28 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.28 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.28 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.28 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.28 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.28 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.28 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.28 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.28 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.28 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.28 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.28 , mark(a()) -> active(a()) 730.10/251.28 , mark(e()) -> active(e()) 730.10/251.28 , mark(i()) -> active(i()) 730.10/251.28 , mark(o()) -> active(o()) 730.10/251.28 , mark(u()) -> active(u()) 730.10/251.28 , U11(active(X)) -> U11(X) 730.10/251.28 , U11(mark(X)) -> U11(X) 730.10/251.28 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.28 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.28 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.28 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.28 , U22(active(X)) -> U22(X) 730.10/251.28 , U22(mark(X)) -> U22(X) 730.10/251.28 , isList(active(X)) -> isList(X) 730.10/251.28 , isList(mark(X)) -> isList(X) 730.10/251.28 , U31(active(X)) -> U31(X) 730.10/251.28 , U31(mark(X)) -> U31(X) 730.10/251.28 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.28 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.28 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.28 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.28 , U42(active(X)) -> U42(X) 730.10/251.28 , U42(mark(X)) -> U42(X) 730.10/251.28 , isNeList(active(X)) -> isNeList(X) 730.10/251.28 , isNeList(mark(X)) -> isNeList(X) 730.10/251.28 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.28 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.28 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.28 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.28 , U52(active(X)) -> U52(X) 730.10/251.28 , U52(mark(X)) -> U52(X) 730.10/251.28 , U61(active(X)) -> U61(X) 730.10/251.28 , U61(mark(X)) -> U61(X) 730.10/251.28 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.28 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.28 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.28 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.28 , U72(active(X)) -> U72(X) 730.10/251.28 , U72(mark(X)) -> U72(X) 730.10/251.28 , isPal(active(X)) -> isPal(X) 730.10/251.28 , isPal(mark(X)) -> isPal(X) 730.10/251.28 , U81(active(X)) -> U81(X) 730.10/251.28 , U81(mark(X)) -> U81(X) 730.10/251.28 , isQid(active(X)) -> isQid(X) 730.10/251.28 , isQid(mark(X)) -> isQid(X) 730.10/251.28 , isNePal(active(X)) -> isNePal(X) 730.10/251.28 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.28 Weak Trs: 730.10/251.28 { active(U11(tt())) -> mark(tt()) 730.10/251.28 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.28 , active(U22(tt())) -> mark(tt()) 730.10/251.28 , active(U31(tt())) -> mark(tt()) 730.10/251.28 , active(U42(tt())) -> mark(tt()) 730.10/251.28 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.28 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.28 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.28 , active(U52(tt())) -> mark(tt()) 730.10/251.28 , active(U61(tt())) -> mark(tt()) 730.10/251.28 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.28 , active(isPal(nil())) -> mark(tt()) 730.10/251.28 , active(U81(tt())) -> mark(tt()) 730.10/251.28 , active(isQid(a())) -> mark(tt()) 730.10/251.28 , active(isQid(e())) -> mark(tt()) 730.10/251.28 , active(isQid(i())) -> mark(tt()) 730.10/251.28 , active(isQid(o())) -> mark(tt()) 730.10/251.28 , active(isQid(u())) -> mark(tt()) 730.10/251.28 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.28 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) } 730.10/251.28 Obligation: 730.10/251.28 derivational complexity 730.10/251.28 Answer: 730.10/251.28 MAYBE 730.10/251.28 730.10/251.28 The weightgap principle applies (using the following nonconstant 730.10/251.28 growth matrix-interpretation) 730.10/251.28 730.10/251.28 TcT has computed the following triangular matrix interpretation. 730.10/251.28 Note that the diagonal of the component-wise maxima of 730.10/251.28 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.28 730.10/251.28 [active](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.28 730.10/251.28 [mark](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [nil] = [0] 730.10/251.28 730.10/251.28 [U11](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [tt] = [0] 730.10/251.28 730.10/251.28 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.28 730.10/251.28 [U22](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [isList](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U31](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.28 730.10/251.28 [U42](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [isNeList](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.28 730.10/251.28 [U52](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U61](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U71](x1, x2) = [1] x1 + [1] x2 + [1] 730.10/251.28 730.10/251.28 [U72](x1) = [1] x1 + [1] 730.10/251.28 730.10/251.28 [isPal](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [U81](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [isQid](x1) = [1] x1 + [0] 730.10/251.28 730.10/251.28 [isNePal](x1) = [1] x1 + [1] 730.10/251.28 730.10/251.28 [a] = [0] 730.10/251.28 730.10/251.28 [e] = [0] 730.10/251.28 730.10/251.28 [i] = [0] 730.10/251.28 730.10/251.28 [o] = [0] 730.10/251.28 730.10/251.28 [u] = [0] 730.10/251.28 730.10/251.28 The order satisfies the following ordering constraints: 730.10/251.28 730.10/251.28 [active(__(X, nil()))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [mark(X)] 730.10/251.28 730.10/251.28 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [0] 730.10/251.28 >= [1] X + [1] Y + [1] Z + [0] 730.10/251.28 = [mark(__(X, __(Y, Z)))] 730.10/251.28 730.10/251.28 [active(__(nil(), X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [mark(X)] 730.10/251.28 730.10/251.28 [active(U11(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U21(tt(), V2))] = [1] V2 + [0] 730.10/251.28 >= [1] V2 + [0] 730.10/251.28 = [mark(U22(isList(V2)))] 730.10/251.28 730.10/251.28 [active(U22(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isList(V))] = [1] V + [0] 730.10/251.28 >= [1] V + [0] 730.10/251.28 = [mark(U11(isNeList(V)))] 730.10/251.28 730.10/251.28 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.28 >= [1] V2 + [1] V1 + [0] 730.10/251.28 = [mark(U21(isList(V1), V2))] 730.10/251.28 730.10/251.28 [active(isList(nil()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U31(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U41(tt(), V2))] = [1] V2 + [0] 730.10/251.28 >= [1] V2 + [0] 730.10/251.28 = [mark(U42(isNeList(V2)))] 730.10/251.28 730.10/251.28 [active(U42(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isNeList(V))] = [1] V + [0] 730.10/251.28 >= [1] V + [0] 730.10/251.28 = [mark(U31(isQid(V)))] 730.10/251.28 730.10/251.28 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.28 >= [1] V2 + [1] V1 + [0] 730.10/251.28 = [mark(U41(isList(V1), V2))] 730.10/251.28 730.10/251.28 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [0] 730.10/251.28 >= [1] V2 + [1] V1 + [0] 730.10/251.28 = [mark(U51(isNeList(V1), V2))] 730.10/251.28 730.10/251.28 [active(U51(tt(), V2))] = [1] V2 + [0] 730.10/251.28 >= [1] V2 + [0] 730.10/251.28 = [mark(U52(isList(V2)))] 730.10/251.28 730.10/251.28 [active(U52(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U61(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U71(tt(), P))] = [1] P + [1] 730.10/251.28 >= [1] P + [1] 730.10/251.28 = [mark(U72(isPal(P)))] 730.10/251.28 730.10/251.28 [active(U72(tt()))] = [1] 730.10/251.28 > [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isPal(V))] = [1] V + [0] 730.10/251.28 ? [1] V + [1] 730.10/251.28 = [mark(U81(isNePal(V)))] 730.10/251.28 730.10/251.28 [active(isPal(nil()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(U81(tt()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isQid(a()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isQid(e()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isQid(i()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isQid(o()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isQid(u()))] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [mark(tt())] 730.10/251.28 730.10/251.28 [active(isNePal(V))] = [1] V + [1] 730.10/251.28 > [1] V + [0] 730.10/251.28 = [mark(U61(isQid(V)))] 730.10/251.28 730.10/251.28 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.10/251.28 >= [1] P + [1] I + [1] 730.10/251.28 = [mark(U71(isQid(I), P))] 730.10/251.28 730.10/251.28 [__(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [__(X1, X2)] 730.10/251.28 730.10/251.28 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [__(X1, X2)] 730.10/251.28 730.10/251.28 [__(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [__(X1, X2)] 730.10/251.28 730.10/251.28 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [__(X1, X2)] 730.10/251.28 730.10/251.28 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [active(__(mark(X1), mark(X2)))] 730.10/251.28 730.10/251.28 [mark(nil())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(nil())] 730.10/251.28 730.10/251.28 [mark(U11(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U11(mark(X)))] 730.10/251.28 730.10/251.28 [mark(tt())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(tt())] 730.10/251.28 730.10/251.28 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [active(U21(mark(X1), X2))] 730.10/251.28 730.10/251.28 [mark(U22(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U22(mark(X)))] 730.10/251.28 730.10/251.28 [mark(isList(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(isList(X))] 730.10/251.28 730.10/251.28 [mark(U31(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U31(mark(X)))] 730.10/251.28 730.10/251.28 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [active(U41(mark(X1), X2))] 730.10/251.28 730.10/251.28 [mark(U42(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U42(mark(X)))] 730.10/251.28 730.10/251.28 [mark(isNeList(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(isNeList(X))] 730.10/251.28 730.10/251.28 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [active(U51(mark(X1), X2))] 730.10/251.28 730.10/251.28 [mark(U52(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U52(mark(X)))] 730.10/251.28 730.10/251.28 [mark(U61(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U61(mark(X)))] 730.10/251.28 730.10/251.28 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [1] 730.10/251.28 >= [1] X1 + [1] X2 + [1] 730.10/251.28 = [active(U71(mark(X1), X2))] 730.10/251.28 730.10/251.28 [mark(U72(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [active(U72(mark(X)))] 730.10/251.28 730.10/251.28 [mark(isPal(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(isPal(X))] 730.10/251.28 730.10/251.28 [mark(U81(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(U81(mark(X)))] 730.10/251.28 730.10/251.28 [mark(isQid(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [active(isQid(X))] 730.10/251.28 730.10/251.28 [mark(isNePal(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [active(isNePal(X))] 730.10/251.28 730.10/251.28 [mark(a())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(a())] 730.10/251.28 730.10/251.28 [mark(e())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(e())] 730.10/251.28 730.10/251.28 [mark(i())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(i())] 730.10/251.28 730.10/251.28 [mark(o())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(o())] 730.10/251.28 730.10/251.28 [mark(u())] = [0] 730.10/251.28 >= [0] 730.10/251.28 = [active(u())] 730.10/251.28 730.10/251.28 [U11(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U11(X)] 730.10/251.28 730.10/251.28 [U11(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U11(X)] 730.10/251.28 730.10/251.28 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U21(X1, X2)] 730.10/251.28 730.10/251.28 [U22(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U22(X)] 730.10/251.28 730.10/251.28 [U22(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U22(X)] 730.10/251.28 730.10/251.28 [isList(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isList(X)] 730.10/251.28 730.10/251.28 [isList(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isList(X)] 730.10/251.28 730.10/251.28 [U31(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U31(X)] 730.10/251.28 730.10/251.28 [U31(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U31(X)] 730.10/251.28 730.10/251.28 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U41(X1, X2)] 730.10/251.28 730.10/251.28 [U42(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U42(X)] 730.10/251.28 730.10/251.28 [U42(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U42(X)] 730.10/251.28 730.10/251.28 [isNeList(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isNeList(X)] 730.10/251.28 730.10/251.28 [isNeList(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isNeList(X)] 730.10/251.28 730.10/251.28 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.28 >= [1] X1 + [1] X2 + [0] 730.10/251.28 = [U51(X1, X2)] 730.10/251.28 730.10/251.28 [U52(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U52(X)] 730.10/251.28 730.10/251.28 [U52(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U52(X)] 730.10/251.28 730.10/251.28 [U61(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U61(X)] 730.10/251.28 730.10/251.28 [U61(mark(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [U61(X)] 730.10/251.28 730.10/251.28 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.28 >= [1] X1 + [1] X2 + [1] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.28 >= [1] X1 + [1] X2 + [1] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.28 >= [1] X1 + [1] X2 + [1] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.28 >= [1] X1 + [1] X2 + [1] 730.10/251.28 = [U71(X1, X2)] 730.10/251.28 730.10/251.28 [U72(active(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [U72(X)] 730.10/251.28 730.10/251.28 [U72(mark(X))] = [1] X + [1] 730.10/251.28 >= [1] X + [1] 730.10/251.28 = [U72(X)] 730.10/251.28 730.10/251.28 [isPal(active(X))] = [1] X + [0] 730.10/251.28 >= [1] X + [0] 730.10/251.28 = [isPal(X)] 730.10/251.28 730.10/251.28 [isPal(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isPal(X)] 730.10/251.29 730.10/251.29 [U81(active(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U81(X)] 730.10/251.29 730.10/251.29 [U81(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U81(X)] 730.10/251.29 730.10/251.29 [isQid(active(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isQid(X)] 730.10/251.29 730.10/251.29 [isQid(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isQid(X)] 730.10/251.29 730.10/251.29 [isNePal(active(X))] = [1] X + [1] 730.10/251.29 >= [1] X + [1] 730.10/251.29 = [isNePal(X)] 730.10/251.29 730.10/251.29 [isNePal(mark(X))] = [1] X + [1] 730.10/251.29 >= [1] X + [1] 730.10/251.29 = [isNePal(X)] 730.10/251.29 730.10/251.29 730.10/251.29 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.29 730.10/251.29 We are left with following problem, upon which TcT provides the 730.10/251.29 certificate MAYBE. 730.10/251.29 730.10/251.29 Strict Trs: 730.10/251.29 { active(__(X, nil())) -> mark(X) 730.10/251.29 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.29 , active(__(nil(), X)) -> mark(X) 730.10/251.29 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.29 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.29 , active(isList(nil())) -> mark(tt()) 730.10/251.29 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.29 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.29 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.29 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.29 , __(X1, mark(X2)) -> __(X1, X2) 730.10/251.29 , __(active(X1), X2) -> __(X1, X2) 730.10/251.29 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.29 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.29 , mark(nil()) -> active(nil()) 730.10/251.29 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.29 , mark(tt()) -> active(tt()) 730.10/251.29 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.29 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.29 , mark(isList(X)) -> active(isList(X)) 730.10/251.29 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.29 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.29 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.29 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.29 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.29 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.29 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.29 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.29 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.29 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.29 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.29 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.29 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.29 , mark(a()) -> active(a()) 730.10/251.29 , mark(e()) -> active(e()) 730.10/251.29 , mark(i()) -> active(i()) 730.10/251.29 , mark(o()) -> active(o()) 730.10/251.29 , mark(u()) -> active(u()) 730.10/251.29 , U11(active(X)) -> U11(X) 730.10/251.29 , U11(mark(X)) -> U11(X) 730.10/251.29 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.29 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.29 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.29 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.29 , U22(active(X)) -> U22(X) 730.10/251.29 , U22(mark(X)) -> U22(X) 730.10/251.29 , isList(active(X)) -> isList(X) 730.10/251.29 , isList(mark(X)) -> isList(X) 730.10/251.29 , U31(active(X)) -> U31(X) 730.10/251.29 , U31(mark(X)) -> U31(X) 730.10/251.29 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.29 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.29 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.29 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.29 , U42(active(X)) -> U42(X) 730.10/251.29 , U42(mark(X)) -> U42(X) 730.10/251.29 , isNeList(active(X)) -> isNeList(X) 730.10/251.29 , isNeList(mark(X)) -> isNeList(X) 730.10/251.29 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.29 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.29 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.29 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.29 , U52(active(X)) -> U52(X) 730.10/251.29 , U52(mark(X)) -> U52(X) 730.10/251.29 , U61(active(X)) -> U61(X) 730.10/251.29 , U61(mark(X)) -> U61(X) 730.10/251.29 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.29 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.29 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.29 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.29 , U72(active(X)) -> U72(X) 730.10/251.29 , U72(mark(X)) -> U72(X) 730.10/251.29 , isPal(active(X)) -> isPal(X) 730.10/251.29 , isPal(mark(X)) -> isPal(X) 730.10/251.29 , U81(active(X)) -> U81(X) 730.10/251.29 , U81(mark(X)) -> U81(X) 730.10/251.29 , isQid(active(X)) -> isQid(X) 730.10/251.29 , isQid(mark(X)) -> isQid(X) 730.10/251.29 , isNePal(active(X)) -> isNePal(X) 730.10/251.29 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.29 Weak Trs: 730.10/251.29 { active(U11(tt())) -> mark(tt()) 730.10/251.29 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.29 , active(U22(tt())) -> mark(tt()) 730.10/251.29 , active(U31(tt())) -> mark(tt()) 730.10/251.29 , active(U42(tt())) -> mark(tt()) 730.10/251.29 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.29 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.29 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.29 , active(U52(tt())) -> mark(tt()) 730.10/251.29 , active(U61(tt())) -> mark(tt()) 730.10/251.29 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.29 , active(U72(tt())) -> mark(tt()) 730.10/251.29 , active(isPal(nil())) -> mark(tt()) 730.10/251.29 , active(U81(tt())) -> mark(tt()) 730.10/251.29 , active(isQid(a())) -> mark(tt()) 730.10/251.29 , active(isQid(e())) -> mark(tt()) 730.10/251.29 , active(isQid(i())) -> mark(tt()) 730.10/251.29 , active(isQid(o())) -> mark(tt()) 730.10/251.29 , active(isQid(u())) -> mark(tt()) 730.10/251.29 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.29 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) } 730.10/251.29 Obligation: 730.10/251.29 derivational complexity 730.10/251.29 Answer: 730.10/251.29 MAYBE 730.10/251.29 730.10/251.29 The weightgap principle applies (using the following nonconstant 730.10/251.29 growth matrix-interpretation) 730.10/251.29 730.10/251.29 TcT has computed the following triangular matrix interpretation. 730.10/251.29 Note that the diagonal of the component-wise maxima of 730.10/251.29 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.29 730.10/251.29 [active](x1) = [1] x1 + [1] 730.10/251.29 730.10/251.29 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [mark](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [nil] = [0] 730.10/251.29 730.10/251.29 [U11](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [tt] = [0] 730.10/251.29 730.10/251.29 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [U22](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isList](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U31](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [U42](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isNeList](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [U52](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U61](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [U72](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isPal](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U81](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isQid](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isNePal](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [a] = [0] 730.10/251.29 730.10/251.29 [e] = [0] 730.10/251.29 730.10/251.29 [i] = [0] 730.10/251.29 730.10/251.29 [o] = [0] 730.10/251.29 730.10/251.29 [u] = [0] 730.10/251.29 730.10/251.29 The order satisfies the following ordering constraints: 730.10/251.29 730.10/251.29 [active(__(X, nil()))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [mark(X)] 730.10/251.29 730.10/251.29 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [1] 730.10/251.29 > [1] X + [1] Y + [1] Z + [0] 730.10/251.29 = [mark(__(X, __(Y, Z)))] 730.10/251.29 730.10/251.29 [active(__(nil(), X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [mark(X)] 730.10/251.29 730.10/251.29 [active(U11(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U21(tt(), V2))] = [1] V2 + [1] 730.10/251.29 > [1] V2 + [0] 730.10/251.29 = [mark(U22(isList(V2)))] 730.10/251.29 730.10/251.29 [active(U22(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isList(V))] = [1] V + [1] 730.10/251.29 > [1] V + [0] 730.10/251.29 = [mark(U11(isNeList(V)))] 730.10/251.29 730.10/251.29 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.29 > [1] V2 + [1] V1 + [0] 730.10/251.29 = [mark(U21(isList(V1), V2))] 730.10/251.29 730.10/251.29 [active(isList(nil()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U31(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U41(tt(), V2))] = [1] V2 + [1] 730.10/251.29 > [1] V2 + [0] 730.10/251.29 = [mark(U42(isNeList(V2)))] 730.10/251.29 730.10/251.29 [active(U42(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isNeList(V))] = [1] V + [1] 730.10/251.29 > [1] V + [0] 730.10/251.29 = [mark(U31(isQid(V)))] 730.10/251.29 730.10/251.29 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.29 > [1] V2 + [1] V1 + [0] 730.10/251.29 = [mark(U41(isList(V1), V2))] 730.10/251.29 730.10/251.29 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.10/251.29 > [1] V2 + [1] V1 + [0] 730.10/251.29 = [mark(U51(isNeList(V1), V2))] 730.10/251.29 730.10/251.29 [active(U51(tt(), V2))] = [1] V2 + [1] 730.10/251.29 > [1] V2 + [0] 730.10/251.29 = [mark(U52(isList(V2)))] 730.10/251.29 730.10/251.29 [active(U52(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U61(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U71(tt(), P))] = [1] P + [1] 730.10/251.29 > [1] P + [0] 730.10/251.29 = [mark(U72(isPal(P)))] 730.10/251.29 730.10/251.29 [active(U72(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isPal(V))] = [1] V + [1] 730.10/251.29 > [1] V + [0] 730.10/251.29 = [mark(U81(isNePal(V)))] 730.10/251.29 730.10/251.29 [active(isPal(nil()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(U81(tt()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isQid(a()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isQid(e()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isQid(i()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isQid(o()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isQid(u()))] = [1] 730.10/251.29 > [0] 730.10/251.29 = [mark(tt())] 730.10/251.29 730.10/251.29 [active(isNePal(V))] = [1] V + [1] 730.10/251.29 > [1] V + [0] 730.10/251.29 = [mark(U61(isQid(V)))] 730.10/251.29 730.10/251.29 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.10/251.29 > [1] P + [1] I + [0] 730.10/251.29 = [mark(U71(isQid(I), P))] 730.10/251.29 730.10/251.29 [__(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [__(X1, X2)] 730.10/251.29 730.10/251.29 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [__(X1, X2)] 730.10/251.29 730.10/251.29 [__(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [__(X1, X2)] 730.10/251.29 730.10/251.29 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [__(X1, X2)] 730.10/251.29 730.10/251.29 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 ? [1] X1 + [1] X2 + [1] 730.10/251.29 = [active(__(mark(X1), mark(X2)))] 730.10/251.29 730.10/251.29 [mark(nil())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(nil())] 730.10/251.29 730.10/251.29 [mark(U11(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U11(mark(X)))] 730.10/251.29 730.10/251.29 [mark(tt())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(tt())] 730.10/251.29 730.10/251.29 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 ? [1] X1 + [1] X2 + [1] 730.10/251.29 = [active(U21(mark(X1), X2))] 730.10/251.29 730.10/251.29 [mark(U22(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U22(mark(X)))] 730.10/251.29 730.10/251.29 [mark(isList(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(isList(X))] 730.10/251.29 730.10/251.29 [mark(U31(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U31(mark(X)))] 730.10/251.29 730.10/251.29 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 ? [1] X1 + [1] X2 + [1] 730.10/251.29 = [active(U41(mark(X1), X2))] 730.10/251.29 730.10/251.29 [mark(U42(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U42(mark(X)))] 730.10/251.29 730.10/251.29 [mark(isNeList(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(isNeList(X))] 730.10/251.29 730.10/251.29 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 ? [1] X1 + [1] X2 + [1] 730.10/251.29 = [active(U51(mark(X1), X2))] 730.10/251.29 730.10/251.29 [mark(U52(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U52(mark(X)))] 730.10/251.29 730.10/251.29 [mark(U61(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U61(mark(X)))] 730.10/251.29 730.10/251.29 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 ? [1] X1 + [1] X2 + [1] 730.10/251.29 = [active(U71(mark(X1), X2))] 730.10/251.29 730.10/251.29 [mark(U72(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U72(mark(X)))] 730.10/251.29 730.10/251.29 [mark(isPal(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(isPal(X))] 730.10/251.29 730.10/251.29 [mark(U81(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(U81(mark(X)))] 730.10/251.29 730.10/251.29 [mark(isQid(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(isQid(X))] 730.10/251.29 730.10/251.29 [mark(isNePal(X))] = [1] X + [0] 730.10/251.29 ? [1] X + [1] 730.10/251.29 = [active(isNePal(X))] 730.10/251.29 730.10/251.29 [mark(a())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(a())] 730.10/251.29 730.10/251.29 [mark(e())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(e())] 730.10/251.29 730.10/251.29 [mark(i())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(i())] 730.10/251.29 730.10/251.29 [mark(o())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(o())] 730.10/251.29 730.10/251.29 [mark(u())] = [0] 730.10/251.29 ? [1] 730.10/251.29 = [active(u())] 730.10/251.29 730.10/251.29 [U11(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U11(X)] 730.10/251.29 730.10/251.29 [U11(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U11(X)] 730.10/251.29 730.10/251.29 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U21(X1, X2)] 730.10/251.29 730.10/251.29 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U21(X1, X2)] 730.10/251.29 730.10/251.29 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U21(X1, X2)] 730.10/251.29 730.10/251.29 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U21(X1, X2)] 730.10/251.29 730.10/251.29 [U22(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U22(X)] 730.10/251.29 730.10/251.29 [U22(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U22(X)] 730.10/251.29 730.10/251.29 [isList(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [isList(X)] 730.10/251.29 730.10/251.29 [isList(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isList(X)] 730.10/251.29 730.10/251.29 [U31(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U31(X)] 730.10/251.29 730.10/251.29 [U31(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U31(X)] 730.10/251.29 730.10/251.29 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U41(X1, X2)] 730.10/251.29 730.10/251.29 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U41(X1, X2)] 730.10/251.29 730.10/251.29 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U41(X1, X2)] 730.10/251.29 730.10/251.29 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U41(X1, X2)] 730.10/251.29 730.10/251.29 [U42(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U42(X)] 730.10/251.29 730.10/251.29 [U42(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U42(X)] 730.10/251.29 730.10/251.29 [isNeList(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [isNeList(X)] 730.10/251.29 730.10/251.29 [isNeList(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isNeList(X)] 730.10/251.29 730.10/251.29 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U51(X1, X2)] 730.10/251.29 730.10/251.29 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U51(X1, X2)] 730.10/251.29 730.10/251.29 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U51(X1, X2)] 730.10/251.29 730.10/251.29 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U51(X1, X2)] 730.10/251.29 730.10/251.29 [U52(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U52(X)] 730.10/251.29 730.10/251.29 [U52(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U52(X)] 730.10/251.29 730.10/251.29 [U61(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U61(X)] 730.10/251.29 730.10/251.29 [U61(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U61(X)] 730.10/251.29 730.10/251.29 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U71(X1, X2)] 730.10/251.29 730.10/251.29 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U71(X1, X2)] 730.10/251.29 730.10/251.29 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.10/251.29 > [1] X1 + [1] X2 + [0] 730.10/251.29 = [U71(X1, X2)] 730.10/251.29 730.10/251.29 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [0] 730.10/251.29 >= [1] X1 + [1] X2 + [0] 730.10/251.29 = [U71(X1, X2)] 730.10/251.29 730.10/251.29 [U72(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U72(X)] 730.10/251.29 730.10/251.29 [U72(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U72(X)] 730.10/251.29 730.10/251.29 [isPal(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [isPal(X)] 730.10/251.29 730.10/251.29 [isPal(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isPal(X)] 730.10/251.29 730.10/251.29 [U81(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [U81(X)] 730.10/251.29 730.10/251.29 [U81(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [U81(X)] 730.10/251.29 730.10/251.29 [isQid(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [isQid(X)] 730.10/251.29 730.10/251.29 [isQid(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isQid(X)] 730.10/251.29 730.10/251.29 [isNePal(active(X))] = [1] X + [1] 730.10/251.29 > [1] X + [0] 730.10/251.29 = [isNePal(X)] 730.10/251.29 730.10/251.29 [isNePal(mark(X))] = [1] X + [0] 730.10/251.29 >= [1] X + [0] 730.10/251.29 = [isNePal(X)] 730.10/251.29 730.10/251.29 730.10/251.29 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.10/251.29 730.10/251.29 We are left with following problem, upon which TcT provides the 730.10/251.29 certificate MAYBE. 730.10/251.29 730.10/251.29 Strict Trs: 730.10/251.29 { __(X1, mark(X2)) -> __(X1, X2) 730.10/251.29 , __(mark(X1), X2) -> __(X1, X2) 730.10/251.29 , mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.10/251.29 , mark(nil()) -> active(nil()) 730.10/251.29 , mark(U11(X)) -> active(U11(mark(X))) 730.10/251.29 , mark(tt()) -> active(tt()) 730.10/251.29 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.10/251.29 , mark(U22(X)) -> active(U22(mark(X))) 730.10/251.29 , mark(isList(X)) -> active(isList(X)) 730.10/251.29 , mark(U31(X)) -> active(U31(mark(X))) 730.10/251.29 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.10/251.29 , mark(U42(X)) -> active(U42(mark(X))) 730.10/251.29 , mark(isNeList(X)) -> active(isNeList(X)) 730.10/251.29 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.10/251.29 , mark(U52(X)) -> active(U52(mark(X))) 730.10/251.29 , mark(U61(X)) -> active(U61(mark(X))) 730.10/251.29 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.10/251.29 , mark(U72(X)) -> active(U72(mark(X))) 730.10/251.29 , mark(isPal(X)) -> active(isPal(X)) 730.10/251.29 , mark(U81(X)) -> active(U81(mark(X))) 730.10/251.29 , mark(isQid(X)) -> active(isQid(X)) 730.10/251.29 , mark(isNePal(X)) -> active(isNePal(X)) 730.10/251.29 , mark(a()) -> active(a()) 730.10/251.29 , mark(e()) -> active(e()) 730.10/251.29 , mark(i()) -> active(i()) 730.10/251.29 , mark(o()) -> active(o()) 730.10/251.29 , mark(u()) -> active(u()) 730.10/251.29 , U11(mark(X)) -> U11(X) 730.10/251.29 , U21(X1, mark(X2)) -> U21(X1, X2) 730.10/251.29 , U21(mark(X1), X2) -> U21(X1, X2) 730.10/251.29 , U22(mark(X)) -> U22(X) 730.10/251.29 , isList(mark(X)) -> isList(X) 730.10/251.29 , U31(mark(X)) -> U31(X) 730.10/251.29 , U41(X1, mark(X2)) -> U41(X1, X2) 730.10/251.29 , U41(mark(X1), X2) -> U41(X1, X2) 730.10/251.29 , U42(mark(X)) -> U42(X) 730.10/251.29 , isNeList(mark(X)) -> isNeList(X) 730.10/251.29 , U51(X1, mark(X2)) -> U51(X1, X2) 730.10/251.29 , U51(mark(X1), X2) -> U51(X1, X2) 730.10/251.29 , U52(mark(X)) -> U52(X) 730.10/251.29 , U61(mark(X)) -> U61(X) 730.10/251.29 , U71(X1, mark(X2)) -> U71(X1, X2) 730.10/251.29 , U71(mark(X1), X2) -> U71(X1, X2) 730.10/251.29 , U72(mark(X)) -> U72(X) 730.10/251.29 , isPal(mark(X)) -> isPal(X) 730.10/251.29 , U81(mark(X)) -> U81(X) 730.10/251.29 , isQid(mark(X)) -> isQid(X) 730.10/251.29 , isNePal(mark(X)) -> isNePal(X) } 730.10/251.29 Weak Trs: 730.10/251.29 { active(__(X, nil())) -> mark(X) 730.10/251.29 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.10/251.29 , active(__(nil(), X)) -> mark(X) 730.10/251.29 , active(U11(tt())) -> mark(tt()) 730.10/251.29 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.10/251.29 , active(U22(tt())) -> mark(tt()) 730.10/251.29 , active(isList(V)) -> mark(U11(isNeList(V))) 730.10/251.29 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.10/251.29 , active(isList(nil())) -> mark(tt()) 730.10/251.29 , active(U31(tt())) -> mark(tt()) 730.10/251.29 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.10/251.29 , active(U42(tt())) -> mark(tt()) 730.10/251.29 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.10/251.29 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.10/251.29 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.10/251.29 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.10/251.29 , active(U52(tt())) -> mark(tt()) 730.10/251.29 , active(U61(tt())) -> mark(tt()) 730.10/251.29 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.10/251.29 , active(U72(tt())) -> mark(tt()) 730.10/251.29 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.10/251.29 , active(isPal(nil())) -> mark(tt()) 730.10/251.29 , active(U81(tt())) -> mark(tt()) 730.10/251.29 , active(isQid(a())) -> mark(tt()) 730.10/251.29 , active(isQid(e())) -> mark(tt()) 730.10/251.29 , active(isQid(i())) -> mark(tt()) 730.10/251.29 , active(isQid(o())) -> mark(tt()) 730.10/251.29 , active(isQid(u())) -> mark(tt()) 730.10/251.29 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.10/251.29 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.10/251.29 , __(X1, active(X2)) -> __(X1, X2) 730.10/251.29 , __(active(X1), X2) -> __(X1, X2) 730.10/251.29 , U11(active(X)) -> U11(X) 730.10/251.29 , U21(X1, active(X2)) -> U21(X1, X2) 730.10/251.29 , U21(active(X1), X2) -> U21(X1, X2) 730.10/251.29 , U22(active(X)) -> U22(X) 730.10/251.29 , isList(active(X)) -> isList(X) 730.10/251.29 , U31(active(X)) -> U31(X) 730.10/251.29 , U41(X1, active(X2)) -> U41(X1, X2) 730.10/251.29 , U41(active(X1), X2) -> U41(X1, X2) 730.10/251.29 , U42(active(X)) -> U42(X) 730.10/251.29 , isNeList(active(X)) -> isNeList(X) 730.10/251.29 , U51(X1, active(X2)) -> U51(X1, X2) 730.10/251.29 , U51(active(X1), X2) -> U51(X1, X2) 730.10/251.29 , U52(active(X)) -> U52(X) 730.10/251.29 , U61(active(X)) -> U61(X) 730.10/251.29 , U71(X1, active(X2)) -> U71(X1, X2) 730.10/251.29 , U71(active(X1), X2) -> U71(X1, X2) 730.10/251.29 , U72(active(X)) -> U72(X) 730.10/251.29 , isPal(active(X)) -> isPal(X) 730.10/251.29 , U81(active(X)) -> U81(X) 730.10/251.29 , isQid(active(X)) -> isQid(X) 730.10/251.29 , isNePal(active(X)) -> isNePal(X) } 730.10/251.29 Obligation: 730.10/251.29 derivational complexity 730.10/251.29 Answer: 730.10/251.29 MAYBE 730.10/251.29 730.10/251.29 The weightgap principle applies (using the following nonconstant 730.10/251.29 growth matrix-interpretation) 730.10/251.29 730.10/251.29 TcT has computed the following triangular matrix interpretation. 730.10/251.29 Note that the diagonal of the component-wise maxima of 730.10/251.29 interpretation-entries contains no more than 1 non-zero entries. 730.10/251.29 730.10/251.29 [active](x1) = [1] x1 + [1] 730.10/251.29 730.10/251.29 [__](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [mark](x1) = [1] x1 + [1] 730.10/251.29 730.10/251.29 [nil] = [0] 730.10/251.29 730.10/251.29 [U11](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [tt] = [0] 730.10/251.29 730.10/251.29 [U21](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.29 730.10/251.29 [U22](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [isList](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.29 [U31](x1) = [1] x1 + [0] 730.10/251.29 730.10/251.30 [U41](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.30 730.10/251.30 [U42](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [isNeList](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [U51](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.30 730.10/251.30 [U52](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [U61](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [U71](x1, x2) = [1] x1 + [1] x2 + [0] 730.10/251.30 730.10/251.30 [U72](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [isPal](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [U81](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [isQid](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [isNePal](x1) = [1] x1 + [0] 730.10/251.30 730.10/251.30 [a] = [0] 730.10/251.30 730.10/251.30 [e] = [0] 730.10/251.30 730.10/251.30 [i] = [0] 730.10/251.30 730.10/251.30 [o] = [0] 730.10/251.30 730.10/251.30 [u] = [0] 730.10/251.30 730.10/251.30 The order satisfies the following ordering constraints: 730.10/251.30 730.10/251.30 [active(__(X, nil()))] = [1] X + [1] 730.10/251.30 >= [1] X + [1] 730.10/251.30 = [mark(X)] 730.10/251.30 730.10/251.30 [active(__(__(X, Y), Z))] = [1] X + [1] Y + [1] Z + [1] 730.10/251.30 >= [1] X + [1] Y + [1] Z + [1] 730.10/251.30 = [mark(__(X, __(Y, Z)))] 730.10/251.30 730.10/251.30 [active(__(nil(), X))] = [1] X + [1] 730.10/251.30 >= [1] X + [1] 730.10/251.30 = [mark(X)] 730.10/251.30 730.10/251.30 [active(U11(tt()))] = [1] 730.10/251.30 >= [1] 730.10/251.30 = [mark(tt())] 730.10/251.30 730.10/251.30 [active(U21(tt(), V2))] = [1] V2 + [1] 730.10/251.30 >= [1] V2 + [1] 730.10/251.30 = [mark(U22(isList(V2)))] 730.34/251.30 730.34/251.30 [active(U22(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isList(V))] = [1] V + [1] 730.34/251.30 >= [1] V + [1] 730.34/251.30 = [mark(U11(isNeList(V)))] 730.34/251.30 730.34/251.30 [active(isList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.34/251.30 >= [1] V2 + [1] V1 + [1] 730.34/251.30 = [mark(U21(isList(V1), V2))] 730.34/251.30 730.34/251.30 [active(isList(nil()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U31(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U41(tt(), V2))] = [1] V2 + [1] 730.34/251.30 >= [1] V2 + [1] 730.34/251.30 = [mark(U42(isNeList(V2)))] 730.34/251.30 730.34/251.30 [active(U42(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isNeList(V))] = [1] V + [1] 730.34/251.30 >= [1] V + [1] 730.34/251.30 = [mark(U31(isQid(V)))] 730.34/251.30 730.34/251.30 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.34/251.30 >= [1] V2 + [1] V1 + [1] 730.34/251.30 = [mark(U41(isList(V1), V2))] 730.34/251.30 730.34/251.30 [active(isNeList(__(V1, V2)))] = [1] V2 + [1] V1 + [1] 730.34/251.30 >= [1] V2 + [1] V1 + [1] 730.34/251.30 = [mark(U51(isNeList(V1), V2))] 730.34/251.30 730.34/251.30 [active(U51(tt(), V2))] = [1] V2 + [1] 730.34/251.30 >= [1] V2 + [1] 730.34/251.30 = [mark(U52(isList(V2)))] 730.34/251.30 730.34/251.30 [active(U52(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U61(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U71(tt(), P))] = [1] P + [1] 730.34/251.30 >= [1] P + [1] 730.34/251.30 = [mark(U72(isPal(P)))] 730.34/251.30 730.34/251.30 [active(U72(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isPal(V))] = [1] V + [1] 730.34/251.30 >= [1] V + [1] 730.34/251.30 = [mark(U81(isNePal(V)))] 730.34/251.30 730.34/251.30 [active(isPal(nil()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U81(tt()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isQid(a()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isQid(e()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isQid(i()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isQid(o()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isQid(u()))] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isNePal(V))] = [1] V + [1] 730.34/251.30 >= [1] V + [1] 730.34/251.30 = [mark(U61(isQid(V)))] 730.34/251.30 730.34/251.30 [active(isNePal(__(I, __(P, I))))] = [1] P + [2] I + [1] 730.34/251.30 >= [1] P + [1] I + [1] 730.34/251.30 = [mark(U71(isQid(I), P))] 730.34/251.30 730.34/251.30 [__(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [__(X1, X2)] 730.34/251.30 730.34/251.30 [__(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [__(X1, X2)] 730.34/251.30 730.34/251.30 [__(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [__(X1, X2)] 730.34/251.30 730.34/251.30 [__(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [__(X1, X2)] 730.34/251.30 730.34/251.30 [mark(__(X1, X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 ? [1] X1 + [1] X2 + [3] 730.34/251.30 = [active(__(mark(X1), mark(X2)))] 730.34/251.30 730.34/251.30 [mark(nil())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(nil())] 730.34/251.30 730.34/251.30 [mark(U11(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U11(mark(X)))] 730.34/251.30 730.34/251.30 [mark(tt())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(tt())] 730.34/251.30 730.34/251.30 [mark(U21(X1, X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 ? [1] X1 + [1] X2 + [2] 730.34/251.30 = [active(U21(mark(X1), X2))] 730.34/251.30 730.34/251.30 [mark(U22(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U22(mark(X)))] 730.34/251.30 730.34/251.30 [mark(isList(X))] = [1] X + [1] 730.34/251.30 >= [1] X + [1] 730.34/251.30 = [active(isList(X))] 730.34/251.30 730.34/251.30 [mark(U31(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U31(mark(X)))] 730.34/251.30 730.34/251.30 [mark(U41(X1, X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 ? [1] X1 + [1] X2 + [2] 730.34/251.30 = [active(U41(mark(X1), X2))] 730.34/251.30 730.34/251.30 [mark(U42(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U42(mark(X)))] 730.34/251.30 730.34/251.30 [mark(isNeList(X))] = [1] X + [1] 730.34/251.30 >= [1] X + [1] 730.34/251.30 = [active(isNeList(X))] 730.34/251.30 730.34/251.30 [mark(U51(X1, X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 ? [1] X1 + [1] X2 + [2] 730.34/251.30 = [active(U51(mark(X1), X2))] 730.34/251.30 730.34/251.30 [mark(U52(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U52(mark(X)))] 730.34/251.30 730.34/251.30 [mark(U61(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U61(mark(X)))] 730.34/251.30 730.34/251.30 [mark(U71(X1, X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 ? [1] X1 + [1] X2 + [2] 730.34/251.30 = [active(U71(mark(X1), X2))] 730.34/251.30 730.34/251.30 [mark(U72(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U72(mark(X)))] 730.34/251.30 730.34/251.30 [mark(isPal(X))] = [1] X + [1] 730.34/251.30 >= [1] X + [1] 730.34/251.30 = [active(isPal(X))] 730.34/251.30 730.34/251.30 [mark(U81(X))] = [1] X + [1] 730.34/251.30 ? [1] X + [2] 730.34/251.30 = [active(U81(mark(X)))] 730.34/251.30 730.34/251.30 [mark(isQid(X))] = [1] X + [1] 730.34/251.30 >= [1] X + [1] 730.34/251.30 = [active(isQid(X))] 730.34/251.30 730.34/251.30 [mark(isNePal(X))] = [1] X + [1] 730.34/251.30 >= [1] X + [1] 730.34/251.30 = [active(isNePal(X))] 730.34/251.30 730.34/251.30 [mark(a())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(a())] 730.34/251.30 730.34/251.30 [mark(e())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(e())] 730.34/251.30 730.34/251.30 [mark(i())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(i())] 730.34/251.30 730.34/251.30 [mark(o())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(o())] 730.34/251.30 730.34/251.30 [mark(u())] = [1] 730.34/251.30 >= [1] 730.34/251.30 = [active(u())] 730.34/251.30 730.34/251.30 [U11(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U11(X)] 730.34/251.30 730.34/251.30 [U11(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U11(X)] 730.34/251.30 730.34/251.30 [U21(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U21(X1, X2)] 730.34/251.30 730.34/251.30 [U21(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U21(X1, X2)] 730.34/251.30 730.34/251.30 [U21(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U21(X1, X2)] 730.34/251.30 730.34/251.30 [U21(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U21(X1, X2)] 730.34/251.30 730.34/251.30 [U22(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U22(X)] 730.34/251.30 730.34/251.30 [U22(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U22(X)] 730.34/251.30 730.34/251.30 [isList(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isList(X)] 730.34/251.30 730.34/251.30 [isList(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isList(X)] 730.34/251.30 730.34/251.30 [U31(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U31(X)] 730.34/251.30 730.34/251.30 [U31(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U31(X)] 730.34/251.30 730.34/251.30 [U41(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U41(X1, X2)] 730.34/251.30 730.34/251.30 [U41(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U41(X1, X2)] 730.34/251.30 730.34/251.30 [U41(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U41(X1, X2)] 730.34/251.30 730.34/251.30 [U41(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U41(X1, X2)] 730.34/251.30 730.34/251.30 [U42(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U42(X)] 730.34/251.30 730.34/251.30 [U42(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U42(X)] 730.34/251.30 730.34/251.30 [isNeList(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isNeList(X)] 730.34/251.30 730.34/251.30 [isNeList(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isNeList(X)] 730.34/251.30 730.34/251.30 [U51(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U51(X1, X2)] 730.34/251.30 730.34/251.30 [U51(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U51(X1, X2)] 730.34/251.30 730.34/251.30 [U51(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U51(X1, X2)] 730.34/251.30 730.34/251.30 [U51(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U51(X1, X2)] 730.34/251.30 730.34/251.30 [U52(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U52(X)] 730.34/251.30 730.34/251.30 [U52(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U52(X)] 730.34/251.30 730.34/251.30 [U61(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U61(X)] 730.34/251.30 730.34/251.30 [U61(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U61(X)] 730.34/251.30 730.34/251.30 [U71(X1, active(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U71(X1, X2)] 730.34/251.30 730.34/251.30 [U71(X1, mark(X2))] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U71(X1, X2)] 730.34/251.30 730.34/251.30 [U71(active(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U71(X1, X2)] 730.34/251.30 730.34/251.30 [U71(mark(X1), X2)] = [1] X1 + [1] X2 + [1] 730.34/251.30 > [1] X1 + [1] X2 + [0] 730.34/251.30 = [U71(X1, X2)] 730.34/251.30 730.34/251.30 [U72(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U72(X)] 730.34/251.30 730.34/251.30 [U72(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U72(X)] 730.34/251.30 730.34/251.30 [isPal(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isPal(X)] 730.34/251.30 730.34/251.30 [isPal(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isPal(X)] 730.34/251.30 730.34/251.30 [U81(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U81(X)] 730.34/251.30 730.34/251.30 [U81(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [U81(X)] 730.34/251.30 730.34/251.30 [isQid(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isQid(X)] 730.34/251.30 730.34/251.30 [isQid(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isQid(X)] 730.34/251.30 730.34/251.30 [isNePal(active(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isNePal(X)] 730.34/251.30 730.34/251.30 [isNePal(mark(X))] = [1] X + [1] 730.34/251.30 > [1] X + [0] 730.34/251.30 = [isNePal(X)] 730.34/251.30 730.34/251.30 730.34/251.30 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.30 730.34/251.30 We are left with following problem, upon which TcT provides the 730.34/251.30 certificate MAYBE. 730.34/251.30 730.34/251.30 Strict Trs: 730.34/251.30 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.30 , mark(nil()) -> active(nil()) 730.34/251.30 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.30 , mark(tt()) -> active(tt()) 730.34/251.30 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.30 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.30 , mark(isList(X)) -> active(isList(X)) 730.34/251.30 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.30 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.30 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.30 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.30 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.30 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.30 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.30 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.30 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.30 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.30 , mark(U81(X)) -> active(U81(mark(X))) 730.34/251.30 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.30 , mark(isNePal(X)) -> active(isNePal(X)) 730.34/251.30 , mark(a()) -> active(a()) 730.34/251.30 , mark(e()) -> active(e()) 730.34/251.30 , mark(i()) -> active(i()) 730.34/251.30 , mark(o()) -> active(o()) 730.34/251.30 , mark(u()) -> active(u()) } 730.34/251.30 Weak Trs: 730.34/251.30 { active(__(X, nil())) -> mark(X) 730.34/251.30 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.30 , active(__(nil(), X)) -> mark(X) 730.34/251.30 , active(U11(tt())) -> mark(tt()) 730.34/251.30 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.30 , active(U22(tt())) -> mark(tt()) 730.34/251.30 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.30 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.30 , active(isList(nil())) -> mark(tt()) 730.34/251.30 , active(U31(tt())) -> mark(tt()) 730.34/251.30 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.30 , active(U42(tt())) -> mark(tt()) 730.34/251.30 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.30 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.30 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.30 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.30 , active(U52(tt())) -> mark(tt()) 730.34/251.30 , active(U61(tt())) -> mark(tt()) 730.34/251.30 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.30 , active(U72(tt())) -> mark(tt()) 730.34/251.30 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.30 , active(isPal(nil())) -> mark(tt()) 730.34/251.30 , active(U81(tt())) -> mark(tt()) 730.34/251.30 , active(isQid(a())) -> mark(tt()) 730.34/251.30 , active(isQid(e())) -> mark(tt()) 730.34/251.30 , active(isQid(i())) -> mark(tt()) 730.34/251.30 , active(isQid(o())) -> mark(tt()) 730.34/251.30 , active(isQid(u())) -> mark(tt()) 730.34/251.30 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.30 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.30 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.30 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.30 , __(active(X1), X2) -> __(X1, X2) 730.34/251.30 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.30 , U11(active(X)) -> U11(X) 730.34/251.30 , U11(mark(X)) -> U11(X) 730.34/251.30 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.30 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.30 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.30 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.30 , U22(active(X)) -> U22(X) 730.34/251.30 , U22(mark(X)) -> U22(X) 730.34/251.30 , isList(active(X)) -> isList(X) 730.34/251.30 , isList(mark(X)) -> isList(X) 730.34/251.30 , U31(active(X)) -> U31(X) 730.34/251.30 , U31(mark(X)) -> U31(X) 730.34/251.30 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.30 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.30 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.30 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.30 , U42(active(X)) -> U42(X) 730.34/251.30 , U42(mark(X)) -> U42(X) 730.34/251.30 , isNeList(active(X)) -> isNeList(X) 730.34/251.30 , isNeList(mark(X)) -> isNeList(X) 730.34/251.30 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.30 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.30 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.30 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.30 , U52(active(X)) -> U52(X) 730.34/251.30 , U52(mark(X)) -> U52(X) 730.34/251.30 , U61(active(X)) -> U61(X) 730.34/251.30 , U61(mark(X)) -> U61(X) 730.34/251.30 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.30 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.30 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.30 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.30 , U72(active(X)) -> U72(X) 730.34/251.30 , U72(mark(X)) -> U72(X) 730.34/251.30 , isPal(active(X)) -> isPal(X) 730.34/251.30 , isPal(mark(X)) -> isPal(X) 730.34/251.30 , U81(active(X)) -> U81(X) 730.34/251.30 , U81(mark(X)) -> U81(X) 730.34/251.30 , isQid(active(X)) -> isQid(X) 730.34/251.30 , isQid(mark(X)) -> isQid(X) 730.34/251.30 , isNePal(active(X)) -> isNePal(X) 730.34/251.30 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.30 Obligation: 730.34/251.30 derivational complexity 730.34/251.30 Answer: 730.34/251.30 MAYBE 730.34/251.30 730.34/251.30 The weightgap principle applies (using the following nonconstant 730.34/251.30 growth matrix-interpretation) 730.34/251.30 730.34/251.30 TcT has computed the following triangular matrix interpretation. 730.34/251.30 Note that the diagonal of the component-wise maxima of 730.34/251.30 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.30 730.34/251.30 [active](x1) = [1 1] x1 + [0] 730.34/251.30 [0 0] [0] 730.34/251.30 730.34/251.30 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.30 [0 0] [0 0] [2] 730.34/251.30 730.34/251.30 [mark](x1) = [1 0] x1 + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 730.34/251.30 [nil] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 [U11](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [tt] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.30 [0 0] [0 0] [2] 730.34/251.30 730.34/251.30 [U22](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [isList](x1) = [1 0] x1 + [1] 730.34/251.30 [0 0] [1] 730.34/251.30 730.34/251.30 [U31](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 730.34/251.30 [U42](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [isNeList](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.30 [0 0] [0 0] [2] 730.34/251.30 730.34/251.30 [U52](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [U61](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.30 [0 0] [0 0] [1] 730.34/251.30 730.34/251.30 [U72](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [isPal](x1) = [1 0] x1 + [2] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [U81](x1) = [1 0] x1 + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 730.34/251.30 [isQid](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [isNePal](x1) = [1 0] x1 + [0] 730.34/251.30 [0 0] [2] 730.34/251.30 730.34/251.30 [a] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 [e] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 [i] = [2] 730.34/251.30 [2] 730.34/251.30 730.34/251.30 [o] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 [u] = [2] 730.34/251.30 [0] 730.34/251.30 730.34/251.30 The order satisfies the following ordering constraints: 730.34/251.30 730.34/251.30 [active(__(X, nil()))] = [1 0] X + [5] 730.34/251.30 [0 0] [0] 730.34/251.30 > [1 0] X + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(X)] 730.34/251.30 730.34/251.30 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.30 [0 0] [0 0] [0 0] [0] 730.34/251.30 >= [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.30 [0 0] [0 0] [0 0] [0] 730.34/251.30 = [mark(__(X, __(Y, Z)))] 730.34/251.30 730.34/251.30 [active(__(nil(), X))] = [1 0] X + [5] 730.34/251.30 [0 0] [0] 730.34/251.30 > [1 0] X + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(X)] 730.34/251.30 730.34/251.30 [active(U11(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U21(tt(), V2))] = [1 0] V2 + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 > [1 0] V2 + [3] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U22(isList(V2)))] 730.34/251.30 730.34/251.30 [active(U22(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isList(V))] = [1 0] V + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 >= [1 0] V + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U11(isNeList(V)))] 730.34/251.30 730.34/251.30 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 = [mark(U21(isList(V1), V2))] 730.34/251.30 730.34/251.30 [active(isList(nil()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U31(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U41(tt(), V2))] = [1 0] V2 + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 >= [1 0] V2 + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U42(isNeList(V2)))] 730.34/251.30 730.34/251.30 [active(U42(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isNeList(V))] = [1 0] V + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 >= [1 0] V + [2] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U31(isQid(V)))] 730.34/251.30 730.34/251.30 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 = [mark(U41(isList(V1), V2))] 730.34/251.30 730.34/251.30 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 > [1 0] V2 + [1 0] V1 + [2] 730.34/251.30 [0 0] [0 0] [0] 730.34/251.30 = [mark(U51(isNeList(V1), V2))] 730.34/251.30 730.34/251.30 [active(U51(tt(), V2))] = [1 0] V2 + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 > [1 0] V2 + [3] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U52(isList(V2)))] 730.34/251.30 730.34/251.30 [active(U52(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U61(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U71(tt(), P))] = [1 0] P + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 >= [1 0] P + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U72(isPal(P)))] 730.34/251.30 730.34/251.30 [active(U72(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(isPal(V))] = [1 0] V + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 >= [1 0] V + [4] 730.34/251.30 [0 0] [0] 730.34/251.30 = [mark(U81(isNePal(V)))] 730.34/251.30 730.34/251.30 [active(isPal(nil()))] = [6] 730.34/251.30 [0] 730.34/251.30 > [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.30 [active(U81(tt()))] = [4] 730.34/251.30 [0] 730.34/251.30 >= [4] 730.34/251.30 [0] 730.34/251.30 = [mark(tt())] 730.34/251.30 730.34/251.31 [active(isQid(a()))] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isQid(e()))] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isQid(i()))] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isQid(o()))] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isQid(u()))] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isNePal(V))] = [1 0] V + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] V + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [mark(U61(isQid(V)))] 730.34/251.31 730.34/251.31 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [4] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 > [1 0] P + [1 0] I + [3] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [mark(U71(isQid(I), P))] 730.34/251.31 730.34/251.31 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [__(X1, X2)] 730.34/251.31 730.34/251.31 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [__(X1, X2)] 730.34/251.31 730.34/251.31 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [__(X1, X2)] 730.34/251.31 730.34/251.31 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [__(X1, X2)] 730.34/251.31 730.34/251.31 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 ? [1 0] X1 + [1 0] X2 + [7] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [active(__(mark(X1), mark(X2)))] 730.34/251.31 730.34/251.31 [mark(nil())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(nil())] 730.34/251.31 730.34/251.31 [mark(U11(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U11(mark(X)))] 730.34/251.31 730.34/251.31 [mark(tt())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(tt())] 730.34/251.31 730.34/251.31 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [active(U21(mark(X1), X2))] 730.34/251.31 730.34/251.31 [mark(U22(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U22(mark(X)))] 730.34/251.31 730.34/251.31 [mark(isList(X))] = [1 0] X + [3] 730.34/251.31 [0 0] [0] 730.34/251.31 > [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(isList(X))] 730.34/251.31 730.34/251.31 [mark(U31(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U31(mark(X)))] 730.34/251.31 730.34/251.31 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [active(U41(mark(X1), X2))] 730.34/251.31 730.34/251.31 [mark(U42(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U42(mark(X)))] 730.34/251.31 730.34/251.31 [mark(isNeList(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(isNeList(X))] 730.34/251.31 730.34/251.31 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [active(U51(mark(X1), X2))] 730.34/251.31 730.34/251.31 [mark(U52(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U52(mark(X)))] 730.34/251.31 730.34/251.31 [mark(U61(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U61(mark(X)))] 730.34/251.31 730.34/251.31 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [active(U71(mark(X1), X2))] 730.34/251.31 730.34/251.31 [mark(U72(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 ? [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U72(mark(X)))] 730.34/251.31 730.34/251.31 [mark(isPal(X))] = [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(isPal(X))] 730.34/251.31 730.34/251.31 [mark(U81(X))] = [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(U81(mark(X)))] 730.34/251.31 730.34/251.31 [mark(isQid(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(isQid(X))] 730.34/251.31 730.34/251.31 [mark(isNePal(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [active(isNePal(X))] 730.34/251.31 730.34/251.31 [mark(a())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(a())] 730.34/251.31 730.34/251.31 [mark(e())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(e())] 730.34/251.31 730.34/251.31 [mark(i())] = [4] 730.34/251.31 [0] 730.34/251.31 >= [4] 730.34/251.31 [0] 730.34/251.31 = [active(i())] 730.34/251.31 730.34/251.31 [mark(o())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(o())] 730.34/251.31 730.34/251.31 [mark(u())] = [4] 730.34/251.31 [0] 730.34/251.31 > [2] 730.34/251.31 [0] 730.34/251.31 = [active(u())] 730.34/251.31 730.34/251.31 [U11(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U11(X)] 730.34/251.31 730.34/251.31 [U11(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U11(X)] 730.34/251.31 730.34/251.31 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U21(X1, X2)] 730.34/251.31 730.34/251.31 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U21(X1, X2)] 730.34/251.31 730.34/251.31 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U21(X1, X2)] 730.34/251.31 730.34/251.31 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U21(X1, X2)] 730.34/251.31 730.34/251.31 [U22(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U22(X)] 730.34/251.31 730.34/251.31 [U22(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U22(X)] 730.34/251.31 730.34/251.31 [isList(active(X))] = [1 1] X + [1] 730.34/251.31 [0 0] [1] 730.34/251.31 >= [1 0] X + [1] 730.34/251.31 [0 0] [1] 730.34/251.31 = [isList(X)] 730.34/251.31 730.34/251.31 [isList(mark(X))] = [1 0] X + [3] 730.34/251.31 [0 0] [1] 730.34/251.31 > [1 0] X + [1] 730.34/251.31 [0 0] [1] 730.34/251.31 = [isList(X)] 730.34/251.31 730.34/251.31 [U31(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U31(X)] 730.34/251.31 730.34/251.31 [U31(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U31(X)] 730.34/251.31 730.34/251.31 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [U41(X1, X2)] 730.34/251.31 730.34/251.31 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [U41(X1, X2)] 730.34/251.31 730.34/251.31 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [U41(X1, X2)] 730.34/251.31 730.34/251.31 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [U41(X1, X2)] 730.34/251.31 730.34/251.31 [U42(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U42(X)] 730.34/251.31 730.34/251.31 [U42(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U42(X)] 730.34/251.31 730.34/251.31 [isNeList(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isNeList(X)] 730.34/251.31 730.34/251.31 [isNeList(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isNeList(X)] 730.34/251.31 730.34/251.31 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U51(X1, X2)] 730.34/251.31 730.34/251.31 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U51(X1, X2)] 730.34/251.31 730.34/251.31 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U51(X1, X2)] 730.34/251.31 730.34/251.31 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 = [U51(X1, X2)] 730.34/251.31 730.34/251.31 [U52(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U52(X)] 730.34/251.31 730.34/251.31 [U52(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U52(X)] 730.34/251.31 730.34/251.31 [U61(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U61(X)] 730.34/251.31 730.34/251.31 [U61(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U61(X)] 730.34/251.31 730.34/251.31 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 = [U71(X1, X2)] 730.34/251.31 730.34/251.31 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 = [U71(X1, X2)] 730.34/251.31 730.34/251.31 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 = [U71(X1, X2)] 730.34/251.31 730.34/251.31 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 = [U71(X1, X2)] 730.34/251.31 730.34/251.31 [U72(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U72(X)] 730.34/251.31 730.34/251.31 [U72(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [U72(X)] 730.34/251.31 730.34/251.31 [isPal(active(X))] = [1 1] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isPal(X)] 730.34/251.31 730.34/251.31 [isPal(mark(X))] = [1 0] X + [4] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isPal(X)] 730.34/251.31 730.34/251.31 [U81(active(X))] = [1 1] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [U81(X)] 730.34/251.31 730.34/251.31 [U81(mark(X))] = [1 0] X + [4] 730.34/251.31 [0 0] [0] 730.34/251.31 > [1 0] X + [2] 730.34/251.31 [0 0] [0] 730.34/251.31 = [U81(X)] 730.34/251.31 730.34/251.31 [isQid(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isQid(X)] 730.34/251.31 730.34/251.31 [isQid(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isQid(X)] 730.34/251.31 730.34/251.31 [isNePal(active(X))] = [1 1] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 >= [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isNePal(X)] 730.34/251.31 730.34/251.31 [isNePal(mark(X))] = [1 0] X + [2] 730.34/251.31 [0 0] [2] 730.34/251.31 > [1 0] X + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 = [isNePal(X)] 730.34/251.31 730.34/251.31 730.34/251.31 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.31 730.34/251.31 We are left with following problem, upon which TcT provides the 730.34/251.31 certificate MAYBE. 730.34/251.31 730.34/251.31 Strict Trs: 730.34/251.31 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.31 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.31 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.31 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.31 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.31 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.31 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.31 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.31 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.31 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.31 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.31 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.31 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.31 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.31 , mark(U81(X)) -> active(U81(mark(X))) 730.34/251.31 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.31 , mark(isNePal(X)) -> active(isNePal(X)) 730.34/251.31 , mark(i()) -> active(i()) } 730.34/251.31 Weak Trs: 730.34/251.31 { active(__(X, nil())) -> mark(X) 730.34/251.31 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.31 , active(__(nil(), X)) -> mark(X) 730.34/251.31 , active(U11(tt())) -> mark(tt()) 730.34/251.31 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.31 , active(U22(tt())) -> mark(tt()) 730.34/251.31 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.31 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.31 , active(isList(nil())) -> mark(tt()) 730.34/251.31 , active(U31(tt())) -> mark(tt()) 730.34/251.31 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.31 , active(U42(tt())) -> mark(tt()) 730.34/251.31 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.31 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.31 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.31 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.31 , active(U52(tt())) -> mark(tt()) 730.34/251.31 , active(U61(tt())) -> mark(tt()) 730.34/251.31 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.31 , active(U72(tt())) -> mark(tt()) 730.34/251.31 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.31 , active(isPal(nil())) -> mark(tt()) 730.34/251.31 , active(U81(tt())) -> mark(tt()) 730.34/251.31 , active(isQid(a())) -> mark(tt()) 730.34/251.31 , active(isQid(e())) -> mark(tt()) 730.34/251.31 , active(isQid(i())) -> mark(tt()) 730.34/251.31 , active(isQid(o())) -> mark(tt()) 730.34/251.31 , active(isQid(u())) -> mark(tt()) 730.34/251.31 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.31 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.31 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.31 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.31 , __(active(X1), X2) -> __(X1, X2) 730.34/251.31 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.31 , mark(nil()) -> active(nil()) 730.34/251.31 , mark(tt()) -> active(tt()) 730.34/251.31 , mark(isList(X)) -> active(isList(X)) 730.34/251.31 , mark(a()) -> active(a()) 730.34/251.31 , mark(e()) -> active(e()) 730.34/251.31 , mark(o()) -> active(o()) 730.34/251.31 , mark(u()) -> active(u()) 730.34/251.31 , U11(active(X)) -> U11(X) 730.34/251.31 , U11(mark(X)) -> U11(X) 730.34/251.31 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.31 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.31 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.31 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.31 , U22(active(X)) -> U22(X) 730.34/251.31 , U22(mark(X)) -> U22(X) 730.34/251.31 , isList(active(X)) -> isList(X) 730.34/251.31 , isList(mark(X)) -> isList(X) 730.34/251.31 , U31(active(X)) -> U31(X) 730.34/251.31 , U31(mark(X)) -> U31(X) 730.34/251.31 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.31 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.31 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.31 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.31 , U42(active(X)) -> U42(X) 730.34/251.31 , U42(mark(X)) -> U42(X) 730.34/251.31 , isNeList(active(X)) -> isNeList(X) 730.34/251.31 , isNeList(mark(X)) -> isNeList(X) 730.34/251.31 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.31 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.31 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.31 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.31 , U52(active(X)) -> U52(X) 730.34/251.31 , U52(mark(X)) -> U52(X) 730.34/251.31 , U61(active(X)) -> U61(X) 730.34/251.31 , U61(mark(X)) -> U61(X) 730.34/251.31 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.31 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.31 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.31 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.31 , U72(active(X)) -> U72(X) 730.34/251.31 , U72(mark(X)) -> U72(X) 730.34/251.31 , isPal(active(X)) -> isPal(X) 730.34/251.31 , isPal(mark(X)) -> isPal(X) 730.34/251.31 , U81(active(X)) -> U81(X) 730.34/251.31 , U81(mark(X)) -> U81(X) 730.34/251.31 , isQid(active(X)) -> isQid(X) 730.34/251.31 , isQid(mark(X)) -> isQid(X) 730.34/251.31 , isNePal(active(X)) -> isNePal(X) 730.34/251.31 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.31 Obligation: 730.34/251.31 derivational complexity 730.34/251.31 Answer: 730.34/251.31 MAYBE 730.34/251.31 730.34/251.31 The weightgap principle applies (using the following nonconstant 730.34/251.31 growth matrix-interpretation) 730.34/251.31 730.34/251.31 TcT has computed the following triangular matrix interpretation. 730.34/251.31 Note that the diagonal of the component-wise maxima of 730.34/251.31 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.31 730.34/251.31 [active](x1) = [1 1] x1 + [0] 730.34/251.31 [0 0] [0] 730.34/251.31 730.34/251.31 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.31 [0 0] [0 0] [2] 730.34/251.31 730.34/251.31 [mark](x1) = [1 0] x1 + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 730.34/251.31 [nil] = [0] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [U11](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 730.34/251.31 [tt] = [0] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 730.34/251.31 [U22](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [isList](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [U31](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 730.34/251.31 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 730.34/251.31 [U42](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [isNeList](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 730.34/251.31 [U52](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 730.34/251.31 [U61](x1) = [1 0] x1 + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 730.34/251.31 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.31 [0 0] [0 0] [1] 730.34/251.31 730.34/251.31 [U72](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [isPal](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 730.34/251.31 [U81](x1) = [1 0] x1 + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 730.34/251.31 [isQid](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [1] 730.34/251.31 730.34/251.31 [isNePal](x1) = [1 0] x1 + [0] 730.34/251.31 [0 0] [2] 730.34/251.31 730.34/251.31 [a] = [0] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [e] = [0] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [i] = [0] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [o] = [1] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 [u] = [1] 730.34/251.31 [0] 730.34/251.31 730.34/251.31 The order satisfies the following ordering constraints: 730.34/251.31 730.34/251.31 [active(__(X, nil()))] = [1 0] X + [3] 730.34/251.31 [0 0] [0] 730.34/251.31 > [1 0] X + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 = [mark(X)] 730.34/251.31 730.34/251.31 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.31 [0 0] [0 0] [0 0] [0] 730.34/251.31 > [1 0] X + [1 0] Y + [1 0] Z + [3] 730.34/251.31 [0 0] [0 0] [0 0] [0] 730.34/251.31 = [mark(__(X, __(Y, Z)))] 730.34/251.31 730.34/251.31 [active(__(nil(), X))] = [1 0] X + [3] 730.34/251.31 [0 0] [0] 730.34/251.31 > [1 0] X + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 = [mark(X)] 730.34/251.31 730.34/251.31 [active(U11(tt()))] = [2] 730.34/251.31 [0] 730.34/251.31 > [1] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(U21(tt(), V2))] = [1 0] V2 + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] V2 + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 = [mark(U22(isList(V2)))] 730.34/251.31 730.34/251.31 [active(U22(tt()))] = [1] 730.34/251.31 [0] 730.34/251.31 >= [1] 730.34/251.31 [0] 730.34/251.31 = [mark(tt())] 730.34/251.31 730.34/251.31 [active(isList(V))] = [1 0] V + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 >= [1 0] V + [1] 730.34/251.31 [0 0] [0] 730.34/251.31 = [mark(U11(isNeList(V)))] 730.34/251.31 730.34/251.31 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [2] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 > [1 0] V2 + [1 0] V1 + [1] 730.34/251.31 [0 0] [0 0] [0] 730.34/251.31 = [mark(U21(isList(V1), V2))] 730.34/251.31 730.34/251.31 [active(isList(nil()))] = [1] 730.34/251.31 [0] 730.34/251.31 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(U31(tt()))] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(U41(tt(), V2))] = [1 0] V2 + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] V2 + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U42(isNeList(V2)))] 730.34/251.32 730.34/251.32 [active(U42(tt()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isNeList(V))] = [1 0] V + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] V + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U31(isQid(V)))] 730.34/251.32 730.34/251.32 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 > [1 0] V2 + [1 0] V1 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [mark(U41(isList(V1), V2))] 730.34/251.32 730.34/251.32 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 > [1 0] V2 + [1 0] V1 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [mark(U51(isNeList(V1), V2))] 730.34/251.32 730.34/251.32 [active(U51(tt(), V2))] = [1 0] V2 + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] V2 + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U52(isList(V2)))] 730.34/251.32 730.34/251.32 [active(U52(tt()))] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(U61(tt()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(U71(tt(), P))] = [1 0] P + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] P + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U72(isPal(P)))] 730.34/251.32 730.34/251.32 [active(U72(tt()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isPal(V))] = [1 0] V + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] V + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U81(isNePal(V)))] 730.34/251.32 730.34/251.32 [active(isPal(nil()))] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(U81(tt()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isQid(a()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isQid(e()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isQid(i()))] = [1] 730.34/251.32 [0] 730.34/251.32 >= [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isQid(o()))] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isQid(u()))] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [mark(tt())] 730.34/251.32 730.34/251.32 [active(isNePal(V))] = [1 0] V + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] V + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(U61(isQid(V)))] 730.34/251.32 730.34/251.32 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [4] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 > [1 0] P + [1 0] I + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [mark(U71(isQid(I), P))] 730.34/251.32 730.34/251.32 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 = [__(X1, X2)] 730.34/251.32 730.34/251.32 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 = [__(X1, X2)] 730.34/251.32 730.34/251.32 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 = [__(X1, X2)] 730.34/251.32 730.34/251.32 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 = [__(X1, X2)] 730.34/251.32 730.34/251.32 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 ? [1 0] X1 + [1 0] X2 + [5] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [active(__(mark(X1), mark(X2)))] 730.34/251.32 730.34/251.32 [mark(nil())] = [1] 730.34/251.32 [0] 730.34/251.32 > [0] 730.34/251.32 [0] 730.34/251.32 = [active(nil())] 730.34/251.32 730.34/251.32 [mark(U11(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [3] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U11(mark(X)))] 730.34/251.32 730.34/251.32 [mark(tt())] = [1] 730.34/251.32 [0] 730.34/251.32 > [0] 730.34/251.32 [0] 730.34/251.32 = [active(tt())] 730.34/251.32 730.34/251.32 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 ? [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [active(U21(mark(X1), X2))] 730.34/251.32 730.34/251.32 [mark(U22(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U22(mark(X)))] 730.34/251.32 730.34/251.32 [mark(isList(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(isList(X))] 730.34/251.32 730.34/251.32 [mark(U31(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [3] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U31(mark(X)))] 730.34/251.32 730.34/251.32 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 ? [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [active(U41(mark(X1), X2))] 730.34/251.32 730.34/251.32 [mark(U42(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U42(mark(X)))] 730.34/251.32 730.34/251.32 [mark(isNeList(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(isNeList(X))] 730.34/251.32 730.34/251.32 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 ? [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [active(U51(mark(X1), X2))] 730.34/251.32 730.34/251.32 [mark(U52(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [3] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U52(mark(X)))] 730.34/251.32 730.34/251.32 [mark(U61(X))] = [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U61(mark(X)))] 730.34/251.32 730.34/251.32 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 ? [1 0] X1 + [1 0] X2 + [2] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 = [active(U71(mark(X1), X2))] 730.34/251.32 730.34/251.32 [mark(U72(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U72(mark(X)))] 730.34/251.32 730.34/251.32 [mark(isPal(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(isPal(X))] 730.34/251.32 730.34/251.32 [mark(U81(X))] = [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(U81(mark(X)))] 730.34/251.32 730.34/251.32 [mark(isQid(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(isQid(X))] 730.34/251.32 730.34/251.32 [mark(isNePal(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 ? [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [active(isNePal(X))] 730.34/251.32 730.34/251.32 [mark(a())] = [1] 730.34/251.32 [0] 730.34/251.32 > [0] 730.34/251.32 [0] 730.34/251.32 = [active(a())] 730.34/251.32 730.34/251.32 [mark(e())] = [1] 730.34/251.32 [0] 730.34/251.32 > [0] 730.34/251.32 [0] 730.34/251.32 = [active(e())] 730.34/251.32 730.34/251.32 [mark(i())] = [1] 730.34/251.32 [0] 730.34/251.32 > [0] 730.34/251.32 [0] 730.34/251.32 = [active(i())] 730.34/251.32 730.34/251.32 [mark(o())] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [active(o())] 730.34/251.32 730.34/251.32 [mark(u())] = [2] 730.34/251.32 [0] 730.34/251.32 > [1] 730.34/251.32 [0] 730.34/251.32 = [active(u())] 730.34/251.32 730.34/251.32 [U11(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U11(X)] 730.34/251.32 730.34/251.32 [U11(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U11(X)] 730.34/251.32 730.34/251.32 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U21(X1, X2)] 730.34/251.32 730.34/251.32 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U21(X1, X2)] 730.34/251.32 730.34/251.32 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U21(X1, X2)] 730.34/251.32 730.34/251.32 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U21(X1, X2)] 730.34/251.32 730.34/251.32 [U22(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U22(X)] 730.34/251.32 730.34/251.32 [U22(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U22(X)] 730.34/251.32 730.34/251.32 [isList(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isList(X)] 730.34/251.32 730.34/251.32 [isList(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isList(X)] 730.34/251.32 730.34/251.32 [U31(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U31(X)] 730.34/251.32 730.34/251.32 [U31(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U31(X)] 730.34/251.32 730.34/251.32 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U41(X1, X2)] 730.34/251.32 730.34/251.32 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U41(X1, X2)] 730.34/251.32 730.34/251.32 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U41(X1, X2)] 730.34/251.32 730.34/251.32 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U41(X1, X2)] 730.34/251.32 730.34/251.32 [U42(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U42(X)] 730.34/251.32 730.34/251.32 [U42(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U42(X)] 730.34/251.32 730.34/251.32 [isNeList(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isNeList(X)] 730.34/251.32 730.34/251.32 [isNeList(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isNeList(X)] 730.34/251.32 730.34/251.32 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U51(X1, X2)] 730.34/251.32 730.34/251.32 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U51(X1, X2)] 730.34/251.32 730.34/251.32 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U51(X1, X2)] 730.34/251.32 730.34/251.32 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U51(X1, X2)] 730.34/251.32 730.34/251.32 [U52(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U52(X)] 730.34/251.32 730.34/251.32 [U52(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [U52(X)] 730.34/251.32 730.34/251.32 [U61(active(X))] = [1 1] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [U61(X)] 730.34/251.32 730.34/251.32 [U61(mark(X))] = [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 > [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [U61(X)] 730.34/251.32 730.34/251.32 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U71(X1, X2)] 730.34/251.32 730.34/251.32 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U71(X1, X2)] 730.34/251.32 730.34/251.32 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U71(X1, X2)] 730.34/251.32 730.34/251.32 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 = [U71(X1, X2)] 730.34/251.32 730.34/251.32 [U72(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U72(X)] 730.34/251.32 730.34/251.32 [U72(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [U72(X)] 730.34/251.32 730.34/251.32 [isPal(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [isPal(X)] 730.34/251.32 730.34/251.32 [isPal(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [isPal(X)] 730.34/251.32 730.34/251.32 [U81(active(X))] = [1 1] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 >= [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [U81(X)] 730.34/251.32 730.34/251.32 [U81(mark(X))] = [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 > [1 0] X + [1] 730.34/251.32 [0 0] [0] 730.34/251.32 = [U81(X)] 730.34/251.32 730.34/251.32 [isQid(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isQid(X)] 730.34/251.32 730.34/251.32 [isQid(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [1] 730.34/251.32 = [isQid(X)] 730.34/251.32 730.34/251.32 [isNePal(active(X))] = [1 1] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 >= [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [isNePal(X)] 730.34/251.32 730.34/251.32 [isNePal(mark(X))] = [1 0] X + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 > [1 0] X + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 = [isNePal(X)] 730.34/251.32 730.34/251.32 730.34/251.32 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.32 730.34/251.32 We are left with following problem, upon which TcT provides the 730.34/251.32 certificate MAYBE. 730.34/251.32 730.34/251.32 Strict Trs: 730.34/251.32 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.32 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.32 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.32 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.32 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.32 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.32 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.32 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.32 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.32 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.32 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.32 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.32 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.32 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.32 , mark(U81(X)) -> active(U81(mark(X))) 730.34/251.32 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.32 , mark(isNePal(X)) -> active(isNePal(X)) } 730.34/251.32 Weak Trs: 730.34/251.32 { active(__(X, nil())) -> mark(X) 730.34/251.32 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.32 , active(__(nil(), X)) -> mark(X) 730.34/251.32 , active(U11(tt())) -> mark(tt()) 730.34/251.32 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.32 , active(U22(tt())) -> mark(tt()) 730.34/251.32 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.32 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.32 , active(isList(nil())) -> mark(tt()) 730.34/251.32 , active(U31(tt())) -> mark(tt()) 730.34/251.32 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.32 , active(U42(tt())) -> mark(tt()) 730.34/251.32 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.32 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.32 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.32 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.32 , active(U52(tt())) -> mark(tt()) 730.34/251.32 , active(U61(tt())) -> mark(tt()) 730.34/251.32 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.32 , active(U72(tt())) -> mark(tt()) 730.34/251.32 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.32 , active(isPal(nil())) -> mark(tt()) 730.34/251.32 , active(U81(tt())) -> mark(tt()) 730.34/251.32 , active(isQid(a())) -> mark(tt()) 730.34/251.32 , active(isQid(e())) -> mark(tt()) 730.34/251.32 , active(isQid(i())) -> mark(tt()) 730.34/251.32 , active(isQid(o())) -> mark(tt()) 730.34/251.32 , active(isQid(u())) -> mark(tt()) 730.34/251.32 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.32 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.32 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.32 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.32 , __(active(X1), X2) -> __(X1, X2) 730.34/251.32 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.32 , mark(nil()) -> active(nil()) 730.34/251.32 , mark(tt()) -> active(tt()) 730.34/251.32 , mark(isList(X)) -> active(isList(X)) 730.34/251.32 , mark(a()) -> active(a()) 730.34/251.32 , mark(e()) -> active(e()) 730.34/251.32 , mark(i()) -> active(i()) 730.34/251.32 , mark(o()) -> active(o()) 730.34/251.32 , mark(u()) -> active(u()) 730.34/251.32 , U11(active(X)) -> U11(X) 730.34/251.32 , U11(mark(X)) -> U11(X) 730.34/251.32 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.32 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.32 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.32 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.32 , U22(active(X)) -> U22(X) 730.34/251.32 , U22(mark(X)) -> U22(X) 730.34/251.32 , isList(active(X)) -> isList(X) 730.34/251.32 , isList(mark(X)) -> isList(X) 730.34/251.32 , U31(active(X)) -> U31(X) 730.34/251.32 , U31(mark(X)) -> U31(X) 730.34/251.32 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.32 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.32 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.32 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.32 , U42(active(X)) -> U42(X) 730.34/251.32 , U42(mark(X)) -> U42(X) 730.34/251.32 , isNeList(active(X)) -> isNeList(X) 730.34/251.32 , isNeList(mark(X)) -> isNeList(X) 730.34/251.32 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.32 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.32 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.32 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.32 , U52(active(X)) -> U52(X) 730.34/251.32 , U52(mark(X)) -> U52(X) 730.34/251.32 , U61(active(X)) -> U61(X) 730.34/251.32 , U61(mark(X)) -> U61(X) 730.34/251.32 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.32 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.32 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.32 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.32 , U72(active(X)) -> U72(X) 730.34/251.32 , U72(mark(X)) -> U72(X) 730.34/251.32 , isPal(active(X)) -> isPal(X) 730.34/251.32 , isPal(mark(X)) -> isPal(X) 730.34/251.32 , U81(active(X)) -> U81(X) 730.34/251.32 , U81(mark(X)) -> U81(X) 730.34/251.32 , isQid(active(X)) -> isQid(X) 730.34/251.32 , isQid(mark(X)) -> isQid(X) 730.34/251.32 , isNePal(active(X)) -> isNePal(X) 730.34/251.32 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.32 Obligation: 730.34/251.32 derivational complexity 730.34/251.32 Answer: 730.34/251.32 MAYBE 730.34/251.32 730.34/251.32 The weightgap principle applies (using the following nonconstant 730.34/251.32 growth matrix-interpretation) 730.34/251.32 730.34/251.32 TcT has computed the following triangular matrix interpretation. 730.34/251.32 Note that the diagonal of the component-wise maxima of 730.34/251.32 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.32 730.34/251.32 [active](x1) = [1 1] x1 + [0] 730.34/251.32 [0 0] [0] 730.34/251.32 730.34/251.32 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 730.34/251.32 [mark](x1) = [1 0] x1 + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 730.34/251.32 [nil] = [2] 730.34/251.32 [0] 730.34/251.32 730.34/251.32 [U11](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [tt] = [2] 730.34/251.32 [0] 730.34/251.32 730.34/251.32 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.32 [0 0] [0 0] [2] 730.34/251.32 730.34/251.32 [U22](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [isList](x1) = [1 0] x1 + [1] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [U31](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 730.34/251.32 [U42](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [isNeList](x1) = [1 0] x1 + [1] 730.34/251.32 [0 0] [1] 730.34/251.32 730.34/251.32 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.32 [0 0] [0 0] [1] 730.34/251.32 730.34/251.32 [U52](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [U61](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.32 [0 0] [0 0] [0] 730.34/251.32 730.34/251.32 [U72](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [isPal](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [U81](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [isQid](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [isNePal](x1) = [1 0] x1 + [0] 730.34/251.32 [0 0] [2] 730.34/251.32 730.34/251.32 [a] = [2] 730.34/251.32 [2] 730.34/251.32 730.34/251.32 [e] = [2] 730.34/251.32 [0] 730.34/251.32 730.34/251.32 [i] = [2] 730.34/251.32 [0] 730.34/251.32 730.34/251.32 [o] = [2] 730.34/251.32 [2] 730.34/251.32 730.34/251.32 [u] = [2] 730.34/251.32 [0] 730.34/251.32 730.34/251.32 The order satisfies the following ordering constraints: 730.34/251.32 730.34/251.32 [active(__(X, nil()))] = [1 0] X + [5] 730.34/251.32 [0 0] [0] 730.34/251.32 > [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.32 = [mark(X)] 730.34/251.32 730.34/251.32 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.32 [0 0] [0 0] [0 0] [0] 730.34/251.32 >= [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.32 [0 0] [0 0] [0 0] [0] 730.34/251.32 = [mark(__(X, __(Y, Z)))] 730.34/251.32 730.34/251.32 [active(__(nil(), X))] = [1 0] X + [5] 730.34/251.32 [0 0] [0] 730.34/251.32 > [1 0] X + [2] 730.34/251.32 [0 0] [0] 730.34/251.33 = [mark(X)] 730.34/251.33 730.34/251.33 [active(U11(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U21(tt(), V2))] = [1 0] V2 + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 > [1 0] V2 + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U22(isList(V2)))] 730.34/251.33 730.34/251.33 [active(U22(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isList(V))] = [1 0] V + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U11(isNeList(V)))] 730.34/251.33 730.34/251.33 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [4] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 > [1 0] V2 + [1 0] V1 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [mark(U21(isList(V1), V2))] 730.34/251.33 730.34/251.33 [active(isList(nil()))] = [5] 730.34/251.33 [0] 730.34/251.33 > [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U31(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U41(tt(), V2))] = [1 0] V2 + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V2 + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U42(isNeList(V2)))] 730.34/251.33 730.34/251.33 [active(U42(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isNeList(V))] = [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U31(isQid(V)))] 730.34/251.33 730.34/251.33 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [mark(U41(isList(V1), V2))] 730.34/251.33 730.34/251.33 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [mark(U51(isNeList(V1), V2))] 730.34/251.33 730.34/251.33 [active(U51(tt(), V2))] = [1 0] V2 + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V2 + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U52(isList(V2)))] 730.34/251.33 730.34/251.33 [active(U52(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U61(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U71(tt(), P))] = [1 0] P + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] P + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U72(isPal(P)))] 730.34/251.33 730.34/251.33 [active(U72(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isPal(V))] = [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U81(isNePal(V)))] 730.34/251.33 730.34/251.33 [active(isPal(nil()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(U81(tt()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isQid(a()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isQid(e()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isQid(i()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isQid(o()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isQid(u()))] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [mark(tt())] 730.34/251.33 730.34/251.33 [active(isNePal(V))] = [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] V + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [mark(U61(isQid(V)))] 730.34/251.33 730.34/251.33 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [4] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 > [1 0] P + [1 0] I + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [mark(U71(isQid(I), P))] 730.34/251.33 730.34/251.33 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [__(X1, X2)] 730.34/251.33 730.34/251.33 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [__(X1, X2)] 730.34/251.33 730.34/251.33 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [__(X1, X2)] 730.34/251.33 730.34/251.33 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [__(X1, X2)] 730.34/251.33 730.34/251.33 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 ? [1 0] X1 + [1 0] X2 + [7] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [active(__(mark(X1), mark(X2)))] 730.34/251.33 730.34/251.33 [mark(nil())] = [4] 730.34/251.33 [0] 730.34/251.33 > [2] 730.34/251.33 [0] 730.34/251.33 = [active(nil())] 730.34/251.33 730.34/251.33 [mark(U11(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U11(mark(X)))] 730.34/251.33 730.34/251.33 [mark(tt())] = [4] 730.34/251.33 [0] 730.34/251.33 > [2] 730.34/251.33 [0] 730.34/251.33 = [active(tt())] 730.34/251.33 730.34/251.33 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [active(U21(mark(X1), X2))] 730.34/251.33 730.34/251.33 [mark(U22(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U22(mark(X)))] 730.34/251.33 730.34/251.33 [mark(isList(X))] = [1 0] X + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] X + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(isList(X))] 730.34/251.33 730.34/251.33 [mark(U31(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U31(mark(X)))] 730.34/251.33 730.34/251.33 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 ? [1 0] X1 + [1 0] X2 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [active(U41(mark(X1), X2))] 730.34/251.33 730.34/251.33 [mark(U42(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U42(mark(X)))] 730.34/251.33 730.34/251.33 [mark(isNeList(X))] = [1 0] X + [3] 730.34/251.33 [0 0] [0] 730.34/251.33 > [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(isNeList(X))] 730.34/251.33 730.34/251.33 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 ? [1 0] X1 + [1 0] X2 + [3] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [active(U51(mark(X1), X2))] 730.34/251.33 730.34/251.33 [mark(U52(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U52(mark(X)))] 730.34/251.33 730.34/251.33 [mark(U61(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U61(mark(X)))] 730.34/251.33 730.34/251.33 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [active(U71(mark(X1), X2))] 730.34/251.33 730.34/251.33 [mark(U72(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U72(mark(X)))] 730.34/251.33 730.34/251.33 [mark(isPal(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(isPal(X))] 730.34/251.33 730.34/251.33 [mark(U81(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 ? [1 0] X + [4] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(U81(mark(X)))] 730.34/251.33 730.34/251.33 [mark(isQid(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(isQid(X))] 730.34/251.33 730.34/251.33 [mark(isNePal(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 >= [1 0] X + [2] 730.34/251.33 [0 0] [0] 730.34/251.33 = [active(isNePal(X))] 730.34/251.33 730.34/251.33 [mark(a())] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [active(a())] 730.34/251.33 730.34/251.33 [mark(e())] = [4] 730.34/251.33 [0] 730.34/251.33 > [2] 730.34/251.33 [0] 730.34/251.33 = [active(e())] 730.34/251.33 730.34/251.33 [mark(i())] = [4] 730.34/251.33 [0] 730.34/251.33 > [2] 730.34/251.33 [0] 730.34/251.33 = [active(i())] 730.34/251.33 730.34/251.33 [mark(o())] = [4] 730.34/251.33 [0] 730.34/251.33 >= [4] 730.34/251.33 [0] 730.34/251.33 = [active(o())] 730.34/251.33 730.34/251.33 [mark(u())] = [4] 730.34/251.33 [0] 730.34/251.33 > [2] 730.34/251.33 [0] 730.34/251.33 = [active(u())] 730.34/251.33 730.34/251.33 [U11(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U11(X)] 730.34/251.33 730.34/251.33 [U11(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U11(X)] 730.34/251.33 730.34/251.33 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [U21(X1, X2)] 730.34/251.33 730.34/251.33 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [U21(X1, X2)] 730.34/251.33 730.34/251.33 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [U21(X1, X2)] 730.34/251.33 730.34/251.33 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [2] 730.34/251.33 = [U21(X1, X2)] 730.34/251.33 730.34/251.33 [U22(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U22(X)] 730.34/251.33 730.34/251.33 [U22(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U22(X)] 730.34/251.33 730.34/251.33 [isList(active(X))] = [1 1] X + [1] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [1] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isList(X)] 730.34/251.33 730.34/251.33 [isList(mark(X))] = [1 0] X + [3] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [1] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isList(X)] 730.34/251.33 730.34/251.33 [U31(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U31(X)] 730.34/251.33 730.34/251.33 [U31(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U31(X)] 730.34/251.33 730.34/251.33 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U41(X1, X2)] 730.34/251.33 730.34/251.33 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U41(X1, X2)] 730.34/251.33 730.34/251.33 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U41(X1, X2)] 730.34/251.33 730.34/251.33 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U41(X1, X2)] 730.34/251.33 730.34/251.33 [U42(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U42(X)] 730.34/251.33 730.34/251.33 [U42(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U42(X)] 730.34/251.33 730.34/251.33 [isNeList(active(X))] = [1 1] X + [1] 730.34/251.33 [0 0] [1] 730.34/251.33 >= [1 0] X + [1] 730.34/251.33 [0 0] [1] 730.34/251.33 = [isNeList(X)] 730.34/251.33 730.34/251.33 [isNeList(mark(X))] = [1 0] X + [3] 730.34/251.33 [0 0] [1] 730.34/251.33 > [1 0] X + [1] 730.34/251.33 [0 0] [1] 730.34/251.33 = [isNeList(X)] 730.34/251.33 730.34/251.33 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U51(X1, X2)] 730.34/251.33 730.34/251.33 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U51(X1, X2)] 730.34/251.33 730.34/251.33 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U51(X1, X2)] 730.34/251.33 730.34/251.33 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [1] 730.34/251.33 = [U51(X1, X2)] 730.34/251.33 730.34/251.33 [U52(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U52(X)] 730.34/251.33 730.34/251.33 [U52(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U52(X)] 730.34/251.33 730.34/251.33 [U61(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U61(X)] 730.34/251.33 730.34/251.33 [U61(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U61(X)] 730.34/251.33 730.34/251.33 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [U71(X1, X2)] 730.34/251.33 730.34/251.33 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [U71(X1, X2)] 730.34/251.33 730.34/251.33 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [U71(X1, X2)] 730.34/251.33 730.34/251.33 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.33 [0 0] [0 0] [0] 730.34/251.33 = [U71(X1, X2)] 730.34/251.33 730.34/251.33 [U72(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U72(X)] 730.34/251.33 730.34/251.33 [U72(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U72(X)] 730.34/251.33 730.34/251.33 [isPal(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isPal(X)] 730.34/251.33 730.34/251.33 [isPal(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isPal(X)] 730.34/251.33 730.34/251.33 [U81(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U81(X)] 730.34/251.33 730.34/251.33 [U81(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [U81(X)] 730.34/251.33 730.34/251.33 [isQid(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isQid(X)] 730.34/251.33 730.34/251.33 [isQid(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isQid(X)] 730.34/251.33 730.34/251.33 [isNePal(active(X))] = [1 1] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 >= [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isNePal(X)] 730.34/251.33 730.34/251.33 [isNePal(mark(X))] = [1 0] X + [2] 730.34/251.33 [0 0] [2] 730.34/251.33 > [1 0] X + [0] 730.34/251.33 [0 0] [2] 730.34/251.33 = [isNePal(X)] 730.34/251.33 730.34/251.33 730.34/251.33 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.33 730.34/251.33 We are left with following problem, upon which TcT provides the 730.34/251.33 certificate MAYBE. 730.34/251.33 730.34/251.33 Strict Trs: 730.34/251.33 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.33 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.33 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.33 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.33 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.33 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.33 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.33 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.33 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.33 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.33 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.33 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.33 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.33 , mark(U81(X)) -> active(U81(mark(X))) 730.34/251.33 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.33 , mark(isNePal(X)) -> active(isNePal(X)) } 730.34/251.33 Weak Trs: 730.34/251.33 { active(__(X, nil())) -> mark(X) 730.34/251.33 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.33 , active(__(nil(), X)) -> mark(X) 730.34/251.33 , active(U11(tt())) -> mark(tt()) 730.34/251.33 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.33 , active(U22(tt())) -> mark(tt()) 730.34/251.33 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.33 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.33 , active(isList(nil())) -> mark(tt()) 730.34/251.33 , active(U31(tt())) -> mark(tt()) 730.34/251.33 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.33 , active(U42(tt())) -> mark(tt()) 730.34/251.33 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.33 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.33 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.33 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.33 , active(U52(tt())) -> mark(tt()) 730.34/251.33 , active(U61(tt())) -> mark(tt()) 730.34/251.33 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.33 , active(U72(tt())) -> mark(tt()) 730.34/251.33 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.33 , active(isPal(nil())) -> mark(tt()) 730.34/251.33 , active(U81(tt())) -> mark(tt()) 730.34/251.33 , active(isQid(a())) -> mark(tt()) 730.34/251.33 , active(isQid(e())) -> mark(tt()) 730.34/251.33 , active(isQid(i())) -> mark(tt()) 730.34/251.33 , active(isQid(o())) -> mark(tt()) 730.34/251.33 , active(isQid(u())) -> mark(tt()) 730.34/251.33 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.33 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.33 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.33 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.33 , __(active(X1), X2) -> __(X1, X2) 730.34/251.33 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.33 , mark(nil()) -> active(nil()) 730.34/251.33 , mark(tt()) -> active(tt()) 730.34/251.33 , mark(isList(X)) -> active(isList(X)) 730.34/251.33 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.33 , mark(a()) -> active(a()) 730.34/251.33 , mark(e()) -> active(e()) 730.34/251.33 , mark(i()) -> active(i()) 730.34/251.33 , mark(o()) -> active(o()) 730.34/251.33 , mark(u()) -> active(u()) 730.34/251.33 , U11(active(X)) -> U11(X) 730.34/251.33 , U11(mark(X)) -> U11(X) 730.34/251.33 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.33 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.33 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.33 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.33 , U22(active(X)) -> U22(X) 730.34/251.33 , U22(mark(X)) -> U22(X) 730.34/251.33 , isList(active(X)) -> isList(X) 730.34/251.33 , isList(mark(X)) -> isList(X) 730.34/251.33 , U31(active(X)) -> U31(X) 730.34/251.33 , U31(mark(X)) -> U31(X) 730.34/251.33 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.33 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.33 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.33 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.33 , U42(active(X)) -> U42(X) 730.34/251.33 , U42(mark(X)) -> U42(X) 730.34/251.33 , isNeList(active(X)) -> isNeList(X) 730.34/251.33 , isNeList(mark(X)) -> isNeList(X) 730.34/251.33 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.33 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.33 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.33 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.33 , U52(active(X)) -> U52(X) 730.34/251.33 , U52(mark(X)) -> U52(X) 730.34/251.33 , U61(active(X)) -> U61(X) 730.34/251.33 , U61(mark(X)) -> U61(X) 730.34/251.33 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.33 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.33 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.33 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.33 , U72(active(X)) -> U72(X) 730.34/251.33 , U72(mark(X)) -> U72(X) 730.34/251.33 , isPal(active(X)) -> isPal(X) 730.34/251.34 , isPal(mark(X)) -> isPal(X) 730.34/251.34 , U81(active(X)) -> U81(X) 730.34/251.34 , U81(mark(X)) -> U81(X) 730.34/251.34 , isQid(active(X)) -> isQid(X) 730.34/251.34 , isQid(mark(X)) -> isQid(X) 730.34/251.34 , isNePal(active(X)) -> isNePal(X) 730.34/251.34 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.34 Obligation: 730.34/251.34 derivational complexity 730.34/251.34 Answer: 730.34/251.34 MAYBE 730.34/251.34 730.34/251.34 The weightgap principle applies (using the following nonconstant 730.34/251.34 growth matrix-interpretation) 730.34/251.34 730.34/251.34 TcT has computed the following triangular matrix interpretation. 730.34/251.34 Note that the diagonal of the component-wise maxima of 730.34/251.34 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.34 730.34/251.34 [active](x1) = [1 1] x1 + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 730.34/251.34 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 730.34/251.34 [mark](x1) = [1 0] x1 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 730.34/251.34 [nil] = [2] 730.34/251.34 [0] 730.34/251.34 730.34/251.34 [U11](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [tt] = [0] 730.34/251.34 [0] 730.34/251.34 730.34/251.34 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 730.34/251.34 [U22](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [isList](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [U31](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 730.34/251.34 [U42](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [isNeList](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 730.34/251.34 [U52](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [U61](x1) = [1 0] x1 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 730.34/251.34 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 730.34/251.34 [U72](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [isPal](x1) = [1 0] x1 + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [U81](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [isQid](x1) = [1 0] x1 + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 730.34/251.34 [isNePal](x1) = [1 0] x1 + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 730.34/251.34 [a] = [2] 730.34/251.34 [2] 730.34/251.34 730.34/251.34 [e] = [2] 730.34/251.34 [2] 730.34/251.34 730.34/251.34 [i] = [2] 730.34/251.34 [0] 730.34/251.34 730.34/251.34 [o] = [2] 730.34/251.34 [0] 730.34/251.34 730.34/251.34 [u] = [2] 730.34/251.34 [0] 730.34/251.34 730.34/251.34 The order satisfies the following ordering constraints: 730.34/251.34 730.34/251.34 [active(__(X, nil()))] = [1 0] X + [5] 730.34/251.34 [0 0] [0] 730.34/251.34 > [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(X)] 730.34/251.34 730.34/251.34 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.34 [0 0] [0 0] [0 0] [0] 730.34/251.34 >= [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.34 [0 0] [0 0] [0 0] [0] 730.34/251.34 = [mark(__(X, __(Y, Z)))] 730.34/251.34 730.34/251.34 [active(__(nil(), X))] = [1 0] X + [5] 730.34/251.34 [0 0] [0] 730.34/251.34 > [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(X)] 730.34/251.34 730.34/251.34 [active(U11(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U21(tt(), V2))] = [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U22(isList(V2)))] 730.34/251.34 730.34/251.34 [active(U22(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isList(V))] = [1 0] V + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U11(isNeList(V)))] 730.34/251.34 730.34/251.34 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [mark(U21(isList(V1), V2))] 730.34/251.34 730.34/251.34 [active(isList(nil()))] = [4] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U31(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U41(tt(), V2))] = [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U42(isNeList(V2)))] 730.34/251.34 730.34/251.34 [active(U42(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isNeList(V))] = [1 0] V + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U31(isQid(V)))] 730.34/251.34 730.34/251.34 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 > [1 0] V2 + [1 0] V1 + [2] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [mark(U41(isList(V1), V2))] 730.34/251.34 730.34/251.34 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 >= [1 0] V2 + [1 0] V1 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [mark(U51(isNeList(V1), V2))] 730.34/251.34 730.34/251.34 [active(U51(tt(), V2))] = [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V2 + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U52(isList(V2)))] 730.34/251.34 730.34/251.34 [active(U52(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U61(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U71(tt(), P))] = [1 0] P + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] P + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U72(isPal(P)))] 730.34/251.34 730.34/251.34 [active(U72(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isPal(V))] = [1 0] V + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U81(isNePal(V)))] 730.34/251.34 730.34/251.34 [active(isPal(nil()))] = [6] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(U81(tt()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isQid(a()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isQid(e()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isQid(i()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isQid(o()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isQid(u()))] = [2] 730.34/251.34 [0] 730.34/251.34 >= [2] 730.34/251.34 [0] 730.34/251.34 = [mark(tt())] 730.34/251.34 730.34/251.34 [active(isNePal(V))] = [1 0] V + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] V + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [mark(U61(isQid(V)))] 730.34/251.34 730.34/251.34 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [6] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 > [1 0] P + [1 0] I + [4] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [mark(U71(isQid(I), P))] 730.34/251.34 730.34/251.34 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [__(X1, X2)] 730.34/251.34 730.34/251.34 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [__(X1, X2)] 730.34/251.34 730.34/251.34 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [__(X1, X2)] 730.34/251.34 730.34/251.34 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [__(X1, X2)] 730.34/251.34 730.34/251.34 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 ? [1 0] X1 + [1 0] X2 + [7] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [active(__(mark(X1), mark(X2)))] 730.34/251.34 730.34/251.34 [mark(nil())] = [4] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [active(nil())] 730.34/251.34 730.34/251.34 [mark(U11(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U11(mark(X)))] 730.34/251.34 730.34/251.34 [mark(tt())] = [2] 730.34/251.34 [0] 730.34/251.34 > [0] 730.34/251.34 [0] 730.34/251.34 = [active(tt())] 730.34/251.34 730.34/251.34 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [active(U21(mark(X1), X2))] 730.34/251.34 730.34/251.34 [mark(U22(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U22(mark(X)))] 730.34/251.34 730.34/251.34 [mark(isList(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(isList(X))] 730.34/251.34 730.34/251.34 [mark(U31(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U31(mark(X)))] 730.34/251.34 730.34/251.34 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [active(U41(mark(X1), X2))] 730.34/251.34 730.34/251.34 [mark(U42(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U42(mark(X)))] 730.34/251.34 730.34/251.34 [mark(isNeList(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(isNeList(X))] 730.34/251.34 730.34/251.34 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [active(U51(mark(X1), X2))] 730.34/251.34 730.34/251.34 [mark(U52(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U52(mark(X)))] 730.34/251.34 730.34/251.34 [mark(U61(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U61(mark(X)))] 730.34/251.34 730.34/251.34 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 ? [1 0] X1 + [1 0] X2 + [6] 730.34/251.34 [0 0] [0 0] [0] 730.34/251.34 = [active(U71(mark(X1), X2))] 730.34/251.34 730.34/251.34 [mark(U72(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U72(mark(X)))] 730.34/251.34 730.34/251.34 [mark(isPal(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(isPal(X))] 730.34/251.34 730.34/251.34 [mark(U81(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 ? [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(U81(mark(X)))] 730.34/251.34 730.34/251.34 [mark(isQid(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(isQid(X))] 730.34/251.34 730.34/251.34 [mark(isNePal(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 = [active(isNePal(X))] 730.34/251.34 730.34/251.34 [mark(a())] = [4] 730.34/251.34 [0] 730.34/251.34 >= [4] 730.34/251.34 [0] 730.34/251.34 = [active(a())] 730.34/251.34 730.34/251.34 [mark(e())] = [4] 730.34/251.34 [0] 730.34/251.34 >= [4] 730.34/251.34 [0] 730.34/251.34 = [active(e())] 730.34/251.34 730.34/251.34 [mark(i())] = [4] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [active(i())] 730.34/251.34 730.34/251.34 [mark(o())] = [4] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [active(o())] 730.34/251.34 730.34/251.34 [mark(u())] = [4] 730.34/251.34 [0] 730.34/251.34 > [2] 730.34/251.34 [0] 730.34/251.34 = [active(u())] 730.34/251.34 730.34/251.34 [U11(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U11(X)] 730.34/251.34 730.34/251.34 [U11(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U11(X)] 730.34/251.34 730.34/251.34 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U21(X1, X2)] 730.34/251.34 730.34/251.34 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U21(X1, X2)] 730.34/251.34 730.34/251.34 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U21(X1, X2)] 730.34/251.34 730.34/251.34 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U21(X1, X2)] 730.34/251.34 730.34/251.34 [U22(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U22(X)] 730.34/251.34 730.34/251.34 [U22(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U22(X)] 730.34/251.34 730.34/251.34 [isList(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isList(X)] 730.34/251.34 730.34/251.34 [isList(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isList(X)] 730.34/251.34 730.34/251.34 [U31(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U31(X)] 730.34/251.34 730.34/251.34 [U31(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U31(X)] 730.34/251.34 730.34/251.34 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U41(X1, X2)] 730.34/251.34 730.34/251.34 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U41(X1, X2)] 730.34/251.34 730.34/251.34 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U41(X1, X2)] 730.34/251.34 730.34/251.34 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U41(X1, X2)] 730.34/251.34 730.34/251.34 [U42(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U42(X)] 730.34/251.34 730.34/251.34 [U42(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U42(X)] 730.34/251.34 730.34/251.34 [isNeList(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isNeList(X)] 730.34/251.34 730.34/251.34 [isNeList(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isNeList(X)] 730.34/251.34 730.34/251.34 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U51(X1, X2)] 730.34/251.34 730.34/251.34 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U51(X1, X2)] 730.34/251.34 730.34/251.34 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U51(X1, X2)] 730.34/251.34 730.34/251.34 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.34 [0 0] [0 0] [1] 730.34/251.34 = [U51(X1, X2)] 730.34/251.34 730.34/251.34 [U52(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U52(X)] 730.34/251.34 730.34/251.34 [U52(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U52(X)] 730.34/251.34 730.34/251.34 [U61(active(X))] = [1 1] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [U61(X)] 730.34/251.34 730.34/251.34 [U61(mark(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [0] 730.34/251.34 > [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 = [U61(X)] 730.34/251.34 730.34/251.34 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U71(X1, X2)] 730.34/251.34 730.34/251.34 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U71(X1, X2)] 730.34/251.34 730.34/251.34 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 >= [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U71(X1, X2)] 730.34/251.34 730.34/251.34 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [4] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 > [1 0] X1 + [1 0] X2 + [2] 730.34/251.34 [0 0] [0 0] [2] 730.34/251.34 = [U71(X1, X2)] 730.34/251.34 730.34/251.34 [U72(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U72(X)] 730.34/251.34 730.34/251.34 [U72(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U72(X)] 730.34/251.34 730.34/251.34 [isPal(active(X))] = [1 1] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isPal(X)] 730.34/251.34 730.34/251.34 [isPal(mark(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isPal(X)] 730.34/251.34 730.34/251.34 [U81(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U81(X)] 730.34/251.34 730.34/251.34 [U81(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [2] 730.34/251.34 = [U81(X)] 730.34/251.34 730.34/251.34 [isQid(active(X))] = [1 1] X + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 >= [1 0] X + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 = [isQid(X)] 730.34/251.34 730.34/251.34 [isQid(mark(X))] = [1 0] X + [2] 730.34/251.34 [0 0] [0] 730.34/251.34 > [1 0] X + [0] 730.34/251.34 [0 0] [0] 730.34/251.34 = [isQid(X)] 730.34/251.34 730.34/251.34 [isNePal(active(X))] = [1 1] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 >= [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isNePal(X)] 730.34/251.34 730.34/251.34 [isNePal(mark(X))] = [1 0] X + [4] 730.34/251.34 [0 0] [2] 730.34/251.34 > [1 0] X + [2] 730.34/251.34 [0 0] [2] 730.34/251.34 = [isNePal(X)] 730.34/251.34 730.34/251.34 730.34/251.34 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.34 730.34/251.34 We are left with following problem, upon which TcT provides the 730.34/251.34 certificate MAYBE. 730.34/251.34 730.34/251.34 Strict Trs: 730.34/251.34 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.34 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.34 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.35 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.35 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.35 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.35 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.35 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.35 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.35 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.35 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.35 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.35 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.35 , mark(U81(X)) -> active(U81(mark(X))) 730.34/251.35 , mark(isNePal(X)) -> active(isNePal(X)) } 730.34/251.35 Weak Trs: 730.34/251.35 { active(__(X, nil())) -> mark(X) 730.34/251.35 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.35 , active(__(nil(), X)) -> mark(X) 730.34/251.35 , active(U11(tt())) -> mark(tt()) 730.34/251.35 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.35 , active(U22(tt())) -> mark(tt()) 730.34/251.35 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.35 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.35 , active(isList(nil())) -> mark(tt()) 730.34/251.35 , active(U31(tt())) -> mark(tt()) 730.34/251.35 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.35 , active(U42(tt())) -> mark(tt()) 730.34/251.35 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.35 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.35 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.35 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.35 , active(U52(tt())) -> mark(tt()) 730.34/251.35 , active(U61(tt())) -> mark(tt()) 730.34/251.35 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.35 , active(U72(tt())) -> mark(tt()) 730.34/251.35 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.35 , active(isPal(nil())) -> mark(tt()) 730.34/251.35 , active(U81(tt())) -> mark(tt()) 730.34/251.35 , active(isQid(a())) -> mark(tt()) 730.34/251.35 , active(isQid(e())) -> mark(tt()) 730.34/251.35 , active(isQid(i())) -> mark(tt()) 730.34/251.35 , active(isQid(o())) -> mark(tt()) 730.34/251.35 , active(isQid(u())) -> mark(tt()) 730.34/251.35 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.35 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.35 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.35 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.35 , __(active(X1), X2) -> __(X1, X2) 730.34/251.35 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.35 , mark(nil()) -> active(nil()) 730.34/251.35 , mark(tt()) -> active(tt()) 730.34/251.35 , mark(isList(X)) -> active(isList(X)) 730.34/251.35 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.35 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.35 , mark(a()) -> active(a()) 730.34/251.35 , mark(e()) -> active(e()) 730.34/251.35 , mark(i()) -> active(i()) 730.34/251.35 , mark(o()) -> active(o()) 730.34/251.35 , mark(u()) -> active(u()) 730.34/251.35 , U11(active(X)) -> U11(X) 730.34/251.35 , U11(mark(X)) -> U11(X) 730.34/251.35 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.35 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.35 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.35 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.35 , U22(active(X)) -> U22(X) 730.34/251.35 , U22(mark(X)) -> U22(X) 730.34/251.35 , isList(active(X)) -> isList(X) 730.34/251.35 , isList(mark(X)) -> isList(X) 730.34/251.35 , U31(active(X)) -> U31(X) 730.34/251.35 , U31(mark(X)) -> U31(X) 730.34/251.35 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.35 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.35 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.35 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.35 , U42(active(X)) -> U42(X) 730.34/251.35 , U42(mark(X)) -> U42(X) 730.34/251.35 , isNeList(active(X)) -> isNeList(X) 730.34/251.35 , isNeList(mark(X)) -> isNeList(X) 730.34/251.35 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.35 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.35 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.35 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.35 , U52(active(X)) -> U52(X) 730.34/251.35 , U52(mark(X)) -> U52(X) 730.34/251.35 , U61(active(X)) -> U61(X) 730.34/251.35 , U61(mark(X)) -> U61(X) 730.34/251.35 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.35 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.35 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.35 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.35 , U72(active(X)) -> U72(X) 730.34/251.35 , U72(mark(X)) -> U72(X) 730.34/251.35 , isPal(active(X)) -> isPal(X) 730.34/251.35 , isPal(mark(X)) -> isPal(X) 730.34/251.35 , U81(active(X)) -> U81(X) 730.34/251.35 , U81(mark(X)) -> U81(X) 730.34/251.35 , isQid(active(X)) -> isQid(X) 730.34/251.35 , isQid(mark(X)) -> isQid(X) 730.34/251.35 , isNePal(active(X)) -> isNePal(X) 730.34/251.35 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.35 Obligation: 730.34/251.35 derivational complexity 730.34/251.35 Answer: 730.34/251.35 MAYBE 730.34/251.35 730.34/251.35 The weightgap principle applies (using the following nonconstant 730.34/251.35 growth matrix-interpretation) 730.34/251.35 730.34/251.35 TcT has computed the following triangular matrix interpretation. 730.34/251.35 Note that the diagonal of the component-wise maxima of 730.34/251.35 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.35 730.34/251.35 [active](x1) = [1 1] x1 + [0] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 730.34/251.35 [mark](x1) = [1 0] x1 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [nil] = [2] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 [U11](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 730.34/251.35 [tt] = [1] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 730.34/251.35 [U22](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 730.34/251.35 [isList](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 730.34/251.35 [U31](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 730.34/251.35 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 730.34/251.35 [U42](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 730.34/251.35 [isNeList](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 730.34/251.35 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 730.34/251.35 [U52](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 730.34/251.35 [U61](x1) = [1 0] x1 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 730.34/251.35 [U72](x1) = [1 0] x1 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [isPal](x1) = [1 0] x1 + [2] 730.34/251.35 [0 0] [2] 730.34/251.35 730.34/251.35 [U81](x1) = [1 0] x1 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [isQid](x1) = [1 0] x1 + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 730.34/251.35 [isNePal](x1) = [1 0] x1 + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 730.34/251.35 [a] = [1] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 [e] = [1] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 [i] = [1] 730.34/251.35 [1] 730.34/251.35 730.34/251.35 [o] = [1] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 [u] = [1] 730.34/251.35 [0] 730.34/251.35 730.34/251.35 The order satisfies the following ordering constraints: 730.34/251.35 730.34/251.35 [active(__(X, nil()))] = [1 0] X + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(X)] 730.34/251.35 730.34/251.35 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [2] 730.34/251.35 [0 0] [0 0] [0 0] [0] 730.34/251.35 > [1 0] X + [1 0] Y + [1 0] Z + [1] 730.34/251.35 [0 0] [0 0] [0 0] [0] 730.34/251.35 = [mark(__(X, __(Y, Z)))] 730.34/251.35 730.34/251.35 [active(__(nil(), X))] = [1 0] X + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(X)] 730.34/251.35 730.34/251.35 [active(U11(tt()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U21(tt(), V2))] = [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U22(isList(V2)))] 730.34/251.35 730.34/251.35 [active(U22(tt()))] = [3] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isList(V))] = [1 0] V + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U11(isNeList(V)))] 730.34/251.35 730.34/251.35 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [mark(U21(isList(V1), V2))] 730.34/251.35 730.34/251.35 [active(isList(nil()))] = [3] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U31(tt()))] = [3] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U41(tt(), V2))] = [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U42(isNeList(V2)))] 730.34/251.35 730.34/251.35 [active(U42(tt()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isNeList(V))] = [1 0] V + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U31(isQid(V)))] 730.34/251.35 730.34/251.35 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [mark(U41(isList(V1), V2))] 730.34/251.35 730.34/251.35 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1 0] V1 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [mark(U51(isNeList(V1), V2))] 730.34/251.35 730.34/251.35 [active(U51(tt(), V2))] = [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V2 + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U52(isList(V2)))] 730.34/251.35 730.34/251.35 [active(U52(tt()))] = [3] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U61(tt()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U71(tt(), P))] = [1 0] P + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] P + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U72(isPal(P)))] 730.34/251.35 730.34/251.35 [active(U72(tt()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isPal(V))] = [1 0] V + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U81(isNePal(V)))] 730.34/251.35 730.34/251.35 [active(isPal(nil()))] = [6] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(U81(tt()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isQid(a()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isQid(e()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isQid(i()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isQid(o()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isQid(u()))] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [mark(tt())] 730.34/251.35 730.34/251.35 [active(isNePal(V))] = [1 0] V + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] V + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [mark(U61(isQid(V)))] 730.34/251.35 730.34/251.35 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [2] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] P + [1 0] I + [2] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [mark(U71(isQid(I), P))] 730.34/251.35 730.34/251.35 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [__(X1, X2)] 730.34/251.35 730.34/251.35 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [__(X1, X2)] 730.34/251.35 730.34/251.35 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [__(X1, X2)] 730.34/251.35 730.34/251.35 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [__(X1, X2)] 730.34/251.35 730.34/251.35 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [active(__(mark(X1), mark(X2)))] 730.34/251.35 730.34/251.35 [mark(nil())] = [3] 730.34/251.35 [0] 730.34/251.35 > [2] 730.34/251.35 [0] 730.34/251.35 = [active(nil())] 730.34/251.35 730.34/251.35 [mark(U11(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U11(mark(X)))] 730.34/251.35 730.34/251.35 [mark(tt())] = [2] 730.34/251.35 [0] 730.34/251.35 > [1] 730.34/251.35 [0] 730.34/251.35 = [active(tt())] 730.34/251.35 730.34/251.35 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [active(U21(mark(X1), X2))] 730.34/251.35 730.34/251.35 [mark(U22(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U22(mark(X)))] 730.34/251.35 730.34/251.35 [mark(isList(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(isList(X))] 730.34/251.35 730.34/251.35 [mark(U31(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U31(mark(X)))] 730.34/251.35 730.34/251.35 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [active(U41(mark(X1), X2))] 730.34/251.35 730.34/251.35 [mark(U42(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U42(mark(X)))] 730.34/251.35 730.34/251.35 [mark(isNeList(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(isNeList(X))] 730.34/251.35 730.34/251.35 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [active(U51(mark(X1), X2))] 730.34/251.35 730.34/251.35 [mark(U52(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U52(mark(X)))] 730.34/251.35 730.34/251.35 [mark(U61(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U61(mark(X)))] 730.34/251.35 730.34/251.35 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [active(U71(mark(X1), X2))] 730.34/251.35 730.34/251.35 [mark(U72(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U72(mark(X)))] 730.34/251.35 730.34/251.35 [mark(isPal(X))] = [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 ? [1 0] X + [4] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(isPal(X))] 730.34/251.35 730.34/251.35 [mark(U81(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(U81(mark(X)))] 730.34/251.35 730.34/251.35 [mark(isQid(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(isQid(X))] 730.34/251.35 730.34/251.35 [mark(isNePal(X))] = [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [active(isNePal(X))] 730.34/251.35 730.34/251.35 [mark(a())] = [2] 730.34/251.35 [0] 730.34/251.35 > [1] 730.34/251.35 [0] 730.34/251.35 = [active(a())] 730.34/251.35 730.34/251.35 [mark(e())] = [2] 730.34/251.35 [0] 730.34/251.35 > [1] 730.34/251.35 [0] 730.34/251.35 = [active(e())] 730.34/251.35 730.34/251.35 [mark(i())] = [2] 730.34/251.35 [0] 730.34/251.35 >= [2] 730.34/251.35 [0] 730.34/251.35 = [active(i())] 730.34/251.35 730.34/251.35 [mark(o())] = [2] 730.34/251.35 [0] 730.34/251.35 > [1] 730.34/251.35 [0] 730.34/251.35 = [active(o())] 730.34/251.35 730.34/251.35 [mark(u())] = [2] 730.34/251.35 [0] 730.34/251.35 > [1] 730.34/251.35 [0] 730.34/251.35 = [active(u())] 730.34/251.35 730.34/251.35 [U11(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [U11(X)] 730.34/251.35 730.34/251.35 [U11(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [1] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [U11(X)] 730.34/251.35 730.34/251.35 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U21(X1, X2)] 730.34/251.35 730.34/251.35 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U21(X1, X2)] 730.34/251.35 730.34/251.35 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U21(X1, X2)] 730.34/251.35 730.34/251.35 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U21(X1, X2)] 730.34/251.35 730.34/251.35 [U22(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U22(X)] 730.34/251.35 730.34/251.35 [U22(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [2] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U22(X)] 730.34/251.35 730.34/251.35 [isList(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isList(X)] 730.34/251.35 730.34/251.35 [isList(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [1] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isList(X)] 730.34/251.35 730.34/251.35 [U31(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U31(X)] 730.34/251.35 730.34/251.35 [U31(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [2] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U31(X)] 730.34/251.35 730.34/251.35 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U41(X1, X2)] 730.34/251.35 730.34/251.35 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U41(X1, X2)] 730.34/251.35 730.34/251.35 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U41(X1, X2)] 730.34/251.35 730.34/251.35 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U41(X1, X2)] 730.34/251.35 730.34/251.35 [U42(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [U42(X)] 730.34/251.35 730.34/251.35 [U42(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [1] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [U42(X)] 730.34/251.35 730.34/251.35 [isNeList(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isNeList(X)] 730.34/251.35 730.34/251.35 [isNeList(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [1] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isNeList(X)] 730.34/251.35 730.34/251.35 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U51(X1, X2)] 730.34/251.35 730.34/251.35 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U51(X1, X2)] 730.34/251.35 730.34/251.35 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U51(X1, X2)] 730.34/251.35 730.34/251.35 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.35 [0 0] [0 0] [0] 730.34/251.35 = [U51(X1, X2)] 730.34/251.35 730.34/251.35 [U52(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U52(X)] 730.34/251.35 730.34/251.35 [U52(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [2] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [2] 730.34/251.35 = [U52(X)] 730.34/251.35 730.34/251.35 [U61(active(X))] = [1 1] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U61(X)] 730.34/251.35 730.34/251.35 [U61(mark(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U61(X)] 730.34/251.35 730.34/251.35 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [U71(X1, X2)] 730.34/251.35 730.34/251.35 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [U71(X1, X2)] 730.34/251.35 730.34/251.35 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [U71(X1, X2)] 730.34/251.35 730.34/251.35 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.35 [0 0] [0 0] [2] 730.34/251.35 = [U71(X1, X2)] 730.34/251.35 730.34/251.35 [U72(active(X))] = [1 1] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U72(X)] 730.34/251.35 730.34/251.35 [U72(mark(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U72(X)] 730.34/251.35 730.34/251.35 [isPal(active(X))] = [1 1] X + [2] 730.34/251.35 [0 0] [2] 730.34/251.35 >= [1 0] X + [2] 730.34/251.35 [0 0] [2] 730.34/251.35 = [isPal(X)] 730.34/251.35 730.34/251.35 [isPal(mark(X))] = [1 0] X + [3] 730.34/251.35 [0 0] [2] 730.34/251.35 > [1 0] X + [2] 730.34/251.35 [0 0] [2] 730.34/251.35 = [isPal(X)] 730.34/251.35 730.34/251.35 [U81(active(X))] = [1 1] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U81(X)] 730.34/251.35 730.34/251.35 [U81(mark(X))] = [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [1] 730.34/251.35 [0 0] [0] 730.34/251.35 = [U81(X)] 730.34/251.35 730.34/251.35 [isQid(active(X))] = [1 1] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 >= [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isQid(X)] 730.34/251.35 730.34/251.35 [isQid(mark(X))] = [1 0] X + [1] 730.34/251.35 [0 0] [1] 730.34/251.35 > [1 0] X + [0] 730.34/251.35 [0 0] [1] 730.34/251.35 = [isQid(X)] 730.34/251.35 730.34/251.35 [isNePal(active(X))] = [1 1] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 >= [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [isNePal(X)] 730.34/251.35 730.34/251.35 [isNePal(mark(X))] = [1 0] X + [3] 730.34/251.35 [0 0] [0] 730.34/251.35 > [1 0] X + [2] 730.34/251.35 [0 0] [0] 730.34/251.35 = [isNePal(X)] 730.34/251.35 730.34/251.35 730.34/251.35 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.35 730.34/251.35 We are left with following problem, upon which TcT provides the 730.34/251.35 certificate MAYBE. 730.34/251.35 730.34/251.35 Strict Trs: 730.34/251.35 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.35 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.35 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.35 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.35 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.35 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.35 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.35 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.35 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.35 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.35 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.35 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.35 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.35 , mark(U81(X)) -> active(U81(mark(X))) } 730.34/251.35 Weak Trs: 730.34/251.35 { active(__(X, nil())) -> mark(X) 730.34/251.35 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.35 , active(__(nil(), X)) -> mark(X) 730.34/251.35 , active(U11(tt())) -> mark(tt()) 730.34/251.35 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.35 , active(U22(tt())) -> mark(tt()) 730.34/251.35 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.35 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.35 , active(isList(nil())) -> mark(tt()) 730.34/251.35 , active(U31(tt())) -> mark(tt()) 730.34/251.35 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.35 , active(U42(tt())) -> mark(tt()) 730.34/251.35 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.35 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.35 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.35 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.36 , active(U52(tt())) -> mark(tt()) 730.34/251.36 , active(U61(tt())) -> mark(tt()) 730.34/251.36 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.36 , active(U72(tt())) -> mark(tt()) 730.34/251.36 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.36 , active(isPal(nil())) -> mark(tt()) 730.34/251.36 , active(U81(tt())) -> mark(tt()) 730.34/251.36 , active(isQid(a())) -> mark(tt()) 730.34/251.36 , active(isQid(e())) -> mark(tt()) 730.34/251.36 , active(isQid(i())) -> mark(tt()) 730.34/251.36 , active(isQid(o())) -> mark(tt()) 730.34/251.36 , active(isQid(u())) -> mark(tt()) 730.34/251.36 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.36 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.36 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.36 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.36 , __(active(X1), X2) -> __(X1, X2) 730.34/251.36 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.36 , mark(nil()) -> active(nil()) 730.34/251.36 , mark(tt()) -> active(tt()) 730.34/251.36 , mark(isList(X)) -> active(isList(X)) 730.34/251.36 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.36 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.36 , mark(isNePal(X)) -> active(isNePal(X)) 730.34/251.36 , mark(a()) -> active(a()) 730.34/251.36 , mark(e()) -> active(e()) 730.34/251.36 , mark(i()) -> active(i()) 730.34/251.36 , mark(o()) -> active(o()) 730.34/251.36 , mark(u()) -> active(u()) 730.34/251.36 , U11(active(X)) -> U11(X) 730.34/251.36 , U11(mark(X)) -> U11(X) 730.34/251.36 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.36 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.36 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.36 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.36 , U22(active(X)) -> U22(X) 730.34/251.36 , U22(mark(X)) -> U22(X) 730.34/251.36 , isList(active(X)) -> isList(X) 730.34/251.36 , isList(mark(X)) -> isList(X) 730.34/251.36 , U31(active(X)) -> U31(X) 730.34/251.36 , U31(mark(X)) -> U31(X) 730.34/251.36 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.36 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.36 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.36 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.36 , U42(active(X)) -> U42(X) 730.34/251.36 , U42(mark(X)) -> U42(X) 730.34/251.36 , isNeList(active(X)) -> isNeList(X) 730.34/251.36 , isNeList(mark(X)) -> isNeList(X) 730.34/251.36 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.36 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.36 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.36 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.36 , U52(active(X)) -> U52(X) 730.34/251.36 , U52(mark(X)) -> U52(X) 730.34/251.36 , U61(active(X)) -> U61(X) 730.34/251.36 , U61(mark(X)) -> U61(X) 730.34/251.36 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.36 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.36 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.36 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.36 , U72(active(X)) -> U72(X) 730.34/251.36 , U72(mark(X)) -> U72(X) 730.34/251.36 , isPal(active(X)) -> isPal(X) 730.34/251.36 , isPal(mark(X)) -> isPal(X) 730.34/251.36 , U81(active(X)) -> U81(X) 730.34/251.36 , U81(mark(X)) -> U81(X) 730.34/251.36 , isQid(active(X)) -> isQid(X) 730.34/251.36 , isQid(mark(X)) -> isQid(X) 730.34/251.36 , isNePal(active(X)) -> isNePal(X) 730.34/251.36 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.36 Obligation: 730.34/251.36 derivational complexity 730.34/251.36 Answer: 730.34/251.36 MAYBE 730.34/251.36 730.34/251.36 The weightgap principle applies (using the following nonconstant 730.34/251.36 growth matrix-interpretation) 730.34/251.36 730.34/251.36 TcT has computed the following triangular matrix interpretation. 730.34/251.36 Note that the diagonal of the component-wise maxima of 730.34/251.36 interpretation-entries contains no more than 1 non-zero entries. 730.34/251.36 730.34/251.36 [active](x1) = [1 1] x1 + [0] 730.34/251.36 [0 0] [0] 730.34/251.36 730.34/251.36 [__](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 730.34/251.36 [mark](x1) = [1 0] x1 + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 730.34/251.36 [nil] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 [U11](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [tt] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 [U21](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 730.34/251.36 [U22](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [isList](x1) = [1 0] x1 + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [U31](x1) = [1 0] x1 + [1] 730.34/251.36 [0 0] [1] 730.34/251.36 730.34/251.36 [U41](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 730.34/251.36 [U42](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [isNeList](x1) = [1 0] x1 + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [U51](x1, x2) = [1 0] x1 + [1 0] x2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 730.34/251.36 [U52](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [U61](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [U71](x1, x2) = [1 0] x1 + [1 0] x2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 730.34/251.36 [U72](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [isPal](x1) = [1 0] x1 + [1] 730.34/251.36 [0 0] [1] 730.34/251.36 730.34/251.36 [U81](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [isQid](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [isNePal](x1) = [1 0] x1 + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 730.34/251.36 [a] = [2] 730.34/251.36 [2] 730.34/251.36 730.34/251.36 [e] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 [i] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 [o] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 [u] = [2] 730.34/251.36 [0] 730.34/251.36 730.34/251.36 The order satisfies the following ordering constraints: 730.34/251.36 730.34/251.36 [active(__(X, nil()))] = [1 0] X + [5] 730.34/251.36 [0 0] [0] 730.34/251.36 > [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(X)] 730.34/251.36 730.34/251.36 [active(__(__(X, Y), Z))] = [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.36 [0 0] [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X + [1 0] Y + [1 0] Z + [4] 730.34/251.36 [0 0] [0 0] [0 0] [0] 730.34/251.36 = [mark(__(X, __(Y, Z)))] 730.34/251.36 730.34/251.36 [active(__(nil(), X))] = [1 0] X + [5] 730.34/251.36 [0 0] [0] 730.34/251.36 > [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(X)] 730.34/251.36 730.34/251.36 [active(U11(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U21(tt(), V2))] = [1 0] V2 + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V2 + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U22(isList(V2)))] 730.34/251.36 730.34/251.36 [active(U22(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isList(V))] = [1 0] V + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U11(isNeList(V)))] 730.34/251.36 730.34/251.36 [active(isList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] V2 + [1 0] V1 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [mark(U21(isList(V1), V2))] 730.34/251.36 730.34/251.36 [active(isList(nil()))] = [5] 730.34/251.36 [0] 730.34/251.36 > [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U31(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U41(tt(), V2))] = [1 0] V2 + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 > [1 0] V2 + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U42(isNeList(V2)))] 730.34/251.36 730.34/251.36 [active(U42(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isNeList(V))] = [1 0] V + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U31(isQid(V)))] 730.34/251.36 730.34/251.36 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] V2 + [1 0] V1 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [mark(U41(isList(V1), V2))] 730.34/251.36 730.34/251.36 [active(isNeList(__(V1, V2)))] = [1 0] V2 + [1 0] V1 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] V2 + [1 0] V1 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [mark(U51(isNeList(V1), V2))] 730.34/251.36 730.34/251.36 [active(U51(tt(), V2))] = [1 0] V2 + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V2 + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U52(isList(V2)))] 730.34/251.36 730.34/251.36 [active(U52(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U61(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U71(tt(), P))] = [1 0] P + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 > [1 0] P + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U72(isPal(P)))] 730.34/251.36 730.34/251.36 [active(U72(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isPal(V))] = [1 0] V + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U81(isNePal(V)))] 730.34/251.36 730.34/251.36 [active(isPal(nil()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(U81(tt()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isQid(a()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isQid(e()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isQid(i()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isQid(o()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isQid(u()))] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [mark(tt())] 730.34/251.36 730.34/251.36 [active(isNePal(V))] = [1 0] V + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] V + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [mark(U61(isQid(V)))] 730.34/251.36 730.34/251.36 [active(isNePal(__(I, __(P, I))))] = [1 0] P + [2 0] I + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] P + [1 0] I + [2] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [mark(U71(isQid(I), P))] 730.34/251.36 730.34/251.36 [__(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [__(X1, X2)] 730.34/251.36 730.34/251.36 [__(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [__(X1, X2)] 730.34/251.36 730.34/251.36 [__(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [__(X1, X2)] 730.34/251.36 730.34/251.36 [__(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [__(X1, X2)] 730.34/251.36 730.34/251.36 [mark(__(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 ? [1 0] X1 + [1 0] X2 + [7] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [active(__(mark(X1), mark(X2)))] 730.34/251.36 730.34/251.36 [mark(nil())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(nil())] 730.34/251.36 730.34/251.36 [mark(U11(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U11(mark(X)))] 730.34/251.36 730.34/251.36 [mark(tt())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(tt())] 730.34/251.36 730.34/251.36 [mark(U21(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [active(U21(mark(X1), X2))] 730.34/251.36 730.34/251.36 [mark(U22(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U22(mark(X)))] 730.34/251.36 730.34/251.36 [mark(isList(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(isList(X))] 730.34/251.36 730.34/251.36 [mark(U31(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U31(mark(X)))] 730.34/251.36 730.34/251.36 [mark(U41(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [active(U41(mark(X1), X2))] 730.34/251.36 730.34/251.36 [mark(U42(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U42(mark(X)))] 730.34/251.36 730.34/251.36 [mark(isNeList(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(isNeList(X))] 730.34/251.36 730.34/251.36 [mark(U51(X1, X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [active(U51(mark(X1), X2))] 730.34/251.36 730.34/251.36 [mark(U52(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U52(mark(X)))] 730.34/251.36 730.34/251.36 [mark(U61(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U61(mark(X)))] 730.34/251.36 730.34/251.36 [mark(U71(X1, X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 ? [1 0] X1 + [1 0] X2 + [4] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [active(U71(mark(X1), X2))] 730.34/251.36 730.34/251.36 [mark(U72(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U72(mark(X)))] 730.34/251.36 730.34/251.36 [mark(isPal(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [0] 730.34/251.36 > [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(isPal(X))] 730.34/251.36 730.34/251.36 [mark(U81(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 ? [1 0] X + [4] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(U81(mark(X)))] 730.34/251.36 730.34/251.36 [mark(isQid(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(isQid(X))] 730.34/251.36 730.34/251.36 [mark(isNePal(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 >= [1 0] X + [2] 730.34/251.36 [0 0] [0] 730.34/251.36 = [active(isNePal(X))] 730.34/251.36 730.34/251.36 [mark(a())] = [4] 730.34/251.36 [0] 730.34/251.36 >= [4] 730.34/251.36 [0] 730.34/251.36 = [active(a())] 730.34/251.36 730.34/251.36 [mark(e())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(e())] 730.34/251.36 730.34/251.36 [mark(i())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(i())] 730.34/251.36 730.34/251.36 [mark(o())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(o())] 730.34/251.36 730.34/251.36 [mark(u())] = [4] 730.34/251.36 [0] 730.34/251.36 > [2] 730.34/251.36 [0] 730.34/251.36 = [active(u())] 730.34/251.36 730.34/251.36 [U11(active(X))] = [1 1] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U11(X)] 730.34/251.36 730.34/251.36 [U11(mark(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U11(X)] 730.34/251.36 730.34/251.36 [U21(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U21(X1, X2)] 730.34/251.36 730.34/251.36 [U21(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U21(X1, X2)] 730.34/251.36 730.34/251.36 [U21(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U21(X1, X2)] 730.34/251.36 730.34/251.36 [U21(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U21(X1, X2)] 730.34/251.36 730.34/251.36 [U22(active(X))] = [1 1] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U22(X)] 730.34/251.36 730.34/251.36 [U22(mark(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U22(X)] 730.34/251.36 730.34/251.36 [isList(active(X))] = [1 1] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 = [isList(X)] 730.34/251.36 730.34/251.36 [isList(mark(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 = [isList(X)] 730.34/251.36 730.34/251.36 [U31(active(X))] = [1 1] X + [1] 730.34/251.36 [0 0] [1] 730.34/251.36 >= [1 0] X + [1] 730.34/251.36 [0 0] [1] 730.34/251.36 = [U31(X)] 730.34/251.36 730.34/251.36 [U31(mark(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [1] 730.34/251.36 > [1 0] X + [1] 730.34/251.36 [0 0] [1] 730.34/251.36 = [U31(X)] 730.34/251.36 730.34/251.36 [U41(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U41(X1, X2)] 730.34/251.36 730.34/251.36 [U41(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U41(X1, X2)] 730.34/251.36 730.34/251.36 [U41(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U41(X1, X2)] 730.34/251.36 730.34/251.36 [U41(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U41(X1, X2)] 730.34/251.36 730.34/251.36 [U42(active(X))] = [1 1] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U42(X)] 730.34/251.36 730.34/251.36 [U42(mark(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U42(X)] 730.34/251.36 730.34/251.36 [isNeList(active(X))] = [1 1] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 = [isNeList(X)] 730.34/251.36 730.34/251.36 [isNeList(mark(X))] = [1 0] X + [3] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [1] 730.34/251.36 [0 0] [2] 730.34/251.36 = [isNeList(X)] 730.34/251.36 730.34/251.36 [U51(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U51(X1, X2)] 730.34/251.36 730.34/251.36 [U51(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U51(X1, X2)] 730.34/251.36 730.34/251.36 [U51(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U51(X1, X2)] 730.34/251.36 730.34/251.36 [U51(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [3] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [1] 730.34/251.36 [0 0] [0 0] [0] 730.34/251.36 = [U51(X1, X2)] 730.34/251.36 730.34/251.36 [U52(active(X))] = [1 1] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U52(X)] 730.34/251.36 730.34/251.36 [U52(mark(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U52(X)] 730.34/251.36 730.34/251.36 [U61(active(X))] = [1 1] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 >= [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U61(X)] 730.34/251.36 730.34/251.36 [U61(mark(X))] = [1 0] X + [2] 730.34/251.36 [0 0] [2] 730.34/251.36 > [1 0] X + [0] 730.34/251.36 [0 0] [2] 730.34/251.36 = [U61(X)] 730.34/251.36 730.34/251.36 [U71(X1, active(X2))] = [1 0] X1 + [1 1] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U71(X1, X2)] 730.34/251.36 730.34/251.36 [U71(X1, mark(X2))] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U71(X1, X2)] 730.34/251.36 730.34/251.36 [U71(active(X1), X2)] = [1 1] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 >= [1 0] X1 + [1 0] X2 + [0] 730.34/251.36 [0 0] [0 0] [2] 730.34/251.36 = [U71(X1, X2)] 730.34/251.36 730.34/251.37 [U71(mark(X1), X2)] = [1 0] X1 + [1 0] X2 + [2] 730.34/251.37 [0 0] [0 0] [2] 730.34/251.37 > [1 0] X1 + [1 0] X2 + [0] 730.34/251.37 [0 0] [0 0] [2] 730.34/251.37 = [U71(X1, X2)] 730.34/251.37 730.34/251.37 [U72(active(X))] = [1 1] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 >= [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [U72(X)] 730.34/251.37 730.34/251.37 [U72(mark(X))] = [1 0] X + [2] 730.34/251.37 [0 0] [2] 730.34/251.37 > [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [U72(X)] 730.34/251.37 730.34/251.37 [isPal(active(X))] = [1 1] X + [1] 730.34/251.37 [0 0] [1] 730.34/251.37 >= [1 0] X + [1] 730.34/251.37 [0 0] [1] 730.34/251.37 = [isPal(X)] 730.34/251.37 730.34/251.37 [isPal(mark(X))] = [1 0] X + [3] 730.34/251.37 [0 0] [1] 730.34/251.37 > [1 0] X + [1] 730.34/251.37 [0 0] [1] 730.34/251.37 = [isPal(X)] 730.34/251.37 730.34/251.37 [U81(active(X))] = [1 1] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 >= [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [U81(X)] 730.34/251.37 730.34/251.37 [U81(mark(X))] = [1 0] X + [2] 730.34/251.37 [0 0] [2] 730.34/251.37 > [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [U81(X)] 730.34/251.37 730.34/251.37 [isQid(active(X))] = [1 1] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 >= [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [isQid(X)] 730.34/251.37 730.34/251.37 [isQid(mark(X))] = [1 0] X + [2] 730.34/251.37 [0 0] [2] 730.34/251.37 > [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [isQid(X)] 730.34/251.37 730.34/251.37 [isNePal(active(X))] = [1 1] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 >= [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [isNePal(X)] 730.34/251.37 730.34/251.37 [isNePal(mark(X))] = [1 0] X + [2] 730.34/251.37 [0 0] [2] 730.34/251.37 > [1 0] X + [0] 730.34/251.37 [0 0] [2] 730.34/251.37 = [isNePal(X)] 730.34/251.37 730.34/251.37 730.34/251.37 Further, it can be verified that all rules not oriented are covered by the weightgap condition. 730.34/251.37 730.34/251.37 We are left with following problem, upon which TcT provides the 730.34/251.37 certificate MAYBE. 730.34/251.37 730.34/251.37 Strict Trs: 730.34/251.37 { mark(__(X1, X2)) -> active(__(mark(X1), mark(X2))) 730.34/251.37 , mark(U11(X)) -> active(U11(mark(X))) 730.34/251.37 , mark(U21(X1, X2)) -> active(U21(mark(X1), X2)) 730.34/251.37 , mark(U22(X)) -> active(U22(mark(X))) 730.34/251.37 , mark(U31(X)) -> active(U31(mark(X))) 730.34/251.37 , mark(U41(X1, X2)) -> active(U41(mark(X1), X2)) 730.34/251.37 , mark(U42(X)) -> active(U42(mark(X))) 730.34/251.37 , mark(U51(X1, X2)) -> active(U51(mark(X1), X2)) 730.34/251.37 , mark(U52(X)) -> active(U52(mark(X))) 730.34/251.37 , mark(U61(X)) -> active(U61(mark(X))) 730.34/251.37 , mark(U71(X1, X2)) -> active(U71(mark(X1), X2)) 730.34/251.37 , mark(U72(X)) -> active(U72(mark(X))) 730.34/251.37 , mark(U81(X)) -> active(U81(mark(X))) } 730.34/251.37 Weak Trs: 730.34/251.37 { active(__(X, nil())) -> mark(X) 730.34/251.37 , active(__(__(X, Y), Z)) -> mark(__(X, __(Y, Z))) 730.34/251.37 , active(__(nil(), X)) -> mark(X) 730.34/251.37 , active(U11(tt())) -> mark(tt()) 730.34/251.37 , active(U21(tt(), V2)) -> mark(U22(isList(V2))) 730.34/251.37 , active(U22(tt())) -> mark(tt()) 730.34/251.37 , active(isList(V)) -> mark(U11(isNeList(V))) 730.34/251.37 , active(isList(__(V1, V2))) -> mark(U21(isList(V1), V2)) 730.34/251.37 , active(isList(nil())) -> mark(tt()) 730.34/251.37 , active(U31(tt())) -> mark(tt()) 730.34/251.37 , active(U41(tt(), V2)) -> mark(U42(isNeList(V2))) 730.34/251.37 , active(U42(tt())) -> mark(tt()) 730.34/251.37 , active(isNeList(V)) -> mark(U31(isQid(V))) 730.34/251.37 , active(isNeList(__(V1, V2))) -> mark(U41(isList(V1), V2)) 730.34/251.37 , active(isNeList(__(V1, V2))) -> mark(U51(isNeList(V1), V2)) 730.34/251.37 , active(U51(tt(), V2)) -> mark(U52(isList(V2))) 730.34/251.37 , active(U52(tt())) -> mark(tt()) 730.34/251.37 , active(U61(tt())) -> mark(tt()) 730.34/251.37 , active(U71(tt(), P)) -> mark(U72(isPal(P))) 730.34/251.37 , active(U72(tt())) -> mark(tt()) 730.34/251.37 , active(isPal(V)) -> mark(U81(isNePal(V))) 730.34/251.37 , active(isPal(nil())) -> mark(tt()) 730.34/251.37 , active(U81(tt())) -> mark(tt()) 730.34/251.37 , active(isQid(a())) -> mark(tt()) 730.34/251.37 , active(isQid(e())) -> mark(tt()) 730.34/251.37 , active(isQid(i())) -> mark(tt()) 730.34/251.37 , active(isQid(o())) -> mark(tt()) 730.34/251.37 , active(isQid(u())) -> mark(tt()) 730.34/251.37 , active(isNePal(V)) -> mark(U61(isQid(V))) 730.34/251.37 , active(isNePal(__(I, __(P, I)))) -> mark(U71(isQid(I), P)) 730.34/251.37 , __(X1, active(X2)) -> __(X1, X2) 730.34/251.37 , __(X1, mark(X2)) -> __(X1, X2) 730.34/251.37 , __(active(X1), X2) -> __(X1, X2) 730.34/251.37 , __(mark(X1), X2) -> __(X1, X2) 730.34/251.37 , mark(nil()) -> active(nil()) 730.34/251.37 , mark(tt()) -> active(tt()) 730.34/251.37 , mark(isList(X)) -> active(isList(X)) 730.34/251.37 , mark(isNeList(X)) -> active(isNeList(X)) 730.34/251.37 , mark(isPal(X)) -> active(isPal(X)) 730.34/251.37 , mark(isQid(X)) -> active(isQid(X)) 730.34/251.37 , mark(isNePal(X)) -> active(isNePal(X)) 730.34/251.37 , mark(a()) -> active(a()) 730.34/251.37 , mark(e()) -> active(e()) 730.34/251.37 , mark(i()) -> active(i()) 730.34/251.37 , mark(o()) -> active(o()) 730.34/251.37 , mark(u()) -> active(u()) 730.34/251.37 , U11(active(X)) -> U11(X) 730.34/251.37 , U11(mark(X)) -> U11(X) 730.34/251.37 , U21(X1, active(X2)) -> U21(X1, X2) 730.34/251.37 , U21(X1, mark(X2)) -> U21(X1, X2) 730.34/251.37 , U21(active(X1), X2) -> U21(X1, X2) 730.34/251.37 , U21(mark(X1), X2) -> U21(X1, X2) 730.34/251.37 , U22(active(X)) -> U22(X) 730.34/251.37 , U22(mark(X)) -> U22(X) 730.34/251.37 , isList(active(X)) -> isList(X) 730.34/251.37 , isList(mark(X)) -> isList(X) 730.34/251.37 , U31(active(X)) -> U31(X) 730.34/251.37 , U31(mark(X)) -> U31(X) 730.34/251.37 , U41(X1, active(X2)) -> U41(X1, X2) 730.34/251.37 , U41(X1, mark(X2)) -> U41(X1, X2) 730.34/251.37 , U41(active(X1), X2) -> U41(X1, X2) 730.34/251.37 , U41(mark(X1), X2) -> U41(X1, X2) 730.34/251.37 , U42(active(X)) -> U42(X) 730.34/251.37 , U42(mark(X)) -> U42(X) 730.34/251.37 , isNeList(active(X)) -> isNeList(X) 730.34/251.37 , isNeList(mark(X)) -> isNeList(X) 730.34/251.37 , U51(X1, active(X2)) -> U51(X1, X2) 730.34/251.37 , U51(X1, mark(X2)) -> U51(X1, X2) 730.34/251.37 , U51(active(X1), X2) -> U51(X1, X2) 730.34/251.37 , U51(mark(X1), X2) -> U51(X1, X2) 730.34/251.37 , U52(active(X)) -> U52(X) 730.34/251.37 , U52(mark(X)) -> U52(X) 730.34/251.37 , U61(active(X)) -> U61(X) 730.34/251.37 , U61(mark(X)) -> U61(X) 730.34/251.37 , U71(X1, active(X2)) -> U71(X1, X2) 730.34/251.37 , U71(X1, mark(X2)) -> U71(X1, X2) 730.34/251.37 , U71(active(X1), X2) -> U71(X1, X2) 730.34/251.37 , U71(mark(X1), X2) -> U71(X1, X2) 730.34/251.37 , U72(active(X)) -> U72(X) 730.34/251.37 , U72(mark(X)) -> U72(X) 730.34/251.37 , isPal(active(X)) -> isPal(X) 730.34/251.37 , isPal(mark(X)) -> isPal(X) 730.34/251.37 , U81(active(X)) -> U81(X) 730.34/251.37 , U81(mark(X)) -> U81(X) 730.34/251.37 , isQid(active(X)) -> isQid(X) 730.34/251.37 , isQid(mark(X)) -> isQid(X) 730.34/251.37 , isNePal(active(X)) -> isNePal(X) 730.34/251.37 , isNePal(mark(X)) -> isNePal(X) } 730.34/251.37 Obligation: 730.34/251.37 derivational complexity 730.34/251.37 Answer: 730.34/251.37 MAYBE 730.34/251.37 730.34/251.37 None of the processors succeeded. 730.34/251.37 730.34/251.37 Details of failed attempt(s): 730.34/251.37 ----------------------------- 730.34/251.37 1) 'empty' failed due to the following reason: 730.34/251.37 730.34/251.37 Empty strict component of the problem is NOT empty. 730.34/251.37 730.34/251.37 2) 'Fastest' failed due to the following reason: 730.34/251.37 730.34/251.37 None of the processors succeeded. 730.34/251.37 730.34/251.37 Details of failed attempt(s): 730.34/251.37 ----------------------------- 730.34/251.37 1) 'iteProgress' failed due to the following reason: 730.34/251.37 730.34/251.37 Fail 730.34/251.37 730.34/251.37 2) 'Fastest' failed due to the following reason: 730.34/251.37 730.34/251.37 None of the processors succeeded. 730.34/251.37 730.34/251.37 Details of failed attempt(s): 730.34/251.37 ----------------------------- 730.34/251.37 1) 'matrix interpretation of dimension 6' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 Following exception was raised: 730.34/251.37 stack overflow 730.34/251.37 730.34/251.37 2) 'matrix interpretation of dimension 4' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 3) 'matrix interpretation of dimension 5' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 Following exception was raised: 730.34/251.37 stack overflow 730.34/251.37 730.34/251.37 4) 'matrix interpretation of dimension 3' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 5) 'matrix interpretation of dimension 2' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 6) 'matrix interpretation of dimension 1' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 730.34/251.37 3) 'Fastest (timeout of 30 seconds)' failed due to the following 730.34/251.37 reason: 730.34/251.37 730.34/251.37 Computation stopped due to timeout after 30.0 seconds. 730.34/251.37 730.34/251.37 4) 'bsearch-matrix' failed due to the following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 730.34/251.37 730.34/251.37 2) 'iteProgress (timeout of 297 seconds)' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 Fail 730.34/251.37 730.34/251.37 3) 'Fastest (timeout of 60 seconds)' failed due to the following 730.34/251.37 reason: 730.34/251.37 730.34/251.37 Computation stopped due to timeout after 60.0 seconds. 730.34/251.37 730.34/251.37 4) 'bsearch-matrix (timeout of 297 seconds)' failed due to the 730.34/251.37 following reason: 730.34/251.37 730.34/251.37 The input cannot be shown compatible 730.34/251.37 730.34/251.37 730.34/251.37 Arrrr.. 730.64/251.50 EOF