Set-grouping and aggregation are powerful non-monotonic operations of practical interest in database query languages. We consider the problem of expressing aggregation via negation as failure (NF). We study this problem in the framework of partial-order clauses introduced in [JOM95]. We show a translation of partial-order programs to normal programs that is very natural: Any costmonotonic partial-order program P becomes a stratified normal program transl(P) such that the declarative semantics of P is equivalent to the stratified semantics of transl(P). The ability to effect such a translation is significant because the resulting normal programs do not make any explicit use of the aggregation capability, yet they are concise and intuitive. The success of this translation is due to the fact that the translated program is a stratified normal program. That would not be the case for other more general classes of programs than cost-monotonic partial-order programs. We therefore investigate a second (and more natural) translation that does not require the translated programs to be stratified, but requires the use of a suitable NF strategy. The class of normal programs originating from this translation is itself interesting. Every program in this class has a clear intended total model, although these programs are in general not stratified and not even call-consistent and do not have a stable model. The partial model given by the well-founded semantics is consistent with the intended total model and the extended well founded semantics WFS+ indeed defines the intended model. Since there is a well-defined and efficient operational semantics for partial-order programs [JOM95, JM95] we conclude that the gap between expression of a problem and computing its solution can be reduced with the right level of notation.