Homework 7

[Note: this webpage last modified Tuesday, 29-Mar-2011 21:20:22 EDT]

This homework assignment is due before class starts on Thursday, March 31. Your solutions should be explained in complete sentences such that your classmates will understand the solution (and can verify your proofs are correct) even if they have not solved the problems themselves.

  1. HW Polices.

    1. Type your HW (in word, latex, text file, etc.) and send to me by email.

    2. Do NOT share electronically. You must type your own solutions. You can discuss the problems with each other, but you may only discuss them. You may not write out solutions together.

    3. You MAY NOT search the Internet, textbooks, etc. for solutions to the problems. The following are the ONLY sources of information that you may use in solving the problems: the textbook for this course, wikipedia articles on basic math/probability/etc., and mathematical review material at the following MIT opencourseware page: 6.042J / 18.062J Mathematics for Computer Science, Fall 2005. You may discuss the problems with each other and with myself, but must obey the previous item in doing so.

      If you do find the solution in one of these three sources, you still MUST cite the source in your document.

      You may use NOTHING ELSE that is online or other textbooks.

    4. You MAY NOT copy word-for-word from any source, even the three you are allowed to consult. If you feel it is necessary, you should put the quotation in quotes and provide a reference/citation.

  2. (-2 points if left blank) List who you collaborated with on this assignment, "none" if none.

  3. (5 Points) Randomized algorithm presentation. Choose some randomized algorithm that has not been covered in class, and has not been chosen by any of the other students. Study the randomized algorithm, write a description of the algorithm (including a proof/explanation of the running time and that it is correct with high probability), come and explain the algorithm to me outside of class, and you will present the algorithm to class sometime in the next few weeks.

    Note: you may use any source you want in finding and studying the algorithm.

    Algorithms chosen so far: min-cut, quick-sort, verifying matrix multiplication, bipartite matching, square root mod prime, list ranking, undirected path, perfect matching, closest pair,

  4. (5 Points) Compute each of the following probabilities and expectation, showing your work.

    (a) Expected number of hearts in your hand if you are dealt 5 cards at random out of a standard deck of 52 cards.

    (b) Probability of flipping 9 independent fair coins and getting at least 5 heads.

    (c) Probability of flipping 9 independent fair coins and getting exactly 5 heads.

    (d) Expected number of coins that are heads when flipping 9 independent fair coins.

    (e) Probability of flipping at most 3 heads when flipping n independent fair coins.

    (f) Suppose you are trying to estimate the number of satisfying assignments to a Boolean formula that has 1000 variables. You compute your estimate by choosing K assignments to the variables at random, plug each in to determine how many satisfy the formula (call that number S), and your estimate of the number of satisfying assignments is 21000 * S/K. Relate the expected value of your estimate to the true value.

    (g) Use Markov's inequality to give a bound on the probability that your estimate in part (f) is 1.5 times larger than the true value.

    (h) Use the Chernoff bound to give an bound on the probability your estimate in part (f) is 1.5 times larger than the true value.
    Note: the quality of the bound will depend on the whether the true number of satisfying assignments is large or small. If you let rho be (number of satisfying assignments)/21000, for what values of rho is the bound small?

  5. (Extra credit) None this time. Spend extra time working on your projects.