Partially Ordered Sets

Partially Ordered Sets

Appendix A Partially Ordered Sets Partially ordered sets and complete lattices play a crucial role in program analysis and in this appendix we shall summarise some of their properties. We review the basic approaches for how to construct complete lattices from other complete lattices and state the central properties of partially ordered sets satisfying the Ascending Chain and Descending Chain Conditions. We then review the classical results about least and greatest fixed points. A.l Basic Definitions Partially ordered set. A partial ordering is a relation ~: L x L ---+ { true,fa.lse} that is reflexive (i.e. Vl : l ~ l), transitive (i.e. Vh, l2, b : h ~ l2 A l2 ~ l3 ==> h ~ la), and anti-symmetric (i.e. Vh, h : h ~ l2 Ah ~ h ==> h = l2). A partially ordered set (L, ~) is a set L equipped with a partial ordering ~ (sometimes written ~L). We shall write h ;;;;) h for h ~ l2 and h C l2 for h ~ h A h =1- l2. A subset Y of L has l E L as an upper bound if Vl' E Y : l' ~ l and as a lower bound if Vl' E Y : l' ;;;;) l. A least upper bound l of Y is an upper bound of Y that satisfies l ~ lo whenever lo is another upper bound of Y; similarly, a greatest lower bound l of Y is a lower bound of Y that satisfies lo ~ l whenever lo is another lower bound of Y. Note that subsets Y of a partially ordered set L need not have least upper bounds nor greatest lower bounds but when they exist they are unique (since ~ is anti-symmetric) and they are denoted UY and nY, respectively. Sometimes U is called the join operator and n the meet operator and we shan write h u t2 for U{h, t2} and similarly h n b for n{h, b}. Complete lattice. A complete lattice L = (L, ~) = (L, ~. U, n, _1_, T) is a partially ordered set (L, ~) such that all subsets have least upper bounds 394 A Partially Ordered Sets {2,3} {3} {3} {2,3} (a) Figure A.l: Two complete lattices. as well as greatest lower bounds. Furthermore, _l = U0 = nL is the least element and T = n0 = U L is the greatest element. Example A.l If L = (P(S), ~)for some set S then ~ is ~ and UY = UY, nY = nY, j_ = 0 and T = s. If L = (P(S), 2) then ~ is 2 and UY = nY, nY = UY, j_ = s and T = 0. Hence (P(S), ~) as well as (P(S), 2) are complete lattices. In the case where S = {1, 2, 3} the two complete lattices are shown on Figure A.l; these draw­ ings are often called Hasse diagrams. Here a line "going upwards" from some h to some l2 means that h ~ l2; we do not draw lines that follow from reflexivity or transitivity of the partial ordering. • Lemma A.2 For a partially ordered set L = (L, ~) the claims (i) L is a complete lattice, (ii) every subset of L has a least upper bound, and (iii) every subset of L has a greatest lower bound are equivalent. • Proof Clearly (i) implies (ii) and (iii). To show that (ii) implies (i) let Y ~ L and define (A.l) and let us prove that this indeed defines a greatest lower bound. All the elements of the set on the right hand side of (A.l) are lower bounds of Y so clearly (A.l) defines a lower bound of Y. Since any lower bound of Y will be in the set it follows that (A.l) defines the greatest lower bound of Y. Thus (i) holds. A.l Basic Definitions 395 To show that (iii) implies (i) we define UY = n{l E L 1 Vl' E y : l' ~ l}. Arguments analogous to those above show that this defines a least upper bound and that (i) holds. • Moore family. A Moore family is a subset Y of a complete lattice L = (L, ~) that is closed under greatest lower bounds: VY' ~ Y: nY' E Y. It follows that a Moore family always contains a least element, nY, and a greatest element, n0, which equals the greatest element, T, from L; in particular, a Moore family is never empty. Example A.3 Consider the complete lattice (P(S), ~)of Figure A.l (a). The subsets {{2}, {1, 2}, {2, 3}, {1, 2, 3}} and {0, {1, 2, 3}} are both Moore families, whereas neither of { {1 }, {2}} and {0, {1 }, {2}, {1, 2}} are. • Properties of functions. A function f : L1 ~ L 2 between partially ordered sets L1 = (L1, ~1) and L2 = (L2, ~2) is surjective (or onto or epic) if and it is injective ( or 1-1 or manie) if Vl,l' E L1: f(l) = f(l')::::} l = l' The function f is monotone (or isotone or order-preserving) if \Il, l' E L1 : l ~1 l' ::::} f(l) ~2 f(l') It is an additive function (or a join morphism, sometimes called a distributive function) if and it is called a multiplicative function (ora meet morphism) if The function f is a completely additive function (or a complete join mor­ phism) if for all Y ~ L1: 396 A Partially Ordered Sets and it is completely multiplicative (or a complete meet morphism) if for all Y ~ L1: f(nlY) = n2{f(l') Il' E Y} whenever nly exists Clearly U1 Y and n1Y always exist when L1 is a complete lattice; when L2 is not a complete lattice the above statements also require the appropriate least upper bounds and greatest lower bounds to exist in L2 . The function f is affine if for all non-empty Y ~ L1 J(U lY) = u2{f(l') Il' E Y} whenever uly exists (and y-=!= 0) and it is strict if f(l_l) = 1_ 2 ; note that a function is completely additive if and only if it is both affine and strict. Lemma A.4 If L = (L, !;::;, u, n, 1_, T) and M = (M, !;::;, u, n, 1_, T) are complete lattices and M is finite then the three conditions (i) 'Y : M --+ L is monotone, (ii) 'Y(T) = T, and (iii) 1(m1 n m2) = 'Y(ml) n 1(m2) whenever m 1 g m2 1\ m2 g m 1 are jointly equivalent to 'Y : M --+ L being completely multiplicative. • Proof First note that if 'Y is completely multiplicative then (i), (ii) and (iii) hold. For the converse note that by monotonicity of"'( we have 7(m1nm2) = 1(m1)n"Y(m2) also when m1 [;;:; m2 V m2 [;;:; m1. We then prove by induction on the (finite) cardinality of M' ~ M that: (A.2) If the cardinality of M' is O then (A.2) follows from (ii). If the cardinality of M' is larger than O then we write M' = M" U {m"} where m" f:_ M"; this ensures that the cardinality of M" is strictly less than that of M'; hen ce: "Y((IlM") n m") "Y(I-IM") n 1(m") (1-1 {"Y(m) 1 m E M"}) n "Y(m") 1-lh(m) 1 m E M'} This proves the result. • Lemma A.5 A function f : (P(D), ~) --+ (P(E), ~) is affine if and only if there exists a function 'P : D --+ P(E) and an element 'P0 E P(E) such that f(Y) = U{'P(d) 1 dE Y} U 'P0 The function f is completely additive if and only if additionally 'P0 = 0. • A.2 Construction of Complete Lattices 397 Proof Suppose that f is of the form displayed and let Y be a non-empty set; Then UU(Y) 1 y E Y} u{u{'P(d) 1 dE Y} U 'P0 1 Y E Y} U{U{'P(d) 1 dE Y} 1 Y E Y} U 'P0 u{'P(d) 1 dE uY} u 'P0 f(UY) showing that f is affine. Next suppose that fis affine and define 'P(d) = f({d}) and 'P0 = !(0). For Y E P(D) let Y = {{d} 1 dE Y} U {0} and note that Y = UY and Y =10. Then J(Y) J(UY) u({f({d}) 1 dE Y} U {!(0)}) u({'P(d)) 1 dE Y} U {'P0}) u{'P(d) 1 dE Y} U 'P0 so f can be written in the required form. The additional statement about com­ pletely additivity is straightforward. • An isomorphism from a partially ordered set (L1, ~1) to a partially ordered set (L2, ~ 2 ) is a monotone function (} : L1 -t L2 such that there exists a (necessarily unique) monotone function o- 1 : L2 -t L1 with (}o o- 1 = id2 and o- 1 o(}= id1 (where idi is the identity function over Li, i = 1, 2). A.2 Construction of Complete Lattices Complete lattices can be combined to construct new complete lattices. We shall first see how to construct products and then two kinds of function spaces. Cartesian product. Let L1 = (L1. ~1) and L2 = (L2, ~2) be partially ordered sets. Define L = (L, ~) by and (ln, l21) ~ (h2, l22) iff ln ~1 h2 1\ h1 ~2 b It is then straightforward to verify that L is a partially ordered set. If ad­ ditionally each Li = (Li, ~i, Ui, ni, .li, Ti) is a complete lattice then so is L = (L, ~, U,n, .l, T) and furthermore 398 A Partially Ordered Sets and ..l = (..l1, ..l2) and similarly for nY and T. We often write L1 x L2 for L and call it the cartesian product of L1 and L2 .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    57 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us