Standing on the Shoulders of a Giant

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

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

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

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

Lecture Notes: The Halting Problem; Reductions

ECS 120 Lesson 18 Decidable Problems, the Halting Problem

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

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

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

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

CSCI3390-Lecture 6: An Undecidable Problem

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

Decidable Languages - relationship with other classes.

Lecture 12 Combinatorial Planning in High Dimensions

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

CS154, Lecture 10: Rice s Theorem, Oracle Machines

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

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

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

CS151 Complexity Theory. Lecture 1 April 3, 2017

A non-turing-recognizable language

Handouts. CS701 Theory of Computation

Lecture 12: Mapping Reductions

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

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

Computability, Undeciability and the Halting Problem

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

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

Lecture 22: Quantum computational complexity

CSE 105 THEORY OF COMPUTATION

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

6-1 Computational Complexity

Time-bounded computations

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

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

Church s undecidability result

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

Problems, and How Computer Scientists Solve Them Manas Thakur

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

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

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

Decidability and Undecidability

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

Section 14.1 Computability then else

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

CS187 - Science Gateway Seminar for CS and Math

Introduction to Algebra: The First Week

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

Lecture notes on Turing machines

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

NP-Complete Problems

2 Computable and Computably Enumerable Sets

Computability and Complexity

Turing Machine Recap

Fundamentals of Computer Science

Lesson 6-1: Relations and Functions

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

Introduction to Computational Complexity

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

Limits of Computation

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

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

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

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

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

Computational Models Lecture 9, Spring 2009

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

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

6.080 / Great Ideas in Theoretical Computer Science Spring 2008

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

Automata Theory CS S-FR2 Final Review

CSCI3390-Assignment 2 Solutions

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

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

Data Structures in Java

Mathematical Induction

Introduction to Turing Machines. Reading: Chapters 8 & 9

Complexity and NP-completeness

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

Obsevations, Truth and Logic

Lecture 36: Other Non-computable Problems

1 Computational problems

Newton s First Law of Motion

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

Theory of Computation

Computability Theory

Most General computer?

Section 20: Arrow Diagrams on the Integers

Automata Theory CS Complexity Theory I: Polynomial Time

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

Automata and Computability

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

Turing Machines Decidability

Chapter 1 Welcome Aboard

SYST 101: Intro to Systems. Lecture 28

Solving Quadratic & Higher Degree Equations

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

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

7.1 The Origin of Computer Science

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

Transcription:

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

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

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

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

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

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

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

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, )

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 ).

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

The Giant, part I Computability

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

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!!

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)

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

1 2 3

1 2 3 Can tile any sized area

1 2 3

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

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!!

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.

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

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)

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

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

OK not OK! contains information not in the original structure

Now let s change the original structure a little

this is now OK!

Computable a la Turing This is the crucial thing

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

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

FOCS 1980, complexity theory on structures closing slide

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

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

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

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

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

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

The Giant, part II Biological Modeling

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)

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)

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

Normal growth:

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

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

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

The Giant, part III Artificial Intelligence

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

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

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

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

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

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.

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?

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

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

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

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

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.)

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

1987/1992/2004/ 2012 2001/2004/ 2012

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

Thank you for listening