David Evans Curing Cancer with Your Cell Phone: Why all Sciences are Becoming Computing Sciences.

Slides:



Advertisements
Similar presentations
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 17: ProvingUndecidability.
Advertisements

David Evans CS200: Computer Science University of Virginia Computer Science Class 38: Intractable Problems (Smiley Puzzles.
CS211 Problems: unsolvable, unfeasible and unsolved Topic 2: Halting problem.
Lecture 19. Reduction: More Undecidable problems
The Recursion Theorem Sipser – pages Self replication Living things are machines Living things can self-reproduce Machines cannot self reproduce.
Class 39: Universality cs1120 Fall 2009 David Evans University of Virginia.
Computability & Complexity. Scenario I can’t write this program because I’m too dumb.
1 The Limits of Computation Intractable and Non-computable functions.
Big Words, Busy Beavers, and The Cake of Computing David Evans flickr: mwichary TAPESTRY Workshop University of Virginia 15.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
CSE 326: Data Structures NP Completeness Ben Lerner Summer 2007.
Analysis of Algorithms CS 477/677
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 2: Modeling Computers.
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
Introduction to Computer Science. A Quick Puzzle Well-Formed Formula  any formula that is structurally correct  may be meaningless Axiom  A statement.
Remaining Topics Decidability Concept 4.1 The Halting Problem 4.2
Programming & Data Structures
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
Scott Perryman Jordan Williams.  NP-completeness is a class of unsolved decision problems in Computer Science.  A decision problem is a YES or NO answer.
Difficult Problems. Polynomial-time algorithms A polynomial-time algorithm is an algorithm whose running time is O(f(n)), where f(n) is a polynomial A.
David Evans Turing Machines, Busy Beavers, and Big Questions about Computing.
Class 37: Computability in Theory and Practice cs1120 Fall 2011 David Evans 21 November 2011 cs1120 Fall 2011 David Evans 21 November 2011.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
David Evans University of Virginia cs1120 Fall Lecture 38: Modeling Computing.
CSE 326: Data Structures NP Completeness Ben Lerner Summer 2007.
Cs3102: Theory of Computation Class 24: NP-Completeness Spring 2010 University of Virginia David Evans.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 15: Complexity Notes This is selected.
CSC 413/513: Intro to Algorithms NP Completeness.
What Every Biologist, Chemist, and Poet Should Know about Computer Science David Evans UVaCompBio 25 April
Halting Problem Introduction to Computing Science and Programming I.
David Evans Class 19: Golden Ages and Astrophysics CS200: Computer Science University of Virginia Computer Science.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
CSE 311 Foundations of Computing I Lecture 26 Computability: Turing machines, Undecidability of the Halting Problem Spring
CSE 311 Foundations of Computing I Lecture 29 Computability: Turing machines, Undecidability of the Halting Problem Autumn 2012 CSE 3111.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 36: Modeling Computing.
Lecture 12 P and NP Introduction to intractability Class P and NP Class NPC (NP-complete)
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
Computability Heap exercise. The class P. The class NP. Verifiers. Homework: Review RELPRIME proof. Find examples of problems in NP.
David Evans Class 16: NP-Completeness / The Story so Far CS150: Computer Science University of Virginia Computer Science.
Complexity & Computability. Limitations of computer science  Major reasons useful calculations cannot be done:  execution time of program is too long.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
CSE 311 Foundations of Computing I Lecture 28 Computability: Other Undecidable Problems Autumn 2011 CSE 3111.
David Evans Class 15: P vs. NP (Smiley Puzzles and Curing Cancer) CS150: Computer Science University of Virginia Computer.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 8: Crash Course in Computational Complexity.
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
Pancakes, Puzzles, and Polynomials: Cracking the Cracker Barrel Game Christopher Frost Michael Peck.
1 Computability Tractable, Intractable and Non-computable functions.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 23: Intractable Problems (Smiley Puzzles.
CS 154 Formal Languages and Computability May 10 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Recall last lecture and Nondeterministic TMs Ola Svensson.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
David Evans CS200: Computer Science University of Virginia Computer Science Class 26: Halting Problem It is plain at any.
Complexity, Decidability, Computability and other impossible questions Stephen Dolan, IMSA 2010.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
The NP class. NP-completeness
Introduction to Computing Science and Programming I
David Evans Lecture 41: P = NP? I will have extra office hours after class today (1-3pm). To be eligible to present Monday,
Class 30: Models of Computation CS200: Computer Science
CSE 311 Foundations of Computing I
Turing Machines, Busy Beavers, and Big Questions about Computing
Class 14: Intractable Problems CS150: Computer Science
Recall last lecture and Nondeterministic TMs
Class 24: Computability Halting Problems Hockey Team Logo
Tonga Institute of Higher Education IT 141: Information Systems
Class 34: Models of Computation CS200: Computer Science
Tonga Institute of Higher Education IT 141: Information Systems
Class 26: Modeling Computing CS150: Computer Science
Lecture 23: Computability CS200: Computer Science
Presentation transcript:

David Evans Curing Cancer with Your Cell Phone: Why all Sciences are Becoming Computing Sciences

2 College Science Scholars Computer Science = Doing Cool Stuff with Computers?

3 College Science Scholars Toaster Science = Doing Cool Stuff with Toasters?

4 College Science Scholars Computer Science Mathematics is about declarative (“what is”) knowledge; Computer Science is about imperative (“how to”) knowledge The Study of Information Processes –How to describe them –How to predict their properties –How to implement them quickly, cheaply, and reliably Language Logic Engineering

5 College Science Scholars Most Science is About Information Processes Which came first, the chicken or the egg? How can a (relatively) simple, single cell turn into a chicken?

6 College Science Scholars Agenda Three Big Ideas: –All Computers are Equally Powerful –Programs are Data, Data are Programs –Many Surprisingly Different Problems are Equally Difficult One Open Question –Is a machine that can always guess correctly able to solve problems a normal machine can’t?

7 College Science Scholars “Computers” before WWII

8 College Science Scholars Mechanical Computing

9 College Science Scholars Modeling Pencil and Paper “Computing is normally done by writing certain symbols on paper. We may suppose this paper is divided into squares like a child’s arithmetic book.” Alan Turing, On computable numbers, with an application to the Entscheidungsproblem, 1936 #CSSA723 How long should the tape be?...

10 College Science Scholars Modeling Brains Rules for steps Remember a little “For the present I shall only say that the justification lies in the fact that the human memory is necessarily limited.” Alan Turing

11 College Science Scholars Turing’s Model 1 Start 2 Input: # Write: # Move:  # # Input: 1 Write: 0 Move:  Input: 1 Write: 1 Move:  Input: 0 Write: 0 Move:  3 Input: 0 Write: # Move: 

12 College Science Scholars Universal Machine Description of a Turing Machine M Input Universal Machine Result tape of running M on Input A Universal Turing Machine can simulate any Turing Machine running on any Input!

13 College Science Scholars Church-Turing Thesis All mechanical computers are equally powerful* There exists a Turing machine that can simulate any mechanical computer Any computer that is powerful enough to simulate a Turing machine, can simulate any mechanical computer *Except for practical limits like memory size, time, energy, etc.

14 College Science Scholars What This Means Your cell phone, watch, iPod, etc. has a processor powerful enough to simulate a Turing machine A Turing machine can simulate the world’s most powerful supercomputer Thus, your cell phone can simulate the world’s most powerful supercomputer (it’ll just take a lot longer and will run out of memory)

15 College Science Scholars Recap All Computers are Equally Powerful Programs are Data, Data are Programs Many Problems are Equally Difficult –But no one knows how difficult!

16 College Science Scholars A “Hard” Problem?

17 College Science Scholars Generalized Pegboard Puzzle Input: a configuration of n pegs on a cracker barrel style pegboard (of any size) Output: if there is a sequence of jumps that leaves a single peg, output that sequence of jumps. Otherwise, output false. Is this a “hard” problem?

18 College Science Scholars Solving Problems A solution to a problem instance: given a pegboard configuration, here’s the sequence of jumps A solution to a problem: a procedure that (1) always finds the correct answer, and (2) always finishes.

19 College Science Scholars “Brute Force” Solvers Enumerate all possible answers –Every possible sequence of jumps Try them all until you find one that works –Simulate the jumps This works for almost all problems! Problem: how long does it take?

20 College Science Scholars Problem Solving Time ~ n~ n ~ n 3 ~ 2 n Problem Input Size Time

21 College Science Scholars Increasing Problem Size ~ 2 n ~ n 3

22 College Science Scholars Tractable and Intractable Problems “tractable” “intractable” I do nothing that a man of unlimited funds, superb physical endurance, and maximum scientific knowledge could not do. – Batman (may be able to solve intractable problems, but computer scientists can only solve tractable ones for large n)

23 College Science Scholars This makes a huge difference! today 2032 time since “Big Bang” log-log scale ~ 2 n ~ n 3

24 College Science Scholars Back to the Pegboard... A brute force solution is easy...but on the pink line Is there a tractable solution?

25 College Science Scholars Deciding a Problem Is Hard “I tried really hard and still couldn’t solve it.” –Maybe the speaker isn’t smart enough –Maybe a few days more effort will find it “Lots of really smart people tried really hard and no one could solve it.” “It seems sort of like this other problem that we think is hard...”

26 College Science Scholars Reduction Pegboard Solver Hard Problem Solver Input Trans- former Input Output Trans- former jumps Output

27 College Science Scholars Reading the Genome Whitehead Institute, MIT

28 College Science Scholars Gene Reading Machines One read: about 700 base pairs But…don’t know where they are on the chromosome ACCAGAATACCCGTGATCCAGAATAA Actual Genome ACCAGAATACC Read 1 TCCAGAATAA Read 2 TACCCGTGATCCA Read 3

29 College Science Scholars Genome Assembly Input: Genome fragments (but without knowing where they are from) Ouput: The full genome ACCAGAATACC Read 1 TCCAGAATAA Read 2 TACCCGTGATCCA Read 3

30 College Science Scholars Genome Assembly Input: Genome fragments (but without knowing where they are from) Ouput: The smallest genome sequence such that all the fragments are substrings. ACCAGAATACC Read 1 TCCAGAATAA Read 2 TACCCGTGATCCA Read 3

31 College Science Scholars Genome Assembly Solver Pegboard Solver Genome Assembly Solver Input Trans- former Output Trans- former jumps ACCAGAATACC TCCAGAATAA TACCCGTGATCCA ACCAGAATACCCGTGATCCAGAATAA (~30M reads, ~900 bp)

32 College Science Scholars What This Means We already know the shortest common superstring (genome assembly) problem is “hard” The pegboard problem must also be hard, since we could use a solver for it to solve the genome assembly problem –Requires: we can build fast transformers that don’t increase the problem size exponentially

33 College Science Scholars Non-Deterministic Machines 1 Start 2 Input: # Write: # Move:  # # Input: 1 Write: 0 Move:  Input: 1 Write: 1 Move:  Input: 0 Write: 0 Move:  3 4 Input: # Write: 0 Move: 

34 College Science Scholars Non-Deterministic Machine Everytime there is a choice, it can guess the correct choice without looking ahead If we had such a machine, solving Pegboard (or Genome Assembly, etc.) problem would be easy: –It can guess the solution one step (alignment) at a time

35 College Science Scholars Big Open Question Is a non- deterministic machine able to solve problems that are intractable on a deterministic machine? Seems obvious that the magic guess correctly ability should be useful...but no one knows for sure!

36 College Science Scholars Recap “P vs NP” problem (one of the millennium prize problems) Solving the pegboard puzzle is equivalent to solving genome assembly With a non-deterministic machine, we could solve both With a mechanical computer, we don’t know if a tractable solution exists (but can’t prove it doesn’t): We don’t know if checking a solution is really easier than finding it

37 College Science Scholars Summary Computer Science is the study of information processes: all about problem solving Many seemingly paradoxical results: –All Computers are Equally Powerful! –Many Surprisingly Different Problems are Equivalent! And seemingly obvious open problems: –Is checking a solution is really easier than finding it?

38 College Science Scholars Computer Science at UVa New Interdisciplinary Major in Computer Science for A&S students (approved last year) Take CS150 this Spring –Every scientist needs to understand computing, not just as a tool but as a way of thinking Lots of opportunities to get involved in research groups

39 College Science Scholars My Research Group Computer Security: computing in the presence of adversaries Recent student projects: –Proof that the Pegboard puzzle is hard (Mike Peck and Chris Frost) –Disk-level virus detection (Adrienne Felt) –Web Application Security (Sam Guarnieri) –N-Variant Systems: run variants of a program simultaneously (Sean Talts)

40 College Science Scholars Questions