TRS:
{ rev1(0(), nil()) -> 0(),
rev1(s(X), nil()) -> s(X),
rev1(X, cons(Y, L)) -> rev1(Y, L),
rev(nil()) -> nil(),
rev(cons(X, L)) -> cons(rev1(X, L), rev2(X, L)),
rev2(X, nil()) -> nil(),
rev2(X, cons(Y, L)) -> rev(cons(X, rev(rev2(Y, L))))}
Fail