A: The empty list.
Q: If the head of a nonempty list satisfies the predicate, what should
filter return?
(Hint: Answer in terms of the head and the tail.)
A: The result of consing the head onto the result of filtering the tail.
Q: If the head of a nonempty list does not satisfy the predicate, what should filter return?
A: The result of filtering the tail.