51
Mathematics & Computer Science: The World Through an Algorithmic Lens Lev Reyzin UIC 1

mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Mathematics & Computer Science: The World Through an Algorithmic Lens

Lev Reyzin UIC

1

Page 2: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

The Algorithmic Lens

• The Mathematics and Computer Science (MCS) major combines the two disciplines into an exciting program here at UIC.

• A main goal of our MCS major is to teach our students to “think computationally.”

2

Page 3: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

3

Page 4: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

4

101101110001010101001011010011001000010100110010101111000001011001000100101101

Page 5: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

• Are there any problems we can’t ever solve?

• Can two strangers share secrets in the open?

• If I proved the Riemann hypothesis, could I convince my colleagues without revealing anything about the proof?

• If white can always win in chess, can an omnipotent being quickly prove it?

5

What is Computational Thinking?

Page 6: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

• Are there any problems we can’t ever solve?

• Can two strangers share secrets in the open?

• If I proved the Riemann hypothesis, could I convince my colleagues without revealing anything about the proof?

• If white can always win in chess, can an omnipotent being quickly prove it?

6

What is Computational Thinking?

Page 7: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Hilbert (1928)

7

Page 8: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Hilbert’s Decision Problem

Entscheidungsproblem (decision problem) “The decision problem is solved if one knows a process which, given a logical expression, permits the determination of its validity… we want to make it clear that for the solution of the decision problem a process would be given by which nonderivability can, in principle, be determined, even though the difficulties of the process would make practical use illusory… the decision problem [is] designated as the main problem of mathematical logic.”

8

Page 9: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Richard Feynman (1918-1988)

Albert Einstein Award (1954) E. O. Lawrence Award (1962) Nobel Prize in Physics (1965) Oersted Medal (1972) National Medal of Science (1979)

9

Page 10: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Richard Feynman (1918-1988)

Feynman’s Process1) Write down the problem.2) Think real hard.3) Write down the solution.(according to Gell-Mann)

10

Albert Einstein Award (1954) E. O. Lawrence Award (1962) Nobel Prize in Physics (1965) Oersted Medal (1972) National Medal of Science (1979)

Page 11: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Hilbert’s Decision Problem

Entscheidungsproblem (decision problem) “The decision problem is solved if one knows a process which, given a logical expression, permits the determination of its validity… we want to make it clear that for the solution of the decision problem a process would be given by which nonderivability can, in principle, be determined, even though the difficulties of the process would make practical use illusory… the decision problem [is] designated as the main problem of mathematical logic.”

11

Page 12: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Alan M. Turing (1936)

12

Page 13: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Church-Turing thesis: anything that is “effectively computable” is computable by this machine.

Alan M. Turing (1936)

13

Page 14: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Can just think about our favorite programming language, or any (even natural)

process; it’s all the same!

Alan M. Turing (1936)

14

Page 15: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

15

This is what allows for the algorithmic lens!

Page 16: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Turing’s Answer to Hilbert

Hilbert’s “process” does not exist for all problems!

16

Page 17: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Turing’s Answer

Hilbert’s “process” does not exist for all problems!Some programs Halt:

program_1(x) { print(“hello”); for (i=0 to x){ print(i); } exit();}

Some programs don’t:

program_2(x) { while(x<x+1) { print(“nom ”); } print(“goodbye”); exit();}

17

Page 18: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

The Halting Problem

Given a program P, how can we tell if it halts on x?P(x) { int y = 40; while(x > y || y < 100) { for(int z = 1; z < x+y; x++) { y = y + 2; … } … }}

18

Page 19: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

The Halting ProblemImagine there exists H(P,x) that given a program P and input x, returns 1 if P(x) halts and 0 if P(x) loops forever.

stops_on_self(P){ return H(P,P);}

garblygook(P) { if (stops_on_self(P)) while(true) {}; else exit();}

if such an H exists, we can create these two programs:

19

Page 20: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

The Halting Problem

stops_on_self(P){ return H(P,P);}

garblygook(P) { if (stops_on_self(P)) while(true) {}; else exit();}

if such an H exists, we can create these two programs:

What happens when you run garblygook(garblygook)?20

Imagine there exists H(P,x) that given a program P and input x, returns 1 if P(x) halts and 0 if P(x) loops forever.

Page 21: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

The Halting Problem

garblygook(P) { if (stops_on_self(P)) while(true) {}; else exit();}

if such an H exists, we can create these two programs:

What happens when you run garblygook(garblygook)?21

stops_on_self(P){ return H(P,P);}

Imagine there exists H(P,x) that given a program P and input x, returns 1 if P(x) halts and 0 if P(x) loops forever.

Page 22: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

So What?

Tons of real-life applications: e.g. computer viruses.

22

Page 23: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

• Are there any problems we can’t ever solve?

• Can two strangers share secrets in the open?

• If I proved the Riemann hypothesis, could I convince my colleagues without revealing anything about the proof?

• If white can always win in chess, can an omnipotent being quickly prove it?

23

What is Computational Thinking?

Page 24: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Computability Theory

what we can compute

all problems

24

Page 25: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

What is the Shortest Route Visiting all Major US Cities?

25

Can we try all routes and take the best?

Page 26: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

What is the Shortest Route Visiting all Major US Cities?

26

For 60 cities this would be 60! > 1081, which happens to be 10 times the estimated number of atoms in the universe.

Page 27: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Complexity Theory

what we can compute

all problems

what we can compute before we

all die

27

Page 28: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Complexity Theory

what we can compute

all problems

what we can compute before we

all die

28

Page 29: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Using HardnessImagine Alice, Bob, and Eve all walk into a room. They have never met before. Everything they say to each other is heard by all 3. Can Alice and Bob exchange a secret that Eve doesn’t know?

Alice Eve Bob29

Page 30: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Using Hardness

30

Shockingly, Yes! [Diffie-Hellman ’76]

Imagine Alice, Bob, and Eve all walk into a room. They have never met before. Everything they say to each other is heard by all 3. Can Alice and Bob exchange a secret that Eve doesn’t know?

Page 31: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

A.J.

Han

Vin

ck,

Intr

oduc

tion

to

publ

ic k

ey c

rypt

ogra

phy

common paint

secret colors

public

secret colors

common secret

(assume color separation is expensive)

+ +

++

= =

==

31

Page 32: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

public p, g

secret integers

a b

p,g p,g

A = gb mod p B = ga mod p

AB

a bsecret

integers

S = Ba mod p S = Ab mod p

public

common secret

= =

==

32

Page 33: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Using HardnessDiffie-Hellman assumption (variant):

If the Diffie-Hellman assumption true, Eve cannot know the common secret without doing an exponential amount of computation.

given an integer g a prime p,

gx mod p and gy mod p, finding gxy mod p cannot

be done efficiently

33

Page 34: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Using the Shared Secret

Alice and Bob can then use their shared secret value for symmetric cryptography.

IDEA

Twofish

Serpent

AESBlowfish CAST5 RC4

3DES

34

Page 35: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

• Are there any problems we can’t ever solve?

• Can two strangers share secrets in the open?

• If I proved the Riemann hypothesis, could I convince my colleagues without revealing anything about the proof?

• If white can always win in chess, can an omnipotent being quickly prove it?

35

What is Computational Thinking?

Page 36: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Zero Knowledge Proofs

Let’s say Alice proves the Riemann Hypothesis. Can she convince Bob her proof is correct without revealing anything about her proof?

36

Page 37: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Zero Knowledge Proofs

Let’s say Alice proves the Riemann Hypothesis. Can she convince Bob her proof is correct without revealing anything about her proof?

Yes! (if one-way functions exist) Goldwasser-Micali-Rackof [’85] Goldreich-Micali-Wigderson [’91]

37

Page 38: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

38

you can turn any proof

into a checkable coloring of a graph

It Turns Out That…

Page 39: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

39

Page 40: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

• Are there any problems we can’t ever solve?

• Can two strangers share secrets in the open?

• If I proved the Riemann hypothesis, could I convince my colleagues without revealing anything about the proof?

• If white can always win in chess, can an omnipotent being quickly prove it?

40

What is Computational Thinking?

Page 41: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Convincing Mortals

Let’s say God wants to prove His omnipotence by quickly convincing us mortals that white can always win at chess. Can he convince us? (phrasing from Rudich and Aaronson)

Problem: way more possible games than atoms in the universe. (10120 vs 1080)

41

Page 42: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Convincing Mortals

Let’s say God wants to prove His omnipotence by quickly convincing us mortals that white can always win at chess. Can he convince us? (phrasing from Rudich and Aaronson)

42

by beating Kasparov? not good enough

by beating best computers? still not good enough

Page 43: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

“IP=PSPACE”

By letting us ask Him some random questions! Lund, Fortnow, Karloff, Nisan, and Shamir [‘90] Shamir [’91]

This question isn’t as much about chess as it is about zeroes of polynomials over finite fields and error correcting codes.

43

Page 44: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Just the Tip of the IcebergAt the boundary of math and CS lies an intellectually exciting field that has had tremendous impact on the world.

It’s full of beautiful, surprising, and philosophically interesting results.

44

Page 45: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

45

Page 46: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

46

Page 47: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Computer Science at UIC

Mathematics and Computer Science (LAS)

Computer Science (Engineering)

Computer Engineering (Engineering)

Information & Decision Science (Business)

47

Page 48: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Mathematics and Computer Science

Mathematics and Computer Science is not a double major in two disparate fields.

MCS is a comprehensive program of study that gives you the skills and training to understand our increasingly-algorithmic world.

for more info: http://homepages.math.uic.edu/~mcs/

48

Page 49: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Why MCS?

In MCS, we teach you the programming skills you need to become a software engineer or to go into industry.

But we also focus on developing logical reasoning and on understanding the underpinnings of CS.

Our graduates are well-prepared for exciting industry positions, careers in science, and much else!

49

Page 50: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Why MSC at UIC?

We are one of the great urban research universities, and MSCS is a very strong, internationally-recognized department.

You have access to the many opportunities and resources of Chicago.

And you get to learn from (and work with) faculty at the forefront of cutting-edge research.

50

Page 51: mcs open houselevreyzin.com/presentations/mcs_open_house.pdf · Title: mcs_open_house Created Date: 9/16/2017 3:19:16 PM

Thank you!

Questions?

email contacts: Lev Reyzin (me): [email protected]

Florencio Diaz (Director, Advising & Outreach): [email protected]

Roman Shvydkoy (Director, Undergraduate Services): [email protected]

51