(VAR p x xs) (RULES app(app(and, true), true) -> true app(app(and, true), false) -> false app(app(and, false), true) -> false app(app(and, false), false) -> false app(app(or, true), true) -> true app(app(or, true), false) -> true app(app(or, false), true) -> true app(app(or, false), false) -> false app(app(forall, p), nil) -> true app(app(forall, p), app(app(cons, x), xs)) -> app(app(and, app(p, x)), app(app(forall, p), xs)) app(app(forsome, p), nil) -> false app(app(forsome, p), app(app(cons, x), xs)) -> app(app(or, app(p, x)), app(app(forsome, p), xs)) )