Computability. What can be computed?

Similar documents
CITS2211 Discrete Structures Turing Machines

Turing Machines (TM)

Automata and Formal Languages - CM0081 Turing Machines

of the hypothesis, but it would not lead to a proof. P 1

CSCI3390-Lecture 8: Undecidability of a special case of the tiling problem

Tiling Problems. This document supersedes the earlier notes posted about the tiling problem. 1 An Undecidable Problem about Tilings of the Plane

Oracle Turing Machine. Kaixiang Wang

Technical framework of Operating System using Turing Machines

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

Reflector A Dynamic Manifestation of Turing Machines with Time and Space Complexity Analysis

Implementation of Recursively Enumerable Languages in Universal Turing Machine

2359 (i.e. 11:59:00 pm) on 4/16/18 via Blackboard

CDT314 FABER Formal Languages, Automata and Models of Computation MARK BURGIN INDUCTIVE TURING MACHINES

Membrane Computing as Multi Turing Machines

Sequential program, state machine, Concurrent process models

COSE312: Compilers. Lecture 5 Lexical Analysis (4)

Introduction to Computer Engineering. CS/ECE 252, Spring 2013 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

The Tiling Problem. Nikhil Gopalkrishnan. December 08, 2008

Cardinality. Hebrew alphabet). We write S = ℵ 0 and say that S has cardinality aleph null.

DVA325 Formal Languages, Automata and Models of Computation (FABER)

Cardinality revisited

Multiplayer Pushdown Games. Anil Seth IIT Kanpur

Enhanced Turing Machines

THE ENUMERATION OF PERMUTATIONS SORTABLE BY POP STACKS IN PARALLEL

Halting Problem. Implement HALT? Today. Halt does not exist. Halt and Turing. Another view of proof: diagonalization. P - program I - input.

Sets. Gazihan Alankuş (Based on original slides by Brahim Hnich et al.) August 6, Outline Sets Equality Subset Empty Set Cardinality Power Set

A Definition of Artificial Intelligence

A Learning System for a Computational Science Related Topic

7/22/14. Lecture Notes. Chapter 1 Welcome Aboard. Introduction to Computing Systems: From Bits and Gates to C and Beyond 2 nd Edition

Once you get a solution draw it below, showing which three pennies you moved and where you moved them to. My Solution:

CSE 355: Human-aware Robo.cs Introduction to Theoretical Computer Science

Formulas for Primes. Eric Rowland Hofstra University. Eric Rowland Formulas for Primes / 27

FORMAL DEFINITION OF ARTIFICIAL INTELLIGENCE 1

Title? Alan Turing and the Theoretical Foundation of the Information Age

RE-DESIGNING THE PACMAN GAME USING PUSH DOWN AUTOMATA

Constructing Simple Nonograms of Varying Difficulty

Advanced Automata Theory 4 Games

Computation. Philosophical Issues. Instructor: Viola Schiaffonati. March, 26 th 2018

Unit-II----Analysis of HVDC Converters

Introduction to cognitive science Session 3: Cognitivism

On the Power of Interactive Computing

CSCI 1590 Intro to Computational Complexity

Regular Expressions and Regular Languages. BBM Automata Theory and Formal Languages 1

code V(n,k) := words module

Dr. Vincent Lau

Overview: The works of Alan Turing ( )

Computer Science 1001.py. Lecture 25 : Intro to Error Correction and Detection Codes

CS 188 Fall Introduction to Artificial Intelligence Midterm 1

The Complexity of Request-Response Games

Conversion Masters in IT (MIT) AI as Representation and Search. (Representation and Search Strategies) Lecture 002. Sandro Spina

The Beauty and Joy of Computing

Strings. A string is a list of symbols in a particular order.

PUZZLES ON GRAPHS: THE TOWERS OF HANOI, THE SPIN-OUT PUZZLE, AND THE COMBINATION PUZZLE

Lecture 20 November 13, 2014

POKER (AN INTRODUCTION TO COUNTING)

1111: Linear Algebra I

Leaming Parallel Computing Concepts via a Turing Machine Simulator

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2014

CSE 473 Midterm Exam Feb 8, 2018

Cardinality and Bijections

CSCI 2570 Introduction to Nanocomputing

Strategic Bargaining. This is page 1 Printer: Opaq

1. Functions and set sizes 2. Infinite set sizes. ! Let X,Y be finite sets, f:x!y a function. ! Theorem: If f is injective then X Y.

Game Theory and Economics of Contracts Lecture 4 Basics in Game Theory (2)

Extensive Games with Perfect Information A Mini Tutorial

Week 3-4: Permutations and Combinations

One computer theorist s view of cognitive systems

CSE 20 DISCRETE MATH. Fall

Abstract and Kinetic Tile Assembly Model

Logic and the Sizes of Sets

Computability of Tilings

Dynamic Games: Backward Induction and Subgame Perfection

On the isomorphism problem of Coxeter groups and related topics

A Serial Bitstream Processor for Smart Sensor Systems

Smart Cities. SESSION I : Lecture 2: Turing s s Legacy. Michael

Walking on Numbers and a Self-Referential Formula

Qualitative Determinacy and Decidability of Stochastic Games with Signals

Computing Permutations with Stacks and Deques

It is important that you show your work. The total value of this test is 220 points.

IST 4 Information and Logic

Chapter 9: Operational Amplifiers

Chapter 1. Set Theory

Program Testing and Analysis: Symbolic and Concolic Testing (Part 2) Dr. Michael Pradel Software Lab, TU Darmstadt

Computer Science as a Discipline

PD-SETS FOR CODES RELATED TO FLAG-TRANSITIVE SYMMETRIC DESIGNS. Communicated by Behruz Tayfeh Rezaie. 1. Introduction

Thinking and Being FIT

Computability of Tilings

Section 8.1. Sequences and Series

The exam is closed book, closed calculator, and closed notes except your one-page crib sheet.

Advanced Automata Theory 5 Infinite Games

Digital Images: A Technical Introduction

Homeotoxal and Homeohedral Tiling Using Pasting Scheme

Outline. In One Slide. LR Parsing. LR Parsing. No Stopping The Parsing! Bottom-Up Parsing. LR(1) Parsing Tables #2

Qualitative Determinacy and Decidability of Stochastic Games with Signals

A Balanced Introduction to Computer Science, 3/E

Game theory attempts to mathematically. capture behavior in strategic situations, or. games, in which an individual s success in

Problem Solving and Search

arxiv: v1 [cs.ds] 14 Nov 2011

Lab 2. CS 3793/5233 Fall 2016 assigned September 13, 2016 Tom Bylander, Instructor due midnight, September 30, 2016

Computational Thinking

Transcription:

Computability What can be computed?

Computability What can be computed? read/write tape 0 1 1 0 control

Computability What can be computed? read/write tape 0 1 1 0 control

Computability What can be computed? read/write tape 0 1 1 0 control

Computability What can be computed? read/write tape 0 1 1 0 control

Computability What can be computed? read/write tape 0 1 1 0 control

Computability What can be computed? read/write tape 1 1 1 0 control

Computability What can be computed? read/write tape 1 0 1 0 control

Turing machine Alan Turing (1912-1954)

Definition of a Turing machine Definition A Turing machine is a 7-tuple (Q, Σ, Γ, δ, q 0, q accept, q reject ) where Q is the finite set of states Σ is the finite input alphabet not containing the blank symbol B Γ is the finite tape alphabet where B Γ and Σ Γ δ : Q Γ Q Γ {L, R} is the transition function q 0 Q is the start state q accept Q is the accept state q reject Q is the reject state

Comparision with finite automata A Turing machine can both write on the tape and read from it The read-write head can move both to the left and right The tape is infinite The special states for rejecting and accepting take effect immediately

Turing machine computation Initially the machine recieves the input on the leftmost part of the tape Computation proceeds according to the transition function The computation continues until the machine enters the accept or reject states at which point it halts. The machine may continue forever without entering the accept or reject states, in which case we say that the machine loops.

Turing-recognizable, decidable Definition The collection of strings that a Turing machine M accepts is the language recognized by M, denoted L(M)

Turing-recognizable, decidable Definition The collection of strings that a Turing machine M accepts is the language recognized by M, denoted L(M) Definition A language is Turing-recognizable if some Turing machine recognizes it

Turing-recognizable, decidable Definition The collection of strings that a Turing machine M accepts is the language recognized by M, denoted L(M) Definition A language is Turing-recognizable if some Turing machine recognizes it Definition A language is decidable if some Turing machine recognizes it and rejects all strings that are not in the language

Turing machines, decidable Definition A language is decidable if some Turing machine recognizes it and rejects all strings that are not in the language Example Consider a Turing machine M with Σ = {0, 1} that works as follows: M accept all strings of even length and loop on all strings of odd length.

Turing machines, decidable Definition A language is decidable if some Turing machine recognizes it and rejects all strings that are not in the language Example Consider a Turing machine M with Σ = {0, 1} that works as follows: M accept all strings of even length and loop on all strings of odd length. Is L(M) decidable?

Turing machines, decidable Definition A language is decidable if some Turing machine recognizes it and rejects all strings that are not in the language Example Consider a Turing machine M with Σ = {0, 1} that works as follows: M accept all strings of even length and loop on all strings of odd length. Is L(M) decidable? YES! For example by the Turing machine M which accept all strings of even length and reject all strings of odd length.

Describing Turing machines Machine code Assembly code Java code Pseudo code Algorithm description

Describing Turing machines Example Describe a Turing machine that recognizes the language L = {0 n 1 n 2 n n 0}. 1 Scan the input from left to right and make sure it is of the form 0 1 2 (if it is not, then reject) 2 Return the head to the left end of the tape 3 If there is no 0 on the tape, then scan right and check that there are no 1 s and 2 s on the tape and accept (should a 1 or 2 be on the tape, then reject) 4 Otherwise, cross of the first 0 and continue to the right crossing of the first 1 and the first 2 that is found (should there be no 1 or no 2 on the tape, then reject) 5 Go to Step 2

Alternatives to Turing machines? Why are Turing machines a good model for computation?

Alternatives to Turing machines? Why are Turing machines a good model for computation? There should be more powerful machines, right?

Alternatives to Turing machines? Alonzo Church (1903-1995)

Church-Turing thesis Intuitive notion of computation equals Turing machine computation