/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR I P V V1 V2 X X1 X2 Y Z) (RULES U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ) Problem 1: Dependency Pairs Processor: -> Pairs: U11#(active(X)) -> U11#(X) U11#(mark(X)) -> U11#(X) U21#(active(X1),X2) -> U21#(X1,X2) U21#(mark(X1),X2) -> U21#(X1,X2) U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) U22#(active(X)) -> U22#(X) U22#(mark(X)) -> U22#(X) U31#(active(X)) -> U31#(X) U31#(mark(X)) -> U31#(X) U41#(active(X1),X2) -> U41#(X1,X2) U41#(mark(X1),X2) -> U41#(X1,X2) U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) U42#(active(X)) -> U42#(X) U42#(mark(X)) -> U42#(X) U51#(active(X1),X2) -> U51#(X1,X2) U51#(mark(X1),X2) -> U51#(X1,X2) U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) U52#(active(X)) -> U52#(X) U52#(mark(X)) -> U52#(X) U61#(active(X)) -> U61#(X) U61#(mark(X)) -> U61#(X) U71#(active(X1),X2) -> U71#(X1,X2) U71#(mark(X1),X2) -> U71#(X1,X2) U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) U72#(active(X)) -> U72#(X) U72#(mark(X)) -> U72#(X) U81#(active(X)) -> U81#(X) U81#(mark(X)) -> U81#(X) __#(active(X1),X2) -> __#(X1,X2) __#(mark(X1),X2) -> __#(X1,X2) __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ACTIVE(U11(tt)) -> MARK(tt) ACTIVE(U21(tt,V2)) -> U22#(isList(V2)) ACTIVE(U21(tt,V2)) -> ISLIST(V2) ACTIVE(U21(tt,V2)) -> MARK(U22(isList(V2))) ACTIVE(U22(tt)) -> MARK(tt) ACTIVE(U31(tt)) -> MARK(tt) ACTIVE(U41(tt,V2)) -> U42#(isNeList(V2)) ACTIVE(U41(tt,V2)) -> ISNELIST(V2) ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U42(tt)) -> MARK(tt) ACTIVE(U51(tt,V2)) -> U52#(isList(V2)) ACTIVE(U51(tt,V2)) -> ISLIST(V2) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U52(tt)) -> MARK(tt) ACTIVE(U61(tt)) -> MARK(tt) ACTIVE(U71(tt,P)) -> U72#(isPal(P)) ACTIVE(U71(tt,P)) -> ISPAL(P) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(U72(tt)) -> MARK(tt) ACTIVE(U81(tt)) -> MARK(tt) ACTIVE(__(__(X,Y),Z)) -> __#(X,__(Y,Z)) ACTIVE(__(__(X,Y),Z)) -> __#(Y,Z) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> U21#(isList(V1),V2) ACTIVE(isList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(nil)) -> MARK(tt) ACTIVE(isList(V)) -> U11#(isNeList(V)) ACTIVE(isList(V)) -> ISNELIST(V) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> U41#(isList(V1),V2) ACTIVE(isNeList(__(V1,V2))) -> U51#(isNeList(V1),V2) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V1) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> U31#(isQid(V)) ACTIVE(isNeList(V)) -> ISQID(V) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> U71#(isQid(I),P) ACTIVE(isNePal(__(I,__(P,I)))) -> ISQID(I) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> U61#(isQid(V)) ACTIVE(isNePal(V)) -> ISQID(V) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(nil)) -> MARK(tt) ACTIVE(isPal(V)) -> U81#(isNePal(V)) ACTIVE(isPal(V)) -> ISNEPAL(V) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) ACTIVE(isQid(a)) -> MARK(tt) ACTIVE(isQid(e)) -> MARK(tt) ACTIVE(isQid(i)) -> MARK(tt) ACTIVE(isQid(o)) -> MARK(tt) ACTIVE(isQid(u)) -> MARK(tt) ISLIST(active(X)) -> ISLIST(X) ISLIST(mark(X)) -> ISLIST(X) ISNELIST(active(X)) -> ISNELIST(X) ISNELIST(mark(X)) -> ISNELIST(X) ISNEPAL(active(X)) -> ISNEPAL(X) ISNEPAL(mark(X)) -> ISNEPAL(X) ISPAL(active(X)) -> ISPAL(X) ISPAL(mark(X)) -> ISPAL(X) ISQID(active(X)) -> ISQID(X) ISQID(mark(X)) -> ISQID(X) MARK(U11(X)) -> U11#(mark(X)) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> U21#(mark(X1),X2) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> U22#(mark(X)) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> U31#(mark(X)) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> U41#(mark(X1),X2) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> U42#(mark(X)) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> U51#(mark(X1),X2) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> U52#(mark(X)) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> U61#(mark(X)) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> U71#(mark(X1),X2) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> U72#(mark(X)) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> U81#(mark(X)) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> __#(mark(X1),mark(X2)) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1: SCC Processor: -> Pairs: U11#(active(X)) -> U11#(X) U11#(mark(X)) -> U11#(X) U21#(active(X1),X2) -> U21#(X1,X2) U21#(mark(X1),X2) -> U21#(X1,X2) U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) U22#(active(X)) -> U22#(X) U22#(mark(X)) -> U22#(X) U31#(active(X)) -> U31#(X) U31#(mark(X)) -> U31#(X) U41#(active(X1),X2) -> U41#(X1,X2) U41#(mark(X1),X2) -> U41#(X1,X2) U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) U42#(active(X)) -> U42#(X) U42#(mark(X)) -> U42#(X) U51#(active(X1),X2) -> U51#(X1,X2) U51#(mark(X1),X2) -> U51#(X1,X2) U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) U52#(active(X)) -> U52#(X) U52#(mark(X)) -> U52#(X) U61#(active(X)) -> U61#(X) U61#(mark(X)) -> U61#(X) U71#(active(X1),X2) -> U71#(X1,X2) U71#(mark(X1),X2) -> U71#(X1,X2) U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) U72#(active(X)) -> U72#(X) U72#(mark(X)) -> U72#(X) U81#(active(X)) -> U81#(X) U81#(mark(X)) -> U81#(X) __#(active(X1),X2) -> __#(X1,X2) __#(mark(X1),X2) -> __#(X1,X2) __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ACTIVE(U11(tt)) -> MARK(tt) ACTIVE(U21(tt,V2)) -> U22#(isList(V2)) ACTIVE(U21(tt,V2)) -> ISLIST(V2) ACTIVE(U21(tt,V2)) -> MARK(U22(isList(V2))) ACTIVE(U22(tt)) -> MARK(tt) ACTIVE(U31(tt)) -> MARK(tt) ACTIVE(U41(tt,V2)) -> U42#(isNeList(V2)) ACTIVE(U41(tt,V2)) -> ISNELIST(V2) ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U42(tt)) -> MARK(tt) ACTIVE(U51(tt,V2)) -> U52#(isList(V2)) ACTIVE(U51(tt,V2)) -> ISLIST(V2) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U52(tt)) -> MARK(tt) ACTIVE(U61(tt)) -> MARK(tt) ACTIVE(U71(tt,P)) -> U72#(isPal(P)) ACTIVE(U71(tt,P)) -> ISPAL(P) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(U72(tt)) -> MARK(tt) ACTIVE(U81(tt)) -> MARK(tt) ACTIVE(__(__(X,Y),Z)) -> __#(X,__(Y,Z)) ACTIVE(__(__(X,Y),Z)) -> __#(Y,Z) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> U21#(isList(V1),V2) ACTIVE(isList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(nil)) -> MARK(tt) ACTIVE(isList(V)) -> U11#(isNeList(V)) ACTIVE(isList(V)) -> ISNELIST(V) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> U41#(isList(V1),V2) ACTIVE(isNeList(__(V1,V2))) -> U51#(isNeList(V1),V2) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V1) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> U31#(isQid(V)) ACTIVE(isNeList(V)) -> ISQID(V) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> U71#(isQid(I),P) ACTIVE(isNePal(__(I,__(P,I)))) -> ISQID(I) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> U61#(isQid(V)) ACTIVE(isNePal(V)) -> ISQID(V) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(nil)) -> MARK(tt) ACTIVE(isPal(V)) -> U81#(isNePal(V)) ACTIVE(isPal(V)) -> ISNEPAL(V) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) ACTIVE(isQid(a)) -> MARK(tt) ACTIVE(isQid(e)) -> MARK(tt) ACTIVE(isQid(i)) -> MARK(tt) ACTIVE(isQid(o)) -> MARK(tt) ACTIVE(isQid(u)) -> MARK(tt) ISLIST(active(X)) -> ISLIST(X) ISLIST(mark(X)) -> ISLIST(X) ISNELIST(active(X)) -> ISNELIST(X) ISNELIST(mark(X)) -> ISNELIST(X) ISNEPAL(active(X)) -> ISNEPAL(X) ISNEPAL(mark(X)) -> ISNEPAL(X) ISPAL(active(X)) -> ISPAL(X) ISPAL(mark(X)) -> ISPAL(X) ISQID(active(X)) -> ISQID(X) ISQID(mark(X)) -> ISQID(X) MARK(U11(X)) -> U11#(mark(X)) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> U21#(mark(X1),X2) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> U22#(mark(X)) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> U31#(mark(X)) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> U41#(mark(X1),X2) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> U42#(mark(X)) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> U51#(mark(X1),X2) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> U52#(mark(X)) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> U61#(mark(X)) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> U71#(mark(X1),X2) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> U72#(mark(X)) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> U81#(mark(X)) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> __#(mark(X1),mark(X2)) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ISQID(active(X)) -> ISQID(X) ISQID(mark(X)) -> ISQID(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: ISPAL(active(X)) -> ISPAL(X) ISPAL(mark(X)) -> ISPAL(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: ISNEPAL(active(X)) -> ISNEPAL(X) ISNEPAL(mark(X)) -> ISNEPAL(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: ISNELIST(active(X)) -> ISNELIST(X) ISNELIST(mark(X)) -> ISNELIST(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: ISLIST(active(X)) -> ISLIST(X) ISLIST(mark(X)) -> ISLIST(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: __#(active(X1),X2) -> __#(X1,X2) __#(mark(X1),X2) -> __#(X1,X2) __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U81#(active(X)) -> U81#(X) U81#(mark(X)) -> U81#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U72#(active(X)) -> U72#(X) U72#(mark(X)) -> U72#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U71#(active(X1),X2) -> U71#(X1,X2) U71#(mark(X1),X2) -> U71#(X1,X2) U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U61#(active(X)) -> U61#(X) U61#(mark(X)) -> U61#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U52#(active(X)) -> U52#(X) U52#(mark(X)) -> U52#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U51#(active(X1),X2) -> U51#(X1,X2) U51#(mark(X1),X2) -> U51#(X1,X2) U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U42#(active(X)) -> U42#(X) U42#(mark(X)) -> U42#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U41#(active(X1),X2) -> U41#(X1,X2) U41#(mark(X1),X2) -> U41#(X1,X2) U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U31#(active(X)) -> U31#(X) U31#(mark(X)) -> U31#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U22#(active(X)) -> U22#(X) U22#(mark(X)) -> U22#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U21#(active(X1),X2) -> U21#(X1,X2) U21#(mark(X1),X2) -> U21#(X1,X2) U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: U11#(active(X)) -> U11#(X) U11#(mark(X)) -> U11#(X) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->->Cycle: ->->-> Pairs: ACTIVE(U21(tt,V2)) -> MARK(U22(isList(V2))) ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) The problem is decomposed in 19 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ISQID(active(X)) -> ISQID(X) ISQID(mark(X)) -> ISQID(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(ISQID) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: ISPAL(active(X)) -> ISPAL(X) ISPAL(mark(X)) -> ISPAL(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(ISPAL) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Subterm Processor: -> Pairs: ISNEPAL(active(X)) -> ISNEPAL(X) ISNEPAL(mark(X)) -> ISNEPAL(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(ISNEPAL) = 1 Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: ISNELIST(active(X)) -> ISNELIST(X) ISNELIST(mark(X)) -> ISNELIST(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(ISNELIST) = 1 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.5: Subterm Processor: -> Pairs: ISLIST(active(X)) -> ISLIST(X) ISLIST(mark(X)) -> ISLIST(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(ISLIST) = 1 Problem 1.5: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.6: Subterm Processor: -> Pairs: __#(active(X1),X2) -> __#(X1,X2) __#(mark(X1),X2) -> __#(X1,X2) __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(__#) = 1 Problem 1.6: SCC Processor: -> Pairs: __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.6: Subterm Processor: -> Pairs: __#(X1,active(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(__#) = 2 Problem 1.6: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.7: Subterm Processor: -> Pairs: U81#(active(X)) -> U81#(X) U81#(mark(X)) -> U81#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U81#) = 1 Problem 1.7: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.8: Subterm Processor: -> Pairs: U72#(active(X)) -> U72#(X) U72#(mark(X)) -> U72#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U72#) = 1 Problem 1.8: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.9: Subterm Processor: -> Pairs: U71#(active(X1),X2) -> U71#(X1,X2) U71#(mark(X1),X2) -> U71#(X1,X2) U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U71#) = 1 Problem 1.9: SCC Processor: -> Pairs: U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.9: Subterm Processor: -> Pairs: U71#(X1,active(X2)) -> U71#(X1,X2) U71#(X1,mark(X2)) -> U71#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U71#) = 2 Problem 1.9: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.10: Subterm Processor: -> Pairs: U61#(active(X)) -> U61#(X) U61#(mark(X)) -> U61#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U61#) = 1 Problem 1.10: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.11: Subterm Processor: -> Pairs: U52#(active(X)) -> U52#(X) U52#(mark(X)) -> U52#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U52#) = 1 Problem 1.11: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.12: Subterm Processor: -> Pairs: U51#(active(X1),X2) -> U51#(X1,X2) U51#(mark(X1),X2) -> U51#(X1,X2) U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U51#) = 1 Problem 1.12: SCC Processor: -> Pairs: U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.12: Subterm Processor: -> Pairs: U51#(X1,active(X2)) -> U51#(X1,X2) U51#(X1,mark(X2)) -> U51#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U51#) = 2 Problem 1.12: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.13: Subterm Processor: -> Pairs: U42#(active(X)) -> U42#(X) U42#(mark(X)) -> U42#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U42#) = 1 Problem 1.13: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.14: Subterm Processor: -> Pairs: U41#(active(X1),X2) -> U41#(X1,X2) U41#(mark(X1),X2) -> U41#(X1,X2) U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U41#) = 1 Problem 1.14: SCC Processor: -> Pairs: U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.14: Subterm Processor: -> Pairs: U41#(X1,active(X2)) -> U41#(X1,X2) U41#(X1,mark(X2)) -> U41#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U41#) = 2 Problem 1.14: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.15: Subterm Processor: -> Pairs: U31#(active(X)) -> U31#(X) U31#(mark(X)) -> U31#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U31#) = 1 Problem 1.15: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.16: Subterm Processor: -> Pairs: U22#(active(X)) -> U22#(X) U22#(mark(X)) -> U22#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U22#) = 1 Problem 1.16: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.17: Subterm Processor: -> Pairs: U21#(active(X1),X2) -> U21#(X1,X2) U21#(mark(X1),X2) -> U21#(X1,X2) U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U21#) = 1 Problem 1.17: SCC Processor: -> Pairs: U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.17: Subterm Processor: -> Pairs: U21#(X1,active(X2)) -> U21#(X1,X2) U21#(X1,mark(X2)) -> U21#(X1,X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U21#) = 2 Problem 1.17: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.18: Subterm Processor: -> Pairs: U11#(active(X)) -> U11#(X) U11#(mark(X)) -> U11#(X) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(U11#) = 1 Problem 1.18: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(U21(tt,V2)) -> MARK(U22(isList(V2))) ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 1 [U22](X) = X + 2 [U31](X) = X [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X + 1 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 2 [U61](X) = X [U71](X1,X2) = X1 + 2.X2 + 2 [U72](X) = X [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X + 2 [mark](X) = X [a] = 1 [e] = 2 [i] = 2 [nil] = 2 [o] = 1 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(U41(tt,V2)) -> MARK(U42(isNeList(V2))) ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X + 2 [U21](X1,X2) = X1 + 2.X2 + 2 [U22](X) = X [U31](X) = X [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X + 1 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X [U61](X) = X + 1 [U71](X1,X2) = X1 + 2.X2 + 2 [U72](X) = X [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 1 [tt] = 0 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(U51(tt,V2)) -> MARK(U52(isList(V2))) ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = X1 + 2.X2 [U22](X) = X [U31](X) = X [U41](X1,X2) = 2.X1 + 2.X2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 1 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 + 2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X + 2 [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 0 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(U71(tt,P)) -> MARK(U72(isPal(P))) ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + X2 [U22](X) = X + 1 [U31](X) = X [U41](X1,X2) = X1 + X2 + 2 [U42](X) = X [U51](X1,X2) = 2.X1 + X2 [U52](X) = X + 1 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 + 2 [U72](X) = 2.X + 1 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = X + 2 [isNeList](X) = X + 2 [isNePal](X) = X + 2 [isPal](X) = X + 2 [isQid](X) = X + 2 [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X [MARK](X) = 2.X Problem 1.19: SCC Processor: -> Pairs: ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(__(__(X,Y),Z)) -> MARK(__(X,__(Y,Z))) ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = 2.X [U21](X1,X2) = 2.X1 [U22](X) = 2.X [U31](X) = 2.X [U41](X1,X2) = 2.X1 [U42](X) = X [U51](X1,X2) = X1 [U52](X) = 2.X [U61](X) = 2.X + 2 [U71](X1,X2) = 2.X1 + 2.X2 + 2 [U72](X) = X [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 0 [isNeList](X) = 0 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 0 [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 1 [o] = 2 [tt] = 0 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(__(nil,X)) -> MARK(X) ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 2 [U22](X) = X + 2 [U31](X) = X [U41](X1,X2) = 2.X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 1 [U61](X) = X + 2 [U71](X1,X2) = 2.X1 + 2.X2 [U72](X) = X [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X [isNeList](X) = 2.X [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 1 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(__(X,nil)) -> MARK(X) ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 [U22](X) = X + 2 [U31](X) = X [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 2 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 + 1 [U72](X) = X [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = X + 2 [isPal](X) = X + 2 [isQid](X) = X + 2 [mark](X) = X [a] = 1 [e] = 1 [i] = 1 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 1 [MARK](X) = 2.X + 1 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isList(__(V1,V2))) -> MARK(U21(isList(V1),V2)) ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 1 [U22](X) = X + 1 [U31](X) = X [U41](X1,X2) = X1 + 2.X2 [U42](X) = X [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 2 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 + 1 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X + 2 [mark](X) = X [a] = 2 [e] = 2 [i] = 0 [nil] = 1 [o] = 0 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 1 [MARK](X) = 2.X + 1 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isList(V)) -> MARK(U11(isNeList(V))) ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 2 [U22](X) = X + 2 [U31](X) = X + 1 [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X [U61](X) = X + 2 [U71](X1,X2) = X1 + 2.X2 + 2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 1 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U41(isList(V1),V2)) ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 2 [U22](X) = X [U31](X) = X + 2 [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 2 [U61](X) = 2.X + 2 [U71](X1,X2) = X1 + 2.X2 + 2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isNeList(__(V1,V2))) -> MARK(U51(isNeList(V1),V2)) ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 1 [U22](X) = X + 2 [U31](X) = X [U41](X1,X2) = X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = X1 + 2.X2 + 2 [U52](X) = X + 1 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2 [mark](X) = X [a] = 2 [e] = 2 [i] = 1 [nil] = 2 [o] = 2 [tt] = 2 [u] = 0 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isNeList(V)) -> MARK(U31(isQid(V))) ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 2 [U22](X) = X [U31](X) = X [U41](X1,X2) = 2.X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X) = X + 1 [U61](X) = X [U71](X1,X2) = 2.X1 + 2.X2 + 1 [U72](X) = 2.X + 1 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = X + 2 [isPal](X) = X + 2 [isQid](X) = X + 1 [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isNePal(__(I,__(P,I)))) -> MARK(U71(isQid(I),P)) ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 2 [U22](X) = X + 1 [U31](X) = X + 1 [U41](X1,X2) = 2.X1 + 2.X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = X1 + 2.X2 + 1 [U52](X) = X + 1 [U61](X) = X + 2 [U71](X1,X2) = 2.X1 + 2.X2 + 2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = 2.X [mark](X) = X [a] = 2 [e] = 2 [i] = 1 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isNePal(V)) -> MARK(U61(isQid(V))) ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + 2.X2 + 1 [U22](X) = X + 2 [U31](X) = 2.X [U41](X1,X2) = 2.X1 + 2.X2 + 1 [U42](X) = X + 1 [U51](X1,X2) = X1 + 2.X2 + 2 [U52](X) = X + 2 [U61](X) = 2.X + 1 [U71](X1,X2) = 2.X1 + 2.X2 + 2 [U72](X) = X + 2 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 2 [isNePal](X) = 2.X + 2 [isPal](X) = 2.X + 2 [isQid](X) = X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 1 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Reduction Pair Processor: -> Pairs: ACTIVE(isPal(V)) -> MARK(U81(isNePal(V))) MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) -> Usable rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [U11](X) = X [U21](X1,X2) = 2.X1 + X2 + 1 [U22](X) = X + 2 [U31](X) = X [U41](X1,X2) = X1 + X2 + 2 [U42](X) = X + 2 [U51](X1,X2) = 2.X1 + X2 + 1 [U52](X) = X + 2 [U61](X) = 2.X + 1 [U71](X1,X2) = X1 + 2.X2 + 2 [U72](X) = X + 1 [U81](X) = X [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [isList](X) = X [isNeList](X) = X [isNePal](X) = 2.X + 1 [isPal](X) = 2.X + 2 [isQid](X) = X [mark](X) = X [a] = 2 [e] = 2 [i] = 2 [nil] = 2 [o] = 2 [tt] = 2 [u] = 2 [ACTIVE](X) = 2.X + 2 [MARK](X) = 2.X + 2 Problem 1.19: SCC Processor: -> Pairs: MARK(U11(X)) -> ACTIVE(U11(mark(X))) MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> ACTIVE(U21(mark(X1),X2)) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> ACTIVE(U22(mark(X))) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> ACTIVE(U31(mark(X))) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> ACTIVE(U41(mark(X1),X2)) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> ACTIVE(U42(mark(X))) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> ACTIVE(U51(mark(X1),X2)) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> ACTIVE(U52(mark(X))) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> ACTIVE(U61(mark(X))) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> ACTIVE(U71(mark(X1),X2)) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> ACTIVE(U72(mark(X))) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> ACTIVE(U81(mark(X))) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> ACTIVE(__(mark(X1),mark(X2))) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) MARK(isList(X)) -> ACTIVE(isList(X)) MARK(isNeList(X)) -> ACTIVE(isNeList(X)) MARK(isNePal(X)) -> ACTIVE(isNePal(X)) MARK(isPal(X)) -> ACTIVE(isPal(X)) MARK(isQid(X)) -> ACTIVE(isQid(X)) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) ->->-> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) Problem 1.19: Subterm Processor: -> Pairs: MARK(U11(X)) -> MARK(X) MARK(U21(X1,X2)) -> MARK(X1) MARK(U22(X)) -> MARK(X) MARK(U31(X)) -> MARK(X) MARK(U41(X1,X2)) -> MARK(X1) MARK(U42(X)) -> MARK(X) MARK(U51(X1,X2)) -> MARK(X1) MARK(U52(X)) -> MARK(X) MARK(U61(X)) -> MARK(X) MARK(U71(X1,X2)) -> MARK(X1) MARK(U72(X)) -> MARK(X) MARK(U81(X)) -> MARK(X) MARK(__(X1,X2)) -> MARK(X1) MARK(__(X1,X2)) -> MARK(X2) -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Projection: pi(MARK) = 1 Problem 1.19: SCC Processor: -> Pairs: Empty -> Rules: U11(active(X)) -> U11(X) U11(mark(X)) -> U11(X) U21(active(X1),X2) -> U21(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U22(active(X)) -> U22(X) U22(mark(X)) -> U22(X) U31(active(X)) -> U31(X) U31(mark(X)) -> U31(X) U41(active(X1),X2) -> U41(X1,X2) U41(mark(X1),X2) -> U41(X1,X2) U41(X1,active(X2)) -> U41(X1,X2) U41(X1,mark(X2)) -> U41(X1,X2) U42(active(X)) -> U42(X) U42(mark(X)) -> U42(X) U51(active(X1),X2) -> U51(X1,X2) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U52(active(X)) -> U52(X) U52(mark(X)) -> U52(X) U61(active(X)) -> U61(X) U61(mark(X)) -> U61(X) U71(active(X1),X2) -> U71(X1,X2) U71(mark(X1),X2) -> U71(X1,X2) U71(X1,active(X2)) -> U71(X1,X2) U71(X1,mark(X2)) -> U71(X1,X2) U72(active(X)) -> U72(X) U72(mark(X)) -> U72(X) U81(active(X)) -> U81(X) U81(mark(X)) -> U81(X) __(active(X1),X2) -> __(X1,X2) __(mark(X1),X2) -> __(X1,X2) __(X1,active(X2)) -> __(X1,X2) __(X1,mark(X2)) -> __(X1,X2) active(U11(tt)) -> mark(tt) active(U21(tt,V2)) -> mark(U22(isList(V2))) active(U22(tt)) -> mark(tt) active(U31(tt)) -> mark(tt) active(U41(tt,V2)) -> mark(U42(isNeList(V2))) active(U42(tt)) -> mark(tt) active(U51(tt,V2)) -> mark(U52(isList(V2))) active(U52(tt)) -> mark(tt) active(U61(tt)) -> mark(tt) active(U71(tt,P)) -> mark(U72(isPal(P))) active(U72(tt)) -> mark(tt) active(U81(tt)) -> mark(tt) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(U11(isNeList(V))) active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) active(isNeList(V)) -> mark(U31(isQid(V))) active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) active(isNePal(V)) -> mark(U61(isQid(V))) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(U81(isNePal(V))) active(isQid(a)) -> mark(tt) active(isQid(e)) -> mark(tt) active(isQid(i)) -> mark(tt) active(isQid(o)) -> mark(tt) active(isQid(u)) -> mark(tt) isList(active(X)) -> isList(X) isList(mark(X)) -> isList(X) isNeList(active(X)) -> isNeList(X) isNeList(mark(X)) -> isNeList(X) isNePal(active(X)) -> isNePal(X) isNePal(mark(X)) -> isNePal(X) isPal(active(X)) -> isPal(X) isPal(mark(X)) -> isPal(X) isQid(active(X)) -> isQid(X) isQid(mark(X)) -> isQid(X) mark(U11(X)) -> active(U11(mark(X))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X)) -> active(U22(mark(X))) mark(U31(X)) -> active(U31(mark(X))) mark(U41(X1,X2)) -> active(U41(mark(X1),X2)) mark(U42(X)) -> active(U42(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X)) -> active(U61(mark(X))) mark(U71(X1,X2)) -> active(U71(mark(X1),X2)) mark(U72(X)) -> active(U72(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(__(X1,X2)) -> active(__(mark(X1),mark(X2))) mark(isList(X)) -> active(isList(X)) mark(isNeList(X)) -> active(isNeList(X)) mark(isNePal(X)) -> active(isNePal(X)) mark(isPal(X)) -> active(isPal(X)) mark(isQid(X)) -> active(isQid(X)) mark(a) -> active(a) mark(e) -> active(e) mark(i) -> active(i) mark(nil) -> active(nil) mark(o) -> active(o) mark(tt) -> active(tt) mark(u) -> active(u) ->Strongly Connected Components: There is no strongly connected component The problem is finite.