580 likes | 709 Views
Week 7 - Monday. CS322. Last time. What did we talk about last time? Sets. Questions?. Logical warmup. A man offers you a bet He shows you three cards One is red on both sides One is green on both sides One is red on one side and green on the other
E N D
Week 7 - Monday CS322
Last time • What did we talk about last time? • Sets
Logical warmup • A man offers you a bet • He shows you three cards • One is red on both sides • One is green on both sides • One is red on one side and green on the other • He will put one of the cards, at random, on the table • If you can guess the color on the other side, you win • If you bet $100 • You gain $125 on a win • You lose your $100 on a loss • Should you take the bet? Why or why not?
Set operations • We usually discuss sets within some superset U called the universe of discourse • Assume that A and B are subsets of U • The union of A and B, written A B is the set of all elements of U that are in either AorB • The intersection of A and B, written A B is the set of all elements of U that are in AandB • The difference of B minus A, written B – A, is the set of all elements of U that are in B and not in A • The complement of A, written Ac is the set of all elements of U that are not in A
Examples • Let U = {a, b, c, d, e, f, g} • Let A = {a, c, e, g} • Let B = {d, e, f, g} • What are: • A B • A B • B – A • Ac
The empty set • There is a set with no elements in it called the empty set • We can write the empty set { } or • It comes up very often • For example, {1, 3, 5} {2, 4, 6} = • The empty set is a subset of every other set (including the empty set)
Disjoint sets and partitions • Two sets A and B are considered disjoint if A B = • Sets A1, A2, … An are mutually disjoint (or nonoverlapping) if Ai Aj = for all i j • A collection of nonempty sets {A1, A2, … An} is a partition of set Aiff: • A = A1 A2 … An • A1, A2, … An are mutually disjoint
Power set • Given a set A, the power set of A, writtenP(A) or 2A is the set of all subsets of A • Example: B = {1, 3, 6} • P(B) = {, {1}, {3}, {6}, {1,3}, {1,6}, {3,6}, {1,3,6}} • Let n be the number of elements in A, called the cardinality of A • Then, the cardinality of P(A) is 2n
Cartesian product • An ordered n-tuple (x1, x2, … xn) is an ordered sequence of n elements, not necessarily from the same set • The Cartesian product of sets A and B, written A x B is the set of all ordered 2-tuples of the form (a, b), a A, b B • Thus, (x, y) points are elements of the Cartesian product R x R (sometimes written R2)
Basic subset relations • Inclusion of Intersection: • For all sets A and B • A B A • A B B • Inclusion in Union: • For all sets A and B • A A B • B A B • Transitive Property of Subsets: • If A B and B C, then A C
Element argument • The basic way to prove that X is a subset of Y • Suppose that x is a particular but arbitrarily chosen element of X • Show that x is an element of Y • If every element in X must be in Y, by definition, X is a subset of Y
Procedural versions • We want to leverage the techniques we've already used in logic and proofs • The following definitions help with this goal: • x X Y x X x Y • x X Y x X x Y • x X – Y x X x Y • x Xc x X • (x, y) X Y x X y Y
Example proof Theorem: For all sets A and B, A B A Proof: • Let x be some element in A B • x A x B • x A • Thus, all elements in A B are in A • A B A QED • Premise • Definition of intersection • Specialization • By generalization • Definition of subset
Proving set equivalence • To prove that X = Y • Prove that X Y and • Prove that Y X
Example proof of equivalence Theorem: For all sets A,B, and C, A (B C) = (A B) (A C) Proof: • Let x be some element in A (B C) • x A x (B C) • Case 1: Let x A • x A x B • x A B • x A x C • x A C • x A B x A C • x (A B) (A C) • Case 2: Let x B C • x B x C • x B • x A x B • x A B • x C • x A x C • x A C • x A B x A C • x (A B) (A C) • In all possible cases, x (A B) (A C), thus A (B C) (A B) (A C)
Proof of equivalence continued • Let x be some element in (A B) (A C) • x (A B) x (A C) • Case 1: Let x A • x A x B C • x A (B C) • Case 2: Let x A • x A B • x A x B • x B • x A C • x A x C • x C • x B x C • x B C • x A x B C • x A (B C) • In all possible cases, x A (B C), thus (A B) (A C) A (B C) • Since both A (B C) (A B) (A C) and (A B) (A C) A (B C), A (B C) = (A B) (A C) QED
Proof example • Prove that, for any set A, A = • Hint: Use a proof by contradiction
Disproving a set property • Like any disproof for a universal statement, you must find a counterexample to disprove a set property • For set properties, the counterexample must be a specific examples of sets for each set in the claim
Counterexample example • Claim: For all sets A, B, and C, (A – B) (B – C) = A – C • Find a counterexample
Algebraic set identities • We can use the laws of set identities given before to prove a statement of set theory • Be extremely careful (even more careful than with propositional logic) to use the law exactly as stated
Algebraic set identity example Theorem:A – (A B) = A – B Proof: • A – (A B) = A (A B) c • = A (Ac B c) • =(A Ac) (A B c) • = (A B c) • = A B c • = A – B QED
Prove or disprove • For all sets A, B, and C, if AB and BC, then AC
Prove or disprove • For all sets A and B, ((Ac Bc) – A)c = A
Naïve set theory • Set theory is a slippery slope • We are able to talk about very abstract concepts • { x Z | x is prime } • This is a well-defined set, even though there are an infinite number of primes and we don't know how to find the nth prime number • Without some careful rules, we can begin to define sets that are not well-defined
Barber Paradox • Let a barber be the man in Elizabethtown who shaves the men in Elizabethtown if and only if they don't shave themselves. • Let T be the set of all men in Elizabethtown • Let B(x) be "x is a barber" • Let S(x,y) be "x shaves y" • b T m T (B(b) (S(b,m) ~S(m,m))) • But, who shaves the barber?
Russell's Paradox • Bertrand Russell invented the Barber Paradox to explain to normal people a problem he had found in set theory • Most sets are not elements of themselves • So, it seems reasonable to create a set S that is the set of all sets that are not elements of themselves • More formally, S = { A | A is a set and A A } • But, is S an element of itself?
Escaping the paradox • How do we make sure that this paradox cannot happen in set theory? • We can make rules about what sets we allow in or not • The rule that we use in class is that all sets must be subsets of a defined universe U • Higher level set theory has a number of different frameworks for defining a useful universe
Applying the idea again • It turns out that the idea behind Russell's Paradox actually has practical implications • It wasn't new, either • Cantor had previously used a diagonal argument to show that there are more real numbers than rational numbers • But, unexpectedly, Turing found an application of this idea for computing
Turing machine • A Turing machine is a mathematical model for computation • It consists of a head, an infinitely long tape, a set of possible states, and an alphabet of characters that can be written on the tape • A list of rules saying what it should write and should it move left or right given the current symbol and state A
Church-Turing thesis • If an algorithm exists, a Turing machine can perform that algorithm • In essence, a Turing machine is the most powerful model we have of computation • Power, in this sense, means the ability to compute some function, not the speed associated with its computation
Halting problem • Given a Turing machine and input x, does it reach the halt state? • First, recognize that we can encode a Turing machine as input for another Turing machine • We just have to design a system to describe the rules, the states, etc. • We want to design a Turing machine that can read another
Halting problem problems • Imagine we have a Turing machine H(m,x) that takes the description of another Turing machine m and its input x and returns 1 if m halts on input x and 0 otherwise • Now, construct a machine H’(m,x) that runs H(m,x), but, if H(m,x) gives 1, then H’(m,x) infinitely loops, and, if H(m,x) gives 0, then then H’(m,x) returns 1 • Let’s say that d is the description of H’(m,x) • What happens when you run H’(d,d)?
Halting problem conclusion • Clearly, a Turing machine that solves the halting problem doesn’t exist • Essentially, the problem of deciding if a problem is computable is itself uncomputable • Therefore, there are some problems (called undecidable) for which there is no algorithm • Not an algorithm that will take a long time, but no algorithm • If we find such a problem, we are stuck • …unless someone can invent a more powerful model of computation
And it gets worse! • Gödel used diagonalization again to prove that it is impossible to create a consistent set of axioms that can prove everything about the set of natural numbers • As a consequence, you can create a system that is complete but not consistent • Or, you can create a system that is consistent but not complete • Either way, there are principles in math in general that are true but impossible to prove, at least with any given system • You might as well give up on math now
Definitions • A function f from set X to set Y is a relation between elements of X (inputs) and elements of Y (outputs) such that each input is related to exactly one output • We write f: X Y to indicate this • X is called the domain of f • Y is called the co-domain of f • The range of f is { y Y | y = f(x), for some x X} • The inverse image of y is { x X | f(x) = y }
Examples • Using standard assumptions, consider f(x) = x2 • What is the domain? • What is the co-domain? • What is the range? • What is f(3.2)? • What is the inverse image of 4? • Assume that the set of positive integers is the domain and co-domain • What is the range? • What is f(3.2)? • What is the inverse image of 4?
Arrow diagrams • With finite domains and co-domains, we can define a function using an arrow diagram • What is the domain? • What is the co-domain? • What are f(a), f(b), and f(c)? • What is the range? • What are the inverse images of 1, 2, 3, and 4? • Represent f as a set of ordered pairs X f Y 1 2 3 4 a b c
Functions? • Which of the following are functions from X to Y? X f Y 1 2 3 4 a b c X g Y X h Y 1 2 3 4 1 2 3 4 a b c a b c
Function equality • Given two functions f and g from X to Y, • f equals g, written f = g, iff: • f(x) = g(x) for all xX • Let f(x) = |x| and g(x) = • Does f = g? • Let f(x) = x and g(x) = 1/(1/x) • Does f = g?
Applicability of functions • Functions can be defined from any well-defined set to any other • There is an identity function from any set to itself • We can represent a sequence as a function from a range of integers to the values of the sequence • We can create a function mapping from sets to integers, for example, giving the cardinality of certain sets
Logarithms • You should know this already • But, this is the official place where it should be covered formally • There is a function called the logarithm with base b of x defined from R+ to R as follows: • logbx = y by = x
Functions defined on Cartesian products • For a function of multiple values, we can define its domain to be the Cartesian product of sets • Let Sn be strings of 1's and 0's of length n • An important CS concept is Hamming distance • Hamming distance takes two binary strings of length n and gives the number of places where they differ • Let Hamming distance be H: Sn x Sn Znonneg • What is H(00101, 01110)? • What is H(10001, 01111)?