Now, the denotation is not just a set, so we need to generalize this operation.
the aggregate operation applied to a denotation forms a set out of the tuples in the first column for each setting of the rest of the columns: The aggregate operation takes the set of arrays A and produces two sets of arrays, A and A , which are unioned (note that the stores do not change).