James Fairbanks

CT
h-index3
6papers
14citations
Novelty44%
AI Score37

6 Papers

59.1CTMay 22
A Parameterized Algorithm for Testing whether the Limit of a Diagram is Empty

Ernst Althaus, Benjamin Merlin Bumpus, James Fairbanks et al.

A limit of a (small) diagram $d : J \to E$ in a complete category $E$ can be thought of as specifying a set of equations involving the objects of $E$. To motivate this intuitively, one can think of each object $d(j)$ as a "variable" and each morphism in $J$ as a "constraint" connecting these variables. If $E$ has an initial object, a natural question arises: does our set of equations have any solution at all? Equivalently, we can ask: is the limit of $d$ initial? In this paper we consider the computational problem that, given finite diagram $d$ in a finitely complete category $E$, asks whether its limit is empty. We construct a fast algorithm (in the sense of parameterized complexity theory) that solves this problem when $E$ is of the form $\mathbf{FinSet}^{J}$ for a finite category $J$ and $d$ is a structured co-decomposition, i.e. a diagram arising from the opposite of the Grothendieck construction of a simple graph.

CTMar 25, 2025
Towards a Unified Theory of Time-Varying Data

Benjamin Merlin Bumpus, James Fairbanks, Martti Karvonen et al.

What is a time-varying graph, a time-varying topological space, or, more generally, a mathematical structure that evolves over time? In this work, we lay the foundations for a general theory of temporal data by introducing categories of narratives. These are sheaves on posets of time intervals that encode snapshots of a temporal object along with the relationships between them. This theory satisfies five desiderata distilled from the burgeoning field of time-varying graphs: (D1) it defines both time-varying objects and their morphisms; (D2) it distinguishes between cumulative and persistent interpretations and provides principled methods for transitioning between them; (D3) it systematically lifts static notions to their temporal analogues; (D4) it is object agnostic; (D5) it integrates with theories of dynamical systems. To achieve this, we build upon existing categorical and sheaf-theoretic approaches to temporal graph theory, generalizing them to any category with limits and colimits. We also formalize tacit intuitions that, while present, often remain implicit in temporal graph theory. Beyond synthesizing and reformulating existing ideas in categorical language, we introduce sheaf-theoretic constructions and prove results that, to our knowledge, have not appeared in the temporal data literature - such as the adjunction between persistent and cumulative narratives. More importantly, we integrate these existing and novel elements into a consistent and coherent framework, setting the stage for a unified theory of time-varying data.

CTMar 28, 2024
Generalized Gradient Descent is a Hypergraph Functor

Tyler Hanks, James Fairbanks, Matthew Klawonn

Cartesian reverse derivative categories (CRDCs) provide an axiomatic generalization of the reverse derivative, which allows generalized analogues of classic optimization algorithms such as gradient descent to be applied to a broad class of problems. In this paper, we show that generalized gradient descent with respect to a given CRDC induces a hypergraph functor from a hypergraph category of optimization problems to a hypergraph category of dynamical systems. The domain of this functor consists of objective functions that are 1) general in the sense that they are defined with respect to an arbitrary CRDC, and 2) open in that they are decorated spans that can be composed with other such objective functions via variable sharing. The codomain is specified analogously as a category of general and open dynamical systems for the underlying CRDC. We describe how the hypergraph functor induces a distributed optimization algorithm for arbitrary composite problems specified in the domain. To illustrate the kinds of problems our framework can model, we show that parameter sharing models in multitask learning, a prevalent machine learning paradigm, yield a composite optimization problem for a given choice of CRDC. We then apply the gradient descent functor to this composite problem and describe the resulting distributed gradient descent algorithm for training parameter sharing models.

AIMay 26, 2023
A Categorical Representation Language and Computational System for Knowledge-Based Planning

Angeline Aguinaldo, Evan Patterson, James Fairbanks et al.

Classical planning representation languages based on first-order logic have preliminarily been used to model and solve robotic task planning problems. Wider adoption of these representation languages, however, is hindered by the limitations present when managing implicit world changes with concise action models. To address this problem, we propose an alternative approach to representing and managing updates to world states during planning. Based on the category-theoretic concepts of $\mathsf{C}$-sets and double-pushout rewriting (DPO), our proposed representation can effectively handle structured knowledge about world states that support domain abstractions at all levels. It formalizes the semantics of predicates according to a user-provided ontology and preserves the semantics when transitioning between world states. This method provides a formal semantics for using knowledge graphs and relational databases to model world states and updates in planning. In this paper, we conceptually compare our category-theoretic representation with the classical planning representation. We show that our proposed representation has advantages over the classical representation in terms of handling implicit preconditions and effects, and provides a more structured framework in which to model and solve planning problems.

LGAug 25, 2019
Unsupervised Construction of Knowledge Graphs From Text and Code

Kun Cao, James Fairbanks

The scientific literature is a rich source of information for data mining with conceptual knowledge graphs; the open science movement has enriched this literature with complementary source code that implements scientific models. To exploit this new resource, we construct a knowledge graph using unsupervised learning methods to identify conceptual entities. We associate source code entities to these natural language concepts using word embedding and clustering techniques. Practical naming conventions for methods and functions tend to reflect the concept(s) they implement. We take advantage of this specificity by presenting a novel process for joint clustering text concepts that combines word-embeddings, nonlinear dimensionality reduction, and clustering techniques to assist in understanding, organizing, and comparing software in the open science ecosystem. With our pipeline, we aim to assist scientists in building on existing models in their discipline when making novel models for new phenomena. By combining source code and conceptual information, our knowledge graph enhances corpus-wide understanding of scientific literature.

PLJul 1, 2019
A Compositional Framework for Scientific Model Augmentation

Micah Halter, Christine Herlihy, James Fairbanks

Scientists construct and analyze computational models to understand the world. That understanding comes from efforts to augment, combine, and compare models of related phenomena. We propose SemanticModels.jl, a system that leverages techniques from static and dynamic program analysis to process executable versions of scientific models to perform such metamodeling tasks. By framing these metamodeling tasks as metaprogramming problems, SemanticModels.jl enables writing programs that generate and expand models. To this end, we present a category theory-based framework for defining metamodeling tasks, and extracting semantic information from model implementations, and show how this framework can be used to enhance scientific workflows in a working case study.