Learn More
We introduce a lambda calculus &#955;<sup><i>T</i></sup><sub>FG</sub> for transformations of <i>finite</i> graphs by generalizing and extending an existing calculus UnCAL. Whereas UnCAL can treat only unordered graphs, &#955;<sup><i>T</i></sup><sub>FG</sub> can treat a variety of graph models: directed edge-labeled graphs whose branch styles are represented(More)
Structural recursion, in the form of, for example, folds on lists and catamorphisms on algebraic data structures including trees, plays an important role in functional programming, by providing a systematic way for constructing and manipulating functional programs. It is, however, a challenge to define structural recursions for graph data structures, the(More)
Hughes' <i>arrows</i> were shown, by Jacobs et al., to be roughly monads in the bicategory <b>Prof</b> of profunctors (distributors, modules). However in their work as well as others', the categorical nature of the <b>first</b> operator was not pursued and its formulation remained rather ad hoc. In this paper, we identify <b>first</b> with <i>strength</i>(More)
The notion of arrow by Hughes is an axiomatization of the algebraic structure possessed by struc-tured computations in general. We claim that an arrow also serves as a basic component calculus for composing state-based systems as components—in fact, it is a categorified version of arrow that does so. In this paper, following the second author's previous(More)
Much progress has been made recently on fully automated verification of higher-order functional programs, based on refinement types and higher-order model checking. Most of those verification techniques are, however, based on <i>first-order</i> refinement types, hence unable to verify certain properties of functions (such as the equality of two recursive(More)
Higher-order grammars are an extension of regular and context-free grammars, where non-terminals may take parameters. They have been extensively studied in 1980's, and restudied recently in the context of model checking and program verification. We show that the class of unsafe order-(n + 1) word languages coincides with the class of frontier languages of(More)
The aim of this paper is to provide mathematical foundations of a graph transformation language, called UnCAL, using categorical semantics of type theory and fixed points. About twenty years ago, Buneman et al. developed a graph database query language UnQL on the top of a functional metalanguage UnCAL for describing and manipulating graphs. Recently, the(More)
Overview We give: 1. the λ c 2 η-calculus (and λ c 2-calculus): a second-order polymorphic call-by-value calculus with extensional universal types 2. • λ c 2 η-models: categorical semantics for λ c 2 η-calculus • monadic λ c 2 η-models: categorical semantics for λ c 2 η-calculus with the focus on monadic metalanguages like Haskell 3. relevant parametric(More)