A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU

Size: px
Start display at page:

Download "A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU"

Transcription

1 COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU

2 The CoqHoTT project Design and implement a brand-new proof assistant by revisiting the theoretical foundations of Coq. Type Theory Homotopy Type Theory 2

3 Coq: a success but... Based on the correspondence: Formula Type Proof Program Type Theory has been developed, providing a common language for mathematics and computer science Coq Program certification CompCert Compiler Theorem Proving The 4 Colour Theorem 3

4 Coq: a success but... Program certification: First ever certified C-Compiler CompCert Compiler Theorem proving: High impact in computer science as well as in mathematics extraction The 4 Colour Theorem 3

5 ... not the last word Many weaknesses cannot be solved without changing the theoretical foundations of Coq: common operators/principles cannot be constructed (eg., general fixpoints or the law of excluded middle) the notion of equality is too weak 4

6 ... not the last word Many weaknesses cannot be solved without changing the theoretical foundations of Coq: common operators/principles cannot be constructed (eg., general fixpoints or the law of excluded middle) the notion of equality is too weak Example: bounded integers (n;bounded_n) (n;bounded_n) 4

7 Only one way out make use of axioms consistency issues valid axioms can be wrong altogether breaks the extraction mechanism axioms have no computational meaning limits possibility of automation can not use reflection in the proof 5

8 The CoqHoTT project Design and implement a brand-new proof assistant by revisiting the theoretical foundations of Coq. Type Theory Homotopy Type Theory 6

9 The CoqHoTT project Design and implement a brand-new proof assistant by revisiting the theoretical foundations of Coq. Type Theory Homotopy Type Theory Uniform equality (syntactic) Relativized equality (semantic) 6

10 Wait, what is Type Theory about? 7

11 The denotational semantics trinity 8

12 The denotational semantics trinity Curry-Howard Correspondance 9

13 The simply typed λ-calculus variable abstraction application weakening contraction exchange x :A x :A, x :A P :B x.p :A B P :A B Q :A, PQ :B P :B, x :A P :B, x :A, y :A P :B, z :A P [x, y z] :B, x :A, y :B, P :C, y :B, x :A, P :C 10

14 Intuitionistic minimal logic axiom I E weakening contraction exchange x :A x :A, x :A P :B x.p :A B P :A B Q :A, PQ :B P :B, x :A P :B, x :A, y :A P :B, z :A P [x, y z] :B, x :A, y :B, P :C, y :B, x :A, P :C 10

15 Intuitionistic minimal logic axiom I E weakening Curry Howard contraction exchange x :A x :A, x :A P :B x.p :A B P :A B Q :A, PQ :B P :B, x :A P :B, x :A, y :A P :B, z :A P [x, y z] :B, x :A, y :B, P :C, y :B, x :A, P :C 10

16 Other correspondances Cut elimination β-reduction 11

17 Type Theory of Coq Lifting the Curry-Howard correspondance to dependent types more complex formulas n : nat. m : nat. Id (m, n + 1) n : nat. m : nat. m = n

18 Type Theory of Coq Lifting the Curry-Howard correspondance to dependent types more complex formulas ` Prod/Sigma,x: A ` B type ` / x : A.B type 13

19 Type Theory of Coq Lifting the Curry-Howard correspondance to dependent types more complex formulas ` Prod/Sigma,x: A ` B type ` / x : A.B type Type checking Correctness checking 13

20 Type Theory and Logic Types Logic A proposition a : A proof B(x) predicate b(x) : B(x) conditional proof 0, 1?, > A + B A_ B A B A^ B A! B A ) B Â (x:a) B(x) 9 x:a B(x) (x:a) B(x) 8 x:a B(x) Id A equality = 14

21 Type Theory and Logic Types Logic A proposition a : A proof B(x) predicate b(x) : B(x) conditional proof 0, 1?, > A + B A_ B A B A^ B A! B A ) B Â (x:a) B(x) 9 x:a B(x) (x:a) B(x) 8 x:a B(x) Id A equality = How is equality modeled? 14

22 Equality in Type Theory Equality is described using Martin-Löf Identity Type. refl : a:a (a = A a) Path induction: Given a family and a function there is a function such that C : x,y:a c : x:a f : (x,y:a) (x = A y)! U C(x, x, refl x ), (p:x= A y) C(x, y, p) f (x, x, refl x ) : c(x). 15

23 Equality in Type Theory Equality is described using Martin-Löf Identity Type. refl : a:a (a = A a) Leibniz principle of Indiscernability of Identicals Path induction: Given a family and a function there is a function such that C : x,y:a c : x:a f : (x,y:a) (x = A y)! U C(x, x, refl x ), (p:x= A y) C(x, y, p) f (x, x, refl x ) : c(x). 15

24 Equality in Type Theory A formulation using the type system: ` ` { } Id ` T type ` A, B : T ` Id T ABtype Id-Intro ` t : T ` refl T t : Id T tt Id-Elim (J) ` i : Id T tu,x: T,e : Id T tx`p type ` p : P {t/x, refl T t/e} ` J x e.p ip: P {u/x, i/e} 16

25 Type and Set Theory Types A a : A B(x) b(x) : B(x) 0, 1 A + B A B A! B Â (x:a) B(x) (x:a) B(x) Id A Sets set element family of sets family of elements, { } disjoint union set of pairs set of functions disjoint sum product { (x, x) x 2 A } view on type-theoreti 17

26 Problem with Identity Type The following definitions should coincides with equality. Functional Extensionality: ( f g) : x:a ( f (x) =g(x)). Univalence: (A ' B) : Â f :A!B isequiv( f ). where isequiv( f ) : Â g:b!a ( f g id B ) Â h:b!a (h f id A )! 18

27 Type and Homotopy Theory Types A a : A B(x) b(x) : B(x) 0, 1 A + B A B A! B Â (x:a) B(x) (x:a) B(x) Id A Homotopy space point fibration section, coproduct product space function space total space space of sections path space A I 19

28 Type and Homotopy Theory From an homotopy theoretic perspective, functional extensionality and univalence are perfectly valid. Problem: How to enhance Type Theory in order to reflect homotopic intuition? 20

29 The Big Challenge Revisit the theory behind Coq using HoTT and provide a brand-new proof assistant with: equality as a first-class citizen axiom-free extensions of the logic 21

30 The Big Challenge Revisit the theory behind Coq using HoTT and provide a brand-new proof assistant with: equality as a first-class citizen axiom-free extensions of the logic Apart from relaxing the drawbacks of using axioms, it will simplify a lot the development of new proofs for users. (n;bounded_n) = (n;bounded_n) 21

31 State of the art. Homotopy Type Theory Idea: equality homotopy + the univalence principle [Streicher, Voevodsky], which allows to derive equality principles used in mathematics: Definition univalence := 8 TU: Type, T U! T = U. 22

32 State of the art. Homotopy Type Theory Idea: equality homotopy + the univalence principle [Streicher, Voevodsky], which allows to derive equality principles used in mathematics: Definition univalence := 8 TU: Type, T U! T = U. Issue: Univalence is still stated as an axiom. 22

33 State of the art. Logic Extension in Mathematical Logic Idea: Translating formulas of rich logic into formulas of a simpler logic by using complex proof transformations logic with new principles forcing sheafification original logic 23

34 State of the art. Logic Extension in Mathematical Logic Idea: Translating formulas of rich logic into formulas of a simpler logic by using complex proof transformations logic with new principles forcing sheafification original logic Issue: Type Theory Mathematical Logic 23

35 CoqHoTT Challenges C1 Type Theory with a built-in notion of univalence C2 Implement CoqHoTT without overhead C3 Define and implement Higher Inductive Types C4 Extend Type Theory without axioms 24

36 CoqHoTT Challenges C1 Type Theory with a built-in notion of univalence C2 Implement CoqHoTT without overhead C3 Define and implement Higher Inductive Types C4 Extend Type Theory without axioms 24

37 Type Theory with Univalence type T is a space 25

38 Type Theory with Univalence type T is a space programs a:t are points proofs of equality p : a = b are paths 25

39 Type Theory with Univalence type T is a space Path operations: id p -1 q o p : a =T a : b =T a : a =T c Homotopies: left-id : id o p =a=b p programs a:t are points proofs of equality p : a = b are paths right-id : p o id =a=b p assoc : r o (q o p) = a=d (r o q) o p 25

40 Type Theory with Univalence and Higher Homotopies Equality Homotopy -Groupoid reflexivity constant path identity morphism symmetry inversion of paths inverse morphism transitivity concatenation of paths composition of morphisms Because of proof-relevance, we can t stop after proving symmetry and transitivity of equality: we need to know that these operations on equalities are well-behaved. 26

41 Type Theory with Univalence and Higher Homotopies The main novelty of this approach is to realize that homotopies between homotopies cannot be omitted, and this up to infinite dimension. 27

42 Type Theory with Univalence and Higher Homotopies The main novelty of this approach is to realize that homotopies between homotopies cannot be omitted, and this up to infinite dimension. Requires to consider types as -groupoids 27

43 A hierarchy of types HoTT classifies types based on the complexity of the equality type. Simplest (singleton) types are called contractible: iscontr(a) : Â (a:a) (x:a) (a = x). 28

44 A hierarchy of types HoTT classifies types based on the complexity of the equality type. Then, n-types are defined inductively: Define the predicate is-n-type : U! U for n 2 by recursion as follows: is-n-type(x) : ( iscontr(x) if n = 2, (x,y:x) is-n 0 -type(x = X y) if n = n

45 A hierarchy of types This defines the following hierarchy: Level of Type (-2)-Type (-1)-Type 0-Type 1-Type Type Homotopy Type Theory unit / contactible type h-propositions h-sets h-groupoids -groupoids 30

46 How to reflect this new point of view on equality in type theory while keeping decidable type inference? 31

47 How to reflect this new point of view on equality in type theory while keeping decidable type inference? Idea: Extend type theory with new constructors, such as Kan fillers. 31

48 Compilation to Type Theory Our approach is to provide a meaning to HoTT by a compilation/translation to Type Theory. 32

49 Compilation to Type Theory Our approach is to provide a meaning to HoTT by a compilation/translation to Type Theory. Homotopy Type Theory Compilation Type Theory Type-Checker Relativized equality Uniform equality Correct a p p -1 b q Univalence Higher algebraic structure Incorrect c This compilation phase uses higher algebraic structure (e.g., -groupoids, cubical sets [Coquand et al.]) 32

50 Extend Type Theory without Axioms We will use the fact that: Homotopy Type Theory = Higher Mathematical Logic 33

51 Extend Type Theory without Axioms Using Compilation Phases We will use the fact that: Homotopy Type Theory = Higher Mathematical Logic Consider logical transformations (forcing, sheafification) of mathematical logic as compilation phases in HoTT: increase the power of the logic without axioms change the logic at compile time, according to a trade-off between efficiency and logical expressivity 33

52 Extend Type Theory without Axioms Using Compilation Phases We will use the fact that: Homotopy Type Theory = Higher Topos Theory [Lurie] Consider logical transformations (forcing, sheafification) of mathematical logic as compilation phases in HoTT: increase the power of the logic without axioms change the logic at compile time, according to a trade-off between efficiency and logical expressivity 33

53 Extend Type Theory without axioms using a compilation phase CoqHoTT + Classical Logic Added principle : Excluded Middle Sheaf Translation w/ Dense Topology Forcing Translation w/ Natural Numbers CoqHoTT + General Induction Added principles : General Inductive Types Löb Rule CoqHoTT CoqHoTT + Axiom of Choice CoqHoTT + Kripke Semantics Added principle : Dependent AC Sheaf Translation w/ Dense Topology Natural Numbers Forcing Translation w/ worlds Added principle : Modal Logic 34

54 Methodology. Distinct compilation phases II Compile complex type theories into simpler ones. Full CoqHoTT w/o Axiom of Choice w/o General Fixpoints inherit consistency of Coq w/o Univalence w/o Kripke Semantics w/o Classical Logic split the complexity Kernel of Coq Compiled Coq of type checking 35

55 Expected Impacts Our expectation is that CoqHoTT will become a popular proof assistant among: software engineers : faster and simpler developments computer scientists: integration of type isomorphisms mathematicians : new equality and logical expressivity 36

56 The CoqHoTT team The PI (75 % of his time) will take charge of the overall scientific direction. Matthieu Sozeau (20%) is one of the main developers of Coq and its expertise on the subject is crucial to the CoqHoTT project. Non-Permanent Staff (ERC): 3 PhD, 5 Post-Docs, 1 software engineer Non-Permanent Staff (Host Institution, Inria): 1 PhD, 1 Post-Doc, 1 support engineer and hopefully more CoqHoTT, Coq for Homotopy Type Theory 37

57 inside a very active community CoqHoTT, Coq for Homotopy Type Theory 37

58 CoqHoTT in a nutshell New proof-assistant based on HoTT Equality as a first-class citizen Axiom-free extensions of the logic Defined using distinct compilations phases A world-class group on a new generation of proof assistants 38

59 Bibliography [1] Homotopy Type Theory: Univalent Foundations of Mathematics. The Univalent Foundations Program. Institute for Advanced Study. [2] A Model of Type Theory in Cubical Sets. Bezem M., Coquand T., Huber S. (2013). [3] Higher Topos Theory. Lurie J. Annals of Mathematics Studies, Princeton University Press,

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting

More information

Univalent fibrations in type theory and topology

Univalent fibrations in type theory and topology Univalent fibrations in type theory and topology Dan Christensen University of Western Ontario Wayne State University, April 11, 2016 Outline: Background on type theory Equivalence and univalence A characterization

More information

Using Agda to Explore Path-Oriented Models of Type Theory

Using Agda to Explore Path-Oriented Models of Type Theory 1/22 Using Agda to Explore Path-Oriented Models of Type Theory Andrew Pitts joint work with Ian Orton Computer Laboratory Outline 2/22 The mathematical problem find new models of Homotopy Type Theory Why

More information

An introduction to Homotopy Type Theory

An introduction to Homotopy Type Theory An introduction to Homotopy Type Theory Nicola Gambino University of Palermo Leicester, March 15th, 2013 Outline of the talk Part I: Type theory Part II: Homotopy type theory Part III: Voevodsky s Univalent

More information

Recent Work in Homotopy Type Theory

Recent Work in Homotopy Type Theory Recent Work in Homotopy Type Theory Steve Awodey Carnegie Mellon University AMS Baltimore January 2014 Introduction Homotopy Type Theory is a newly discovered connection between logic and topology, based

More information

The three faces of homotopy type theory. Type theory and category theory. Minicourse plan. Typing judgments. Michael Shulman.

The three faces of homotopy type theory. Type theory and category theory. Minicourse plan. Typing judgments. Michael Shulman. The three faces of homotopy type theory Type theory and category theory Michael Shulman 1 A programming language. 2 A foundation for mathematics based on homotopy theory. 3 A calculus for (, 1)-category

More information

Cubical Homotopy Type Theory

Cubical Homotopy Type Theory Cubical Homotopy Type Theory Steve Awodey Carnegie Mellon University Logic Colloquium and CLMPS August 2015 Outline I. Basic ideas of Homotopy Type Theory. II. The univalence axiom. III. Higher inductive

More information

Topic 1: What is HoTT and why?

Topic 1: What is HoTT and why? Topic 1: What is HoTT and why? May 5, 2014 Introduction Homotopy type theory (HoTT) is a newly emerging field of mathematics which is currently being developed as a foundation of mathematics which is in

More information

Cubical sets as a classifying topos

Cubical sets as a classifying topos Chalmers CMU Now: Aarhus University Homotopy Type Theory The homotopical interpretation of type theory: types as spaces upto homotopy dependent types as fibrations (continuous families of spaces) identity

More information

Categorical models of type theory

Categorical models of type theory 1 / 59 Categorical models of type theory Michael Shulman February 28, 2012 2 / 59 Outline 1 Type theory and category theory 2 Categorical type constructors 3 Dependent types and display maps 4 Fibrations

More information

Introduction to dependent types in Coq

Introduction to dependent types in Coq October 24, 2008 basic use of the Coq system In Coq, you can play with simple values and functions. The basic command is called Check, to verify if an expression is well-formed and learn what is its type.

More information

Mathematics for Computer Scientists 2 (G52MC2)

Mathematics for Computer Scientists 2 (G52MC2) Mathematics for Computer Scientists 2 (G52MC2) L07 : Operations on sets School of Computer Science University of Nottingham October 29, 2009 Enumerations We construct finite sets by enumerating a list

More information

Computational Higher-Dimensional Type Theory

Computational Higher-Dimensional Type Theory 1 Computational Higher-Dimensional Type Theory Carlo Angiuli 1 Robert Harper 1 Todd Wilson 2 1 Carnegie Mellon University 2 California State University, Fresno January 20, 2017 Homotopy Type Theory (HoTT)

More information

Introduction to Homotopy Type Theory

Introduction to Homotopy Type Theory Introduction to Homotopy Type Theory Lecture notes for a course at EWSCS 2017 Thorsten Altenkirch March 5, 2017 1 What is this course about? To explain what Homotopy Type Theory is, I will first talk about

More information

Lecture slides & distribution files:

Lecture slides & distribution files: Type Theory Lecture slides & distribution files: http://www.cs.rhul.ac.uk/home/zhaohui/ttlectures.html Zhaohui Luo Department of Computer Science Royal Holloway, University of London April 2011 2 Type

More information

Programming and Proving with Higher Inductive Types

Programming and Proving with Higher Inductive Types Programming and Proving with Higher Inductive Types Dan Licata Wesleyan University Department of Mathematics and Computer Science Constructive Type Theory Three senses of constructivity: [Martin-Löf] 2

More information

A Model of Type Theory in Simplicial Sets

A Model of Type Theory in Simplicial Sets A Model of Type Theory in Simplicial Sets A brief introduction to Voevodsky s Homotopy Type Theory T. Streicher Fachbereich 4 Mathematik, TU Darmstadt Schlossgartenstr. 7, D-64289 Darmstadt streicher@mathematik.tu-darmstadt.de

More information

Representability of Homotopy Groups in Type Theory

Representability of Homotopy Groups in Type Theory Representability of Homotopy Groups in Type Theory Brandon Shapiro Constructive Type Theory The emerging field of homotopy type theory is built around the idea that in intensive type theory types can be

More information

Towards elementary -toposes

Towards elementary -toposes Towards elementary -toposes Michael Shulman 1 1 (University of San Diego) September 13, 2018 Vladimir Voevodsky Memorial Conference Institute for Advanced Study Outline 1 A bit of history 2 Elementary

More information

Constructing the Propositional Truncation using Non-recursive HITs

Constructing the Propositional Truncation using Non-recursive HITs Constructing the Propositional Truncation using Non-recursive HITs Floris van Doorn Carnegie Mellon University January 19, 2016 Floris van Doorn (CMU) Constructing Propositional Truncation January 19,

More information

Identity in Homotopy Type Theory, Part I: The Justification of Path Induction

Identity in Homotopy Type Theory, Part I: The Justification of Path Induction Identity in Homotopy Type Theory, Part I: The Justification of Path Induction Friday 24 th October, 2014 Abstract Homotopy type theory (HoTT) is a new branch of mathematics that connects algebraic topology

More information

Types Summer School Gothenburg Sweden August Dogma oftype Theory. Everything has a type

Types Summer School Gothenburg Sweden August Dogma oftype Theory. Everything has a type Types Summer School Gothenburg Sweden August 2005 Formalising Mathematics in Type Theory Herman Geuvers Radboud University Nijmegen, NL Dogma oftype Theory Everything has a type M:A Types are a bit like

More information

From natural numbers to the lambda calculus

From natural numbers to the lambda calculus From natural numbers to the lambda calculus Benedikt Ahrens joint work with Ralph Matthes and Anders Mörtberg Outline 1 About UniMath 2 Signatures and associated syntax Outline 1 About UniMath 2 Signatures

More information

Topic 3: Propositions as types

Topic 3: Propositions as types Topic 3: Propositions as types May 18, 2014 Propositions as types We have seen that the main mathematical objects in a type theory are types. But remember that in conventional foundations, as based on

More information

Automata and Formal Languages - CM0081 Introduction to Agda

Automata and Formal Languages - CM0081 Introduction to Agda Automata and Formal Languages - CM0081 Introduction to Agda Andrés Sicard-Ramírez Universidad EAFIT Semester 2018-2 Introduction Curry-Howard correspondence Dependent types Constructivism Martin-Löf s

More information

Introduction to Coq Proof Assistant

Introduction to Coq Proof Assistant Introduction to Coq Proof Assistant Qian Hu, M.Sc McMaster University March 3, 2010 Presentation Outline Overview Computer Assistance in Proofs Proof Assistant Coq Introduction The Coq Proof Assistant

More information

Does Homotopy Type Theory Provide a Foundation for Mathematics?

Does Homotopy Type Theory Provide a Foundation for Mathematics? Does Homotopy Type Theory Provide a Foundation for Mathematics? Tuesday 11 th November, 2014 Abstract Homotopy Type Theory (HoTT) is a putative new foundation for mathematics grounded in constructive intensional

More information

Programming in homotopy type theory and erasing propositions Gabe Dijkstra

Programming in homotopy type theory and erasing propositions Gabe Dijkstra Programming in homotopy type theory and erasing propositions Gabe Dijkstra M.Sc. thesis ICA-3354881 [Supervisors] Wouter Swierstra and Johan Jeuring August 26, 2013 Department of Computing Science Abstract

More information

Univalent Foundations Project (a modified version of an NSF grant application)

Univalent Foundations Project (a modified version of an NSF grant application) Univalent Foundations Project (a modified version of an NSF grant application) Vladimir Voevodsky October 1, 2010 1 General outline of the proposed project While working on the completion of the proof

More information

EXTENSIONS OF FIRST ORDER LOGIC

EXTENSIONS OF FIRST ORDER LOGIC EXTENSIONS OF FIRST ORDER LOGIC Maria Manzano University of Barcelona CAMBRIDGE UNIVERSITY PRESS Table of contents PREFACE xv CHAPTER I: STANDARD SECOND ORDER LOGIC. 1 1.- Introduction. 1 1.1. General

More information

An Introduction to Programming and Proving in Agda (incomplete draft)

An Introduction to Programming and Proving in Agda (incomplete draft) An Introduction to Programming and Proving in Agda (incomplete draft) Peter Dybjer January 29, 2018 1 A first Agda module Your first Agda-file is called BoolModule.agda. Its contents are module BoolModule

More information

Typed Lambda Calculus

Typed Lambda Calculus Department of Linguistics Ohio State University Sept. 8, 2016 The Two Sides of A typed lambda calculus (TLC) can be viewed in two complementary ways: model-theoretically, as a system of notation for functions

More information

Typed Lambda Calculus for Syntacticians

Typed Lambda Calculus for Syntacticians Department of Linguistics Ohio State University January 12, 2012 The Two Sides of Typed Lambda Calculus A typed lambda calculus (TLC) can be viewed in two complementary ways: model-theoretically, as a

More information

a brief introduction to (dependent) type theory

a brief introduction to (dependent) type theory a brief introduction to (dependent) type theory Cory Knapp January 14, 2015 University of Birmingham what is type theory? What is type theory? formal language of terms with types x : A x has type A What

More information

ABriefOverviewofAgda A Functional Language with Dependent Types

ABriefOverviewofAgda A Functional Language with Dependent Types ABriefOverviewofAgda A Functional Language with Dependent Types Ana Bove, Peter Dybjer, and Ulf Norell e-mail: {bove,peterd,ulfn}@chalmers.se Chalmers University of Technology, Gothenburg, Sweden Abstract.

More information

ACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes)

ACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes) ACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes) Steve Vickers CS Theory Group Birmingham 1. Sheaves "Sheaf = continuous set-valued map" TACL Tutorial

More information

Intuitionistic Type Theory

Intuitionistic Type Theory Intuitionistic Type Theory Peter Dybjer Erik Palmgren May 6, 2015 Abstract Intuitionistic Type Theory (also Constructive Type Theory or Martin-Löf Type Theory) is a formal logical system and philosophical

More information

Proofs-Programs correspondance and Security

Proofs-Programs correspondance and Security Proofs-Programs correspondance and Security Jean-Baptiste Joinet Université de Lyon & Centre Cavaillès, École Normale Supérieure, Paris Third Cybersecurity Japanese-French meeting Formal methods session

More information

Lecture 3: Typed Lambda Calculus and Curry-Howard

Lecture 3: Typed Lambda Calculus and Curry-Howard Lecture 3: Typed Lambda Calculus and Curry-Howard H. Geuvers Radboud University Nijmegen, NL 21st Estonian Winter School in Computer Science Winter 2016 H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus

More information

Foundations and Applications of Higher-Dimensional Directed Type Theory

Foundations and Applications of Higher-Dimensional Directed Type Theory 1 Overview Foundations and Applications of Higher-Dimensional Directed Type Theory Intuitionistic type theory [43] is an expressive formalism that unifies mathematics and computation. A central concept

More information

Game Semantics for Dependent Types

Game Semantics for Dependent Types Bath, 20 ctober, 2015 verview Game theoretic model of dependent type theory (DTT): refines model in domains and (total) continuous functions; call-by-name evaluation; faithful model of (total) DTT with

More information

CIS 194: Homework 8. Due Wednesday, 8 April. Propositional Logic. Implication

CIS 194: Homework 8. Due Wednesday, 8 April. Propositional Logic. Implication CIS 194: Homework 8 Due Wednesday, 8 April Propositional Logic In this section, you will prove some theorems in Propositional Logic, using the Haskell compiler to verify your proofs. The Curry-Howard isomorphism

More information

Cubical Computational Type Theory & RedPRL

Cubical Computational Type Theory & RedPRL 2018.02.07 Cornell Cubical Computational Type Theory & RedPRL >> redprl.org >> Carlo Angiuli Evan Cavallo (*) Favonia Bob Harper Dan Licata Jon Sterling Todd Wilson 1 Vladimir Voevodsky 1966-2017 2 Cubical

More information

The Truth about Types. Bartosz Milewski

The Truth about Types. Bartosz Milewski The Truth about Types Bartosz Milewski Truth Truth Logic Types Categories Truth intro Unit type Terminal object true I () : () Proofs Logic Types Categories Proof of proposition A Type A is inhabited Morphism

More information

Logical Grammar: Introduction to Hyperintensional S

Logical Grammar: Introduction to Hyperintensional S Logical Grammar: Introduction to Hyperintensional Semantics Department of Linguistics Ohio State University July 8, 2011 What was Wrong with Montague Semantics? (1/2) Montague (late 1960s) was first to

More information

Mathematics for Computer Scientists 2 (G52MC2)

Mathematics for Computer Scientists 2 (G52MC2) Mathematics for Computer Scientists 2 (G52MC2) L03 : More Coq, Classical Logic School of Computer Science University of Nottingham October 8, 2009 The cut rule Sometimes we want to prove a goal Q via an

More information

Computational Higher Type Theory

Computational Higher Type Theory Computational Higher Type Theory Robert Harper Computer Science Department Carnegie Mellon University HoTT Workshop 2016 Leeds, UK Thanks Joint work with Carlo Angiuli (CMU) and Todd Wilson (CSUF). Thanks

More information

TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3.

TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. 301. Definition. Let m be a positive integer, and let X be a set. An m-tuple of elements of X is a function x : {1,..., m} X. We sometimes use x i instead

More information

Universes. Universes for Data. Peter Morris. University of Nottingham. November 12, 2009

Universes. Universes for Data. Peter Morris. University of Nottingham. November 12, 2009 for Data Peter Morris University of Nottingham November 12, 2009 Introduction Outline 1 Introduction What is DTP? Data Types in DTP Schemas for Inductive Families 2 of Data Inductive Types Inductive Families

More information

Inference rule for Induction

Inference rule for Induction Inference rule for Induction Let P( ) be a predicate with domain the positive integers BASE CASE INDUCTIVE STEP INDUCTIVE Step: Usually a direct proof Assume P(x) for arbitrary x (Inductive Hypothesis),

More information

Embedding logics in Dedukti

Embedding logics in Dedukti 1 INRIA, 2 Ecole Polytechnique, 3 ENSIIE/Cedric Embedding logics in Dedukti Ali Assaf 12, Guillaume Burel 3 April 12, 2013 Ali Assaf, Guillaume Burel: Embedding logics in Dedukti, 1 Outline Introduction

More information

Heq: a Coq library for Heterogeneous Equality

Heq: a Coq library for Heterogeneous Equality Heq: a Coq library for Heterogeneous Equality Chung-Kil Hur PPS, Université Paris Diderot Abstract. We give an introduction to the library Heq, which provides a set of tactics to manipulate heterogeneous

More information

A MODEL CATEGORY STRUCTURE ON THE CATEGORY OF SIMPLICIAL CATEGORIES

A MODEL CATEGORY STRUCTURE ON THE CATEGORY OF SIMPLICIAL CATEGORIES A MODEL CATEGORY STRUCTURE ON THE CATEGORY OF SIMPLICIAL CATEGORIES JULIA E. BERGNER Abstract. In this paper we put a cofibrantly generated model category structure on the category of small simplicial

More information

CS152: Programming Languages. Lecture 11 STLC Extensions and Related Topics. Dan Grossman Spring 2011

CS152: Programming Languages. Lecture 11 STLC Extensions and Related Topics. Dan Grossman Spring 2011 CS152: Programming Languages Lecture 11 STLC Extensions and Related Topics Dan Grossman Spring 2011 Review e ::= λx. e x e e c v ::= λx. e c τ ::= int τ τ Γ ::= Γ, x : τ (λx. e) v e[v/x] e 1 e 1 e 1 e

More information

First-Class Type Classes

First-Class Type Classes First-Class Type Classes Matthieu Sozeau Joint work with Nicolas Oury LRI, Univ. Paris-Sud - Démons Team & INRIA Saclay - ProVal Project Gallium Seminar November 3rd 2008 INRIA Rocquencourt Solutions for

More information

Equivalences for Free!

Equivalences for Free! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 Abstract Nicolas Tabareau Gallinette Project-Team,

More information

Modal Logic: Implications for Design of a Language for Distributed Computation p.1/53

Modal Logic: Implications for Design of a Language for Distributed Computation p.1/53 Modal Logic: Implications for Design of a Language for Distributed Computation Jonathan Moody (with Frank Pfenning) Department of Computer Science Carnegie Mellon University Modal Logic: Implications for

More information

Static and User-Extensible Proof Checking. Antonis Stampoulis Zhong Shao Yale University POPL 2012

Static and User-Extensible Proof Checking. Antonis Stampoulis Zhong Shao Yale University POPL 2012 Static and User-Extensible Proof Checking Antonis Stampoulis Zhong Shao Yale University POPL 2012 Proof assistants are becoming popular in our community CompCert [Leroy et al.] sel4 [Klein et al.] Four-color

More information

Equations: a tool for dependent pattern-matching

Equations: a tool for dependent pattern-matching Equations: a tool for dependent pattern-matching Cyprien Mangin cyprien.mangin@m4x.org Matthieu Sozeau matthieu.sozeau@inria.fr Inria Paris & IRIF, Université Paris-Diderot May 15, 2017 1 Outline 1 Setting

More information

Introduction to the Calculus of Inductive Definitions

Introduction to the Calculus of Inductive Definitions Introduction to the Calculus of Inductive Definitions Christine Paulin-Mohring 1 LRI, Univ Paris-Sud, CNRS and INRIA Saclay - Île-de-France, Toccata, Orsay F-91405 Christine.Paulin@lri.fr 1 Introduction

More information

Logical Verification Course Notes. Femke van Raamsdonk Vrije Universiteit Amsterdam

Logical Verification Course Notes. Femke van Raamsdonk Vrije Universiteit Amsterdam Logical Verification Course Notes Femke van Raamsdonk femke@csvunl Vrije Universiteit Amsterdam autumn 2008 Contents 1 1st-order propositional logic 3 11 Formulas 3 12 Natural deduction for intuitionistic

More information

Coq, a formal proof development environment combining logic and programming. Hugo Herbelin

Coq, a formal proof development environment combining logic and programming. Hugo Herbelin Coq, a formal proof development environment combining logic and programming Hugo Herbelin 1 Coq in a nutshell (http://coq.inria.fr) A logical formalism that embeds an executable typed programming language:

More information

Introduction to -categories

Introduction to -categories Introduction to -categories Paul VanKoughnett October 4, 2016 1 Introduction Good evening. We ve got a spectacular show for you tonight full of scares, spooks, and maybe a few laughs too. The standard

More information

Natural Numbers. We will use natural numbers to illustrate several ideas that will apply to Haskell data types in general.

Natural Numbers. We will use natural numbers to illustrate several ideas that will apply to Haskell data types in general. Natural Numbers We will use natural numbers to illustrate several ideas that will apply to Haskell data types in general. For the moment we will ignore that fact that each type in Haskell includes possible

More information

Type Theory in Type Theory using Quotient Inductive Types

Type Theory in Type Theory using Quotient Inductive Types Type Theory in Type Theory using Quotient Inductive Types Thorsten Altenkirch University of Nottingham {txa,auk}@cs.nott.ac.uk Ambrus Kaposi Abstract We present an internal formalisation of dependent type

More information

Contents. Chapter 1 SPECIFYING SYNTAX 1

Contents. Chapter 1 SPECIFYING SYNTAX 1 Contents Chapter 1 SPECIFYING SYNTAX 1 1.1 GRAMMARS AND BNF 2 Context-Free Grammars 4 Context-Sensitive Grammars 8 Exercises 8 1.2 THE PROGRAMMING LANGUAGE WREN 10 Ambiguity 12 Context Constraints in Wren

More information

MLW. Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. March 26, Radboud University Nijmegen

MLW. Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. March 26, Radboud University Nijmegen 1 MLW Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky Radboud University Nijmegen March 26, 2012 inductive types 2 3 inductive types = types consisting of closed terms built from constructors

More information

(Effectul) Game Semantics for Dependent Types

(Effectul) Game Semantics for Dependent Types Eindhoven, 3 April 2016 Overview Game theoretic models of dependent type theory (DTT): get faithful model of (total) DTT with Σ-, Π-, intensional Id-types and finite inductive type families; fully complete

More information

On Agda JAIST/AIST WS CVS/AIST Yoshiki Kinoshita, Yoriyuki Yamagata. Agenda

On Agda JAIST/AIST WS CVS/AIST Yoshiki Kinoshita, Yoriyuki Yamagata. Agenda On Agda 2009.3.12 JAIST/AIST WS CVS/AIST Yoshiki Kinoshita, Yoriyuki Yamagata Agenda On Agda Agda as a programming language Agda as a proof system Further information. 2 1 Agenda On Agda Agda as a programming

More information

The Next 700 Syntactic Models of Type Theory

The Next 700 Syntactic Models of Type Theory The Next 700 Syntactic Models of Type Theory Simon Boulier 1 Pierre-Marie Pédrot 2 Nicolas Tabareau 1 1 INRIA, 2 University of Ljubljana CPP 17th January 2017 Pédrot & al (INRIA & U Ljubljana) The Next

More information

A BRIEF INTRODUCTION TO TYPE THEORY AND THE UNIVALENCE AXIOM

A BRIEF INTRODUCTION TO TYPE THEORY AND THE UNIVALENCE AXIOM A BRIEF INTRODUCTION TO TYPE THEORY AND THE UNIVALENCE AXIOM JACKSON MACOR Abstract. In this paper, we will introduce the basic concepts and notation of modern type theory in an informal manner. We will

More information

Using context and model categories to define directed homotopies

Using context and model categories to define directed homotopies Using context and model categories to define directed homotopies p. 1/57 Using context and model categories to define directed homotopies Peter Bubenik Ecole Polytechnique Fédérale de Lausanne (EPFL) peter.bubenik@epfl.ch

More information

Homotopical Patch Theory

Homotopical Patch Theory Homotopical Patch Theory Carlo Angiuli Carnegie Mellon University cangiuli@cs.cmu.edu Ed Morehouse Carnegie Mellon University edmo@cs.cmu.edu Daniel R. Licata Wesleyan University dlicata@wesleyan.edu Robert

More information

Programming Proofs and Proving Programs. Nick Benton Microsoft Research, Cambridge

Programming Proofs and Proving Programs. Nick Benton Microsoft Research, Cambridge Programming Proofs and Proving Programs Nick Benton Microsoft Research, Cambridge Coffee is does Greek 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously

More information

Martin-Löf s Type Theory

Martin-Löf s Type Theory Martin-Löf s Type Theory B. Nordström, K. Petersson and J. M. Smith 1 Contents 1 Introduction.............................. 1 1.1 Different formulations of type theory............. 3 1.2 Implementations........................

More information

Introductory logic and sets for Computer scientists

Introductory logic and sets for Computer scientists Introductory logic and sets for Computer scientists Nimal Nissanke University of Reading ADDISON WESLEY LONGMAN Harlow, England II Reading, Massachusetts Menlo Park, California New York Don Mills, Ontario

More information

Programming with dependent types: passing fad or useful tool?

Programming with dependent types: passing fad or useful tool? Programming with dependent types: passing fad or useful tool? Xavier Leroy INRIA Paris-Rocquencourt IFIP WG 2.8, 2009-06 X. Leroy (INRIA) Dependently-typed programming 2009-06 1 / 22 Dependent types In

More information

LOGIC AND DISCRETE MATHEMATICS

LOGIC AND DISCRETE MATHEMATICS LOGIC AND DISCRETE MATHEMATICS A Computer Science Perspective WINFRIED KARL GRASSMANN Department of Computer Science University of Saskatchewan JEAN-PAUL TREMBLAY Department of Computer Science University

More information

This is already grossly inconvenient in present formalisms. Why do we want to make this convenient? GENERAL GOALS

This is already grossly inconvenient in present formalisms. Why do we want to make this convenient? GENERAL GOALS 1 THE FORMALIZATION OF MATHEMATICS by Harvey M. Friedman Ohio State University Department of Mathematics friedman@math.ohio-state.edu www.math.ohio-state.edu/~friedman/ May 21, 1997 Can mathematics be

More information

On the Logical Foundations of Staged Computation

On the Logical Foundations of Staged Computation On the Logical Foundations of Staged Computation Frank Pfenning PEPM 00, Boston, MA January 22, 2000 1. Introduction 2. Judgments and Propositions 3. Intensional Types 4. Run-Time Code Generation 5. The

More information

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY KARL L. STRATOS Abstract. The conventional method of describing a graph as a pair (V, E), where V and E repectively denote the sets of vertices and edges,

More information

Symmetry in Type Theory

Symmetry in Type Theory Google May 29th, 2012 What is Symmetry? Definition Symmetry: Two or more things that initially look distinct, may actually be instances of a more general underlying principle. Why do we care? Simplicity.

More information

Calculus of Inductive Constructions

Calculus of Inductive Constructions Calculus of Inductive Constructions Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Calculus of Inductive Constructions

More information

Function compose, Type cut, And the Algebra of logic

Function compose, Type cut, And the Algebra of logic Function compose, Type cut, And the Algebra of logic XIE Yuheng SZDIY community xyheme@gmail.com Abstract In this paper, I demonstrate the Curry-Howard correspondence of Gentzen s sequent calculus, and

More information

Research Statement. Daniel R. Licata

Research Statement. Daniel R. Licata Research Statement Daniel R. Licata I study programming languages, with a focus on applications of type theory and logic. I have published papers in major conferences in my area (POPL 2012, MFPS 2011,

More information

Spaces with algebraic structure

Spaces with algebraic structure University of California, Riverside January 6, 2009 What is a space with algebraic structure? A topological space has algebraic structure if, in addition to being a topological space, it is also an algebraic

More information

Synthesis of distributed mobile programs using monadic types in Coq

Synthesis of distributed mobile programs using monadic types in Coq Synthesis of distributed mobile programs using monadic types in Coq Marino Miculan Marco Paviotti Dept. of Mathematics and Computer Science University of Udine ITP 2012 August 13th, 2012 1 / 22 The problem

More information

Lecture 8: Summary of Haskell course + Type Level Programming

Lecture 8: Summary of Haskell course + Type Level Programming Lecture 8: Summary of Haskell course + Type Level Programming Søren Haagerup Department of Mathematics and Computer Science University of Southern Denmark, Odense October 31, 2017 Principles from Haskell

More information

An experiment with variable binding, denotational semantics, and logical relations in Coq. Adam Chlipala University of California, Berkeley

An experiment with variable binding, denotational semantics, and logical relations in Coq. Adam Chlipala University of California, Berkeley A Certified TypePreserving Compiler from Lambda Calculus to Assembly Language An experiment with variable binding, denotational semantics, and logical relations in Coq Adam Chlipala University of California,

More information

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic 3.4 Deduction and Evaluation: Tools 3.4.1 Conditional-Equational Logic The general definition of a formal specification from above was based on the existence of a precisely defined semantics for the syntax

More information

Lecture 0: Reivew of some basic material

Lecture 0: Reivew of some basic material Lecture 0: Reivew of some basic material September 12, 2018 1 Background material on the homotopy category We begin with the topological category TOP, whose objects are topological spaces and whose morphisms

More information

Automated Reasoning. Natural Deduction in First-Order Logic

Automated Reasoning. Natural Deduction in First-Order Logic Automated Reasoning Natural Deduction in First-Order Logic Jacques Fleuriot Automated Reasoning Lecture 4, page 1 Problem Consider the following problem: Every person has a heart. George Bush is a person.

More information

A MECHANIZATION OF TYPE THEORY. Gerard P. HUBT IRIA - LABORIA Rocquencourt FRANCE

A MECHANIZATION OF TYPE THEORY. Gerard P. HUBT IRIA - LABORIA Rocquencourt FRANCE Session 6 Logic: II Theorem Proving and A MECHANIZATION OF TYPE THEORY Gerard P. HUBT IRIA - LABORIA Rocquencourt FRANCE ABSTRACT A refutational system of logic for a language of order w ia presented.

More information

Martin-L f's Type Theory. B. Nordstr m, K. Petersson and J. M. Smith. Contents. 5.4 The set of functions (Cartesian product of a family of sets) 24

Martin-L f's Type Theory. B. Nordstr m, K. Petersson and J. M. Smith. Contents. 5.4 The set of functions (Cartesian product of a family of sets) 24 Martin-L f's Type Theory B. Nordstr m, K. Petersson and J. M. Smith Contents 1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 1.1 Dierent formulations of type theory : : : :

More information

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions. THREE LECTURES ON BASIC TOPOLOGY PHILIP FOTH 1. Basic notions. Let X be a set. To make a topological space out of X, one must specify a collection T of subsets of X, which are said to be open subsets of

More information

Refinement Types as Proof Irrelevance. William Lovas with Frank Pfenning

Refinement Types as Proof Irrelevance. William Lovas with Frank Pfenning Refinement Types as Proof Irrelevance William Lovas with Frank Pfenning Overview Refinement types sharpen existing type systems without complicating their metatheory Subset interpretation soundly and completely

More information

Towards a Logical Reconstruction of Relational Database Theory

Towards a Logical Reconstruction of Relational Database Theory Towards a Logical Reconstruction of Relational Database Theory On Conceptual Modelling, Lecture Notes in Computer Science. 1984 Raymond Reiter Summary by C. Rey November 27, 2008-1 / 63 Foreword DB: 2

More information

From Types to Sets in Isabelle/HOL

From Types to Sets in Isabelle/HOL From Types to Sets in Isabelle/HOL Extented Abstract Ondřej Kunčar 1 and Andrei Popescu 1,2 1 Fakultät für Informatik, Technische Universität München, Germany 2 Institute of Mathematics Simion Stoilow

More information

Calculating the Fundamental Group of the Circle in Homotopy Type Theory

Calculating the Fundamental Group of the Circle in Homotopy Type Theory Calculating the Fundamental Group of the Circle in Homotopy Type Theory Daniel R. Licata Institute for Advanced Study drl@cs.cmu.edu Michael Shulman Institute for Advanced Study mshulman@ias.edu arxiv:1301.3443v1

More information

Homotopy theory of higher categorical structures

Homotopy theory of higher categorical structures University of California, Riverside August 8, 2013 Higher categories In a category, we have morphisms, or functions, between objects. But what if you have functions between functions? This gives the idea

More information