Presentation is loading. Please wait.

# Abbas Edalat Imperial College London www.doc.ic.ac.uk/~ae Interval Derivative of Functions.

## Presentation on theme: "Abbas Edalat Imperial College London www.doc.ic.ac.uk/~ae Interval Derivative of Functions."— Presentation transcript:

Abbas Edalat Imperial College London www.doc.ic.ac.uk/~ae Interval Derivative of Functions

The Classical Derivative Let f: [a,b]  R be a real-valued function. The derivative of f at x is defined as when the limit exists (Cauchy 1821). If the derivative exists at x then f is continuous at x. However, a continuous function may not be differentiable at a point x and there are indeed continuous functions which are nowhere differentiable, the first constructed by Weierstrass: with 0 <b< 1 and a an odd positive integer.

3 Non Continuity of the Derivative The derivative of f may exist in a neighbourhood O of x but the function may be discontinuous at x, e.g. with f(0)=0 we have:

4 A Continuous Derivative for Functions? A computable function needs to be continuous with respect to the topology used for approximation. Can we define a notion of a derivative for real valued functions which is continuous with respect to a reasonable topology for these functions?

5 Dini’s Four Derivates of a Function (1890) Upper right derivate at x Upper left derivate at x Lower right derivate at x Lower left derivate at x Clearly, f is differentiable at x iff its four derivates are equal, the common value will then be the derivative of f at x.

6Example

7 Interval Derivative Put The interval derivative of f: [c,d]  R is defined as Let IR={ [a,b] | a, b  R}  {R} and consider (IR,  ) with R as bottom. if both limits are finite otherwise

8Example with f(0)=0 We have already seen that We have Thus

9 Interval-Limit of Functions Let and be any extended real-valued function. Then The interval limit of f is defined as

10Examples

11 Interval-limit of Interval-valued Functions Let and be extended real-valued functions with. Consider the interval-valued function The interval-limit of f is now defined as

12 Continuity of the Interval Derivative Corollary. The interval derivative of f: [c,d]  R is Scott continuous. Theorem. Given any the interval limit is Scott continuous.

13 Computational Content of the Interval Derivative Definition. (AE/AL in LICS’02) We say f: [c,d]  R has interval Lipschitz constant in an open interval if The set of all functions with interval Lipschitz constant b at a is called the tie of a with b and is denoted by. Theorem. For f: [c,d]  R we have: Recall the definition of single-step function

14 Fundamental Theorems of Calculus Continuous function versus continuously differentiable function for continuous f for continuously differentiable F Lebesgue integrable function versus absolutely continuous function for any Lebesgue integrable f iff F is absolutely continuous

15 Locally Lipschitz functions A map f: (c,d)  R is locally Lipschitz if it is Lipschitz in a neighbourhood of each. The interval derivative induces a duality between locally Lipschitz maps versus bounded integral functions and their interval limits. The interval derivative of a locally Lipschitz map is never bottom: A locally Lipschitz map f is differentiable a.e. and

16 Primitive of a Scott Continuous Map Given Scott continuous is there with In other words, does every Scott continuous function has a primitive with respect to the interval derivative? For example, is there a function f with ?

17 Total Splittings of Intervals A total splitting of [0,1] is given by disjoint measurable subsets A, B with such that for any interval we have: where is the Lebesgue measure. It follows that A and B are both dense with empty interior. Non-example:

18 Construction of a Total Splitting Construct a fat Cantor set in [0,1] with 01 In the open intervals in the complement of construct countably many Cantor sets with In the open intervals in the complement of construct Cantor sets with. Continue to construct with Put

19 Primitive of a Scott Continuous Function To construct with for a given Take any total splitting (A,B) of [0,1] and put Theorem.

20 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

22 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

23 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

24 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.

25 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

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

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

28 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]

29 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 ?

30 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 )}

31 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 )}

32 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.

33  (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

34 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.

35Example  ([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}

36 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 ⊑

37 Examples

38 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|} : [0,1]  IR g : x  {–|x|} : [0,1]  IR ( f+g ) (0)  (0) + (0)

39 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 x 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.

40 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 ⊑ ° 

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

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

43 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

44 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).

45 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

46 f 1 1 Function and Derivative Information g 1 2

47 f 1 1Updating g 1 2

48 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 + ].

49 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).

50 f 1 1 Updating Algorithm g 1 2

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

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

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

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

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

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

57 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)

58 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

59 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

60 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 ) }

61 Domains of C k functions D k := { (f i ) 0  i  k  (I[0,1]  IR) k+1 | Cons (f i ) 0  i  k } D := { (f k ) k  0  ( I[0,1]  IR) ω |  k  0. (f i ) 0  i  k  D k } ∞ (i) Let (f i ) 0  i  k  (I[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.

62 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.

63 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 ).

64 Up ⃘ Ap v : (f,g)  ( t. (x 0 +  g dt, t. v(t,f(t))) 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(t) dt), 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)))

65 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 + (y) ] Thus, on basis elements strong consistency is decidable. A domain-theoretic Picard’s theorem

66 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) ) )

67 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 ]

68 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) ) )

69Example 1 f g 1 1 1 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.

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

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

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

73 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.

75 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!

76 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.

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

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

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

80 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

81 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

82 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.

83 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

84 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.

85 Intersection of two 3D cubes

86 Intersection of two 3D cubes

87 Intersection of two 3D cubes

88 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.

89 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.

90 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.

91 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.

92 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:

93 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.

94Examples 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.

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

96 Subset Inclusion Subset inclusion is Scott continuous. Let

97 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.

98 (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 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) ) )

99 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.

100 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.

101 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.

102 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 | 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

103 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.

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

105 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.

106 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

107 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.

108 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

109Conclusion 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

110 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

111 The Outer Convex Hull Algorithm

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

113 The Convex Hull Algorithm

114 The Convex Hull Algorithm

115 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) | y  (R 2 ) m, y i  T i, 1  i  m} I m (x):=  {H m (y) | 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.

116 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.

117 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.

118 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.

119 Partial Perpendicular Bisector of Two Partial Points

120 PPBs for Three Partial Points Partial Centre

121 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.

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

123 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 which is m log m on average.

124 Current and Further Work Let IR={ [a,b] | a, b  R}  {R} (IR,  ) equipped with the Scott topology is a continuous Scott domain with R as bottom.

125 THE END http://www.doc.ic.ac.uk/~ae http://www.doc.ic.ac.uk/~ae

Similar presentations

Ads by Google