Abstract

We present a formalism of trees with pointers, called abstract Böhm trees, that provide a suitable abstract framework in which various cut-free proofs or normal terms of several λ-calculus based languages (including Pcf and Parigot’s λμ-calculus) can be faithfully encoded. A simple abstract machine called View Abstract Machine (VAM) allows us to compute over abstract Böhm trees. The VAM is closely related to Coquand’s interaction sequences and debates. The VAM execution over finite abstract Böhm trees always terminates. We next introduce an abstract notion of type that fits the purpose of guaranteeing that the VAM cannot go into deadlock, i.e., that it always reaches a satisfactory final state. Typed abstract Böhm trees can be turned into a category – more naturally a “multi-category” where the domains of arrows are sets of named objects, or records. We then go from the abstract to the concrete by giving examples. Our sets of abstract (typed) Böhm trees are relative to an alphabet and a set of types. By instantiating these two parameter sets appropriately, we recover successively: (η-long) typed Böhm trees, Pcf trees as considered in the game models of Hyland-Ong or of Abramsky-Jagadeesan-Malacaria, a notion of classical Böhm tree due to Herbelin that provides a classical version of Pcf trees in the style of λμ-calculus, and finally cut-free proofs in Novikov’s infinitary propositional logic as investigated by Coquand. In a companion paper, we investigate the operational aspects of (untyped) Böhm trees in more depth.