Lobsters2 min readintermediate
Relation algebra is not relational algebra
Summary
The post clarifies the long‑standing confusion between *relation algebra* (a mathematical logic framework equivalent to FOL³) and *relational algebra* (Codd’s query language foundation). It outlines their histories, theoretical differences, and recent CS applications such as Alloy and the Prela query language, urging the community to adopt the term “Tarski’s Algebra of Relations” (TAR) to avoid m…
- Relation algebra ≠ relational algebra – they are distinct formal systems with different origins and expressive powers.
- Relational algebra underpins SQL and was introduced by Codd; it is equivalent to domain‑independent relational calculus (first‑order logic).
- Relation algebra is a math‑level algebraic structure (axiomatized) that corresponds to FOL³ and can be extended to full FOL with a fork operator.
- Despite being a pure‑math construct, relation algebra powers tools like the Alloy analyzer and recent query languages (IUGQL, Prela).
Understanding the distinction prevents mis‑labeling in research, tooling, and education, and highlights that relation algebra offers a rich, under‑used foundation for query language design and formal verification.
5/10
