Computable Functions.

Slides:



Advertisements
Similar presentations
Complexity Classes: P and NP
Advertisements

CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Recap CS605: The Mathematics and Theory of Computer Science.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Theory of Computation What types of things are computable? How can we demonstrate what things are computable?
1 Polynomial Church-Turing thesis A decision problem can be solved in polynomial time by using a reasonable sequential model of computation if and only.
Based on Slides by Zeph Grunschlag from Columbia University www1.cs.columbia.edu/~zeph/3261/L14/L14.ppt Basic Computability Reading Material: J. Savage,
© Love Ekenberg The Algorithm Concept, Big O Notation, and Program Verification Love Ekenberg.
1 Computing Functions with Turing Machines. 2 A function Domain: Result Region: has:
Chapter 11: Limitations of Algorithmic Power
Computability and Complexity 10-1 Computability and Complexity Andrei Bulatov Gödel’s Incompleteness Theorem.
Turing Machines CS 105: Introduction to Computer Science.
Computability Thank you for staying close to me!! Learning and thinking More algorithms... computability.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
Introduction to Computer Science. A Quick Puzzle Well-Formed Formula  any formula that is structurally correct  may be meaningless Axiom  A statement.
Introduction to the Theory of Computation
Introduction Chapter 0. Three Central Areas 1.Automata 2.Computability 3.Complexity.
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
Lambda Calculus History and Syntax. History The lambda calculus is a formal system designed to investigate function definition, function application and.
1 CO Games Development 2 Week 21 Turing Machines & Computability Gareth Bellaby.
The Recursion Theorem Pages 217– ADVANCED TOPICS IN C O M P U T A B I L I T Y THEORY.
Institute for Experimental Physics University of Vienna Institute for Quantum Optics and Quantum Information Austrian Academy of Sciences Undecidability.
Undecidable Languages (Chapter 4.2) Héctor Muñoz-Avila.
Prabhas Chongstitvatana1 NP-Complete What is an algorithm What is a proof What is a hard problem NP-Complete problems -- practical problems that are strongly.
CS 345: Chapter 8 Noncomputability and Undecidability Or Sometimes You Can’t Get It Done At All.
Course Overview and Road Map Computability and Logic.
Great Theoretical Ideas in Computer Science.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
Computation Motivating questions: What does “computation” mean? What are the similarities and differences between computation in computers and in natural.
CS 3813: Introduction to Formal Languages and Automata Chapter 13 Other Models of Computation These class notes are based on material from our textbook,
Capabilities of computing systems Numeric and symbolic Computations A look at Computability theory Turing Machines.
Theory of computing, part 4. 1Introduction 2Theoretical background Biochemistry/molecular biology 3Theoretical background computer science 4History of.
Chapter 4 Computation Chapter 4: Computation.
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
Chapter 15 P, NP, and Cook’s Theorem. 2 Computability Theory n Establishes whether decision problems are (only) theoretically decidable, i.e., decides.
1 Introduction to Turing Machines
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
On computable numbers, with an application to the ENTSCHEIDUNGSPROBLEM COT 6421 Paresh Gupta by Alan Mathison Turing.
Week 7 - Wednesday.  What did we talk about last time?  Proving the subset relationship  Proving set equality  Set counterexamples  Laws of set algebra.
Theory of Computation Foundations of Computer Science  Cengage Learning.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 5 Reducibility Some slides are in courtesy.
1 Computing Functions with Turing Machines. 2 A function Domain Result Region has:
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:
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis (Winter 2016, these slides were also used for Day 33)
Recursively Enumerable and Recursive Languages. Definition: A language is recursively enumerable if some Turing machine accepts it.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
Theory of Computation. Introduction We study this course in order to answer the following questions: What are the fundamental capabilities and limitations.
The Acceptance Problem for TMs
CS 461 – Nov. 2 Sets Prepare for ATM finite vs. infinite Infinite sets
CSE202: Introduction to Formal Languages and Automata Theory
CIS Automata and Formal Languages – Pei Wang
Chapter 12: Theory of Computation
Francisco Antonio Doria
CIS Automata and Formal Languages – Pei Wang
Ch. 11 Theory of Computation
Computing Functions with Turing Machines
Other Models of Computation
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
Decidable Languages Costas Busch - LSU.
Computing Functions with Turing Machines
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
Prabhas Chongstitvatana
Class 24: Computability Halting Problems Hockey Team Logo
CS21 Decidability and Tractability
The Church-Turing Thesis and Turing-completeness
CO Games Development 2 Week 21 Turing Machines & Computability
Presentation transcript:

Computable Functions

What is Computation? Paradigm instances of computation Operations on numeric data Operations on character data Function computation Real computers are finite devices, not infinite, like the Turing machine – they can be understood by a circuit model of computation

Three Computational Paradigms Function computation (natural numbers only) Language acceptance (recognition) Transduction (transformation of an input into an appropriate output) Turing machines implement each of these paradigms

Functions and Their Computation A correspondence between a collection of possible input values and a collection of output values Each possible input is assigned a unique output Computing the function Process of determining the particular output value that assigns to a given input

Computable and Non-computable Functions Functions whose output values can be determined algorithmically from their input values Non-computable functions Functions that are so complex that there is no well-defined, step-by-step process for determining their output based on their input values The computation of these functions lies beyond the abilities of any algorithmic system

A Turing Machine Captures the essence of computational process Its computational power is as great as any algorithmic system If a problem can not be solved by a Turing machine, it can not be solved by any algorithmic system Represents a theoretical bound on the capabilities of actual machines

A function has: Result Region: Domain:

Integer Domain Decimal: 5 Binary: 101 We prefer unary representation: easier to manipulate with Turing machines Unary: 11111

Computable Function If TM takes a sequence of numbers as input and leaves only one number as output, we say that the computer has acted like a mathematical function. Any operation that is defined on all sequence of K numbers ( for some K ≥1) and that can be performed by a TM is called Turing Computable or just computable. Example addition, subtraction, max, min, multiplication are computable function and defined for K = 2. Identity, successor are computable functions defined for K = 1, so there is only one input

Identity TM Successor TM

Computer Science Law: A computation is mechanical if and only if it can be performed by a Turing Machine There is no known model of computation more powerful than Turing Machines

Alonzo Church’s Thesis (1936) “It is believed that there is no functions that can be defined by humans, whose calculation can be described by any well-defined mathematical algorithm that people can be taught to perform, that cannot be computed by TM” Unfortunately the Church thesis is not a theorem because the terms ( in red) are not part of any math branch and mathematical axioms deals with “people”.

Kurt Gödel 1930 Church’s thesis Anything that can be defined by algorithm, can also be performed by TM/PM David Hilbert in 1900 said following things to be proved by later mathematician Mathematics is consistent. Roughly we cant prove both a statement and its opposite to be true. Nor we can prove horrible like 1 = 2. Mathematics is complete. Roughly every “true” mathematical assertion can be proven. Every mathematical assertion can either be proven or disproven Mathematics is decidable. For every type of mathematical problem there is an algorithm that, “in theory” at least, can be mechanically followed to give a solution. Church, Turing, Post 1936