Standing on the Shoulders of a Giant

Size: px
Start display at page:

Download "Standing on the Shoulders of a Giant"

Transcription

1 Standing on the Shoulders of a Giant One Person s Experience of Turing s Impact David Harel The Weizmann Institute of Science

2

3 If I have seen further, it is because I stand on the shoulders of giants (Isaac Newton) Great read: On the Shoulders of Giants Robert K. Merton, 1965 OTSOG

4 First, the giant Alan M. Turing ( ) The Indisputable Father of Computer Science

5 Turing can almost be said to be the Mozart of computing Died at a young age, leaving an incredibly brilliant, deep and versatile legacy And we are left with the tantalizing question of what would he have achieved had he lived another 30 years

6

7 He invented computational universality and conceived of the simplest all-powerful models of computation But also worked on the design of the most complex computers of his time

8 He proved that there are many things that computers cannot do (in 1936!) But also taught us that there are some amazing things they can do

9 He did pioneering work on the idea of mathematical and computational modeling of biology But also dealt with the question of whether computers can be of human-like intelligence

10 I truly feel that Turing will become recognized as one of the most important and influential thinkers/scientists of all time (with Galileo, Newton, Darwin, Einstein, )

11 And now to us, the dwarves Many computer scientists feel that much of their research has its roots in Turing s work I ll discuss briefly three of his main lines of work, and the crucial way they impacted one person s research (that of yours truly ).

12 Clarification: Will not be discussing a central part of my work software/systems engineering, and executable visual languages

13 The Giant, part I Computability

14 Turing pioneered computability, universal computing and non-solvability, thus establishing the absolute limits of computing My modest follow-ups: - Computability on finite structures ( ) - Computability on recursive structures (1993-6) - Work on high non-solvability ( )

15 TIME magazine (April 1984) Put the right kind of software into a computer, and it will do whatever you want it to. There may be limits on what you can do with the machines themselves, but there are no limits on what you can do with software. Not so!!

16 problems you don t know how to solve problems you know how to solve ROBUSTNESS FOLLOWS FROM THE CHURCH/TURING THESIS, 1936 (All computers are equal ) Unsolvable problems (undecidable) Solvable problems (decidable)

17 Tiling (Domino) Problems: 1x1 non-rotatable, non-reversible Tile

18 1 2 3

19 1 2 3 Can tile any sized area

20 1 2 3

21 1 2 3 Can t tile even a 3x3 square! Proof: 1. Tile #3 must appear. 2. Which leads to a contradiction!!!

22 Basic unbounded tiling (domino) problem: Given a tile set, can it tile any area?,...,, Yes, it can No such machine No such algorithm No such recipe No such program No, it can t The tiling problem is undecidable!!

23 The halting problem (Turing, 1936) Positive integers A: if x=1 stop; x x-1; goto A. B: if x=1 stop????? if x is even then x x/2 else x 3x+1; goto B.

24 Can we solve the halting problem computationally, in its general form? Program P Input X W YES P halts on X No P doesn t halt on X

25 Turing 1936: There is no such W! The halting problem is undecidable And so is essentially any problem about computation, including correctness, efficiency, equivalence, etc.! (Rice, 1960s)

26

27 Computability over finite structures (with Chandra, STOC 1979, J.CSS 1980)

28 Now for the original slides from 1979 Extending Turing computability from numbers/words to general structures (graphs, databases, ; essentially anything with structure)

29

30

31

32 OK not OK! contains information not in the original structure

33 Now let s change the original structure a little

34 this is now OK!

35 Computable a la Turing This is the crucial thing

36 Is there a complete language for the computable queries? (an analog of Turing machines)

37 Why not simply take the set of automorphism-preserving ( consistent, or generic ) Turing machines as a complete language? Because even it s syntax is not effective! By Rice s theorem, genericity is undecidable

38

39

40

41

42

43

44

45

46 FOCS 1980, complexity theory on structures closing slide

47 Is there an effective logic/language for the polynomial-time functions on general (not necessarily ordered) structures? Still open, after 32 years! Considered central open problem in finite model theory, and in descriptive complexity

48

49 Computability over infinite recursive structures (with T. Hirst, J. Comp. Sys. Sci. 1996)

50 Obtained several results, including completeness in the style of [CH 79] for the (appropriately restricted) class of infinite recursive structures

51

52 Work on high non-solvability (Ann. Disc. Math. 1985; J. ACM 1986; Isr. J. Math. 1991, )

53 undecidable (noncomputable) highly undecidable. plainly undecidable. decidable (computable)

54 Unbounded and Fair halting (J. ACM 1986) Satisfiability in logics of programs (with various co-authors, ) Recurring tiles/dominoes (Ann. Disc. Math. 1985; J. ACM 1986) Hamiltonian paths on recursive graphs (Isr. J. Math. 1991)

55 The Giant, part II Biological Modeling

56 Turing pioneered the mathematical basis for modeling biological growth (morphogenesis) My modest follow-ups: - Modeling pancreatic morphogenesis (2007) - Modeling cancerous tumor as organ growth (2014)

57 one proceeds as with a physical theory and defines an entity called 'the state of the system'. One then describes how that state is to be determined from the state at a moment very shortly before (Turing, 1952)

58

59 Executable modeling of pancreatic morphogenesis Using Statecharts (with Setty, Cohen, Dor, PNAS 2007)

60

61 Normal growth:

62

63 Wild playing with the model yielded insights into the role of blood vessel density in organ development

64

65 Cancer tumor modeled as organ growth Using Statecharts (with N. Bloch, 2014)

66

67

68 WOP: Whole Organism Project A Grand Challenge for Comprehensive Modeling (H, 2003) To construct a full, correct, true-toall-known-facts, 4-dimensional model of a multi-cellular organism Which animal would be a good choice? My proposal: The C. elegans nematode

69 The Giant, part III Artificial Intelligence

70 Turing pioneered the Turing test (imitation game) for artificial intelligence My modest follow-up: - A Turing-like test for modeling Nature (2005)

71 Computer Science folklore: Asking whether computers can think is like asking whether submarines can swim (Dijkstra)

72 The Turing Test B: human or computer C: human or computer A: human interrogator

73

74 A Turing-like test for modeling Nature (Nature Biotech. 2005)

75 When can we say we ve finished building a model of Nature? (e.g., a full model of an organism) Aha! The $64m question

76 In conventional (non-comprehensive) modeling, we address specific questions, and are thus satisfied with making particular predictions. The model is deemed valid (complete) when the predictions are verified in the lab.

77 But, comprehensive modeling is about understanding a whole thing, not based on specific questions You really and truly understand a thing when you can build an interactive simulation that does exactly what the original thing does on its own. Q: How do you tell when you ve managed to achieve that?

78 A: We want prediction-making taken to the utmost limit; the idea is to fool an expert Hence, for comprehensive modeling, I propose a Turing-like test, but with a Popperian twist

79 We are done when a team of biologists, well versed in the relevant field, won t be able to tell the difference between the model and the real thing

80 New Version of the Turing Test B: elephant laboratory C: computerized model A: expert interrogator

81 New Version of the Turing Test B: C. elegans laboratory C: computerized model A: expert interrogator

82 If they can tell the difference, the model is refuted and has to be changed. But this will happen all the time, because of the advancement of science! Hence, the test is in the good spirit of Karl Popper and the model is a theory of the system until it is refuted... Of course, we need a far better buffer than Turing needed, to conceal obvious differences (e.g., unrealistic graphics, computer speed vs. laboratory probe time, etc.)

83 This is not a test for the weakhearted, or for the impatient And it s probably not realizable at all But as the ultimate mechanism for prediction-confirming, it can serve as a lofty, end-of-the-day goal for the Grand Challenge of modeling an entire organism

84 1987/1992/2004/ /2004/ 2012

85

86 Let s end with a wonderful example of mind-fooling simulation. Actually, it is a (non-interactive) test-passing model... Thank you for listening

87 Thank you for listening

NP-Complete and Non-Computable Problems. COMP385 Dr. Ken Williams

NP-Complete and Non-Computable Problems. COMP385 Dr. Ken Williams NP-Complete and Non-Computable Problems COMP385 Dr. Ken Williams Start by doing what s necessary; then do what s possible; and suddenly you are doing the impossible. Francis of Assisi Our Goal Define classes

More information

Automata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (D-ITET) October,

Automata & languages. A primer on the Theory of Computation. Laurent Vanbever.   ETH Zürich (D-ITET) October, Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu ETH Zürich (D-ITET) October, 19 2017 Part 5 out of 5 Last week was all about Context-Free Languages Context-Free

More information

Turing Machines (TM) The Turing machine is the ultimate model of computation.

Turing Machines (TM) The Turing machine is the ultimate model of computation. TURING MACHINES Turing Machines (TM) The Turing machine is the ultimate model of computation. Alan Turing (92 954), British mathematician/engineer and one of the most influential scientists of the last

More information

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch 6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 8 Nancy Lynch Today More undecidable problems: About Turing machines: Emptiness, etc. About

More information

Lecture Notes: The Halting Problem; Reductions

Lecture Notes: The Halting Problem; Reductions Lecture Notes: The Halting Problem; Reductions COMS W3261 Columbia University 20 Mar 2012 1 Review Key point. Turing machines can be encoded as strings, and other Turing machines can read those strings

More information

ECS 120 Lesson 18 Decidable Problems, the Halting Problem

ECS 120 Lesson 18 Decidable Problems, the Halting Problem ECS 120 Lesson 18 Decidable Problems, the Halting Problem Oliver Kreylos Friday, May 11th, 2001 In the last lecture, we had a look at a problem that we claimed was not solvable by an algorithm the problem

More information

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 13 CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing

More information

Principles of Computing, Carnegie Mellon University. The Limits of Computing

Principles of Computing, Carnegie Mellon University. The Limits of Computing The Limits of Computing Intractability Limits of Computing Announcement Final Exam is on Friday 9:00am 10:20am Part 1 4:30pm 6:10pm Part 2 If you did not fill in the course evaluations please do it today.

More information

CS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018

CS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018 CS 301 Lecture 18 Decidable languages Stephen Checkoway April 2, 2018 1 / 26 Decidable language Recall, a language A is decidable if there is some TM M that 1 recognizes A (i.e., L(M) = A), and 2 halts

More information

Complexity, Undecidability and Tilings. Chaim Goodman-Strauss Univ Arkansas

Complexity, Undecidability and Tilings. Chaim Goodman-Strauss Univ Arkansas Complexity, Undecidability and Tilings Chaim Goodman-Strauss Univ Arkansas strauss@uark.edu Why are tiling puzzles difficult? Why are tiling puzzles difficult? (And how difficult are they anyway?) There

More information

CSCI3390-Lecture 6: An Undecidable Problem

CSCI3390-Lecture 6: An Undecidable Problem CSCI3390-Lecture 6: An Undecidable Problem September 21, 2018 1 Summary The language L T M recognized by the universal Turing machine is not decidable. Thus there is no algorithm that determines, yes or

More information

Undecidability and Rice s Theorem. Lecture 26, December 3 CS 374, Fall 2015

Undecidability and Rice s Theorem. Lecture 26, December 3 CS 374, Fall 2015 Undecidability and Rice s Theorem Lecture 26, December 3 CS 374, Fall 2015 UNDECIDABLE EXP NP P R E RECURSIVE Recap: Universal TM U We saw a TM U such that L(U) = { (z,w) M z accepts w} Thus, U is a stored-program

More information

Decidable Languages - relationship with other classes.

Decidable Languages - relationship with other classes. CSE2001, Fall 2006 1 Last time we saw some examples of decidable languages (or, solvable problems). Today we will start by looking at the relationship between the decidable languages, and the regular and

More information

Lecture 12 Combinatorial Planning in High Dimensions

Lecture 12 Combinatorial Planning in High Dimensions CS 460/560 Introduction to Computational Robotics Fall 017, Rutgers University Lecture 1 Combinatorial Planning in High Dimensions Instructor: Jingjin Yu Outline Review of combinatorial motion planning

More information

CS 301. Lecture 17 Church Turing thesis. Stephen Checkoway. March 19, 2018

CS 301. Lecture 17 Church Turing thesis. Stephen Checkoway. March 19, 2018 CS 301 Lecture 17 Church Turing thesis Stephen Checkoway March 19, 2018 1 / 17 An abridged modern history of formalizing algorithms An algorithm is a finite, unambiguous sequence of steps for solving a

More information

CS154, Lecture 10: Rice s Theorem, Oracle Machines

CS154, Lecture 10: Rice s Theorem, Oracle Machines CS154, Lecture 10: Rice s Theorem, Oracle Machines Moral: Analyzing Programs is Really, Really Hard But can we more easily tell when some program analysis problem is undecidable? Problem 1 Undecidable

More information

} Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops.

} Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops. and their languages } Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops. } Some languages are Turing-recognizable, but not

More information

Descriptive Statistics (And a little bit on rounding and significant digits)

Descriptive Statistics (And a little bit on rounding and significant digits) Descriptive Statistics (And a little bit on rounding and significant digits) Now that we know what our data look like, we d like to be able to describe it numerically. In other words, how can we represent

More information

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY RYAN DOUGHERTY If we want to talk about a program running on a real computer, consider the following: when a program reads an instruction,

More information

CS151 Complexity Theory. Lecture 1 April 3, 2017

CS151 Complexity Theory. Lecture 1 April 3, 2017 CS151 Complexity Theory Lecture 1 April 3, 2017 Complexity Theory Classify problems according to the computational resources required running time storage space parallelism randomness rounds of interaction,

More information

A non-turing-recognizable language

A non-turing-recognizable language CS 360: Introduction to the Theory of Computing John Watrous, University of Waterloo A non-turing-recognizable language 1 OVERVIEW Thus far in the course we have seen many examples of decidable languages

More information

Handouts. CS701 Theory of Computation

Handouts. CS701 Theory of Computation Handouts CS701 Theory of Computation by Kashif Nadeem VU Student MS Computer Science LECTURE 01 Overview In this lecturer the topics will be discussed including The Story of Computation, Theory of Computation,

More information

Lecture 12: Mapping Reductions

Lecture 12: Mapping Reductions Lecture 12: Mapping Reductions October 18, 2016 CS 1010 Theory of Computation Topics Covered 1. The Language EQ T M 2. Mapping Reducibility 3. The Post Correspondence Problem 1 The Language EQ T M The

More information

One sided tests. An example of a two sided alternative is what we ve been using for our two sample tests:

One sided tests. An example of a two sided alternative is what we ve been using for our two sample tests: One sided tests So far all of our tests have been two sided. While this may be a bit easier to understand, this is often not the best way to do a hypothesis test. One simple thing that we can do to get

More information

CSCE 551: Chin-Tser Huang. University of South Carolina

CSCE 551: Chin-Tser Huang. University of South Carolina CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Church-Turing Thesis The definition of the algorithm came in the 1936 papers of Alonzo Church h and Alan

More information

Computability, Undeciability and the Halting Problem

Computability, Undeciability and the Halting Problem Computability, Undeciability and the Halting Problem 12/01/16 http://www.michael-hogg.co.uk/game_of_life.php Discrete Structures (CS 173) Lecture B Gul Agha 1 Based on slides by Derek Hoiem, University

More information

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 10 Nancy Lynch

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 10 Nancy Lynch 6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 10 Nancy Lynch Today Final topic in computability theory: Self-Reference and the Recursion

More information

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines

More information

Lecture 22: Quantum computational complexity

Lecture 22: Quantum computational complexity CPSC 519/619: Quantum Computation John Watrous, University of Calgary Lecture 22: Quantum computational complexity April 11, 2006 This will be the last lecture of the course I hope you have enjoyed the

More information

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Today's learning goals Sipser Ch 5.1 Define and explain core examples of decision problems: A DFA, E DFA, EQ DFA,

More information

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 15 Ana Bove May 17th 2018 Recap: Context-free Languages Chomsky hierarchy: Regular languages are also context-free; Pumping lemma

More information

6-1 Computational Complexity

6-1 Computational Complexity 6-1 Computational Complexity 6. Computational Complexity Computational models Turing Machines Time complexity Non-determinism, witnesses, and short proofs. Complexity classes: P, NP, conp Polynomial-time

More information

Time-bounded computations

Time-bounded computations Lecture 18 Time-bounded computations We now begin the final part of the course, which is on complexity theory. We ll have time to only scratch the surface complexity theory is a rich subject, and many

More information

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides First Person: Second Person: Family Name: Family Name: Given Name: Given

More information

ORF 523. Finish approximation algorithms + Limits of computation & undecidability + Concluding remarks

ORF 523. Finish approximation algorithms + Limits of computation & undecidability + Concluding remarks Finish approximation algorithms + Limits of computation & undecidability + Concluding remarks ORF 523 Lecture 19 Instructor: Amir Ali Ahmadi, TA: G. Hall, Spring 2016 1 Convex relaxations with worst-case

More information

Church s undecidability result

Church s undecidability result Church s undecidability result Alan Turing Birth Centennial Talk at IIT Bombay, Mumbai Joachim Breitner April 21, 2011 Welcome, and thank you for the invitation to speak about Church s lambda calculus

More information

CS/MA 109 Quantitative Reasoning. Wayne Snyder Computer Science Department Boston University

CS/MA 109 Quantitative Reasoning. Wayne Snyder Computer Science Department Boston University CS/MA 109 Quantitative Reasoning Wayne Snyder Department Boston University Today Recursion and self-reference: a scientific and culture exploration and a limitation of algorithms and computers! Next Tuesday:

More information

Problems, and How Computer Scientists Solve Them Manas Thakur

Problems, and How Computer Scientists Solve Them Manas Thakur Problems, and How Computer Scientists Solve Them PACE Lab, IIT Madras Content Credits Introduction to Automata Theory, Languages, and Computation, 3rd edition. Hopcroft et al. Introduction to the Theory

More information

NP-Completeness. Until now we have been designing algorithms for specific problems

NP-Completeness. Until now we have been designing algorithms for specific problems NP-Completeness 1 Introduction Until now we have been designing algorithms for specific problems We have seen running times O(log n), O(n), O(n log n), O(n 2 ), O(n 3 )... We have also discussed lower

More information

Undecibability. Hilbert's 10th Problem: Give an algorithm that given a polynomial decides if the polynomial has integer roots or not.

Undecibability. Hilbert's 10th Problem: Give an algorithm that given a polynomial decides if the polynomial has integer roots or not. Undecibability Hilbert's 10th Problem: Give an algorithm that given a polynomial decides if the polynomial has integer roots or not. The problem was posed in 1900. In 1970 it was proved that there can

More information

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch]

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch] Undecidability Andreas Klappenecker [based on slides by Prof. Welch] 1 Sources Theory of Computing, A Gentle Introduction, by E. Kinber and C. Smith, Prentice-Hall, 2001 Automata Theory, Languages and

More information

Decidability and Undecidability

Decidability and Undecidability Decidability and Undecidability Major Ideas from Last Time Every TM can be converted into a string representation of itself. The encoding of M is denoted M. The universal Turing machine U TM accepts an

More information

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff Decidability Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff 1 A property P of strings is said to be decidable if the set of all strings having property P is a recursive set; that

More information

Section 14.1 Computability then else

Section 14.1 Computability then else Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible algorithms. Example (Turing machines). Associate

More information

Models. Models of Computation, Turing Machines, and the Limits of Turing Computation. Effective Calculability. Motivation for Models of Computation

Models. Models of Computation, Turing Machines, and the Limits of Turing Computation. Effective Calculability. Motivation for Models of Computation Turing Computation /0/ Models of Computation, Turing Machines, and the Limits of Turing Computation Bruce MacLennan Models A model is a tool intended to address a class of questions about some domain of

More information

CS187 - Science Gateway Seminar for CS and Math

CS187 - Science Gateway Seminar for CS and Math CS187 - Science Gateway Seminar for CS and Math Fall 2013 Class 3 Sep. 10, 2013 What is (not) Computer Science? Network and system administration? Playing video games? Learning to use software packages?

More information

Introduction to Algebra: The First Week

Introduction to Algebra: The First Week Introduction to Algebra: The First Week Background: According to the thermostat on the wall, the temperature in the classroom right now is 72 degrees Fahrenheit. I want to write to my friend in Europe,

More information

Undecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65

Undecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65 Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving

More information

Lecture notes on Turing machines

Lecture notes on Turing machines Lecture notes on Turing machines Ivano Ciardelli 1 Introduction Turing machines, introduced by Alan Turing in 1936, are one of the earliest and perhaps the best known model of computation. The importance

More information

15-251: Great Theoretical Ideas in Computer Science Lecture 7. Turing s Legacy Continues

15-251: Great Theoretical Ideas in Computer Science Lecture 7. Turing s Legacy Continues 15-251: Great Theoretical Ideas in Computer Science Lecture 7 Turing s Legacy Continues Solvable with Python = Solvable with C = Solvable with Java = Solvable with SML = Decidable Languages (decidable

More information

NP-Complete Problems

NP-Complete Problems NP-Complete Problems With a short and informal introduction to Computability and Complexity Álvaro Moreira alvaro.moreira@inf.ufrgs.br Instituto de Informática Universidade Federal do Rio Grande do Sul

More information

2 Computable and Computably Enumerable Sets

2 Computable and Computably Enumerable Sets Notes For CMSC 650- COMPUTABILITY by A.Amir and W.I. Gasarch 1 Introduction We take our model of computation to be Java Programs. Traditionally one defines Turing Machines and we will use that terminology,

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Decidability, Undecidability and Reducibility; Codes, Algorithms and Languages CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario,

More information

Turing Machine Recap

Turing Machine Recap Turing Machine Recap DFA with (infinite) tape. One move: read, write, move, change state. High-level Points Church-Turing thesis: TMs are the most general computing devices. So far no counter example Every

More information

Fundamentals of Computer Science

Fundamentals of Computer Science Fundamentals of Computer Science Chapter 8: Turing machines Henrik Björklund Umeå University February 17, 2014 The power of automata Finite automata have only finite memory. They recognize the regular

More information

Lesson 6-1: Relations and Functions

Lesson 6-1: Relations and Functions I ll bet you think numbers are pretty boring, don t you? I ll bet you think numbers have no life. For instance, numbers don t have relationships do they? And if you had no relationships, life would be

More information

Math101, Sections 2 and 3, Spring 2008 Review Sheet for Exam #2:

Math101, Sections 2 and 3, Spring 2008 Review Sheet for Exam #2: Math101, Sections 2 and 3, Spring 2008 Review Sheet for Exam #2: 03 17 08 3 All about lines 3.1 The Rectangular Coordinate System Know how to plot points in the rectangular coordinate system. Know the

More information

Introduction to Computational Complexity

Introduction to Computational Complexity Introduction to Computational Complexity Tandy Warnow October 30, 2018 CS 173, Introduction to Computational Complexity Tandy Warnow Overview Topics: Solving problems using oracles Proving the answer to

More information

Foundations of Computer Science Lecture 23 Languages: What is Computation?

Foundations of Computer Science Lecture 23 Languages: What is Computation? Foundations of Computer Science Lecture 23 Languages: What is Computation? A Formal Model of a Computing Problem Decision Problems and Languages Describing a Language: Regular Expressions Complexity of

More information

Limits of Computation

Limits of Computation The real danger is not that computers will begin to think like men, but that men will begin to think like computers Limits of Computation - Sydney J. Harris What makes you believe now that I am just talking

More information

There are problems that cannot be solved by computer programs (i.e. algorithms) even assuming unlimited time and space.

There are problems that cannot be solved by computer programs (i.e. algorithms) even assuming unlimited time and space. Undecidability There are problems that cannot be solved by computer programs (i.e. algorithms) even assuming unlimited time and space. Proved by Alan Turing in 1936 What is a computer program/algorithm?

More information

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability The Turing Machine Computability Motivating idea Build a theoretical a human computer Likened to a human with a paper and pencil that can solve problems in an algorithmic way The theoretical provides a

More information

Undecidability. Almost all Languages are undecidable. Question: Is it just weird languages that no one would care about which are undecidable?

Undecidability. Almost all Languages are undecidable. Question: Is it just weird languages that no one would care about which are undecidable? 15-251: Great Theoretical Ideas in Computer Science Lecture 7 Undecidability Almost all Languages are undecidable Set of all languages: Set of all dec. lang.: Most languages do not have a TM deciding them

More information

Figure 1: Doing work on a block by pushing it across the floor.

Figure 1: Doing work on a block by pushing it across the floor. Work Let s imagine I have a block which I m pushing across the floor, shown in Figure 1. If I m moving the block at constant velocity, then I know that I have to apply a force to compensate the effects

More information

Chapter 2: The Basics. slides 2017, David Doty ECS 220: Theory of Computation based on The Nature of Computation by Moore and Mertens

Chapter 2: The Basics. slides 2017, David Doty ECS 220: Theory of Computation based on The Nature of Computation by Moore and Mertens Chapter 2: The Basics slides 2017, David Doty ECS 220: Theory of Computation based on The Nature of Computation by Moore and Mertens Problem instances vs. decision problems vs. search problems Decision

More information

Computational Models Lecture 9, Spring 2009

Computational Models Lecture 9, Spring 2009 Slides modified by Benny Chor, based on original slides by Maurice Herlihy, Brown University. p. 1 Computational Models Lecture 9, Spring 2009 Reducibility among languages Mapping reductions More undecidable

More information

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models Contents Mathematical Reasoning 3.1 Mathematical Models........................... 3. Mathematical Proof............................ 4..1 Structure of Proofs........................ 4.. Direct Method..........................

More information

MATHEMATICS TEACHING-RESEARCH JOURNAL ONLINE VOL 9, N 1-2 Summer 2017

MATHEMATICS TEACHING-RESEARCH JOURNAL ONLINE VOL 9, N 1-2 Summer 2017 Appendix Collection of Aha! Moments collected during the teaching-experiment. FIR TREE Aha! Moment 1. Stage 5 s shape is bigger than the previous one; its shape grows horizontally and follows the pattern

More information

6.080 / Great Ideas in Theoretical Computer Science Spring 2008

6.080 / Great Ideas in Theoretical Computer Science Spring 2008 MIT OpenCourseWare http://ocw.mit.edu 6.080 / 6.089 Great Ideas in Theoretical Computer Science Spring 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.

More information

SD & Turing Enumerable. Lecture 33: Reductions and Undecidability. Lexicographically Enumerable. SD & Turing Enumerable

SD & Turing Enumerable. Lecture 33: Reductions and Undecidability. Lexicographically Enumerable. SD & Turing Enumerable SD & Turing Lecture 33: Reductions and Undecidability CSCI 81 Spring, 2012 Kim Bruce Theorem: A language is SD iff it is Turing enumerable. Proof: Spose L is Turing enumerable. Show L is SD. Let w be input.

More information

Automata Theory CS S-FR2 Final Review

Automata Theory CS S-FR2 Final Review Automata Theory CS411-2015S-FR2 Final Review David Galles Department of Computer Science University of San Francisco FR2-0: Halting Problem e(m) e(w) Halting Machine takes as input an encoding of a Turing

More information

CSCI3390-Assignment 2 Solutions

CSCI3390-Assignment 2 Solutions CSCI3390-Assignment 2 Solutions due February 3, 2016 1 TMs for Deciding Languages Write the specification of a Turing machine recognizing one of the following three languages. Do one of these problems.

More information

Time Complexity (1) CSCI Spring Original Slides were written by Dr. Frederick W Maier. CSCI 2670 Time Complexity (1)

Time Complexity (1) CSCI Spring Original Slides were written by Dr. Frederick W Maier. CSCI 2670 Time Complexity (1) Time Complexity (1) CSCI 2670 Original Slides were written by Dr. Frederick W Maier Spring 2014 Time Complexity So far we ve dealt with determining whether or not a problem is decidable. But even if it

More information

There are two main techniques for showing that problems are undecidable: diagonalization and reduction

There are two main techniques for showing that problems are undecidable: diagonalization and reduction Reducibility 1 There are two main techniques for showing that problems are undecidable: diagonalization and reduction 2 We say that a problem A is reduced to a problem B if the decidability of A follows

More information

Data Structures in Java

Data Structures in Java Data Structures in Java Lecture 21: Introduction to NP-Completeness 12/9/2015 Daniel Bauer Algorithms and Problem Solving Purpose of algorithms: find solutions to problems. Data Structures provide ways

More information

Mathematical Induction

Mathematical Induction Mathematical Induction Let s motivate our discussion by considering an example first. What happens when we add the first n positive odd integers? The table below shows what results for the first few values

More information

Introduction to Turing Machines. Reading: Chapters 8 & 9

Introduction to Turing Machines. Reading: Chapters 8 & 9 Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages

More information

Complexity and NP-completeness

Complexity and NP-completeness Lecture 17 Complexity and NP-completeness Supplemental reading in CLRS: Chapter 34 As an engineer or computer scientist, it is important not only to be able to solve problems, but also to know which problems

More information

Semantics and Generative Grammar. Formal Foundations: A Basic Review of Sets and Functions 1

Semantics and Generative Grammar. Formal Foundations: A Basic Review of Sets and Functions 1 Formal Foundations: A Basic Review of Sets and Functions 1 1. Naïve Set Theory 1.1 Basic Properties of Sets A set is a group of objects. Any group of objects a, b, c forms a set. (1) Representation of

More information

Obsevations, Truth and Logic

Obsevations, Truth and Logic Obsevations, Truth and Logic Jaap van Oosten Department of Mathematics Utrecht University Axioma, Groningen May 9, 2018 Art and Science have the same basic subject matter: Observations. Art (visual art):

More information

Lecture 36: Other Non-computable Problems

Lecture 36: Other Non-computable Problems Lecture 36: Other Non-computable Problems Aims: To show how to prove that other problems are non-computable, which involves reductions from, e.g., the Halting Problem; and To point out how few problems

More information

1 Computational problems

1 Computational problems 80240233: Computational Complexity Lecture 1 ITCS, Tsinghua Univesity, Fall 2007 9 October 2007 Instructor: Andrej Bogdanov Notes by: Andrej Bogdanov The aim of computational complexity theory is to study

More information

Newton s First Law of Motion

Newton s First Law of Motion MATHEMATICS 7302 (Analytical Dynamics) YEAR 2017 2018, TERM 2 HANDOUT #1: NEWTON S FIRST LAW AND THE PRINCIPLE OF RELATIVITY Newton s First Law of Motion Our experience seems to teach us that the natural

More information

Induction 1 = 1(1+1) = 2(2+1) = 3(3+1) 2

Induction 1 = 1(1+1) = 2(2+1) = 3(3+1) 2 Induction 0-8-08 Induction is used to prove a sequence of statements P(), P(), P(3),... There may be finitely many statements, but often there are infinitely many. For example, consider the statement ++3+

More information

Theory of Computation

Theory of Computation Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 13: Algorithmic Unsolvability The Halting Problem I In the last lecture we have shown

More information

Computability Theory

Computability Theory Computability Theory Cristian S. Calude May 2012 Computability Theory 1 / 1 Bibliography M. Sipser. Introduction to the Theory of Computation, PWS 1997. (textbook) Computability Theory 2 / 1 Supplementary

More information

Most General computer?

Most General computer? Turing Machines Most General computer? DFAs are simple model of computation. Accept only the regular languages. Is there a kind of computer that can accept any language, or compute any function? Recall

More information

Section 20: Arrow Diagrams on the Integers

Section 20: Arrow Diagrams on the Integers Section 0: Arrow Diagrams on the Integers Most of the material we have discussed so far concerns the idea and representations of functions. A function is a relationship between a set of inputs (the leave

More information

Automata Theory CS Complexity Theory I: Polynomial Time

Automata Theory CS Complexity Theory I: Polynomial Time Automata Theory CS411-2015-17 Complexity Theory I: Polynomial Time David Galles Department of Computer Science University of San Francisco 17-0: Tractable vs. Intractable If a problem is recursive, then

More information

COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, Hanna Kurniawati

COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, Hanna Kurniawati COMP3702/7702 Artificial Intelligence Week1: Introduction Russell & Norvig ch.1-2.3, 3.1-3.3 Hanna Kurniawati Today } What is Artificial Intelligence? } Better know what it is first before committing the

More information

Automata and Computability

Automata and Computability Automata and Computability Fall 207 Alexis Maciel Department of Computer Science Clarkson University Copyright c 207 Alexis Maciel ii Contents Preface vii Introduction 2 Finite Automata 5 2. Turing Machines...............................

More information

Chapter 6. Net or Unbalanced Forces. Copyright 2011 NSTA. All rights reserved. For more information, go to

Chapter 6. Net or Unbalanced Forces. Copyright 2011 NSTA. All rights reserved. For more information, go to Chapter 6 Net or Unbalanced Forces Changes in Motion and What Causes Them Teacher Guide to 6.1/6.2 Objectives: The students will be able to explain that the changes in motion referred to in Newton s first

More information

Turing Machines Decidability

Turing Machines Decidability Turing Machines Decidability Master Informatique 2016 Some General Knowledge Alan Mathison Turing UK, 1912 1954 Mathematician, computer scientist, cryptanalyst Most famous works: Computation model («Turing

More information

Chapter 1 Welcome Aboard

Chapter 1 Welcome Aboard Chapter 1 Welcome Aboard Abstraction Interface Source: http://static.usnews.rankingsandreviews.com/images/auto/izmo/365609/2014_hyundai_elantra_gt_dashboard.jpg http://www.ridelust.com/wp-content/uploads/2012/12/engine2.jpg

More information

SYST 101: Intro to Systems. Lecture 28

SYST 101: Intro to Systems. Lecture 28 SYST 101: Intro to Systems Lecture 28 April 29, 2004 C. Wells, SEOR Dept. Syst 101 - Lec. 28 Spring 2004 Slide 1 Announcements FINAL EXAM May 11 1:30 4:15 Open book, open notes Syst 101 - Lec. 28 Spring

More information

Solving Quadratic & Higher Degree Equations

Solving Quadratic & Higher Degree Equations Chapter 7 Solving Quadratic & Higher Degree Equations Sec 1. Zero Product Property Back in the third grade students were taught when they multiplied a number by zero, the product would be zero. In algebra,

More information

On the Concept of Enumerability Of Infinite Sets Charlie Obimbo Dept. of Computing and Information Science University of Guelph

On the Concept of Enumerability Of Infinite Sets Charlie Obimbo Dept. of Computing and Information Science University of Guelph On the Concept of Enumerability Of Infinite Sets Charlie Obimbo Dept. of Computing and Information Science University of Guelph ABSTRACT This paper discusses the concept of enumerability of infinite sets.

More information

COSE215: Theory of Computation. Lecture 20 P, NP, and NP-Complete Problems

COSE215: Theory of Computation. Lecture 20 P, NP, and NP-Complete Problems COSE215: Theory of Computation Lecture 20 P, NP, and NP-Complete Problems Hakjoo Oh 2018 Spring Hakjoo Oh COSE215 2018 Spring, Lecture 20 June 6, 2018 1 / 14 Contents 1 P and N P Polynomial-time reductions

More information

7.1 The Origin of Computer Science

7.1 The Origin of Computer Science CS125 Lecture 7 Fall 2016 7.1 The Origin of Computer Science Alan Mathison Turing (1912 1954) turing.jpg 170!201 pixels On Computable Numbers, with an Application to the Entscheidungsproblem 1936 1936:

More information

NP, polynomial-time mapping reductions, and NP-completeness

NP, polynomial-time mapping reductions, and NP-completeness NP, polynomial-time mapping reductions, and NP-completeness In the previous lecture we discussed deterministic time complexity, along with the time-hierarchy theorem, and introduced two complexity classes:

More information