59 research outputs found
The Dynamic Geometry of Interaction Machine: A Token-Guided Graph Rewriter
In implementing evaluation strategies of the lambda-calculus, both
correctness and efficiency of implementation are valid concerns. While the
notion of correctness is determined by the evaluation strategy, regarding
efficiency there is a larger design space that can be explored, in particular
the trade-off between space versus time efficiency. Aiming at a unified
framework that would enable the study of this trade-off, we introduce an
abstract machine, inspired by Girard's Geometry of Interaction (GoI), a machine
combining token passing and graph rewriting. We show soundness and completeness
of our abstract machine, called the \emph{Dynamic GoI Machine} (DGoIM), with
respect to three evaluations: call-by-need, left-to-right call-by-value, and
right-to-left call-by-value. Analysing time cost of its execution classifies
the machine as ``efficient'' in Accattoli's taxonomy of abstract machines.Comment: arXiv admin note: text overlap with arXiv:1802.0649
Diagrammatic Semantics for Digital Circuits
We introduce a general diagrammatic theory of digital circuits, based on connections between monoidal categories and graph rewriting. The main achievement of the paper is conceptual, filling a foundational gap in reasoning syntactically and symbolically about a large class of digital circuits (discrete values, discrete delays, feedback). This complements the dominant approach to circuit modelling, which relies on simulation. The main advantage of our symbolic approach is the enabling of automated reasoning about parametrised circuits, with a potentially interesting new application to partial evaluation of digital circuits. Relative to the recent interest and activity in categorical and diagrammatic methods, our work makes several new contributions. The most important is establishing that categories of digital circuits are Cartesian and admit, in the presence of feedback expressive iteration axioms. The second is producing a general yet simple graph-rewrite framework for reasoning about such categories in which the rewrite rules are computationally efficient, opening the way for practical applications
- …