230 likes | 387 Views
Basic Definitions of Set Theory. Lecture 23 Section 5.1 Wed, Mar 8, 2006. The Universal Set. Whenever we use sets, there must be a universal set U which contains all elements under consideration. Typical examples are U = R and U = N .
E N D
Basic Definitions of Set Theory Lecture 23 Section 5.1 Wed, Mar 8, 2006
The Universal Set • Whenever we use sets, there must be a universal set U which contains all elements under consideration. • Typical examples are U = R and U = N. • Without a universal set, taking complements of set is problematic.
Set Operations • Let A and B be set. • Define the intersection of A and B to be AB = {x U | x A and x B}. • Define the union of A and B to be A B = {x U | x A or x B}. • Define the complement of A to be Ac = {x U | xA}.
Set Operations • Notice that the set operations of intersection, union, and complement correspond to the boolean operations of and, or, and not.
Set Differences • Define the differenceAminusB to be A – B = {x U | x A and x B}. • Define the symmetric difference of A and B to be AB = (A – B) (B – A).
Set Differences • Do the operations of difference and symmetric difference correspond to boolean operations?
Subsets • A is a subset of B, written A B, if x A, x B. • AequalsB, written A = B, if x A, x B andx B, x A. • A is a proper subset of B, written A B, if x A, x B and x B, x A.
Sets Defined by a Predicate • Let P(x) be a predicate. • Define a set A = {x U | P(x)}. • For any x U, • If P(x) is true, then x A. • If P(x) is false, then xA. • A is the truth set of P(x).
Sets Defined by a Predicate • Two special cases. • What predicate defines the universal set? • What predicate defines the empty set?
Intersection and Union • Let P(x) and Q(x) be predicates and define • A = {x U | P(x)}. • B = {x U | Q(x)}. • Then the intersection of A and B is AB = {x U | P(x) Q(x)}. • The union of A and B is A B = {x U | P(x) Q(x)}.
Complements and Differences • The complement of A is Ac = {x U | P(x)}. • The differenceAminusB is A – B = {x U | P(x) Q(x)}. • The symmetric difference of A and B is AB = {x U | P(x) Q(x)}.
Subsets • A is a subset of B if • xU, P(x) Q(x), or • xA, Q(x). • A equals B if • xU, P(x) Q(x), or • xA, Q(x) and xB, P(x). • A is a proper subset of B if xA, Q(x) and xB, P(x).
Disjoint Sets • Sets A and B are disjoint if AB = . • A collection of sets A1, A2, …, An are mutually disjoint, or pairwise disjoint, if Ai Aj = for all i and j, with i j.
Examples • The following sets are mutually disjoint. • {0} • {1, 2, 3, …} = N+ • {-1, -2, -3, …} = N- • The following sets are mutually disjoint. • {…, -3, 0, 3, 6, 9, …} = {3k | kZ} • {…, -2, 1, 4, 7, 10, …} = {3k + 1 | kZ} • {…, -1, 2, 5, 8, 11, …} = {3k + 2 | kZ}
Partitions • A collection of sets {A1, A2, …, An} is a partition of a set A if • A1, A2, …, An are mutually disjoint, and • A1 A2 … An = A.
Examples • {{0}, {1, 2, 3, …}, {-1, -2, -3, …}} is a partition of Z. • {{…, -3, 0, 3, 6, …}, {…, -2, 1, 4, 7, …}, {…, -1, 2, 5, 11, …}} is a partition of Z.
Example • For each positive integer nN, define f(n) to be the number of distinct prime divisors of n. • For example, • f(1) = 0. • f(2) = 1. • f(4) = 1. • f(6) = 2.
Example • Define Ai = {nN | f(n) = i}. • Then A0, A1, A2, … is a partition of N (except that it is infinite). • Verify that • Ai Aj = for all i, j, with i j. • A0 A1 A2 … = N.
Power Sets • Let A be a set. The power set of A, denoted P(A), is the set of all subsets of A. • If A = {a, b, c}, then P(A) = {, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}}. • What is P()? • What is P(P())? • If A contains n elements, how many elements are in P(A)? • Prove it.
Cartesian Products • Let A and B be sets. Define the Cartesian product of A and B to be AB = {(a, b) | a A and b B}. • RR = set of points in the plane. • RRR = set of points in space. • What is A? • How many elements are in {1, 2} {3, 4, 5} {6, 7, 8}?
Representing Sets in Software • Given a universal set U of size n, there are 2n subsets of U. • Given an register of n bits, there are 2n possible values that can be stored. • This suggests a method of representing sets in memory.
Representing Sets in Software • For simplicity, we will assume that |U| 32. • Let U = {a0, a1, a2, …, an – 1}. • Using a 32-bit integer to represent a set S, let bit i represent the element ai. • If i = 0, then ai S. • If i = 1, then ai S. • For example, 10011101 represents the set S = {a0, a2, a3, a4, a7}.