Synthetic Topology
Author(s) -
Martı́n Hötzel Escardó
Publication year - 2004
Publication title -
electronic notes in theoretical computer science
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.242
H-Index - 60
ISSN - 1571-0661
DOI - 10.1016/j.entcs.2004.09.017
Subject(s) - mathematical proof , topology (electrical circuits) , correctness , mathematics , denotational semantics , recursion (computer science) , computer science , topos theory , realizability , infinity , theory of computation , compact open topology , category theory , semantics (computer science) , algorithm , operational semantics , pure mathematics , programming language , art , mathematical analysis , biochemistry , chemistry , geometry , literature , functional analysis , interpolation space , gene , combinatorics
Synthetic topology as conceived in this monograph has three fundamental aspects: 1. to explain what has been done in classical topology in conceptual terms, 2. to provide one-line, enlightening proofs of the theorems that constitute the core of the theory, and 3. to smoothly export topological concepts and theorems to unintended situations, keeping the synthetic proofs unmodified. The unintended situation that we focus on is the theory of computation, in particular regarding programming languages from both operational (Part I) and denotational (Part III) points of view, with emphasis on sequential computation. We are aware of other applications of synthetic topology, e.g. to locales, convergence spaces, sequential spaces, equilogical spaces, and some sheaf and realizability toposes, but this will be reported elsewhere. Aspects 1 and 2 are the subject of Part II. However, it turns out that it is possible to tackle aspect 3 without previous reference to 1 or 2. In fact, we start by developing synthetic topology of programming-language data types in Part I, without assuming any background in classical topology and without introducing any. Part III combines ideas from Parts I and II, developing non-trivial computational applications. The main new result is a computational version of the Tychonoff theorem. We also review previously known applications and explain how topology and semantics interact in program-correctness proofs. Although computers are finite, infinity shows up in a number of important situations in the theory of computation, e.g. infinity in syntax : loops, recursion; infinity in time: non-terminating computations; infinity of data: stream computation and higher-type computation; infinity in precision: real-number computation; infinity through abstraction: probabilistic descriptions. The first few chapters of Part I explore how the fundamental topological notions of continuous map, open set, closed set, compact set, Hausdorff space, and discrete space reconcile the finite character of computers with the infinite nature of the entities one wishes to calculate with. One of the main contributions of this monograph is to explain the computational nature of the the notion of compactness. Roughly speaking, a set is compact if and only if, given any semidecidable property, one can semidecide whether it holds for all elements of the set in finite time. Surprisingly, there are infinite computationally compact sets, for example that of infinite streams of binary digits.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom