1 / 10

Modular Arithmetic

Modular Arithmetic. Shirley Moore CS4390/5390 Fall 2013 http://svmoore.pbworks.com/ September 3, 2013 . Agenda. Complete pre-course survey if you haven’t already Discuss homework from last class (15 min) Homework 1 to turn in (due Sept. 12) (5 min)

trevor
Download Presentation

Modular Arithmetic

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modular Arithmetic Shirley Moore CS4390/5390 Fall 2013 http://svmoore.pbworks.com/ September 3, 2013

  2. Agenda • Complete pre-course survey if you haven’t already • Discuss homework from last class (15 min) • Homework 1 to turn in (due Sept. 12) (5 min) • Introduction to Matlab by Rogelio Long (40 min) • Modular arithmetic (15 min) • Wrap-up and preparation for next class (5 min)

  3. Technique of Proving NP-Completeness • Prove: If B is NP-complete, C is in NP, and B is polynomial time reducible to C, then C is NP-complete. • Definition: A problem L is NP-complete if and only if: • L is in NP • for every problem L’ in NP, there is a polynomial-time reduction from L’ to L • Proof:

  4. NP-completeness Proof • HamCyc: Given a graph G=(V,E) with at least three vertices, does G contain a Hamiltonian cycle? • Traveling Salesman Problem (TSP): Given n ≥ 3 cities and distances d(i,j) between each pair of cities, does there exist a tour of length ≤ k that visits each city and returns to the starting point? • Given that HamCyc is NP-complete, prove that TSP is NP-complete. • Show that TSP is in NP. • Show a polynomial time reduction from HamCyc to TSP.

  5. Randomized Algorithm for 3SAT • Schoning, T., "A probabilistic algorithm for k-SAT and constraint satisfaction problems,"Symposium on Foundations of Computer Science, 1999. • We present a simple probabilistic algorithm for solving k-SAT and more generally, for solving constraint satisfaction problems (CSP). The algorithm follows a simple local search paradigm: randomly guess an initial assignment and then, guided by those clauses (constraints) that are not satisfied, by successively choosing a random literal from such a clause and flipping the corresponding bit, try to find a satisfying assignment. If no satisfying assignment is found after O(n) steps, start over again. Our analysis shows that for any satisfiablek-CNF-formula with n variables this process has to be repeated only t times, on the average, to find a satisfying assignment, where t is within a polynomial factor of (2(1-1/k))n.

  6. Modular Arithmetic • The number X (mod Y) is the remainder when X is divided by Y. • For example: 7 (mod 3) is 1 because 7 = 2 * 3 + 1. That is, when you divide 7 by 3, you get a remainder of 1. • The "modulo Y" terminology can also be used in the following way: Z = X (mod Y), meaning that Z and X have the same remainder when divided by Y. For example: 7 = 25 (mod 3)because 7 = 2 * 3 + 1 and 25 = 8 * 3 + 1

  7. Modular Multiplication • When you take products of many numbers and you want to find their remainder modulo n, you never need to worry about numbers bigger than the square of n. • Pick any two numbers x and y, and look at their remainders (mod 7): • a = x (mod 7) • b= y (mod 7) • Compare the remainder modulo 7 of the products xy and ab: • xy (mod 7) with ab (mod 7) • For example, try x = 26, y = 80

  8. Modular Multiplication of Many Numbers • If we want to multiply many numbers modulon, we can first reduce all numbers to their remainders. Then, we can take any pair of them, multiply and reduce again. • For example, suppose we want to find X = 36 * 53 * 91 * 17 * 22 (mod 29) • What is the largest number we have to multiply by?

  9. Modular Exponentiation • Suppose we would like to calculate 1143 (mod 13). • The straightforward method would be to multiply 11 by 11, then to multiply the result by 11, and so forth. This would require 42 multiplications. • We can save a lot of multiplications if we do the following: • First write 43 as a sum of powers of 2: 43 = 32 + 8 + 2 + 1 • That means that 1143 = 1132 * 118 * 112 * 11 . • How many multiplications are required, and what is the largest number we have to multiply?

  10. Preparation for Next Class • Introduction to Modular Arithmetic and Cryptography • Start on Homework 1 (turn in for grade, due September 12)

More Related