CIS 197 Computers in Society Professor John Peterson Philosophy Week!

Slides:



Advertisements
Similar presentations
Introduction to Turing Machines
Advertisements

CS211 Problems: unsolvable, unfeasible and unsolved Topic 2: Halting problem.
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
Everything you always wanted to know about theoretical computer science (but were afraid to ask) Dimitris Achlioptas Microsoft Research.
The Recursion Theorem Sipser – pages Self replication Living things are machines Living things can self-reproduce Machines cannot self reproduce.
The Big Picture Chapter 3. We want to examine a given computational problem and see how difficult it is. Then we need to compare problems Problems appear.
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.
Alan Turing Start of the 20 th century The Atom Quantum physics Freud Philosophy …and a crisis in Maths!
1 Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible.
Questions Considered l What is computation in the abstract sense? l What can computers do? l What can computers not do? (play basketball, reproduce, hold.
CS1001 Lecture 23. Overview Incompleteness and the Halting Problem Incompleteness and the Halting Problem Methods in Artificial Intelligence Methods in.
1 Foundations of Software Design Fall 2002 Marti Hearst Lecture 29: Computability, Turing Machines, Can Computers Think?
Computability and Complexity 3-1 Turing Machine Computability and Complexity Andrei Bulatov.
Turing Machines CS 105: Introduction to Computer Science.
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.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
10-1 Programming Remember: –programming language –how to program (conceptually) –intro to programming the “ROBOT” computer In this lecture: –programming.
More Theory of Computing
Context-Free Languages Regular Languages Violates Pumping Lemma For RLs Violates Pumping Lemma For CFLs Described by CFG, PDA 0n1n0n1n 0n1n2n0n1n2n Described.
CIS 197 Computers in Society Professor John Peterson Philosophy Week!
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.
The Turing machine Olena Lastivka. Definition Turing machine is a theoretical device that manipulates symbols on a strip of tape according to a table.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
Algorithms and their Applications CS2004 ( ) Dr Stephen Swift 1.2 Introduction to Algorithms.
1 CO Games Development 2 Week 21 Turing Machines & Computability Gareth Bellaby.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
1 8/29/05CS150 Introduction to Computer Science 1 Professor: Shereen Khoja
Unsolvability and Infeasibility. Computability (Solvable) A problem is computable if it is possible to write a computer program to solve it. Can all problems.
1 Turing Machines There are languages that are not context-free. What can we say about the most powerful automata and the limits of computation?. Alan.
Spring 2006ICOM 4036 Programming Laguages Lecture 2 1 The Nature of Computing Prof. Bienvenido Velez ICOM 4036 Lecture 2.
1 CS 2710, ISSP 2610 Foundations of Artificial Intelligence introduction.
Halting Problem Introduction to Computing Science and Programming I.
Cs3102: Theory of Computation Class 14: Turing Machines Spring 2010 University of Virginia David Evans.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
1 What is the big picture? Why study cognitive psychology? –A lot of this stuff you’ve already seen – eg Freud went on and on about memory & forgetting.
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.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Complexity & Computability. Limitations of computer science  Major reasons useful calculations cannot be done:  execution time of program is too long.
September1999 CMSC 203 / 0201 Fall 2002 Week #15 – 2/4/6 December 2002 Prof. Marie desJardins.
T. Gregory BandyInteraction Machines SeminarFebruary 21, Union College - Computer Science Graduate Program Interaction Machines Are they more.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
1 Introduction to Turing Machines
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
CS 154 Formal Languages and Computability April 12 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
DIFFERENTIATION STRATEGIES WELCOME Differentiation Strategies: How to Meet the Instructional Needs of Each Student in Your Classroom DOE# IS Brandman.
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:
CS 154 Formal Languages and Computability April 5 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Fall 2013 Lecture 27: Turing machines and decidability CSE 311: Foundations of Computing.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
CS 3723 Programming Languages
Introduction to Computing Science and Programming I
Computable Functions.
CSE 311 Foundations of Computing I
Turing Machines, Busy Beavers, and Big Questions about Computing
Modeling Computation:
Turing Machines (11.5) Based on slides by Costas Busch from the course
Theory of Computation Turing Machines.
Halting Problem.
CSE S. Tanimoto Turing Completeness
Professor: Shereen Khoja
CO Games Development 2 Week 21 Turing Machines & Computability
Week 11 - Wednesday CS221.
Presentation transcript:

CIS 197 Computers in Society Professor John Peterson Philosophy Week!

Algorithms I've heard from ALMOST everyone so far. Remember to do everything I asked for! I would like a NICE 1 page powerpoint to post on our bulletin board.

Philosophy and CS There are some very deep ideas and some unanswerable questions hanging around in computer science. This week we'll tackle the foundations of computing.

The Universal Computer What is the simplest possible computer (mechanism) that can compute anything that any other computer can? Is this computer as powerful as human reasoning? Observations: * Logicians and philosophers have already attacked this issue! * Alan Turing recast this in a computing context

Alan Turing Turing and Alonzo Church both addressed the idea of computing machines in the 30’s, way before real computers were available. During WW2, Turing helped break the code of the German Enigma machine. He also took on areas that were closer to Philosophy that CS

The Turing Machine Computation is expressed as a set of (numbered) instructions Instructions are very simple! Data is stored on a “tape” one bit at a time The tape is infinite in length but can only advance or rewind one bit at a time.

A Turing Machine Step 1: Step 2: Step 3: Step 4: … Write a 0/1 Move 1 bit forward/backward Tape sees a “1” “To infinity and beyond!” The Program

Instructions * Write a 1/0 onto the tape * Move tape forward / backward 1 bit * Go to a specified step number * If there is a 1 on the tape go to a selected step number * Halt (the program is done!) Note that you could easily be a “turing machine” – the program would be written on a book and you would read the instructions, work the tape, and turn the pages

The Input / Output * The tape initially contains the program input (a “question”) * When the program stops (halt), the tape contains the program output (the “answer”) * Start the program at step one * Note that this describes a function in the mathematical sense The construction of this machine is deceptively simple! It defines a “universal computational process”

What a TM is Remember the TM is not a program – the book with instructions is the program. It is the “machine” that makes an arbitrary program work. A Turing Machine is capable of solving ANY computable problem! No other machine can solve “more” problems – others might be faster but not more capable

An Example Programming a TM is very painful! Here is a program that takes two bits coming and writes out a 1 if both bits are 1: Step 1: if tape = 1 goto step 4 Step 2: write 0 Step 3: halt Step 4: move tape forward Step 5: if tape = 1 goto step 7 Step 6: goto step 2 Step 7: write 1 Step 8: halt

The Church-Turing thesis A Turing Machine is sufficient to solve any problem that can be mechanically described. A Turing machine can handle form 1040EZ A Turing machine can play chess Note that we don’t promise how fast the machine will go – this addresses what is computable, not how easily it can be computed.

The C-T Thesis and Philosophy Why is this a "thesis" (we believe this to be true) rather than a theorem (we can show this is true)?

Consequences of C-T The deep consequence of C-T is that we can’t find a computational task that we (as humans) can do but machines could not. In another view, what this implies is that once a process is defined well enough to be a computer program, it is no longer any sort of mystery. So making a computer that has human responses is limited by our ability to define human response rigorously.

The Church-Turing Thesis Vote NO on the Church-Turing Thesis! The C-T Thesis: Turing Machines may be dumb but you’re no smarter!

The Turing Test If we can't find a "bright line" separating machine intelligence from human intelligence, how are we to distinguish one from the other? Turing proposed a deceptively simple test: talk to a machine and a human in a manner that disguises the speaker and make a decision based on the conversation.

The Turing Test My son passed the Turing Test!!

Learning Machines The final section of Turing's essay is about learning. Rather than teach a computer how to master a specific skill, why not teach it how to learn? Why isn’t programming more like education?