MAYBE
MAYBE
TRS:
 {
          mark(cons(X1, X2)) -> cons(mark(X1), X2),
               mark(from(X)) -> a__from(mark(X)),
                  mark(s(X)) -> s(mark(X)),
                 mark(nil()) -> nil(),
                   mark(0()) -> 0(),
         mark(first(X1, X2)) -> a__first(mark(X1), mark(X2)),
           mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)),
                  a__from(X) -> cons(mark(X), from(s(X))),
                  a__from(X) -> from(X),
            a__first(X1, X2) -> first(X1, X2),
  a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)),
            a__first(0(), Z) -> nil(),
              a__sel(X1, X2) -> sel(X1, X2),
    a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)),
     a__sel(0(), cons(X, Z)) -> mark(X)
 }
 DUP: We consider a duplicating system.
  Trs:
   {
            mark(cons(X1, X2)) -> cons(mark(X1), X2),
                 mark(from(X)) -> a__from(mark(X)),
                    mark(s(X)) -> s(mark(X)),
                   mark(nil()) -> nil(),
                     mark(0()) -> 0(),
           mark(first(X1, X2)) -> a__first(mark(X1), mark(X2)),
             mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)),
                    a__from(X) -> cons(mark(X), from(s(X))),
                    a__from(X) -> from(X),
              a__first(X1, X2) -> first(X1, X2),
    a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)),
              a__first(0(), Z) -> nil(),
                a__sel(X1, X2) -> sel(X1, X2),
      a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)),
       a__sel(0(), cons(X, Z)) -> mark(X)
   }
  Fail