Computability Flashcards
Definition of computability
function if is computable if some program P computes it for any input x, the computation p x halts with output f x
intensional equalilty
same result but different algorithmic complexity
What does it mean for a function to be computable
Turing - iff can be computed on a turing machine
Godel: iff it is general recursive
Church: iff can be written as lambda notation
Algorithm vs computable function
Algo - finite set of instructions which given input enables to obtain output through systematic execution o the instructions and terminates after a finite number of steps
comp - algo is used to calculate the value of a numerical function then the function is calculable
- seeks to answer a specific problem under a specfic model of computation
What is the output of computation
successful result
some eror
does not terminate
cannot be solved at all - computability issue
cannot be solved efficiently - complexity issue
Formalization of an algorithm should be:
Precise (unambiguous)
simple
general
waht is the church turing hypothesis
prgramming language doesnt matter, all reasonal languages define the same classes of computable functions
Problem can be solved iff can be solved by a turing machine
Turing complete
if can be implemented on a turing machine then it is turing complete
- i.e. all computable functions and thus programming languages
Turing complete problem
any problem solved on a turing machine using finite time and resources can be solved with any programming language using finite resources
Similar models of computation
register machines
lambda notation
pseudo code
turing machines
What is the halting problem
given an arbitrary TM and its input tape will the machine eventually halt?
provably uncomputable, therefore cannot be solved in practice
Desision problem
Problem set with YES/NO answers is called undecidable if there is no algorithm that terminates witht he corret answer or every problem in the set
decidable problems
there is an algorithm that solves it
undeciable
there no is algo to solve it, might be procedure but it doesnt always terminate