
Partially Ordered Sets Background for Program Analysis Wednesday, November 14, 2007 1 Partial ordering • A partial ordering is a relation: : L L true, false ! × → { } • that is: reflexive: l : l l • ∀ " transitive: l1, l2, l3 : l1 l2 l2 l3 l1 l3 • ∀ " ∧ " ⇒ " anti-symmetric: l1, l2 : l1 l2 l2 l1 l1 = l2 • ∀ " ∧ " ⇒ Wednesday, November 14, 2007 2 Partially ordered set A partially ordered set (L, ) • ! is a set L equipped with a partial ordering ! l2 l1 l1 l2 • ! ≡ # l l l l l = l • 1 ! 2 ≡ 1 " 2 ∧ 1 $ 2 Wednesday, November 14, 2007 3 Bounds Y L has l L as an upper bound if • ⊆ ∈ l! Y : l! l ∀ ∈ # and l L as a lower bound if ∈ l! Y : l! l ∀ ∈ # Wednesday, November 14, 2007 4 Least upper bound • A least upper bound l of Y is an upper bound of Y that satisfies l l 0 whenever l 0 ! is another upper bound of Y • A subset Y need not have a least upper bound but if one exists then it is unique (since is anti-symmetric) ! • The least upper bound of Y is written Y l l l , l ! • 1 ! 2 ≡ { 1 2} ! Wednesday, November 14, 2007 5 Greatest lower bound • A greatest lower bound l of Y is a lower bound of Y that satisfies l0 l whenever l 0 ! is another lower bound of Y • A subset Y need not have a greatest lower bound but if one exists then it is unique (since is anti-symmetric) ! • The greatest lower bound of Y is written Y l l l , l ! • 1 ! 2 ≡ { 1 2} ! Wednesday, November 14, 2007 6 Complete lattice A complete lattice L = ( L , ) = ( L , , , , , ) • ! ! ⊥ # is a partially ordered set ( L , ) where all ! ! ! subsets have an lub and a glb = = L is the least element • ⊥ ∅ = ! = ! L is the greatest element • ! ∅ ! ! Wednesday, November 14, 2007 7 Example • For some set S ! ≡ ⊆ Y = Y L = ( (S), ) ! Y = " Y P ⊆ ⇒ ! = # ⊥ ∅ = S & ! ≡ ⊇ Y = Y L = ( (S), ) ! Y = " Y P ⊇ ⇒ ! = #S ⊥ = % ∅ both are complete lattices Wednesday, November 14, 2007 8 Example 1 S = 1, 2, 3 { } 1, 2, 3 { } ∅ 1, 2 1, 3 2, 3 1 2 3 { } { } { } { } { } { } 1 2 3 1, 2 1, 3 2, 3 { } { } { } { } { } { } 1, 2, 3 ∅ { } L = ( (S), ) L = ( (S), ) P ⊆ P ⊇ Wednesday, November 14, 2007 9 Lemma 2 For a partially ordered set L = ( L , ) the claims: ! (i) L is a complete lattice (ii) every subset of L has a lub (iii) every subset of L has a glb are equivalent Wednesday, November 14, 2007 10 Proof Clearly, (i) implies (ii) and (iii). To show that (ii) implies (i) let Y L and define ⊆ Y = l L l! Y : l l! { ∈ | ∀ ∈ # } Now, pro!ve this! defines a glb: RHS set elements are all lbs so the equation defines a lb. Since any lb will be in the set it follows that the equation defines the glb. Similarly, for Y = l L l! Y : l! l { ∈ | ∀ ∈ # } Wednesday, November 14, 2007 ! ! 11 Moore family • A Moore family is a subset Y of a complete lattice L = ( L , ) that is closed under glbs: ! Y ! Y : Y ! Y ∀ ⊆ ∈ • Thus, a Moore family! always contains a least element, Y , and a greatest element, , ∅ which equals the greatest element, , from L ! ! ! • A Moore family is never empty Wednesday, November 14, 2007 12 Example 3 Consider the complete lattice L = ( (S), ) P ⊆ S = 1, 2, 3 { } 1, 2, 3 2 , 1, 2 , 2, 3 , 1, 2, 3 { } {{ } { } { } { }} , 1, 2, 3 1, 2 1, 3 2, 3 {∅ { }} { } { } { } are both Moore families 1 , 2 1 2 3 {{ } { }} { } { } { } , 1 , 2 , 1, 2 {∅ { } { } { }} are not Moore families ∅ Wednesday, November 14, 2007 13 Properties of functions A function f : L L between posets • 1 → 2 L = ( L , ) and L = (L , ) 1 1 !1 2 2 !2 is onto if l2 L2 : l1 L1 : f(l1) = l2 • ∀ ∈ ∃ ∈ is 1-1 if l, l! L : f(l) = f(l!) l = l! • ∀ ∈ 1 ⇒ is monotone if l, l! L : l l! f(l) f(l!) • ∀ ∈ 1 #1 ⇒ #2 is additive if l , l L : f(l l ) = f(l ) f(l ) • ∀ 1 2 ∈ 1 1 # 2 1 # 2 is multiplicative if • l , l L : f(l l ) = f(l ) f(l ) ∀ 1 2 ∈ 1 1 # 2 1 # 2 Wednesday, November 14, 2007 14 Properties of functions • The function f is completely additive if for all Y L : ⊆ 1 f ( Y ) = f ( l ! ) l! Y 1 2{ | ∈ } ! ! whenever 1 Y exists It is completely! multiplicative if for all Y L : • ⊆ 1 f( Y ) = f(l!) l! Y 1 2{ | ∈ } ! ! whenever 1 Y exists ! Wednesday, November 14, 2007 15 Properties of functions Y • Clearly 1 and 1 Y exist when L 1 is a complete lattice ! ! • When L 2 is not a complete lattice the above statements also require the appropriate lubs and glbs to exist in L2 The function is affine if for all Y L , Y = • ⊆ 1 " ∅ f( Y ) = f(l!) l! Y 1 2{ | ∈ } whenever! Y exists! (and Y = ) 1 ! ∅ Wednesday, November 14, 2007 ! 16 Properties of functions The function is affine if for all Y L , Y = • ⊆ 1 " ∅ f( Y ) = f(l!) l! Y 1 2{ | ∈ } whenever! Y exists! (and Y = ) 1 ! ∅ The function! is strict if f( 1) = 2 • ⊥ ⊥ • Note that a function is completely additive iff it is both affine and strict Wednesday, November 14, 2007 17 Lemma 4 If L = ( L , , , , , ) and M = ( M , , , , , ) ! " # ⊥ % ! " # ⊥ % are complete lattices and M is finite then the three conditions: (i) γ : M L is monotone → (ii) γ ( ) = , and ! ! (iii) γ ( m 1 m 2 ) = γ ( m 1 ) γ ( m 2 ) whenever ! ! m m m m 1 !" 2 ∧ 2 !" 1 are jointly equivalent to γ : M L being completely multiplicative → Wednesday, November 14, 2007 18 Proof First note that if γ is completely multiplicative then all three conditions hold. For the converse note that by monotonicity of γ we have γ ( m 1 m 2 ) = γ ( m 1 ) γ ( m 2 ) also when m m m ! m ! 1 ! 2 ∨ 2 ! 1 By induction on the (finite) cardinality of M ! M ⊆ we prove that γ( M !) = γ(m) m M ! { | ∈ } ! ! Wednesday, November 14, 2007 19 If the cardinality of M !is 0 then the equation follows from (ii). If the cardinality of M !is larger than 0 then we write M ! = M !! m !! where m ! ! M !! ∪ { } !∈ to ensure that the cardinality of M !! is strictly less than that of M ! ; hence: γ( M !) = γ(( M !!) m!!) ! ! = γ( !M !!) γ(m!!) ! = ( !γ(m) m M !! ) γ(m!!) { | ∈ } ! = !γ(m) m M ! { | ∈ } Wednesday, November 14, 2007 20 Lemma 5 A function f : ( ( D ) , ) ( ( E ) , ) is affine iff P ⊆ → P ⊆ there exists a function ϕ : D ( E ) and an → P element ϕ ( E ) such that ∅ ∈ P f(Y ) = ϕ(d) d Y ϕ { | ∈ } ∪ ∅ ! The function f is completely additive iff additionally ϕ = ∅ ∅ Wednesday, November 14, 2007 21 Proof Suppose f is as displayed and assume = ; then Y ! ∅ f(Y ) Y = ϕ(d) d Y ϕ Y { | ∈ Y} { { | ∈ } ∪ ∅ | ∈ Y} ! = ! ! ϕ(d) d Y Y ϕ { { | ∈ } | ∈ Y} ∪ ∅ = ! ϕ!(d) d ϕ { | ∈ Y} ∪ ∅ = f!( ) ! Y ! showing that f is affine. Wednesday, November 14, 2007 22 Next, suppose that f is affine and define ϕ ( d ) = f ( d ) { } and ϕ = f ( ) . For Y ( D ) let = d d Y ∅ ∅ ∈ P Y {{ } | ∈ } ∪ {∅} and note that Y = and = . Then Y Y ! ∅ f(Y ) = f( ! ) Y = !( f( d ) d Y f( ) ) { { } | ∈ } ∪ { ∅ } = !( ϕ(d) d Y ϕ ) { | ∈ } ∪ { ∅} = ! ϕ(d) d Y ϕ { | ∈ } ∪ ∅ ! so f can be written in the required form. Completely additive follows straightforwardly. Wednesday, November 14, 2007 23 Isomorphism An isomorphism from a poset ( L 1 , 1 ) to a ! poset ( L , ) is a monotone function θ : L L 2 !2 1 2 such that there exists a (necessarily unique)→ 1 1 monotone function θ − : L 2 L 1 with θ θ − = i d 2 1 → ◦ and θ − θ = i d (where i d i is the identity ◦ 1 function over L i , i = 1 , 2 . Wednesday, November 14, 2007 24 Construction of Complete Lattices • Complete lattices can be combined to construct new complete lattices. • Cartesian product • Total function space • Monotone function space Wednesday, November 14, 2007 25 Cartesian Product Let L = ( L , ) and L = ( L , ) be posets. 1 1 !1 2 2 !2 Define L = ( L , ) = L L by ! 1 × 2 L = (l1, l2) l1 L1 l2 L2 and (l , l ) {(l , l |) iff∈l ∧ l ∈ l } l 11 21 ! 12 22 11 ! 12 ∧ 21 ! 22 It is then straightforward to verify that L is a poset. If additionally each L = ( L , , , , , ) i i !i "i #i ⊥i %i is a complete lattice then so is L = ( L , , , , , ) ! " # ⊥ % and furthermore Y = ( l l : (l , l ) Y , l l : (l , l ) Y ) 1{ 1 | ∃ 2 1 2 ∈ } 2{ 2 | ∃ 1 1 2 ∈ } ! ! ! and = ( 1 , 2 ) and similarly for Y and . Wednesday, November 14, 20⊥07 ⊥ ⊥ ! ! 26 Total function space Let L = ( L , ) be a poset and let S be a set. 1 1 !1 Define L = ( L , ) = S L by ! → 1 L = f : S L f is a total function and { → 1 | } f f ! iff s S : f(s) f !(s) ! ∀ ∈ !1 It is then straightforward to verify that L is a poset. If additionally L 1 = ( L 1 , 1 , 1 , 1 , 1 , 1 ) ! " # ⊥ % is a complete lattice then so is L = ( L , , , , , ) ! " # ⊥ % and furthermore Y = λ s . f ( s ) f Y 1{ | ∈ } and = λ s . and similarly for Y and . ⊥ ⊥1 ! ! ! ! Wednesday, November 14, 2007 27 Monotone function space Let L = ( L , ) and L = ( L , ) be posets. 1 1 !1 2 2 !2 Define L = ( L , ) = L L by ! 1 → 2 L = f : L L f is a monotone function and { 1 → 2 | } f f ! iff l1 L1 : f(l1) 2 f !(l1) It is then !straightf∀orwar∈ d to verify! that L is a poset.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages25 Page
-
File Size-