
« Mathematical foundations: (1) Naïve set theory » Patrick Cousot Jerome C. Hunsaker Visiting Professor Massachusetts Institute of Technology Department of Aeronautics and Astronautics cousot mit edu www.mit.edu/~cousot Course 16.399: “Abstract interpretation” Georg F. Cantor http://web.mit.edu/afs/athena.mit.edu/course/16/16.399/www/ Reference [1] Cantor, G., 1932, “Gesammelte Abhandlungen mathematischen und philosohischen Inhalts”, E. Zermelo, Ed. Berlin: Springer-Verlag. Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—1—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—3—[] ¨ — £££I ľ P. Cousot, 2005 Set theory –Innaïve set theory everything is a set, including the empty set ;; So any collection of objects can be re- garded as a single entity (i.e. a set) Sets –Aset is a collection of elements which are sets (but sets in sets in sets . cannot go for ever); – In practice one consider a universe of objects (which are not sets and called atoms) out of which are built sets of objects, set of sets of objects, etc. §x Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—2—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—4—[] ¨ — £££I ľ P. Cousot, 2005 Membership Additional notations are as follows: def – a 2 x means that the object a belongs to/is an element P _ Q = :((:P ) ^ (:Q)) “P or Q” def of the set x P =) Q =(:P ) _ Q “P implies Q” def – a 62 x means that the object a does not belong to/is P () Q =(P =) Q) ^ (Q =) P ) “P iff 1Q” def not an element of the set x: P _ Q =(P _ Q) ^:(P ^ Q) “P exclusive or Q” def def (a 62 x) = :(a 2 x) 9x : P = :(8x :(:P )) “there exists x such that P ” def 9a 2 S : P = 9a : a 2 S ^ P def 9a1;a2;:::;an 2 S : P = 9a1 2 S : 9a2;:::;an 2 S : P def 8a 2 S : P = 8a :(a 2 S)=) P def 8a1;a2;:::;an 2 S : P = 8a1 2 S : 8a2;:::;an 2 S : P 1 if and only if Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—5—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—7—[] ¨ — £££I ľ P. Cousot, 2005 Logical symbols Comparison of sets If P , Q, . are logical statements about sets, then we def use the following abbreviations: x „ y = 8a :(a 2 x =) a 2 y) inclusion def – P ^ Q abbreviates “P and Q” x « y = y „ x superset def – :P abbreviates “not P ” x = y =(x „ y) ^ (y „ x) equality def – 8x : P abbreviates “forall x, P ” x 6= y = :(x = y) inequality def x y =(x „ y) ^ (x 6= y) strict inclusion def x ff y =(x « y) ^ (x 6= y) strict superset Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—6—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—8—[] ¨ — £££I ľ P. Cousot, 2005 Operations on sets Set theoretic laws Intuition provided by Venn diagrams but better proved def (z = x [ y) = 8a :(a 2 z) , (a 2 x _ a 2 y) union formally from the definitions. def x [ x = x (z = x \ y) = 8a :(a 2 z) , (a 2 x ^ a 2 y) intersection x \ x = x def (z = x n y) = 8a :(a 2 z) , (a 2 x ^ a 62 y) difference x „ x [ y upper bound x \ y „ x lower bound x [ y = y [ x commutativity x \ y = y \ x (x „ z) ^ (y „ z)=) (x [ y) „ z lub 2 (z „ x) ^ (z „ y)=) z „ (x \ y) glb 3 2 lub: least upper bound. 3 glb: greatest lower bound Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—9—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—11—[] ¨ — £££I ľ P. Cousot, 2005 Partial order x [ (y [ z)=(x [ y) [ z associativity „ is a partial order in that: x \ (y \ z)=(x \ y) [ z x [ (y \ z)=(x [ y) \ (x [ z) distributivity x „ x reflexivity x \ (y [ z)=(x \ y) [ (x \ z) (x „ y ^ y „ x)=) (x = y) antisymetry x „ y () (x [ y)=y (x „ y) ^ (y „ z)=) (x „ z) transitivity (x \ y)=x x n y = x n (x \ y) is a strict partial order in that: z n (z n x)=x x „ y () (z n y) „ (z n x) :(x x) irrreflexivity x [ (z n x)=z (x y) ^ (y z)=) (x z) transitivity z n (x [ y)=(z n x) \ (z n y) z n (x \ y)=(z n x) [ (z n y) Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—10—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—12—[] ¨ — £££I ľ P. Cousot, 2005 Empty set – 8a :(a 62;) Definition of the empty set – The emptyset is unique 4. – Emptyset laws: Operations on set x n;= x ;„x x n x = ; x [; = x x \ (y n x)=; x \; = ; 4 [8a:(a 62 x)] =) [(8a :(a 62 x)=) (a 62;)) ^ (8a :(a 62;)=) (a 62 x))] =) [(8a :(a 2;)=) (a 2 x)) ^ (8a :(a 2 x)=) (at 2;))] =) [;„x ^ x „;]=) [x = ;]. Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—13—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—15—[] ¨ — £££I ľ P. Cousot, 2005 Notations for sets Pairs def – Definitions in extension: – ha; bi = ffag; fa; bgg 5 - ; Empty set – ha; bi1 = a first projection 6 - fag Singleton – ha; bi2 = b second projection - fa; bg Doubleton (a 6= b) – x0, x1 undefined for non-pairs - fa1;:::;ang Finite set - fa1;:::;an;:::g Infinite set – Definition in comprehension: - fa j P (a)g Examples: x [ y = fa j a 2 x _ a 2 yg ST ST S 5 def x \ y = fa j a 2 x ^ a 2 yg Other notationsS are ha;T bi:1, ha; bi#1,... Formally ha; bi1 SS= ha; bi SS= ffag; Sfa; bgg = fag = a. 6 def SFormally, ifT ha; bi = ha; bi then a = b whence ha; bi2 = S hSa; bi = Tffbgg = fSbgS= b.Otherwise x n y = fa j a 2 x ^ a 62 yg def T ha; bi 6= ha; bSi thatS is a 6= b,inwhichcaseS ha; bi2 = ( ha; bin ha; bi)= ( ffag; fa; bgg n ffag; fa; bgg)= ( fa; bgnfag)= fbg = b. Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—14—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—16—[] ¨ — £££I ľ P. Cousot, 2005 Tuples Powerset def def – }(x) = fy j y „ xg powerset – ha1; :::; an+1i = hha1; :::; ani;an+1i tuple S def – y def= a x y : a x Union – ha1; :::; anii = ai i =1;:::;n projection f j9 2 2 g T def –Law: – y = fa j8x 2 y : a 2 xg Intersection 0 0 0 0 ha1; :::; ani = ha1; :::; ani,a1 = a1^:::^an = an –Laws: [ \ x [ y = fx; yg fxg = x \ [ x \ y = fx; yg ; = ; [ \ fxg = x ; = fa j trueg Universe Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—17—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—19—[] ¨ — £££I ľ P. Cousot, 2005 Cartesian product Families (indexed set of sets) def – x ˆ y = fha; bija 2 x ^ b 2 yg – x = fyi j i 2 Ig I indexing set for the elements of x S def S def – y = x – x1 ˆ :::ˆ xn+1 =(x1 ˆ :::ˆ xn) ˆ xn+1 so i2I i = fa j9i 2 I : a 2 yig x1 ˆ:::ˆxn = fha1; :::; anija1 2 x1 ^:::^an 2 xng T T n def – y def= x – x = |x ˆ :::{z ˆ x} i2I i n times = fa j8i 2 I : a 2 yig def –Laws: [ – x0 = ; 8i 2 I :(xi „ y)=) ( xi „ y) i2I \ 8i 2 I :(y „ xi)=) (y „ xi) i2I Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—18—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—20—[] ¨ — £££I ľ P. Cousot, 2005 [ [ [ Relations (xi [ yi)=( xi) [ ( yi) – r „ x unary relation on x i\2I i\2I i\2I – r „ x ˆ y binary relation (xi \ yi)=( xi) \ ( yi) i2[I i[2I i2I – r „ x1 ˆ :::ˆ xn n-ary relation (xi \ y)=( (xi) \ y – Graphical representation of a relation r on a finite set i\2I i\2I x: (xi [ y)=( (xi) [ y r i2I [ [i2I z n xi = (z n xi) › elements of the set x i\2I i\2I a b z n xi = (z n xi) ›`!› ha; bi2r i2I i2I Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—21—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—23—[] ¨ — £££I ľ P. Cousot, 2005 Notations for relations –Ifr „ x1 ˆ :::ˆ xn then we use the notation: def r(a ;:::;a ) = ha ; :::; a i2r Relations 1 n 1 n – In the specific case of binary relation, we also use: def arb = ha; bi2r example: 5 » 7 r def a `! b = ha; bi2r Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—22—[] ¨ — £££I ľ P. Cousot, 2005 Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—24—[] ¨ — £££I ľ P. Cousot, 2005 Properties of binary relations Let r „ x ˆ x be a binary relation on the set x – 8a 2 x :(ara) reflexive – 8a; b 2 x :(arb) () (bra) symmetric Reflexive transitive closure – 8a; b 2 x :(arb^ a 6= b)=):(bra) antisymmetric – 8a; b 2 x :(a 6= b)=) (arb_ bra) connected – 8a; b; c 2 x :(arb) ^ (brc)=) (arc) transitive Course 16.399: “Abstract interpretation”, Tuesday March 1st, 2005 J¡¡¡—25—[] ¨ — £££I ľ P.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages31 Page
-
File Size-