paper-with-me

Papers

Dynamic programming by polymorphic semiring algebraic shortcut fusion

2021-07-05 · Max A. Little, Xi He, Ugur Kayas

Dynamic programming (DP) is an algorithmic design paradigm for the efficient, exact solution of otherwise intractable, combinatorial problems. However, DP algorithm design is often presented in an ad-hoc manner. It is sometimes difficult to justify algorithm correctness. To address this issue, this paper presents a rigorous algebraic formalism for systematically deriving DP algorithms, based on semiring polymorphism. We start with a specification, construct an algorithm to compute the required solution which is self-evidently correct because it exhaustively generates and evaluates all possible solutions meeting the specification. We then derive, through the use of shortcut fusion, an implementation of this algorithm which is both efficient and correct. We also demonstrate how, with the use of semiring lifting, the specification can be augmented with combinatorial constraints, showing how these constraints can be fused with the algorithm. We furthermore demonstrate how existing DP algorithms for a given combinatorial problem can be abstracted from their original context and re-purposed. This approach can be applied to the full scope of combinatorial problems expressible in terms of semirings. This includes, for example: optimal probability and Viterbi decoding, probabilistic marginalization, logical inference, fuzzy sets, differentiable softmax, relational and provenance queries. The approach, building on ideas from the existing literature on constructive algorithmics, exploits generic properties of polymorphic functions, tupling and formal sums and algebraic simplifications arising from constraint algebras. We demonstrate the effectiveness of this formalism for some example applications arising in signal processing, bioinformatics and reliability engineering. Python software implementing these algorithms can be downloaded from: http://www.maxlittle.net/software/dppolyalg.zip.

📄 PDF Abstract BibTeX arXiv:2107.01752

Code (0)

등록된 구현이 없습니다.

Similar Papers 제목 키워드 기반

Ternary Gamma Semirings as a Novel Algebraic Framework for Learnable Symbolic Reasoning

2025-11-21 · Chandrasekhar Gokavarapu, D. Madhusudhana Rao arxiv

Binary semirings such as the tropical, log, and probability semirings form a core algebraic tool in classical and modern neural inference systems, supporting tasks like Viterbi decoding, dynamic programming, and probabil…

Knowledge Graphs

Semirings for Probabilistic and Neuro-Symbolic Logic Programming

2024-02-21 · Vincent Derkinderen, Robin Manhaeve, Pedro Zuidberg Dos Martires, Luc De Raedt

The field of probabilistic logic programming (PLP) focuses on integrating probabilistic models into programming languages based on logic. Over the past 30 years, numerous languages and frameworks have been developed for …

Algebraic Model Counting for Global Analysis of Optimal Decision Trees

2026-07-02 · Hiroki Arimura arxiv

Ensuring model reliability in Explainable AI requires a global assessment of the hypothesis space. We propose a formal framework for the exhaustive analysis of optimal and near-optimal decision trees, called Algebraic De…

ASP(AC): Answer Set Programming with Algebraic Constraints

2020-08-10 · Thomas Eiter, Rafael Kiesel

Weighted Logic is a powerful tool for the specification of calculations over semirings that depend on qualitative information. Using a novel combination of Weighted Logic and Here-and-There (HT) Logic, in which this depe…

Weighted parsing for grammar-based language models

2019-09-01 · WS 2019 9 · Richard M{\"o}rbitz, Heiko Vogler

We develop a general framework for weighted parsing which is built on top of grammar-based language models and employs flexible weight algebras. It generalizes previous work in that area (semiring parsing, weighted deduc…