Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Random Sources.

Slides:



Advertisements
Similar presentations
Many-to-one Trapdoor Functions and their Relations to Public-key Cryptosystems M. Bellare S. Halevi A. Saha S. Vadhan.
Advertisements

Circuit and Communication Complexity. Karchmer – Wigderson Games Given The communication game G f : Alice getss.t. f(x)=1 Bob getss.t. f(y)=0 Goal: Find.
Incremental Linear Programming Linear programming involves finding a solution to the constraints, one that maximizes the given linear function of variables.
1 Decomposing Hypergraphs with Hypertrees Raphael Yuster University of Haifa - Oranim.
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
CIS 5371 Cryptography 3b. Pseudorandomness.
Computability and Complexity
Introduction to Modern Cryptography Lecture 6 1. Testing Primitive elements in Z p 2. Primality Testing. 3. Integer Multiplication & Factoring as a One.
Random number generation Algorithms and Transforms to Univariate Distributions.
Complexity 25-1 Complexity Andrei Bulatov #P-Completeness.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Computability and Complexity 5-1 Classifying Problems Computability and Complexity Andrei Bulatov.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Complexity 26-1 Complexity Andrei Bulatov Interactive Proofs.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
Computational problems, algorithms, runtime, hardness
Complexity 5-1 Complexity Andrei Bulatov Complexity of Problems.
Perfect and Statistical Secrecy, probabilistic algorithms, Definitions of Easy and Hard, 1-Way FN -- formal definition.
Randomized Computation Roni Parshani Orly Margalit Eran Mantzur Avi Mintz
ACT1 Slides by Vera Asodi & Tomer Naveh. Updated by : Avi Ben-Aroya & Alon Brook Adapted from Oded Goldreich’s course lecture notes by Sergey Benditkis,
Computability and Complexity 32-1 Computability and Complexity Andrei Bulatov Boolean Circuits.
September 21, 2010Neural Networks Lecture 5: The Perceptron 1 Supervised Function Approximation In supervised learning, we train an ANN with a set of vector.
The max flow problem
Pseudorandom Number Generators
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
Derandomizing LOGSPACE Based on a paper by Russell Impagliazo, Noam Nissan and Avi Wigderson Presented by Amir Rosenfeld.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
Lecture 20: April 12 Introduction to Randomized Algorithms and the Probabilistic Method.
DAST 2005 Week 4 – Some Helpful Material Randomized Quick Sort & Lower bound & General remarks…
Foundations of Privacy Lecture 11 Lecturer: Moni Naor.
Computability and Complexity 17-1 Computability and Complexity Andrei Bulatov Strong NP-Completeness.
THE EXTENSION OF COLLISION AND AVALANCHE EFFECT TO k-ARY SEQUENCES Viktória Tóth Eötvös Loránd University, Budapest Department of Algebra and Number Theory,
Foundations of Cryptography Lecture 9 Lecturer: Moni Naor.
Public key ciphers 1 Session 5.
Applied Discrete Mathematics Week 9: Relations
1 CIS 5371 Cryptography 3. Private-Key Encryption and Pseudorandomness B ased on: Jonathan Katz and Yehuda Lindel Introduction to Modern Cryptography.
One-Time Pad Or Vernam Cipher Sayed Mahdi Mohammad Hasanzadeh Spring 2004.
The Complexity of Primality Testing. What is Primality Testing? Testing whether an integer is prime or not. – An integer p is prime if the only integers.
Random-Number Generation Andy Wang CIS Computer Systems Performance Analysis.
MA/CSSE 473 Day 11 Primality testing summary Data Encryption RSA.
Copyright © Cengage Learning. All rights reserved. 4 Quadratic Functions.
Section 2-8 First Applications of Groebner Bases by Pablo Spivakovsky-Gonzalez We started this chapter with 4 problems: 1.Ideal Description Problem: Does.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
. CLASSES RP AND ZPP By: SARIKA PAMMI. CONTENTS:  INTRODUCTION  RP  FACTS ABOUT RP  MONTE CARLO ALGORITHM  CO-RP  ZPP  FACTS ABOUT ZPP  RELATION.
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
Complexity 20-1 Complexity Andrei Bulatov Parallel Arithmetic.
Simultaneously Learning and Filtering Juan F. Mancilla-Caceres CS498EA - Fall 2011 Some slides from Connecting Learning and Logic, Eyal Amir 2006.
Copyright © Cengage Learning. All rights reserved. 11 Infinite Sequences and Series.
Section 5.5 The Real Zeros of a Polynomial Function.
Umans Complexity Theory Lectures Lecture 7b: Randomization in Communication Complexity.
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
Pseudo-random generators Talk for Amnon ’ s seminar.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
1 Chapter 11 Understanding Randomness. 2 Why Be Random? What is it about chance outcomes being random that makes random selection seem fair? Two things:
NP ⊆ PCP(n 3, 1) Theory of Computation. NP ⊆ PCP(n 3,1) What is that? NP ⊆ PCP(n 3,1) What is that?
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
Complexity 27-1 Complexity Andrei Bulatov Interactive Proofs (continued)
Probabilistic Algorithms
Computational problems, algorithms, runtime, hardness
Modeling with Recurrence Relations
Applied Discrete Mathematics Week 11: Relations
The Fundamental Theorem of Algebra and Complete Factorization
Computability and Complexity
Hidden Markov Models Part 2: Algorithms
The Curve Merger (Dvir & Widgerson, 2008)
CPS 173 Computational problems, algorithms, runtime, hardness
Applied Discrete Mathematics Week 7: Computation
Presentation transcript:

Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Random Sources

Computability and Complexity 20-2 Random Choices We have seen several probabilistic algorithms, that is algorithms that make some random choices during the computation We have proved that those algorithms solve the corresponding problems successfully only with some probability A common assumption for those theorems is that the algorithms always make a truly random choice

Computability and Complexity 20-3 Perfect Randomness A random source is a device, which after “pushing a button” produces a (potentially infinite) sequence of bits A random source is said to be perfect if it is fair, that is it is independent, that is the value of does not depend on the values of

Computability and Complexity 20-4 Fair Sources An independent but unfair random source can be easily converted into a perfect source Let be an independent source, such that Let be defined such that Let be the sequence of defined members of Theorem (von Neumann) is a perfect random source Theorem (von Neumann) is a perfect random source

Computability and Complexity 20-5 Pseudorandom Sources Given the difficulties in implementing random sources physically, one may try to find randomness in mathematical processes A pseudorandom number generator is an algorithm that given a seed, that is a short sequence of bits, produces a very long sequence of bits that are very hard to predict. A measure of “goodness” of a random source is the complexity of the following problem Instance: A pseudorandom source P Question: Using an initial segment of the output of P predict the remaining members of the sequence with high probability (without knowing the seed)? Pseudorandomness

Computability and Complexity 20-6 Linear Sources Linear sources are the most usual type of pseudorandom sources used in the existing software Take a large number m, and two smaller numbers a and b A seed is a number Then we define Treating the numbers as sequences of bits we get a required pseudorandom sequence Theorem A linear pseudorandom source can be broken in polynomial time Theorem A linear pseudorandom source can be broken in polynomial time

Computability and Complexity 20-7 Proof First, we find A and B such that Second, we find m Define to be. Note that

Computability and Complexity 20-8 Claim. If then, for we have Take some j. Then

Computability and Complexity 20-9 Finding A Given a linear pseudorandom source compute if then A := 0 otherwise do - find the least t  1 and the corresponding d such that - find for such that - set set

Computability and Complexity Claim. The algorithm computes an A and a B such that We show that Fact. If then Indeed, for some m. Let Therefore that implies If l is such that then

Computability and Complexity Let g = GCD(m,d). Notice that Since g divides and m, it also divides for j  1 Therefore Fact. If is a solution of then, for any k, is also a solution Indeed, where

Computability and Complexity Since a is a solution of, A is also a solution, and Claim. When calculating t, if and g does not divide then Since we have

Computability and Complexity Finding m In general, m cannot be found in polynomial time. For example, if a = 1 and b = 1, then Given a linear pseudorandom source compute A and B set m :=  and predict that when the first incorrect prediction is made, but Make the new guess for m equal to continue predicting whenever an incorrect guess is made for, update M to