vix.ing · top · new · best · stats · spec

The EDGE Language: Extended General Einsums for Graph Algorithms

2024/04/17 by Toluwanimi O. Odemuyiwa, Serban D. Porumbescu, Porumbescu, Serban D. +10 · 5 citations
Computer Science · #Distributed and Parallel Computing Systems #Graph Theory and Algorithms #Model-Driven Software Engineering Techniques #cs.DS #cs.PL

paper · pdf · doi:10.48550/arxiv.2404.11591

openalex publication_date 2024/04/17 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

In this work, we propose a unified abstraction for graph algorithms: the Extended General Einsums language, or EDGE. The EDGE language expresses graph algorithms in the language of tensor algebra, providing a rigorous, succinct, and expressive mathematical framework. EDGE leverages two ideas: (1) the well-known foundations provided by the graph-matrix duality, where a graph is simply a 2D tensor, and (2) the power and expressivity of Einsum notation in the tensor algebra world. In this work, we describe our design goals for EDGE and walk through the extensions we add to Einsums to support more complex operations common in graph algorithms. Additionally, we provide a few examples of how to express graph algorithms in our proposed notation. We hope that a single, mathematical notation for graph algorithms will (1) allow researchers to more easily compare different algorithms and different implementations of a graph algorithm; (2) enable developers to factor complexity by separating the concerns of what to compute (described with the extended Einsum notation) from the lower level details of how to compute; and (3) enable the discovery of different algorithmic variants of a problem through algebraic manipulations and transformations on a given EDGE expression.

Cited by

Related