An Intuitionistic Logic That Proves Markov's Principle
Total Page:16
File Type:pdf, Size:1020Kb
An Intuitionistic Logic That Proves Markov’s Principle (revision fixing typos – April 2021) Hugo Herbelin INRIA - PPS Paris, France [email protected] Abstract—We design an intuitionistic predicate logic that was shown e.g. by Smorynski in [2]. One of our objective supports a limited amount of classical reasoning, just enough is then to study intuitionistic logic extended with Markov’s to prove a variant of Markov’s principle suited for predicate principle as a proper constructive logic. logic. At the computational level, the extraction of an existential An elementary method to prove the intuitionistic admis- witness out of a proof of its double negation is done by using sibility of Markov’s rule has been given by Friedman who a form of statically-bound exception mechanism, what can be introduced for this purpose a notion of A-translation [9] (see seen as a direct-style variant of Friedman’s A-translation. also Dragalin [10]). In fact, Friedman’s proof does not prove Keywords-Markov’s principle; intuitionistic logic; proof-as- ::9x A(x) ! 9x A(x) for any propositional formula A(x) program correspondence; exceptions but only for those A(x) that do not contain the implication connective (this was noticed for instance in Berger [11]). I. INTRODUCTION More generally, Friedman’s method can be interpreted from In arithmetic, Markov’s principle is a weak classical the proof-theoretical point of view as a proof that ::A ! A scheme stating ::9x A(x) ! 9x A(x) for every decidable is admissible in intuitionistic predicate logic whenever A is formula A(x). Though not derivable [1] in Heyting Arith- a 8-!-free formula, the case of 9x A(x) for A(x) !-free metic (i.e. intuitionistic arithmetic), its formulation as a rule being just a prototypical instance of the scheme. (Markov’s rule) is admissible (see e.g. [2] for a classical We concentrate here on predicate logic and refer to in proof). One of the important properties of Markov’s princi- this context as Markov’s principle the scheme that asserts ple is that it implies, via the double-negation translation, the ::T ! T whenever T is 8-!-free. Extending intuitionistic conservativity of classical logic over intuitionistic logic for logic with classical reasoning on 8-!-free formulas is then 0 Π2-formulas. the same as adding Markov’s principle and we show that the Markov’s principle is realizable (in the sense of resulting logic is constructive in the sense that it satisfies Kleene [3]) by unbounded search (ensured terminating by normalization and the disjunction and existence properties. use of classical reasoning). It is also realizable along Gödel At the computational level, the added classical rules can “Dialectica” functional interpretation [4] with witness ob- be seen as a mechanism of (statically-bound) exception tained by selecting the first suitable instance among those throwing similar to the one introduced by Nakano in his occurring in the proof of ::9x A(x). This is generally by (intuitionistic) catch and throw calculus [12]1. one of these two ways that programs are extracted from II. IQC :AN INTUITIONISTIC PREDICATE LOGIC proofs that use Markov’s principle, especially in constructive MP THAT PROVES MARKOV’S PRINCIPLE analysis where Markov’s principle amounts to the property ::x 6= y ! x 6= y (6= asserts the existence of a rational Usual intuitionistic predicate logic (IQC) is defined from number that separates x and y, see e.g. [5]). a set of function symbols f, g, . , each of a given arity and Howard’s correspondence [6] between natural deduction a set of predicate symbols P , Q, R, ... each with an arity and λ-calculus emphasized that Prawitz’s normalization of too. Functions symbols of arity 0 are called constants and intuitionistic natural deduction [7] can be used as a method predicate symbols of arity 0 are called atomic propositions. to compute with proofs. By later showing a connection Terms are built from a set of variables x, y, ... by between classical axioms and control operators, Griffin [8] t; u ::= f(~t) j x revealed that normalization is a computation device also for classical logic. While intuitionistic logic satisfies the where f ranges over function symbols and ~t denotes in f(~t) disjunction and existence properties, it is however not the a sequence of terms of length the arity of f. Formulas are case of classical logic and Markov’s principle has this 1Ordinary (dynamically bound) exceptions, as found in the ML, C++ or peculiarity to lie in between, being classical in its form and Java programming languages can actually be considered too, this is part of still retaining the disjunction and existence properties, as ongoing work. A 2 Γ AXIOM Γ `∆ A Γ `∆ A1 Γ `∆ A2 Γ `∆ A1 ^ A2 i ^I ^E Γ `∆ A1 ^ A2 Γ `∆ Ai Γ `∆ Ai Γ `∆ A1 _ A2 Γ;A1 `∆ B Γ;A2 `∆ B i _I _E Γ `∆ A1 _ A2 Γ `∆ B Γ;A `∆ B Γ `∆ A ! B Γ `∆ A !I !E Γ `∆ A ! B Γ `∆ B Γ `∆ A(x) x fresh Γ `∆ 8x A(x) 8I 8E Γ `∆ 8x A(x) Γ `∆ A(t) Γ `∆ A(t) Γ `∆ 9x A(x)Γ;A(x) `∆ B x fresh 9I 9E Γ `∆ 9x A(x) Γ `∆ B Γ `∆ ? >I ?E Γ `∆ > Γ `∆ C Γ `T;∆ T Γ `∆ TT 2 ∆ CATCH THROW Γ `∆ T Γ `∆ C Figure 1. Inference rules of IQCMP built from the standard connectives and quantifiers by the The main difference between IQCMP and IQC is that grammar the former supports classical reasoning on 8-!-free formu- las. This is implemented by the rules CATCH and THROW A; B ::= P (~t) j > j ? j A ! B j A ^ B j A _ B which say that to prove a 8-!-free formula T , one is j 8x A j 9x A allowed to change its mind during the proof and to restart a where P ranges over predicate symbols and ~t is a sequence new proof of T at any time. of terms whose length is the arity of P . Negation :A is The main properties of IQCMP is that it proves Markov’s defined as A !?. In 8x A and 9x A, x is bound and principle while still retaining the disjunction and existence freely subject to renaming (so-called α-conversion). properties that are characteristic of intuitionistic logic. IQCMP is an extension of IQC. Its inference rules are Let us write MP for the scheme ::T ! T where T given on Figure 1 (we use natural deduction). The subclass is a 8-!-free formula (this is the “proof-theoretic” way to of 8-!-free formulas plays a special role and we use T , U, think about Markov’s principle) and MP9 for the scheme ... to denote such formulas: ::9~xA(~x) ! 9~xA(~x) where A(~x) is an !-free propo- sition (this is the “standard” way to think about Markov’s T;U ::= P (~t) j > j ? j T ^ U j T _ U j 9x T principle). Both schemes are logically equivalent. Contexts of formulas, written Γ, are ordered sequences of Theorem 1: In IQCMP , MP and MP9 hold. formulas. Contexts of 8-!-free formulas, written ∆, are Proof: One gets a proof of T `T ? by applying ordered sequences of 8-!-free formulas. By :∆ is meant THROW. By !I and !E we obtain a proof of ::T `T ?. the context obtained by distributing : over the formulas of By applying ?E followed by CATCH, we get a proof of ∆. Note that IQC can be characterized as the subset of ::T ` T from which ::T ! T derives (note that we 0 IQCMP obtained by removing the rules CATCH and THROW freely use the lemma that Γ `∆ A implies Γ `∆0 A for and keeping ∆ empty. Γ ⊂ Γ0 and ∆ ⊂ ∆0; this weakening lemma, as expected, (a : A) 2 Γ AXIOM Γ `∆ a : A Γ `∆ p1 : A1 Γ `∆ p2 : A2 Γ `∆ p : A1 ^ A2 i ^I ^E Γ `∆ (p1; p2): A1 ^ A2 Γ `∆ πip : Ai Γ `∆ p : Ai Γ `∆ p : A1 _ A2 Γ; a1 : A1 `∆ p1 : B Γ; a2 : A2 `∆ p2 : B i _I _E Γ `∆ ιi(p): A1 _ A2 Γ `∆ case p of [a1:p1 j a2:p2]: B Γ; a : A `∆ p : B Γ `∆ p : A ! B Γ `∆ q : A !I !E Γ `∆ λa.p : A ! B Γ `∆ p q : B Γ `∆ p : A(x) x fresh Γ `∆ p : 8x A(x) 8I 8E Γ `∆ λx.p : 8x A(x) Γ `∆ pt : A(t) Γ `∆ p : A(t) Γ `∆ p : 9x A(x)Γ; a : A(x) `∆ q : B x fresh 9I 9E Γ `∆ (t; p): 9x A(x) Γ `∆ dest p as (x; a) in q : B Γ `∆ p : ? >I ?E Γ `∆ () : > Γ `∆ efq p : C Γ `α:T;∆ p : T Γ `∆ p : T (α : T ) 2 ∆ CATCH THROW Γ `∆ catchα p : T Γ `∆ throwα p : C Figure 2. Proof-term annotation of IQCMP indeed holds in IQCMP ). The case of MP9 holds by logical The language of proofs is defined by the grammar equivalence with MP . p; q ::= a j ι (p) j (p; q) j (t; p) j λa.p j λx.p j () Theorem 2: Γ ` A in IQC iff MP; Γ ` A in IQC i MP j p [a :p j a :p ] iff MP ; Γ ` A in IQC. case of 1 1 2 2 9 j π (p) j dest p as (x; a) in q Proof: By Theorem 1, Γ;MP ` A implies Γ ` A i j p q j p t j efq p which obviously is a proof of IQCMP .