Evan Patterson ; Owen Lynch ; James Fairbanks - Categorical Data Structures for Technical Computing

compositionality:13519 - Compositionality, December 28, 2022, Volume 4 (2022) - https://doi.org/10.32408/compositionality-4-5
Categorical Data Structures for Technical ComputingArticle

Authors: Evan Patterson 1; Owen Lynch 2; James Fairbanks 3

  • 1 Topos Institute, California, USA
  • 2 Universiteit Utrecht, Mathematics Department, Utrecht, The Netherlands
  • 3 University of Florida, Computer & Information Science & Engineering, Florida, USA

Many mathematical objects can be represented as functors from finitely-presented categories $\mathsf{C}$ to $\mathsf{Set}$. For instance, graphs are functors to $\mathsf{Set}$ from the category with two parallel arrows. Such functors are known informally as $\mathsf{C}$-sets. In this paper, we describe and implement an extension of $\mathsf{C}$-sets having data attributes with fixed types, such as graphs with labeled vertices or real-valued edge weights. We call such structures "acsets," short for "attributed $\mathsf{C}$-sets." Derived from previous work on algebraic databases, acsets are a joint generalization of graphs and data frames. They also encompass more elaborate graph-like objects such as wiring diagrams and Petri nets with rate constants. We develop the mathematical theory of acsets and then describe a generic implementation in the Julia programming language, which uses advanced language features to achieve performance comparable with specialized data structures.


Volume: Volume 4 (2022)
Published on: December 28, 2022
Imported on: May 2, 2024
Keywords: Mathematics - Category Theory,Computer Science - Databases,Computer Science - Logic in Computer Science

6 Documents citing this article

Consultation statistics

This page has been seen 744 times.
This article's PDF has been downloaded 215 times.