CS154, Lecture 18:.

Slides:



Advertisements
Similar presentations
IDSIA Lugano Switzerland Master Algorithms for Active Experts Problems based on Increasing Loss Values Jan Poland and Marcus Hutter Defensive Universal.
Advertisements

An Introduction to Randomness Extractors Ronen Shaltiel University of Haifa Daddy, how do computers get random bits?
Approximate List- Decoding and Hardness Amplification Valentine Kabanets (SFU) joint work with Russell Impagliazzo and Ragesh Jaiswal (UCSD)
Lecture 24 MAS 714 Hartmut Klauck
Lecture: Algorithmic complexity
Randomized Algorithms Kyomin Jung KAIST Applied Algorithm Lab Jan 12, WSAC
Complexity and Cryptography
Bit Complexity of Breaking and Achieving Symmetry in Chains and Rings.
Analysis of Algorithms CS 477/677
CS503: First Lecture, Fall 2008 Michael Barnathan.
The Power of Randomness in Computation 呂及人中研院資訊所.
Lecture 20: April 12 Introduction to Randomized Algorithms and the Probabilistic Method.
Introduction to Computer and Network Security Iliano Cervesato 26 August 2008 – Modern Cryptography.
Computer Science Science of Computation Omer Reingold.
Randomness – A computational complexity view Avi Wigderson Institute for Advanced Study.
Of 28 Probabilistically Checkable Proofs Madhu Sudan Microsoft Research June 11, 2015TIFR: Probabilistically Checkable Proofs1.
Lecture #12 Distributed Algorithms (I) CS492 Special Topics in Computer Science: Distributed Algorithms and Systems.
Stochastic Algorithms Some of the fastest known algorithms for certain tasks rely on chance Stochastic/Randomized Algorithms Two common variations – Monte.
CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 10 Instructor: Haifeng YU.
The Power and Weakness of Randomness (when you are short on time) Avi Wigderson School of Mathematics Institute for Advanced Study.
RANDOMNESS AND PSEUDORANDOMNESS Omer Reingold, Microsoft Research and Weizmann.
Computation Model and Complexity Class. 2 An algorithmic process that uses the result of a random draw to make an approximated decision has the ability.
Some Fundamental Insights of Computational Complexity Theory Avi Wigderson IAS, Princeton, NJ Hebrew University, Jerusalem.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
RANDOMNESS VS. MEMORY: Prospects and Barriers Omer Reingold, Microsoft Research and Weizmann With insights courtesy of Moni Naor, Ran Raz, Luca Trevisan,
Pseudo-random generators Talk for Amnon ’ s seminar.
CSE 421 Algorithms Richard Anderson Lecture 29 Complexity Theory NP-Complete P.
RANDOMNESS AND PSEUDORANDOMNESS Omer Reingold, Microsoft Research and Weizmann.
Lecture 3 Page 1 CS 236 Online Basic Encryption Methods Substitutions –Monoalphabetic –Polyalphabetic Permutations.
Computational Complexity Theory Lecture 1: Intro; Turing machines; Class P and NP Indian Institute of Science.
Sub-fields of computer science. Sub-fields of computer science.
Topic 36: Zero-Knowledge Proofs
Outline The basic authentication problem
CSE 486/586 Distributed Systems Wrap-up
Computational Complexity Theory
Security Outline Encryption Algorithms Authentication Protocols
Information Complexity Lower Bounds
Stochastic Streams: Sample Complexity vs. Space Complexity
Game Theory Just last week:
Introduction to Randomized Algorithms and the Probabilistic Method
Randomness and Computation
New Characterizations in Turnstile Streams with Applications
CS Fall 2015 (Shavlik©), Midterm Topics
Introduction to Machine Learning
Auburn University COMP7330/7336 Advanced Parallel and Distributed Computing Mapping Techniques Dr. Xiao Qin Auburn University.
CSE 486/586 Distributed Systems Wrap-up
Modern symmetric-key Encryption
Big Ideas in Computer Science
Cryptographic Hash Functions Part I
Background: Lattices and the Learning-with-Errors problem
Turnstile Streaming Algorithms Might as Well Be Linear Sketches
CAS CS 538 Cryptography.
Linear sketching with parities
Linear sketching over
Richard Anderson Lecture 29 Complexity Theory
Welcome to CS 154 Li-Yang Tan Andreas Garcia Duligur Ibeling Duligur
Linear sketching with parities
CSE 417: Algorithms and Computational Complexity
Cryptography Lecture 4.
ONLINE SECURE DATA SERVICE
Where Complexity Finally Comes In Handy…
Lecture 10, Computer Networks (198:552)
CS21 Decidability and Tractability
Where Complexity Finally Comes In Handy…
CS 188: Artificial Intelligence Spring 2006
CSE 105 theory of computation
Where Complexity Finally Comes In Handy…
Week 11 - Wednesday CS221.
Presentation transcript:

CS154, Lecture 18:

CS 154 – Final Exam Wednesday December 13, 12:15-3:15 pm Skilling Auditorium You’re allowed one double-sided sheet of notes Exam is comprehensive (but will emphasize post-midterm topics) Look for practice final and solutions

Your Input Really Matters Evaluate CS 154 Your Input Really Matters

Some Topics 40’s – 50’s Finite Automata: Very Simple Models (constant memory) Non-determinism (power of guessing) Learning, communication complexity, Streaming algorithms 40’s – 50’s Complexity Theory: Time complexity, P vs. NP, NP-completeness, Other Resources: space, randomness, communication, power,… Crypto, Game Theory, … Computational Lens 60’s – Some Topics Computability Theory Very Powerful Models (Turing machines and more) Decidability, Kolmogorov Complexity 30’s – 50’s

Computing: “evolution of an environment via repeated application of simple, local rules” Somebody

Computational Lens

Hitchhiker's Guide to the Galaxy The Answer To Life, Universe and Everything:

Computational Game Theory Markets computing an equilibrium. Simple dynamics (best response)? Bounded Rationality: Prisoners Dilemma Repeated Games, infinite, finite Backward Induction Finite Automata Always Cooperate, Always Defect, Tit for Tat, Trigger

Limited Resources

Factoring & One-Way Functions Given two primes P and Q easy to compute N=PQ. For random such N, assume it is hard to find P and Q. Special case of One-Way Functions (the most basic cryptographic primitives). Random Instances of SAT that are hard Zero-Knowledge Proofs Hardness of learning Pseudorandom Generators Deterministically increasing entropy Randomness is weak

Randomness and Pseudorandomness When Randomness is Useful When Randomness can be reduced or eliminated – derandomization Basic Tool: Pseudorandomness An object is pseudorandom if it “looks random” (indistinguishable from uniform), though it is not.

Randomness In Computation (1) Can’t live without you Distributed computing (breaking symmetry) Cryptography: Secrets, Semantic Security, … Sampling, Simulations, …

Randomness In Computation (2) You change my world Communication Complexity (e.g., equality) Routing (on the cube [Valiant]) - drastically reduces congestion

Randomness In Computation (3) Do I really need you? In algorithms – useful design tool, but many times can derandomize (e.g., PRIMES in P). Is it always the case? BPP=P means that every randomized algorithm can be derandomized with only polynomial increase in time RL=L means that every randomized algorithm can be derandomized with only a constant factor increase in memory

In Distributed Computing Dining Philosophers: breaking symmetry Don’t Attack Byzantine Agreement Deterministic Randomized Synchronous t failures t+1 rounds O(1) Asynchronous impossible possible Attack Now

Randomness Saves Communication Deterministic: need to send the entire file! Randomness in the Sky: O(1) bits (or log in 1/error) Private Randomness: Logarithmic number of bits (derandomization). ? = Original File Copy

In Cryptography Private Keys: no randomness - no secrets and no identities Encryption: two encryptions of same message with same key need to be different Randomized (interactive) Proofs: Give rise to wonderful new notions: Zero-Knowledge, PCPs, …

Random Walks and Markov Chains When in doubt, flip a coin: Explore graph: minimal memory Page Rank: stationary distribution of Markov Chains Sampling vs. Approx counting. Estimating size of Web Simulations of Physical Systems …

Shake Your Input Communication network (n-dimensional cube) Every deterministic routing scheme will incur exponentially busy links (in worse case) Valiant: To send a message from x  y, select node z at random, send x  z  y. Now: O(1) expected load for every edge Another example – randomized quicksort Smoothed Analysis: small perturbations, big impact

In Private Data Analysis Hide Presence/Absence of Any Individual How many people in the database have the BC1 gene? Add random noise to true answer distributed as Lap(/) More questions? More privacy? Need more noise. ratio bounded  2 3 4 - -2 -3 -4

What’s next? A few possibilities (more to come): CS161 – Design and Analysis of Algorithms CS168 - The Modern Algorithmic Toolbox (spring) CS250 – Algebraic Error Correcting Codes (Winter) CS254 – Complexity Theory (next year) CS255 - Introduction to Cryptography (winter) CS264 - Beyond Worst Case Analysis CS296G -Almost Linear Time Graph Algorithms CS 352 - Pseudorandomness (next year) CS250 - Error Correcting Codes: Theory and Applications CS261 - Optimization and Algorithmic Paradigms (Winter) CS265 - Randomized Algorithms and Probabilistic Analysis CS368 - Algorithmic Techniques for Big Data

Parting thoughts: Computation is a powerful notion, becoming increasingly central Theory allows us to model and analyse computation, reaching non-trivial understanding Much is still open – waiting for you