Top Banner
The Power and the Limits of Computation Elaine Rich
41

The Power and the Limits of Computation Elaine Rich.

Jan 13, 2016

Download

Documents

Debra Mitchell
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: The Power and the Limits of Computation Elaine Rich.

The Power and the Limits of Computation

Elaine Rich

Page 2: The Power and the Limits of Computation Elaine Rich.

The Earliest Digital Computers

1945 ENIAC

Stored 20 10-digit decimal numbers

Page 3: The Power and the Limits of Computation Elaine Rich.

The IBM 7090A dual 7090 system at NASA in about 1962.

Could store 32,768 36-bit words.

That’s about .00015 gigabytes.

Cost:

about $3,000,000.

or $19,794,000 2005 dollars

Page 4: The Power and the Limits of Computation Elaine Rich.
Page 5: The Power and the Limits of Computation Elaine Rich.

The Earth Simulator

The Earth Simulator (ES) is a project of Japanese agencies to develop a 40 TFLOPS system for climate modeling.

The ES site is a new location in an industrial area of Yokohama, an hour drive west of Tokyo. The facility became operational in late 2001.

Hardware

The ES is based on: 5,120 (640 8-way nodes) 500 MHz NEC CPUs

8 GFLOPS per CPU (41 TFLOPS total) 2 GB (4 512 MB FPLRAM modules) per CPU (10 TB total)

shared memory inside the node 640 × 640 crossbar switch between the nodes

16 GB/s inter-node bandwidth 20 kVA power consumption per node

Page 6: The Power and the Limits of Computation Elaine Rich.

The iPod Nano

2005

Can store 4 gigabytes (1000 songs).

Cost: about $250.

Page 7: The Power and the Limits of Computation Elaine Rich.

Compute Power Increases Over Time

From Hans Moravec, Robot Mere Machine to Transcendent Mind 1998.

Page 8: The Power and the Limits of Computation Elaine Rich.

Moore’s Law

Page 9: The Power and the Limits of Computation Elaine Rich.

What Can We Do With All that Power?

Overheard in ACES last week: “Genomics has turned biology into an information science.”

Is there anything we can’t do?

Page 10: The Power and the Limits of Computation Elaine Rich.

The Traveling Salesman Problem

Page 11: The Power and the Limits of Computation Elaine Rich.

Finding a Solution to the TSP

Given n cities:

•n choices for a starting point.•n-1 for the next city•n-2 for the next city

For a total of n! paths to be considered.

Page 12: The Power and the Limits of Computation Elaine Rich.

Finding a Solution to the TSP

Given n cities:

•n choices for a starting point.•n-1 for the next city•n-2 for the next city

For a total of n! paths to be considered.

We notice that it doesn’t matter where we start (since we need to make a loop).

And the cost is the same forward or backward. So we can cut the number of paths down to:

(n – 1)!/2

Page 13: The Power and the Limits of Computation Elaine Rich.

The Growth Rate of n!n! = n(n-1)(n-2)…(1)

2 2 11 479001600

3 6 12 6227020800

4 24 13 87178291200

5 120 14 1307674368000

6 720 15 20922789888000

7 5040 16 355687428096000

8 40320 17 6402373705728000

9 362880 18 121645100408832000

10 3628800 19 2432902008176640000

11 39916800 36 3.6 1041

Page 14: The Power and the Limits of Computation Elaine Rich.

Putting that Rate into Perspective

Speed of light: 3 108 m/sec

Width of a proton: 10-15 m

If we perform one operation in the time light crosses a proton, we can perform: 3 1023 ops/sec

Seconds since the big bang: 3 1017

Operations since the big bang: 9 1040

Compared to 36! 3.6 1041

Page 15: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 b bbb

2 babbb ba

3 ba a

4 bbbaa babbb

Page 16: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 b bbb

2 babbb ba

3 ba a

4 bbbaa babbb

2

X b a b b b

Y b a

Page 17: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 b bbb

2 babbb ba

3 ba a

4 bbbaa babbb

2 1

X b a b b b b

Y b a b b b

Page 18: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 b bbb

2 babbb ba

3 ba a

4 bbbaa babbb

2 1 1

X b a b b b b b

Y b a b b b b b b

Page 19: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 b bbb

2 babbb ba

3 ba a

4 bbbaa babbb

2 1 1 3

X b a b b b b b b a

Y b a b b b b b b a

Page 20: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence Problem

i X Y

1 10 101

2 011 11

3 101 011

i X Y

1 1101 1

2 0110 11

3 1 110

Page 21: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence ProblemA program to solve this problem:

Until a solution is found do:Generate the next candidate solution.Test it. If it is a solution, halt and report yes.

So, if there are say 4 rows in the table, we’ll try:1 2 3 4 1,1 1,2 1,3 1,4 1,5 2,1 …… 1,1,1 ….

Page 22: The Power and the Limits of Computation Elaine Rich.

The Post Correspondence ProblemA program to solve this problem:

Until a solution is found do:Generate the next candidate solution.Test it. If it is a solution, halt and report yes.

So, if there are say 4 rows in the table, we’ll try:1 2 3 4 1,1 1,2 1,3 1,4 1,5 2,1 …… 1,1,1 ….

But what if there is no solution?

Page 23: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 24: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 25: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 26: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 27: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 28: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 29: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 30: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 31: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 32: The Power and the Limits of Computation Elaine Rich.

A Tiling Problem

Page 33: The Power and the Limits of Computation Elaine Rich.

Programs Debug Programs

read nif 2*int(n/2) = n then print “even” else print “odd”

read nresult = 1for i = 2 to n do

result = result * iprint result

Given an arbitrary program, can it be guaranteed to halt?

Page 34: The Power and the Limits of Computation Elaine Rich.

A Problem That Cannot be Solved in Any Amount of Time

read nif 2*int(n/2) = n then print “even” else print “odd”

read nresult = 1for i = 2 to n do

result = result * iprint result

Given an arbitrary program, can it be guaranteed to halt?

result1

i= 2 2 i= 3 6i= 4 24i= 5 120

Page 35: The Power and the Limits of Computation Elaine Rich.

Other Kinds of Loops

result = 0count = 0until result > 100 do

read n count = count + 1 result = result+nprint count

Page 36: The Power and the Limits of Computation Elaine Rich.

Other Kinds of Loops

result = 0count = 0until result > 100 do

read n count = count + 1 result = result+nprint count

Suppose all the inputs are positive integers.

Page 37: The Power and the Limits of Computation Elaine Rich.

Other Kinds of Loops

result = 0count = 0until result > 100 do

read n count = count + 1 result = result+nprint count

Suppose some of the integers are negative.

Page 38: The Power and the Limits of Computation Elaine Rich.

The Halting Problem Is Not Solvable

Suppose that the following program existed:

Halts(program, string) returns:•True if program halts on string•False otherwise

Page 39: The Power and the Limits of Computation Elaine Rich.

The Halting Problem is Not Solvable

Consider the following program:

Trouble(string) = If Halts(string, string) then loop forever else halt.

Now we invoke Trouble(<Trouble>).

What should Halts(<Trouble>, <Trouble>) say? If it:•Returns True (Trouble will halt): Trouble loops•Returns False (Trouble will not halt): Trouble halts

So there is no answer that Halts can give that does not lead to a contradiction.

Page 40: The Power and the Limits of Computation Elaine Rich.

Other Unsolvable Problems

PCP:

•We can encode a <program>,<input> pair as an instance of PCP so that the PCP problem has a solution iff <program> halts on <input>.

•So if PCP were solvable then Halting would be.

•But Halting isn’t. So neither is PCP.

Page 41: The Power and the Limits of Computation Elaine Rich.

Other Unsolvable Problems

Tiling:

•We can encode a <program>,<input> pair as an instance of a tiling problem so that there is an infinite tiling iff <program> halts on <input>.

00010000111000000111110000000000000 0001000011101000011111000000000000000010000111011000111110000000000000 …

•So if the tiling problem were solvable then Halting would be.

•But Halting isn’t. So neither is the tiling problem.