We study a logic programming framework with predicates for adequacy and inadequacy, which extend the usual notions of success and failure. This permits to express partial results. In this setting independence of the selection rule does not hold in general. We introduce needed atoms, which are atoms that are resolved in any adequate derivation. It is shown that under certain conditions, we have that whenever there is an adequate derivation there is one in which only needed atoms are selected. Further concrete examples using requests and test annotation are discussed.