Patent Document ID: 9015193
Application ID: 14292581
Patent Flag: 1

Claim One:
1. A system comprising: one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising: receiving program input specifying an aggregation function agg having an input type and an output type, a relation s that has a domain and a range, wherein s represents one or more entities to be aggregated over, and a relation t that is a relation from the range of s to the input type of the aggregation function agg; evaluating an aggregation construct agg* to calculate a relation between the domain of s and the output type of the agg function according to 
 agg*( s,t )={( m ,agg( n ))|∃ d :( m,d )ε s,nεπ{|t ( y )| yεs ( m )|}} wherein agg* returns a relation and is monotonic in the relation t; receiving program input in which the aggregation construct agg* is within a recursive term of a recursive relation definition; and evaluating the recursive relation definition.