Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science Science of Computation Omer Reingold.

Similar presentations


Presentation on theme: "Computer Science Science of Computation Omer Reingold."— Presentation transcript:

1 Computer Science Science of Computation Omer Reingold

2 Foundations of CS at Weizmann Irit Dinur Uri Feige Oded Goldreich Shafi Goldwasser David Harel Robi Krauthgamer Moni Naor David Peleg Amir Pnueli Omer Reingold Ran Raz Adi Shamir

3 Algorithm A “recipe” for solving a computational problem (on every possible input). –Step-by-step, based on simple (basic) instructions. Some algorithms you probably already run: long arithmetic, ordering a deck of cards, …

4 9 8 7 6 5 4 3 2 1 1 1 1 3 1 4 19 “Long addition” algorithm 1.Scan column. If empty, stop. 2.Add digits. Write answer, retain carry. 3.Move one column left, write carry. 4.Go to 1

5 What are simple instructions? Can be carried out by a third grader? By a computer processor? –But we don’t want our theory to change every time a new processor goes into the market. Turing (1936!), proposed a “primitive” model of computation. We can define our algorithms on a Turing machine. Church-Turing thesis: Every effective computation can be carried out by a Turing machine.

6 Turing Machine

7 With the right abstractions Computer science is no longer about how computers “think” but rather about how humans think! –After all the science came first! … and possibly also about how nature thinks …

8 Is there an algorithm for every problem? No! Regardless of how much time we let the algorithm run. Examples: –There cannot be a computer program that debugs other programs automatically. –There cannot be a program that identifies all computer viruses.

9 Can computers solve in practice every solvable problem? No! Some problems take too much time to solve. So lets wait until computers become faster … Not a technological problem. –Some algorithms will still be running after the sun burns out, even on a computer made of all the particles of the universe, communicating at the speed of light.

10 Efficiency of an Algorithm It is important to bound the amount of resources our algorithms use: Time: how many basic operations Space: how many memory cells? Randomness, Communication … Try to find the most efficient algorithm for a given problem. –Some ingenious ideas come into play.

11 Time Efficiency of an Algorithm Count the number of basic operations. Long addition of n-digit numbers – roughly n operations. Long multiplication of n-digit numbers (school method) – roughly n 2 operations. Can we do better? 437367 3 1035571 8 598204 5 + 1 1 437367 3 598204 5 × 179461 35 418743 15 358922 70 179461 35 418743 15 179461 35 239281 80 26163508701 285

12 Asymptotics What is the difference between an algorithm running in time n, n 2 and 2 n ? As technology evolves inputs get larger – asymptotics matter! nn2n2 2n2n 101001024 50250010 15 1001000010 30 1000100000010 301

13 Map Coloring Given a map, “legally” color the countries with three colors (coloring with four colors always exists) Does there exist an efficient algorithm? This is the central question of computer science (and one of the central questions of math). Sounds lame?

14 P vs. NP problem If there exists an efficient algorithm for map coloring then: –An efficient algorithm for many other natural problems –Math and Science can be automated –Creativity can be automated (computers can learn to generate jokes, art, etc.) –(Almost) no cryptography

15 Cryptography and Knowledge This talk is so boring Assuming it is hard to factor big numbers, cryptography offers solutions to many problems of secrecy, privacy, and fault tolerance. For example: two parties who never met can exchange information privately at the presence of others.

16 OK so you get the car Cryptography and Knowledge Or flip a fair coin over the phone:

17 Cryptography and Knowledge This talk is so boring These and other remarkable applications are impossible, based on our traditional notion of information. –For example, an encryption of a message contains all the information about the message. New perspective of knowledge: it is not the information one possesses but rather the information that can be accessed efficiently!

18 Megalomaniac Moment in Conclusion Computation: evolution of an environment via repeated application of simple, local rules (Almost) all Physics and Biology theories satisfy! -Weather - Proteins in a cell - magnetization -Ant hills - Fish schools - fission -Brain - Populations - burning fire -Epidemics – Regeneration - growth And also Economy, Social Science, …

19 Still Megalomaniac Math has often been thought of as the language of Science Theory of computation is an area of math particularly suited to analyzing processes operating with limited resources Computational lens proved powerful in bioinformatics, quantum computation, game theory… –Expect much more!


Download ppt "Computer Science Science of Computation Omer Reingold."

Similar presentations


Ads by Google