Program Extraction in Church s Simple Theory of Types with Applications to Computable Analysis

Size: px
Start display at page:

Download "Program Extraction in Church s Simple Theory of Types with Applications to Computable Analysis"

Transcription

1 Program Extraction in Church s Simple Theory of Types with Applications to Computable Analysis Ulrich Berger Swansea University Computation and Correctness in Analysis (CCA) Nancy, 9 July / 36

2 A logical approach to computable analysis In this talk I present a logical approach to computable analysis based on program extraction from proofs. I ll explain the basic principle, give some examples and highlight aspects that might make this approach interesting to people working in computable analysis. The main attraction of the approach is, in my opinion, the fact that one can work directly with abstract mathematical objects without having to construct particular representations. The work reported in this talk is joint with Monika Seisenberger and Tie Hou from Swansea and Helmut Schichtenberg and Kenji Miyamoto in Munich. Parts of it is implemented in the the proof system Minlog. 2 / 36

3 The COMPUTAL project Participating Universities: Cambridge, Cape Town, Darmstadt, Hagen, Kanazawa, Ljubljana, Munich, Novosibirsk, Pretoria, Siegen, Swansea, Trier. 2nd COMPUTAL workshop, Gregynog, June 2013 Topics: computable analysis, domain theory, topology, exact real number computation, program extraction. 3 / 36

4 Overview Introduction: from constructive ideas to program extraction What is exact real number computation? Formalizing real numbers and continuous functions Extracting exact real number arithmetic Efficient continuity Church s simple theory of types Realizability interpretation of CST Conclusion 4 / 36

5 From constructive ideas to program extraction Origins Kronecker, Brouwer, Heyting, Kolmogorov, Bishop: Mathematics as a theory of mental constructions (Intuitionism, Constructivism) Gödel, Kleene, Kreisel: Functional- and Realizability interpretations Curry-Howard correspondence: Formulas-as-types, Proofs-as-programs Trends Proof Mining based on Functional Interpretation Constructive Type Theory Computational interpretations of classical proofs Program specification based on realizability Program extraction based on realizability 5 / 36

6 What is program extraction? (1) Instead of defining what it means for a formula A to be true one defines what it means for a program to realize A. Intuitively, a realizer is a solution of the computational problem expressed by A. (2) The Soundness Theorem states that from a constructive proof of A one can extract (automatically) a realizer of A (and a proof that it is a realizer). (3) The Adequacy Theorem states that programs that denote concrete data (e.g. natural numbers) evaluate to canonical representations of the data (e.g evaluates to 7). I.o.w. programms are not just formal expressions, but they compute as expected. Domain Theory is essential for the proof! For a category-theoretic formulation of (1), which leads to a general theory of representations and specification of programs, see e.g. Andrej Bauer s PhD thesis The Realizability Approach to Computable Analysis and Topology and Implementing real numbers with RZ (CCA 2007). 6 / 36

7 Program Extraction from a Computer Science Perspective Traditional approach to verified software: Program extraction: Advantages: Problem Program Proof Problem Proof Program the step Proof Program is automatic, correctness of extracted program is proved automatically, data structures are generated automatically, new data strures and algorithms may be discovered, problem and proof can be writen in usual mathematics (no constructivisation necessary), target programming language can be low level (and fast) since not used for manual programming. Moreover, all sub-programs are specified and proven correct, which supports safe modification of programs. 7 / 36

8 State of the art Program extraction (PE) is implemented in Nuprl PX Minlog Coq Isabel Agda... Minlog (Schwichtenberg, Munich): active research in PE PE from concrete and and abstract mathematics PE from constructive and classical proofs PE based on realizability or functional (Dialectica) interpretation case studies in constructive analysis, infinitary combinatorics, lambda calculus, parsing, sat solving, / 36

9 What is exact real number computation? A Double precision computation: f(x) = 1+x-(x^2)*(x+1)*((1/x)-(1/(x+1))) *Main> f (10^9) The problem is not that the result is wrong (it should be 1), but that floating point arithmetic doesn t warn us. Exact real number computation provides exact error bounds, can make errors arbitrarily small, comes with a rigorous proof of these facts, should be fast (irram, Müller, Trier) 9 / 36

10 Formalizing real numbers We assume that the structure R of real numbers with 0, 1, +,,, /, =, <, sin, sg,... is given axiomatically (no implementation or computational model provided). Any true disjunction-free first-order formulas are allowed as axioms. Since in classical logic disjunction can be expressed by other logical connectives, all classically true statements can be axioms. In addition true higher-order formulas satisfying certain syntactic criteria (details later) are allowed. For example, completeness: X nonempty and bounded X has l.u.b 10 / 36

11 Discontinuous and partial fuctions Discontinuous functions are allowed. E.g. the sign function with the axioms x < 0 sg(x) = 1 x = 0 sg(x) = 0 x > 0 sg(x) = 1 The partial function 1/x can be thought of as being totalized, however, without stating anything about 1/0: x 0 x 1/x = 1 11 / 36

12 Natural numbers, integers, rational numbers... are defined as subsets of R: x N µ x = 0 x 1 N x Z x N x N x Q n Z, m N \ {0}. x = n/m where µ means that N is inductively defined, i.e. it is the least set satisfying the equation. The realizers of t N will be unary numerals. To obtain binary one defines x N 2 µ x {0, 1} y > 0 (y N2 d {0, 1} (x = 2y + d)) Here is our first theorem we extract a program from: Theorem x (N(x) N 2 (x)). The extracted program translates between unary and binary notation. 12 / 36

13 Realizability by example: natural numbers In order to obtain the definition of a r N(x) ( a realizes the fact that x is a natural number ) we first compute the type of potential realizers as follows: replace t N by a name for the data type, say Nat. replace other atomic formulas by the unit or void type 1, delete all quantifiers and object terms, replace by + (disjoint sum) and by (cartesian product), carry out obvious simplifications (e.g. replace α 1 by α). Hence, the definition x N µ x = 0 x 1 N yields the free algebra of unary numbers: Nat µ 1 + Nat. The definition of a r N(x), where a Nat, is a copy of the definition of N (we call the constructors of Nat Z and S): a r N(x) µ (a = Z x = 0) (a = S(b) b r N(x 1)) Hence a r N(x) iff n is a unary representation of x. 13 / 36

14 Realizability of implication and for all A realizer of an implication A B is a function mapping realizers of A to realizers of B (as in the theory of representations). a r x A(x) means x (a r A(x)) (where a does not depend on x). Putting things together, a realizer of the formula is a function f such that x. N(x) N 2 (x) whenenver a realizes N(x) (i.e. a is a unary representation of x), then f (a) realizes N 2 (x) (i.e. f (a) is a binary representation of x). The function f is extracted from the proof of the formula. 14 / 36

15 Approximating real numbers Two (equivalent) ways of saying that a real number x I := [ 1, 1] can be approximated: A(x) x < 1 n N q Q x B n (q) C 0 (x) ν x < 1 d { 1, 0, 1} C 0 (2 x d) where x B n (q) x q < 2 n. A realizer of A(x) is a fast rational Cauchy sequence converging to x. A realizer of C 0 (x) is an infinite stream of signed digits, d 0 : d 1 :... representing x, i.e. x = d i 2 i+1 Theorem A(x) C 0 (x). 0 The extracted program translates between Cauchy and signed digit representation. 15 / 36

16 Extracting exact real number arithmetic Theorem If x, y C 0 then x+y 2 C 0. Theorem If x, y C 0 then xy C 0. From these theorems one extracts implementations of addition and multiplication w.r.t. the signed digit representation. Similar implementations were studied by Edalat, Potts, Heckmann, Escardo, Ciaffaglione, Gianantonio, e.t.c. The difference is that we extract the programs 16 / 36

17 Approximating continuous functions A function f : I I is continuous iff l N k N p Q q Q f [B k (p)] B l (q) Using this as a definition, a realizer of the statement f is continuous consists of such that α: N N l k (modulus) g : N Q Q (l, p) q (approximating function) l N p Q f [B α(l) (p)] B l (g(l, p)) This corresponds to the usual notion of representations of continuous functions. 17 / 36

18 Approximating continuous functions coinductively Alternatively, one can define continuous functions by a nested inductive/coinductive definition. In order to carry this out conveniently, we introduce explicit operators for least and greatest fixed points of monotone operators Φ : P(X ) P(X ): Hence, for example, µ Φ := least fixed point of Φ ν Φ := largest fixed point of Φ N = µ (λx. {x x = 0 x 1 X }) =: µ X. {x x = 0 x 1 X } We define C 1 I I by a nested inductive/coinductive definition as follows (F, G range over subsets of I I ): C 1 = ν F. µ G. {f : I I ( e SD va e f F ) ( d SD f av d G)} 18 / 36

19 Memo tries for continuous functions Theorem h is continuous iff h C 1. From the proof of this theorem one extracts programs translating between realisers of f is continuous (where continuity has to be defined in a constructively meaningful way) and realisers of f C 1. What is a realiser of f C 1? It is a finitely branching non-wellfounded tree describing when f emits and absorbs digits. I.p. it is a data structure, not a function. Similar trees have been studied by P. Hancock, D. Pattinson, N. Ghani. P. Hancock, D. Pattinson, N. Ghani. Representations of Stream Processors Using Nested Fixed Points, LMCS 5, / 36

20 Tree of the logistic map, f a (x) = a(1 x 2 ) 1, with a = 2/3 N Z N Z Z P Z Z N P P P N Z Z Z Z Z N P N Z Z N Z Z P Z Z N Z Z N 20 / 36

21 Extracting memoized exact real arithmetic The definition of C 1 I I can be generalised to C n I (In). Theorem The average function lies in C 2. Theorem Multiplication lies in C 2. Theorem If f C n and g 1,... g n C m, then f (g 1,..., g n ) C m. From these Theorems one extracts implementations of addition and multiplication as memo-tries, and of composition as a function on memo-tries. Experiments show considerable speed-up when sampling hard functions (e.g. high iterations of the logistic map) on a very fine grid. 21 / 36

22 Integration Let f denote the definite integral 1 1 f (x)dx. We assume the following axioms about f : (a) f = 1 2 (vad f ) + d where va d (x) := 2x d. (b) f = 1 2 ( (f av 1 ) + (f av 1 )). Theorem If f C 1, then f A, i.e. n N q Q f q 2 n. The proof is very short and uses only the equations (a), (b) above. The extracted program is reasonably efficient. 22 / 36

23 Towards efficient continuity Both notions of continuity considered so far have disadvantages regarding realizability: The first one is backward in the sense that it computes a modulus of continuity (which can be expensive and is often not needed). The coinductive notion C 1 (f ) memoizes which is bad in most cases. We introduce a weaker notion of continuity with a nonconstructive notion of modulus. 23 / 36

24 m-continuity A relation m N N is called a modulus if l N k N m[ k] l where k:= {k N k k} and m[k] := {l k K m(k, l)}. A function f : X X is m-continuous if k N p Q l N (m(k, l) q Q f [B k (p)] B l (q)) A realizer of f is m-continuous is a function g : N Q N Q such that k N p Q m(k, l) f [B k (p)] B l (q) where (l, q) := g(k, p) Hence the realizer is entirely forward. 24 / 36

25 Composition Theorem If f is m-continuous and f is m -continuous, then f f is m m-continuous. Realizer extracted from the proof: Comp(g, g ) = g g. Note that no moduli occur in the realizer. It is not difficult to see that a function is continuous iff it is m-continuous for some modulus m. 25 / 36

26 Application Theorem (EMP) If f is m-continuous and x is approximable, then f (x) is approximable. Proof needs a slight extension of Markov s principle (EMP). Realizer extracted from the proof of the theorem: App(g, ϕ) = λl.q where (l, q) = g(k, ϕ(k)) with k minimal such that l l The modulus guarantees that l l, eventually. 26 / 36

27 Extended Markov s principle (EMP) Markov s Principle (MP) x (N(x) D(x) D(x)) x (N(x) D(x)) x (N(x) D(x)) Extended Markov s Principle (EMP) x, y (A(x, y) D(y) D(y)) x (N(x) y A(x, y)) x (N(x) y (A(x, y) D(y))) x, y (N(x) A(x, y) D(y)) 27 / 36

28 Realizability of EMP EMP can be realized using the least number operator. EMP follows from MP and countable choice. Is countable choice necessary? 28 / 36

29 Church s theory of simple types (CST) Alonzo Church: A Formulation of the Simple Theory of Types. The Journal of Symbolic Logic, Vol. 5, No ). CST is a formal system for higher order-logic presented as a simply typed lambda calculus. Types a set I of base types for individuals; the base type o (type of propositions, or truth values); ρ σ, ρ σ. Constants Terms,, : o o o ρ, ρ : (ρ o) o (ρ arbitrary) TER M, N ::= x VAR c C λx : ρ.m MN M, N π 0 (M) π 1 (M) 29 / 36

30 Semantics of CST CST admits a straightforward classical semantics: o = {0, 1} = cartesian product = full function space The propositional connective are interpreted as usual: ρ (p) = min{p(x) x ρ} ρ (p) = max{p(x) x ρ} 30 / 36

31 Proofs in CST A typing context is a sequence Γ = x 1 : ρ 1,..., x n : ρ n. A Γ-formula is a term that has type o in the typing context Γ. One can define an intuitionistic proof calculus for sequents of the form Γ A where is a finite set of Γ-formulas and A is a Γ-formula. 31 / 36

32 Negation, equality, least and greatest fixed points Truth, falsity and negation can be defined as := x : o.x := x : o.x A := A Equality can be defined as x = ρ y := p : ρ o. p x p y One can also define least and greatest fixed point operators µ ρ, ν ρ : (ρ ρ) ρ for predicate types ρ (e.g. ρ = ι o). The expected rules can be derived. 32 / 36

33 Realizability for CST (brief sketch) Let δ be a new type of programs or potential realizers (the semantics of δ is a suitable Scott domain). For formulas A : o realizability is clear: the realizability interptetation of A must define a set of realizers, i.e. a term R r (A) of type δ o. But what is the realizability interpretation of a term of higher type, say Φ : (ι o) ι o? The crucial insight is that the type of the realizability interpretation of Φ is obtained by simply replacing in the type of Φ each occurrence of o by ι o. Hence for the example above, R r (Φ) : (ι δ o) ι δ o The rest of the definition of realizability is rather straight forward. What is not straight forward is program extraction and the proof of the Soundness Theorem. 33 / 36

34 Remarks The realizability interpretation of CST is a vast generalization of existing interpretations, e.g. by M Tatsuta and implementations in Minlog and Coq. I.p. only strictly positive induction and coinduction had been considered so far. The soundness proof for monotone induction and coinduction seems to need induction and coinduction for non-mononotone operators. A prototype implementation is under development (joint work with T Hou). 34 / 36

35 Conclusion Program extraction via realizability... defines representations implicitely by predicates (e.g. A R instead of ρ : N N R); analyses the computational content of a theorem, but not of its statement (as in Weihrauch degrees), but of its proof; considers computations rather than computability; aims at correctness rather than speed. provides a useful guideline for designing data, representations and algorithms, even in the absence of a proof assistant. 35 / 36

36 Some References B. and Monika Seisenberger, Proofs, programs, processes. Theory of Computing Systems 51(3), B., Tie Hou, Typed vs. Untyped realizability, Electronic Notes in Computer Science 286, Andrew Lawrence, B., Monika Seisenberger, Extracting a DPLL Algorithm. Electronic Notes in Computer Science 286, B., From coinductive proofs to exact real arithmetic: theory and applications. LMCS 7(1), B., Kenji Miyamoto, Helmut Schwichtenberg, and Monika Seisenberger, Minlog - A Tool for Program Extraction for Supporting Algebra and Coalgebra. Lecture Notes in Computer Science, B., Realisability for Induction and Coinduction with Applications to Constructive Analysis. Journal of Universal Computer Science, / 36

Uniform Schemata for Proof Rules

Uniform Schemata for Proof Rules Uniform Schemata for Proof Rules Ulrich Berger and Tie Hou Department of omputer Science, Swansea University, UK {u.berger,cshou}@swansea.ac.uk Abstract. Motivated by the desire to facilitate the implementation

More information

Scott Domains for Denotational Semantics and Program Extraction

Scott Domains for Denotational Semantics and Program Extraction Scott Domains for Denotational Semantics and Program Extraction Ulrich Berger Swansea University Workshop Domains Oxford, 7-8 July 2018 1 / 46 Overview 1. Domains 2. Computability 3. Denotational semantics

More information

PROGRAM EXTRACTION IN EXACT REAL ARITHMETIC

PROGRAM EXTRACTION IN EXACT REAL ARITHMETIC PROGRAM EXTRACTION IN EXACT REAL ARITHMETIC KENJI MIYAMOTO AND HELMUT SCHWICHTENBERG Dedicated to John Tucker on occasion of his 60th birthday Abstract. The importance of an abstract approach to a computation

More information

Proofs and computations

Proofs and computations (j.w.w. Kenji Miyamoto) Mathematisches Institut, LMU, München Leeds University, 7. March 2012 Formalization and extraction One can extract from a (constructive) proof of a formula with computational content

More information

Program extraction in exact real arithmetic

Program extraction in exact real arithmetic Under consideration for publication in Math. Struct. in Comp. Science Program extraction in exact real arithmetic K E N J I M I Y A M O T O and H E L M U T S C H W I C H T E N B E R G Mathematisches Institut,

More information

CHAPTER 11. Introduction to Intuitionistic Logic

CHAPTER 11. Introduction to Intuitionistic Logic CHAPTER 11 Introduction to Intuitionistic Logic Intuitionistic logic has developed as a result of certain philosophical views on the foundation of mathematics, known as intuitionism. Intuitionism was originated

More information

CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3)

CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3) CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3) Robert Constable 1 Lecture Plan More about the rationals dependent types enumerating Q (Q is countable) Function inverses bijections one-one

More information

Minimal logic for computable functionals

Minimal logic for computable functionals Minimal logic for computable functionals Helmut Schwichtenberg Mathematisches Institut der Universität München Contents 1. Partial continuous functionals 2. Total and structure-total functionals 3. Terms;

More information

Introduction to dependent type theory. CIRM, May 30

Introduction to dependent type theory. CIRM, May 30 CIRM, May 30 Goals of this presentation Some history and motivations Notations used in type theory Main goal: the statement of main properties of equality type and the univalence axiom First talk P ropositions

More information

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg Type Theory and Constructive Mathematics Type Theory and Constructive Mathematics Thierry Coquand University of Gothenburg Content An introduction to Voevodsky s Univalent Foundations of Mathematics The

More information

Subtractive Logic. To appear in Theoretical Computer Science. Tristan Crolard May 3, 1999

Subtractive Logic. To appear in Theoretical Computer Science. Tristan Crolard May 3, 1999 Subtractive Logic To appear in Theoretical Computer Science Tristan Crolard crolard@ufr-info-p7.jussieu.fr May 3, 1999 Abstract This paper is the first part of a work whose purpose is to investigate duality

More information

First-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig

First-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic

More information

Propositional Logic Language

Propositional Logic Language Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite

More information

TR : Binding Modalities

TR : Binding Modalities City University of New York (CUNY) CUNY Academic Works Computer Science Technical Reports Graduate Center 2012 TR-2012011: Binding Modalities Sergei N. Artemov Tatiana Yavorskaya (Sidon) Follow this and

More information

Topology for functional programming

Topology for functional programming Topology for functional programming Martín Escardó University of Birmingham, England EWSCS, Palmse, Estonia, 26 Feb 2 Mar 2012 Computational fact Function types A B with A infinite don t have decidable

More information

Extended Abstract: Reconsidering Intuitionistic Duality

Extended Abstract: Reconsidering Intuitionistic Duality Extended Abstract: Reconsidering Intuitionistic Duality Aaron Stump, Harley Eades III, Ryan McCleeary Computer Science The University of Iowa 1 Introduction This paper proposes a new syntax and proof system

More information

The Curry-Howard Isomorphism

The Curry-Howard Isomorphism The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09

More information

Constructive reverse mathematics: an introduction

Constructive reverse mathematics: an introduction Constructive reverse mathematics: an introduction Hajime Ishihara School of Information Science Japan Advanced Institute of Science and Technology (JAIST) Nomi, Ishikawa 923-1292, Japan CMFP 2013, Nis,

More information

hal , version 1-21 Oct 2009

hal , version 1-21 Oct 2009 ON SKOLEMISING ZERMELO S SET THEORY ALEXANDRE MIQUEL Abstract. We give a Skolemised presentation of Zermelo s set theory (with notations for comprehension, powerset, etc.) and show that this presentation

More information

A Semantics of Evidence for Classical Arithmetic

A Semantics of Evidence for Classical Arithmetic Thierry Coquand Chambery, June 5, 2009 Intuitionistic analysis of classical logic This work is motivated by the first consistency proof of arithmetic by Gentzen (1936) Unpublished by Gentzen (criticisms

More information

cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018

cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018 cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018 Chapter 7 Introduction to Intuitionistic and Modal Logics CHAPTER 7 SLIDES Slides Set 1 Chapter 7 Introduction to Intuitionistic and Modal Logics

More information

The Calculus of Inductive Constructions

The Calculus of Inductive Constructions The Calculus of Inductive Constructions Hugo Herbelin 10th Oregon Programming Languages Summer School Eugene, Oregon, June 16-July 1, 2011 1 Outline - A bit of history, leading to the Calculus of Inductive

More information

Chapter 11: Automated Proof Systems (1)

Chapter 11: Automated Proof Systems (1) Chapter 11: Automated Proof Systems (1) SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems

More information

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes These notes form a brief summary of what has been covered during the lectures. All the definitions must be memorized and understood. Statements

More information

Classical First-Order Logic

Classical First-Order Logic Classical First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) First-Order Logic (Classical) MFES 2008/09

More information

Beyond First-Order Logic

Beyond First-Order Logic Beyond First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Beyond First-Order Logic MFES 2008/09 1 / 37 FOL

More information

University of Oxford, Michaelis November 16, Categorical Semantics and Topos Theory Homotopy type theor

University of Oxford, Michaelis November 16, Categorical Semantics and Topos Theory Homotopy type theor Categorical Semantics and Topos Theory Homotopy type theory Seminar University of Oxford, Michaelis 2011 November 16, 2011 References Johnstone, P.T.: Sketches of an Elephant. A Topos-Theory Compendium.

More information

Kleene realizability and negative translations

Kleene realizability and negative translations Q E I U G I C Kleene realizability and negative translations Alexandre Miquel O P. D E. L Ō A U D E L A R April 21th, IMERL Plan 1 Kleene realizability 2 Gödel-Gentzen negative translation 3 Lafont-Reus-Streicher

More information

Light Dialectica program extraction from a classical Fibonacci proof

Light Dialectica program extraction from a classical Fibonacci proof Light Dialectica program extraction from a classical Fibonacci proof using an optimization of Gödel s technique towards the extraction of more efficient programs from classical proofs Mircea Dan HERNEST

More information

Propositional Logic: Syntax

Propositional Logic: Syntax Logic Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about time (and programs) epistemic

More information

cis32-ai lecture # 18 mon-3-apr-2006

cis32-ai lecture # 18 mon-3-apr-2006 cis32-ai lecture # 18 mon-3-apr-2006 today s topics: propositional logic cis32-spring2006-sklar-lec18 1 Introduction Weak (search-based) problem-solving does not scale to real problems. To succeed, problem

More information

The greatest common divisor: a case study for program extraction from classical proofs

The greatest common divisor: a case study for program extraction from classical proofs The greatest common divisor: a case study for program extraction from classical proofs U. Berger H. Schwichtenberg September 25, 2000 Yiannis Moschovakis suggested the following example of a classical

More information

Herbrand Theorem, Equality, and Compactness

Herbrand Theorem, Equality, and Compactness CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Herbrand Theorem, Equality, and Compactness The Herbrand Theorem We now consider a complete method for proving the unsatisfiability of sets of first-order

More information

Cylindrical Algebraic Decomposition in Coq

Cylindrical Algebraic Decomposition in Coq Cylindrical Algebraic Decomposition in Coq MAP 2010 - Logroño 13-16 November 2010 Assia Mahboubi INRIA Microsoft Research Joint Centre (France) INRIA Saclay Île-de-France École Polytechnique, Palaiseau

More information

Chapter 11: Automated Proof Systems

Chapter 11: Automated Proof Systems Chapter 11: Automated Proof Systems SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems are

More information

Equational Logic. Chapter Syntax Terms and Term Algebras

Equational Logic. Chapter Syntax Terms and Term Algebras Chapter 2 Equational Logic 2.1 Syntax 2.1.1 Terms and Term Algebras The natural logic of algebra is equational logic, whose propositions are universally quantified identities between terms built up from

More information

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic The Importance of Being Formal Martin Henz February 5, 2014 Propositional Logic 1 Motivation In traditional logic, terms represent sets, and therefore, propositions are limited to stating facts on sets

More information

Models and Interpretations of (Intuitionistic) Analysis

Models and Interpretations of (Intuitionistic) Analysis Models and Interpretations of (Intuitionistic) Analysis Joan Rand Moschovakis Occidental College (Emerita), MPLA VIG at UCLA February 4-6, 2011 What is intuitionistic analysis and why should we care? Historically,

More information

From Constructibility and Absoluteness to Computability and Domain Independence

From Constructibility and Absoluteness to Computability and Domain Independence From Constructibility and Absoluteness to Computability and Domain Independence Arnon Avron School of Computer Science Tel Aviv University, Tel Aviv 69978, Israel aa@math.tau.ac.il Abstract. Gödel s main

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

First-Order Logic. Chapter Overview Syntax

First-Order Logic. Chapter Overview Syntax Chapter 10 First-Order Logic 10.1 Overview First-Order Logic is the calculus one usually has in mind when using the word logic. It is expressive enough for all of mathematics, except for those concepts

More information

Informal Statement Calculus

Informal Statement Calculus FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example

More information

Nonclassical logics (Nichtklassische Logiken)

Nonclassical logics (Nichtklassische Logiken) Nonclassical logics (Nichtklassische Logiken) VU 185.249 (lecture + exercises) http://www.logic.at/lvas/ncl/ Chris Fermüller Technische Universität Wien www.logic.at/people/chrisf/ chrisf@logic.at Winter

More information

What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos

What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos armandobcm@yahoo.com February 5, 2014 Abstract This note is for personal use. It

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 2. Theories and models Categorical approach to many-sorted

More information

Semantics of intuitionistic propositional logic

Semantics of intuitionistic propositional logic Semantics of intuitionistic propositional logic Erik Palmgren Department of Mathematics, Uppsala University Lecture Notes for Applied Logic, Fall 2009 1 Introduction Intuitionistic logic is a weakening

More information

Constructive analysis

Constructive analysis Constructive analysis Philosophy, Proof and Fundamentals Hajime Ishihara School of Information Science Japan Advanced Institute of Science and Technology (JAIST) Nomi, Ishikawa 923-1292, Japan Interval

More information

Automata Theory and Formal Grammars: Lecture 1

Automata Theory and Formal Grammars: Lecture 1 Automata Theory and Formal Grammars: Lecture 1 Sets, Languages, Logic Automata Theory and Formal Grammars: Lecture 1 p.1/72 Sets, Languages, Logic Today Course Overview Administrivia Sets Theory (Review?)

More information

Forcing-based cut-elimination for Gentzen-style intuitionistic sequent calculus

Forcing-based cut-elimination for Gentzen-style intuitionistic sequent calculus Forcing-based cut-elimination for Gentzen-style intuitionistic sequent calculus Hugo Herbelin 1 and Gyesik Lee 2 1 INRIA & PPS, Paris Université 7 Paris, France Hugo.Herbelin@inria.fr 2 ROSAEC center,

More information

First-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms

First-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms First-Order Logic 1 Syntax Domain of Discourse The domain of discourse for first order logic is FO structures or models. A FO structure contains Relations Functions Constants (functions of arity 0) FO

More information

Higher Order Containers

Higher Order Containers Higher Order Containers Thorsten Altenkirch 1, Paul Levy 2, and Sam Staton 3 1 University of Nottingham 2 University of Birmingham 3 University of Cambridge Abstract. Containers are a semantic way to talk

More information

Copies of classical logic in intuitionistic logic

Copies of classical logic in intuitionistic logic Copies of classical logic in intuitionistic logic Jaime Gaspar 8 November 01 arxiv:111.1850v1 [math.lo] 8 Nov 01 Abstract Classical logic (the logic of non-constructive mathematics) is stronger than intuitionistic

More information

AN INTRODUCTION TO SEPARATION LOGIC. 2. Assertions

AN INTRODUCTION TO SEPARATION LOGIC. 2. Assertions AN INTRODUCTION TO SEPARATION LOGIC 2. Assertions John C. Reynolds Carnegie Mellon University January 7, 2011 c 2011 John C. Reynolds Pure Assertions An assertion p is pure iff, for all stores s and all

More information

Categorical axioms for functional real-number computation

Categorical axioms for functional real-number computation Categorical axioms for functional real-number computation Parts 1 & 2 Martín Escardó University of Birmingham, England Joint work with Alex Simpson, University of Edinburgh, Scotland MAP, Leiden, 28 Nov

More information

Streams and Coalgebra Lecture 2

Streams and Coalgebra Lecture 2 Streams and Coalgebra Lecture 2 Helle Hvid Hansen and Jan Rutten Radboud University Nijmegen & CWI Amsterdam Representing Streams II, Lorentz Center, Leiden, January 2014 Tutorial Overview Lecture 1 (Hansen):

More information

On Modal Logics of Partial Recursive Functions

On Modal Logics of Partial Recursive Functions arxiv:cs/0407031v1 [cs.lo] 12 Jul 2004 On Modal Logics of Partial Recursive Functions Pavel Naumov Computer Science Pennsylvania State University Middletown, PA 17057 naumov@psu.edu June 14, 2018 Abstract

More information

Categories, Proofs and Programs

Categories, Proofs and Programs Categories, Proofs and Programs Samson Abramsky and Nikos Tzevelekos Lecture 4: Curry-Howard Correspondence and Cartesian Closed Categories In A Nutshell Logic Computation 555555555555555555 5 Categories

More information

Propositions and Proofs

Propositions and Proofs Propositions and Proofs Gert Smolka, Saarland University April 25, 2018 Proposition are logical statements whose truth or falsity can be established with proofs. Coq s type theory provides us with a language

More information

1 FUNDAMENTALS OF LOGIC NO.10 HERBRAND THEOREM Tatsuya Hagino hagino@sfc.keio.ac.jp lecture URL https://vu5.sfc.keio.ac.jp/slide/ 2 So Far Propositional Logic Logical connectives (,,, ) Truth table Tautology

More information

Structuring Logic with Sequent Calculus

Structuring Logic with Sequent Calculus Structuring Logic with Sequent Calculus Alexis Saurin ENS Paris & École Polytechnique & CMI Seminar at IIT Delhi 17th September 2004 Outline of the talk Proofs via Natural Deduction LK Sequent Calculus

More information

Reverse Mathematics. Benedict Eastaugh December 13, 2011

Reverse Mathematics. Benedict Eastaugh December 13, 2011 Reverse Mathematics Benedict Eastaugh December 13, 2011 In ordinary mathematical practice, mathematicians prove theorems, reasoning from a fixed 1 set of axioms to a logically derivable conclusion. The

More information

Part III Logic. Theorems. Based on lectures by T. E. Forster Notes taken by Dexter Chua. Lent 2017

Part III Logic. Theorems. Based on lectures by T. E. Forster Notes taken by Dexter Chua. Lent 2017 Part III Logic Theorems Based on lectures by T. E. Forster Notes taken by Dexter Chua Lent 2017 These notes are not endorsed by the lecturers, and I have modified them (often significantly) after lectures.

More information

Motivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory

Motivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure

More information

Logic. Propositional Logic: Syntax. Wffs

Logic. Propositional Logic: Syntax. Wffs Logic Propositional Logic: Syntax Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about

More information

Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. Radboud University Nijmegen. March 5, 2012

Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. Radboud University Nijmegen. March 5, 2012 1 λ Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky Radboud University Nijmegen March 5, 2012 2 reading Femke van Raamsdonk Logical Verification Course Notes Herman Geuvers Introduction to

More information

185.A09 Advanced Mathematical Logic

185.A09 Advanced Mathematical Logic 185.A09 Advanced Mathematical Logic www.volny.cz/behounek/logic/teaching/mathlog13 Libor Běhounek, behounek@cs.cas.cz Lecture #1, October 15, 2013 Organizational matters Study materials will be posted

More information

Sequence convergence, the weak T-axioms, and first countability

Sequence convergence, the weak T-axioms, and first countability Sequence convergence, the weak T-axioms, and first countability 1 Motivation Up to now we have been mentioning the notion of sequence convergence without actually defining it. So in this section we will

More information

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018

More information

Logic. Propositional Logic: Syntax

Logic. Propositional Logic: Syntax Logic Propositional Logic: Syntax Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

Equational Logic and Term Rewriting: Lecture I

Equational Logic and Term Rewriting: Lecture I Why so many logics? You all know classical propositional logic. Why would we want anything more? Equational Logic and Term Rewriting: Lecture I One reason is that we might want to change some basic logical

More information

Domain theory and denotational semantics of functional programming

Domain theory and denotational semantics of functional programming Domain theory and denotational semantics of functional programming Martín Escardó School of Computer Science, Birmingham University MGS 2007, Nottingham, version of April 20, 2007 17:26 What is denotational

More information

17.1 Correctness of First-Order Tableaux

17.1 Correctness of First-Order Tableaux Applied Logic Lecture 17: Correctness and Completeness of First-Order Tableaux CS 4860 Spring 2009 Tuesday, March 24, 2009 Now that we have introduced a proof calculus for first-order logic we have to

More information

Proof Theory and Subsystems of Second-Order Arithmetic

Proof Theory and Subsystems of Second-Order Arithmetic Proof Theory and Subsystems of Second-Order Arithmetic 1. Background and Motivation Why use proof theory to study theories of arithmetic? 2. Conservation Results Showing that if a theory T 1 proves ϕ,

More information

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1 Přednáška 12 Důkazové kalkuly Kalkul Hilbertova typu 11/29/2006 Hilbertův kalkul 1 Formal systems, Proof calculi A proof calculus (of a theory) is given by: A. a language B. a set of axioms C. a set of

More information

MONADIC FRAGMENTS OF INTUITIONISTIC CONTROL LOGIC

MONADIC FRAGMENTS OF INTUITIONISTIC CONTROL LOGIC Bulletin of the Section of Logic Volume 45:3/4 (2016), pp. 143 153 http://dx.doi.org/10.18778/0138-0680.45.3.4.01 Anna Glenszczyk MONADIC FRAGMENTS OF INTUITIONISTIC CONTROL LOGIC Abstract We investigate

More information

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54 Propositional Logic CS 3234: Logic and Formal Systems Martin Henz and Aquinas Hobor August 26, 2010 Generated on Tuesday 31 August, 2010, 16:54 1 Motivation In traditional logic, terms represent sets,

More information

Bootstrapping Mathematics

Bootstrapping Mathematics Bootstrapping Mathematics Masahiko Sato Graduate School of Informatics, Kyoto University Mathematical Logic: Development and Evolution into Various Sciences Kanazawa, Japan March 9, 2012 Contents What

More information

AAA615: Formal Methods. Lecture 2 First-Order Logic

AAA615: Formal Methods. Lecture 2 First-Order Logic AAA615: Formal Methods Lecture 2 First-Order Logic Hakjoo Oh 2017 Fall Hakjoo Oh AAA615 2017 Fall, Lecture 2 September 24, 2017 1 / 29 First-Order Logic An extension of propositional logic with predicates,

More information

With Question/Answer Animations. Chapter 2

With Question/Answer Animations. Chapter 2 With Question/Answer Animations Chapter 2 Chapter Summary Sets The Language of Sets Set Operations Set Identities Functions Types of Functions Operations on Functions Sequences and Summations Types of

More information

Part I: Propositional Calculus

Part I: Propositional Calculus Logic Part I: Propositional Calculus Statements Undefined Terms True, T, #t, 1 False, F, #f, 0 Statement, Proposition Statement/Proposition -- Informal Definition Statement = anything that can meaningfully

More information

The semantics of propositional logic

The semantics of propositional logic The semantics of propositional logic Readings: Sections 1.3 and 1.4 of Huth and Ryan. In this module, we will nail down the formal definition of a logical formula, and describe the semantics of propositional

More information

Lectures on Computational Type Theory

Lectures on Computational Type Theory Lectures on Computational Type Theory From Proofs-as-Programs to Proofs-as-Processes Robert L. Constable Cornell University Lecture Schedule Lecture 1: Origins and Introduction to Computational Type Theory

More information

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010)

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010) http://math.sun.ac.za/amsc/sam Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics 2009-2010 Lecture notes in progress (27 March 2010) Contents 2009 Semester I: Elements 5 1. Cartesian product

More information

Automated Reasoning Lecture 5: First-Order Logic

Automated Reasoning Lecture 5: First-Order Logic Automated Reasoning Lecture 5: First-Order Logic Jacques Fleuriot jdf@inf.ac.uk Recap Over the last three lectures, we have looked at: Propositional logic, semantics and proof systems Doing propositional

More information

Gödel s Incompleteness Theorem. Overview. Computability and Logic

Gödel s Incompleteness Theorem. Overview. Computability and Logic Gödel s Incompleteness Theorem Overview Computability and Logic Recap Remember what we set out to do in this course: Trying to find a systematic method (algorithm, procedure) which we can use to decide,

More information

Proofs. Chapter 2 P P Q Q

Proofs. Chapter 2 P P Q Q Chapter Proofs In this chapter we develop three methods for proving a statement. To start let s suppose the statement is of the form P Q or if P, then Q. Direct: This method typically starts with P. Then,

More information

LECTURE NOTES DISCRETE MATHEMATICS. Eusebius Doedel

LECTURE NOTES DISCRETE MATHEMATICS. Eusebius Doedel LECTURE NOTES on DISCRETE MATHEMATICS Eusebius Doedel 1 LOGIC Introduction. First we introduce some basic concepts needed in our discussion of logic. These will be covered in more detail later. A set is

More information

Lecture Notes on Combinatory Modal Logic

Lecture Notes on Combinatory Modal Logic Lecture Notes on Combinatory Modal Logic 15-816: Modal Logic Frank Pfenning Lecture 9 February 16, 2010 1 Introduction The connection between proofs and program so far has been through a proof term assignment

More information

ON COMPUTAMBLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHENIDUGSPROBLEM. Turing 1936

ON COMPUTAMBLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHENIDUGSPROBLEM. Turing 1936 ON COMPUTAMBLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHENIDUGSPROBLEM Turing 1936 Where are We? Ignoramus et ignorabimus Wir mussen wissen Wir werden wissen We do not know We shall not know We must know

More information

Quantifiers and Functions in Intuitionistic Logic

Quantifiers and Functions in Intuitionistic Logic Quantifiers and Functions in Intuitionistic Logic Association for Symbolic Logic Spring Meeting Seattle, April 12, 2017 Rosalie Iemhoff Utrecht University, the Netherlands 1 / 37 Quantifiers are complicated.

More information

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P.

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P. First-Order Logic Syntax The alphabet of a first-order language is organised into the following categories. Logical connectives:,,,,, and. Auxiliary symbols:.,,, ( and ). Variables: we assume a countable

More information

Principles of Real Analysis I Fall I. The Real Number System

Principles of Real Analysis I Fall I. The Real Number System 21-355 Principles of Real Analysis I Fall 2004 I. The Real Number System The main goal of this course is to develop the theory of real-valued functions of one real variable in a systematic and rigorous

More information

Completeness Theorems and λ-calculus

Completeness Theorems and λ-calculus Thierry Coquand Apr. 23, 2005 Content of the talk We explain how to discover some variants of Hindley s completeness theorem (1983) via analysing proof theory of impredicative systems We present some remarks

More information

2.2 Lowenheim-Skolem-Tarski theorems

2.2 Lowenheim-Skolem-Tarski theorems Logic SEP: Day 1 July 15, 2013 1 Some references Syllabus: http://www.math.wisc.edu/graduate/guide-qe Previous years qualifying exams: http://www.math.wisc.edu/ miller/old/qual/index.html Miller s Moore

More information

SHEAF INTERPRETATIONS FOR GENERALISED PREDICATIVE INTUITIONISTIC SYSTEMS

SHEAF INTERPRETATIONS FOR GENERALISED PREDICATIVE INTUITIONISTIC SYSTEMS SHEAF INTERPRETATIONS FOR GENERALISED PREDICATIVE INTUITIONISTIC SYSTEMS A thesis submitted to the University of Manchester for the degree of Doctor of Philosophy in the Faculty of Science and Engineering

More information

Lecture 2: Syntax. January 24, 2018

Lecture 2: Syntax. January 24, 2018 Lecture 2: Syntax January 24, 2018 We now review the basic definitions of first-order logic in more detail. Recall that a language consists of a collection of symbols {P i }, each of which has some specified

More information

Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction)

Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction) Overview Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction) Jeremy Avigad Department of Philosophy Carnegie Mellon University avigad@cmu.edu http://andrew.cmu.edu/

More information

Classical First-Order Logic

Classical First-Order Logic Classical First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2009/2010 Maria João Frade (DI-UM) First-Order Logic (Classical) MFES 2009/10

More information

Contribution of Problems

Contribution of Problems Exam topics 1. Basic structures: sets, lists, functions (a) Sets { }: write all elements, or define by condition (b) Set operations: A B, A B, A\B, A c (c) Lists ( ): Cartesian product A B (d) Functions

More information