Domain-theoretic Models of Differential Calculus and Geometry Abbas Edalat Imperial College London www.doc.ic.ac.uk/~ae BRICS, February 2003 Contributions.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness
Advertisements

Abbas Edalat Imperial College London Interval Derivative of Functions.
Joint work with Andre Lieutier Dassault Systemes Domain Theory and Differential Calculus Abbas Edalat Imperial College Oxford.
Abbas Edalat Imperial College London Contains joint work with Andre Lieutier (AL) and joint work with Marko Krznaric (MK) Data Types.
Joint work with Andre Lieutier Dassault Systemes Domain Theoretic Models of Geometry and Differential Calculus Abbas Edalat Imperial College
5.1 Real Vector Spaces.
Introduction The concept of transform appears often in the literature of image processing and data compression. Indeed a suitable discrete representation.
CSCI 115 Chapter 6 Order Relations and Structures.
TEL-AVIV UNIVERSITY FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric Average of Two Simple Polygons.
Krakow, Summer 2011 Schnyder’s Theorem and Relatives William T. Trotter
Ruslana Mys Delaunay Triangulation Delaunay Triangulation (DT)  Introduction  Delaunay-Voronoi based method  Algorithms to compute the convex hull 
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Lecture 6 Hyperreal Numbers (Nonstandard Analysis)
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
3. Delaunay triangulation
Chapter 7 Relations : the second time around
International Workshop on Computer Vision - Institute for Studies in Theoretical Physics and Mathematics, April , Tehran 1 II SIZE FUNCTIONS:
7 INVERSE FUNCTIONS. The common theme that links the functions of this chapter is:  They occur as pairs of inverse functions. INVERSE FUNCTIONS.
1 Foundations of Interval Computation Trong Wu Phone: Department of Computer Science Southern Illinois University Edwardsville.
Preliminaries/ Chapter 1: Introduction. Definitions: from Abstract to Linear Algebra.
Mathematics for Business (Finance)
Partially Ordered Sets (POSets)
Relations Chapter 9.
Chapter 6. Order Relations and Structure
Title: Functions, Limits and Continuity Prof. Dr. Nasima Akhter And Md. Masum Murshed Lecturer Department of Mathematics, R.U. 29 July, 2011, Friday Time:
1 Preliminaries Precalculus Review I Precalculus Review II
FINITE FIELDS 7/30 陳柏誠.
Domain Theory, Computational Geometry and Differential Calculus Abbas Edalat Imperial College London With contributions from Andre.
ME 2304: 3D Geometry & Vector Calculus Dr. Faraz Junejo Double Integrals.
Relative Location of a Point with Respect to a Straight Line (0,0) 5 5 (2, 2) (4, 5) (0, 5) (6, 3) -3x + 2y +2 = 0 s = A x t + B y t + C s < 0 s > 0.
Solving fixpoint equations
AP CALCULUS PERIODIC REVIEW. 1: Limits and Continuity A function y = f(x) is continuous at x = a if: i) f(a) is defined (it exists) ii) iii) Otherwise,
Abbas Edalat Imperial College London joint work with Marko Krznaric and Andre Lieutier Domain-theoretic Solution of Differential Equations.
Scott Closed Set Lattices And Applications 1. Some preliminaries 2. Dcpo-completion 3. Equivalence between CONP and CDL 4. The Hoare power domain 5. Scott.
استاد : دکتر گلبابایی In detail this means three conditions:  1. f has to be defined at c.  2. the limit on the left hand side of that equation has.
Chapter 9. Chapter Summary Relations and Their Properties n-ary Relations and Their Applications (not currently included in overheads) Representing Relations.
Chapter 3 L p -space. Preliminaries on measure and integration.
Discrete Math for CS Binary Relation: A binary relation between sets A and B is a subset of the Cartesian Product A x B. If A = B we say that the relation.
The Integers. The Division Algorithms A high-school question: Compute 58/17. We can write 58 as 58 = 3 (17) + 7 This forms illustrates the answer: “3.
Robustness in Numerical Computation I Root Finding Kwanghee Ko School of Mechatronics Gwnagju Institute of Science and Technology.
MA4266 Topology Wayne Lawton Department of Mathematics S ,
TEL-AVIV UNIVERSITY RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric.
Elementary Linear Algebra Anton & Rorres, 9th Edition
8.3 Representing Relations Directed Graphs –Vertex –Arc (directed edge) –Initial vertex –Terminal vertex.
1 ECG Saarbrücken Robustness issues & CAD André Lieutier Robustness issues in Geometric computations for Computer Aided Design André Lieutier practices.
Copyright © Cengage Learning. All rights reserved.
A Logic of Partially Satisfied Constraints Nic Wilson Cork Constraint Computation Centre Computer Science, UCC.
Chapter SETS DEFINITION OF SET METHODS FOR SPECIFYING SET SUBSETS VENN DIAGRAM SET IDENTITIES SET OPERATIONS.
Sets and Subsets Set A set is a collection of well-defined objects (elements/members). The elements of the set are said to belong to (or be contained in)
Lecture 2 Plan: 1. Automatic Boolean Algebras 2. Automatic Linear Orders 3. Automatic Trees 4. Automatic Versions of König’s lemma 5. Intrinsic Regularity.
Domain Theory and Multi-Variable Calculus Abbas Edalat Imperial College London Joint work with Andre Lieutier, Dirk Pattinson.
Interval Notation Interval Notation to/from Inequalities Number Line Plots open & closed endpoint conventions Unions and Intersections Bounded vs. unbounded.
Problem Statement How do we represent relationship between two related elements ?
Chapter 9. Chapter Summary Relations and Their Properties n-ary Relations and Their Applications (not currently included in overheads) Representing Relations.
Unit II Discrete Structures Relations and Functions SE (Comp.Engg.)
A data Type for Computational Geometry & Solid Modelling Abbas Edalat Andr é Lieutier Imperial College Dassault Systemes.
Chapter 8: Relations. 8.1 Relations and Their Properties Binary relations: Let A and B be any two sets. A binary relation R from A to B, written R : A.
Copyright © Cengage Learning. All rights reserved. 16 Vector Calculus.
Set Theory Concepts Set – A collection of “elements” (objects, members) denoted by upper case letters A, B, etc. elements are lower case brackets are used.
Department of Statistics University of Rajshahi, Bangladesh
The Jordan Arc theorem. A Lemma: For a connected, finite union of open discs, no two of which are mutually tangent, the outer boundary (which separates.
Prepared By Meri Dedania (AITS) Discrete Mathematics by Meri Dedania Assistant Professor MCA department Atmiya Institute of Technology & Science Yogidham.
CHAPTER 9.10~9.17 Vector Calculus.
Copyright © 2004 Pearson Education, Inc. Chapter 2 Graphs and Functions.
CHAPTER 3 SETS, BOOLEAN ALGEBRA & LOGIC CIRCUITS
Unit-III Algebraic Structures
Equivalence Relations
Complex Variables. Complex Variables Open Disks or Neighborhoods Definition. The set of all points z which satisfy the inequality |z – z0|
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Presentation transcript:

Domain-theoretic Models of Differential Calculus and Geometry Abbas Edalat Imperial College London BRICS, February 2003 Contributions from Andre Lieutier, Ali Khanban, Marko Krznaric (I) Domain Theory and Differential Calculus (II) Domain-theoretic Solution of Differential Equations (III) Domain-theoretic Model of Geometry and Solid Modelling (I) Domain Theory and Differential Calculus (II) Domain-theoretic Solution of Differential Equations (III) Domain-theoretic Model of Geometry and Solid Modelling

2 Computational Model for Classical Spaces A research project since 1993: Reconstruct some basic mathematics Embed classical spaces into the set of maximal elements of suitable domains X Classical Space x DX Domain {x}

3 Computational Model for Classical Spaces Previous Applications: Fractal Geometry Measure & Integration Theory Topological Representation of Spaces Exact Real Arithmetic

Part (I) Domain Theory and Differential Calculus Synthesize Differential Calculus developed by Newton and Leibnitz in the 17 th century with Computer Science developed in the 20 th century

5 Non-smooth Mathematics Set Theory Logic Algebra Point-set Topology Graph Theory Model Theory. Geometry Differential Topology Manifolds Dynamical Systems Mathematical Physics. All based on differential calculus Smooth Mathematics

A Domain-Theoretic Model for Differential Calculus Indefinite integral of a Scott continuous function Derivative of a Scott continuous function Fundamental Theorem of Calculus for interval-valued functions Domain of C 1 functions Domain of C k functions

7 Continuous Scott Domains A directed complete partial order (dcpo) is a poset (A, ⊑ ), in which every directed set {a i | i  I }  A has a sup or lub ⊔ i  I a i The way-below relation in a dcpo is defined by: a ≪ b iff for all directed subsets {a i | i  I }, the relation b ⊑ ⊔ i  I a i implies that there exists i  I such that a ⊑ a i If a ≪ b then a gives a finitary approximation to b B  A is a basis if for each a  A, {b  B | b ≪ a } is directed with lub a A dcpo is (  -)continuous if it has a (countable) basis The Scott topology on a continuous dcpo A with basis B has basic open sets {a  A | b ≪ a } for each b  B A dcpo is bounded complete if every bounded subset has a lub A continuous Scott Domain is an  - continuous bounded complete dcpo

8 Let IR={ [a,b] | a, b  R}  {R} (IR,  ) is a bounded complete dcpo with R as bottom: ⊔ i  I a i =  i  I a i a ≪ b  a o  b (IR, ⊑ ) is  -continuous: countable basis {[p,q] | p < q & p, q  Q} (IR, ⊑ ) is, thus, a continuous Scott domain. Scott topology has basis: ↟ a = {b | a o  b}  x {x} R I R x  {x} : R  IR Topological embedding The Domain of nonempty compact Intervals of R

9 Continuous Functions f : [0,1]  R, f  C 0 [0,1], has continuous extension If : [0,1]  IR x  {f (x)} Scott continuous maps [0,1]  IR with: f ⊑ g   x  R. f(x) ⊑ g(x) is another continuous Scott domain.  : C 0 [0,1] ↪ ( [0,1]  IR), with f  If is a topological embedding into a proper subset of maximal elements of [0,1]  IR.

10 Step Functions Single-step function: a ↘ b : [0,1]  IR, with a  I[0,1], b  IR: b x  a o x   otherwise Lubs of finite and bounded collections of single- step functions ⊔ 1  i  n (a i ↘ b i ) are called step function. Step functions with a i, b i rational intervals, give a basis for [0,1]  IR

11 Step Functions-An Example 01 R b1b1 a3a3 a2a2 a1a1 b3b3 b2b2

12 Refining the Step Functions 01 R b1b1 a3a3 a2a2 a1a1 b3b3 b2b2

13 Operations in Interval Arithmetic For a = [a, a]  IR, b = [b, b]  IR, and *  { +, –,  } we have: a * b = { x*y | x  a, y  b } For example: a + b = [ a + b, a + b]

14 Intuitively, we expect f to satisfy: What is the indefinite integral of a single step function a ↘ b ? The Basic Construction Classically, with We expect  a ↘ b  ([0,1]  IR) For what f  C 1 [0,1], should we have If   a ↘ b ?

15 Interval Derivative Assume f  C 1 [0,1], a  I[0,1], b  IR. Suppose  x  a o. b  f (x)  b. We think of [b, b] as an interval derivative for f at a. Note that  x  a o. b  f (x)  b iff  x 1, x 2  a o & x 1 > x 2, b(x 1 – x 2 )  f(x 1 ) – f(x 2 )  b(x 1 – x 2 ), i.e. b(x 1 – x 2 ) ⊑ {f(x 1 ) – f(x 2 )} = {f(x 1 )} – {f(x 2 )}

16 Definition of Interval Derivative f  ([0,1]  IR) has an interval derivative b  IR at a  I[0,1] if  x 1, x 2  a o, b(x 1 – x 2 ) ⊑ f(x 1 ) – f(x 2 ). Proposition. For f: [0,1]  IR, we have f   (a,b) iff f(x)  Maximal (IR) for x  a o (hence f continuous) and Graph(f) is within lines of slope b & b at each point (x, f(x)), x  a o. (x, f(x)) b b a Graph(f). The tie of a with b, is  (a,b) := { f |  x 1,x 2  a o. b(x 1 – x 2 ) ⊑ f(x 1 ) – f(x 2 )}

17 Let f  C 1 [0,1]; the following are equivalent: If   (a,b)  x  a o. b  f (x)  b  x 1,x 2  [0,1], x 1,x 2  a o. b(x 1 – x 2 ) ⊑ If (x 1 ) – If (x 2 ) a ↘ b ⊑ If For Classical Functions Thus,  (a,b) is our candidate for  a ↘ b.

18  (a 1,b 1 )   (a 2,b 2 ) iff a 2 ⊑ a 1 & b 1 ⊑ b 2  n i=1  (a i,b i )   iff {a i ↘ b i | 1  i  n} bounded.  i  I  (a i,b i )   iff {a i ↘ b i | i  I } bounded iff  J  finite I  i  J  (a i,b i )   In fact,  (a,b) behaves like a ↘ b; we call  (a,b) a single-step tie. Properties of Ties

19 The Indefinite Integral  : ([0,1]  IR)  ( P ([0,1]  IR),  ) ( P the power set constructor)  a ↘ b :=  (a,b)  ⊔ i  I a i ↘ b i :=  i  I  (a i,b i )  is well-defined and Scott continuous. But unlike the classical case, the indefinite integral  is not 1-1.

20Example  ([0,1/2] ↘ {0}) ⊔ ([1/2,1] ↘ {0}) ⊔ ([0,1] ↘ [0,1]) =  ([0,1/2], {0})   ([1/2,1], {0})   ([0,1], [0,1]) =  ([0,1], {0}) =  [0,1] ↘ {0}

21 The Derivative Definition. Given f : [0,1]  IR the derivative of f is: : [0,1]  IR = ⊔ {a ↘ b | f   (a,b) } Theorem. (Compare with the classical case.) is well–defined & Scott continuous. If f  C 1 [0,1], then f   (a,b) iff a ↘ b ⊑

22 Examples

23 The Derivative Operator : ([0,1]  IR)  ([0,1]  IR) is monotone but not continuous. Note that the classical operator is not continuous either. ( a ↘ b )= x.  is not linear! For f : x  {|x|} : [-1,1]  IR g : x  {–|x|} : [-1,1]  IR ( f+g ) (0)  (0) + (0)

24 Domain of Ties, or Indefinite Integrals Recall  : ([0,1]  IR)  ( P ([0,1]  IR),  ) Let T[0,1] = Image (  ), i.e.  T[0,1] iff it is the nonempty intersection of a family of single-ties: =  i  I  (a i,b i )     Domain of ties: ( T[0,1],  ) Theorem. ( T[0,1],  ) is a continuous Scott domain.

25 Define : (T[0,1],  )  ([0,1]  IR) ∆  ⊓ { | f  ∆ } The Fundamental Theorem of Calculus Theorem. : (T[0,1],  )  ([0,1]  IR) is upper adjoint to  : ([0,1]  IR)  (T[0,1],  ) In fact, Id =  ° and Id ⊑ ° 

26 Fundamental Theorem of Calculus For f, g  C 1 [0,1], let f ~ g if f = g + r, for some r  R. We have: 

27 F.T. of Calculus: Isomorphic version For f, g  [0,1]  IR, let f ≈ g if f = g a.e. We then have:  

28 A Domain for C 1 Functions If h  C 1 [0,1], then ( Ih, Ih )  ([0,1]  IR)  ([0,1]  IR) What pairs ( f, g)  ([0,1]  IR) 2 approximate a differentiable function? We can approximate ( Ih, Ih ) in ([0,1]  IR) 2 i.e. ( f, g) ⊑ ( Ih,Ih ) with f ⊑ Ih and g ⊑ Ih

29 Proposition (f,g)  Cons iff there is a continuous h: dom(g)  R with f ⊑ Ih and g ⊑. Function and Derivative Consistency Define the consistency relation: Cons  ([0,1]  IR)  ([0,1]  IR) with (f,g)  Cons if (  f)  (  g)   In fact, if (f,g)  Cons, there are least and greatest functions h with the above properties in each connected component of dom(g) which intersects dom(f).

30 Approximating function: f = ⊔ i a i ↘ b i ( ⊔ i a i ↘ b i, ⊔ j c j ↘ d j )  Cons is a finitary property: Consistency for basis elements L(f,g) = least function G(f,g) = greatest function We will define L(f,g), G(f,g) in general and show that: 1. (f,g)  Cons iff L(f,g)  G(f,g). 2. Cons is decidable on the basis. Up(f,g) := (f g, g) where f g : t  [ L(f,g)(t), G(f,g)(t) ] f g (t) t Approximating derivative: g = ⊔ j c j ↘ d j

31 f 1 1 Function and Derivative Information g 1 2

32 f 1 1Updating g 1 2

33 Let O be a connected component of dom(g) with O  dom(f)  . For x, y  O define: Consistency Test and Updating for (f,g) Define: L(f,g)(x) := sup y  O  dom(f) (f – (y) + d –+ (x,y)) and G(f,g)(x) := inf y  O  dom(f) (f + (y) + d +– (x,y)) Theorem. (f, g)  Con iff  x  O. L (f, g) (x)  G (f, g) (x). For x  dom(g), let g(x) = [g (x), g + (x)] where g, g + : dom(g)  R are lower and upper semi-continuous. Similarly we define f, f + : dom(f)  R. Write f = [f –, f + ].

34 Updating Linear step Functions A linear single-step function: a ↘ [b –, b + ] : [0,1]  IR, with b –, b + : a o  R linear [b – (x), b + (x)] x  a o x   otherwise We write this simply as a ↘ b with b=[b –, b + ]. Hence L(f,g) is the max of k+2 linear maps. Similarly for G(f,g)(x). Proposition. For x  O, we have: L(f,g)(x) = max {f – (x), limsup f – (y) + d –+ (x, y) | y m  O  dom(f) } For (f, g) = ( ⊔ 1  i  n a i ↘ b i, ⊔ 1  j  m c j ↘ d j ) with f linear g standard, the rational end–points of a i and c j induce a partition y 0 < y 1 < y 2 < … < y k of the connected component O of dom(g).

35 f 1 1 Updating Algorithm g 1 2

36 f 1 1 Updating Algorithm (left to right) g 1 2

37 f 1 1 Updating Algorithm (left to right) g 1 2

38 f 1 1 Updating Algorithm (right to left) g 1 2

39 f 1 1 Updating Algorithm (right to left) g 1 2

40 f 1 1 Updating Algorithm (similarly for upper one) g 1 2

41 f 1 1 Output of the Updating Algorithm g 1 2

42 Lemma. Cons  ([0,1]  IR) 2 is Scott closed. Theorem. D 1 [0,1]:= { (f,g)  ([0,1]  IR) 2 | (f,g)  Cons} is a continuous Scott domain, which can be given an effective structure. The Domain of C 1 Functions Define D 1 c := {(f 0,f 1 )  C 1  C 0 | f 0 = f 1 } Theorem.  : C 1 [0,1]  C 0 [0,1]  ([0,1]  IR) 2 restricts to give a topological embedding D 1 c ↪ D 1 (with C 1 norm) (with Scott topology)

43 Higher Interval Derivative Let  1 (a,b) =  (a,b) Definition. (the second tie) f   2 (a,b)  P ([0,1]  IR) if   1 (a,b) Note the recursive definition, which can be extended to higher derivatives. Proposition. For f  C 2 [0,1], the following are equivalent: If   2 (a,b)  x  a o. b  f (x)  b  x 1,x 2  a o. b (x 1 – x 2 ) ⊑ If (x 1 ) – If (x 2 ) a ↘ b ⊑ If

44 Higher Derivative and Indefinite Integral For f : [0,1]  IR we define: : [0,1]  IR by Then = ⊔ f   2 (a,b) a ↘ b  : ([0,1]  IR)  ( P ([0,1]  IR),  )  a ↘ b :=  (a,b)  ⊔ i  I a i ↘ b i :=  i  I  (a i,b i )  is well-defined and Scott continuous. 2 (2) 2

45 Domains of C 2 functions D 2 c := {(f 0,f 1,f 2 )  C 2  C 1  C 0 | f 0 = f 1, f 1 = f 2 } Theorem.  restricts to give a topological embedding D 2 c ↪ D 2 Define Cons (f 0,f 1,f 2 ) iff  f 0   f 1   f 2   (2) Theorem. Cons (f 0,f 1,f 2 ) is decidable on basis elements. (The present algorithm to check seems to be NP-hard.) D 2 := { (f 0,f 1,f 2 )  (I[0,1]  IR) 3 | Cons (f 0,f 1,f 2 ) }

46 Domains of C k functions D k := { (f i ) 0  i  k  ([0,1]  IR) k+1 | Cons (f i ) 0  i  k } D := { (f k ) k  0  ( [0,1]  IR) ω |  k  0. (f i ) 0  i  k  D k } ∞ (i) Let (f i ) 0  i  k  ([0,1]  IR) k+1 Define Cons (f i ) 0  i  k iff  0  i  k  f i   The decidability of Cons on basis elements for k  3 is an open question.

47 Part (II) Domain-theoretic Solution of Differential Equations Develop proper data types for ordinary differential equations. Solve initial value problem up to any given precision.

48 Theorem. In a neighbourhood of t 0, there is a unique solution, which is the unique fixed point of: P: C 0 [t 0 -k, t 0 +k]  C 0 [t 0 -k, t 0 +k] f  t. (x 0 +  v(t, f(t) ) dt) for some k>0. t0t0 t Picard’s Theorem = v(t,x) with v: R 2  R continuous x(t 0 ) = x 0 with (t 0,x 0 )  R 2 and v is Lipschitz in x uniformly in t for some neighbourhood of (t 0,x 0 ).

49 Up ⃘ Ap v : (f,g)  ( t. (x 0 +  t. v(t,f(t))) dt, t. v(u,f(u))) has a fixed point (f,g) with f = g = t. v(t,f(t)) t t0t0 Picard’s Solution Reformulated Up: (f,g)  ( t. (x 0 +  g(u) du), g ) t t0t0 P: f  t. (x 0 +  v(t, f(t)) dt) can be considered as upgrading the information about the function f and the information about its derivative g. t t0t0 Ap v : (f,g)  (f, t. v(t,f(t)))

50 To obtain Picard’s theorem with domain theory, we have to make sure that derivative updating preserves consistency. (f, g) is strongly consistent, (f, g)  S-Cons, if  h ⊒ g we have: (f, h)  Cons Q(f,g)(x) := sup y  O  Dom(f) (f – (y) + d +– (x,y)) R(f,g)x) := inf y  O  Dom(f) (f + (y) + d –+ (x,y)) Theorem. If f –, f +, g –, g + : [0,1]  R are bounded and g –, g + are continuous a.e. (e.g. for polynomial step functions f and g ), then (f,g) is strongly consistent iff for any connected component O of dom(g) with O  dom(f)  , we have:  x  O. Q(f,g)(x), R(f,g)(x)  [f – (x), f + (x) ] Thus, on basis elements strong consistency is decidable. A domain-theoretic Picard’s theorem

51 A domain-theoretic Picard’s theorem Let v : [0,1]  IR  IR be Scott continuous and Ap v : ([0,1]  IR) 2  ([0,1]  IR) 2 (f,g)  ( f, t. v (t, f(t) )) Up : ([0,1]  IR) 2  ([0,1]  IR) 2 Up(f,g) = (f g, g) where f g (t) = [ L (f,g) (t), G (f,g) (t) ] Consider any initial value f  [0,1]  IR with (f, t. v (t, f(t) ) )  S-Cons Then the continuous map Up ⃘ Ap v has a least fixed point above (f, t.v (t, f(t))) given by ( f s, g s ) = ⊔ n  0 (Up ⃘ Ap v ) n (f, t.v (t, f(t) ) )

52 Then (f, [-a,a ] ↘ [-M,M ] )  S-Cons, hence (f, t. v(t, f(t) ) )  S-Cons since ([-a,a ] ↘ [-M,M ]) ⊑ t. v (t, f(t) ) Theorem. The domain-theoretic solution ( f s, g s ) = ⊔ n  0 (Up ⃘ Ap v ) n (f, t. v (t, f(t) )) gives the unique classical solution through (0,0). The Classical Initial Value Problem Suppose v = Ih for a continuous h : [-1,1]  R  R which satisfies the Lipschitz property around (t 0,x 0 ) =(0,0). Then h is bounded by M say in a compact rectangle K around the origin. We can choose positive a  1 such that [-a,a]  [-Ma,Ma]  K. Put f = ⊔ n  0 f n where f n = [-a/2 n,a /2 n ] ↘ [-Ma/2 n, Ma/ 2 n ]

53 Computation of the solution for a given precision  Computation of the solution for a given precision  >0 Let ( u n, w n ) := (P v ) n (f n, t. v n (t, f n (t) ) ) with u n = [u n -,u n + ] We express f and v as lubs of step functions: f = ⊔ n  0 f n v = ⊔ n  0 v n Putting P v := Up ⃘ Ap v the solution is obtained as: For all n  0 we have: u n -  u n+1 -  u n+1 +  u n + with u n + - u n -  0 Compute the piecewise linear maps u n -, u n + until  the first n  0 with u n + - u n -   ( f s, g s ) = ⊔ n  0 (P v ) n (f, t. v (t, f(t) ) ) = ⊔ n  0 (P v ) n (f n, t. v n (t, f n (t) ) )

54Example 1 f g v v is approximated by a sequence of step functions, v 0, v 1, … v = ⊔ i v i We solve: = v(t,x), x(t 0 ) =x 0 for t  [0,1] with v(t,x) = t and t 0 =1/2, x 0 =9/8. a3a3 b3b3 a2a2 b2b2 a1a1 b1b1 v3v3 v2v2 v1v1 The initial condition is approximated by rectangles a i  b i : {(1/2,9/8)} = ⊔ i a i  b i, t t.

55Solution 1 f g At stage n we find u n - and u n +.

56Solution 1 f g At stage n we find u n - and u n +

57Solution 1 f g u n - and u n + tend to the exact solution: f: t  t 2 / At stage n we find u n - and u n +

58 Computing with polynomial step functions

Part III: A Domain-Theoretic Model of Geometry To develop a Computable model for Geometry and Solid Modelling, so that: the model is mathematically sound, realistic; the basic building blocks are computable; it bridges theory and practice.

60 Why do we need a data type for solids? Answer: To develop robust algorithms! Lack of a proper data type and use of real RAM in which comparison of real numbers is decidable give unreliable programs in practice!

61 The Intersection of two lines With floating point arithmetic, find the point P of the intersection L 1  L 2. Then: min_dist(P, L 1 ) > 0, min_dist(P, L 2 ) > 0.

62 The Convex Hull Algorithm A, B & C nearly collinear With floating point we can get:

63 A, B & C nearly collinear The Convex Hull Algorithm With floating point we can get: (i) AC, or

64 A, B & C nearly collinear The Convex Hull Algorithm With floating point we can get: (i) AC, or (ii) just AB, or

65 A, B & C nearly collinear The Convex Hull Algorithm With floating point we can get: (i) AC, or (ii) just AB, or (iii) just BC, or

66 A, B & C nearly collinear With floating point we can get: (i) AC, or (ii) just AB, or (iii) just BC, or (iv) none of them. The quest for robust algorithms is the most fundamental unresolved problem in solid modelling and computational geometry. The Convex Hull Algorithm

67 Subset A  X topological space. Membership predicate  A : X  {tt, ff } is continuous iff A is both open and closed. A Fundamental Problem in Topology and Geometry In particular, for A  R n, A  , A  R n  A : R n  {tt, ff } is not continuous. Most engineering is done, however, in R n.

68 There is discontinuity at the boundary of the set. Non-computability of the Membership Predicate This predicate is not computable: If x is on the boundary, we cannot in general determine if it is in or out at any finite stage of computation. FalseTrue

69 Non-computable Operations in Classical CG & SM  A : R n  {tt, ff} not continuous means it is not computable, even for simple objects like A=[0,1] n. x  A is not decidable even for simple objects: for A = [0,  )  R, we just have the undecidability of x  0. The Boolean operation  is not continuous, hence noncomputable, wrt the natural notion of topology on subsets:  : C(R n )  C(R n )  C(R n ), where C(R n ) is compact subsets with the Hausdorff metric.

70 Intersection of two 3D cubes

71 Intersection of two 3D cubes

72 Intersection of two 3D cubes

73 This is Really Ironical! Topology and geometry have been developed to study continuous functions and transformations on spaces. The membership predicate and the binary operation for  are the fundamental building blocks of topology and geometry. Yet, these fundamental functions are not continuous in classical topology and geometry.

74 Elements of a Computable Topology/Geometry The membership predicate  A : X  {tt, ff} fails to be continuous on  A, the boundary of A. For any open or closed set A, the predicate x   A is non-observable, like x = 0. Redefine:  A : X  {tt, ff}  with the Scott topology on {tt, ff} . ttff open  observable Non-observable  A is now a continuous function.

75 Elements of a Computable Topology/Geometry Note that  A =  B iff int A=int B & int A c =int B c, i.e. sets with the same interior and exterior have the same membership predicate. We now change our view: In analogy with classical set theory where every set is completely determined by its membership predicate, we define a (partial) solid object to be given by any continuous map: f : X  { tt, ff }  Then: f –1 {tt} is open; it’s called the interior of the object. f –1 {ff} is open; it’s called the exterior of the object.

76 Partial Solid Objects We have now introduced partial solid objects, since X \ (f –1 {tt}  f –1 {ff}) may have non-empty interior. We partially order the continuous functions: f, g : X  {tt, ff }  f ⊑ g   x  X. f(x) ⊑ g(x) f ⊑ g  f –1 {tt}  g –1 {tt} & f –1 {ff}  g –1 {ff} Therefore, f ⊑ g means g has more information about an idealized real solid object.

77 The Geometric (Solid) Domain of X The geometric (solid) domain S (X) of X is the poset (X  {tt, ff } , ⊑ ) S(X) is isomorphic to the poset S O (X) of pairs of disjoint open sets (O 1,O 2 ) ordered componentwise by inclusion:

78 Theorem For a second countable locally compact Hausdorff space X (e.g. R n ), S(X) is bounded complete and  –continuous with (U 1, U 2 ) << (V 1, V 2 ) iff the closures of U 1 and U 2 are compact subsets of V 1 and V 2 respectively. Theorem If X is Hausdorff, then: (O 1, O 2 )  Maximal (S X, ⊑ ) iff O 1 = int O 2 c & O 2 = int O 1 c. This is a regular solid object: O 1 =int O 1 & O 2 =int O 2 Properties of the Geometric (Solid) Domain Definition (O 1, O 2 ), O 1 ≠ ∅ ≠ O 2, is a classical object if O 1 ∪ O 2 = X.

79Examples A = {x  R 2 ⃒ |x| ≤ 1}  [1, 2] represented in the model by A rep = (int A, int A c ) = ( {x ⃒ |x| < 1}, R 2 \ A ) is a classical (but non-regular) solid object. B = {x  R 2 ⃒ |x| ≤ 1} represented by B rep = ({x ⃒ |x| 1})  Maximal (SR 2, ⊑ ) is a regular solid object with A rep ⊑ B rep.

80 Boolean operations and predicates Theorem All these operations are Scott continuous and preserve classical solid objects.

81 Subset Inclusion Subset inclusion is Scott continuous. Let

82 General Minkowski operator For smoothing out sharp corners of objects. S b R n = { (A, B)  SR n | B c is bounded} ∪ {( ∅, ∅ )}. All real solids are represented in S b R n. Define: _  _ : SR n  S b R n  SR n ((A,B), (C,D)) ↦ (A ⊕ C, (B c ⊕ D c ) c ) where A ⊕ C = { a+c | a  A, c  C } Theorem _  _ is Scott continuous.

83 (A, B) is a computable partial solid object if there exists a total recursive function ß:N  N such that : ( K ß(n) ) n  0 is an increasing chain with: An effectively given solid domain The geometric domain SX can be given effective structure for any locally compact second countable Hausdorff space, e.g. R n, S n, T n, [0,1] n. Consider X=R n. The set of pairs of disjoint open rational bounded polyhedra of the form K = (L 1, L 2 ), with L 1  L 2 = , gives a basis for SX. Let K n = (π 1 ( K n ), π 2 ( K n ) ) be an enumeration of this basis. (A, B) = ( ∪ n π 1 ( K ß(n) ), ∪ n π 2 ( K ß(n) ) )

84 Computing a Solid Object In this model, a solid object is represented by its interior and exterior. The interior and the exterior are approximated by two nested sequence of rational polyhedra.

85 Computable Operations on the Solid Domain F: (SX) n  SX or F: (SX) n  { tt, ff }  is computable if it takes computable sequences of partial solid objects to computable sequences. Theorem All the basic Boolean operations and predicates are computable wrt any effective enumeration of either the partial rational polyhedra or the partial dyadic voxel sets.

86 Quantative Measure of Convergence In our present model for computable solids, there is no quantitative measure for the convergence of the basis elements to a computable solid. We will enrich the notion of domain-theoretic computability to include a quantitative measure of convergence.

87 We strengthen the notion of a computable solid by using the Hausdorff distance d between compact sets in R n. d(C,D) = min{ r>0 | C  D r & D  C r } where D r = { x |  y  D. |x-y|  r } (A, B)  S [–k, k] n is Hausdorff computable if there exists an effective chain K ß(n) of basis elements with ß :N  N a total recursive function such that: (A, B) = ( ∪ n π 1 ( K ß(n) ), ∪ n π 2 ( K ß(n) ) ) with d (π 1 ( K ß(n) ), A ) < 1/2 n, d (π 2 ( K ß(n) ), B) < 1/2 n Hausdorff Computability

88 Hausdorff computability Two solid objects which have a small Hausdorff distance from each other are visually close. The Hausdorff distance gives a natural quantitative measure for approximation of solid objects. However, the intersection or union of two Hausdorff computable solid objects may fail to be Hausdorff computable. Examples of such failure are nontrivial to construct.

89 Boolean Intersection is not Hausdorff computable However: Q  ([0,1]  {0}) = [r,1]  {0}  R 2 is not Hausdorff computable. is Hausdorff computable.

90 Lebesgue Computability (A, B)  S [–k, k] d is Lebesgue computable iff there exists an effective chain K ß(n) of basis elements with ß :N  N a total recursive function such that: (A, B) = ( ∪ n π 1 ( K ß(n) ), ∪ n π 2 ( K ß(n) ) ) µ(A) - µ(π 1 ( K ß(n) ) ) < 1/2 n & µ(B) - µ(π 2 ( K ß(n) ) ) < 1/2 n A computable function is Lebesgue computable if it preserves Lebesgue computable sequences. Theorem Boolean operations are Lebesgue computable.

91 Hausdorff computable ⇏ Lebesgue computable Complement of a Cantor set with Lebesgue measure 1– r with r =lim r n : left computable but non-computable real. Hausdorff and Lebesgue computability 01 s0s0 At stage n remove 2 n open mid-intervals of length s n /2 n. s tart with stage 1 stage 2

92 Hausdorff and Lebesgue computability Lebesgue computable ⇏ Hausdorff computable Let 0 < r n  Q with r n ↗ r, left computable, non- computable 0 < r < 1. Then [r,1]  {0}  R 2 is Lebesgue computable but not Hausdorff computable.

93 Hausdorff computable ⇏ Lebesgue computable Lebesgue computable ⇏ Hausdorff computable Theorem: A regular solid object is computable iff it is Hausdorff computable. However: A computable regular solid object may not be Lebesgue computable. Hausdorff and Lebesgue Computable Objects

94Conclusion Our model satisfies:  A well-defined notion of computability  Reflects the observable properties of geometric objects  Is closed under basic operations  Captures regular and non-regular sets  Supports a methodology for designing robust algorithms

95 Data-types for Computational Geometry and Systems of Linear Equations The Convex Hull Voronoi Diagram or the Post Office problem Delaunay Triangulation The Partial Circle through three partial points

96 The Outer Convex Hull Algorithm

97 The Inner Convex Hull Algorithm Top right corners Top left corners bottom right cornersbottom left corners

98 The Convex Hull Algorithm

99 The Convex Hull Algorithm

100 Let H m : (R 2 ) m  C (R 2 ) be the classical convex Hull map, with C (R 2 ) the set of compact subsets of R 2, with the Hausdorff metric. Let (IR 2,  ) be the domain of rectangles in R 2. The Convex Hull map For x=(T 1,T 2,…,T m )  (IR 2 ) m, define: C m : (IR 2 ) m  SR 2, C m (x) = (I m (x),E m (x)) with: E m (x):=  {(H m (y)) c | y  (R 2 ) m, y i  T i, 1  i  m} I m (x):=  {(H m (y)) 0 | y  (R 2 ) m, y i  T i, 1  i  m} T1T1 T2T2 T3T3 T4T4 Each rectangle T  IR 2 has vertices T 1,T 2,T 3,T 4, going anti-clockwise from the right bottom corner.

101 The Convex Hull is Computable! Proposition: E m (x)=(H 4m ((T i 1,T i 2,T i 3,T i 4 )) 1  i  m ) c I m (x)=Int(  {H m ((T i n )) 1  i  m ) | n=1,2,3,4}). Theorem: The map C m : (IR 2 ) m  SR 2 is Scott continuous, Hausdorff and Lebesgue computable. Complexity: 1. E m (x) is O(m log m). 2. I m (x) is also O(m log m). We have precisely the complexity of the classical convex hull algorithm in R 2 and R 3.

102 Voronoi Diagrams We are given a finite number of points in the plane. Divide the plane into components closest to these points. The problem is equivalent to the Delaunay triangulation of the points: (1) Triangulate the set of given points so that the interior of the circumference circles do not contain any of the given points. (2) Draw the perpendicular bisectors of the edges of the triangles.

103 Recall that the Voronoi diagram is dual to the Delaunay triangulation: Given a finite number of points of the plane find the triples of points so that the interior of the circle through any triple does not contain any other points Voronoi Diagram & Partial Circles The centre of the circle through the three vertices of a triangle is the intersection of the perpendicular bisectors of the three edges of the triangle. The partial circle of three partial points in the plane is obtained by considering the Partial Perpendicular Bisector of two partial points in the plane.

104 Partial Perpendicular Bisector of Two Partial Points

105 PPBs for Three Partial Points Partial Centre

106 Partial Circles The Interior is the intersection of the interiors of the three blue circles. The exterior is the union of the exteriors of the three red circles. Each partial circle is defined by its interior and exterior. The exterior (interior) consists of all those points of the plane which are outside (inside) all circles passing through any three points in the three rectangles.

107 Partial Circles With more exact partial points, the boundaries of the interior and exterior of the partial circle get closer to each other.

108 Partial Circles The limit of the area between the interior and exterior of the partial circle, and the Hausdorff distance between their boundaries, is zero. We get a Scott continuous map C : (IR 2 ) 3  SR 2 We obtain a robust Voronoi algorithm.

109 Current and Further Work Solving Differential Equations with Domains Differential Calculus with Several Variables Implicit and Inverse Function Theorems Reconstruct Geometry and Smooth Mathematics with Domain Theory Continuous processes, robotics,…

110 THE END