English
Related papers

Related papers: Freer Arrows and Why You Need Them in Haskell

200 papers

String diagrams are a powerful tool for reasoning about composite structures in symmetric monoidal categories. By representing string diagrams as graphs, equational reasoning can be done automatically by double-pushout rewriting. !-graphs…

Logic in Computer Science · Computer Science 2016-02-22 Aleks Kissinger , Vladimir Zamdzhiev

To most applied statisticians, a fitting procedure's degrees of freedom is synonymous with its model complexity, or its capacity for overfitting to data. In particular, it is often used to parameterize the bias-variance tradeoff in model…

Other Statistics · Statistics 2017-01-06 Lucas Janson , William Fithian , Trevor Hastie

Orthogonal array, a classical and effective tool for collecting data, has been flourished with its applications in modern computer experiments and engineering statistics. Driven by the wide use of computer experiments with both qualitative…

Methodology · Statistics 2022-03-15 Yuanzhen He , C. Devon Lin , Fasheng Sun

A key part of implementing high-level languages is providing built-in and default data structures. Yet selecting good defaults is hard. A mutable data structure's workload is not known in advance, and it may shift over its lifetime - e.g.,…

Programming Languages · Computer Science 2017-08-09 Chao-Hong Chen , Vikraman Choudhury , Ryan R. Newton

Handling bound identifiers correctly and efficiently is critical in implementations of compilers, proof assistants, and theorem provers. When choosing a representation for abstract syntax with binders, implementors face a trade-off between…

Programming Languages · Computer Science 2024-05-28 Nikolai Kudasov , Renata Shakirova , Egor Shalagin , Karina Tyulebaeva

String diagrams are an increasingly popular algebraic language for the analysis of graphical models of computations across different research fields. Whereas string diagrams have been thoroughly studied as semantic structures, much less…

Category Theory · Mathematics 2022-11-04 Paul Wilson , Fabio Zanasi

We study monoidal profunctors as a tool to reason and structure pure functional programs both from a categorical perspective and as a Haskell implementation. From the categorical point of view we approach them as monoids in a certain…

Programming Languages · Computer Science 2022-07-05 Alexandre Garcia de Oliveira , Mauro Jaskelioff , Ana Cristina Vieira de Melo

Multi-level languages and Arrows both facilitate metaprogramming, the act of writing a program which generates a program. The arr function required of all Arrows turns arbitrary host language expressions into guest language expressions;…

Programming Languages · Computer Science 2011-04-13 Adam Megacz

Ability to use definitions occurring in the code directly in equational reasoning is one of the key strengths of functional programming. This is impossible in the case of Haskell type class methods unless a particular instance type is…

Programming Languages · Computer Science 2020-07-02 Härmel Nestra

We study rewriting for equational theories in the context of symmetric monoidal categories where there is a separable Frobenius monoid on each object. These categories, also called hypergraph categories, are increasingly relevant: Frobenius…

Logic in Computer Science · Computer Science 2018-01-04 Fabio Zanasi

Hierarchical networks actually have many applications in the real world. Firstly, we propose a new class of hierarchical networks with scale-free and fractal structure, which are the networks with triangles compared to traditional…

Combinatorics · Mathematics 2022-11-23 Jia-Bao Liu , Yan Bao , Wu-Ting Zheng

In this paper we introduce arrow algebras, simple algebraic structures which induce elementary toposes through the tripos-to-topos construction. This includes localic toposes as well as various realizability toposes, in particular, those…

Category Theory · Mathematics 2025-10-13 Benno van den Berg , Marcus Briet

Lock-free data objects offer several advantages over their blocking counterparts, such as being immune to deadlocks and convoying and, more importantly, being highly concurrent. But they share a common disadvantage in that the operations…

Distributed, Parallel, and Cluster Computing · Computer Science 2009-10-05 Daniel Cederman , Philippas Tsigas

Highly connected and yet sparse graphs (such as expanders or graphs of high treewidth) are fundamental, widely applicable and extensively studied combinatorial objects. We initiate the study of such highly connected graphs that are, in…

Computational Geometry · Computer Science 2013-06-17 Prosenjit Bose , Vida Dujmovic , Pat Morin , Michiel Smid

Probabilistic programming and the formal analysis of probabilistic algorithms are active areas of research, driven by the widespread use of randomness to improve performance. While functional correctness has seen substantial progress,…

Logic in Computer Science · Computer Science 2025-08-21 Matthias Hetzenberger , Georg Moser , Florian Zuleger

We introduce a generalization of monads, called relative monads, allowing for underlying functors between different categories. Examples include finite-dimensional vector spaces, untyped and typed lambda-calculus syntax and indexed…

Programming Languages · Computer Science 2015-09-14 Thosten Altenkirch , James Chapman , Tarmo Uustalu

Interviews run on people, programs run on operating systems, voting schemes run on voters, games run on players. Each of these is an example of the abstraction pattern runs on matter. Pattern determines the decision tree that governs how a…

Category Theory · Mathematics 2025-09-26 Sophie Libkind , David I. Spivak

Free theorems are a popular tool in reasoning about parametrically polymorphic code. They are also of instructive use in teaching. Their derivation, though, can be tedious, as it involves unfolding a lot of definitions, then hoping to be…

Programming Languages · Computer Science 2019-08-22 Janis Voigtländer

In this paper, we introduce a set of tools for providing user-friendly explanations in an explanation-based constraint programming system. The idea is to represent the constraints of a problem as an hierarchy (a tree). Users are then…

Programming Languages · Computer Science 2007-05-23 Narendra Jussien , Samir Ouis

We propose another interpretation of well-known derivatives computations from regular expressions, due to Brzozowski, Antimirov or Lombardy and Sakarovitch, in order to abstract the underlying data structures (e.g. sets or linear…

Formal Languages and Automata Theory · Computer Science 2022-09-01 Samira Attou , Ludovic Mignot , Clément Miklarz , Florent Nicart