/export/starexec/sandbox/solver/bin/starexec_run_default /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR I P V V1 V2 X X1 X2 Y Z) (RULES __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ) Problem 1: Dependency Pairs Processor: -> Pairs: __#(mark(X1),X2) -> __#(X1,X2) __#(ok(X1),ok(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ACTIVE(__(__(X,Y),Z)) -> __#(X,__(Y,Z)) ACTIVE(__(__(X,Y),Z)) -> __#(Y,Z) ACTIVE(__(X1,X2)) -> __#(active(X1),X2) ACTIVE(__(X1,X2)) -> __#(X1,active(X2)) ACTIVE(__(X1,X2)) -> ACTIVE(X1) ACTIVE(__(X1,X2)) -> ACTIVE(X2) ACTIVE(and(X1,X2)) -> ACTIVE(X1) ACTIVE(and(X1,X2)) -> AND(active(X1),X2) ACTIVE(isList(__(V1,V2))) -> AND(isList(V1),isList(V2)) ACTIVE(isList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isList(__(V1,V2))) -> ISLIST(V2) ACTIVE(isList(V)) -> ISNELIST(V) ACTIVE(isNeList(__(V1,V2))) -> AND(isList(V1),isNeList(V2)) ACTIVE(isNeList(__(V1,V2))) -> AND(isNeList(V1),isList(V2)) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V2) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V2) ACTIVE(isNeList(V)) -> ISQID(V) ACTIVE(isNePal(__(I,__(P,I)))) -> AND(isQid(I),isPal(P)) ACTIVE(isNePal(__(I,__(P,I)))) -> ISPAL(P) ACTIVE(isNePal(__(I,__(P,I)))) -> ISQID(I) ACTIVE(isNePal(V)) -> ISQID(V) ACTIVE(isPal(V)) -> ISNEPAL(V) AND(mark(X1),X2) -> AND(X1,X2) AND(ok(X1),ok(X2)) -> AND(X1,X2) ISLIST(ok(X)) -> ISLIST(X) ISNELIST(ok(X)) -> ISNELIST(X) ISNEPAL(ok(X)) -> ISNEPAL(X) ISPAL(ok(X)) -> ISPAL(X) ISQID(ok(X)) -> ISQID(X) PROPER(__(X1,X2)) -> __#(proper(X1),proper(X2)) PROPER(__(X1,X2)) -> PROPER(X1) PROPER(__(X1,X2)) -> PROPER(X2) PROPER(and(X1,X2)) -> AND(proper(X1),proper(X2)) PROPER(and(X1,X2)) -> PROPER(X1) PROPER(and(X1,X2)) -> PROPER(X2) PROPER(isList(X)) -> ISLIST(proper(X)) PROPER(isList(X)) -> PROPER(X) PROPER(isNeList(X)) -> ISNELIST(proper(X)) PROPER(isNeList(X)) -> PROPER(X) PROPER(isNePal(X)) -> ISNEPAL(proper(X)) PROPER(isNePal(X)) -> PROPER(X) PROPER(isPal(X)) -> ISPAL(proper(X)) PROPER(isPal(X)) -> PROPER(X) PROPER(isQid(X)) -> ISQID(proper(X)) PROPER(isQid(X)) -> PROPER(X) TOP(mark(X)) -> PROPER(X) TOP(mark(X)) -> TOP(proper(X)) TOP(ok(X)) -> ACTIVE(X) TOP(ok(X)) -> TOP(active(X)) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Problem 1: SCC Processor: -> Pairs: __#(mark(X1),X2) -> __#(X1,X2) __#(ok(X1),ok(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ACTIVE(__(__(X,Y),Z)) -> __#(X,__(Y,Z)) ACTIVE(__(__(X,Y),Z)) -> __#(Y,Z) ACTIVE(__(X1,X2)) -> __#(active(X1),X2) ACTIVE(__(X1,X2)) -> __#(X1,active(X2)) ACTIVE(__(X1,X2)) -> ACTIVE(X1) ACTIVE(__(X1,X2)) -> ACTIVE(X2) ACTIVE(and(X1,X2)) -> ACTIVE(X1) ACTIVE(and(X1,X2)) -> AND(active(X1),X2) ACTIVE(isList(__(V1,V2))) -> AND(isList(V1),isList(V2)) ACTIVE(isList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isList(__(V1,V2))) -> ISLIST(V2) ACTIVE(isList(V)) -> ISNELIST(V) ACTIVE(isNeList(__(V1,V2))) -> AND(isList(V1),isNeList(V2)) ACTIVE(isNeList(__(V1,V2))) -> AND(isNeList(V1),isList(V2)) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISLIST(V2) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V1) ACTIVE(isNeList(__(V1,V2))) -> ISNELIST(V2) ACTIVE(isNeList(V)) -> ISQID(V) ACTIVE(isNePal(__(I,__(P,I)))) -> AND(isQid(I),isPal(P)) ACTIVE(isNePal(__(I,__(P,I)))) -> ISPAL(P) ACTIVE(isNePal(__(I,__(P,I)))) -> ISQID(I) ACTIVE(isNePal(V)) -> ISQID(V) ACTIVE(isPal(V)) -> ISNEPAL(V) AND(mark(X1),X2) -> AND(X1,X2) AND(ok(X1),ok(X2)) -> AND(X1,X2) ISLIST(ok(X)) -> ISLIST(X) ISNELIST(ok(X)) -> ISNELIST(X) ISNEPAL(ok(X)) -> ISNEPAL(X) ISPAL(ok(X)) -> ISPAL(X) ISQID(ok(X)) -> ISQID(X) PROPER(__(X1,X2)) -> __#(proper(X1),proper(X2)) PROPER(__(X1,X2)) -> PROPER(X1) PROPER(__(X1,X2)) -> PROPER(X2) PROPER(and(X1,X2)) -> AND(proper(X1),proper(X2)) PROPER(and(X1,X2)) -> PROPER(X1) PROPER(and(X1,X2)) -> PROPER(X2) PROPER(isList(X)) -> ISLIST(proper(X)) PROPER(isList(X)) -> PROPER(X) PROPER(isNeList(X)) -> ISNELIST(proper(X)) PROPER(isNeList(X)) -> PROPER(X) PROPER(isNePal(X)) -> ISNEPAL(proper(X)) PROPER(isNePal(X)) -> PROPER(X) PROPER(isPal(X)) -> ISPAL(proper(X)) PROPER(isPal(X)) -> PROPER(X) PROPER(isQid(X)) -> ISQID(proper(X)) PROPER(isQid(X)) -> PROPER(X) TOP(mark(X)) -> PROPER(X) TOP(mark(X)) -> TOP(proper(X)) TOP(ok(X)) -> ACTIVE(X) TOP(ok(X)) -> TOP(active(X)) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ISQID(ok(X)) -> ISQID(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: ISPAL(ok(X)) -> ISPAL(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: ISNEPAL(ok(X)) -> ISNEPAL(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: ISNELIST(ok(X)) -> ISNELIST(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: ISLIST(ok(X)) -> ISLIST(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: AND(mark(X1),X2) -> AND(X1,X2) AND(ok(X1),ok(X2)) -> AND(X1,X2) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: __#(mark(X1),X2) -> __#(X1,X2) __#(ok(X1),ok(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: ACTIVE(__(X1,X2)) -> ACTIVE(X1) ACTIVE(__(X1,X2)) -> ACTIVE(X2) ACTIVE(and(X1,X2)) -> ACTIVE(X1) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: PROPER(__(X1,X2)) -> PROPER(X1) PROPER(__(X1,X2)) -> PROPER(X2) PROPER(and(X1,X2)) -> PROPER(X1) PROPER(and(X1,X2)) -> PROPER(X2) PROPER(isList(X)) -> PROPER(X) PROPER(isNeList(X)) -> PROPER(X) PROPER(isNePal(X)) -> PROPER(X) PROPER(isPal(X)) -> PROPER(X) PROPER(isQid(X)) -> PROPER(X) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->->Cycle: ->->-> Pairs: TOP(mark(X)) -> TOP(proper(X)) TOP(ok(X)) -> TOP(active(X)) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) The problem is decomposed in 10 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ISQID(ok(X)) -> ISQID(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ISQID) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: ISPAL(ok(X)) -> ISPAL(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ISPAL) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Subterm Processor: -> Pairs: ISNEPAL(ok(X)) -> ISNEPAL(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ISNEPAL) = 1 Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: ISNELIST(ok(X)) -> ISNELIST(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ISNELIST) = 1 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.5: Subterm Processor: -> Pairs: ISLIST(ok(X)) -> ISLIST(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ISLIST) = 1 Problem 1.5: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.6: Subterm Processor: -> Pairs: AND(mark(X1),X2) -> AND(X1,X2) AND(ok(X1),ok(X2)) -> AND(X1,X2) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(AND) = 1 Problem 1.6: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.7: Subterm Processor: -> Pairs: __#(mark(X1),X2) -> __#(X1,X2) __#(ok(X1),ok(X2)) -> __#(X1,X2) __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(__#) = 1 Problem 1.7: SCC Processor: -> Pairs: __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: __#(X1,mark(X2)) -> __#(X1,X2) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Problem 1.7: Subterm Processor: -> Pairs: __#(X1,mark(X2)) -> __#(X1,X2) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(__#) = 2 Problem 1.7: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.8: Subterm Processor: -> Pairs: ACTIVE(__(X1,X2)) -> ACTIVE(X1) ACTIVE(__(X1,X2)) -> ACTIVE(X2) ACTIVE(and(X1,X2)) -> ACTIVE(X1) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(ACTIVE) = 1 Problem 1.8: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.9: Subterm Processor: -> Pairs: PROPER(__(X1,X2)) -> PROPER(X1) PROPER(__(X1,X2)) -> PROPER(X2) PROPER(and(X1,X2)) -> PROPER(X1) PROPER(and(X1,X2)) -> PROPER(X2) PROPER(isList(X)) -> PROPER(X) PROPER(isNeList(X)) -> PROPER(X) PROPER(isNePal(X)) -> PROPER(X) PROPER(isPal(X)) -> PROPER(X) PROPER(isQid(X)) -> PROPER(X) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Projection: pi(PROPER) = 1 Problem 1.9: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.10: Reduction Pair Processor: -> Pairs: TOP(mark(X)) -> TOP(proper(X)) TOP(ok(X)) -> TOP(active(X)) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) -> Usable rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [__](X1,X2) = 2.X1 + X2 + 2 [active](X) = X [and](X1,X2) = X1 + X2 + 1 [isList](X) = 2.X + 2 [isNeList](X) = 2.X + 1 [isNePal](X) = 2.X + 1 [isPal](X) = 2.X + 2 [isQid](X) = 2.X [proper](X) = X [a] = 1 [e] = 2 [i] = 2 [mark](X) = X + 1 [nil] = 2 [o] = 2 [ok](X) = X [tt] = 1 [u] = 2 [TOP](X) = 2.X Problem 1.10: SCC Processor: -> Pairs: TOP(ok(X)) -> TOP(active(X)) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: TOP(ok(X)) -> TOP(active(X)) ->->-> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Problem 1.10: Reduction Pair Processor: -> Pairs: TOP(ok(X)) -> TOP(active(X)) -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) -> Usable rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [__](X1,X2) = X1 + X2 [active](X) = 2.X + 1 [and](X1,X2) = X1 + X2 [isList](X) = 2.X + 1 [isNeList](X) = X [isNePal](X) = 2.X [isPal](X) = 2.X [isQid](X) = 2.X + 1 [a] = 2 [e] = 2 [i] = 0 [mark](X) = X [nil] = 1 [o] = 1 [ok](X) = 2.X + 2 [tt] = 2 [u] = 0 [TOP](X) = 2.X Problem 1.10: SCC Processor: -> Pairs: Empty -> Rules: __(mark(X1),X2) -> mark(__(X1,X2)) __(ok(X1),ok(X2)) -> ok(__(X1,X2)) __(X1,mark(X2)) -> mark(__(X1,X2)) active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) active(__(nil,X)) -> mark(X) active(__(X,nil)) -> mark(X) active(__(X1,X2)) -> __(active(X1),X2) active(__(X1,X2)) -> __(X1,active(X2)) active(and(tt,X)) -> mark(X) active(and(X1,X2)) -> and(active(X1),X2) active(isList(__(V1,V2))) -> mark(and(isList(V1),isList(V2))) active(isList(nil)) -> mark(tt) active(isList(V)) -> mark(isNeList(V)) active(isNeList(__(V1,V2))) -> mark(and(isList(V1),isNeList(V2))) active(isNeList(__(V1,V2))) -> mark(and(isNeList(V1),isList(V2))) active(isNeList(V)) -> mark(isQid(V)) active(isNePal(__(I,__(P,I)))) -> mark(and(isQid(I),isPal(P))) active(isNePal(V)) -> mark(isQid(V)) active(isPal(nil)) -> mark(tt) active(isPal(V)) -> mark(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) and(mark(X1),X2) -> mark(and(X1,X2)) and(ok(X1),ok(X2)) -> ok(and(X1,X2)) isList(ok(X)) -> ok(isList(X)) isNeList(ok(X)) -> ok(isNeList(X)) isNePal(ok(X)) -> ok(isNePal(X)) isPal(ok(X)) -> ok(isPal(X)) isQid(ok(X)) -> ok(isQid(X)) proper(__(X1,X2)) -> __(proper(X1),proper(X2)) proper(and(X1,X2)) -> and(proper(X1),proper(X2)) proper(isList(X)) -> isList(proper(X)) proper(isNeList(X)) -> isNeList(proper(X)) proper(isNePal(X)) -> isNePal(proper(X)) proper(isPal(X)) -> isPal(proper(X)) proper(isQid(X)) -> isQid(proper(X)) proper(a) -> ok(a) proper(e) -> ok(e) proper(i) -> ok(i) proper(nil) -> ok(nil) proper(o) -> ok(o) proper(tt) -> ok(tt) proper(u) -> ok(u) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) ->Strongly Connected Components: There is no strongly connected component The problem is finite.