0.00/0.17 YES 0.00/0.17 0.00/0.17 Problem 1: 0.00/0.17 0.00/0.17 (VAR IL L M N V V1 V2) 0.00/0.17 (STRATEGY CONTEXTSENSITIVE 0.00/0.17 (U11 1) 0.00/0.17 (U21 1) 0.00/0.17 (U31 1) 0.00/0.17 (U41 1) 0.00/0.17 (U42 1) 0.00/0.17 (U51 1) 0.00/0.17 (U52 1) 0.00/0.17 (U61 1) 0.00/0.17 (U62 1) 0.00/0.17 (U71 1) 0.00/0.17 (U72 1) 0.00/0.17 (U81 1) 0.00/0.17 (U91 1) 0.00/0.17 (U92 1) 0.00/0.17 (U93 1) 0.00/0.17 (isNat) 0.00/0.17 (isNatIList) 0.00/0.17 (isNatList) 0.00/0.17 (length 1) 0.00/0.17 (take 1 2) 0.00/0.17 (zeros) 0.00/0.17 (0) 0.00/0.17 (cons 1) 0.00/0.17 (nil) 0.00/0.17 (s 1) 0.00/0.17 (tt) 0.00/0.17 ) 0.00/0.17 (RULES 0.00/0.17 U11(tt) -> tt 0.00/0.17 U21(tt) -> tt 0.00/0.17 U31(tt) -> tt 0.00/0.17 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.17 U42(tt) -> tt 0.00/0.17 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.17 U52(tt) -> tt 0.00/0.17 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.17 U62(tt) -> tt 0.00/0.17 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.17 U72(tt,L) -> s(length(L)) 0.00/0.17 U81(tt) -> nil 0.00/0.17 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.17 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.17 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.17 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.17 isNat(0) -> tt 0.00/0.17 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.17 isNatIList(zeros) -> tt 0.00/0.17 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.17 isNatIList(V) -> U31(isNatList(V)) 0.00/0.17 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.17 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.17 isNatList(nil) -> tt 0.00/0.17 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.17 length(nil) -> 0 0.00/0.17 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ) 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 Dependency Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U41#(tt,V2) -> U42#(isNatIList(V2)) 0.00/0.18 U41#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U51#(tt,V2) -> U52#(isNatList(V2)) 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> U62#(isNatIList(V2)) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U71#(tt,L,N) -> U72#(isNat(N),L) 0.00/0.18 U71#(tt,L,N) -> ISNAT(N) 0.00/0.18 U72#(tt,L) -> LENGTH(L) 0.00/0.18 U72#(tt,L) -> L 0.00/0.18 U91#(tt,IL,M,N) -> U92#(isNat(M),IL,M,N) 0.00/0.18 U91#(tt,IL,M,N) -> ISNAT(M) 0.00/0.18 U92#(tt,IL,M,N) -> U93#(isNat(N),IL,M,N) 0.00/0.18 U92#(tt,IL,M,N) -> ISNAT(N) 0.00/0.18 U93#(tt,IL,M,N) -> N 0.00/0.18 ISNAT(length(V1)) -> U11#(isNatList(V1)) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> U21#(isNat(V1)) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> U41#(isNat(V1),V2) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> U31#(isNatList(V)) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 LENGTH(cons(N,L)) -> U71#(isNatList(L),L,N) 0.00/0.18 LENGTH(cons(N,L)) -> ISNATLIST(L) 0.00/0.18 TAKE(0,IL) -> U81#(isNatIList(IL)) 0.00/0.18 TAKE(0,IL) -> ISNATILIST(IL) 0.00/0.18 TAKE(s(M),cons(N,IL)) -> U91#(isNatIList(IL),IL,M,N) 0.00/0.18 TAKE(s(M),cons(N,IL)) -> ISNATILIST(IL) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding Rules: 0.00/0.18 take(M,IL) -> TAKE(M,IL) 0.00/0.18 take(M,x7) -> x7 0.00/0.18 take(x7,IL) -> x7 0.00/0.18 zeros -> ZEROS 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U41#(tt,V2) -> U42#(isNatIList(V2)) 0.00/0.18 U41#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U51#(tt,V2) -> U52#(isNatList(V2)) 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> U62#(isNatIList(V2)) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U71#(tt,L,N) -> U72#(isNat(N),L) 0.00/0.18 U71#(tt,L,N) -> ISNAT(N) 0.00/0.18 U72#(tt,L) -> LENGTH(L) 0.00/0.18 U72#(tt,L) -> L 0.00/0.18 U91#(tt,IL,M,N) -> U92#(isNat(M),IL,M,N) 0.00/0.18 U91#(tt,IL,M,N) -> ISNAT(M) 0.00/0.18 U92#(tt,IL,M,N) -> U93#(isNat(N),IL,M,N) 0.00/0.18 U92#(tt,IL,M,N) -> ISNAT(N) 0.00/0.18 U93#(tt,IL,M,N) -> N 0.00/0.18 ISNAT(length(V1)) -> U11#(isNatList(V1)) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> U21#(isNat(V1)) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> U41#(isNat(V1),V2) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> U31#(isNatList(V)) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 LENGTH(cons(N,L)) -> U71#(isNatList(L),L,N) 0.00/0.18 LENGTH(cons(N,L)) -> ISNATLIST(L) 0.00/0.18 TAKE(0,IL) -> U81#(isNatIList(IL)) 0.00/0.18 TAKE(0,IL) -> ISNATILIST(IL) 0.00/0.18 TAKE(s(M),cons(N,IL)) -> U91#(isNatIList(IL),IL,M,N) 0.00/0.18 TAKE(s(M),cons(N,IL)) -> ISNATILIST(IL) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 take(M,IL) -> TAKE(M,IL) 0.00/0.18 take(M,x7) -> x7 0.00/0.18 take(x7,IL) -> x7 0.00/0.18 zeros -> ZEROS 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 U41#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> U41#(isNat(V1),V2) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ->->-> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->->-> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 U91#(tt,IL,M,N) -> U92#(isNat(M),IL,M,N) 0.00/0.18 U92#(tt,IL,M,N) -> U93#(isNat(N),IL,M,N) 0.00/0.18 U93#(tt,IL,M,N) -> N 0.00/0.18 TAKE(s(M),cons(N,IL)) -> U91#(isNatIList(IL),IL,M,N) 0.00/0.18 ->->-> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->->-> Unhiding rules: 0.00/0.18 take(M,IL) -> TAKE(M,IL) 0.00/0.18 take(M,x7) -> x7 0.00/0.18 take(x7,IL) -> x7 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 U71#(tt,L,N) -> U72#(isNat(N),L) 0.00/0.18 U72#(tt,L) -> LENGTH(L) 0.00/0.18 LENGTH(cons(N,L)) -> U71#(isNatList(L),L,N) 0.00/0.18 ->->-> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->->-> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 0.00/0.18 0.00/0.18 The problem is decomposed in 3 subproblems. 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 Reduction Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U41#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> U41#(isNat(V1),V2) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 -> Usable rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 ->Interpretation type: 0.00/0.18 Linear 0.00/0.18 ->Coefficients: 0.00/0.18 Natural Numbers 0.00/0.18 ->Dimension: 0.00/0.18 1 0.00/0.18 ->Bound: 0.00/0.18 2 0.00/0.18 ->Interpretation: 0.00/0.18 0.00/0.18 [U11](X) = 2 0.00/0.18 [U21](X) = X 0.00/0.18 [U31](X) = 2 0.00/0.18 [U41](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.18 [U42](X) = X + 1 0.00/0.18 [U51](X1,X2) = 2.X1 + X2 + 2 0.00/0.18 [U52](X) = 2 0.00/0.18 [U61](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [U62](X) = 2 0.00/0.18 [isNat](X) = 2 0.00/0.18 [isNatIList](X) = 2.X + 2 0.00/0.18 [isNatList](X) = 2.X + 2 0.00/0.18 [length](X) = 2.X + 2 0.00/0.18 [take](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [zeros] = 2 0.00/0.18 [0] = 2 0.00/0.18 [cons](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [nil] = 1 0.00/0.18 [s](X) = X + 2 0.00/0.18 [tt] = 2 0.00/0.18 [U41#](X1,X2) = 2.X1 + 2.X2 0.00/0.18 [U51#](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [U61#](X1,X2) = 2.X1 + 2.X2 0.00/0.18 [ISNAT](X) = X + 2 0.00/0.18 [ISNATILIST](X) = 2.X + 2 0.00/0.18 [ISNATLIST](X) = 2.X + 2 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> U41#(isNat(V1),V2) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ->->-> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->->-> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 Reduction Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U51#(tt,V2) -> ISNATLIST(V2) 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 -> Usable rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 ->Interpretation type: 0.00/0.18 Linear 0.00/0.18 ->Coefficients: 0.00/0.18 Natural Numbers 0.00/0.18 ->Dimension: 0.00/0.18 1 0.00/0.18 ->Bound: 0.00/0.18 2 0.00/0.18 ->Interpretation: 0.00/0.18 0.00/0.18 [U11](X) = X + 1 0.00/0.18 [U21](X) = 2.X + 2 0.00/0.18 [U31](X) = X 0.00/0.18 [U41](X1,X2) = 2.X2 + 2 0.00/0.18 [U42](X) = 2.X + 2 0.00/0.18 [U51](X1,X2) = X1 + 2.X2 0.00/0.18 [U52](X) = 2.X + 2 0.00/0.18 [U61](X1,X2) = 2.X2 0.00/0.18 [U62](X) = 2.X 0.00/0.18 [isNat](X) = 2.X + 2 0.00/0.18 [isNatIList](X) = X 0.00/0.18 [isNatList](X) = X 0.00/0.18 [length](X) = X + 2 0.00/0.18 [take](X1,X2) = X1 + 2.X2 0.00/0.18 [zeros] = 2 0.00/0.18 [0] = 2 0.00/0.18 [cons](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [nil] = 2 0.00/0.18 [s](X) = 2.X + 2 0.00/0.18 [tt] = 2 0.00/0.18 [U51#](X1,X2) = 2.X1 + 2.X2 0.00/0.18 [U61#](X1,X2) = 2.X2 + 1 0.00/0.18 [ISNAT](X) = 2.X 0.00/0.18 [ISNATILIST](X) = 2.X + 1 0.00/0.18 [ISNATLIST](X) = 2.X + 1 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> U51#(isNat(V1),V2) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ->->-> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->->-> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 SubNColl Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNAT(length(V1)) -> ISNATLIST(V1) 0.00/0.18 ISNAT(s(V1)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 ISNATLIST(take(V1,V2)) -> U61#(isNat(V1),V2) 0.00/0.18 ISNATLIST(take(V1,V2)) -> ISNAT(V1) 0.00/0.18 ISNATLIST(cons(V1,V2)) -> ISNAT(V1) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Projection: 0.00/0.18 pi(U61#) = 2 0.00/0.18 pi(ISNAT) = 1 0.00/0.18 pi(ISNATILIST) = 1 0.00/0.18 pi(ISNATLIST) = 1 0.00/0.18 0.00/0.18 Problem 1.1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U61#(tt,V2) -> ISNATILIST(V2) 0.00/0.18 ISNATILIST(V) -> ISNATLIST(V) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 There is no strongly connected component 0.00/0.18 0.00/0.18 The problem is finite. 0.00/0.18 0.00/0.18 Problem 1.2: 0.00/0.18 0.00/0.18 SubNColl Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U91#(tt,IL,M,N) -> U92#(isNat(M),IL,M,N) 0.00/0.18 U92#(tt,IL,M,N) -> U93#(isNat(N),IL,M,N) 0.00/0.18 U93#(tt,IL,M,N) -> N 0.00/0.18 TAKE(s(M),cons(N,IL)) -> U91#(isNatIList(IL),IL,M,N) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 take(M,IL) -> TAKE(M,IL) 0.00/0.18 take(M,x7) -> x7 0.00/0.18 take(x7,IL) -> x7 0.00/0.18 ->Projection: 0.00/0.18 pi(U91#) = 4 0.00/0.18 pi(U92#) = 4 0.00/0.18 pi(U93#) = 4 0.00/0.18 pi(TAKE) = 2 0.00/0.18 0.00/0.18 Problem 1.2: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U91#(tt,IL,M,N) -> U92#(isNat(M),IL,M,N) 0.00/0.18 U92#(tt,IL,M,N) -> U93#(isNat(N),IL,M,N) 0.00/0.18 U93#(tt,IL,M,N) -> N 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 There is no strongly connected component 0.00/0.18 0.00/0.18 The problem is finite. 0.00/0.18 0.00/0.18 Problem 1.3: 0.00/0.18 0.00/0.18 Reduction Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U71#(tt,L,N) -> U72#(isNat(N),L) 0.00/0.18 U72#(tt,L) -> LENGTH(L) 0.00/0.18 LENGTH(cons(N,L)) -> U71#(isNatList(L),L,N) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 -> Usable rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 ->Interpretation type: 0.00/0.18 Linear 0.00/0.18 ->Coefficients: 0.00/0.18 Natural Numbers 0.00/0.18 ->Dimension: 0.00/0.18 1 0.00/0.18 ->Bound: 0.00/0.18 2 0.00/0.18 ->Interpretation: 0.00/0.18 0.00/0.18 [U11](X) = X 0.00/0.18 [U21](X) = X 0.00/0.18 [U31](X) = 2 0.00/0.18 [U41](X1,X2) = 2 0.00/0.18 [U42](X) = X 0.00/0.18 [U51](X1,X2) = 2.X2 + 1 0.00/0.18 [U52](X) = X 0.00/0.18 [U61](X1,X2) = X1 + 2.X2 0.00/0.18 [U62](X) = 2 0.00/0.18 [U71](X1,X2,X3) = 2.X2 0.00/0.18 [U72](X1,X2) = 2.X2 0.00/0.18 [U81](X) = 2 0.00/0.18 [U91](X1,X2,X3,X4) = 2.X2 + 2.X3 0.00/0.18 [U92](X1,X2,X3,X4) = 2.X2 + 2.X3 0.00/0.18 [U93](X1,X2,X3,X4) = 2.X2 + 2.X3 0.00/0.18 [isNat](X) = 2.X + 1 0.00/0.18 [isNatIList](X) = 2 0.00/0.18 [isNatList](X) = 2.X + 1 0.00/0.18 [length](X) = X 0.00/0.18 [take](X1,X2) = X1 + X2 0.00/0.18 [zeros] = 0 0.00/0.18 [0] = 2 0.00/0.18 [cons](X1,X2) = 2.X2 0.00/0.18 [nil] = 2 0.00/0.18 [s](X) = 2.X 0.00/0.18 [tt] = 2 0.00/0.18 [U71#](X1,X2,X3) = X1 + 2.X2 + 1 0.00/0.18 [U72#](X1,X2) = 2.X2 + 2 0.00/0.18 [LENGTH](X) = 2.X + 2 0.00/0.18 0.00/0.18 Problem 1.3: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 U72#(tt,L) -> LENGTH(L) 0.00/0.18 LENGTH(cons(N,L)) -> U71#(isNatList(L),L,N) 0.00/0.18 -> Rules: 0.00/0.18 U11(tt) -> tt 0.00/0.18 U21(tt) -> tt 0.00/0.18 U31(tt) -> tt 0.00/0.18 U41(tt,V2) -> U42(isNatIList(V2)) 0.00/0.18 U42(tt) -> tt 0.00/0.18 U51(tt,V2) -> U52(isNatList(V2)) 0.00/0.18 U52(tt) -> tt 0.00/0.18 U61(tt,V2) -> U62(isNatIList(V2)) 0.00/0.18 U62(tt) -> tt 0.00/0.18 U71(tt,L,N) -> U72(isNat(N),L) 0.00/0.18 U72(tt,L) -> s(length(L)) 0.00/0.18 U81(tt) -> nil 0.00/0.18 U91(tt,IL,M,N) -> U92(isNat(M),IL,M,N) 0.00/0.18 U92(tt,IL,M,N) -> U93(isNat(N),IL,M,N) 0.00/0.18 U93(tt,IL,M,N) -> cons(N,take(M,IL)) 0.00/0.18 isNat(length(V1)) -> U11(isNatList(V1)) 0.00/0.18 isNat(0) -> tt 0.00/0.18 isNat(s(V1)) -> U21(isNat(V1)) 0.00/0.18 isNatIList(zeros) -> tt 0.00/0.18 isNatIList(cons(V1,V2)) -> U41(isNat(V1),V2) 0.00/0.18 isNatIList(V) -> U31(isNatList(V)) 0.00/0.18 isNatList(take(V1,V2)) -> U61(isNat(V1),V2) 0.00/0.18 isNatList(cons(V1,V2)) -> U51(isNat(V1),V2) 0.00/0.18 isNatList(nil) -> tt 0.00/0.18 length(cons(N,L)) -> U71(isNatList(L),L,N) 0.00/0.18 length(nil) -> 0 0.00/0.18 take(0,IL) -> U81(isNatIList(IL)) 0.00/0.18 take(s(M),cons(N,IL)) -> U91(isNatIList(IL),IL,M,N) 0.00/0.18 zeros -> cons(0,zeros) 0.00/0.18 -> Unhiding rules: 0.00/0.18 Empty 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 There is no strongly connected component 0.00/0.18 0.00/0.18 The problem is finite. 0.00/0.18 EOF