π€ AI Summary
This work addresses the challenge of efficiently expressing and executing user-defined graph algorithms in graph databases by proposing a solution grounded in the formal matrix language MATLANG. The authors extend MATLANG to construct GraphAlg Core, serving as an intermediate representation for the graph algorithm language GraphAlg, and provide the first rigorous proof that its core fragment can be effectively simulated by for-MATLANGβan extension of MATLANG supporting synchronous iteration. This study establishes a formal theoretical connection between high-level graph algorithm languages and matrix-based computation, offering a solid foundation for compiling and executing graph algorithms within database systems. By doing so, it advances the practical adoption of domain-specific languages (DSLs) in graph processing and contributes to the formal underpinnings of graph query and algorithm evaluation.
π Abstract
The GraphAlg domain-specific language for graph algorithms enables user-defined algorithms in graph databases. In this work we show how GraphAlg is built on top of the formal MATLANG language for matrix manipulation. Starting from MATLANG, we describe the extensions to MATLANG needed to derive GraphAlg Core, a simplified version of GraphAlg that is used as the internal representation in the GraphAlg compiler. Furthermore, we prove that any GraphAlg Core expression can be simulated in an extension of for-MATLANG that supports simultaneous induction.