  Financial transactions, internet search, and data analysis are all placing
increasing demands on databases. SQL, NoSQL, and NewSQL databases have been
developed to meet these demands and each offers unique benefits. SQL, NoSQL,
and NewSQL databases also rely on different underlying mathematical models.
Polystores seek to provide a mechanism to allow applications to transparently
achieve the benefits of diverse databases while insulating applications from
the details of these databases. Integrating the underlying mathematics of these
diverse databases can be an important enabler for polystores as it enables
effective reasoning across different databases. Associative arrays provide a
common approach for the mathematics of polystores by encompassing the
mathematics found in different databases: sets (SQL), graphs (NoSQL), and
matrices (NewSQL). Prior work presented the SQL relational model in terms of
associative arrays and identified key mathematical properties that are
preserved within SQL. This work provides the rigorous mathematical definitions,
lemmas, and theorems underlying these properties. Specifically, SQL Relational
Algebra deals primarily with relations - multisets of tuples - and operations
on and between these relations. These relations can be modeled as associative
arrays by treating tuples as non-zero rows in an array. Operations in
relational algebra are built as compositions of standard operations on
associative arrays which mirror their matrix counterparts. These constructions
provide insight into how relational algebra can be handled via array
operations. As an example application, the composition of two projection
operations is shown to also be a projection, and the projection of a union is
shown to be equal to the union of the projections.
