A lambda calculus for real analysis Paul Taylor Senior Research Fellow, Department of Computer Science, University of Manchester funded by EPSRC GR/S58522 5 April 2005 www.cs.man.ac.uk/ ∼ pt/ASD pt@cs.man.ac.uk 077 604 625 87 1
This lecture It takes me more than 20 mins to introduce my research to my own community, so this lecture will be a classical translation of some recent results. It will require First Year Undergraduate Real Analysis . Please contact me this week by mobile ( 077 604 625 87 ) or later by email ( pt@cs.man.ac.uk ) to learn more. (Maybe even invite me to your university to give a full seminar.) 2
Intellectual pedigree mine: Mathematical Tripos 1979–83 PhD in Category Theory 1983–6 A mathematician in exile in Computer Science of this general area of research: (compact–open) topologies on function-spaces, topological lattice theory, semantics of programming languages, formal correctness of programs. of the Abstract Stone Duality programme: locale theory (“point-less topology”, i.e. only using open sets) category theory, domain theory. The journey that Abstract Stone Duality has made so far: from an abstract hypothesis from category theory to computably based locally compact spaces (not just R n ) to constructive analysis . 3
Constructive analysis The classics, although I don’t myself belong to this tradition. Errett Bishop, Foundations of Constructive Analysis , 1967 A “can do” attitude to constructivity, entirely compatible with the classical results: we just have to be a lot more careful. Errett Bishop and Douglas Bridges, Constructive Analysis , Springer, 1985 Douglas Bridges and Fred Richman, Varieties of Constructive Mathematics , CUP, 1987 The subject is based on metrical ( ǫ – δ ) methods. S ⊂ R is totally bounded if it has an ǫ -net — needed to define its supremum, S ⊂ R is located if d ( x, S ) ≡ inf { d ( x, y ) | y ∈ S } is definable. 4
Recursive analysis — the bad news Cantor space 2 N and the closed real interval I ≡ [0 , 1] ⊂ R are not compact . Basic problem: definable/computable/recursive values can be enumerated (like the rationals — it’s just a bit more complicated). Richard’s Paradox 1900, Turing’s Computable Numbers 1937, Specker Sequences 1949. Let ( u n ) be such an enumeration of the definable elements of [0 , 1]. Cover each u n with the open interval ( u n ± ǫ · 2 − n ). These intervals have total length 2 ǫ . With ǫ ≡ 1 2 , no finite sub-collection can cover. Another way: K¨ onig’s Lemma fails : there is an infinite binary ( Kleene ) tree with no infinite computable path. In addition to the metrical ( ǫ – δ ) methods, everything has to be coded using G¨ odel numbers. 5
Recursive analysis — the good news This doesn’t happen in Abstract Stone Duality. Cantor space 2 N and the closed real interval I ≡ [0 , 1] ⊂ R are compact . ∀ in ASD doesn’t mean “for every definable element” — it’s defined to satisfy the formal rules of predicate calculus. A categorical construction ensures that subspaces always have the subspace topology . (But I’m not going to talk about this in this lecture.) The mathematical arguments are topological , not metrical. Programming languages can be translated naturally into ASD (denotational semantics). Conversely, every ASD term has a natural computational interpretation (as a parallel, non-deterministic, higher-order logic program). 6
The Classical Intermediate Value Theorem Any continuous f : [0 , 1] → R with f (0) ≤ 0 ≤ f (1) has a zero. Indeed, f ( x 0 ) = 0 where x 0 ≡ sup { x | f ( x ) ≤ 0 } . A so-called “closed formula”. 7
A program: interval halving Let a 0 ≡ 0 and e 0 ≡ 1. By recursion, consider c n ≡ 1 2 ( a n + e n ) and � a n , c n if f ( c n ) > 0 a n +1 , e n +1 ≡ if f ( c n ) ≤ 0 , c n , e n so by induction f ( a n ) ≤ 0 ≤ f ( e n ). But a n and e n are respectively (non-strictly) increasing and decreasing sequences, whose differences tend to 0. So they converge to a common value c . By continuity, f ( c ) = 0. 8
Where is the zero? For − 1 ≤ p ≤ +1 and 0 ≤ x ≤ 3 consider f p x ≡ min ( x − 1 , max ( p, x − 2)) Here is the graph of f p ( x ) against x for p ≈ 0. +1 f p x ∧ x 0 > − 1 0 1 2 3 9
Where is the zero? The behaviour of f p ( x ) depends qualitatively on p and x like this: +1 p ∧ − ve positive x > 0 negative +ve − 1 0 1 2 3 f (1) = 0 ⇐ ⇒ p ≥ 0 f (2) = 0 ⇐ ⇒ p ≤ 0 f ( 3 2 ) = 0 ⇐ ⇒ p = 0 If there is some way of finding a zero of f p , as a side-effect it will decide how p stands in relation to 0. 10
Let’s bar the monster f : R → R doesn’t hover if, for any e < t, ∃ x. ( e < x < t ) ∧ ( fx � = 0) . Any nonzero polynomial doesn’t hover. 11
Interval halving again Suppose that f doesn’t hover. Let a 0 ≡ 0 and e 0 ≡ 1. By recursion, consider b n ≡ 1 d n ≡ 1 3 (2 a n + e n ) and 3 ( a n + 2 e n ) . Then f ( c n ) � = 0 for some b n < c n < d n , so put � if f ( c n ) > 0 a n , c n a n +1 , e n +1 ≡ c n , e n if f ( c n ) < 0 , so by induction f ( a n ) < 0 < f ( e n ). But a n and e n are respectively (non-strictly) increasing and decreasing sequences, whose differences tend to 0. So they converge to a common value c . By continuity, f ( c ) = 0. 12
Stable zeroes The revised interval halving algorithm finds zeroes with this property: a ∈ R is a stable zero of f if, for all e < a < t , ∃ yz. ( e < y < a < z < t ) ∧ ( fy < 0 < fz ∨ fy > 0 > fz ) . fz fy e y a z t z t e y a fy fz Check that a stable zero of a continuous function really is a zero. Classically, a zero is stable iff every nearby function (in the sup or ℓ ∞ norm) has a nearby zero. 13
Straddling intervals An open subspace U ⊂ R touches S , i.e. contains a stable zero, a ∈ U ∩ S , iff U contains a straddling interval , [ e, t ] ⊂ U with fe < 0 < ft or fe > 0 > ft. [ ⇐ ] The straddling interval is an intermediate value problem in miniature. Proof If an interval [ e, t ] straddles with respect to f then it also does so with respect to any nearby function. 14
The possibility operator Write ♦ U if U contains a straddling interval. By hypothesis, ♦ I ⇔ ⊤ (where I is some open interval containing I ). Trivially, ♦ ∅ ⇔ ⊥ . i ∈ I U i ⇐ ⇒ ∃ i. ♦ U i . ♦ � Consider V ± ≡ { x | ∃ y : R . ∃ i : I. ( fy > < 0) ∧ [ x, y ] ⊂ U i } so I ⊂ V + ∪ V − . Then x ∈ ( a, c ) ⊂ V + ∩ V − by connectedness, with fx � = 0 and [ x, y ] ⊂ U i . 15
The Possibility Operator as a Program Let ♦ be a property of open subspaces of R that preserves unions and satisfies ♦ U 0 for some open interval U 0 . Then ♦ has an “accumulation point” c ∈ U 0 , i.e. one of which every open neighbourhood c ∈ U ⊂ R satisfies ♦ U . In the example of the intermediate value theorem, any such c is a stable zero. Interval halving again: let a 0 ≡ 0, e 0 ≡ 1 and, by recursion, b n ≡ 1 3 (2 a n + e n ) and d n ≡ 1 3 ( a n + 2 e n ), so ♦ ( a n , e n ) ≡ ♦ (( a n , d n ) ∪ ( b n , e n )) ⇔ ♦ ( a n , d n ) ∨ ♦ ( b n , e n ) . Then at least one of the disjuncts is true, so let ( a n +1 , e n +1 ) be either ( a n , d n ) or ( b n , e n ). Hence a n and e n converge from above and below respectively to c . If c ∈ U then c ∈ ( a n , e n ) ⊂ ( c ± ǫ ) ⊂ U for some ǫ > 0 and n , but ♦ ( a n , e n ) is true by construction, so ♦ U also holds, since ♦ takes ⊂ to ⇒ . 16
Enclosing cells of higher dimensions Straddling intervals can be generalised. Let f : R n → R m with n ≥ m . Let C ⊂ R n be a sphere, cube, etc . C is an enclosing cell if 0 ∈ R m lies in the interior of the image f ( C ) ⊂ R m . (There is a definition for locally compact spaces too.) Write ♦ U if U ⊂ R n contains an enclosing cell. If ♦ ( i ∈ I U i ) ⇔ ∃ i. ♦ U i then � cell halving finds stable zeroes of f . 17
Modal operators, separately Z ≡ { x ∈ I | fx = 0 } is closed and compact. W ≡ { x | fx � = 0 } is open. S is the subspace of stable zeroes. For U ⊂ R open, write � U if Z ⊂ U (or U ∪ W = R ). � U ∧ � V ⇒ � ( U ∩ V ) � X is true and ♦ ∅ is false and ♦ ( U ∪ V ) ⇒ ♦ U ∨ ♦ V. ( Z � = ∅ ) iff � ∅ is false ( S � = ∅ ) iff ♦ R is true Both operators are Scott continuous. 18
Modal operators, together The modal operators ♦ and � for the subspaces S ⊂ Z are related in general by: � U ∧ ♦ V ⇒ ♦ ( U ∩ V ) � U ⇐ ⇒ ( U ∪ W = X ) ♦ V ⇒ ( V �⊂ W ) S is dense in Z iff � ( U ∪ V ) ⇒ � U ∨ ♦ V ♦ V ⇐ ( V �⊂ W ) In the intermediate value theorem for functions that don’t hover ( e.g. polynomials): S = Z in the non-singular case S ⊂ Z in the singular case ( e.g. double zeroes). 19
Open maps For continuous f : X → Y , if V ⊂ Y is open, so is f − 1 ( V ) ⊂ X if V ⊂ Y is closed, so is f − 1 ( V ) ⊂ X if U ⊂ X is compact, so is f ( U ) ⊂ Y (if U ⊂ X is overt, so is f ( U ) ⊂ Y ) f : X → Y is open if, whenever U ⊂ X is open, so is f ( U ) ⊂ Y . If f : X → Y is open then if V ⊂ Y is overt, so is f − 1 ( V ) ⊂ X . If f : X → Y is open then all zeroes are stable. 20
Recommend
More recommend