Peter Dybjer

Peter Dybjer
  • PhD
  • Professor (Full) at Chalmers University of Technology

About

82
Publications
11,310
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
2,436
Citations
Current institution
Chalmers University of Technology
Current position
  • Professor (Full)
Additional affiliations
January 1994 - December 2009
Chalmers University of Technology

Publications

Publications (82)
Article
Full-text available
This paper addresses the long-standing question of the predicativity of the Mahlo universe. A solution, called the extended predicative Mahlo universe, has been proposed by Kahle and Setzer in the context of explicit mathematics. It makes use of the collection of untyped terms (denoting partial functions) which are directly available in explicit ma...
Preprint
Full-text available
The aim of this paper is to refine and extend Voevodsky's draft "A universe polymorphic type system" that outlines a type theory where judgments can depend on equalities between universe levels expressions (constraints). We first recall a version of type theory with an externally indexed sequence of universes. We then add judgments for internal uni...
Article
Full-text available
We give a syntax independent formulation of finitely presented generalized algebraic theories as initial objects in categories of categories with families (cwfs) with extra structure. To this end, we simultaneously define the notion of a presentation Σ of a generalized algebraic theory and the associated category CwF Σ of small cwfs with a Σ-struct...
Chapter
We show how the categorical logic of the untyped, simply typed and dependently typed lambda calculus can be structured around the notion of category with families (cwf). To this end we introduce subcategories of simply typed cwfs (scwfs), where types do not depend on variables, and unityped cwfs (ucwfs), where there is only one type. We prove sever...
Preprint
Full-text available
We give a new syntax independent definition of the notion of a generalized algebraic theory as an initial object in a category of categories with families (cwfs) with extra structure. To this end we define inductively how to build a valid signature $\Sigma$ for a generalized algebraic theory and the associated category of cwfs with a $\Sigma$-struc...
Preprint
Full-text available
We show how the categorical logic of untyped, simply typed and dependently typed lambda calculus can be structured around the notion of category with family (cwf). To this end we introduce subcategories of simply typed cwfs (scwfs), where types do not depend on variables, and unityped cwfs (ucwfs), where there is only one type. We prove several equ...
Article
Full-text available
A higher inductive type of level 1 (a 1-hit) has constructors for points and paths only, whereas a higher inductive type of level 2 (a 2-hit) has constructors for surfaces too. We restrict attention to finitary higher inductive types and present general schemata for the types of their point, path, and surface constructors. We also derive the elimin...
Article
There has been sustained interest in functional programming languages with dependent types in recent years. The foundations of dependently typed programming can be traced back to Martin–Löf's work in the 1970s. In the past decades, this vision has given rise to the development of proof assistants and functional programming languages based on depend...
Article
Full-text available
We show that a version of Martin-L\"of type theory with extensional identity, a unit type N_1, {\Sigma}, {\Pi},and a base type is a free category with families (supporting these type formers) both in a 1- and a 2-categorical sense. It follows that the underlying category of contexts is a free locally cartesian closed category in a 2-categorical sen...
Conference Paper
We show that Hyland and Ong’s game semantics for PCF can be presented using normalization by evaluation (nbe). We use the bijective correspondence between innocent well-bracketed strategies and PCF Böhm trees, and show how operations on PCF Böhm trees, such as composition, can be computed lazily and simply by nbe. The usual equations characteristic...
Article
Seely's paper Locally cartesian closed categories and type theory (Seely 1984) contains a well-known result in categorical type theory: that the category of locally cartesian closed categories is equivalent to the category of Martin-Löf type theories with Π, Σ and extensional identity types. However, Seely's proof relies on the problematic assumpti...
Article
Full-text available
The relationship between program testing and Martin-Löf's meaning explana-tions for intuitionistic type theory is investigated. The judgements of intuitionistic type theory are viewed as conjectures which can be tested in order to be corrobo-rated or refuted. This point of view provides a new perspective on the meaning of hypothetical judgements, s...
Conference Paper
Full-text available
We propose a new approach to the computer-assisted verification of functional programs. We work in first order theories of functional programs which are obtained by extending Aczel’s first order theory of combinatory formal arithmetic with positive inductive and coinductive predicates. Rather than building a special purpose system we implement our...
Article
Full-text available
We prove the correctness of an algorithm for normalizing untyped combinator terms by evaluation. The algorithm is written in the functional programming language Haskell, and we prove that it lazily computes the combinatory Böhm tree of the term. The notion of combinatory Böhm tree is analogous to the usual notion of Böhm tree for the untyped lambda...
Book
This book brings together philosophers, mathematicians and logicians to penetrate important problems in the philosophy and foundations of mathematics. In philosophy, one has been concerned with the opposition between constructivism and classical mathematics and the different ontological and epistemological views that are reflected in this oppositio...
Conference Paper
Full-text available
Seely's paper Locally cartesian closed categories and type theory contains a well-known result in categorical type theory: that the category of locally cartesian closed categories is equivalent to the category of Martin-Löf type theories with Π,Σ, and extensional identity types. However, Seely's proof relies on the problematic assumption that subst...
Conference Paper
Full-text available
We give an overview of Agda, the latest in a series of depen- dently typed programming languages developed in Gothenburg. Agda is based on Martin-Lof's intuitionistic type theory but extends it with numerous programming language features. It supports a wide range of inductive data types, including inductive families and inductive-recursive types, w...
Conference Paper
Full-text available
We propose a new way to reason about general recursive functional programs in the dependently typed programming language Agda, which is based on Martin-Löf's intuitionistic type theory. We show how to embed an external programming logic, Aczel's Logical Theory of Constructions (LTC) inside Agda. To this end we postulate the existence of a domain of...
Article
Full-text available
Paradoxically, metamathematical investigations of intuitionistic logic often rely on set-theoretical metalanguage, even when the result has an informally constructive character. An example is Seely's interpretation of Martin-Lof's intuitionistic type theory in locally cartesian closed cat- egory. Here we revisit this interpretation using Martin-Lof...
Conference Paper
Full-text available
Type-checking algorithms for dependent type theories often rely on the interpretation of terms in some semantic domain of values when checking equalities. Here we analyze a version of Coquand’s algorithm for checking the βη-equality of such semantic values in a theory with a predicative universe hierarchy and large elimination rules. Although this...
Conference Paper
Full-text available
An algebraic presentation of Martin-Lof's intuitionistic type theory is given which is based on the notion of a category with families with extra structure. We then present a type-checking algorithm for the normal forms of this theory, and sketch how it gives rise to an initial cat- egory with families with extra structure. In this way we obtain a...
Article
Full-text available
This note is about work in progress on the topic of "internal type theory" where we investigate the internal formalization of the categorical metatheory of constructive type theory in (an extension of) itself. The basic notion is that of a category with families, a categorical notion of model of dependent type theory. We discuss how to formalize th...
Conference Paper
In these lecture notes we give an introduction to functional programming with dependent types. We use the dependently typed pro- gramming language Agda which is based on ideas in Martin-Lof type theory and Martin-Lof's logical framework. We begin by showing how to do simply typed functional programming, and discuss the dierences be- tween Agda's ty...
Conference Paper
Full-text available
The decidability of equality is proved for Martin-Lof type theory with a universe a la Russell and typed beta-eta- equality judgements. A corollary of this result is that the constructor for dependent function types is injective, a property which is crucial for establishing the correctness of the type-checking algorithm. The decision procedure uses...
Article
Full-text available
We present an algorithm for computing normal terms and types in Martin-Löf type theory with one universe and eta-conversion. We prove that two terms or types are equal in the theory iff the normal forms are identical (as de Bruijn terms). It thus follows that our algorithm can be used for deciding equality in Martin-Löf type theory. The algorithm u...
Chapter
Domain algebras are proposed as a tool for structuring compiler correctness proofs which are based on denotational semantics of the source and target language. The correctness of a compiler for a small imperative language is proved as an illustration.
Conference Paper
Full-text available
This paper studies the problem of coherence in category theory from a type-theoretic viewpoint. We first show how a Curry-Howard interpretation of a formal proof of normalization for monoids almost directly yields a coherence proof for monoidal categories. Then we formalize this coherence proof in intensional intuitionistic type theory and show how...
Chapter
A method for analysing the inverse of a first-order functional program is proposed. This method is based on denotational semantics: we analyse the inverse image of a Scott open set under the continuous function which the program denotes. Inverse image analysis is one possible way of extending strictness analysis to languages with lazy data structur...
Conference Paper
This paper proposes a way of relating domain-theoretic and algebraic interpretations of data types. It is different from Smyth, Plotkin, and Lehmann's T-algebra approach, and in particular the notion of homomorphism between higher-order algebras is not restricted in the same way, so that the usual initiality theorems of algebraic semantics, includi...
Article
We propose a program verification method that combines random testing, model checking and interactive theorem proving. Testing and model checking are used for debugging programs and specifications before a costly interactive proof attempt. During proof development, testing and model checking quickly eliminate false conjectures and generate countere...
Conference Paper
We show how to write surjective random generators for several different classes of inductively defined types in dependent type theory. We discuss both non-indexed (simple) types and indexed families of types. In particular we show how to use the relationship between indexed inductive definitions and logic programs: the indexed inductive definition...
Article
We give two finite axiomatizations of indexed inductive-recursive definitions in intuitionistic type theory. They extend our previous finite axiomatizations of inductive-recursive definitions of sets to indexed families of sets and encompass virtually all definitions of sets which have been used in intuitionistic type theory. The more restricted of...
Article
Modern programming languages rely on advanced type systems that detect errors at compile-time. While the benefits of type systems have long been recognized, there are some areas where the standard systems in programming languages are not expressive enough. Language designers usually trade expressiveness for decidability of the type system. Some int...
Conference Paper
Full-text available
We propose a method for improving confidence in the correctness of Haskell programs by combining testing and proving. Testing is used for debugging programs and specification before a costly proof attempt. During a proof development, testing also quickly eliminates wrong conjectures. Proving helps us to decompose a testing task in a way that is gua...
Article
Full-text available
We give an introduction to normalization by evaluation and type-directed partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we introduce the notion of binding time, and explain the method of...
Article
Full-text available
The first example of a simultaneous inductive-recursive definition in intuitionistic type theory is Martin-Löfs universe à la Tarski. A set U 0 of codes for small sets is generated inductively at the same time as a function T 0 , which maps a code to the corresponding small set, is defined by recursion on the way the elements of U 0 are generated....
Conference Paper
Full-text available
We extend the proof assistant Agda/Alfa for dependent type theory with a modi ed version of Claessen and Hughes' tool QuickCheck for random testing of functional programs. In this way we combine testing and proving in one system. Testing is used for debugging programs and speci cations before a proof is attempted. Furthermore, we demonstrate by exa...
Article
Martin-Lof's type theory is presented in several steps. The kernel is a dependently typed -calculus. Then there are schemata for inductive sets and families of sets and for primitive recursive functions and families of functions. Finally, there are set formers (generic polymorphism) and universes. At each step syntax, inference rules, and set-theor...
Conference Paper
Full-text available
We introduce categories with families as a new notion of model for a basic framework of dependent types. This notion is close to ordinary syntax and yet has a clean categorical description. We also present categories with families as a generalized algebraic theory. Then we define categories with families formally in Martin-Lof's intensional intuiti...
Article
Introduction Peter Aczel [1] and Gerard Huet [8] have implemented the category of sets in LEGO and Coq respectively. Here we show an implementation of the category of sets in ALF [2], a proof assistant based on Martin-Lof 's logical framework (or theory of logical types) [10]. We used WINDOW ALF. This system allows one to manipulate the proof term...
Article
Full-text available
We show how to write generic programs and proofs in MartinL of type theory. To this end we consider several extensions of MartinL of's logical framework for dependent types. Each extension has a universes of codes (signatures) for inductively defined sets with generic formation, introduction, elimination, and equality rules. These extensions are mo...
Article
Modern programming languages rely on advanced type systems that detect errors at compile-time. While the benefits of type systems have long been recognized, there are some areas where the standard systems in programming languages are not expressive enough. Language designers usually trade expressiveness for decidability of the type system. Some int...
Conference Paper
Full-text available
Solves the decision problem for the simply typed lambda calculus with a strong binary sum, or, equivalently, the word problem for free Cartesian closed categories with binary co-products. Our method is based on the semantic technique known as “normalization by evaluation”, and involves inverting the interpretation of the syntax in a suitable sheaf...
Article
Induction–recursion is a powerful definition method in intuitionistic type theory. It extends (generalized) inductive definitions and allows us to define all standard sets of Martin-Löf type theory as well as a large collection of commonly occurring inductive data structures. It also includes a variety of universes which are constructive analogues...
Conference Paper
Full-text available
We give an introduction to normalization by evaluation and type-directed partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel’s System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we introduce the notion of binding time, and explain the method...
Article
Full-text available
We first present a finite axiomatization of strictly positive inductive types in the simply typed lambda calculus. Then we show how this axiomatization can be modified to encompass simultaneous inductive-recursive definitions in intuitionistic type theory. A version of this has been implemented in the Half system which is based on Martin-Lf's logic...
Conference Paper
Full-text available
Abstract Induction-recursion is a schema,which formalizes the principles for intro- ducing new sets in Martin-L of’s type theory. It states that we may inductively dene,a set while simultaneously dening,a function from this set into an arbi- trary type by structural recursion. This extends the notion of an inductively dened,set substantially and a...
Article
Full-text available
We discuss different ways to represent the syntax of dependent types using Martin-Lof type theory as a metalanguage. In particular, we show how to give an intrinsic syntax in which meaningful contexts, types in a context, and terms of a certain type in a context, are generated directly without first introducing raw terms, types, and contexts. In th...
Article
Full-text available
We show how to solve the word problem for simply typed λβη-calculus by using a few well-known facts about categories of presheaves and the Yoneda embedding. The formal setting for these results is [Pscr ]-category theory, a version of ordinary category theory where each hom-set is equipped with a partial equivalence relation. The part of [Pscr ]-ca...
Article
We prove that every strictly positive endofunctor on the category of sets generated by Martin-Löf's extensional type theory has an initial algebra. This representation of inductively defined sets uses essentially the wellorderings introduced by Martin-Löf in “Constructive Mathematics and Computer Programming”.
Article
The traditional notions of strong and weak normalization refer to properties of a binary reduction relation. In this paper we explore an alternative approach to normalization, in which we bypass the reduction relation and instead focus on the normalization function, that is, the function that maps a term to its normal form. We work in an intuitioni...
Article
Martin-Lof's type theory is presented in several steps. The kernel is a dependently typed -calculus. Then there are schemata for inductive sets and families of sets and for primitive recursive functions and families of functions. Finally, there are set formers (generic polymorphism) and universes. At each step syntax, inference rules, and set-theor...
Conference Paper
Full-text available
We compare formalizations of an example from elementary category theory in the systems HOL (an implementation of Church’s classical simple type theory) and ALF (an implementation of Martin-Löf’s intuitionistic type theory). The example is a proof of coherence for monoidal categories which was extracted from a proof of normalization for monoids. It...
Article
Full-text available
A straightforward proof of the Coherence theorem for monoidal categories is presented in [2]. Here we describe the its formalisation within Martin-Löf type theory. The paper is organised as a commentary to the ALF proof files (recapitulated complete). In the current version the necessary categories and functors are constructed, and the main lemma (...
Article
Full-text available
This paper studies a connection between intuitionistic type theory and coherence problems in the sense of category theory. We first show how a Curry-Howard interpretation of a formal proof of normalization for monoids almost directly yields a coherence proof for monoidal categories. Then we formalize the coherence proof in type theory and show how...
Conference Paper
This paper studies the problem of coherence in category theory from a type-theoretic viewpoint. We first show how a Curry-Howard interpretation of a format proof of normalization for monoids almost directly yields a coherence proof for monoidal categories. Then we formalize this coherence proof in intensional intuitionistic type theory and show how...
Conference Paper
We give a short introduction to Martin-Löf's Type Theory, seen as a theory of inductive definitions. The first part contains historical remarks that motivate this approach. The second part presents a computational semantics, which explains how proof trees can be represented using the notations of functional programming.
Article
Full-text available
A general formulation of inductive and recursive definitions in Martin-Löf's type theory is presented. It extends Backhouse's ‘Do-It-Yourself Type Theory’ to include inductive definitions of families of sets and definitions of functions by recursion on the way elements of such sets are generated. The formulation is in natural deduction and is inten...
Article
A method for analysing the inverse of a first-order functional program is proposed. This method is based on denotational semantics: we analyse the inverse image of a Scott open set under the continuous function which the program denotes. Inverse image analysis is one possible way of extending strictness analysis to languages with lazy data structur...
Article
Four different programming logics are compared by example. Three are versions of Martin-Löf type theory and the fourth is a version of Aczel's logical theory of constructions. They differ in several respects. For example, what is the notion of specification? Are there partial or just total objects? Is general recursion allowed or only primitive rec...
Article
Networks of communicating processes can be viewed as networks of stream transformers and programmed in a lazy functional language. Thus the correctness of concurrent systems can be reduced to the correctness of functional programs. In this paper such correctness is proved formally in theμ-calculus extended with recursion equations for functional pr...
Conference Paper
Full-text available
The logical theory of constructions is a simple theory which combines functional programs and intuitionistic predicate calculus. Here we propose that it is a practical alternative to other constructive programming logics, such as Martin-Löf's type theory. Its main advantage is that it admits reasoning directly about general recursion, while maintai...
Conference Paper
I have not tried to be comprehensive here. Instead I have tried to pursue the idea of category theory as a kind of type theory and thereby I have only included those uses of category theory which I have found particularly useful for understanding type theory, domain theory and algebraic semantics. Therefore, several things have been excluded, such...
Article
Among the many different data dependencies defined, the so-called join dependencies play a central role, since they explicitly capture lossless join properties for relation schemes.In this paper we state some inference rules for join dependencies and embedded join dependencies. A set of two rules is shown to be complete for monadic join dependency...
Conference Paper
Article
Full-text available
Induction-recursion is a powerful denition method in intuitionistic type theory. It extends (generalized) inductive denitions and allows us to de- ne all standard sets of Martin-Lof type theory as well as a large collection of commonly occurring inductive data structures. It also includes a vari- ety of universes which are constructive analogues of...
Article
Full-text available
1st VERITE : JAIST/TRUST-AIST/CVS joint workshop on VERIfication TEchnologyでの発表資料, 開催:2005年9月21日~22日, 開催場所:金沢市文化ホール3F

Network

Cited By