MAYBE Time: 0.003159 TRS: { zeros() -> cons(0(), n__zeros()), zeros() -> n__zeros(), activate X -> X, activate n__zeros() -> zeros(), activate n__take(X1, X2) -> take(X1, X2), and(tt(), X) -> activate X, length cons(N, L) -> s length activate L, length nil() -> 0(), take(X1, X2) -> n__take(X1, X2), take(0(), IL) -> nil(), take(s M, cons(N, IL)) -> cons(N, n__take(M, activate IL))} DP: DP: { activate# n__zeros() -> zeros#(), activate# n__take(X1, X2) -> take#(X1, X2), and#(tt(), X) -> activate# X, length# cons(N, L) -> activate# L, length# cons(N, L) -> length# activate L, take#(s M, cons(N, IL)) -> activate# IL} TRS: { zeros() -> cons(0(), n__zeros()), zeros() -> n__zeros(), activate X -> X, activate n__zeros() -> zeros(), activate n__take(X1, X2) -> take(X1, X2), and(tt(), X) -> activate X, length cons(N, L) -> s length activate L, length nil() -> 0(), take(X1, X2) -> n__take(X1, X2), take(0(), IL) -> nil(), take(s M, cons(N, IL)) -> cons(N, n__take(M, activate IL))} UR: { zeros() -> cons(0(), n__zeros()), zeros() -> n__zeros(), activate X -> X, activate n__zeros() -> zeros(), activate n__take(X1, X2) -> take(X1, X2), take(X1, X2) -> n__take(X1, X2), take(0(), IL) -> nil(), take(s M, cons(N, IL)) -> cons(N, n__take(M, activate IL))} EDG: {(and#(tt(), X) -> activate# X, activate# n__zeros() -> zeros#()) (length# cons(N, L) -> length# activate L, length# cons(N, L) -> length# activate L) (length# cons(N, L) -> length# activate L, length# cons(N, L) -> activate# L) (take#(s M, cons(N, IL)) -> activate# IL, activate# n__zeros() -> zeros#()) (length# cons(N, L) -> activate# L, activate# n__zeros() -> zeros#())} STATUS: arrows: 0.861111 SCCS (1): Scc: {length# cons(N, L) -> length# activate L} SCC (1): Strict: {length# cons(N, L) -> length# activate L} Weak: { zeros() -> cons(0(), n__zeros()), zeros() -> n__zeros(), activate X -> X, activate n__zeros() -> zeros(), activate n__take(X1, X2) -> take(X1, X2), and(tt(), X) -> activate X, length cons(N, L) -> s length activate L, length nil() -> 0(), take(X1, X2) -> n__take(X1, X2), take(0(), IL) -> nil(), take(s M, cons(N, IL)) -> cons(N, n__take(M, activate IL))} Open