MAYBE MAYBE TRS: { app(app(plus(), app(s(), x)), y) -> app(s(), app(app(plus(), x), y)), app(app(plus(), 0()), y) -> y, app(app(sumwith(), f), app(app(cons(), x), xs)) -> app(app(plus(), app(f, x)), app(app(sumwith(), f), xs)), app(app(sumwith(), f), nil()) -> nil() } DUP: We consider a duplicating system. Trs: { app(app(plus(), app(s(), x)), y) -> app(s(), app(app(plus(), x), y)), app(app(plus(), 0()), y) -> y, app(app(sumwith(), f), app(app(cons(), x), xs)) -> app(app(plus(), app(f, x)), app(app(sumwith(), f), xs)), app(app(sumwith(), f), nil()) -> nil() } Fail