The code now always uses the ordering of rule bodies. When grounding aggregate elements, only the literals preceeding the aggregate are used to ground them. This ensures that all variables are bound if assignment aggregates are used. Furthermore, it might make the intermediate rules to ground elements a bit shorter in some cases. However, it should not affect how typical rules with just one aggregate are grounded.
The code now always uses the ordering of rule bodies. When grounding aggregate elements, only the literals preceeding the aggregate are used to ground them. This ensures that all variables are bound if assignment aggregates are used. Furthermore, it might make the intermediate rules to ground elements a bit shorter in some cases. However, it should not affect how typical rules with just one aggregate are grounded.