1. PostgreSQL 16 Documentation, Chapter 9: Functions and Operators, Section 9.21: Aggregate Functions. The documentation states, "Aggregate functions compute a single result from a set of input values." This directly supports the definition that they operate over a set of rows.
2. Oracle Database SQL Language Reference, 23c, Chapter 7: SQL Functions, "Aggregate Functions". The official documentation explains, "Aggregate functions return a single result row based on groups of rows, rather than on single rows." This confirms that their purpose is to compute a value over a set of rows.
3. Silberschatz, A., Korth, H. F., & Sudarshan, S. (2020). Database System Concepts (7th ed.). McGraw-Hill. Chapter 4, "Intermediate SQL", Section 4.1 "Aggregate Functions", p. 135. The text introduces aggregate functions by stating they "take a collection (a set or multiset) of values as input and return a single value."