/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR M N V1 V2 X X1 X2) (RULES 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ) Problem 1: Dependency Pairs Processor: -> Pairs: U11#(tt,V1,V2) -> U12#(isNatKind(activate(V1)),activate(V1),activate(V2)) U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U12#(tt,V1,V2) -> U13#(isNatKind(activate(V2)),activate(V1),activate(V2)) U12#(tt,V1,V2) -> ACTIVATE(V1) U12#(tt,V1,V2) -> ACTIVATE(V2) U12#(tt,V1,V2) -> ISNATKIND(activate(V2)) U13#(tt,V1,V2) -> U14#(isNatKind(activate(V2)),activate(V1),activate(V2)) U13#(tt,V1,V2) -> ACTIVATE(V1) U13#(tt,V1,V2) -> ACTIVATE(V2) U13#(tt,V1,V2) -> ISNATKIND(activate(V2)) U14#(tt,V1,V2) -> U15#(isNat(activate(V1)),activate(V2)) U14#(tt,V1,V2) -> ACTIVATE(V1) U14#(tt,V1,V2) -> ACTIVATE(V2) U14#(tt,V1,V2) -> ISNAT(activate(V1)) U15#(tt,V2) -> U16#(isNat(activate(V2))) U15#(tt,V2) -> ACTIVATE(V2) U15#(tt,V2) -> ISNAT(activate(V2)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> U23#(isNat(activate(V1))) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> U32#(isNatKind(activate(V2))) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) U64#(tt,M,N) -> S(plus(activate(N),activate(M))) ACTIVATE(n__0) -> 0# ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ACTIVATE(n__s(X)) -> S(activate(X)) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> U41#(isNatKind(activate(V1))) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: SCC Processor: -> Pairs: U11#(tt,V1,V2) -> U12#(isNatKind(activate(V1)),activate(V1),activate(V2)) U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U12#(tt,V1,V2) -> U13#(isNatKind(activate(V2)),activate(V1),activate(V2)) U12#(tt,V1,V2) -> ACTIVATE(V1) U12#(tt,V1,V2) -> ACTIVATE(V2) U12#(tt,V1,V2) -> ISNATKIND(activate(V2)) U13#(tt,V1,V2) -> U14#(isNatKind(activate(V2)),activate(V1),activate(V2)) U13#(tt,V1,V2) -> ACTIVATE(V1) U13#(tt,V1,V2) -> ACTIVATE(V2) U13#(tt,V1,V2) -> ISNATKIND(activate(V2)) U14#(tt,V1,V2) -> U15#(isNat(activate(V1)),activate(V2)) U14#(tt,V1,V2) -> ACTIVATE(V1) U14#(tt,V1,V2) -> ACTIVATE(V2) U14#(tt,V1,V2) -> ISNAT(activate(V1)) U15#(tt,V2) -> U16#(isNat(activate(V2))) U15#(tt,V2) -> ACTIVATE(V2) U15#(tt,V2) -> ISNAT(activate(V2)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> U23#(isNat(activate(V1))) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> U32#(isNatKind(activate(V2))) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) U64#(tt,M,N) -> S(plus(activate(N),activate(M))) ACTIVATE(n__0) -> 0# ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ACTIVATE(n__s(X)) -> S(activate(X)) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> U41#(isNatKind(activate(V1))) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U11#(tt,V1,V2) -> U12#(isNatKind(activate(V1)),activate(V1),activate(V2)) U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U12#(tt,V1,V2) -> U13#(isNatKind(activate(V2)),activate(V1),activate(V2)) U12#(tt,V1,V2) -> ACTIVATE(V1) U12#(tt,V1,V2) -> ACTIVATE(V2) U12#(tt,V1,V2) -> ISNATKIND(activate(V2)) U13#(tt,V1,V2) -> U14#(isNatKind(activate(V2)),activate(V1),activate(V2)) U13#(tt,V1,V2) -> ACTIVATE(V1) U13#(tt,V1,V2) -> ACTIVATE(V2) U13#(tt,V1,V2) -> ISNATKIND(activate(V2)) U14#(tt,V1,V2) -> U15#(isNat(activate(V1)),activate(V2)) U14#(tt,V1,V2) -> ACTIVATE(V1) U14#(tt,V1,V2) -> ACTIVATE(V2) U14#(tt,V1,V2) -> ISNAT(activate(V1)) U15#(tt,V2) -> ACTIVATE(V2) U15#(tt,V2) -> ISNAT(activate(V2)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U11#(tt,V1,V2) -> U12#(isNatKind(activate(V1)),activate(V1),activate(V2)) U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U12#(tt,V1,V2) -> U13#(isNatKind(activate(V2)),activate(V1),activate(V2)) U12#(tt,V1,V2) -> ACTIVATE(V1) U12#(tt,V1,V2) -> ACTIVATE(V2) U12#(tt,V1,V2) -> ISNATKIND(activate(V2)) U13#(tt,V1,V2) -> U14#(isNatKind(activate(V2)),activate(V1),activate(V2)) U13#(tt,V1,V2) -> ACTIVATE(V1) U13#(tt,V1,V2) -> ACTIVATE(V2) U13#(tt,V1,V2) -> ISNATKIND(activate(V2)) U14#(tt,V1,V2) -> U15#(isNat(activate(V1)),activate(V2)) U14#(tt,V1,V2) -> ACTIVATE(V1) U14#(tt,V1,V2) -> ACTIVATE(V2) U14#(tt,V1,V2) -> ISNAT(activate(V1)) U15#(tt,V2) -> ACTIVATE(V2) U15#(tt,V2) -> ISNAT(activate(V2)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X1 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X3 + 2 [U14](X1,X2,X3) = 2.X3 + 2 [U15](X1,X2) = 2.X2 + 2 [U16](X) = X [U21](X1,X2) = X1 + X2 [U22](X1,X2) = X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 [U32](X) = 2 [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 [s](X) = X + 2 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 [n__s](X) = X + 2 [tt] = 2 [U11#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U13#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U14#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U15#](X1,X2) = 2.X2 + 2 [U21#](X1,X2) = 2.X2 + 2 [U22#](X1,X2) = 2.X2 + 2 [U31#](X1,X2) = 2.X1 + 2.X2 + 2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 1 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 1 Problem 1: SCC Processor: -> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U12#(tt,V1,V2) -> U13#(isNatKind(activate(V2)),activate(V1),activate(V2)) U12#(tt,V1,V2) -> ACTIVATE(V1) U12#(tt,V1,V2) -> ACTIVATE(V2) U12#(tt,V1,V2) -> ISNATKIND(activate(V2)) U13#(tt,V1,V2) -> U14#(isNatKind(activate(V2)),activate(V1),activate(V2)) U13#(tt,V1,V2) -> ACTIVATE(V1) U13#(tt,V1,V2) -> ACTIVATE(V2) U13#(tt,V1,V2) -> ISNATKIND(activate(V2)) U14#(tt,V1,V2) -> U15#(isNat(activate(V1)),activate(V2)) U14#(tt,V1,V2) -> ACTIVATE(V1) U14#(tt,V1,V2) -> ACTIVATE(V2) U14#(tt,V1,V2) -> ISNAT(activate(V1)) U15#(tt,V2) -> ACTIVATE(V2) U15#(tt,V2) -> ISNAT(activate(V2)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V1) U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 0 [U11](X1,X2,X3) = 2.X1 + X2 + X3 + 2 [U12](X1,X2,X3) = 2.X1 + X2 + 2 [U13](X1,X2,X3) = 2.X1 + X2 + 2 [U14](X1,X2,X3) = 2.X1 + X2 + 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + 2.X2 [U22](X1,X2) = 2.X2 + 2 [U23](X) = 2 [U31](X1,X2) = 2 [U32](X) = 2 [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = X1 + 2.X2 + 2.X3 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = X1 + 2.X2 + 2.X3 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = 2 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 0 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U11#](X1,X2,X3) = 2.X1 + X2 + 2.X3 + 2 [U21#](X1,X2) = 2.X2 + 2 [U22#](X1,X2) = 2.X2 + 2 [U31#](X1,X2) = 2.X2 + 2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = X1 + X2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = X1 + 2.X2 + 2.X3 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = X + 2 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U11#(tt,V1,V2) -> ACTIVATE(V2) U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U14](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U15](X1,X2) = 2.X1 + 2.X2 + 2 [U16](X) = 2.X + 2 [U21](X1,X2) = X2 [U22](X1,X2) = X2 [U23](X) = X [U31](X1,X2) = 1 [U32](X) = 1 [U41](X) = 2 [U51](X1,X2) = X1 + X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = X [isNatKind](X) = 2 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 0 [U11#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U21#](X1,X2) = 2.X2 + 2 [U22#](X1,X2) = 2.X2 + 2 [U31#](X1,X2) = 2.X1 + 2.X2 + 1 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 1 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 1 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U11#(tt,V1,V2) -> ISNATKIND(activate(V1)) U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2 [U12](X1,X2,X3) = 2 [U13](X1,X2,X3) = 2 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = X [U21](X1,X2) = 2 [U22](X1,X2) = 2 [U23](X) = X [U31](X1,X2) = X1 + 2.X2 + 2 [U32](X) = 2.X [U41](X) = X [U51](X1,X2) = 2.X1 + 2.X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2 [isNatKind](X) = X + 2 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U11#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 [U21#](X1,X2) = 2.X2 + 2 [U22#](X1,X2) = 2.X2 + 2 [U31#](X1,X2) = 2.X1 + 2.X2 + 2 [U51#](X1,X2) = 2.X1 + 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 2 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> U11#(isNatKind(activate(V1)),activate(V1),activate(V2)) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U21#(tt,V1) -> U22#(isNatKind(activate(V1)),activate(V1)) U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + 2.X3 + 2 [U13](X1,X2,X3) = X1 + 2 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + 2 [U22](X1,X2) = 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 [U32](X) = X + 2 [U41](X) = X + 2 [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = X2 + 2.X3 + 2 [U62](X1,X2,X3) = X2 + 2.X3 + 2 [U63](X1,X2,X3) = X2 + 2.X3 + 2 [U64](X1,X2,X3) = X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = 2.X + 2 [plus](X1,X2) = 2.X1 + X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U21#](X1,X2) = 2.X2 + 2 [U22#](X1,X2) = 2.X2 + 1 [U31#](X1,X2) = 2.X1 + 2.X2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X [ISNAT](X) = 2.X + 1 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U22#(tt,V1) -> ACTIVATE(V1) U22#(tt,V1) -> ISNAT(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U21#(tt,V1) -> ACTIVATE(V1) U21#(tt,V1) -> ISNATKIND(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 2 [U13](X1,X2,X3) = X2 + 2.X3 + 2 [U14](X1,X2,X3) = 2.X1 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + X2 + 1 [U22](X1,X2) = X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X2 + 2 [U32](X) = 2.X [U41](X) = 2 [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = 2.X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X + 1 [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U21#](X1,X2) = 2.X2 + 2 [U31#](X1,X2) = X1 + 2.X2 + 1 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U21#(tt,V1) -> ISNATKIND(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U21#(tt,V1) -> ISNATKIND(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U21#(tt,V1) -> ISNATKIND(activate(V1)) U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 [U12](X1,X2,X3) = 2.X1 + 2.X2 [U13](X1,X2,X3) = X1 + 2.X2 + 2 [U14](X1,X2,X3) = X1 + X2 + 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + 2.X2 + 1 [U22](X1,X2) = X1 + 2.X2 + 1 [U23](X) = X + 1 [U31](X1,X2) = 2 [U32](X) = X [U41](X) = X [U51](X1,X2) = 2.X2 [U52](X1,X2) = 2.X2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = 2 [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U21#](X1,X2) = X1 + 2.X2 + 1 [U31#](X1,X2) = X1 + 2.X2 + 2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 2 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> Pairs: U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> U21#(isNatKind(activate(V1)),activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U31#(tt,V2) -> ACTIVATE(V2) U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X3 + 1 [U13](X1,X2,X3) = X1 + 1 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = 2.X2 + 2 [U22](X1,X2) = X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 2 [U32](X) = X [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = 2.X [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U31#](X1,X2) = 2.X1 + 2.X2 + 2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 2 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U31#(tt,V2) -> ISNATKIND(activate(V2)) U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 0 [U11](X1,X2,X3) = 2.X1 + 2 [U12](X1,X2,X3) = 2.X1 + 2 [U13](X1,X2,X3) = 2.X1 + 2 [U14](X1,X2,X3) = 2.X1 + 2 [U15](X1,X2) = 2 [U16](X) = 1 [U21](X1,X2) = 1 [U22](X1,X2) = 2.X1 + 1 [U23](X) = 1 [U31](X1,X2) = 2.X1 [U32](X) = X [U41](X) = 2.X [U51](X1,X2) = X1 + 2.X2 [U52](X1,X2) = 2.X2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2 [isNatKind](X) = 0 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 0 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 0 [U31#](X1,X2) = 2.X2 + 2 [U51#](X1,X2) = 2.X2 + 1 [U52#](X1,X2) = X2 + 1 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [ACTIVATE](X) = X + 1 [ISNAT](X) = X + 2 [ISNATKIND](X) = X + 1 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> U31#(isNatKind(activate(V1)),activate(V2)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U51#(tt,N) -> U52#(isNatKind(activate(N)),activate(N)) U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X1 + 2.X3 + 2 [U13](X1,X2,X3) = X1 + X3 + 2 [U14](X1,X2,X3) = X1 + 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = 2.X2 + 2 [U22](X1,X2) = X1 + X2 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 [U32](X) = 2 [U41](X) = X [U51](X1,X2) = X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U51#](X1,X2) = 2.X2 + 2 [U52#](X1,X2) = 2.X2 + 1 [U61#](X1,X2,X3) = 2.X2 + 2.X3 [U62#](X1,X2,X3) = 2.X2 + 2.X3 [U63#](X1,X2,X3) = 2.X2 + 2.X3 [U64#](X1,X2,X3) = 2.X2 + 2.X3 [ACTIVATE](X) = 2.X [ISNAT](X) = 2.X [ISNATKIND](X) = 2.X [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> Pairs: U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U52#(tt,N) -> ACTIVATE(N) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U51#(tt,N) -> ACTIVATE(N) U51#(tt,N) -> ISNATKIND(activate(N)) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 1 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 2 [U13](X1,X2,X3) = X1 + X2 + X3 + 2 [U14](X1,X2,X3) = X1 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = 2.X2 + 2 [U22](X1,X2) = X1 + X2 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 2 [U32](X) = 2.X [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U51#](X1,X2) = 2.X2 + 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 1 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U51#(tt,N) -> ISNATKIND(activate(N)) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U51#(tt,N) -> ISNATKIND(activate(N)) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U51#(tt,N) -> ISNATKIND(activate(N)) U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 1 [U13](X1,X2,X3) = X2 + 2.X3 + 2 [U14](X1,X2,X3) = X2 + 2.X3 + 2 [U15](X1,X2) = X1 + 2.X2 + 1 [U16](X) = 2.X + 1 [U21](X1,X2) = X1 + 1 [U22](X1,X2) = 2 [U23](X) = 2 [U31](X1,X2) = 2.X2 + 2 [U32](X) = 2.X [U41](X) = 2 [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = X + 1 [isNatKind](X) = X + 1 [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U51#](X1,X2) = X1 + X2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 1 [ACTIVATE](X) = X + 1 [ISNAT](X) = 2.X + 1 [ISNATKIND](X) = X + 1 [PLUS](X1,X2) = 2.X1 + 2.X2 + 1 Problem 1: SCC Processor: -> Pairs: U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> U51#(isNat(N),N) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U61#(tt,M,N) -> U62#(isNatKind(activate(M)),activate(M),activate(N)) U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X1 + 2.X2 [U14](X1,X2,X3) = X2 + 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = 2.X2 + 2 [U22](X1,X2) = 2.X1 [U23](X) = 2 [U31](X1,X2) = 2.X2 + 2 [U32](X) = 2 [U41](X) = 2 [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 1 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X + 1 [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62#](X1,X2,X3) = 2.X2 + 2.X3 + 1 [U63#](X1,X2,X3) = 2.X2 + 2.X3 + 1 [U64#](X1,X2,X3) = 2.X2 + 2.X3 + 1 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 1 [ISNATKIND](X) = 2.X [PLUS](X1,X2) = 2.X1 + 2.X2 + 1 Problem 1: SCC Processor: -> Pairs: U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) U62#(tt,M,N) -> U63#(isNat(activate(N)),activate(M),activate(N)) U62#(tt,M,N) -> ACTIVATE(M) U62#(tt,M,N) -> ACTIVATE(N) U62#(tt,M,N) -> ISNAT(activate(N)) U63#(tt,M,N) -> U64#(isNatKind(activate(N)),activate(M),activate(N)) U63#(tt,M,N) -> ACTIVATE(M) U63#(tt,M,N) -> ACTIVATE(N) U63#(tt,M,N) -> ISNATKIND(activate(N)) U64#(tt,M,N) -> ACTIVATE(M) U64#(tt,M,N) -> ACTIVATE(N) U64#(tt,M,N) -> PLUS(activate(N),activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U61#(tt,M,N) -> ACTIVATE(M) U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X1 + 2.X3 + 1 [U13](X1,X2,X3) = 2.X1 + 2 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = 2.X2 + 2 [U22](X1,X2) = 2.X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 2 [U32](X) = 2.X + 2 [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 1 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U61#(tt,M,N) -> ACTIVATE(N) U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X3 + 2 [U14](X1,X2,X3) = X1 + X3 + 1 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + X2 + 1 [U22](X1,X2) = X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 1 [U32](X) = 2.X + 2 [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 1 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X + 1 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X + 1 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: U61#(tt,M,N) -> ISNATKIND(activate(M)) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 1 [U12](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U13](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U14](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U15](X1,X2) = X1 + 2.X2 + 2 [U16](X) = X + 2 [U21](X1,X2) = 2.X2 + 1 [U22](X1,X2) = 2.X2 + 1 [U23](X) = X [U31](X1,X2) = 2 [U32](X) = 2 [U41](X) = X [U51](X1,X2) = X2 + 2 [U52](X1,X2) = X1 + X2 [U61](X1,X2,X3) = 2.X2 + X3 + 2 [U62](X1,X2,X3) = 2.X2 + X3 + 2 [U63](X1,X2,X3) = 2.X2 + X3 + 2 [U64](X1,X2,X3) = X1 + 2.X2 + X3 [activate](X) = X [isNat](X) = 2.X + 1 [isNatKind](X) = 2 [plus](X1,X2) = X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 [ACTIVATE](X) = 2.X [ISNAT](X) = 2.X [ISNATKIND](X) = 2.X [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> U61#(isNat(M),M,N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X1) ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X1 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X1 + 2 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + X2 + 2 [U22](X1,X2) = X1 + 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 2 [U32](X) = 2.X + 1 [U41](X) = X [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = X1 + X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [ACTIVATE](X) = X + 2 [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> ACTIVATE(X2) ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 2 [U13](X1,X2,X3) = X2 + 2.X3 + 2 [U14](X1,X2,X3) = X1 + X2 + X3 + 1 [U15](X1,X2) = X1 + X2 + 2 [U16](X) = X + 2 [U21](X1,X2) = X1 + 2 [U22](X1,X2) = 2 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 1 [U32](X) = 2.X + 2 [U41](X) = X + 1 [U51](X1,X2) = X1 + X2 + 2 [U52](X1,X2) = X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = X + 1 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [ACTIVATE](X) = 2.X [ISNAT](X) = 2.X + 2 [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1: Reduction Pair Processor: -> Pairs: ACTIVATE(n__plus(X1,X2)) -> PLUS(activate(X1),activate(X2)) ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = X1 + X2 + 2.X3 + 1 [U13](X1,X2,X3) = X1 + X2 + X3 + 2 [U14](X1,X2,X3) = X1 + X2 + 2 [U15](X1,X2) = 2 [U16](X) = 2 [U21](X1,X2) = X1 + X2 [U22](X1,X2) = X1 + 1 [U23](X) = 2 [U31](X1,X2) = X1 + 2.X2 + 1 [U32](X) = 2.X [U41](X) = 2 [U51](X1,X2) = 2.X2 + 2 [U52](X1,X2) = 2.X2 + 2 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2.X + 2 [isNatKind](X) = X + 1 [plus](X1,X2) = 2.X1 + 2.X2 + 1 [s](X) = X + 1 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 1 [n__s](X) = X + 1 [tt] = 2 [ACTIVATE](X) = X + 2 [ISNAT](X) = 2.X [ISNATKIND](X) = 2.X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 Problem 1: SCC Processor: -> Pairs: ACTIVATE(n__s(X)) -> ACTIVATE(X) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V1) ISNAT(n__plus(V1,V2)) -> ACTIVATE(V2) ISNAT(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNAT(n__s(V1)) -> ACTIVATE(V1) ISNAT(n__s(V1)) -> ISNATKIND(activate(V1)) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V1) ISNATKIND(n__plus(V1,V2)) -> ACTIVATE(V2) ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ACTIVATE(V1) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) PLUS(N,0) -> ISNAT(N) PLUS(N,s(M)) -> ISNAT(M) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVATE(n__s(X)) -> ACTIVATE(X) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->->Cycle: ->->-> Pairs: ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) The problem is decomposed in 2 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ACTIVATE(n__s(X)) -> ACTIVATE(X) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Projection: pi(ACTIVATE) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Reduction Pair Processor: -> Pairs: ISNATKIND(n__plus(V1,V2)) -> ISNATKIND(activate(V1)) ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U12](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U13](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U14](X1,X2,X3) = X1 + 2.X2 + X3 + 2 [U15](X1,X2) = 2.X1 + X2 + 2 [U16](X) = X + 2 [U21](X1,X2) = X2 + 1 [U22](X1,X2) = X1 + 1 [U23](X) = 2 [U31](X1,X2) = 2.X1 + 2.X2 + 2 [U32](X) = X + 2 [U41](X) = X [U51](X1,X2) = X1 + X2 + 2 [U52](X1,X2) = X2 + 1 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U62](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = X + 1 [isNatKind](X) = X [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X [tt] = 2 [ISNATKIND](X) = 2.X Problem 1.2: SCC Processor: -> Pairs: ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) ->->-> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) Problem 1.2: Reduction Pair Processor: -> Pairs: ISNATKIND(n__s(V1)) -> ISNATKIND(activate(V1)) -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) -> Usable rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [0] = 2 [U11](X1,X2,X3) = X1 [U12](X1,X2,X3) = 2 [U13](X1,X2,X3) = X1 [U14](X1,X2,X3) = 2 [U15](X1,X2) = 2 [U16](X) = X [U21](X1,X2) = X1 [U22](X1,X2) = X1 [U23](X) = X [U31](X1,X2) = 2 [U32](X) = 2 [U41](X) = 2 [U51](X1,X2) = 2.X1 + X2 + 2 [U52](X1,X2) = 2.X1 + X2 + 2 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 [U62](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U63](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [U64](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 [activate](X) = X [isNat](X) = 2 [isNatKind](X) = 2 [plus](X1,X2) = 2.X1 + 2.X2 + 2 [s](X) = X + 2 [n__0] = 2 [n__plus](X1,X2) = 2.X1 + 2.X2 + 2 [n__s](X) = X + 2 [tt] = 2 [ISNATKIND](X) = 2.X Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: 0 -> n__0 U11(tt,V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) U12(tt,V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) U13(tt,V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) U14(tt,V1,V2) -> U15(isNat(activate(V1)),activate(V2)) U15(tt,V2) -> U16(isNat(activate(V2))) U16(tt) -> tt U21(tt,V1) -> U22(isNatKind(activate(V1)),activate(V1)) U22(tt,V1) -> U23(isNat(activate(V1))) U23(tt) -> tt U31(tt,V2) -> U32(isNatKind(activate(V2))) U32(tt) -> tt U41(tt) -> tt U51(tt,N) -> U52(isNatKind(activate(N)),activate(N)) U52(tt,N) -> activate(N) U61(tt,M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) U62(tt,M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) U63(tt,M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) U64(tt,M,N) -> s(plus(activate(N),activate(M))) activate(n__0) -> 0 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) activate(n__s(X)) -> s(activate(X)) activate(X) -> X isNat(n__0) -> tt isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) isNatKind(n__0) -> tt isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) plus(N,0) -> U51(isNat(N),N) plus(N,s(M)) -> U61(isNat(M),M,N) plus(X1,X2) -> n__plus(X1,X2) s(X) -> n__s(X) ->Strongly Connected Components: There is no strongly connected component The problem is finite.