The Pennsylvania State University
The Graduate School
Department of Mathematics
A MODEL OF INTUITIONISM BASED ON TURING DEGREES
A Dissertation in
Mathematics
by
Sankha Subhra Basu
c 2013 Sankha Subhra Basu
Submitted in Partial Fulfillment of the Requirements for the Degree of
Doctor of Philosophy
August 2013 The dissertation of Sankha S. Basu was reviewed and approved* by the following:
Stephen G. Simpson Professor of Mathematics Dissertation Advisor Chair of Committee
Jan Reimann Assistant Professor of Mathematics
John Roe Professor of Mathematics
Sean Hallgren Associate Professor of Computer Science and Engineering
Svetlana Katok Professor of Mathematics Director of Graduate Studies
*Signatures are on file in the Graduate School.
ii Abstract
Intuitionism is a constructive approach to mathematics introduced in the early part of the twetieth century by L. E. J. Brouwer and formalized by his student A. Heyting. A. N. Kolmogorov, in 1932, gave a natural but non-rigorous interpretation of intuitionism as a calculus of problems. In this document, we present a rigorous implementation of Kolmogorov’s ideas to higher-order intuitionistic logic using sheaves over the poset of Turing degrees with the topology of upward closed sets. This model is aptly named as the Muchnik topos, since the lattice of upward closed subsets of Turing degrees is isomorphic to the lattice of Muchnik degrees which were introduced in 1963 by A. A. Muchnik in an attempt to formalize the notion of a problem in Kolmogorov’s calculus of problems.
iii Contents
Acknowledgements vi
1 Introduction 1 1.1 Overview ...... 1 1.2 Intuitionistic Logic ...... 1 1.2.1 History ...... 1 1.2.2 Brouwer’s Intuitionism ...... 2 1.2.3 The BHK-Interpretation ...... 4 1.2.4 Other Interpretations for Intuitionistic Propositional and Predicate Logic . . 5 1.3 Higher-Order Logics and Sheaf Semantics ...... 8 1.3.1 Higher-Order Logics ...... 8 1.3.2 Sheaf Semantics for Higher-Order Intuitionistic Logics ...... 8 1.4 Recursion Theory ...... 9 1.4.1 Constructive Recursive Mathematics and the Church-Turing thesis ...... 9 1.4.2 Unsolvability of the Halting Problem and Turing Degrees ...... 10 1.4.3 Mass Problems ...... 10 1.5 Our Contribution ...... 11
2 Sheaf semantics for higher-order intuitionistic logic 12 2.1 Sheaves over a topological space ...... 12 2.2 Higher-Order Intuitionistic Logic ...... 39 2.3 An interpretation of higher-order intuitionistic logic ...... 41 2.4 Sheaves over poset spaces ...... 49 2.5 K-sets ...... 52
3 Number systems and sheaves 57 3.1 The Natural Numbers ...... 57 3.2 The Baire Space ...... 62 3.3 The Real Numbers ...... 65
4 A few principles 67 4.1 The principle of the excluded middle ...... 67 4.2 The weak law of the excluded middle ...... 68 4.3 Markov’s principle ...... 69 4.4 The law of trichotomy for real numbers ...... 74 4.5 The weak law of trichotomy for real numbers ...... 76
iv 4.6 The axiom of countable choice ...... 76
5 The Muchnik model 87 5.1 Preliminaries ...... 87 5.2 The Muchnik topos ...... 89 5.3 Muchnik Reals ...... 92
References 108
v Acknowledgements
I am grateful to my dissertation adviser Professor Stephen Simpson for his guidance throughout the duration of my graduate study at Penn State. This document would not have been possible without his help, support, and the significant amount of time that he invested in me. I am indebted to Professor Mihir Chakraborty of the University of Calcutta. It was he who in- troduced me to the wonderful world of Logic and Foundations of Mathematics through the courses that he taught at the university and during our meetings and discussions. His continued encour- agement and guidance have been invaluable to me. I thank Professor Wim Ruitenburg of Marquette University. The conversations that I have had with him, during and after my two years as a graduate student at Marquette, helped me sustain my interest in logic. I am thankful to Dr. Michael Warren for explaining the basics of topos theory to me during his visits to Penn State and for sending me his personal notes on sheaf theory. I acknowledge the constant support and inspiration from my parents, my first teachers. They have always urged me to succeed and reach for higher goals. Most of all, they instilled the sense of curiosity, early on in my life, that drives me to learn more. Last, but not the least, I thank my dear wife, who herself embarked on a career in academia to be with me during my years of graduate study. It would have been impossible without her love and support.
vi Chapter 1
Introduction
1.1 Overview
This thesis connects the concept of Intuitionism or Intuitionistic Logic, as conceived by Luitzen Egbertus Jan Brouwer, and Recursion theory, that ever since Alan Turing’s seminal work on com- putability of functions, has been an active field of research. Both of these areas of study originated in the early part of the twentieth century. This connection is motivated by the work of another great mathematician of the twentieth century, Andrey Nikolaevich Kolmogorov, and is laid out via the theory of sheaves over a topological space, an active area of research in geometry. In the following paragraphs, we present a brief history and background of each of these areas along with a description of the contribution of the present document to these areas.
1.2 Intuitionistic Logic
1.2.1 History Intuitionism is a constructive approach to mathematics proposed by Brouwer. The philosophical basis of this approach was present in Brouwer’s thesis, titled “On the foundations of mathematics”, published in 1907. The mathematical consequences were in his later papers, published between 1912-1928. This was a time, when the world of logic was largely dominated by David Hilbert’s proposal for an axiomatic foundation of mathematics (1905) and Georg Ferdinand Ludwig Philipp Cantor’s set theory (1874). Intuitionism falls under the broad purview of constructivism. Constructivists were among the leading critics of Hilbert’s approach and Cantorian set theory. There were however considerable differences among the various constructivist schools. Some of the other constructivist approaches of the time were Finitism, proposed by Thoralf Skolem in 1923; Predicativism, pro- posed by Herman Weyl in 1918; Bishop’s Constructive Mathematics, proposed by Errett Bishop in 1967; Constructive Recursive Mathematics, proposed by Andrei Markov in 1950, to name a few. There were many prominent mathematicians of that time among the constructivists, includ- ing Leopold Kronecker (1823-1891), who is sometimes regarded as “the first constructivist”, Ren´e Louis Baire (1874-1932), Emile Borel (1871-1956), Nikolai Nikolaevich Lusin (1883-1950) and Jules Henri Poincar´e(1854-1913). To read more about the different schools of constructivism and for a brief history, see [31][Volume I, Chapter 1], [28]. Constructivism and Intuitionism will be treated as synonymous henceforth.
1 1.2.2 Brouwer’s Intuitionism The following is quoted from [31][Volume I, Chapter 1, page 4]. “The basic tenets of Brouwer’s intuitionism, are as follows. (a) Mathematics deals with mental constructions, which are immediately grasped by the the mind; mathematics does not consist in the formal manipulation of symbols, and the use of mathematical language is a secondary phenomenon, induced by our limitations (when compared with an ideal mathematician with unlimited memory and perfect recall), and the wish to communicate our mathematical constructions with others.
(b) It does not make sense to think of truth and falsity of a mathematical statement independently of our knowledge concerning the statement. A statement is true if we have a proof of it, and false if we can show that the assumption that there is a proof for the statement leads to a contradiction. For an arbitrary statement we can therefore not assert that it is either true or false.
(c) Mathematics is a free creation: it is not a matter of mentally reconstructing, or grasping the truth about mathematical objects existing independently of us. It follows from (b) that it is necessary to adopt a different interpretation of statements of the form “there exists an x such that A(x) holds” and “A or B holds”. In particular, “ A or not A” does not generally hold on the intuitionistic reading of “or” and “not”. In agreement with, but not necessarily following from (c), intuitionism permits consideration of unfinishable processes: the ideal mathematician may construct longer and longer initial segments α(0), . . . , α(n) of an infinite sequence of natural numbers α where α is not a priori determined by some fixed process of producing values, so the construction of α is never finished.” This brings us to the following question. Which objects can be said to exist as (mental) constructions? “Natural numbers are usually regarded as unproblematic from a constructive point of view; they correspond to very simple mental constructions: start thinking of an abstract unit, think of an- other unit distinct from the first one and consider the combination (“think them together”). The indefinite repetition of this process generates the collection N of natural numbers. Once having accepted the natural numbers, there is also no objection to accepting pairs of natural numbers, pairs of pairs etc. as constructive objects; and this permits us to define Z (the integers) and Q (the rationals)in the usual way as pairs of natural numbers and pairs of integers respectively, each modulo suitable equivalence relations. Infinite sequences of natural numbers, integers or rationals may be constructively given by some process enabling us to determine the n th term (value for n) for each natural number n; in particular, one may think of sequences given by a law (or recipe) for determining all its values (terms). Thus a real number can be specified by a fundamental sequence of rationals together with a Cauchy modulus, that is to say we specify a sequence hrnin ∈ N / Q and a sequence α ∈ N / N 0 (the modulus) such that for all k ∈ N and all m, m ≥ αk −k |rm − rm0 | ≤ 2 .
Two such sequences hrnin, hsnin are said to be equivalent (equal as real numbers) if for all k ∈ N there is an n ∈ N such that for all m −k |rn+m − sn+m| ≤ 2 .
2 Much of the elementary theory of real numbers can then be developed in exactly the same way as usual.” (Quoted from [31][Volume I, Chapter 1]) The next question that begs an answer is: what are examples of non-constructive definitions or proofs? We quote from [31][Volume I, Chapter 1], one example of a non-constructive definition, and one example of a non-constructive proof. “A non-constructive definition: Let A be any mathematical statement which at present has been neither proved nor refuted (e. g. A ≡“there are infinitely many twin primes”). Ordinarily, one permits in mathematics descriptions (definitions) of natural numbers such as the following.
1 if A holds, p = 2 otherwise.
Constructively, this is unacceptable as the description of a natural number since, as long as the truth of A has not been decided, we cannot identify p with either 1 or 2; in other words we do not know how to obtain p by “thinking some abstract units together”, since we do not know whether to stop at one unit or go on till we have two distinct units.” “A proposition with a non-constructive proof: There exist two irrational numbers a, b such that ab is rational. √ √ √ 2 √ √ 2 Proof. 2 is either rational, and then we can take a = b = 2, or 2 is irrational, and √ √ 2 √ then we can take a = 2 , b = 2.
This proof does not enable us to construct a as a real number, that is to say we cannot compute a with any desired degree of accuracy, as required by our description of what it means to be given a real number. In other words, we do not know how to find an arbitrarily close rational approximation. Note however, that our objections to the proof depend on reading “there exist” as “one can construct”.” In Brouwer’s view, mathematics is a free creation of the mind, it allows the construction math- ematical systems on the basis of intuition and hence mathematical objects are mental constructs. Some consequences of this view, drawn by Brouwer, are:
• Mathematics is independent of logic; on the contrary, logic is an application or a part of mathematics.
• Mathematics cannot be founded upon the axiomatic method.
In particular, he rejected in his thesis Hilbert’s early formalism and Cantorian set theory. More details can be found in [31, 28]. Another important feature of Brouwer’s early work on intuitionism was “weak counterexam- ples”. These were introduced for the first time in 1908 to show that certain statements of classical mathematics are not intuitionistically acceptable. A weak counterexample to a statement A of classical mathematics is not a counterexample in the strict sense that a contradiction is derived from A, but an example showing that, if we assume that we can prove A intuitionistically, then it would follow that we had a solution to a problem known to be as yet unsolved. For instance, let us consider the Principle of Excluded Middle,
(PEM) A ∨ ¬A, which is valid in classical logic. Constructively, if PEM is accepted as a general principle, then that means we have a universal method for obtaining, for any proposition, either a proof of A or a proof
3 of ¬A, that is, a method for obtaining a contradiction from a hypothetical proof of A. But if such a universal method were available, we could also decide the truth or falsity of a statement A, that has not been proved or refuted yet, (e. g. A ≡ “there are infinitely many twin primes”), which is not the case. Thus PEM cannot be accepted as a universally valid principle in intuitionistic logic. It is to be noted that the above argument does not refute PEM, in the sense that it does not show how to derive a contradiction from the assumption that PEM is valid. Instead, it just shows that it cannot be accepted as a valid constructive principle, since accepting it means that we ought to have certain knowledge of the truth or falsity of A, which we may not possess. Hence this is a weak counterexample. However, constructivists do not oppose to individual instances of PEM, that is, we cannot hope to find a mathematical statement A such that ¬(A ∨ ¬A). In other words, ¬¬(A ∨ ¬A) is valid in intuitionistic logic. The following are some other examples of statements that are classically valid but are not acceptable in intuitionistic logic, that is, there are weak counterexamples for these.
• (¬¬A) =⇒ A
• (A =⇒ B) ∨ (B =⇒ A)
• (¬(¬A ∧ ¬B)) =⇒ (A ∨ B) (A De Morgan’s Law)
• (¬(¬A ∨ ¬B)) =⇒ (A ∧ B) (A De Morgan’s Law)
• (∀x (¬¬A(x))) =⇒ (¬¬∀x A(x))
• (¬¬∃x A(x)) =⇒ (∃x ¬¬A(x))
However, the weak counterexamples are not all that is there in Brouwer’s work. Too much emphasis on these has sometimes created the false impression that refuting claims of classical mathematics is the principal aim of intuitionism. On the contrary, Brouwer introduced a number of innovations that were worthwhile contributions to the study of foundations of mathematics. An example of such a concept, which we do not deal with in this thesis, is the study of choice sequences. Discussions on choice sequences can be found in [31][Chapters 4 & 12], [4][Chapter 3]. After 1912, Brouwer started in earnest on what has come to be known as Brouwer’s program, which provided an alternative perspective on foundations of mathematics and ran parallel to Hilbert’s program.
1.2.3 The BHK-Interpretation Brouwer’s program of reconstructing mathematics was taken up next by his disciple Arend Heyting, whose prime contribution to intuitionism was, as ironical as it may sound, the formalization of intuitionistic logic and arithmetic, and the formulation of a ‘natural’ semantics for it. The latter is sometimes called the proof interpretation. This was already implicit in Brouwer’s writing, but was made explicit by Heyting in a series of articles published between 1930-1934. In the first few papers, published in 1930-1931, Heyting discussed an interpretation of only the propositional fragment of intuitionistic logic. Later in 1934, he extended the proof interpretation to predicate logic. In this interpretation of intuitionistic logic, the meaning of a statement A is given by explaining what constitutes a proof of A, and proof of A for logically compound A is explained in terms of what it means to give a proof of its constituents. The final form of this semantics is described in [31]Volume I, Chapter 1] as follows.
(H1) A proof of A ∧ B is given by presenting a proof of A and a proof of B.
4 (H2) A proof of A∨B is given by presenting either a proof of A or a proof of B (plus the stipulation that we want to regard the proof presented as evidence for A ∨ B).
(H3) A proof of A =⇒ B is a construction which permits us to transform any proof of A into a proof of B.
(H4) Absurdity ⊥ (contradiction) has no proof; a proof of ¬A is a construction which transforms any hypothetical proof of A into a proof of a contradiction.
(H5) A proof of ∀x A(x) is a construction which transforms a proof of d ∈ D (D the intended range of variable x) into a proof of A(d).
(H6) A proof of ∃x A(x) is given by providing d ∈ D, and a proof of A(d).
Note: We are using =⇒ for implication instead of →, that is used in [31], since =⇒ will denote implication later in this thesis. Kolmogorov, independently in 1932, gave an interpretation of intuitionistic propositional logic as a calculus of problems. This was essentially the same as Heyting’s interpretation in different terms. Kolmogorov regarded propositions as problems, and logically compound assertions as problems ex- plained in terms of simpler problems. Thus, for instance, A =⇒ B in Kolmogorov’s interpretation represents the problem of reducing the solution of problem B to the solution of problem A. Even though Kolmogorov in his 1932 paper [9] on this mentions: “the calculus of problems coincides in form with the Brouwerian logic recently formalized by Heyting”, initially they both regarded their respective interpretations as distinct. Later, in 1958, Heyting realized that both interpretations are practically the same. He also extended Kolmogorov’s interpretation to predicate logic. Today, this semantics is widely known as the Brouwer-Heyting-Kolmogorov interpretation (or the BHK-interpretation in short). In this context, also see [2]. Although the BHK-interpretation of intuitionistic logic was simple and, in some sense, natural, this was non-rigorous and thus left a lot of open questions.
1.2.4 Other Interpretations for Intuitionistic Propositional and Predicate Logic Some other attempts at interpreting intuitionistic propositional and predicate logic are listed below.
• Algebraic semantics, widely known as Heyting algebras - probably first used by Stanislaw Ja´skowski in 1936
• Topological semantics - although implicit in Marshal Harvey Stone’s work published in 1937, were introduced explicitly by Alfred Traski in the 1938
• Beth models - introduced by Evert Willem Beth in 1956
• Kripke semantics - introduced by Saul Aaron Kripke in 1965
Heyting algebras, also known as pseudo-Boolean algebras and Brouwerian lattices, is a special class of lattices.
Definition 1.2.1. A lattice is a partially ordered set (poset) A such that for each a, b ∈ A, there is a least upper bound a ∨ b (the join of a and b) and a greatest lower bound a ∧ b (the meet of a and b). This can be expressed by the following axioms. For any a, b, c ∈ A,
(i) a ≤ a ∨ b, b ≤ a ∨ b, ((a ≤ c) ∧ (b ≤ c)) =⇒ (a ∨ b ≤ c);
5 (ii) a ∧ b ≤ a, a ∧ b ≤ b, ((c ≤ a) ∧ (c ≤ b)) =⇒ (c ≤ a ∧ b); where ≤ is the partial order relation in A.
Definition 1.2.2. A lattice can also be seen as an algebraic structure (A, ∨, ∧), where A is a set and ∨, ∧ are two binary operations on A such that for all a, b, c ∈ A,
(i) a ∧ a = a, a ∨ a = a;
(ii) a ∧ b = b ∧ a, a ∨ b = b ∨ a;
(iii) a ∧ (b ∧ c) = (a ∧ b) ∧ c, a ∨ (b ∨ c) = (a ∨ b) ∨ c;
(iv) a ∨ (a ∧ b) = a, a ∧ (a ∨ b) = a.
Definition 1.2.3. A zero or bottom element (denoted by 0 or ⊥) in a lattice satisfies ⊥ ≤ a, for all a ∈ A. Similarly a top or unit element (denoted by 1 or >) in a lattice satisfies a ≤ > for all a ∈ A.
Definition 1.2.4. A lattice (A, ∨, ∧) is complete iff joins and meets exist for all B ⊆ A.
Definition 1.2.5. A Heyting algebra is an algebraic structure (A, ∨, ∧, ⊥, =⇒ ) such that (A, ∨, ∧) is a lattice with bottom ⊥, and =⇒ is a binary operation on A such that
a ∧ b ≤ c iff a ≤ b =⇒ c.
We also define ¬a = a =⇒ ⊥ for any a ∈ A.
It is known that any Heyting algebra is a model for intuitionistic propositional logic. For more on Heyting algebras, see [1]. For details on how to interpret intuitionistic propositional logic in Heyting algebras, see [31][Volume 2, Chapter 13].
Definition 1.2.6. A complete Heyting algebra is a Heyting algebra that is complete as a lattice.
Example 1.2.7. Suppose T is a topological space and Ω is the collection of open sets of T . Then it is easy to check that Ω is a complete Heyting algebra with the ∨, ∧, ⊥, =⇒ given by
• U ∨ V = U ∪ V ,
• U ∧ V = U ∩ V ,
• ⊥ = ∅, and [ • U =⇒ V = {W ∈ Ω: U ∩ W ⊆ V } = Interior of ((T \ U) ∪ V ) = ((T \ U) ∪ V )◦
The topological semantics for intuitionistic propositional logic is a particular case of the Heyting algebra interpretation, where to each formula A, we assign an open subset [[A]] of the topological space T . Thus
• [[A ∨ B]] = [[A]] ∪ [[B]],
• [[A ∧ B]] = [[A]] ∩ [[B]],
• [[⊥]] = ∅, and
• [[A =⇒ B]] = [[A]] =⇒ [[B]] = ((T \ [[A]]) ∪ [[B]])◦.
6 So, then for any formula A, [[¬A]] = [[A =⇒ ⊥]] = ((T \ [[A]]) ∪ [[⊥]])◦ = ((T \ [[A]]) ∪ ∅)◦ = (T \ [[A]])◦ . Definition 1.2.8. A formula of intuitionistic propositional logic A is then said to be true in a topological space T , if [[A]] = T , and it is said to be valid if it is true in all topological spaces.
It is now easy to see that this interpretation is not classical as PEM is not valid here, as shown below. [[A ∨ ¬A]] = [[A]] ∪ (T \ [[A]])◦ 6= T, in general. The topological semantics can be extended to intuitionistic predicate logic by adding the fol- lowing two clauses to the ones above. [ • ∃x A(x)]] = [[A(x/d)]], and d∈D !◦ \ • ∀x A(x)]] = [[A(x/d)]] , d∈D where D is the intended range for the variable x. Then with the similar notion for truth and validity, we can show that the topological semantics as described is an interpretation for intuitionistic predicate logic. However, it is to be noted that there is no stipulation as to the nature of the topological space. So, in particular, if T is the one-point space, then [[A∨¬A]] = T for any sentence A, and we have the usual two valued classical logic. This goes to show, what is already evident in the above discussion, that intuitionistic logic is a generalization of classical logic, that is, it is a sub-classical logic. To see more details on the topological semantics, see [29, 4]. The Beth and Kripke semantics for intuitionistic predicate logic are closely related. We present below a brief description, following [29], of the Kripke semantics.
Definition 1.2.9. A Kripke Model is a quadruple K = (K, ≤,D, ), where K is partially ordered by ≤, and D is a function (the domain function) that assigns to each element of K a structure, that is, a non-empty set with relations, such that for α, β ∈ K, if α ≤ β then D(α) ⊆ D(β), and the relations of D(α) are subsets of the corresponding relations of D(β). Finally, is a relation between elements of K and sentences of intuitionistic predicate logic, called the forcing relation, and is defined inductively as follows.
(i) For any atomic formula A (that is a formula with no logical connectives and quantifiers), α A (read as α forces A or A is true at α) if the relation that interprets the predicate symbol in A holds for the elements of D(α) that are assigned to the terms in A.
(ii) α A ∧ B if α A and α B.
(iii) α A ∨ B if α A or α B.
(iv) α A =⇒ B if for all β, such that α ≤ β, if β A then β B.
(v) α ∀x A(x) if for all β, such that α ≤ β, and for all d ∈ D(β), β A(d).
7 (vi) α ∃x A(x) if there exists a d ∈ D(α) such that α A(d).
(vii) α 6 ⊥ for all α ∈ K.
Remark 1.2.10. As a consequence of this definition, we get that α ¬A, that is, α (A =⇒ ⊥) iff for all β, such that α ≤ β, β 6 A.
Definition 1.2.11. A sentence A is then defined to be true in a Kripke model K = (K, ≤,D, ), if for all α ∈ K, α A, and it is defined to be valid if it is true in all Kripke models.
Remark 1.2.12. A Kripke model (K, ≤,D, ) can be seen as a special topological model, with the poset (K, ≤) as the underlying topological space and the open sets being the upward closed subsets of K.
Remark 1.2.13. The nodes in the partially ordered sets in Kripke models can be thought of as representing possible stages of knowledge; a higher node in the ordering corresponds to an extension of the knowledge of the creative subject.
1.3 Higher-Order Logics and Sheaf Semantics
1.3.1 Higher-Order Logics Higher-order logics are extensions of first-order logics, where in addition to quantifiers over objects (in the universe of discourse), we are allowed to have quantifiers over pairs of objects, sets of objects/ pairs, sets of sets of objects/ pairs, and so on. This augmentation of the language increases its expressive strength, without adding new non-logical symbols, and hence is an easier ground for studying the foundations of mathematics. Higher-order logics call for a many-sorted or typed language. We discuss a system of higher-order intuitionistic logic in detail in Section 2.2 of this thesis.
1.3.2 Sheaf Semantics for Higher-Order Intuitionistic Logics Sheaf theory originated as a part of geometry, more specifically algebraic topology, in 1945. Since then it has been used in many different areas of mathematics, like complex analysis, algebraic geometry, differential equations, algebra, category theory, and logic, and also in physics, mainly as a tool that grants passage from local properties to global properties. See Gray’s article [7] for more details on the history of sheaf theory. The inspiration behind the unexpected connected between sheaves and logic came from two different sources. Dana Stewart Scott gave a topological model for intuitionistic analysis, in two papers in 1968 and 1970 [17, 18]. The second source was Category Theory, an alternative approach to formalizing mathematics introduced, in connection with algebraic topology, by Samuel Eilenberg and Saunders Mac Lane in 1942-1945. See [11] for an introduction to category theory. Alexander Grothendieck and his coworkers generalized the notion of sheaves to define sheaves over a site (rather than a topological space), and were led to the study of categories of sheaves or topoi. Francis William Lawvere realized that these categories have the structure necessary to interpret higher-order logic. Together with Myles Tierney, he developed the notion of elementary topos - a category with extra structure. The notion of elementary topos is a generalization of the notion of Grothendieck topos, and provides interpretations for higher-order intuitionistic logic. The current work bypasses the complications of category theory and topos theory but follows the work of Michael Fourman, John Martin Elliott Hyland, and Dana Scott as documented in
8 [19, 6, 20]. We define sheaves of sets over topological spaces in detail in Section 2.1. To explore more on sites and the notion of Grothedieck topos, see [31][Volume II, Chapters 14-15], [12] and for more on topos theory see [8, 10].
1.4 Recursion Theory
1.4.1 Constructive Recursive Mathematics and the Church-Turing thesis Constructive recursive mathematics (mentioned above in Section 1.2) was another constructivist school that started in the 1930s. This was based on the informal concept of algorithms or effective procedures, the main features of which can be summarized in as follows.
• An algorithm is a set of instructions of finite size. The instructions themselves, are finite strings of symbols from a finite alphabet.
• There is a computing agent (human or machine), which can react to the instructions and carry out the computations.
• The computing agent has unlimited facilities for making, storing, and retrieving steps in a computation.
• The computation is always carried out deterministically in a discrete stepwise fashion, without use of continuous methods or analog devices. In other words, the computing agent does not need to make intelligent decisions or enter into an infinite process at any step.
Based on this notion, the following definition of an effectively calculable function was made.
k Definition 1.4.1. A k-place (partial) function f : N / N is called effectively calculable if there is an effective procedure with the following properties.
• Given a k-tuple (m1, . . . , mk) in the domain of f, the procedure eventually halts and returns a correct value of f(m1, . . . , mk).
• Given a k-tuple (m1, . . . , mk) not in the domain of f, the procedure does not halt and return a value.
Several formalizations for this informal idea of effectively calculable functions were considered. Kurt Friedrich G¨odelused the primitive recursive functions in his famous incompleteness proof in 1931, and then later introduced recursive functions in 1934 following Jacques Herbrand’s sugges- tions. Along completely different lines Alonzo Church introduced the λ-calculus in 1932, a theory that only used λ-abstraction and application. In the meantime Haskell Brooks Curry, in 1930, developed his combinatory logic. The equivalence of λ-calculus and combinatory logic was proved by John Barkley Rosser Sr., and the equivalence of Herbrand-G¨odelrecursive functions with the λ-definable ones was proved by Church and Kleene in 1936. Alan Mathison Turing proposed an interesting conceptual characterization of algorithms in 1936-1937. He used abstract machines, which are now called Turing machines, and put forward a convincing argument that the class of effectively calculable functions coincides with the class of functions computable by Turing machines. Emil Leon Post also developed a mathematical model for computation in 1936 independent of Turing. The Church-Turing thesis, which is also called Church’s thesis states that the classes of (partial) functions generated by each of the above formalizations coincides with the informally defined class
9 of effectively calculable (partial) functions. This was proposed in 1936 and is now universally accepted, although no formal proof is possible, because of the non-rigorous nature of the definition of effective calculability. The study of Constructive recursive mathematics was continued 1950 onwards by Andrey An- dreyevich Markov and his students. He however added a clause to those in the definition of an algorithm: “if it is impossible that an algorithmic computation does not terminate, then it does terminate”. These algorithms are called Markov algorithms and this principle, which is commonly rejected by intuitionists, has come to be known as the Markov’s principle. However, as noted in [28], the discovery of a precise notion of algorithm in the 1930s did not affect intuitionism. This is not surprising, as most of these characterizations describe algorithms in narrow languages, which is contrary to Brouwer’s view of mathematics as the languageless activity of the ideal mathematician. Turing’s analysis is not tied to a specific formalism, but his arguments are based on manipulation of symbols and appeals to physical limitations on computing. Such ideas of course do not fit into Brouwer’s idea of mathematics as a free creation. The above discussion is based on [31][Volume I, Chapter 1], [28, 5, 16].
1.4.2 Unsolvability of the Halting Problem and Turing Degrees The question, are all functions computable, was answered in the negative by Alan Turing in 1936 via the Halting problem. Informally, the halting problem says that there is no algorithm that decides whether a given algorithm, or Turing machine provided with a given input will halt or will run forever. This is an example of an unsolvable decision problem. More formally, if f is a k-place k partial recursive function, with domain D ⊆ N , then the characteristic function of D, χD, defined by 1 if (m , . . . , m ) ∈ D, that is, f(m , . . . , m ) is defined, χ (m , . . . , m ) = 1 k 1 k D 1 k 0 otherwise, is not computable. Soon after this, many other mathematical problems, for instance the word problem for groups, Hilbert’s 10th problem (the problem of deciding whether a given Diophantine equation has a solution in integers), were shown to be unsolvable, that is, algorithmically unsolvable. So it became desirable to compare the unsolvabilities of the various unsolvable problems. The concept of relative computability, described in terms of oracle machines by Turing in 1939, gave a means of comparing unsolvable problems. Informally, a problem A is said to be solvable relative to a problem B, if there is an algorithm that converts the solution of B to the solution of A. This means that problem A is no more unsolvable than problem B. Now, in addition to that if there is no algorithm to convert the solution of problem A to the solution of problem B, then we can say that problem B is strictly more unsolvable than problem A, that is, problem B has a higher degree of unsolvability than problem A. Later in 1944, Emil Post first used the term Turing reducibility to refer to the concept and introduced the name Turing degrees for degrees of unsolvability. It was also shown that the Turing degrees form an upper semi-lattice, that is a partially ordered set that has an upper bound for any non-empty subset. More details and formal versions of these concepts can be found in [16, 5], some of which can also be found in Chapter 5 of the current document.
1.4.3 Mass Problems In an attempt to formalize the notion of a problem in Kolmogorov’s calculus of problems, Yu. T. Medvedev introduced the concept of mass problems in 1955 [13]. The notion of reducibility of one mass problem to another, now known as strong reducibility or Medvedev reducuibility, which extend
10 Turing reducibility, is also defined in this paper. Then to each mass problem is assigned a degree of difficulty, presently known as strong degree or Medvedev degree. Albert Abramovich Muchnik, in 1963, introduced another notion of reducibility of one mass problem to another [14]. This is now known as weak reducibility or Muchnik reducibility, and is also an extension of the concept of Turing reducibility. Based on this, each mass problem is assigned another degree, called the weak degree or Muchnik degree. Further details on mass problems is available in Section 5.2 of the current document. Both, the Medvedev degrees and Muchnik degrees form Heyting algebras and hence are models of intuitionistic propositional calculus, that are formal manifestations of the BHK-interpretation. For an extensive discussion of mass problems, see [21]. For later work on the Medvedev and Muchnik degrees and their connections to intuitionistic logic, see [27, 26, 25].
1.5 Our Contribution
In the present document, we start with a discussion of sheaf semantics over a general topological space for a system of higher-order intuitionistic logic HIQCE in the first three sections of Chapter 2. Then we specialize to a particular class of topological spaces, namely the poset spaces with the topology of upward closed sets. While sheaf models over poset spaces can be seen as a special case of sheaf models over general topological spaces, they can also be seen as a direct extension of the Kripke models for intuitionistic first-order logic. In Chapter 3, we discuss the various number systems in sheaf models with an underlying general topological space and then with an underlying poset space. This analysis is continued in Chapter 4, where we discuss the validity of certain principles that are not intuitionistically universally valid. In Chapter 5, we specialize further to the sheaf model over the poset of Turing degrees. The latter has been named by us as the Muchnik topos, since the lattice of upward closed sets of Turing degrees, that is, the open sets in the poset space of Turing degrees, is isomorphic to the lattice of Muchnik degrees. Our model thus extends the BHK-interpretation to higher-order intuitionistic logic and in the process touches on various other interpretations, namely the algebraic, topological, Kripke, Beth and the general sheaf semantics. Finally, in Chapter 5, we have also introduced a new class of real numbers, called the Muchnik reals. This is a subset of the set of Cauchy or Dedekind reals, with the unique property that its elements come into existence, in some sense, as we move up in the partial ordering of Turing degrees. Thus we have captured the essence of Brouwer’s creative subject from a very different angle in this definition.
11 Chapter 2
Sheaf semantics for higher-order intuitionistic logic
2.1 Sheaves over a topological space
Definition 2.1.1. Suppose T is a fixed topological space, and let
Ω = {U ⊆ T | U is open}.
A sheaf is an ordered triple M = (M,EM , M ) (we usually omit the subscripts on E and when there is no chance of confusion), where M is a set, E : M / Ω, : M × Ω / M, with the following properties.
(a) a E(a) = a for all a ∈ M.
(b) E(a U) = E(a) ∩ U for all a ∈ M and U ∈ Ω.
(c) (a U) V = a (U ∩ V ) for all a ∈ M and U, V ∈ Ω.
(d) M is partially ordered by letting a ≤ b if and only if a = b E(a).
(e) Two elements a, b ∈ M are said to be compatible if a E(b) = b E(a). A set C ⊆ M is said to be compatible if the elements of C are pairwise compatible. Then any compatible C ⊆ M has a least upper bound with respect to ≤, denoted by sup a. That is, for all b ∈ C, b ≤ sup a, a∈C a∈C and for any a0 ∈ M, if b ≤ a0 for all b ∈ C, then sup a ≤ a0. a∈C
Elements of a sheaf are also referred to as sections. The functions E and are called extent and restriction respectively. In other words, for any section a of a sheaf M, E(a) ∈ Ω is ‘the extent of a’, and for any U ∈ Ω, a U is the element ‘a restricted to U’ of the sheaf M. Remark 2.1.2. It may be noted here that the condition (d) in the above definition follows from the conditions (a) - (c). This may be proved as follows. Using condition (a), we have a E(a) = a for any a ∈ M. Thus a ≤ a, for all a ∈ M. Hence ≤ is reflexive.
12 For any a, b ∈ M, if a ≤ b and b ≤ a, then a = b E(a) and b = a E(b), and so
a = b E(a) = (a E(b)) E(a) = a (E(b) ∩ E(a)) by condition (c) = (a E(a)) E(b) again by condition (c) = a E(b) by condition (a) = b.
Thus ≤ is antisymmetric. For any a, b, c ∈ M, if a ≤ b and b ≤ c, then a = b E(a) and b = c E(b). So,
a = (c E(b)) E(a) = c (E(b) ∩ E(a)), by condition (c).
Now since a = b E(a),
E(a) = E(b E(a)) = E(b) ∩ E(a), by condition (b).
Thus a = c E(a), which implies that a ≤ c, and hence ≤ is transitive.
Remark 2.1.3. We also note here that for any sheaf (M,E, ), and for any two elements a, b ∈ M, if a ≤ b, then a and b are compatible. This can be shown as follows. Since a ≤ b, a = b E(a). So,
a E(b) = (b E(a)) E(b) = b (E(b) ∩ E(a)), by condition (b) in Definition 2.1.1 = (b E(b)) E(a), by condition (c) of the same definition = b E(a), by condition (a) of the same definition = a.
Thus a E(b) = a = b E(a), and hence a, b are compatible. Example 2.1.4. A good example of a sheaf is
Co(T, R) = {a : dom(a) / R | dom(a) ∈ Ω, a is continuous}, where R is the real line, with E and given by E(a) = dom(a), and
a U = a U = the restriction of a to U.
Similar examples may be obtained by replacing R with any topological space.
Example 2.1.5. Ω itself, with E(U) = U and U V = U ∩ V for all U, V ∈ Ω, is also a sheaf. ∼ Note that Ω = Co(T, {0}), where {0} is the one-point space. We now prove an elementary lemma concerning sheaves following a similar lemma proved in page 740 of [31].
Lemma 2.1.6. Let M = (M,E, ) be a sheaf over a topological space T , and let a, b ∈ M. Then the following hold.
(i) If b ≤ a, then E(b) ⊆ E(a).
13 (ii) If C ⊆ M is a compatible set, then a ∈ M is the least upper bound of C iff [ E(a) = E(b) and for all b ∈ C, b ≤ a. b∈C
(iii) If {Ui | i ∈ I} is a family of open subsets of T and a ∈ M, then {a Ui | i ∈ I} is a compatible subset of M, and [ a Ui = sup(a Ui). i∈I i∈I (iv) Every bounded subset of M is compatible and hence has a least upper bound.
Proof. (i) By Definition 2.1.1 (d), b ≤ a implies that b = a E(b). Thus E(b) = E(a E(b)) = E(a) ∩ E(b), by Definition 2.1.1 (b). This implies that E(b) ⊆ E(a). (ii) Suppose a ∈ M is the least upper bound of C. Then for any b ∈ C, b ≤ a, and so by part (i), E(b) ⊆ E(a). This implies that [ E(b) ⊆ E(a). b∈C [ Now let b0 be any element of C. Then E(b0) ⊆ E(b), and b∈C ! [ 0 [ 0 (a E(b)) E(b ) = a ( E(b)) ∩ E(b ) b∈C b∈C 0 = a E(b ) = b0, since b0 ≤ a.
0 [ 0 [ This implies that b ≤ a E(b) for all b ∈ C. Thus a E(b) is an upper bound for C. b∈C b∈C [ Now since a is the least upper bound of C, a ≤ a E(b). Hence by part (i), b∈C [ E(a) ⊆ E(a E(b)) b∈C [ = E(a) ∩ E(b) b∈C [ [ = E(b), since E(b) ⊆ E(a). b∈C b∈C Hence, [ E(a) = E(b). b∈C [ Conversely, suppose a ∈ M is such that for all b ∈ C, b ≤ a and E(a) = E(b). Since C is b∈C a compatible set in M, it has a least upper bound. Let a0 ∈ M be the least upper bound of 0 0 0 C. Then a ≤ a. So, a E(a ) = a . Moreover, by the the previous argument, we have [ E(a0) = E(b) = E(a). b∈C
14 Now, 0 0 a E(a) = (a E(a )) E(a) 0 = a (E(a ) ∩ E(a)) 0 = a E(a), since E(a) = E(a ) = a. Hence, a ≤ a0. Since we already know that a ≤ a0, this shows that a = a0. Thus a is the least upper bound of C.
(iii) We first show that {a Ui | i ∈ I} is a compatible subset of M. Let i, j ∈ I. Then E(a Ui) = E(a) ∩ Ui and similarly, E(a Uj) = E(a) ∩ Uj. Thus
(a Ui) E(a Uj) = (a Ui) (E(a) ∩ Uj) = a (Ui ∩ E(a) ∩ Uj) = (a E(a)) (Ui ∩ Uj) = a (Ui ∩ Uj). By the same argument it follows that
(a Uj) E(a Ui) = a (Ui ∩ Uj). Thus (a Ui) E(a Uj) = (a Uj) E(a Ui), and hence {a Ui | i ∈ I} is a compatible subset of M. Now since M is a sheaf, {a Ui | i ∈ I} has a least upper bound. Let j ∈ I. Then ! ! [ [ a Ui E(a Uj) = a Ui (E(a) ∩ Uj) i∈I i∈I ! [ = a E(a) ∩ Uj ∩ Ui i∈I = a (E(a) ∩ Uj) = (a E(a)) Uj = a Uj. [ [ Thus a Uj ≤ a Ui for all j ∈ I, that is, a Ui is an upper bound for {a Ui | i ∈ I}. i∈I i∈I Moreover, [ [ E(a Ui) = E(a) ∩ Ui, i∈I i∈I and [ [ E(a Ui) = (E(a) ∩ Ui) i∈I i∈I [ = E(a) ∩ Ui. i∈I [ [ [ Thus E(a Ui) = E(a Ui), and hence by part (ii), a Ui is the least upper bound i∈I i∈I i∈I of {a Ui | i ∈ I}, that is, [ a Ui = sup(a Ui). i∈I i∈I
15 (iv) Suppose B is a bounded subset of M, that is, there is an a ∈ M such that b ≤ a for all b ∈ B. Let b, b0 ∈ B. Then b ≤ a and b0 ≤ a. So,
b = a E(b), since b ≤ a, and 0 0 0 b = a E(b ), since b ≤ a. Thus 0 0 b E(b ) = (a E(b)) E(a E(b )) 0 = (a E(b)) (E(a) ∩ E(b )) 0 = a (E(b) ∩ E(a) ∩ E(b )) 0 = (a E(a)) (E(b) ∩ E(b )) 0 = a (E(b) ∩ E(b )) 0 = (a E(b )) E(b) 0 = b E(b). Hence B is a compatible subset of M, and so it has a least upper bound.
Now we present another example of a sheaf below. This will be important for our future constructions.
Example 2.1.7. We define
Ω1 = {(V,U) | V,U ∈ Ω,V ⊆ U}.
We next define E and on Ω1 as follows
E((V,U)) = U for any (V,U) ∈ Ω1, and (V,U) W = (V ∩ W, U ∩ W ) for any (V,U) ∈ Ω1 and W ∈ Ω.
We now show that Ω1 with E and as defined above is a sheaf.
(a) Suppose (V,U) ∈ Ω1. Then
(V,U) E((V,U)) = (V,U) U = (V ∩ U, U ∩ U) = (V,U).
(b) Suppose (V,U) ∈ Ω1, and W ∈ Ω. Then
E((V,U) W ) = E((V ∩ W, U ∩ W )) = U ∩ W = E((V,U)) ∩ W.
(c) Suppose (V,U) ∈ Ω1, and W1,W2 ∈ Ω. Then
((V,U) W1) W2 = (V ∩ W1,U ∩ W1) W2 = (V ∩ W1 ∩ W2,U ∩ W1 ∩ W2) = (V,U) (W1 ∩ W2).
(d) We can partially order Ω1 as discussed in the definition.
(V1,U1) ≤ (V2,U2) in Ω1 iff (V2,U2) U1 = (V1,U1),
which happens when V2 ∩ U1 = V1 and U2 ∩ U1 = U1, that is, U1 ⊆ U2.
16 (e) Two elements (V1,U1), (V2,U2) in Ω1 are compatible iff
(V1,U1) U2 = (V2,U2) U1, that is, whenever V1 ∩ U2 = V2 ∩ U1.
For a compatible C ⊆ Ω1, we claim that the least upper bound is [ [ V, U . (V,U)∈C (V,U)∈C
To justify this claim, we use condition (ii) of the above lemma as follows.
We first note that for any (V1,U1) ∈ Ω1 [ [ [ [ V, U U1 = U1 ∩ V,U1 ∩ U (V,U)∈C (V,U)∈C (V,U)∈C (V,U)∈C [ = (V ∩ U1),U1 (V,U)∈C
Now since C is compatible, and hence (V1,U1) is compatible with any (V,U) ∈ C,
V ∩ U1 = V1 ∩ U ⊆ V1. [ This shows that (V ∩ U1) ⊆ V1. In the particular case where (V,U) = (V1,U1), (V,U)∈C V ∩ U1 = V1 ∩ U1 = V1. So [ [ V1 ⊆ (V ∩ U1) and hence (V ∩ U1) = V1. (V,U)∈C (V,U)∈C
Thus [ [ [ V, U U1 = (V ∩ U1),U1 = (V1,U1). (V,U)∈C (V,U)∈C (V,U)∈C [ [ Hence (V1,U1) ≤ V, U for all (V1,U1) ∈ C. We further note that (V,U)∈C (V,U)∈C [ [ [ [ E V, U = U = E((V,U)). (V,U)∈C (V,U)∈C (V,U)∈C (V,U)∈C
Thus by condition (ii) of Lemma 2.1.6, we conclude that [ [ V, U (V,U)∈C (V,U)∈C
is indeed the least upper bound of the compatible subset C. Hence every compatible subset of Ω1 has a least upper bound.
17 Thus Ω1 is a sheaf with the above mentioned E and .
Definition 2.1.8. Suppose (M,E, ) is a sheaf. We define [[· = ·]] : M × M / Ω by [ [[a = b]] = {U ∈ Ω | U ⊆ E(a) ∩ E(b) and a U = b U}
Lemma 2.1.9. Suppose (M,E, ) is a sheaf. Then for any two elements a, b ∈ M,
[[a = b]] = the largest V ∈ Ω such that V ⊆ E(a) ∩ E(b) and a V = b V.
Proof. Let V be the largest open subset of E(a) ∩ E(b) such that a V = b V . Then clearly, [ V ⊆ {U ∈ Ω | U ⊆ E(a) ∩ E(b) and a U = b U}. [ Now suppose W = {U ∈ Ω | U ⊆ E(a) ∩ E(b) and a U = b U}. Clearly, W is open and W ⊆ E(a) ∩ E(b). To show that W ⊆ V , we only need to show that a W = b W . Using Lemma 2.1.6 (iii), we get [ a W = a {U ∈ Ω | U ⊆ E(a) ∩ E(b) and a U = b U} = sup{a U | U ∈ Ω,U ⊆ E(a) ∩ E(b) and a U = b U} = sup{b U | U ∈ Ω,U ⊆ E(a) ∩ E(b) and a U = b U} [ = b {U ∈ Ω | U ⊆ E(a) ∩ E(b) and a U = b U} = b W. Hence the result.
Remark 2.1.10. The function [[· = ·]] : M × M / Ω, defined above gives us a measure of the extent to which two sections of the sheaf M coincide.
Following are some easily provable properties of this function. These can be found in more generality in [31] or [20].
Lemma 2.1.11. Suppose (M,E, ) is a sheaf. Then for any a, b, c ∈ M and U ∈ Ω, the following hold.
(i) [[a = a]] = E(a)
(ii) [[a = b]] = [[b = a]]
(iii) [[a = b]] ∩ [[b = c]] ⊆ [[a = c]]
(iv) [[a U = b]] = [[a = b]] ∩ U
(v) a [[a = b]] = b [[a = b]] (vi) a ≤ b iff E(a) ⊆ [[a = b]]
(vii) a and b are compatible iff [[a = b]] = E(a) ∩ E(b)
Proof. (i) This easily follows from the definition of [[· = ·]] and the definition of a sheaf.
(ii) This also follows easily from the definition of [[· = ·]].
18 (iii) Let U = [[a = b]], and V = [[b = c]]. Then U is the largest open set such that U ⊆ E(a) ∩ E(b) and a U = b U, and V is the largest open set such that V ⊆ E(b)∩E(c) and b V = c V . We first note that U ∩ V is an open set and
U ∩ V ⊆ (E(a) ∩ E(b)) ∩ (E(b) ∩ E(c)) ⊆ E(a) ∩ E(c).
Moreover, a (U ∩ V ) = (a U) V = (b U) V = b (U ∩ V ) = (b V ) U = (c V ) U = c (U ∩ V ). Thus [ U ∩ V ⊆ {W ∈ Ω | W ⊆ E(a) ∩ E(c) and a W = c W } = [[a = c]], and hence the result.
(iv) Let W = [[a U = b]]. Then W is an open set such that
W ⊆ E(a U) ∩ E(b) = E(a) ∩ E(b) ∩ U, and (a U) W = b W =⇒ a (W ∩ U) = b W =⇒ a W = b W, since W ⊆ U. Thus W ⊆ [[a = b]], and so
[[a U = b]] ⊆ [[a = b]] ∩ U. On the other hand, if W = [[a = b]], then W ⊆ E(a) ∩ E(b), and so
W ∩ U ⊆ E(a) ∩ E(b) ∩ U = E(a U) ∩ E(b).
Moreover, since a W = b W , we have (a U) (W ∩ U) = a (W ∩ U) = (a W ) U = (b W ) U = b (W ∩ U).
This shows that W ∩ U ⊆ [[a U = b]], and so
[[a = b]] ∩ U ⊆ [[a U = b]]. Hence the result. (v) This again follows easily from the definition of [[· = ·]]. (vi) Suppose a ≤ b. Then by Lemma 2.1.6 (i), we have E(a) ⊆ E(b). So, E(a) = E(a) ∩ E(b). Now since a ≤ b, we have a = b E(a). Thus a E(a) = a = b E(a). Hence E(a) ⊆ [[a = b]].
Conversely, suppose E(a) ⊆ [[a = b]]. Then a E(a) = b E(a), which implies that a = b E(a). Hence a ≤ b.
19 (vii) Suppose a and b are compatible. Now,
a (E(a) ∩ E(b)) = (a E(a)) E(b) = a E(b), and b (E(a) ∩ E(b)) = (b E(b)) E(a) = b E(a). Since a and b are compatible, a E(b) = b E(a), and so
a (E(a) ∩ E(b)) = b (E(a) ∩ E(b)).
Hence the largest open set, U contained in E(a)∩E(b) such that a U = b U is E(a)∩E(b), and so [[a = b]] = E(a) ∩ E(b). Conversely, suppose [[a = b]] = E(a) ∩ E(b). By part (v) above,
a [[a = b]] = b [[a = b]]. This implies that a (E(a) ∩ E(b)) = b (E(a) ∩ E(b)) =⇒ (a E(a)) E(b) = (b E(b)) E(a) =⇒ a E(b) = b E(a), which shows that a and b are compatible. Hence the result.
Definition 2.1.12. If M and N are sheaves, we define the product sheaf
M × N = {(a, b) | a ∈ M, b ∈ N,E(a) = E(b)}, with E and given by E((a, b)) = E(a) = E(b) and (a, b) U = (a U, b U). Lemma 2.1.13. Suppose M and N are sheaves. Then the product sheaf M × N as defined above is also a sheaf.
Proof. (a) Let (a, b) ∈ M × N. Then E((a, b)) = E(a) = E(b). Thus
(a, b) E((a, b)) = (a E((a, b)), b E((a, b))) = (a E(a), b E(b)) = (a, b).
(b) Let (a, b) ∈ M × N and U ∈ Ω. Then E(a) = E(b) and so,
E(a U) = E(a) ∩ U = E(b) ∩ U = E(b U).
Thus (a, b) U = (a U, b U) ∈ M × N. Now,
E((a, b) U) = E((a U, b U)) = E(a U) = E(b U) = E(a) ∩ U = E(b) ∩ U = E((a, b)) ∩ U.
20 (c) Let (a, b) ∈ M × N and U, V ∈ Ω. Then
((a, b) U) V = (a U, b U) V = ((a U) V, (b U) V ) = (a U ∩ V, b U ∩ V ) = (a, b) U ∩ V.
(d) M × N can be partially ordered as discussed in the Definition 2.1.1. For any (a, b), (c, d) ∈ M × N, (a, b) ≤ (c, d) iff (a, b) = (c, d) E((a, b)). Since E((a, b)) = E(a) = E(b), this implies that (a, b) ≤ (c, d) iff a = c E(a) and b = d E(b).
(e) Two elements (a, b), (c, d) ∈ M × N are compatible if
(a, b) E((c, d)) = (c, d) E((a, b)),
which can be expressed as a E(c) = c E(a) and b E(d) = d E(b). This implies that (a, b), (c, d) ∈ M × N are compatible if the following conditions are met.
• a, c ∈ M are compatible, and • b, d ∈ N are compatible.
Suppose C is a compatible subset of M × N. We define C1 ⊆ M and C2 ⊆ N as follows.
C1 = {a ∈ M | (a, b) ∈ C for some b ∈ N}, C2 = {b ∈ N | (a, b) ∈ C for some a ∈ M}.
By our previous discussion, C1 and C2 are compatible subsets of M and N respectively. Since M and N are sheaves, C1 and C2 have least upper bounds. Let a1 be the least upper bound of C1, and a2 be the least upper bound of C2. We claim that (a1, a2) ∈ M × N and (a1, a2) is the least upper bound of C. We note that [ [ E(a1) = E(a) and E(a2) = E(b),
a∈C1 b∈C2
by Lemma 2.1.6 (ii). By definition of C1, a ∈ C1 implies (a, b) ∈ C ⊆ M × N for some b ∈ N. 0 This implies that E(a) = E(b) and b ∈ C2, by definition of C2. Conversely, b ∈ C2 implies 0 0 0 0 0 0 (a , b ) ∈ C ⊆ M × N for some a ∈ M. This implies that E(a ) = E(b ) and a ∈ C1. In other words, for every element of C1, there is an element in C2 with matching extent, and vice-versa. Thus [ [ E(a) = E(b),
a∈C1 b∈C2
that is, E(a1) = E(a2). Hence, (a1, a2) ∈ M × N. We note that [ [ [ E(a) = E(b) = E((a, b)),
a∈C1 b∈C2 (a,b)∈C and this shows that [ E((a1, a2)) = E(a1) = E(a2) = E((a, b)). (a,b)∈C
21 Now, let (a, b) ∈ C. Then a ≤ a1 and b ≤ a2. Also, E((a, b)) = E(a) = E(b). Thus
(a1, a2) E((a, b)) = (a1 E(a), a2 E(b)) = (a, b), since a ≤ a1 and b ≤ a2,
which shows that (a, b) ≤ (a1, a2) for all (a, b) ∈ C. Hence by Lemma 2.1.6 (ii), (a1, a2) is the least upper bound of C. Thus every compatible subset of M × N has a least upper bound. Hence M × N is a sheaf.
f Definition 2.1.14. If M and N are sheaves, we define a sheaf morphism M / N to be a mapping f : M / N satisfying E(f(a)) = E(a) and f(a U) = f(a) U for all a ∈ M and U ∈ Ω. Remark 2.1.15. The sheaves and sheaf morphisms form a category, in fact an elementary topos. For an introduction to topos theory, see [8]
f Lemma 2.1.16. Suppose M and N are sheaves and M / N is a sheaf morphism. Let a, b ∈ M, and a ≤ b. Then f(a) ≤ f(b) in the sheaf N. That is, sheaf morphisms are order-preserving.
Proof. We need to show f(b) E(f(a)) = f(a). f We first note that a = b E(a), since a ≤ b. Now M / N is a sheaf morphism, so E(f(a)) = E(a). Thus
f(b) E(f(a)) = f(b) E(a) = f(b E(a)), using the definition of a sheaf morphism = f(a)
Hence, f(a) ≤ f(b).
Definition 2.1.17. If M is a sheaf and U ∈ Ω, we define the restriction sheaf
M U = {a U | a ∈ M} = {a ∈ M | E(a) ⊆ U}, with E and inherited from M.
Lemma 2.1.18. Suppose M is a sheaf, and U ∈ Ω. Then the restriction sheaf M U as defined above is a sheaf.
Proof. We first argue for the equality of the two sets defining M U as follows. Let b ∈ {a U | a ∈ M}. Then b = a U for some a ∈ M. So
E(b) = E(a U) = E(a) ∩ U ⊆ U, which implies that b ∈ {a ∈ M | E(a) ⊆ U}. Thus
{a U | a ∈ M} ⊆ {a ∈ M | E(a) ⊆ U}.
Conversely, suppose b ∈ {a ∈ M | E(a) ⊆ U}. Then since b ∈ M, b U ∈ {a U | a ∈ M}, but
b U = (b E(b)) U = b (E(b) ∩ U) = b E(b) = b.
22 Hence b ∈ {a U | a ∈ M}, and so
{a ∈ M | E(a) ⊆ U} ⊆ {a U | a ∈ M}.
Thus {a U | a ∈ M} = {a ∈ M | E(a) ⊆ U}. Now to show that M U is a sheaf, we first note that M U ⊆ M, and so conditions (a)-(d) in Definition 2.1.1 are clearly satisfied by the elements of M U. To establish that M U is a sheaf, we only need to show that a compatible subset of M U has a least upper bound in M U. Let C be a compatible subset of M U. Since, C is also a subset of the sheaf, M, it has a least upper bound in M, a, say. By Lemma 2.1.6 (ii), [ [ E(a) = E(b). We note that for all b ∈ C ⊆ M U, E(b) ⊆ U. Thus E(b) ⊆ U. This shows b∈C b∈C that E(a) ⊆ U, and so a ∈ M U. Hence, the least upper bound of any compatible subset of M U is in M U. Thus M U is a sheaf. Definition 2.1.19. If M and N are sheaves, we define the function sheaf
M f N = {(f, U) | U ∈ Ω,M U / N U}. The extent and restriction are then defined as follows. For any (f, U) ∈ N M , E((f, U)) = U, and for any V ∈ Ω, (f, U) V = (f V,U ∩ V ), where (f V )(a) = f(a) V = f(a V ) for all a ∈ M (U ∩ V ). Lemma 2.1.20. Suppose M and N are sheaves. Then the function sheaf N M as defined above is a sheaf.
f M Proof. (a) Let (f, U) ∈ N . Then M U / N U is a sheaf morphism and E((f, U)) = U. So, (f, U) E((f, U)) = (f, U) U = (f U, U ∩ U) = (f U, U). Now for any a ∈ M,
a E(a U) = a (E(a) ∩ U) = (a E(a)) U = a U.
So, a U ≤ a for all a ∈ M, and hence for all a ∈ M U ⊆ M. Moreover, if a ∈ M U, then E(a) ⊆ U, and so (a U) E(a) = a (U ∩ E(a)) = a E(a) = a, which shows that a ≤ a U. Thus for all a ∈ M U, a = a U. So,
(f U)(a) = f(a U) = f(a), for all a ∈ M U.
Hence, f U = f, and so
M (f, U) E((f, U)) = (f U, U) = (f, U) for any (f, U) ∈ N .
23 (b) Let (f, U) ∈ N M and V ∈ Ω. Then
E((f, U) V ) = E((f V,U ∩ V )) = U ∩ V = E((f, U)) ∩ V.
(c) Let (f, U) ∈ N M , and V,W ∈ Ω. Then
((f, U) V ) W = (f V,U ∩ V ) W = ((f V ) W, U ∩ V ∩ W ), where ((f V ) W )(a) = (f V )(a W ) = f((a W ) V ) = f(a (V ∩ W )) = (f (V ∩ W ))(a). Thus (f V ) W = f (V ∩ W ), and so
((f, U) V ) W = (f (V ∩ W ),U ∩ V ∩ W ) = (f, U) (V ∩ W ).
M (d) N can be partially ordered as discussed in Definition 2.1.1, that is, for any (f1,U1), (f2,U2) ∈ N M , (f1,U1) ≤ (f2,U2) iff (f1,U1) = (f2,U2) E((f1,U1)),
which is the case when (f1,U1) = (f2,U2) U1, that is, (f1,U1) = (f2 U1,U1 ∩ U2). Hence,
(f1,U1) ≤ (f2,U2) iff f1 = f2 U1 and U1 = U1 ∩ U2.
In other words, (f1,U1) ≤ (f2,U2) iff
U1 ⊆ U2 and f1(a) = f2(a) U1 = f2(a U1), for any a ∈ M U1.
M (e) Two elements (f1,U1), (f2,U2) ∈ N are compatible iff
(f1,U1) E((f2,U2)) = (f2,U2) E((f1,U1)), that is, iff (f1,U1) U2 = (f2,U2) U1.
Thus, in other words, (f1,U1) and (f2,U2) are compatible iff f1 U2 = f2 U1, that is, iff for any a ∈ M (U1 ∩ U2), f1(a) = f2(a). Now suppose C is a compatible subset of N M . We need to show that C has a least upper bound. We consider the pair (g, V ) with g and V defined as follows. [ V = U, (f,U)∈C
and g : M V / N V is defined by
g(a) = sup{f(a U) | (f, U) ∈ C} for all a ∈ M V.
24 We first need to show that g is well-defined. This is shown as follows. Let a ∈ M V . We first note that for any (f, U) ∈ C,
E(f(a U)) = E(a U),
f since M U / N U is a sheaf morphism and hence preserves extent. Now,
E(a U) = E(a) ∩ U ⊆ U ⊆ V.
Thus E(f(a U)) ⊆ V , and so f(a U) ∈ N V . Hence
{f(a U) | (f, U) ∈ C} ⊆ N V.
Next, let (f1,U1), (f2,U2) ∈ C. Then
f1(a U1) E(f2(a U2)) = f1(a U1) E(a U2) = f1(a U1) (E(a) ∩ U2) = f1((a U1) (E(a) ∩ U2)) = f1(a (E(a) ∩ U1 ∩ U2)) = f1((a E(a)) (U1 ∩ U2)) = f1(a (U1 ∩ U2)),
f1 f2 using the fact that M U1 / N U1 and M U2 / N U2 are sheaf morphisms and hence preserve E and . Similarly, we have
f2(a U2) E(f1(a U1)) = f2(a (U1 ∩ U2)).
Now, since (f1,U1), (f2,U2) ∈ C are compatible, and since a (U1 ∩ U2) ∈ M (U1 ∩ U2),
f1(a (U1 ∩ U2)) = f2(a (U1 ∩ U2)), by our discussion of compatibility above. Thus {f(a U) | (f, U) ∈ C} is a compatible subset of the sheaf N V . Thus sup{f(a U) | (f, U) ∈ C} exists and is unique. Hence g : M V / N V is well-defined. Let a ∈ M V . Then
E(g(a)) = E(sup{f(a U) | (f, U) ∈ C}) [ = E(f(a U)), (f,U)∈C by Lemma 2.1.6 (ii). Now, for any (f, U) ∈ C, E(f(a U)) = E(a U) = E(a) ∩ U. Thus [ E(g(a)) = E(f(a U)) (f,U)∈C [ = (E(a) ∩ U) (f,U)∈C [ = E(a) ∩ U (f,U)∈C = E(a) ∩ V = E(a) since E(a) ⊆ V as a ∈ M V.
25 Thus g preserves extent. Now let W ⊆ V . Then for any a ∈ M V , g(a W ) = sup{f((a W ) U) | (f, U) ∈ C} = sup{f(a (W ∩ U)) | (f, U) ∈ C} = sup{f((a U) W ) | (f, U) ∈ C} = sup{f(a U) W | (f, U) ∈ C}, using properties of sheaf morphisms. Since for any (f, U) ∈ C,
f(a U) ≤ sup{f(a U) | (f, U) ∈ C}, we have that for any (f, U) ∈ C,
f(a U) W ≤ (sup{f(a U) | (f, U) ∈ C}) W.
Moreover, E ((sup{f(a U) | (f, U) ∈ C}) W )
= E (sup{f(a U) | (f, U) ∈ C}) ∩ W [ = E(f(a U)) ∩ W, (f,U)∈C using Lemma 2.1.6 (ii). Now, [ [ E(f(a U)) ∩ W = (E(f(a U)) ∩ W ) (f,U)∈C (f,U)∈C [ = E(f(a U) W ). (f,U)∈C Thus again by Lemma 2.1.6 (ii),
sup{f(a U) W | (f, U) ∈ C} = (sup{f(a U) | (f, U) ∈ C}) W. Hence, g(a W ) = g(a) W, g which implies that g : M V / N V preserves restriction as well. Thus M V / N V M is a sheaf morphism and hence (g, V ) is an element of N . Now, for any (f1,U1) ∈ C,
(g, V ) E((f1,U1)) = (g, V ) U1 = (g U1,U1 ∩ V ) = (g U1,U1), since U1 ⊆ V.
For any a ∈ M U1, E(a) ⊆ U1. So,
(a U1) E(a) = a (E(a) ∩ U1) = a E(a) = a, which implies that a ≤ a U1. Also,
a E(a U1) = a (E(a) ∩ U1) = (a E(a)) U1 = a U1,
26 which implies that a U1 ≤ a. Thus, for any a ∈ M U1,
a ≤ a U1 and a U1 ≤ a.
This implies that a = a U1 for any a ∈ M U1. Hence, for any a ∈ M U1,
(g U1)(a) = g(a U1) = g(a U1) = g(a) = sup{f(a U) | (f, U) ∈ C}.
Now, since {f(a U) | (f, U) ∈ C} is a compatible subset of N V , and (f1,U1) ∈ C,
f(a U) E(f1(a U1)) = f1(a U1) E(f(a U)), for any (f, U) ∈ C. This implies that
f(a U) E(f1(a)) = f1(a) E(a U), that is, f(a U) E(a) = f1(a) (E(a) ∩ U). Thus f((a U) E(a)) = f1(a (E(a) ∩ U)), that is, f((a E(a)) U) = f1((a E(a)) U).
In other words, for any a ∈ M U1,
f(a U) = f1(a U) for all (f, U) ∈ C.
Thus for any a ∈ M U1,
sup{f(a U) | (f, U) ∈ C} = sup{f1(a U) | (f, U) ∈ C} = sup{f1(a) U | (f, U) ∈ C} [ = f1(a) U, (f,U)∈C using Lemma 2.1.6 (iii). Now, [ f1(a) U = f1(a) V = f1(a V ). (f,U)∈C
We note here that
(a V ) E(a) = a (E(a) ∩ V ) = a E(a) since E(a) ⊆ U1 ⊆ V, and a E(a V ) = a (E(a) ∩ V ) = (a E(a)) ∩ V = a V.
27 This shows that a = a V , and so f1(a V ) = f1(a). Hence we conclude that, for any a ∈ M U1, (g U1)(a) = sup{f(a U) | (f, U) ∈ C} = sup{f1(a U) | (f, U) ∈ C} = f1(a) V = f1(a V ) = f1(a).
Thus g U1 = f1, and so (g, V ) E((f1,U1)) = (f1,U1), which shows that (f1,U1) ≤ (g, V ) for all (f1,U1) ∈ C, that is, (g, V ) is an upper bound for C. Furthermore, [ [ E((g, V )) = V = U = E((f, U)). (f,U)∈C (f,U)∈C
Thus using Lemma 2.1.6 (ii) again, (g, V ) is the least upper bound of C.
Definition 2.1.21. Suppose M is a sheaf. We define the power sheaf P(M) as the function sheaf M Ω1 , where Ω1 is the sheaf described in Example 2.1.7. An alternative definition of the power sheaf, as given in [31, 20], is as follows.
Definition 2.1.22. The power sheaf of a sheaf M has as elements pairs (P,U) with U ∈ Ω, and P : M / Ω satisfying the following conditions.
(i) For any a ∈ M, P (a) ⊆ E(a),
(ii) for any a ∈ M, P (a) ⊆ U, and
(iii) for any a, b ∈ M, P (a) ∩ [[a = b]] ⊆ P (b).
The extent and restriction are then defined as follows. For any (P,U) in the power sheaf, E((P,U)) = U, and for any V ∈ Ω, (P,U) V = (P V,U ∩ V ), where (P V )(a) = P (a) ∩ V for all a ∈ M. We will denote the above described sheaf by P0(M).
Lemma 2.1.23. Let M be a sheaf. Then P0(M) as described above is a sheaf.
Proof. (a) Let (P,U) ∈ P0(M). Then E((P,U)) = U, and so
(P,U) E((P,U)) = (P,U) U = (P U, U ∩ U) = (P U, U). Now, for any a ∈ M, (P U)(a) = P (a) ∩ U = P (a), since P (a) ⊆ U. Thus P U = P , and hence
(P,U) E((P,U)) = (P,U).
28 (b) Let (P,U) ∈ P0(M) and V ∈ Ω. Then
E((P,U) V ) = E((P V,U ∩ V )) = U ∩ V = E((P,U)) ∩ V.
(c) Let (P,U) ∈ P0(M), and V,W ∈ Ω. Then
((P,U) V ) W = (P V,U ∩ V ) W = ((P V ) W, U ∩ V ∩ W ), where ((P V ) W )(a) = (P V )(a) ∩ W = P (a) ∩ V ∩ W for all a ∈ M. We note that P (a)∩V ∩W = (P (V ∩W ))(a) for any a ∈ M. So, (P V ) W = P (V ∩W ). Thus ((P,U) V ) W = ((P V ) W, U ∩ V ∩ W ) = (P (V ∩ W ),U ∩ V ∩ W ) = (P,U) (V ∩ W ).
(d) P0(M) can be partially ordered as discussed in Definition 2.1.1, that is, for (P1,U1), (P2,U2) ∈ P0(M), (P1,U1) ≤ (P2,U2) iff (P1,U1) = (P2,U2) E((P1,U1)). So (P1,U1) ≤ (P2,U2) iff (P1,U1) = (P2,U2) U1, that is, iff P1 = P2 U1 and U1 = U2 ∩ U1. In other words,
(P1,U1) ≤ (P2,U2) iff U1 ⊆ U2 and P1(a) = P2(a) ∩ U1 for all a ∈ M.
(e) Two elements (P1,U1), (P2,U2) ∈ P0(M) are compatible iff
(P1,U1) E((P2,U2)) = (P2,U2) E((P1,U1)), that is, iff (P1,U1) U2 = (P2,U2) U1.
So, (P1,U1) and (P2,U2) are compatible iff
(P1 U2,U1 ∩ U2) = (P2 U1,U1 ∩ U2), that is, iff P1(a) ∩ U2 = P2(a) ∩ U1 for all a ∈ M.
Now suppose C is a compatible subset of P0(M). We need to show that C has a least upper bound. We consider the pair (Q, V ), where Q and V are defined as follows. [ [ V = U and Q(a) = P (a) for any a ∈ M. (P,U)∈C (P,U)∈C
29 [ Clearly, V ∈ Ω. For any a ∈ M, Q(a) = P (a) ∈ Ω. Now suppose a, b ∈ M such that (P,U)∈C a = b. Let (P,U) ∈ C. Since P : M / Ω, P (a) = P (b). So, [ [ Q(a) = P (a) = P (b) = Q(b). (P,U)∈C (P,U)∈C
Hence Q is a function from M into Ω. Now for any a ∈ M, P (a) ⊆ E(a) for all (P,U) ∈ C. So, [ Q(a) = P (a) ⊆ E(a). (P,U)∈C Also, for any a ∈ M, P (a) ⊆ U for all (P,U) ∈ C. Thus [ [ Q(a) = P (a) ⊆ U = V. (P,U)∈C (P,U)∈C
Let a, b ∈ M. Now for any (P,U) ∈ C, P (a) ∩ [[a = b]] ⊆ P (b). Then [ Q(a) ∩ [[a = b]] = P (a) ∩ [[a = b]] (P,U)∈C [ = (P (a) ∩ [[a = b]]) (P,U)∈C [ ⊆ P (b) (P,U)∈C = Q(b).
Thus (Q, V ) ∈ P0(M). We claim that this (Q, V ), as defined above, is the least upper bound of C. The proof is as follows.
Let (P1,U1) ∈ C. Then
(Q, V ) E((P1,U1)) = (Q, V ) U1 = (Q U1,V ∩ U1). Now, [ V ∩ U1 = U ∩ U1 = U1, (P,U)∈C and, for any a ∈ M, (Q U1)(a) = Q(a) ∩ U1 [ = P (a) ∩ U1 (P,U)∈C [ = (P (a) ∩ U1). (P,U)∈C
30 Since C is a compatible subset of P0(M), (P1,U1) is compatible with each element of C, and hence P (a) ∩ U1 = P1(a) ∩ U for every (P,U) ∈ C. Thus [ [ (P (a) ∩ U1) = (P1(a) ∩ U) (P,U)∈C (P,U)∈C [ = P1(a) ∩ U (P,U)∈C = P1(a), [ since P1(a) ⊆ U1 ⊆ U. Hence Q U1 = P1. This shows that (P,U)∈C
(Q, V ) E((P1,U1)) = (P1,U1),
which implies (P1,U1) ≤ (Q, V ). Thus (Q, V ) is an upper bound of C. Moreover, [ [ E((Q, V )) = V = U = E((P,U)). (P,U)∈C (P,U)∈C
Hence by Lemma 2.1.6 (ii), (Q, V ) is the least upper bound of C. This shows that every compatible subset of P0(M) has a least upper bound. Thus P0(M) is a sheaf.
Lemma 2.1.24. Suppose M is a sheaf, and (P,U) ∈ P0(M). Then for any V ∈ Ω, (P V )(a) = P (a V ) for all a ∈ M.
Proof. By condition (iii) of the definition of P0(M), we have
P (a V ) ∩ [[a V = a]] ⊆ P (a). Now, by Lemma 2.1.11 (iv) and (i), we have
[[a V = a]] = [[a = a]] ∩ V = E(a) ∩ V. Thus P (a V ) ∩ E(a) ∩ V ⊆ P (a), which implies that P (a V ) ∩ E(a) ∩ V ⊆ P (a) ∩ V = (P V )(a).
By condition (i) of the definition of P0(M), P (a V ) ⊆ E(a V ) = E(a) ∩ V . So,
P (a V ) ∩ E(a) ∩ V = P (a V ). Hence, P (a V ) ⊆ (P V )(a) for all a ∈ M. Conversely, P (a) ∩ [[a = a V ]] ⊆ P (a V ), by condition (iii) of the definition of P0(M). Using Lemma 2.1.11 (ii), we have
[[a = a V ]] = [[a V = a]],
31 which is equal to E(a) ∩ V as shown above. Then
P (a) ∩ E(a) ∩ V ⊆ P (a V ), which implies that P (a) ∩ V ⊆ P (a V ) = (P V )(a), since P (a) ⊆ E(a) by condition (i) of the definition of P0(M). Thus
P (a V ) = P (a) ∩ V = (P V )(a) for all a ∈ M.
Remark 2.1.25. Continuing the discussion in the above proof, we further note that since P (a) ∈ Ω,
P (a) ∩ V = P (a) V, the operator here being the one for the sheaf Ω. The preceding lemma, along with this observation, not only provides a justification for the denotation P V , but also shows that the map P : M / Ω preserves . An interesting conclusion from this is that, for any (P,U) ∈ P0(M), P : M / Ω is almost a sheaf morphism, but falls short of the mark as it may not preserve E for all a ∈ M, that is, for some a ∈ M, it is possible that P (a) ( E(a). Proposition 2.1.26. The Definitions 2.1.21 and 2.1.22 of the power sheaf of a sheaf are equivalent. More specifically, for any sheaf M there is an explicit one-to-one correspondence between P(M) and P0(M) which preserves E and . Q M Proof. Suppose M is a sheaf. Let (Q, U) ∈ P(M) = Ω1 . So, M U / Ω1 U is a sheaf morphism. We define (Q, U)0 = (P,U), where P : M / Ω is defined by
Q(a U) = (P (a),E(a) ∩ U) for all a ∈ M.
P : M / Ω is well-defined since Q is well-defined. We now claim that (P,U) ∈ P0(M). The proof is as follows.
(i) Let a ∈ M. Then Q(a U) = (P (a),E(a) ∩ U) ∈ Ω1 U. By definition of Ω1, this means that P (a) ⊆ E(a) ∩ U ⊆ E(a). Thus, for any a ∈ M, P (a) ⊆ E(a).
(ii) From the above argument, we also see that P (a) ⊆ U for all a ∈ M.
(iii) We note that for any a ∈ M and V ∈ Ω, since Q is a sheaf morphism,
Q(a U) V = Q((a U) V ) = Q((a V ) U), which implies that
(P (a),E(a) ∩ U) V = (P (a V ),E(a V ) ∩ U), that is, (P (a) ∩ V,E(a) ∩ U ∩ V ) = (P (a V ),E(a) ∩ V ∩ U).
32 Thus P (a V ) = P (a) ∩ V for all a ∈ M and V ∈ Ω. Now suppose a, b ∈ M. Then since Q is a sheaf morphism,
Q(a U) [[a = b]] = Q((a U) [[a = b]]) = Q((a [[a = b]]) U) = Q((b [[a = b]]) U),
since a [[a = b]] = b [[a = b]] by Lemma 2.1.11 (v). Now,
Q((a [[a = b]]) U) = Q((b [[a = b]]) U) implies that P (a [[a = b]]) = P (b [[a = b]]). Using our previous arguments regarding P (a V ) for any open set V , we have
P (a [[a = b]]) = P (a) ∩ [[a = b]], and P (b [[a = b]]) = P (b) ∩ [[a = b]]. Combining the above equations, we have
P (a) ∩ [[a = b]] = P (b) ∩ [[a = b]] ⊆ P (b).
Thus (P,U) ∈ P0(M). ∗ Conversely, suppose (P,U) ∈ P0(M). We define (P,U) = (Q, U), where Q : M U / Ω1 U is defined by Q(a) = (P (a),E(a)), for all a ∈ M U.
We note that since P : M /Ω is well-defined, P (a) ∈ Ω. Now, since (P,U) ∈ P0(M), P (a) ⊆ E(a) for all a ∈ M U. Thus (P (a),E(a)) ∈ Ω1. Moreover, for any a ∈ M U, E(a) ⊆ U, and E(Q(a)) = E(P (a),E(a)) = E(a) ⊆ U, by definition of E in the sheaf Ω1. This shows that Q(a) = (P (a),E(a)) ∈ Ω1 U for all a ∈ M U, and hence Q is well-defined. Also, since E(Q(a)) = E(a), Q preserves extent. Next let V ∈ Ω. Then Q(a V ) = (P (a V ),E(a V )) = (P (a) ∩ V,E(a) ∩ V ) by Lemma 2.1.24 = (P (a),E(a)) V by definition of in Ω1 = Q(a) V. Thus Q preserves restriction as well, and hence is a sheaf morphism from M U to Ω1 U, that 0 ∗ is, (Q, U) ∈ P(M). Thus maps elements of P(M) to elements of P0(M), while maps elements of P0(M) to elements of P(M). Now, let (Q, U) ∈ P(M). We claim that (Q, U)0∗ = (Q, U). Suppose (Q, U)0 = (P,U). Then (P,U) ∈ P0(M), and for any a ∈ M,
Q(a U) = (P (a),E(a) ∩ U).
33 0∗ ∗ Now suppose (Q, U) = (P,U) = (Q1,U). Then (Q1,U) ∈ P(M) and for any a ∈ M U,
Q1(a) = (P (a),E(a)).
We note that for any a ∈ M U, E(a) ⊆ U and hence,
(a U) E(a) = a (E(a) ∩ U) = a E(a) = a, which implies that a ≤ a U. Also, we have
a E(a U) = a (E(a) ∩ U) = (a E(a)) U = a U, which implies that a U ≤ a. Thus, for any a ∈ M U, a = a U. So, for any a ∈ M U,
Q(a) = Q(a U) = (P (a),E(a) ∩ U) = (P (a),E(a)) = Q1(a).
M 0∗ Hence, Q = Q1, and so (Q, U) = (Q1,U) in P(M) = Ω1 . Thus (Q, U) = (Q, U). ∗0 Conversely, for (P,U) ∈ P0(M), we claim that (P,U) = (P,U). Suppose (P,U) ∈ P0(M) and ∗ M (P,U) = (Q, U). Then (Q, U) ∈ P(M) = Ω1 , and for any a ∈ M U, Q(a) = (P (a),E(a)).
∗0 0 Now suppose (P,U) = (Q, U) = (P1,U). Then (P1,U) ∈ P0(M) and for any b ∈ M,
Q(b U) = (P1(b),E(b) ∩ U). Then for any b ∈ M,
(P1(b),E(b) ∩ U) = Q(b U) = (P (b U),E(b U)) = (P (b) ∩ U, E(b) ∩ U) by Lemma 2.1.24.
We note that since (P,U) ∈ P0(M), P (b) ⊆ U for all b ∈ M by definition of P0(M). So, P (b) ∩ U = P (b) for all b ∈ M. Hence, for any b ∈ M,
(P1(b),E(b) ∩ U) = (P (b) ∩ U, E(b) ∩ U) = (P (b),E(b) ∩ U), which implies that P1(b) = P (b) for all b ∈ M. Thus P = P1, and hence (P,U) = (P1,U) in ∗0 P0(M). So, (P,U) = (P,U). From the above arguments, we conclude that 0 and ∗ are inverses to each other, and hence one-to-one correspondences between P(M) and P0(M). 0 ∗ 0 Lastly, we claim that preserves E and , which implies that also preserves E and since and ∗ are inverses to each other. This can be shown as follows. M 0 Let (Q, U) ∈ P(M) = Ω1 , and (Q, U) = (P,U) ∈ P0(M). By definition of extent in a function sheaf, and in P0(M), E((Q, U)) = U and E((P,U)) = U. Thus
E((Q, U)0) = U = E((Q, U)),
0 and hence preserves extent. Now let V ∈ Ω. Then by definition of in a function sheaf,
(Q, U) V = (Q V,U ∩ V ),
34 where (Q V )(a) = Q(a V ) for any a ∈ M (U ∩ V ), and by definition of in P0(M), we have
(P,U) V = (P V,U ∩ V ),
0 where (P V )(b) = P (b) ∩ V for any b ∈ M. Suppose now that (Q V,U ∩ V ) = (P1,U ∩ V ). Then for any b ∈ M, (Q V )(b (U ∩ V )) = (P1(b),E(b) ∩ U ∩ V ).
We note that since (P1,U ∩ V ) ∈ P0(M), for any b ∈ M, P1(b) ⊆ U ∩ V , and so
(P1(b),E(b) ∩ U ∩ V ) = (Q V )(b (U ∩ V )) = (Q V )((b U) V ) = Q(b U) V = (P (b),E(b) ∩ U) V. Thus 0 0 ((Q, U) V ) = (P1,U ∩ V ) = (P,U) V = (Q, U) V. Hence, 0 preserves restriction as well. This completes the proof.
Definition 2.1.27. Suppose (M,EM , M ) and (N,EN , N ) are sheaves. We say that (N,EN , N ) is a subsheaf of (M,EM , M ) if • N ⊆ M,
• EN is the restriction of EM to N, that is, EM (a) = EN (a) for all a ∈ N, and
• N is the restriction of M to N, that is, a M U = a N U for all a ∈ N, and for any U ∈ Ω.
Remark 2.1.28. Clearly, if M is a sheaf and U ∈ Ω, then the restriction sheaf M U as described in 2.1.17 is a subsheaf of M.
Proposition 2.1.29. Suppose M is a sheaf in Sh(T ). There is a one-to-one correspondence between the subsheafs of M and the global elements of the power sheaf of M, P(M).
0 Proof. Suppose M is a subsheaf of M. We define a map fM 0 : M / Ω1 as follows. [ fM 0 (a) = E(b),E(a) for all a ∈ M. b≤a b∈M 0
We note that for any b ≤ a, E(b) ⊆ E(a), by Lemma 2.1.6 (i), and so [ E(b) ⊆ E(a). b≤a b∈M 0
This shows that fM 0 (a) ∈ Ω1 for any a ∈ M. Hence fM 0 is well defined. Moreover, by definition of extent in Ω1, E(fM 0 (a)) = E(a) for any a ∈ M. Thus fM 0 preserves extent. Next, we note that for
35 any U ∈ Ω, and for any a ∈ M, [ fM 0 (a) U = E(b),E(a) U b≤a b∈M 0 [ = E(b) U, E(a) U , b≤a b∈M 0 [ by definition of restriction in Ω1. Now, since E(b),E(a),U ∈ Ω, we have, by definition of the b≤a b∈M 0 restriction operator in Ω, E(a) U = E(a) ∩ U = E(a U), and [ [ E(b) U = ( E(b)) ∩ U b≤a b≤a b∈M 0 b∈M 0 [ = (E(b) ∩ U) b≤a b∈M 0 [ = E(b). b≤aU b∈M 0 Thus [ fM 0 (a) U = E(b),E(a U) = fM 0 (a U), b≤aU b∈M 0
fM0 which shows that fM 0 preserves restriction as well. Hence M / Ω1 is a sheaf morphism. So M (fM 0 ,T ) ∈ Ω1 = P(M), the power sheaf of M. Since E((fM 0 ,T )) = T , this is a global element of P(M). f Conversely, suppose (f, T ) ∈ P(M) is a global element of the power sheaf, that is, M / Ω1 is a sheaf morphism. Then we define Mf ⊆ M as follows.
Mf = {a ∈ M | f(a) = (E(a),E(a))}.
We endow Mf with the E and operators of M restricted to Mf . We note that the Mf satisfies conditions (a)-(d) of Definition 2.1.1 by virtue of the fact that it inherits the extent and the restriction operators from the sheaf M. Thus to show that Mf is a sheaf, we only need to show that any compatible subset of Mf has its least upper bound in Mf , that is, condition (e) in Definition 2.1.1. This is shown as follows. Let C be a compatible subset of Mf . Then since C is also a compatible subset of the sheaf M, it [ has a least upper bound, say, c. Using Lemma 2.1.6 (ii), we have that E(c) = E(a). We now a∈C consider the set f(C) = {f(a) | a ∈ C} = {(E(a),E(a)) | a ∈ C} ⊆ Ω1.
36 We note that for any two elements a1, a2 ∈ C,
f(a1) E(f(a2)) = (E(a1),E(a1)) E(a2) = (E(a1) ∩ E(a2),E(a1) ∩ E(a2)) = (E(a2),E(a2)) E(a1) = f(a2) E(f(a1)), using the definitions of E and in Ω1, which shows that f(C) is a compatible subset of the sheaf Ω1. Hence f(C) has a least upper bound. We claim that ! [ [ (E(c),E(c)) = E(a), E(a) a∈C a∈C is the least upper bound for f(C). For any a1 ∈ C, ! ! [ [ [ [ E(a), E(a) E(f(a1)) = E(a), E(a) E(a1) a∈C a∈C a∈C a∈C = (E(a1),E(a1)) = f(a1), which shows that f(a1) ≤ (E(c),E(c)) for all a1 ∈ C. Moreover, [ [ E((E(c),E(c)) = E(c) = E(a) = E(f(a)). a∈C a∈C Thus, by Lemma 2.1.6 (ii), (E(c),E(c)) is indeed the least upper bound for f(C). Now, for any a ∈ C, a ≤ c. So by Lemma 2.1.16, f(a) ≤ f(c). Moreover, since f is a sheaf morphism, [ [ E(f(c)) = E(c) = E(a) = E(f(a)). a∈C a∈C Thus, by Lemma 2.1.6 (ii), f(c) is the least upper bound for f(C). Hence, by the uniqueness of the least upper bound, f(c) = (E(c),E(c)).
This shows that c ∈ Mf . Hence every compatible subset of Mf has its least upper bound in Mf , thus proving that Mf is a sheaf. So, Mf is a subsheaf of M. 0 Now, let M ⊆ M be a subsheaf of M. We define the global element (fM 0 ,T ) ∈ P(M) as [ discussed above. So, fM 0 (a) = E(b),E(a) for all a ∈ M. Then using the sheaf morphism b≤a b∈M 0 fM0 M / Ω1, we define the subsheaf
M = {a ∈ M | f 0 (a) = (E(a),E(a))} ⊆ M. fM0 M We claim that M = M 0. This can be proved as follows. fM0 Let b ∈ M 0. Then [ fM 0 (b) = E(c),E(b) , c≤b c∈M 0
37 [ 0 and E(c) ⊆ E(b), by definition of Ω1. Now, since b ∈ M and b ≤ b, c≤b c∈M 0 [ E(b) ⊆ E(c) ⊆ E(b), c≤b c∈M 0 [ which implies that E(c) = E(b), and hence c≤b c∈M 0
fM 0 (b) = (E(b),E(b)).
This implies that b ∈ M . So M 0 ⊆ M . fM0 fM0 Conversely, suppose b ∈ M . Then, by definition of M , fM0 fM0
fM 0 (b) = (E(b),E(b)), and by definition of f 0 , M [ fM 0 (b) = E(c),E(b) . c≤b c∈M 0 [ So E(c) = E(b). Now we consider the set c≤b c∈M 0
{c ∈ M 0 | c ≤ b} ⊆ M 0.
0 Let c1, c2 ∈ {c ∈ M | c ≤ b}. Then c1, c2 ≤ b, which means that c1 = b E(c1) and c2 = b E(c2). So, c1 E(c2) = (b E(c1)) E(c2) = b (E(c1) ∩ E(c2)) = (b E(c2)) E(c1) = c2 E(c1). 0 0 This shows that c1, c2 are compatible. Hence {c ∈ M | c ≤ b} is a compatible subset of M . Since M 0 is a sheaf, the compatible subset {c ∈ M 0 | c ≤ b} has a least upper bound in M 0. Clearly, b is [ an upper bound for {c ∈ M 0 | c ≤ b}. Moreover, E(b) = E(c). So by Lemma 2.1.6 (ii), b is c≤b c∈M 0 the least upper bound for {c ∈ M 0 | c ≤ b}. Hence b ∈ M 0. Thus M ⊆ M 0. Hence M = M 0. fM0 fM0 f Now, suppose (f, T ) be a global section of the power sheaf P(M). Then M / Ω1 is a sheaf morphism. Since a sheaf morphism preserves extent, we have that for any a ∈ M, E(f(a)) = E(a). Thus, for any a ∈ M, f(a) is of the form (U, E(a)) ∈ Ω1, where U is some open subset of T such that U ⊆ E(a). We now define a subsheaf Mf of M as follows.
Mf = {a ∈ M | f(a) = (E(a),E(a))}.
38 Using the above defined subsheaf, we now define a global section of the power sheaf (fMf ,T ), where f Mf M / Ω1 is a sheaf morphism defined by [ fM (a) = E(b),E(a) for each a ∈ M. f b≤a b∈Mf
We claim that f = fMf . This can be shown as follows. Let a ∈ M, and f(a) = (U, E(a)), where U is an open subset of T such that U ⊆ E(a). We note that E(f(a)) = E(a) = E(fMf (a)). So,
f(a) E(fMf (a)) = f(a) E(a) = (U, E(a)) E(a) = (U ∩ E(a),E(a)) = (U, E(a)), since U ⊆ E(a) = f(a).
This shows that f(a) ≤ fMf (a) in the sheaf Ω1. Also,
fMf (a) E(f(a)) = fMf (a) E(a) [ = E(b),E(a) E(a) b≤a b∈Mf [ = E(b) ∩ E(a),E(a) b≤a b∈Mf [ [ = E(b),E(a) , since E(b) ⊆ E(a) b≤a b≤a b∈Mf b∈Mf
= fMf (a).
This shows that fMf (a) ≤ f(a) in the sheaf Ω1. Then since ≤ is a partial order, we have f(a) = fMf (a). As a was an arbitrary element of M, this shows that f = fMf , and so (f, T ) = (fMf ,T ) in the power sheaf P(M). This completes the proof.
2.2 Higher-Order Intuitionistic Logic
The system of higher-order intuitionistic logic that we will discuss here is HIQCE. This is based on a many-sorted language L . The sorts are given by the following clauses.
(a) There is a collection of basic sorts (primitive sorts) β0, β1, β2,.... (b) If σ and τ are sorts, then so is σ × τ (the product sort of σ and τ).
(c) If σ is a sort, then so is P (σ) (the power sort of σ).
39 (d) If σ, τ are sort, then so is σ / τ (the function sort from σ to τ).
Note that higher products of sorts are defined inductively by repeated application of clause (b) above. The language L consists of (i) the sorts as described above;
(ii) a countably infinite supply of variables, denoted xσ, yσ,... for each sort σ;
(iii) a collection of predicates each designated as n-ary of type (σ1, . . . , σn), where σi(1 ≤ i ≤ n) are sorts;
(iv) an equality predicate =σ of type (σ, σ) for each sort σ;
(v) a predicate ∈σ of type (σ, P (σ)) for each sort σ;
(vi) an existence predicate Eσ of type (σ) for each sort σ;
(vii) a collection of operators each designated as n-ary of type (σ1, . . . , σn, τ), where σi(1 ≤ i ≤ n), τ are sorts;
(viii) a pairing operator πσ,τ of type (σ, τ, σ × τ), where σ, τ are sorts;
σ,τ σ,τ (ix) projection operators π1 and π2 of types (σ × τ, σ) and (σ × τ, τ) respectively, where σ, τ are sorts;
(x) an application operator Apσ,τ of type (σ / τ, σ, τ), where σ, τ are sorts;
(xi) propositional connectives ⊥, ¬, ∧, ∨, =⇒ , ⇐⇒ ;
(xii) quantifiers ∀, ∃.
We shall drop the superscripts indicating the sorts and types, when there is no chance of confusion. The terms are generated as follows.
(i) Each variable, xσ of sort σ is a term of sort σ.
(ii) If f is an n-ary operator of type (σ1, . . . , σn, τ), and s1, . . . , sn are terms of sort σ1, . . . , σn respectively, then fs1 . . . sn is a term of sort τ. The atomic formulas are:
(i) t1 = t2, where t1, t2 are terms of some sort σ and = is of type (σ, σ),
(ii) t1 ∈ t2, where t1 is of some sort σ, t2 is of sort P (σ), and ∈ is of type (σ, P (σ)),
(iii) P t1 . . . tn, where t1, . . . , tn are terms of sort σ1, . . . , σn respectively, and P is an n-ary predicate of type (σ1, . . . , σn). Then the formulas are generated as follows.
• If A is a formula, so is ¬A.
• If A, B are formulas, then so are (A ∧ B), (A ∨ B), (A =⇒ B), (A ⇐⇒ B).
• If A is a formula and x is a variable occurring in A, then ∀x A, and ∃x A are formulas.
40 Definition 2.2.1. The complexity of a formula is the number of occurrences of propositional connectives, ¬, ∧, ∨, =⇒ , ⇐⇒ , and quantifiers ∀, ∃.
Definition 2.2.2. An occurrence of a variable x in a formula A is said to be bound in A if it is within the scope of a quantifier ∀x or ∃x in A. An occurrence of a variable x is said to be free in A if it is not bound.
Definition 2.2.3. A formula A is called a sentence if it has no free variables.
A more detailed discussion on the above concepts can be found at [30, 23].
2.3 An interpretation of higher-order intuitionistic logic
The sheaves over a topological space T form a model for higher-order intuitionistic logic and arithmetic in the following way.
• Each basic sort σ is interpreted as a sheaf Mσ, a product sort σ × τ is interpreted as the sheaf Mσ Mσ×τ := Mσ × Mτ , a function sort σ / τ is interpreted as the sheaf Mσ / τ := Mτ , and M a power sort P (σ) is interpreted as the sheaf Ω1 := P(Mσ).
• We extend the language with a constant symbol for each member of a sheaf Mσ, for each sort σ.
• For each closed term s of sort σ, there is a member [[s]] of the sheaf Mσ. The closed terms are interpreted as follows.
– If a is a constant symbol of sort σ, then [[a]] ∈ Mσ. Moreover, if a ∈ Mσ, then [[a]] := a. – For closed terms s of sort σ and t of sort τ, [[πst]] is an element of the product sheaf Mσ × Mτ defined by [[πst]] = [[s]] E([[t]]), [[t]] E([[s]]) .
– If u is a closed term of sort σ × τ, then [[u]] = (a, b) for some (a, b) ∈ Mσ × Nτ . Then
[[π1u]] = a, and [[π2u]] = b.
Mσ – If t is a closed term of sort σ / τ, then [[t]] = (f, U) for some (f, U) ∈ Mτ . Moreover, if s is a closed term of sort σ, then ts is a closed term of sort τ, and
[[Apts]] = f([[s]] U).
• To each atomic sentence A, we assign a truth value [[A]] ∈ Ω as follows.
– For s, t closed terms of sort σ,
[[s = t]] = S{U ∈ Ω | U ⊆ E([[s]]) ∩ E([[t]]) and [[s]] U = [[t]] U} = the largest U ⊆ E([[s]]) ∩ E([[t]]) such that [[s]] U = [[t]] U.
– For t a closed term of sort σ, [[Et]] = [[t = t]] = E([[t]]).
41 – For s a closed term of sort σ and t a closed term of sort P (σ) with [[t]] = (Q, V ) ∈ Mσ P(Mσ) = Ω1 , we define [[s ∈ t]] as follows.
Q([[s]] V ) = ([[s ∈ t]],E([[s]]) ∩ V ) .
By Proposition 2.1.26, we can alternatively take [[t]] = (P,U) ∈ P0(Mσ). In that case, [[s ∈ t]] can be defined as follows.
[[s ∈ t]] = P ([[s]]).
• For sentences of higher complexity, we use the following and proceed by induction.
– For the propositional connectives,
[[A ∧ B]] = [[A]] ∩ [[B]], [[A ∨ B]] = [[A]] ∪ [[B]], [[⊥]] = ∅,
[[A =⇒ B]] = [[A]] =⇒ [[B]], where U =⇒ V = ((T \ U) ∪ V )◦ = the interior of (T \ U) ∪ V,
and [[¬A]] = [[A =⇒ ⊥]] that is, [[¬A]] = (T \ [[A]])◦.
– For the quantifiers, [ [[∃x A(x)]] = [[Ea ∧ A[x/a]]], and
a∈Mσ
!◦ \ [[∀x A]] = [[Ea =⇒ A[x/a]]] ,
a∈Mσ where x is a variable of sort σ.
A sheaf model over a topological space is denoted by Sh(T ) and is said to satisfy a sentence A if [[A]] = T . Now, we will show some of the rules and axioms that hold in these sheaf models. The first of these is the substitution of equals.
Lemma 2.3.1. For any sentence, A, and closed terms s, t of the same sort, the following substitu- tion rule is valid in Sh(T ) for any topological space, T .
[[s = t]] ∩ [[A(t)]] ⊆ [[A(s)]].
Proof. The atomic sentences of HIQCE are of the form
(a) u = v
(b) Eu
(c) u ∈ v where the closed terms u, v are of appropriate sorts and the predicates, =, E, ∈ are of appropriate types.
42 (a) Suppose A is the atomic sentence, t = u, where t, u are closed terms of some sort, σ. Then
[[s = t]] ∩ [[t = u]] ⊆ [[s = u]],
where s is also a closed term of sort σ follows from Lemma 2.1.6 (iii).
(b) Suppose A is the atomic sentence, Et, where t is a closed term of some sort, σ. We need to show that [[s = t]] ∩ [[Et]] ⊆ [[Es]], where s is also a closed term of sort σ. Let α ∈ [[s = t]] ∩ [[Et]] = [[s = t]] ∩ E([[t]]). Then α ∈ E([[t]]), and there is an open U ⊆ T such that
α ∈ U ⊆ E([[s]]) ∩ E([[t]]) and [[s]] U = [[t]] U, which shows that α ∈ E([[s]]) = [[Es]].
(c) Finally suppose A is the atomic sentence, t ∈ u, where t is a closed term of some sort, σ, and u is a closed term of sort P (σ). We need to show that
[[s = t]] ∩ [[t ∈ u]] ⊆ [[s ∈ u]],
and [[u = v]] ∩ [[t ∈ u]] ⊆ [[t ∈ v]], where s is a closed term of sort σ, and v is a closed term of sort P (σ). Suppose [[t]] ∈ M, M and [[u]] ∈ P(M) = Ω1 . Then, [[u]] = (Q, U) for some open U ⊆ T and a sheaf morphism Q M U / Ω1 U. Moreover,
Q([[t]] U) = ([[t ∈ u]],E([[t]]) ∩ U) , and Q([[s]] U) = ([[s ∈ u]],E([[s]]) ∩ U) .
Let [[s = t]] = V . Then V is the largest open subset of E([[s]]) ∩ E([[t]]) such that [[s]] V = [[t]] V . Now, Q([[t]] U) V = ([[t ∈ u]],E([[t]]) ∩ U) V = ([[t ∈ u]] ∩ V,E([[t]]) ∩ U ∩ V ) ,
by definition of in Ω1. By definition of a sheaf morphism,
Q([[t]] U) V = Q([[t]] (U ∩ V )) = Q(([[t]] V ) U) = Q(([[s]] V ) U) = Q([[s]] (U ∩ V )).
Now, [[s]] (U ∩ V ) ≤ [[s]] U since
([[s]] U) E ([[s]] (U ∩ V )) = ([[s]] U) (E([[s]]) ∩ U ∩ V ) = [[s]] (U ∩ E([[s]]) ∩ U ∩ V ) = ([[s]] E([[s]])) (U ∩ U ∩ V ) = [[s]] (U ∩ V ).
So by Lemma 2.1.16, Q([[s]] (U ∩ V )) ≤ Q([[s]] U). Hence,
Q([[t]] U) V ≤ Q([[s]] U),
43 which implies that
([[t ∈ u]] ∩ V,E([[t]]) ∩ U ∩ V ) ≤ ([[s ∈ u]],E([[s]] ∩ U) .
By Example 2.1.7 (d), this means
[[s ∈ u]] ∩ E([[t]]) ∩ U ∩ V = [[t ∈ u]] ∩ V.
Now, V ⊆ E([[s]]) ∩ E([[t]]) ⊆ E([[t]]). Also, since ([[s ∈ u]],E([[s]]) ∩ U) ∈ Ω1 U, [[s ∈ u]] ⊆ E([[s]]) ∩ U ⊆ U by definition of Ω1. Thus
[[s ∈ u]] ∩ E([[t]]) ∩ U ∩ V = [[s ∈ u]] ∩ V.
Hence, [[t ∈ u]] ∩ V = [[s ∈ u]] ∩ V ⊆ [[s ∈ u]], that is, [[t ∈ u]] ∩ [[s = t]] ⊆ [[s ∈ u]].
Suppose [[t]] ∈ M, and [[u]], [[v]] ∈ P(M). Then [[u]] = (Q, U), and [[v]] = (R,V ) for some open Q R U, V ⊆ T and sheaf morphisms M U / Ω1 U, and M V / Ω1 V . Moreover,
Q([[t]] U) = ([[t ∈ u]],E([[t]]) ∩ U) , and R([[t]] V ) = ([[t ∈ v]],E([[t]]) ∩ V ) . Let [[u = v]] = W . Then W is the largest open subset of E([[u]]) ∩ E([[v]]) = U ∩ V such that [[u]] W = [[v]] W , that is, (Q W, U ∩ W ) = (R W, V ∩ W ). Now,
([[t ∈ u]] ∩ W, E([[t]]) ∩ U ∩ W ) = Q([[t]] U) W = Q([[t]] (U ∩ W )) = (Q W )([[t]] (U ∩ W )) = (R W )([[t]] (V ∩ W )) = R([[t]] (V ∩ W )) = R([[t]] V ) W = ([[t ∈ v]] ∩ W, E([[t]]) ∩ V ∩ W ) .
Thus [[t ∈ u]] ∩ W = [[t ∈ v]] ∩ W ⊆ [[t ∈ v]], that is, [[t ∈ u]] ∩ [[u = v]] ⊆ [[t ∈ v]].
Thus the substitution rule is valid for any atomic sentence, A. To extend this result to include all sentences, we will use induction on the complexity, n of the sentence, A. From the preceding argument, we have that the substitution rule is valid for the base case, n = 0. As the induction hypothesis, we assume that the substitution rule is valid for all sentences with complexity less than or equal to k for some non-negative integer k ≥ 0. Suppose A is a sentence with complexity k + 1. Then we have the following cases.
44 (i) Suppose A is of the form ¬B. Then the complexity of B is k. We need to show that
[[s = t]] ∩ [[¬B(s)]] ⊆ [[¬B(t)]],
where s, t are closed terms of the same sort. Let [[s = t]] = U. Then, [[s = t]] ∩ [[¬B(s)]] = U ∩ (T \ [[B(s)]])◦ = (U ∩ (T \ [[B(s)]]))◦ . Now, by the induction hypothesis,
U ∩ [[B(t)]] ⊆ [[B(s)]].
So, T \ [[B(s)]] ⊆ T \ (U ∩ [[B(t)]]). Thus (U ∩ (T \ [[B(s)]]))◦ ⊆ (U ∩ (T \ (U ∩ [[B(t)]])))◦ = (U ∩ ((T \ U) ∪ (T \ [[B(t)]])))◦ = ((U ∩ (T \ U)) ∪ (U ∩ (T \ [[B(t)]])))◦ = (U ∩ (T \ [[B(t)]]))◦ ⊆ (T \ [[B(t)]])◦ = [[¬B(t)]] Hence, [[s = t]] ∩ [[¬B(s)]] ⊆ [[¬B(t)]].
(ii) Suppose A is of the form B ∧ C. Then the complexities of B and C are less than or equal to k. We need to show that
[[s = t]] ∩ [[B(s) ∧ C(s)]] ⊆ [[B(t) ∧ C(t)]],
where s, t are closed terms of the same sort. Now, [[s = t]] ∩ [[B(s) ∧ C(s)]] = [[s = t]] ∩ ([[B(s)]] ∩ [[C(s)]]) = ([[s = t]] ∩ [[B(s)]]) ∩ ([[s = t]] ∩ [[C(s)]]) ⊆ [[B(t)]] ∩ [[C(t)]], by the induction hypothesis. Hence,
[[s = t]] ∩ [[B(s) ∧ C(s)]] ⊆ [[B(t) ∧ C(t)]],
(iii) Suppose A is of the form B ∨ C. Then the complexities of B and C are less than or equal to k. We need to show that
[[s = t]] ∩ [[B(s) ∨ C(s)]] ⊆ [[B(t) ∨ C(t)]],
where s, t are closed terms of the same sort. Now, [[s = t]] ∩ [[B(s) ∨ C(s)]] = [[s = t]] ∩ ([[B(s)]] ∪ [[C(s)]]) = ([[s = t]] ∩ [[B(s)]]) ∪ ([[s = t]] ∩ [[C(s)]]) ⊆ [[B(t)]] ∪ [[C(t)]], by the induction hypothesis. Hence,
[[s = t]] ∩ [[B(s) ∨ C(s)]] ⊆ [[B(t) ∨ C(t)]],
45 (iv) Suppose A is of the form B =⇒ C. Then the complexities of B and C are less than or equal to k. We need to show that
[[s = t]] ∩ [[B(s) =⇒ C(s)]] ⊆ [[B(t) =⇒ C(t)]],
where s, t are closed terms of the same sort. Let [[s = t]] = U. Now,
[[s = t]] ∩ [[B(s) =⇒ C(s)]] = U ∩ ((T \ [[B(s)]]) ∪ [[C(s)]])◦ = (U ∩ ((T \ [[B(s)]]) ∪ [[C(s)]]))◦ = ((U ∩ (T \ [[B(s)]]))∪ (U ∩ [[C(s)]]))◦
By the induction hypothesis, U ∩ [[B(t)]] ⊆ [[B(s)]], which implies that T \ [[B(s)]] ⊆ T \ (U ∩ [[B(t)]]) = (T \ U) ∪ (T \ [[B(t)]]). So, U ∩ (T \ [[B(s)]]) ⊆ U ∩ ((T \ U) ∪ (T \ [[B(t)]])) = (U ∩ (T \ U)) ∪ (U ∩ (T \ [[B(t)]])) = U ∩ (T \ [[B(t)]]) ⊆ T \ [[B(t)]]. Also, by the induction hypothesis, we have
U ∩ [[C(s)]] ⊆ [[C(t)]].
So, (U ∩ (T \ [[B(s)]])) ∪ (U ∩ [[C(s)]]) ⊆ (T \ [[B(t)]]) ∪ [[C(t)]], which implies that
((U ∩ (T \ [[B(s)]])) ∪ (U ∩ [[C(s)]]))◦ ⊆ ((T \ [[B(t)]]) ∪ [[C(t)]])◦ .
Hence, U ∩ [[B(s) =⇒ C(s)]] ⊆ [[B(t) =⇒ C(t)]].
(v) Suppose A is of the form B ⇐⇒ C. Then the complexities of B and C are less than or equal to k. We need to show that
[[s = t]] ∩ [[B(s) ⇐⇒ C(s)]] ⊆ [[B(t) ⇐⇒ C(t)]],
where s, t are closed terms of the same sort. Now,
[[B(s) ⇐⇒ C(s)]] = [[(B(s) =⇒ C(s)) ∧ (C(s) =⇒ B(s))]].
So, the argument for B ⇐⇒ C follows easily from the cases (ii) and (iv) above.
46 (vi) Suppose A is of the form ∀x B(x), where the variable x is of some sort, σ. Then the complexity of B is k. We need to show that
[[s = t]] ∩ [[∀x B(s)(x)]] ⊆ [[∀x B(t)(x)]],
where s, t are closed terms of the same sort, say τ. Let [[s = t]] = U, and let the sheaf corresponding to the sort σ be M. Then !◦ \ U ∩ [[∀x B(s)(x)]] = U ∩ [[Ea =⇒ B(s)(a)]] a∈M !◦ \ = U ∩ [[Ea =⇒ B(s)(a)]] a∈M !◦ \ = (U ∩ [[Ea =⇒ B(s)(a)]]) . a∈M Now, by case (iv), for each a ∈ M,
U ∩ [[Ea =⇒ B(s)(a)]] ⊆ [[Ea =⇒ B(t)(a)]].
Thus !◦ !◦ \ \ (U ∩ [[Ea =⇒ B(s)(a)]]) ⊆ [[Ea =⇒ B(t)(a)]] a∈M a∈M = [[∀x B(t)(x)]]. Hence, [[s = t]] ∩ [[∀x B(s)(x)]] ⊆ [[∀x B(t)(x)]],
(vii) Suppose A is of the form ∃x B(x), where the variable x is of some sort, σ. Then the complexity of B is k. We need to show that
[[s = t]] ∩ [[∃x B(s)(x)]] ⊆ [[∃x B(t)(x)]],
where s, t are closed terms of the same sort, say τ. Let [[s = t]] = U, and let the sheaf corresponding to the sort σ be M. Then [ U ∩ [[∃x B(s)(x)]] = U ∩ [[Ea ∧ B(s)(a)]] a∈M [ = (U ∩ [[Ea ∧ B(s)(a)]]). a∈M Now, by case (ii), for each a ∈ M,
U ∩ [[Ea ∧ B(s)(a)]] ⊆ [[Ea ∧ B(t)(a)]].
Thus [ [ (U ∩ [[Ea ∧ B(s)(a)]]) ⊆ [[Ea ∧ B(t)(a)]] a∈M a∈M = [[∃x B(t)(x)]]. Hence, [[s = t]] ∩ [[∃x B(s)(x)]] ⊆ [[∃x B(t)(x)]],
47 Lemma 2.3.2. For any sentence A, and any closed terms s, t of the same sort, if [[s]] ≤ [[t]] in Sh(T ), where T is any topological space, then
[[A(s)]] ∩ E([[s]]) = [[A(t)]] ∩ E([[s]]), and [[A(s)]] ∩ E([[s]]) ⊆ [[A(t)]] ∩ E([[t]]).
Proof. We first note that [[s]] ≤ [[t]] implies that [[s]] = [[t]] E([[s]]). So,
E([[s]]) = E([[t]] E([[s]])) = E([[t]]) ∩ E([[s]]) ⊆ E([[t]]). Now, [[s = t]] is the largest open subset U of T such that U ⊆ E([[s]]) ∩ E([[t]]) = E([[s]]) such that [[s]] U = [[t]] U. We note that
[[s]] E([[s]]) = [[s]] = [[t]] E([[s]]). Thus [[s = t]] = E([[s]]). Then
[[A(s)]] ∩ E([[s]]) = [[A(s)]] ∩ [[s = t]] ⊆ [[A(t)]], by Lemma 2.3.1.
Also, [[A(s)]] ∩ E([[s]]) ⊆ E([[s]]). So,
[[A(s)]] ∩ E([[s]]) ⊆ [[A(t)]] ∩ E([[s]]).
Conversely, we have [[A(t)]] ∩ E([[s]]) = [[A(t)]] ∩ [[s = t]] ⊆ [[A(s)]], by Lemma 2.3.1. So, since [[A(t)]] ∩ E([[s]]) ⊆ E([[s]]),
[[A(t)]] ∩ E([[s]]) ⊆ [[A(s)]] ∩ E([[s]]).
Hence, [[A(s)]] ∩ E([[s]]) = [[A(t)]] ∩ E([[s]]). Now, since E([[s]]) ⊆ E([[t]]), we have [[A(t)]] ∩ E([[s]]) ⊆ [[A(t)]] ∩ E([[t]]). Thus
[[A(s)]] ∩ E([[s]]) ⊆ [[A(t)]] ∩ E([[t]]).
We now present two propositions below, without proof.
Proposition 2.3.3. The following axioms of extensionality are satisfied in Sh(T ) for any topological space, T .
(a) ∀y∀z (y = z ⇐⇒ ∀x (x ∈ y ⇐⇒ x ∈ z)), where x is a variable of some sort σ, and y, z are variables or sort P (σ).
48 (b) ∀z∀w (z = w ⇐⇒ ∀x∃y (zx = y ∧ wx = y)),
where x, y are variables of sorts σ, τ respectively, and z, w are variables of sort σ / τ. Proposition 2.3.4. The following comprehension schemes are satisfied in Sh(T ) for any topological space, T . (a) ∃y∀x (x ∈ y ⇐⇒ A(x)), where x is a variable of some sort σ, y is a variable of sort P (σ), and A(x) is a formula with no free variables other than x.
(b) ∀x∃!y A(x, y) =⇒ ∃z∀x∃y(zx = y ∧ A(x, y)),
where x, y are variables of sort σ, τ respectively, z is a variable of sort σ / τ, and A(x, y) is a formula with only two free variables x, y.
2.4 Sheaves over poset spaces
Definition 2.4.1. A poset is a non-empty set, K with a binary relation ≤ such that for all α, β, γ ∈ K, (a) α ≤ α (reflexive),
(b) if α ≤ β and β ≤ α, then α = β (antisymmetric),
(c) if α ≤ β and β ≤ γ, then α ≤ γ (transitive). Definition 2.4.2. Let (K, ≤) be a poset. A set U ⊆ K is said to be upward closed if for all α, β ∈ K, if α ≤ β and α ∈ U, then β ∈ U. Proposition 2.4.3. The upward closed sets of a poset (K, ≤) form a topology on K.
Proof. The empty set ∅ and the whole set K are trivially upward closed. Suppose U1,U2 are upward closed subsets of K. Let α ∈ U1 ∩ U2, and β ∈ K such that α ≤ β. Since α ∈ U1,U2 and U1,U2 are both upward closed, β ∈ U1,U2. Thus β ∈ U1 ∩ U2. Hence, U1 ∩ U2 is upward closed. In fact, if \ \ {Uk | k ∈ I} is a family of upward closed sets, then Uk is upward closed, because if α ∈ Uk k∈I k∈I and β ≥ α, then since α ∈ Uk for every k ∈ I and each Uk is upward closed, β ∈ Uk for every k ∈ I. [ Let α ∈ Uk, and β ∈ K such that α ≤ β. Then α ∈ Uk for some k ∈ I. Since Uk is upward k∈I [ [ closed, β ∈ Uk. Hence, β ∈ Uk. Thus Uk is upward closed. k∈I k∈I Remark 2.4.4. This topology of the upward closed sets of a poset K is called the Alexandrov topology on K. A sheaf model over a poset (K, ≤) with the respective Alexandrov topology is denoted by Sh(K). We will now explore some of the topological properties of an Alexandrov topology, that will be required for later developments. The standard topological ideas used here can be found in, for example, [15].
49 Lemma 2.4.5. Suppose (K, ≤) is a poset. Then for any point α ∈ K, there is a smallest neigh- borhood of α, namely Uα = {β ∈ K | α ≤ β} in the Alexandrov topology on K.
Proof. We note that Uα is an upward closed subset of K containing α. Thus Uα is a neighborhood of α. Let U be a neighborhood of α ∈ K. Then U is an open subset of K and hence upward closed. Let β ∈ Uα. So, α ≤ β. Since U is upward closed, β ∈ U. Thus Uα ⊆ U. Hence, Uα is the smallest neighborhood of α.
Lemma 2.4.6. Suppose (K, ≤) is a poset. Let {Ai}i∈I be a family of subsets of K. Then !◦ \ \ ◦ Ai = Ai i∈I i∈I in the Alexandrov topology on K.
◦ \ ◦ Proof. We note that for each i ∈ I, Ai is open in K. Then by the proof of Proposition 2.4.3, Ai i∈I !◦ ◦ \ ◦ \ \ is open in K. Moreover, for each i ∈ I, Ai ⊆ Ai. So, Ai ⊆ Ai. Now, Ai is the largest i∈I i∈I i∈I \ open set contained in Ai. So, i∈I !◦ \ ◦ \ Ai ⊆ Ai . i∈I i∈I !◦ !◦ \ \ Let α ∈ Ai . Then by Lemma 2.4.5, since Ai is an open subset of K containing α, i∈I i∈I !◦ !◦ \ \ \ Uα ⊆ Ai . Now since Ai ⊆ Ai, Uα ⊆ Ai for each i ∈ I. So, for any i ∈ I, Uα i∈I i∈I i∈I ◦ is an open subset of Ai, and hence for each i ∈ I, Uα ⊆ Ai , the largest open subset of Ai. Thus \ ◦ \ ◦ Uα ⊆ Ai , which implies that α ∈ Ai . So, i∈I i∈I !◦ \ \ ◦ Ai ⊆ Ai . i∈I i∈I Hence, !◦ \ \ ◦ Ai = Ai . i∈I i∈I
Definition 2.4.7. A topological space, T is said to be locally connected at x ∈ T if for every neighborhood U of x, there is a connected neighborhood V of x contained in U. If T is locally connected at each of its points, it is said to be locally connected. Lemma 2.4.8. Any poset (K, ≤) with the respective Alexandrov topology is locally connected.
50 Proof. Let α ∈ K and Uα = {β ∈ K | α ≤ β}. We first show that Uα is connected by way of contradiction. Suppose Uα is not connected. Then there exists non-empty open sets V and W such that
Uα = V ∪ W and V ∩ W = ∅.
This implies that since α ∈ Uα, α ∈ V or α ∈ W , but not both. Suppose α ∈ V . Now by Lemma 2.4.5, since Uα is the smallest open set containing α, Uα ⊆ V . So, Uα = V . But then W = ∅, because Uα is the union of the disjoint open sets V and W . This is a contradiction. Hence, Uα must be connected. Now, if U is any open set containing α, then by Lemma 2.4.5 again Uα ⊆ U. Thus K is locally connected.
Definition 2.4.9. A function f from a topological space T to a set X is said to be locally constant if for every x ∈ T , there exists a neighborhood U of x, such that f is constant on U.
Lemma 2.4.10. Let (K, ≤) be a poset. Let U be an open subset of K under the Alexandrov topology on it. A continuous function f : U / R is locally constant.
Proof. Let α ∈ K and Uα = {β ∈ K | α ≤ β}. Then Uα is an open set containing α. We first show that any continuous function f : Uα / R is a constant function. −1 Let f(α) = r and > 0. Now, since f is continuous, f (r − , r + ) is open in Uα. Moreover, as −1 Uα is open in K, f (r − , r + ) is open in K and contains α. By Lemma 2.4.5, Uα is the smallest −1 −1 open set of K containing α. Thus Uα ⊆ f (r − , r + ). Hence, Uα = f (r − , r + ). Since this is true for any arbitrary > 0, f(Uα) = {r}. Thus f : Uα / R is a constant function. Now, if U is any open set in K and f : U / R is any continuous function, then for any α ∈ U, α ∈ Uα ⊆ U. By our previous argument, f : Uα / R is constant. This shows that f : U / R is locally constant.
Remark 2.4.11. Every locally constant function from a topological space into another is contin- uous. This can be proved as follows. Suppose T1,T2 are two topological spaces, and f : T1 / T2 −1 −1 is a locally constant function. Let V be an open set of T2. If f (V ) = ∅, then f (V ) is open in −1 T1. If not, then suppose x ∈ f (V ). Since f is locally constant, there exists U open in T1, such that x ∈ U and f is constant on U, that is, f(U) = {f(x)} ⊆ V . This implies that U ⊆ f −1(V ). −1 This proves that f (V ) is open in T1. Hence, f is continuous. Definition 2.4.12. A poset, (K, ≤) is said to be directed if every finite subset of K is bounded above i.e., for any two elements α, β ∈ K, there exists an element γ ∈ K such that α ≤ γ and β ≤ γ.
Lemma 2.4.13. Suppose (K, ≤) is a directed poset and X any set. Then any locally constant function f : U / X, where U is an upward closed subset of K, is constant. The converse is also true, provided the set X has more than one element.
Proof. Let (K, ≤) be a directed poset and α ∈ U. Since f is locally constant, there exists V ⊆ U open in U such that α ∈ V and f is constant on V , that is, f(V ) = {f(α)}. V is also open in K as U is open in K. So by Lemma 2.4.5, Uα = {β ∈ K | α ≤ β}, the smallest open set in K containing α, is contained in V . Now, let γ ∈ U \ V . By similar arguments as above, there exists W ⊆ U open in U, and hence in K, such that Uγ = {β ∈ K | γ ≤ β} ⊆ W , and f(W ) = {f(γ)}. Since K is directed, there exists δ ∈ K such that α, γ ≤ δ. Then δ ∈ Uα and δ ∈ Uγ. Thus f(δ) = f(α) and
51 f(δ) = f(γ), which implies, f(α) = f(γ). This proves that f(U) = {f(α)}, that is, f is a constant function on U. Conversely, suppose (K, ≤) is not directed. So there exists two elements α, β ∈ K with no upper bound. Then Uα,Uβ are open subsets of K. Moreover, Uα ∩ Uβ = ∅, since otherwise if γ ∈ Uα ∩ Uβ, then α, β ≤ γ, which contradicts our assumption that there is no upper bound for α, β. Let x, y ∈ X such that x 6= y. We now define f : Uα ∪ Uβ / X by f(Uα) = x and f(Uβ) = y. Clearly f is well-defined and locally constant, but not constant, on the upward closed set Uα ∪ Uβ, because Uα,Ubeta are disjoint and x 6= y. Hence, if K is not directed and X has more than one element, then there are locally constant functions from open subsets of K into X that are not constant. This proves that if every locally constant function from an open subset of K into X is constant, then (K, ≤) is a directed poset, assuming that X has more than one element.
We denote the collection of all constant functions from open subsets of a topological space T c into a set X by Co(T,X). Remark 2.4.14. The set of constant functions from open subsets of a topological space T into R, or another topological space, is not a sheaf in general. As an example, we may consider the collection of constant functions from open subsets of R into R. Then f : (0, 1) / R defined by f(x) = 0 for all x ∈ (0, 1), and g : (1, 2) / R defined by g(x) = 1 for all x ∈ (1, 2) are members of this collection. Now {f, g} is a compatible subset of elements of this collection since the domains of f, g are disjoint. But {f, g} does not have a join in the collection of constant functions from open c c subsets of R into R, Co(R, R). So Co(R, R) is not a sheaf.
2.5 K-sets
In this section, we present another interpretation of higher-order intuitionistic logic that is equiva- lent to sheaves over posets.
Definition 2.5.1. Let (K, ≤) be a poset. Then a K-set is a family of sets, hMαi indexed by K, together with a collection of maps, hMαβi between these sets satisfying the following conditions.
(i) For each pair of elements α, β ∈ K with α ≤ β, there is a map Mαβ : Mα / Mβ.
(ii) Mαα : Mα / Mα is the identity map on Mα.
(iii) If α ≤ β and β ≤ γ in K, then Mαγ = Mβγ ◦ Mαβ.
We denote this K-set by hMα,Mαβi.
Definition 2.5.2. Suppose M = hMα,Mαβi and N = hNα,Nαβi are K-sets. We define a K-set f morphism M / N to be a family of maps hfα : Mα / Nαi indexed by K such that for any α, β ∈ K with α ≤ β, the following diagram commutes.
Mαβ Mα / Mβ
fα fβ
Nα / Nβ Nαβ
52 For any K-set M = hMα,Mαβi, the identity morphism on M, IM is given by
IM := hIMα iα∈K ,
where IMα is the identity map on Mα. For K-sets M = hMα,Mαβi,N = hNα,Nαβi, and P = f=hfαiα∈K g=hgαiα∈K hPα,Pαβi, if M −−−−−−−→ N, and N −−−−−−−→ P are K-set morphisms, then the composite g◦f arrow M −−→ P is given by
hg ◦ fiα := gα ◦ fα, for each α ∈ K.
Remark 2.5.3. The K-sets and the K-set morphisms form a category. We denote this category by K-Set.
Proposition 2.5.4. The category of sheaves over K, Sh(K) and the category K-Set are structurally similar, that is there exist functors between K-Set and Sh(K).
Proof. Let M = hMα,Mαβi be a K-set. Then we define,
sh Y M := {a = (aα)α∈U ∈ Mα | U ∈ Ω; Mαβ(aα) = aβ α∈U whenever α ≤ β; α, β ∈ U}.
sh sh sh Moreover, we define maps, E : M / Ω, and : M × Ω / M as follows: • E(a) := dom(a),
• a V := a V . sh We claim that (M ,E, ) is a sheaf over K. We note that the following properties of sheaves are sh satisfied by (M ,E, ). sh (i) For any a ∈ M , a (E(a)) = a (dom(a)) = a. (ii) Let a ∈ M sh, and U ∈ Ω. Then
E(a U) = dom(a U) = dom(a) ∩ U = E(a) ∩ U.
(iii) Let U, V ∈ Ω, and a ∈ M sh. Then
(a U) V = (a U) V = a (U ∩ V ) = a (U ∩ V ).
sh (iv) M can be partially ordered by letting a ≤ b if and only if a = b E(a) that is, if and only if a = b dom(a). sh (v) A set C ⊆ M is compatible if a E(b) = b E(a) that is, if a dom(b) = b dom(a). Let C be any compatible subset of M sh. Then there is a least upper bound of C with respect to sh ≤, namely, thea ˆ ∈ M such thata ˆ dom(a) = a for each a ∈ C. Thus there exists a sheaf in Sh(K) for each K-set in K-Set. Conversely, let M = (M,E, ) be a sheaf over K (that is, M ∈ Sh(K)). Then we define,
• Mα := {a ∈ M | E(a) = Uα}, where Uα := {β | α ≤ β},
53 • Mαβ : Mα / Mβ, by a 7→ a Uβ. We note the following.
(i) For each α ∈ K, there is a set Mα.
(ii) For α, β ∈ K with α ≤ β, Uα ⊇ Uβ. This ensures that Mαβ : Mα / Mβ is well-defined.
(iii) Suppose α ∈ K, and a ∈ Mα. So, E(a) = Uα. Then Mαα(a) = a Uα = a E(a) = a. Thus Mαα is the identity map on Mα.
(iv) Suppose α, β, γ ∈ K such that α ≤ β, β ≤ γ. So, Uα ⊇ Uβ ⊇ Uγ. Let a ∈ Mα. Then we have the maps Mαβ : Mα / Mβ,Mβγ : Mβ / Mγ, and Mαγ : Mα / Mγ.
Mβγ ◦ Mαβ(a) = Mβγ(a Uβ) = (a Uβ) Uγ = a (Uβ ∩ Uγ) = a Uγ,
since Uβ ⊇ Uγ. Thus Mαγ = Mβγ ◦ Mαβ.
Let Msh = hMα,Mαβi. Then Msh is a K-set. Thus we have a K-set in K-Set for every sheaf in Sh(K). We define Φ: K-Set / Sh(K) by Φ(M) := M sh, where M = hMα,Mαβi is a K-set, and
Ψ : Sh(K) / K-Set by Ψ(M) := Msh, where M = (M,E, ) is a sheaf over K. sh sh Let M = hMα,Mαβi and N = hNα,Nαβi be K-sets. Then Φ(M) = M , and Φ(N) = N . Let f = hfαiα∈K be an arrow from M to N in K-Set, where fα : Mα / Nα. Then, for all α, β ∈ K with α ≤ β, the following diagram commutes.
Mαβ Mα / Mβ
fα fβ
Nα / Nβ Nαβ
sh Y sh sh Let a = (aα)α∈U ∈ M = Mα, for some U ∈ Ω. We define Φ(f): M / N by α∈U
Φ(f)(a) := (fα(aα))α∈U . We need to show that Φ(f) is a sheaf morphism from M sh to N sh. We note that (i) E(a) = U = E(Φ(f)(a)); and (ii) for any V ∈ Ω, Φ(f)(a V ) = Φ(f)(a V ) = Φ(f)((aα)α∈U∩V ) = (fα(aα))α∈U∩V = (fα(aα))α∈U V = Φ(f)(a) V = Φ(f)(a) V
54 Φ(f) Thus M sh −−−→ N sh is a sheaf morphism. On the other hand let M = (M,EM , M ) and N = (N,EN , N ) be sheaves over K. Then
Ψ(M) = Msh = hMα,Mαβiα≤β∈K , and Ψ(N) = Nsh = hNα,Nαβiα≤β∈K . g Let M −→ N be a sheaf morphism. Then EN (g(a)) = EM (a) and (g(a)) N V = g(a M V ) for all a ∈ M, and for all V ∈ Ω. Let aα ∈ Mα. Then EM (aα) = Uα, where Uα = {β ∈ K | α ≤ β}. We define Ψ(g)α : Mα / Nα by Ψ(g)α(aα) := g(aα) for each α ∈ K, and Ψ(g) = (Ψ(g)α)α∈K . We need to show that Ψ(g) is a K-set morphism from Msh to Nsh. We note that for any α, β ∈ K with α ≤ β,
Nαβ(Ψ(g)α(aα)) = Nαβ(g(aα)) = g(aα) N Uβ = g(aα M Uβ) = g(Mαβ(aα)) = Ψ(g)β(Mαβ(aα)) In other words, the following diagram commutes for every α, β ∈ K with α ≤ β.
Mαβ Mα / Mβ
Ψ(g)α Ψ(g)β
Nα / Nβ Nαβ
Ψ(g) Thus Msh −−−→ Nsh is a K-set morphism. We claim that Φ and Ψ as described above are functors. Suppose M = hMα,Mαβi,N = hNα,Nαβi, and P = hPα,Pαβi be K-sets. Recall that IM = hIMα iα∈K , where IMα is the identity map on Mα, is the identity arrow on M in K-Set. So for any sh a = (aα)α∈U ∈ M , where U ∈ Ω,
Φ(IM )(a) = (IMα (aα))α∈U = (aα)α∈U = a
sh Thus Φ(IM ) is the identity arrow on M in Sh(K). f=hf i g=hg i Next, suppose M −−−−−−−→α α∈K N, and N −−−−−−−→α α∈K P be K-set morphisms. Then for any sh a = (aα)α∈U ∈ M where U ∈ Ω,
Φ(g ◦ f)(a) = (h◦fiα(aα))α∈U = (gα ◦ fα(aα))α∈U = (gα(fα(aα)))α∈U = Φ(g)(((fα(aα))α∈U ) = Φ(g)(Φ(f)(a)) = Φ(g) ◦ Φ(f)(a)
55 Hence, Φ : K-Set / Sh(K) is a functor. IM Suppose M = (M,EM , M ),N = (N,EN , N ), and P = (P,EP , P ) be sheaves. Let M −−→ M be the identity arrow on M. Then for each α ∈ K, and aα ∈ Mα,
Ψ(IM )α(aα) = IM (aα) = aα.
Thus hΨ(IM )iα is the identity map on Mα for each α ∈ K. So, Ψ(IM ) = (Ψ(IM )α)α∈K is the identity arrow on Msh in Sh(K). h k Next, suppose M −→ N, and N −→ P be sheaf morphisms. Then for any α ∈ K, and aα ∈ Mα,
Ψ(k ◦ h)α(aα) = (k ◦ h)(aα) = k(h(aα)) = k(Ψ(h)α(aα)) = Ψ(k)α(Ψ(h)α(aα)) = (Ψ(k)α ◦ Ψ(h)α)(aα) = (Ψ(k) ◦ Ψ(h))α(aα)
Thus Ψ(k ◦ h) = Ψ(k) ◦ Ψ(h), and hence Ψ : Sh(K) / K-Set is also a functor.
Remark 2.5.5. In fact, it can be shown that the functors Φ and Ψ, as described in the above proposition constitute an equivalence of the categories Sh(K) and K-Set. However, since the equiv- alence of the two categories is not required for later development in this document. A sophisticated proof of this equivalence using further category theoretic machinery can be found in [32].
56 Chapter 3
Number systems and sheaves
3.1 The Natural Numbers
Following [31], we first show that Co(T, N) is a Peano structure. Then since any two Peano struc- tures are isomorphic, we have the representation of the natural numbers in Sh(T ). The details are as follows. f Definition 3.1.1. A number structure is an ordered triple (X, f, c) where X is a sheaf, X / X is a sheaf morphism, and c ∈ X is such that the following sentence is valid.
∀Y (c ∈ Y ∧ ∀x(x ∈ Y =⇒ fx ∈ Y ) =⇒ Y = X) where c denotes a designated element of X, f denotes a designated element of the function sheaf XX , x is a variable of sort X, Y is a variable of sort P (X), and X denotes the element X in the power sheaf P(X). A Peano structure is a number structure satisfying in addition
∀x¬(c = fx), ∀x ∀y (fx = fy =⇒ x = y) where c, f are as before, and the variables x, y are of sort X. Then we state the following lemma without proof from [31]. Lemma 3.1.2. (i) If (X, f, c) is a Peano structure and (X0, f 0, c0) a number structure, there exists a unique homomorphism, ϕ such that
ϕ(c) = c0, ϕ(f(x)) = f 0(ϕ(x)) for all x ∈ X.
(ii) Any two Peano structures are isomorphic.
(iii) In any Peano structure (X, f, c) there are uniquely determined functions satisfying the equa- tions for the primitive recursive functions (identifying c with 0, and f with S). In particular, there are uniquely determined + and · such that for all x, y ∈ X
x + c = x, x + f(y) = f(x + y), x · c = c, x · f(y) = x · y + x.
Lemma 3.1.3. Suppose T is any topological space, and U is any open subset of T . Let X be a discrete topological space. Then any continuous function f : U / X is locally constant. Moreover, if U is connected, then f is constant.
57 Proof. Suppose U is an open subset of T , and f : U / X is a continuous function. Let t ∈ U. Then {f(t)} ⊆ X. Since X has the discrete topology, {f(t)} is an open subset of X. Thus, by continuity of f, f −1 ({f(t)}) is an open subset of U. Clearly, t ∈ f −1 ({f(t)}), and f is constant on f −1 ({f(t)}). Hence, f is locally constant. Now, suppose U is connected. As before, let t ∈ U. We consider the sets {f(t)} and X \{f(t)}. These are both open, because X has the discrete topology. Then, by continuity of f, f −1 ({f(t)}) = A (say), and f −1 (X \{f(t)}) = B (say) are open subsets of U. Moreover, A∩B = ∅, and U = A∪B. Since, U is connected, B = ∅. Hence, A = U, that is, f(U) = {f(t)}, which implies that f is a constant function on U.
Proposition 3.1.4. The sheaf in Sh(T ) corresponding to N is Co(T, N), the set of partial continuous functions from T to N with open domain. sh Proof. To simplify the notation for this proof, we will write N for Co(T, N). Let 0 : T / N be sh sh the constant zero function. We also define a function S : N / N as follows. S(a)(t) = a(t) + 1 for all t ∈ U,
sh where U is an open subset of T , and a : U / N ∈ N . We claim that S as defined is a sheaf sh morphism. Let a : U / N ∈ N . Then E(a) = U = E(S(a)), and for any open subset V of T , we have S(a V )(t) = (a V )(t) + 1 = a(t) + 1 for all t ∈ U ∩ V = S(a)(t) for all t ∈ U ∩ V = (S(a) V )(t).
sh sh S sh shN Thus N / N is a sheaf morphism, and hence an element of N . We now show that sh (N , S, 0) is a Peano structure using HIQCE as the underlying logic. Let S and 0 be the denota- tions for themselves in the language of HIQCE.
• We start with the simplest of the three sentences that need to be satisfied in order for sh (N , S, 0) to be a Peano structure, that is, ∀x ¬(0 = Sx),
sh sh where x is a variable of sort N . Let a ∈ N , and W = [[0 = Sa]]. Then by the interpretation of equality, W is the largest open subset of T such that W ⊆ E(0) ∩ E(S(a)) such that 0 W = S(a) W . Now, E(0) = T , and E(S(a)) = E(a) as shown above. Thus W ⊆ E(a). Moreover, 0 W = S(a) W, which implies 0(t) = S(a)(t) for all t ∈ W, which implies 0 = a(t) + 1, for all t ∈ W.
This is impossible since a(t) ∈ N for all t. Thus [[0 = Sa]] = W = ∅. So, T \ [[0 = Sa]] = T , which implies that (T \ [[0 = Sa]])◦ = T , and clearly, we have
E(a) ⊆ (T \ [[0 = Sa]])◦ = [[¬(0 = Sa)]].
Therefore, (T \ E(a)) ∪ [[¬(0 = Sa)]] = T, and hence E(a) =⇒ [[¬(0 = Sa)]] = ((T \ E(a)) ∪ [[¬(0 = Sa)]])◦ = T.
58 sh Since, a ∈ N was arbitrary, we have \ (E(a) =⇒ [[¬(0 = Sa)]]) = T. a∈Nsh So, ◦ \ (E(a) =⇒ [[¬(0 = Sa)]]) = T. a∈Nsh Hence [[∀x ¬(0 = Sx)]] = T.
• Next, we evaluate the sentence ∀x∀y (Sx = Sy =⇒ x = y),
sh sh where x, y are variables of sort N . Let a, b ∈ N , and W = [[Sa = Sb]]. Then by the interpretation of equality, W is the largest open subset of T such that W ⊆ E(S(a))∩E(S(b)) and S(a) W = S(b) W . Now, E(S(a)) = E(a) and E(S(b)) = E(b), which implies that W ⊆ E(a) ∩ E(b). Moreover,
S(a) W = S(b) W, which implies S(a)(t) = S(b)(t) for all t ∈ W, which implies a(t) + 1 = b(t) + 1 for all t ∈ W, which implies a(t) = b(t) for all t ∈ W, which implies a W = b W. This shows that W ⊆ [[a = b]], that is, [[Sa = Sb]] ⊆ [[a = b]]. Therefore, [[Sa = Sb =⇒ a = b]] = T. Then, E(b) ⊆ [[Sa = Sb =⇒ a = b]], which implies that E(b) =⇒ [[Sa = Sb =⇒ a = b]] = T.
sh This is true for every b ∈ N . Thus \ (E(b) =⇒ [[Sa = Sb =⇒ a = b]]) = T, b∈Nsh and hence, ◦ \ (E(b) =⇒ [[Sa = Sb =⇒ a = b]]) = T. b∈Nsh Thus [[∀y (Sa = Sy =⇒ a = y)]] = T. sh Now, this is true for all a ∈ N . So, using similar arguments, we have, ◦ \ (E(a) =⇒ [[∀y (Sa = Sy =⇒ a = y)]]) = T, a∈Nsh and hence, [[∀x∀y (Sx = Sy =⇒ x = y)]] = T.
59 • Finally, we need to show that the sentence
sh ∀Y (0 ∈ Y ∧ ∀x(x ∈ Y =⇒ Sx ∈ Y ) =⇒ Y = N ),
sh sh where x is a variable of sort N and Y is a variable of sort P (N ), evaluates to T . Let sh M sh N sh (M,U) ∈ P(N ) = Ω1 . So, N U / Ω1 U. Let V be an open subset of T such that V ⊆ [[0 ∈ M ∧ ∀x (x ∈ M =⇒ Sx ∈ M)]],
which implies that
V ⊆ [[0 ∈ M]] and V ⊆ [[∀x (x ∈ M =⇒ Sx ∈ M)]].
Now, M(0 U) = ([[0 ∈ M]],E(0) ∩ U) = ([[0 ∈ M]],U) ,
since E(0) = T . Since ([[0 ∈ M]],U) ∈ Ω1, [[0 ∈ M]] ⊆ U, by definition of Ω1. So, V ⊆ [[0 ∈ M]] implies that V ⊆ U. sh sh N We need to show that V ⊆ [[M = N ]]. The sheaf morphism (N,T ) ∈ Ω1 defined by sh sh sh N(a) = (E(a),E(a)) ∈ Ω1 for all a ∈ N represents N in the sheaf P(N ). Now, V ⊆ [[∀x (x ∈ M =⇒ Sx ∈ M)]]
implies that ◦ \ V ⊆ (E(a) =⇒ [[a ∈ M =⇒ Sa ∈ M]]) . a∈Nsh sh Therefore, for any a ∈ N , V ⊆ (E(a) =⇒ [[a ∈ M =⇒ Sa ∈ M]]) = ((T \ E(a)) ∪ [[a ∈ M =⇒ Sa ∈ M]])◦ ⊆ (T \ E(a)) ∪ [[a ∈ M =⇒ Sa ∈ M]],
which implies that V ∩ E(a) ⊆ [[a ∈ M =⇒ Sa ∈ M]] = ((T \ [[a ∈ M]]) ∪ [[Sa ∈ M]])◦ ⊆ (T \ [[a ∈ M]]) ∪ [[Sa ∈ M]]. Thus V ∩ E(a) ∩ [[a ∈ M]] ⊆ [[Sa ∈ M]]. Then using the interpretation of ‘∈’, we have
M(a U) = ([[a ∈ M]],E(a) ∩ U) ∈ Ω1, which implies that [[a ∈ M]] ⊆ E(a) ∩ U ⊆ E(a). Hence, we have
V ∩ E(a) ∩ [[a ∈ M]] = V ∩ [[a ∈ M]] ⊆ [[Sa ∈ M]].
sh sh This is true for every a ∈ N . Now, for each n ∈ N, there is an element nb ∈ N with sh E(nb) = T , and nb(t) = n, for all t ∈ T . These are global elements of the sheaf, N . So, for each n ∈ N, we have V ∩ [[nb ∈ M]] ⊆ [[Snb ∈ M]].
60 We also have that V ⊆ [[0 ∈ M]]. Applying the principle of induction externally, we have
V ⊆ [[nb ∈ M]], for all n ∈ N. Now, by Lemma 3.1.3, any continuous function from an open subset of T into sh N is locally constant. So, for any a ∈ N = Co(T, N), [ E(a) = [[a = nb]], sh nb∈N which implies that [ V ∩ E(a) ⊆ E(a) = [[a = nb]]. sh nb∈N sh For any nb ∈ N , we have V ∩ E(a) ⊆ V ⊆ [[nb ∈ M]], sh and for any a ∈ N , we have by Lemma 2.3.1, [[a = nb]] ∩ [[nb ∈ M]] ⊆ [[a ∈ M]]. Combining the above facts, we have V ∩ E(a) ⊆ [[a ∈ M]], sh for all a ∈ N , which implies that V ∩ E(a) ⊆ [[a ∈ M]] ∩ V . We note that E(M) ∩ E(N) = sh U ∩ T = U. We know that V ⊆ U, so V ⊆ E(M) ∩ E(N). Now, for any a ∈ N (U ∩ V ) = sh N V , (N V )(a) = N(a) V = (E(a),E(a)) V = (E(a) ∩ V,E(a) ∩ V ), and (M V )(a U) = (M V )(a) = M(a) V = ([[a ∈ M]] ∩ V,E(a) ∩ U ∩ V ) = ([[a ∈ M]] ∩ V,E(a) ∩ V ) .
Since ([[a ∈ M]] ∩ V,E(a) ∩ V ) ∈ Ω1, [[a ∈ M]] ∩ V ⊆ E(a) ∩ V . Thus [[a ∈ M]] ∩ V = E(a) ∩ V. So, (M V )(a) = (E(a) ∩ V,E(a) ∩ V ) = (N V )(a), sh for all a ∈ N V . Thus V ⊆ E(M) ∩ E(N) and M V = N V . So, by the interpretation of equality, we have sh V ⊆ [[M = N ]]. sh sh Hence, N = Co(T, N) is a Peano structure. Then by the Lemma 3.1.2, the sheaf N = Co(T, N) represents N in Sh(T ). sh Remark 3.1.5. In the above proof, we have used the fact that every member of N = Co(T, N) is locally constant. This is due to the topology of N. If we replace N by any set X with the discrete topology on it, then Co(T,X) is a sheaf as pointed out in Example 2.1.4, but in addition, the elements of Co(T,X) are locally constant, by Lemma 3.1.3. lc Thus, for any discrete topological space X, Co(T,X) = Co (T,X). sh lc Remark 3.1.6. We define X as the sheaf Co (T,X) in Sh(T ), for any set X. Remark 3.1.7. It can be similarly shown that the sheaves in Sh(T ) corresponding to Z, and Q are respectively, Co(T, Z) and Co(T, Q). See [31][Volume II, Chapter 15] for more details.
61 3.2 The Baire Space
The Baire space is the set of all infinite sequences of natural numbers. This is denoted by NN. In this section, we discuss the sheaf representation for the Baire space in Sh(T ), where T is any sh topological space. Since N is represented by the sheaf N in Sh(T ), the Baire space is given by the sh shN function sheaf N in Sh(T ). Y Lemma 3.2.1. Let X = Xi be a product of topological spaces, and for i ∈ I, let pi : X / Xi i∈I be the canonical projection map. Let Y be a topological space, and let f : Y /X be any function. Then f is continuous iff pi ◦ f : Y / Xi is continuous for each i ∈ I. Proof. The proof of this basic topological fact about product spaces can be found in any standard textbook on General Topology, for example [15].
sh shN Proposition 3.2.2. Suppose T is a topological space. Then the Baire space N is isomorphic to the sheaf Co(T, NN), that is, the sheaf of partial continuous functions from T into NN with open domain, where NN is endowed with the product topology. sh Proof. We first note that every element of N = Co(T, N) is a locally constant function from T sh sh lc N shN into N, and for any open U ⊆ T , N U = Co (U, N). To show that Co(T, N ) and N are sh shN isomorphic sheaves, we now define a function ϕ : Co(T, NN) / N as follows
N ϕ(a) = (fa,U), a ∈ Co(T, N ),
f sh a sh where U = dom(a), and N U / N U is a sheaf morphism defined by
(fa(g)) (t) = (a(t)) (g(t)),
sh lc for any g ∈ N U = Co (U, N) and for any t ∈ U ∩ dom(g) = dom(g), since dom(g) ⊆ U. sh shN Next, we need to show that ϕ is well-defined, that is, (fa,U) ∈ N for any a ∈ Co(T, NN) sh sh with dom(a) = U. To see that fa : N U / N U is well defined, we first note that for lc N any g ∈ Co (U, N), g(t) ∈ N for all t ∈ U = dom(a), and since a ∈ Co(T, N ), a(t): N / N for sh any t ∈ U. Moreover, E(fa(g)) = dom(g) ⊆ U. Thus fa(g) ∈ N U. Thus fa is a well-defined sh sh function from N U into N U. To show that fa is also a sheaf morphism, we need to show that it preserves E and . This is shown as follows. From the definition of fa, and the above arguments, it is clear that E(fa(g)) = E(g) for any sh sh g ∈ N U. To show that fa preserves as well, suppose g ∈ N U, and V is an open subset of U. We need to show that fa(g V ) = fa(g) V . We note that for any t ∈ dom(g) ∩ V ,
(fa(g V )) (t) = (a(t))((g V )(t)) = ((a V )(t)) ((g V )(t)) = ((fa(g)) V )(t).
f sh sh a sh shN Thus fa preserves . Hence N U / N U is a sheaf morphism, and so (fa,U) ∈ N . This proves that ϕ is well-defined. f sh a By definition of ϕ, for any a ∈ Co(T, NN), ϕ(a) = (fa,U), where U = dom(a) and N U / sh N U is a sheaf morphism. Thus for any a ∈ Co(T, NN),
E(ϕ(a)) = E ((fa,U)) = U = dom(a).
62 Hence, ϕ preserves extent. Now to show that ϕ preserves restriction, let a ∈ Co(T, NN) with E(a) = U and let V be an open subset of T . Then, since E(a V ) = E(a) ∩ V = U ∩ V ,
ϕ(a V ) = (faV ,U ∩ V ) ,
f sh aV sh where N (U ∩ V ) / N (U ∩ V ) is a sheaf morphism defined by
(faV (g)) (t) = ((a V )(t)) (g(t)),
sh sh for any g ∈ N (U ∩ V ) = N U V and for any t ∈ U ∩ V . Now,
(faV (g)) (t) = ((a V )(t)) (g(t)) = (a(t)) (g(t)) V = (fa(g)) (t) V = ((fa V )(g)) (t).
Thus faV = fa V . Hence, ϕ(a V ) = (faV ,U ∩ V ) = (fa V,U ∩ V ) = (fa,U) V = ϕ(a) V, and so ϕ respects restriction. Next we need to show that ϕ is one-to-one and onto. To show that ϕ is one-to-one, let a, b ∈ Co(T, NN) such that ϕ(a) = ϕ(b). Let Ua = dom(a) and Ub = dom(b). Then
ϕ(a) = (fa,Ua) and ϕ(b) = (fb,Ub).
f =f sh a b sh Since, ϕ(a) = ϕ(b), Ua = Ub = U (say). Also, N U / N U are sheaf morphisms defined by (fa(g))(t) = (a(t))(g(t)) and (fb(g))(t) = (b(t))(g(t)), sh for any g ∈ N U and for any t ∈ dom(g) ⊆ U. Since fa = fb, this implies that (a(t))(g(t)) = sh sh (b(t))(g(t)) for all g ∈ N U and for any t ∈ dom(g). Now, for any n ∈ N, nb U ∈ N U, and (nb U)(t) = n for all t ∈ dom(nb U) = U. Hence, for any n ∈ N,
(a(t))((nb U)(t)) = (b(t))((nb U)(t)), which implies that for any n ∈ N, (a(t))(n) = (b(t))(n) for all t ∈ U = dom(a) = dom(b). Thus a = b. This shows that ϕ is a one-to-one function from sh shN Co(T, NN) into N . sh f shN sh sh Finally, to show that ϕ is onto, let (f, U) ∈ N . Then N U / N U is a sheaf sh sh N morphism. For each n ∈ N, nb U ∈ N U, and so f(nb U) ∈ N U. We define a : U / N as follows. (a(t))(n) = (f(nb U))(t) for all n ∈ N, for each t ∈ U. Hence a(t): N / N is well-defined for each t ∈ U. We note that since f(nb U) ∈ sh lc N U = Co (U, N), f(nb U) is continuous for each n ∈ N. Thus a considered as a function in t
63 Y and n is continuous as a function of t for each fixed n. Now, NN = N is a product space, and n∈N hence by Lemma 3.2.1, since a is continuous for each n, it is a continuous function from U into NN. Thus a ∈ Co(T, NN). By definition of a, it is clear that dom(a) = E(a) = U. So, ϕ(a) = (fa,U), f sh a sh where N U / N U is a sheaf morphism defined as before. We first note that for any n ∈ N, (fa(nb U))(t) = (a(t))((nb U)(t)) = (a(t))(n) = (f(nb U))(t), sh lc [ for all t ∈ U. Now since any g ∈ N U = Co (U, N) is locally constant, E(g) = [[g = nb]]. For n∈N any n ∈ N, and for any t ∈ [[g = nb]], g(t) = nb(t), and hence (fa(g))(t) = (f(g))(t) by the above argument. Hence for every t ∈ dom(g) = E(g), (fa(g))(t) = (f(g))(t). Hence fa(g) = f(g) for sh every g ∈ N U. Thus fa = f, and so
ϕ(a) = (fa,U) = (f, U).
This proves that ϕ is onto. sh shN Hence ϕ : Co(T, NN) / N is a one-to-one and onto function that respects E and . So it is an isomorphism between the two sheaves.
Proposition 3.2.3. Suppose T is a locally connected topological space. Then the Baire space is sh lc N N represented by the sheaf Co (T, N ) = N in Sh(T ). In other words, if T is locally connected, then sh sh shN ∼ N lc N N N = Co(T, N ) = Co (T, N ) = N .
Proof. We need to show that if T is locally connected, then every member of the sheaf Co(T, NN), that is any continuous function from T into NN with open domain, is locally constant. To prove this, it suffices to show that any continuous function a : U / NN, where U ⊆ T is a connected open set, is constant. Let U be a connected open subset of T , and a ∈ Co(T, NN) with E(a) = U. Then a : U / NN is continuous. We define the function fi : U / N by fi(t) = (a(t))(i), i ∈ N. Then fi = πi ◦ a, th where πi : NN / N is the i projection map. Then by Lemma 3.2.1, fi is a continuous function from U into N. Now, by Lemma 3.1.3, every continuous function from a connected open subset of T into N is constant. Hence, fi is constant, which implies that a is constant. Remark 3.2.4. The above two results can be generalized to any exponential AB, where A, B are any two sets, AB is endowed with the product topology, and A has the discrete topology. That is, if B B T is any topological space, then the sheaf for A is Co(T,A ). Moreover, if T is locally connected, B lc B then Co(T,A ) = Co (T,A ).
lc N Corollary 3.2.5. Suppose (K, ≤) is a poset. Then the Baire space is represented by Co (K, N ) = sh NN in Sh(K). Proof. We know that a poset (K, ≤) with the Alexandrov topology is locally connected by Lemma 2.4.8. Then the statement of the corollary follows from Proposition 3.2.3.
64 3.3 The Real Numbers
Unlike in classical mathematics, the Cauchy reals may or may not be isomorphic to the Dedekind reals with HIQCE as the underlying logic. We show two sheaf models below, one where they are different, and one where they coincide.
Definition 3.3.1. Let S ⊆ Q. S is called a left cut (or cut) or Dedekind real if S satisfies the following conditions. (a) ∃r (r ∈ S), ∃s(s∈ / S)(boundedness) (b) ∀r ∈ S ∃s ∈ S (r < s)(openness) (c) ∀rs (r < s =⇒ r ∈ S ∨ s∈ / S)(locatedness) d We denote the collection of all Dedekind reals by R . S is called a strong Dedekind real if S satisfies boundedness (a), openness (b), and the following strong form of locatedness. (c0) ∃α : Q × Q / N ∀rs (r < s =⇒ (α(r, s) = 0 ∧ r ∈ S)∨ (α(r, s) = 1 ∧ s∈ / S))
We now state the following two propositions (without proof) from [31][Volume II, Chapter 15]. d Proposition 3.3.2. The sheaf corresponding to R in Sh(T ) is Co(T, R), where R denotes the classical set of real numbers with the usual topology. [31, 15.1.5, Volume II] Proposition 3.3.3. If the topological space T is locally connected, the sheaf corresponding to the c Cauchy reals, denoted by R , in Sh(T ) is lc Co (T, R) = {a ∈ Co(T, R) | a is locally constant}, where R denotes the classical set of real numbers with the usual topology. [31, 15.2.2, Volume II] A substantial part of the above discussion on number systems owes itself to the one in [19, 20, 6]. c d Corollary 3.3.4. The Cauchy reals, R is not isomorphic to the Dedekind reals, R in Sh(R). d Proof. By Proposition 3.3.2 R is represented by the sheaf Co(R, R) in Sh(R). Moreover, since R c lc is locally connected, by Proposition 3.3.3, R is represented by the sheaf Co (R, R) in Sh(R). Now, lc Co (R, R) ( Co(R, R), since there are continuous real-valued functions on open subsets of R which are not locally constant.
lc Corollary 3.3.5. The Dedekind and the Cauchy reals are both represented by Co (K, R) in Sh(K) for any poset (K, ≤).
Proof. By Proposition 3.3.2, the sheaf corresponding to the Dedekind reals is Co(K, R) in Sh(K). Now, by Lemma 2.4.8, K is a locally connected topological space, and hence by Proposition 3.3.3, lc the Cauchy reals are represented by Co (K, R) in Sh(K). By Lemma 2.4.10, every continuous function from an open subset of K into R is locally constant. lc So Co(K, R) = Co (K, R). Thus the Cauchy and the Dedekind reals coincide in Sh(K) for any poset (K, ≤).
65 Remark 3.3.6. Later in Chapter 3, we shall prove a generalization of Corollary 3.3.5 to the effect lc that Co(T, R) = Co (T, R) for a wide range of topological spaces T . See Corollary 4.6.2. The following result augments our understanding of reals in Sh(K), where (K, ≤) is a directed poset.
c d Corollary 3.3.7. As discussed above, if (K, ≤) is a poset, then R and R are both represented lc c by the sheaf Co (K, R). Now by Lemma 2.4.13, we can conclude that Co(K, R) is a sheaf and lc c c Co (K, R) = Co(K, R) iff K is directed. So, in other words, Co(K, R) is a sheaf, and
c d c R = R = Co(K, R), iff (K, ≤) is a directed poset.
66 Chapter 4
A few principles
In this chapter we discuss the validity of certain principles which are either incompatible with classical logic, but may be true in an intuitionistic interpretation, or are classically true, but may or may not be true in a constructive setting. We start with the principle of the excluded middle, which is classically valid, but not in any intuitionistic system.
4.1 The principle of the excluded middle
According to the principle of the excluded middle, or PEM, for any arbitrary sentence, A, the sentence A ∨ ¬A is logically valid, that is true in all models. Let T be a topological space, and U be an open set. Then T 6= U ∪ (T \ U)◦ in general. So, for any arbitrary sentence A, [[A ∨ ¬A]] = [[A]] ∪ (T \ [[A]])◦ 6= T that is, the principle of excluded middle does not hold in Sh(T ) for a general topological space, T . Definition 4.1.1. A topological space, T is called almost discrete if every open subset U of T is also closed, or equivalently, every closed subset F of T is also open. Proposition 4.1.2. The principle of excluded middle, PEM, holds in a sheaf model Sh(T ) iff T is almost discrete. Proof. From the above discussion, PEM fails to hold, in general, in a sheaf model Sh(T ), because T 6= U ∪ (T \ U)◦ in general for an arbitrary open set U in T . So to prove the statement of the current proposition, we only need to show that T = U ∪ (T \ U)◦ for any open subset U of T iff T is almost discrete. Suppose T is almost discrete, and let U be an open subset of T . Then U is also closed. So T \ U is open, and hence (T \ U)◦ = T \ U. Hence U ∪ (T \ U)◦ = U ∪ (T \ U) = T. Conversely, suppose T is a topological space such that for any open subset U of T U ∪ (T \ U)◦ = T. Then for any open subset U,(T \ U)◦ = T \ U. Since (T \ U)◦ is open, this implies that T \ U is open for any open subset U of T . This implies that U is closed for every open subset U of T . In other words, every open subset of U of T is closed, and hence T is almost discrete.
67 4.2 The weak law of the excluded middle
In this section, we investigate the weak law of the excluded middle, (WEM) ¬A ∨ ¬¬A. If T is a topological space then the interpretation of WEM in Sh(T ) is given by [[WEM]] = (T \ [[A]])◦ ∪ T \ (T \ [[A]])◦ ◦. Similar to the case of PEM, [[WEM]] 6= T for a general topological space, T . However, for an Alexandrov topology over certain posets, the weak law of the excluded middle is valid. Proposition 4.2.1. Suppose (K, ≤) is a directed poset. Let A be any sentence in HIQCE. Then Sh(K) |= ¬A ∨ ¬¬A. That is, the weak law of excluded middle holds in Sh(K), for any directed poset K. Proof. The interpretation of WEM in Sh(K) is given by [[WEM]] = (K \ [[A]])◦ ∪ K \ (K \ [[A]])◦ ◦. Clearly, if [[A]] = ∅ or K, then [[WEM]] = K. So, suppose [[A]] 6= ∅,K. Since [[A]] 6= ∅,(K \ [[A]])◦ 6= ◦ ◦ K. So, (K \ [[A]]) ( K. If (K \ [[A]]) = ∅, then [[WEM]] = K. Suppose, (K \ [[A]])◦ 6= ∅. Let α ∈ [[A]], β ∈ (K \ [[A]])◦ . Since (K, ≤) is directed, there exists γ ∈ K such that α, β ≤ γ. Then, since both [[A]] and (K \[[A]])◦ are open, and hence upward closed, γ ∈ [[A]] ∩ interior of (K \ [[A]]), which is impossible. Thus in all possible cases [[WEM]] = K.
The converse of the above proposition is not true, that is, the success of the weak law of the excluded middle in Sh(K) for a poset (K, ≤) does not imply that (K, ≤) is directed. Example 4.2.2. Take K = {α, β}, where α k β. Clearly, K is not directed. The open sets are {α}, {β},K, ∅. Clearly, for any open set U, [[WEM]] = (K \ U)◦ ∪ interior of (K \ interior of (K \ U)) = K. Remark 4.2.3. In fact Sh(K) |= PEM with (K, ≤) as in the above example, since the upward closed sets of (K, ≤) generate a discrete topology on K. Proposition 4.2.4. Let (K, ≤) be a poset with two elements α, β ∈ K such that there is no upper bound for {α, β} but there exists a γ ∈ K such that γ ≤ α, β. Then the weak law of excluded middle fails in Sh(K).
Proof. Consider the open set Uα = {η ∈ K | α ≤ η}. Then ◦ ◦ ◦ γ∈ / (K \ Uα) ∪ K \ (K \ Uα) . So, [[WEM]] 6= K.
68 4.3 Markov’s principle
Markov’s principle can be formally stated as
(MP) (∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)) =⇒ ∃t A(t), where t is a variable of sort N. We first show that Markov’s principle is not always valid. For this, we consider the sheaf model Sh(T ), where T = 2N, the Cantor space. Here 2 denotes the two element set {0, 1} with the discrete topology, and 2N has the product topology.
Proposition 4.3.1. Markov’s principle (MP) is not valid in Sh(2N).
Proof. Let n ∈ N. Then the set {x ∈ 2N | x(n) = 1} ⊆ 2N is open. The complement of this set, N sh {x ∈ 2 | x(n) = 0} is also open. Now, for every n ∈ N, there is a global element nb ∈ N = Co(2N, N), as discussed in the proof of Proposition 3.1.4. We define
N [[A(nb)]] = {x ∈ 2 | x(n) = 1} for each n ∈ N. Then for any n ∈ , N ◦ N [[¬A(nb)]] = 2 \ [[A(nb)]] = {x ∈ 2N | x(n) = 0}◦ = {x ∈ 2N | x(n) = 0}, since this is also an open set in 2N. Thus for any n ∈ N,
N [[A(nb) ∨ ¬A(nb)]] = [[A(nb)]] ∪ [[¬A(nb)]] = 2 . Now, ◦ \ [[∀t (A(t) ∨ ¬A(t))]] = (E(a) =⇒ [[A(a) ∨ ¬A(a)]]) a∈Nsh ◦ \ = (2N \ E(a)) ∪ [[A(a) ∨ ¬A(a)]] a∈Nsh sh [ [ sh We note that for any a ∈ N , E(a) = [[a = nb]] = [[a = nb]], since every section of N is sh n∈ nb∈N N sh locally constant. Moreover, by Lemma 2.3.1, for any a ∈ N and for any n ∈ N,
[[A(nb) ∨ ¬A(nb)]] ∩ [[a = nb]] ⊆ [[A(a) ∨ ¬A(a)]].
N Since [[A(nb) ∨ ¬A(nb)]] = 2 , this means that
[[a = nb]] ⊆ [[A(a) ∨ ¬A(a)]] for all n ∈ N. So, [ E(a) = [[a = nb]] ⊆ [[A(a) ∨ ¬A(a)]], n∈N sh sh for any a ∈ N . Thus, for any a ∈ N , (2N \ E(a)) ∪ [[A(a) ∨ ¬A(a)]] = 2N,
69 and hence \ (2N \ E(a)) ∪ [[A(a) ∨ ¬A(a)]] = 2N. a∈Nsh This implies that ◦ \ [[∀t (A(t) ∨ ¬A(t))]] = (2N \ E(a)) ∪ [[A(a) ∨ ¬A(a)]] = 2N. a∈Nsh
Now we note that for any n ∈ N,
N E(nb) ∩ [[A(nb)]] = 2 ∩ [[A(nb)]] = [[A(nb)]] = {x ∈ 2N | x(n) = 1}, and so, [ [ N (E(nb ∩ [[A(nb)]]) = {x ∈ 2 | x(n) = 1} n∈N n∈N N = 2 \ {h0in∈N}. Then since [ [ (E(nb) ∩ [[A(nb)]]) ⊆ (E(a) ∩ [[A(a)]]), n∈N a∈Nsh we have ! N [ N N [ 2 \ (E(a) ∩ [[A(a)]]) ⊆ 2 \ 2 \ (E(nb) ∩ [[A(nb)]]) . a∈Nsh n∈N So, ◦ ◦ N [ N N 2 \ (E(a) ∩ [[A(a)]]) ⊆ 2 \ 2 \ {h0in∈N} a∈Nsh ◦ = {h0in∈N} = ∅, which implies that ◦ [ 2N \ (E(a) ∩ [[A(a)]]) = ∅. a∈Nsh Thus ◦◦ [ [[¬¬∃t A(t)]] = 2N \ 2N \ (E(a) ∩ [[A(a)]]) a∈Nsh ◦ = 2N \ ∅ = 2N. Hence, [[∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)]] = [[∀t (A(t) ∨ ¬A(t)]] ∩ [[¬¬∃t A(t)]] = 2N. Now, [ [[∃t A(t)]] = (E(a) ∩ [[A(a)]]). a∈Nsh
70 [ sh Since, E(a) = [[a = nb]], we have for each a ∈ N , n∈N ! [ E(a) ∩ [[A(a)]] = [[a = nb]] ∩ [[A(a)]] n∈ [ N = ([[a = nb]] ∩ [[A(a)]]). n∈N Using Lemma 2.3.1, we have [[a = nb]] ∩ [[A(a)]] ⊆ [[A(nb]]), sh for any a ∈ N and for any n ∈ N. Thus [ [ ([[a = nb]] ∩ [[A(a)]]) ⊆ [[A(nb)]] n∈ n∈ N [N = {x ∈ 2N | x(n) = 1} n∈N N = 2 \ {h0in∈N}. Thus we have that N E(a) ∩ [[A(a)]] ⊆ 2 \ {h0in∈N} sh for each a ∈ N . Hence
[ N [[∃t A(t)]] = (E(a) ∩ [[A(a)]]) ⊆ 2 \ {h0in∈N}. a∈Nsh Thus [[∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t) =⇒ ∃t A(t)]] ◦ = 2N \ [[∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)]] ∪ [[∃t A(t)]] ◦ N N N = 2 \ 2 ∪ 2 \ {h0in∈N} ◦ N = 2 \ {h0in∈N} N = 2 \ {h0in∈N} Hence Markov’s principle is not valid in Sh(2N).
However, for a poset space, Markov’s principle is true. This is shown in the following proposition.
Proposition 4.3.2. Suppose (K, ≤) is a poset. Then Sh(K) |= MP.
Proof. To show that Markov’s principle is valid in Sh(K), we need to show that
[[(∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)) =⇒ ∃t A(t)]] = K, that is, we need to show that
[[∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)]] ⊆ [[∃t A(t)]].
Suppose α ∈ [[∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)]] = [[∀t (A(t) ∨ ¬A(t))]] ∩ [[¬¬∃t A(t)]]. Then α ∈ [[∀t (A(t) ∨ ¬A(t))]] and α ∈ [[¬¬∃t A(t)]].
71 Now, α ∈ [[∀t (A(t) ∨ ¬A(t)]] implies that ◦ \ α ∈ (E(a) =⇒ [[A(a) ∨ ¬A(a)]]) . a∈Nsh
sh We know that for each n ∈ N, there is a global element nb ∈ N = Co(K, N), as discussed in the proof of Proposition 3.1.4. Clearly, \ \ (E(a) =⇒ [[A(a) ∨ ¬A(a)]]) ⊆ (E(nb) =⇒ [[A(nb) ∨ ¬A(nb)]]) a∈ sh n∈ N \N = (K =⇒ [[A(nb) ∨ ¬A(nb)]]) n∈N \ ◦ = ((K \ K) ∪ [[A(nb) ∨ ¬A(nb)]]) n∈N \ ◦ = ([[A(nb) ∨ ¬A(nb)]]) n∈ \N = [[A(nb) ∨ ¬A(nb)]] n∈ \N = ([[A(nb)]] ∪ [[¬A(nb)]]) . n∈N Thus ◦ !◦ \ \ (E(a) =⇒ [[A(a) ∨ ¬A(a)]]) ⊆ ([[A(nb)]] ∪ [[¬A(nb)]]) a∈Nsh n∈N \ ⊆ ([[A(nb)]] ∪ [[¬A(nb)]]) . n∈N \ Hence α ∈ ([[A(nb)]] ∪ [[¬A(nb)]]), which implies that for every n ∈ N, n∈N ◦ α ∈ [[A(nb)]] or α ∈ [[¬A(nb)]] = (K \ [[A(nb)]]) . (4.1) Now, [[¬¬∃t A(t)]] = (K \ (K \ [[∃t A(t)]])◦)◦ ◦◦ [ = K \ K \ (E(a) ∩ [[A(a)]]) . a∈Nsh sh [ As discussed in the proof of Proposition 3.1.4, for any a ∈ N , E(a) = [[a = nb]]. So, for each n∈N sh a ∈ N , ! [ E(a) ∩ [[A(a)]] = [[a = nb]] ∩ [[A(a)]] n∈ [ N = ([[a = nb]] ∩ [[A(a)]]) . n∈N sh By Lemma 2.3.1, for any fixed a ∈ N , for each n ∈ N
[[a = nb]] ∩ [[A(a)]] ⊆ [[A(nb)]].
72 sh Hence for each a ∈ N , [ [ ([[a = nb]] ∩ [[A(a)]]) ⊆ [[A(nb)]], n∈N n∈N which implies that [ E(a) ∩ [[A(a)]] ⊆ [[A(nb)]]. n∈N Then [ [ (E(a) ∩ [[A(a)]]) ⊆ [[A(nb)]], a∈Nsh n∈N which implies that [ [ K \ [[A(nb)]] ⊆ K \ (E(a) ∩ [[A(a)]]), n∈N a∈Nsh and so !◦ ◦ [ [ K \ [[A(nb)]] ⊆ K \ (E(a) ∩ [[A(a)]]) . n∈N a∈Nsh Thus ◦ !◦ [ [ K \ K \ (E(a) ∩ [[A(a)]]) ⊆ K \ K \ [[A(nb)]] , a∈Nsh n∈N which implies that
◦◦ !◦!◦ [ [ K \ K \ (E(a) ∩ [[A(a)]]) ⊆ K \ K \ [[A(nb)]] . a∈Nsh n∈N Hence, !◦!◦ [ [[¬¬∃t A(t)]] ⊆ K \ K \ [[A(nb)]] , n∈N and so α ∈ [[¬¬∃t A(t)]] implies that
!◦!◦ [ α ∈ K \ K \ [[A(nb)]] . (4.2) n∈N To prove the current proposition, we need to show that [ α ∈ [[∃t A(t)]] = (E(a) ∩ [[A(a)]]) . a∈Nsh
sh Suppose α 6∈ [[∃t A(t)]]. Then α 6∈ (E(a) ∩ [[A(a)]]) for all a ∈ N , and so in particular, α 6∈ ◦ (E(nb) ∩ [[A(nb)]]) = [[A(nb)]] for all n ∈ N. Thus, by condition 4.1 above, α ∈ (K \ [[A(nb)]]) for all n ∈ N. So, !◦ \ ◦ \ α ∈ (K \ [[A(nb)]]) = (K \ [[A(nb)]]) , n∈N n∈N
73 by Lemma 2.4.6. Now, !◦ !◦ \ [ (K \ [[A(nb)]]) = K \ [[A(nb)]] . n∈N n∈N So, α ∈ K \ S [[A(n)]]◦, which implies that n∈N b !◦ [ α 6∈ K \ K \ [[A(nb)]] , n∈N which in turn implies that !◦!◦ [ α 6∈ K \ K \ [[A(nb)]] . n∈N This contradicts condition 4.2 above. Hence α ∈ [[∃t A(t)]]. This completes the proof. Now, we introduce a generalized version of Markov’s principle (GMP) (∀t (A(t) ∨ ¬A(t)) ∧ ¬¬∃t A(t)) =⇒ ∃t A(t), lc where t is a variable of sort Co (T,X) for any topological space X. In the particular case, when lc sh X = N, or any discrete topological space, we have t of sort Co (T,X) = Co(T,X) = X , since any continuous function from an open subset of T into N is locally constant as discussed in Remark 3.1.5. Proposition 4.3.3. Suppose (K, ≤) is a poset. Then Sh(K) |= GMP. Proof. The proof is similar to the one used for Proposition 4.3.2 with some obvious changes. The sh sh property of N that is crucial in the proof of the above proposition is that the elements of N are sh [ locally constant functions from K into N. This allows us to have for any a ∈ N , E(a) = [[a = nb]], n∈N sh where nb denotes the global element of N defined by the constant function on K with range {n}. sh lc Now, in the general case, we replace N by Co (K,X), where X is a topological space. For each x ∈ X, we have the global element xb defined by the constant function on K with range {x}. lc So we replace n by x. Then since any element a ∈ Co (K,X) is locally constant, we still have [ b b E(a) = [[a = xb]]. x∈X With the above adjustments, the proof of the current claim can easily be established following the proof of Proposition 4.3.2. Remark 4.3.4. We know, by Corollary 3.3.5, that the Cauchy reals and the Dedekind reals coincide lc in Sh(K) and are both represented by the sheaf Co (K, R). Hence an important consequence of Proposition 4.3.3 is that we have a Markov’s principle for real numbers in Sh(K).
4.4 The law of trichotomy for real numbers
In this section, we discuss the validity of the law of trichotomy for real numbers, (TR) ∀x∀y(x < y ∨ y < x ∨ x = y), which is true in the classical reading, but may not be true in all sheaf models. More specifically, d we will show that the law of trichotomy does not hold for the Dedekind reals, R is not valid in Sh(T ) with T = R (the set of classical real numbers with the usual topology).
74 Proposition 4.4.1. The law of trichotomy does not hold for the Dedekind reals in Sh(R). d Proof. The sheaf corresponding to R in Sh(R) is Co(R, R) = M (say). Note that [[TR]] = [[∀x∀y(x < y ∨ y < x ∨ x = y)]] ◦ \ = [[(Ea ∧ Eb) =⇒ (a < b ∨ b < a ∨ a = b)]] . a,b∈M
For any fixed s ∈ R, consider the elements a : R / R defined by a(r) = s − r for all r ∈ R, b : R / R defined by b(r) = r − s for all r ∈ R, of M. Then [[Ea ∧ Eb]] = E(a) ∩ E(b) = dom(a) ∩ dom(b) = R, [[a = b]] = {r ∈ dom(a) ∩ dom(b) | a(r) = b(r)}◦ = {s}◦ = ∅, [[a < b]] = {r ∈ dom(a) ∩ dom(b) | a(r) < b(r)} = (s, ∞), [[b < a]] = {r ∈ dom(a) ∩ dom(b) | b(r) < a(r)} = (−∞, s). So, we have [[(Ea ∧ Eb) =⇒ (a < b ∨ b < a ∨ a = b)]] = [[Ea ∧ Eb]] =⇒ [[a < b ∨ b < a ∨ a = b]] = E(a) ∩ E(b) =⇒ (s, ∞) ∪ (−∞, s) ∪ ∅ ◦ = R \ R ∪ R \{s} = R \{s}. Hence, [[TR]] ⊆ R \{s}, and in fact, [[TR]] = ∅.
Proposition 4.4.2. The law of trichotomy holds for the Cauchy reals in Sh(T ) if T is locally connected. Proof. Since T is locally connected, the sheaf corresponding to the Cauchy reals in Sh(T ) is lc lc Co (T, R). Then for any a, b ∈ Co (T, R), {t ∈ T | a(t) = b(t)} is an open subset of T , and hence [[Ea ∧ Eb]] = dom(a) ∩ dom(b) ⊆ [[a < b]] ∪ [[b < a]] ∪ [[a = b]]. This implies that [[(Ea ∧ Eb) =⇒ (a < b ∨ b < a ∨ a = b)]] = T lc for all a, b ∈ Co (T, R). Thus [[TR]] = [[∀x∀y(x < y ∨ y < x ∨ x = y)]] = T. So, the law of trichotomy holds for the Cauchy reals in Sh(T ).
Corollary 4.4.3. The law of trichotomy for real numbers hold in Sh(K) for any poset K. Proof. This follows from Proposition 3.3.5.
75 4.5 The weak law of trichotomy for real numbers
The weak law of trichotomy for real numbers, WTR, can be formally stated as follows.
(WTR) ∀x∀y∀z(x < y =⇒ x < z ∨ z < y)
As mentioned in Chapter 5 in the Volume I of [31], even though the law of trichotomy for real numbers is not intutionistically acceptable, a weaker version of it, the weak law of trichotomy is acceptable. The following proposition shows that the weak law of trichotomy is valid in any sheaf model Sh(T ) over any topological space T .
Proposition 4.5.1. The weak law of trichotomy for the real numbers is valid in M = Co(T, R) for any T . So, the weak law of trichotomy is true for the Dedekind reals in Sh(T ).
Proof. We note that for any a, b, c ∈ M,
[[a < b]] ⊆ [[a < c]] ∪ [[c < b]], which implies [[a < b =⇒ (a < c ∨ c < b)]] = T, and that implies [[(Ea ∧ Eb ∧ Ec) =⇒ (a < b =⇒ (a < c ∨ c < b))]] = T
So, [[WTR]] = [[∀x∀y∀z(x < y =⇒ x < z ∨ z < y)]] = T .
lc Corollary 4.5.2. The weak law of trichotomy for the real numbers is valid in the sheaf Co (T, R). So, if T is locally connected, the weak law of trichotomy is true for the Cauchy reals in Sh(T ).
lc Proof. Co (T, R) ⊆ Co(T, R). Remark 4.5.3. In particular, the weak law of trichotomy for real numbers holds in Sh(K) for any poset K.
4.6 The axiom of countable choice
The axiom of countable choice can be expressed formally as
(AC0) ∀x ∃y A(x, y) =⇒ ∃z ∀x A(x, zx),
sh where x is a variable of sort N , y is a variable of some sort σ, and z is a variable of sort N / σ. In this section, we will show that the axiom of countable choice is not valid in all sheaf models. However, it has an important implication for the interpretation of the real numbers in the sheaf model over a topological space T , in case Sh(T ) |= AC0, as discussed below. c ∼ d Proposition 4.6.1. Suppose T is any topological space. Then Sh(T ) |= AC0 implies R = R in Sh(T ).
Proof. Outline:
• We first need to show that in the presence of AC0, a Dedekind real is always a strong Dedekind real.
• Then we need to show that the collection of strong Dedekind reals with < inherited from the d c collection of Dedekind reals R is order isomorphic to the collection of Cauchy reals R , by sh an isomorphism which is the identity on the rationals Q .
76 d c • Thus, combining the above, we can conclude that in the presence of AC0, R and R are order sh isomorphic via an isomorphism which is the identity on Q . (Further arguments for this fact can be found in [31].)
Corollary 4.6.2. If T is a locally connected topological space and if Sh(T ) satisfies AC0, then lc Co(T, R) = Co (T, R) in Sh(T ). In other words, every continuous function from an open subset of T into R is locally constant, in the presence of the axiom of countable choice in Sh(T ), if T is locally connected.
Proof. The sheaf corresponding to the Dedekind reals in Sh(T ), where T is any topological space, is Co(T, R), by Proposition 3.3.2. By Proposition 3.3.3, the sheaf corresponding to the Cauchy lc reals in Sh(T ) is Co (T, R), if T is locally connected. Combining these with the above proposition, we can conclude that if T is locally connected, and if Sh(T ) |= AC0, then the sheaves Co(T, R) lc lc and Co (T, R) are isomorphic. Now, since Co (T, R) ⊆ Co(T, R), this implies that if T is locally lc connected and Sh(T ) |= AC0, then Co(T, R) = Co (T, R).
Corollary 4.6.3. Sh(R) 6|= AC0. c d Proof. By Corollary 3.3.4, R 6= R in Sh(R). Thus the above proposition implies that Sh(R) 6|= AC0.
We next present a direct proof of the failure of the axiom of countable choice in Sh(R).
Proposition 4.6.4. The axiom of countable choice is not valid in Sh(R), that is, Sh(R) 6|= AC0.
Proof. To show that the axiom of countable choice is not true in Sh(R), we need to show that
[[∀x ∃y A(x, y) =⇒ ∃z ∀x A(x, zx)]] 6= R,
sh sh where x is a variable of sort N , y is a variable of some sort σ, and z is a variable of sort N / σ. sh For our counterexample, we take y a variable of sort Q = Co(R, Q), where Q has the discrete sh sh topology on it. Then as discussed in Remark 3.1.5, any section of either N or Q is locally sh constant. We also note that for each n ∈ N, there is a global section nb ∈ N , and for each q ∈ Q, sh there is a global section qb ∈ Q . We define for each n ∈ N, and each q ∈ Q, −n [[A(n,b qb)]] = {t ∈ R | |q − t| < 2 }.
We will first show that [[∀x ∃y A(x, y)]] = R. This is achieved as follows. Suppose t ∈ R. Then for any n ∈ N, there exists a rational number q ∈ Q, such that
|q − t| < 2−n, since Q is dense in R. This implies that for any n ∈ N,
[ −n {t ∈ R | |q − t| < 2 } = R, q∈Q that is, for any n ∈ N, [ [[A(n,b qb)]] = R. q∈Q
77 Now, for any n ∈ N, [ [ [[A(n,b qb)]] = (E(qb) ∩ [[A(n,b qb)]]) q∈Q q∈Q [ ⊆ (E(b) ∩ [[A(n,b b)]]) . b∈Qsh So, for any n ∈ N, [ [[∃y A(n,b y)]] = (E(b) ∩ [[A(n,b b)]]) = R. b∈Qsh By Lemma 2.3.1, we have for any a ∈ N,
[[a = nb]] ∩ [[∃y A(n,b y)]] ⊆ [[∃y A(a, y)]], sh for all n ∈ N. So for any a ∈ N ,
[[a = nb]] ⊆ [[∃y A(a, y)]], sh for all n ∈ N. Thus, for any a ∈ N , [ [[a = nb]] ⊆ [[∃y A(a, y)]]. n∈N
sh [ sh Now, since every section of N is locally constant, E(a) = [[a = nb]], for any a ∈ N . So, n∈N E(a) ⊆ [[∃y A(a, y)]],
sh for any a ∈ N . This implies (R \ E(a)) ∪ [[∃y A(a, y)]] = R, and hence ◦ ((R \ E(a)) ∪ [[∃y A(a, y)]]) = R sh for each a ∈ N . Thus E(a) =⇒ [[∃y A(a, y)]] = R, sh for any a ∈ N , and so \ (E(a) =⇒ [[∃y A(a, y)]]) = R. a∈Nsh Hence, ◦ \ [[∀x ∃y A(x, y)]] = (E(a) =⇒ [[∃y A(a, y)]]) = R. a∈Nsh Now suppose r ∈ [[∃z ∀x A(x, zx)]]. Then [ r ∈ (E((f, U)) ∩ [[∀x A(x, (f, U)x)]]) sh (f,U)∈QshN [ = (U ∩ [[∀x A(x, (f, U)x)]]) . sh (f,U)∈QshN
78 f sh sh So, there exists a sheaf morphism N U / Q U such that r ∈ U ∩ [[∀x A(x, (f, U)x)]] ◦ \ = U ∩ (E(a) =⇒ [[A(a, (f, U)a)]]) a∈Nsh \ \ Since, (E(a) =⇒ [[A(a, (f, U)a)]]) ⊆ (E(nb) =⇒ [[A(n,b (f, U)nb)]]), this implies that a∈Nsh n∈N !◦ \ r ∈ U ∩ (E(nb) =⇒ [[A(n,b (f, U)nb)]]) n∈ N !◦ \ = U ∩ (R =⇒ [[A(n,b (f, U)nb)]]) n∈ N !◦ \ ◦ = U ∩ ((R \ R) ∪ [[A(n,b (f, U)nb)]]) n∈ N !◦ \ ◦ = U ∩ ([[A(n,b (f, U)nb)]]) n∈ N !◦ \ = U ∩ [[A(n,b (f, U)nb)]] n∈N So, !◦ \ r ∈ U ∩ [[A(n,b f(nb U))]] n∈ N !◦ \ −n = U ∩ {t ∈ R | |f(nb U) − t| < 2 } . n∈N Thus there is an open set V ⊆ U such that r ∈ V and
−n V ⊆ {t ∈ R | |f(nb U) − t| < 2 } for all n ∈ N. −n This is impossible since the length of the open interval {t ∈ R | |f(nb U) − t| < 2 } tends to zero as n increases. Hence, [[∃z ∀x A(x, zx)]] must equal the empty set. So, we have
[[∀x ∃y A(x, y)]] = R, whereas [[∃z ∀x A(x, zx)]] = ∅.
Thus [[∀x ∃y A(x, y) =⇒ ∃z ∀x A(x, zx)]]
◦ = ((R \ [[∀x ∃y A(x, y)]]) ∪ [[∃z ∀x A(x, zx)]]) ◦ = ((R \ R) ∪ ∅) = ∅, which implies that AC0 is false in Sh(R).
We now present examples of topological spaces T , for which Sh(T ) |= AC0. The Baire space is such an example. We first need to prove the following lemma.
79 Lemma 4.6.5. For every collection U of open subsets of the Baire space NN, there exists a countable collection V of open subsets of NN, such that (i) S V = S U ,
(ii) for all V ∈ V , there exists U ∈ U , such that V ⊆ U, and
(iii) for all V,V 0 ∈ V , if V 6= V 0, then V ∩ V 0 = ∅.
Proof. In the following arguments, we use the notation α n to denote the finite initial segment, of length n, of α ∈ NN, and [p] to denote the basic open subset of NN consisting of all infinite extensions of the finite sequence of natural numbers p. Let U be a collection of open subsets of NN. Now, we define the collection V of open subsets of NN as follows.
V = {[p] | p minimal such that there exists U ∈ U , [p] ⊆ U}.
We first note that for every p satisfying the above conditions, Vp = [p] ⊂ U for some U ∈ U . So, S S S V ⊆ U . Now, for every α ∈ U , there is an U ∈ U such that α ∈ U, and there exists n ∈ N S S S S minimal such that [a n] ⊆ U. Then α ∈ [α n] ∈ V . Thus U ⊆ V . Hence V = U . Moreover, every member of V is contained in some member of U . Since there are only countably many finite sequences of natural numbers, V = {Vp} is countable. Also, it is clear from the definition that the members of V are pairwise disjoint. Hence the proof.
Proposition 4.6.6. The axiom of countable choice is true in the sheaf over the Baire space NN, that is, Sh(NN) |= AC0.
sh Proof. Suppose M is a sheaf over NN. We need to show, for the sheaf M N ,
U = [[∀x ∃y A(x, y)]] ⊆ [[∃z ∀x A(x, zx)]].
Then U is an open subset of NN, such that \ [ U ⊆ ([[A(n,b a)]] ∩ E(a)) . n∈N a∈M
Hence for all n ∈ N, [ U ⊆ ([[A(n,b a)]] ∩ E(a)) . a∈M So, for each n ∈ N, Un = {[[A(n,b a) ∩ E(a) ∩ U | a ∈ M} is an open cover of U. Then by Lemma 4.6.5, there exists, for each n ∈ N, a countable collection of pairwise disjoint open sets Vn such that S S • Vn = Un = U, and
• for each V ∈ Vn, there exists an a ∈ M such that V ⊆ [[A(n,b a)]] ∩ E(a) ∩ U.
Then by using the axiom of countable choice externally, we choose, for each V ∈ Vn, aV ∈ M such that V ⊆ [[A(n,b aV )]] ∩ E(aV ) ∩ U.
80 0 0 We also note that V ⊆ E(aV ) from the above relation. Now, for any V,V ∈ Vn, V ∩ V = ∅. So,
0 0 0 E(aV V ) = E(aV ) ∩ V = V and E(aV 0 V ) = E(aV 0 ) ∩ V = V are disjoint. Thus {aV V | V ∈ Vn} is a compatible collection in the sheaf M. Hence, sup (aV V ) exists. We define, for each n ∈ N, V ∈Vn
an = sup (aV V ) . V ∈Vn
sh −1 Let g ∈ N U = Co(U, N). Now, {an g (n) | n ∈ N} is a compatible collection in M, because −1 −1 sh of the disjointness of the g (n). Hence, sup an g (n) exists. We define ϕ : N U / M U n∈N by −1 ϕ(g) = sup an g (n) . n∈N We note that E(g) ⊆ U. Then, by Lemma 2.1.6(ii), we have
[ −1 [ −1 E(ϕ(g)) = E an g (n) = E(an) ∩ g (n) . n∈N n∈N
Now, again by Lemma 2.1.6(ii), for any n ∈ N, [ [ E(an) = E (aV V ) = V = U. V ∈Vn V ∈Vn Thus [ −1 E(ϕ(g)) = E(an) ∩ g (n) n∈ [N = U ∩ g−1(n) n∈ N [ = U ∩ g−1(n) n∈N = U ∩ E(g) = E(g). Hence, ϕ preserves extent. Next, let W be an open subset of U. Then