![Page 1: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/1.jpg)
Mathematical LogicIntroduction to Theory of Computability
Nikolaj Popov and Tudor Jebelean
Research Institute for Symbolic Computation, Linz
![Page 2: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/2.jpg)
Outline
ComputabilityPreliminariesPrimitive Recursive FunctionsPartial FunctionsEnumeration of the Computable Functions
DecidabilityDecidable and Semidecidable Sets
The Halting Problem
![Page 3: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/3.jpg)
Outline
ComputabilityPreliminariesPrimitive Recursive FunctionsPartial FunctionsEnumeration of the Computable Functions
DecidabilityDecidable and Semidecidable Sets
The Halting Problem
![Page 4: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/4.jpg)
Introduction
Various notions of computation developed by Church, Turingand Kleene
The three computational models (recursion, λ-calculus, and Turingmachine) were shown to be equivalent (1934).
Church-Turing thesisAny real-world computation can be translated into an equivalentcomputation involving a Turing machine (or a program in anyreasonable programming language).
The intuitive notion of effective computability for functions andalgorithms is formally expressed by Turing machines or the lambdacalculus.
A function is computable, in the intuitive sense, if and only if it isTuring-computable.
![Page 5: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/5.jpg)
Introduction
Various notions of computation developed by Church, Turingand Kleene
The three computational models (recursion, λ-calculus, and Turingmachine) were shown to be equivalent (1934).
Church-Turing thesisAny real-world computation can be translated into an equivalentcomputation involving a Turing machine (or a program in anyreasonable programming language).
The intuitive notion of effective computability for functions andalgorithms is formally expressed by Turing machines or the lambdacalculus.
A function is computable, in the intuitive sense, if and only if it isTuring-computable.
![Page 6: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/6.jpg)
Introduction
Various notions of computation developed by Church, Turingand Kleene
The three computational models (recursion, λ-calculus, and Turingmachine) were shown to be equivalent (1934).
Church-Turing thesisAny real-world computation can be translated into an equivalentcomputation involving a Turing machine (or a program in anyreasonable programming language).
The intuitive notion of effective computability for functions andalgorithms is formally expressed by Turing machines or the lambdacalculus.
A function is computable, in the intuitive sense, if and only if it isTuring-computable.
![Page 7: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/7.jpg)
Introduction
Various notions of computation developed by Church, Turingand Kleene
The three computational models (recursion, λ-calculus, and Turingmachine) were shown to be equivalent (1934).
Church-Turing thesisAny real-world computation can be translated into an equivalentcomputation involving a Turing machine (or a program in anyreasonable programming language).
The intuitive notion of effective computability for functions andalgorithms is formally expressed by Turing machines or the lambdacalculus.
A function is computable, in the intuitive sense, if and only if it isTuring-computable.
![Page 8: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/8.jpg)
Introduction
Various notions of computation developed by Church, Turingand Kleene
The three computational models (recursion, λ-calculus, and Turingmachine) were shown to be equivalent (1934).
Church-Turing thesisAny real-world computation can be translated into an equivalentcomputation involving a Turing machine (or a program in anyreasonable programming language).
The intuitive notion of effective computability for functions andalgorithms is formally expressed by Turing machines or the lambdacalculus.
A function is computable, in the intuitive sense, if and only if it isTuring-computable.
![Page 9: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/9.jpg)
Preliminaries
Domain of a functionDom[f ] = {x | f [x ] is defined}
Range of a functionRan[f ] = {y | ∃x ∈ Dom[f ] ∧ f [x ] = y}
Graph of a functionGraph[f ] = {〈x , y〉 | x ∈ Dom[f ] ∧ f [x ] = y}
Partial equality(∀x , y) (f [x ] ' y ⇔ 〈x , y〉 ∈ Graph[f ])
![Page 10: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/10.jpg)
Preliminaries
Domain of a functionDom[f ] = {x | f [x ] is defined}
Range of a functionRan[f ] = {y | ∃x ∈ Dom[f ] ∧ f [x ] = y}
Graph of a functionGraph[f ] = {〈x , y〉 | x ∈ Dom[f ] ∧ f [x ] = y}
Partial equality(∀x , y) (f [x ] ' y ⇔ 〈x , y〉 ∈ Graph[f ])
![Page 11: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/11.jpg)
Preliminaries
Domain of a functionDom[f ] = {x | f [x ] is defined}
Range of a functionRan[f ] = {y | ∃x ∈ Dom[f ] ∧ f [x ] = y}
Graph of a functionGraph[f ] = {〈x , y〉 | x ∈ Dom[f ] ∧ f [x ] = y}
Partial equality(∀x , y) (f [x ] ' y ⇔ 〈x , y〉 ∈ Graph[f ])
![Page 12: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/12.jpg)
Preliminaries
Domain of a functionDom[f ] = {x | f [x ] is defined}
Range of a functionRan[f ] = {y | ∃x ∈ Dom[f ] ∧ f [x ] = y}
Graph of a functionGraph[f ] = {〈x , y〉 | x ∈ Dom[f ] ∧ f [x ] = y}
Partial equality(∀x , y) (f [x ] ' y ⇔ 〈x , y〉 ∈ Graph[f ])
![Page 13: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/13.jpg)
Preliminaries
f is defined on xf [x ] ↓ ⇔ ∃y (x , y) ∈ Graph[f ]
Partial equality '(∀x) (f [x ] ' g[x ])iff(∀x) (f [x ] ↓ ⇔ g[x ] ↓)(∀x) (f [x ] ↓ ⇒ f [x ] = g[x ])
f is computablef is computable function iffthere exists a program P which computes it
![Page 14: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/14.jpg)
Preliminaries
f is defined on xf [x ] ↓ ⇔ ∃y (x , y) ∈ Graph[f ]
Partial equality '(∀x) (f [x ] ' g[x ])iff(∀x) (f [x ] ↓ ⇔ g[x ] ↓)(∀x) (f [x ] ↓ ⇒ f [x ] = g[x ])
f is computablef is computable function iffthere exists a program P which computes it
![Page 15: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/15.jpg)
Preliminaries
f is defined on xf [x ] ↓ ⇔ ∃y (x , y) ∈ Graph[f ]
Partial equality '(∀x) (f [x ] ' g[x ])iff(∀x) (f [x ] ↓ ⇔ g[x ] ↓)(∀x) (f [x ] ↓ ⇒ f [x ] = g[x ])
f is computablef is computable function iffthere exists a program P which computes it
![Page 16: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/16.jpg)
Superposition
h is a superposition of f ,g1, . . . ,gk
h[x ] ' f [g1[x ], . . . ,gk [x ]]
TheoremGiven the computable functions f ,g1, . . . ,gk , thenh[x ] ' f [g1[x ], . . . ,gk [x ]] is computable function.
Superposition preserves computability.
![Page 17: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/17.jpg)
Superposition
h is a superposition of f ,g1, . . . ,gk
h[x ] ' f [g1[x ], . . . ,gk [x ]]
TheoremGiven the computable functions f ,g1, . . . ,gk , thenh[x ] ' f [g1[x ], . . . ,gk [x ]] is computable function.
Superposition preserves computability.
![Page 18: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/18.jpg)
Superposition
h is a superposition of f ,g1, . . . ,gk
h[x ] ' f [g1[x ], . . . ,gk [x ]]
TheoremGiven the computable functions f ,g1, . . . ,gk , thenh[x ] ' f [g1[x ], . . . ,gk [x ]] is computable function.
Superposition preserves computability.
![Page 19: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/19.jpg)
Primitive Recursion
h is obtained by weak primitive recursion from g and a
h[x ] '{
a ⇐ x = 0g[x ,h[x − 1]] ⇐ o.w.
h is obtained by primitive recursion from f and g
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
Primitive recursion preserves computability.
![Page 20: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/20.jpg)
Primitive Recursion
h is obtained by weak primitive recursion from g and a
h[x ] '{
a ⇐ x = 0g[x ,h[x − 1]] ⇐ o.w.
h is obtained by primitive recursion from f and g
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
Primitive recursion preserves computability.
![Page 21: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/21.jpg)
Primitive Recursion
h is obtained by weak primitive recursion from g and a
h[x ] '{
a ⇐ x = 0g[x ,h[x − 1]] ⇐ o.w.
h is obtained by primitive recursion from f and g
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
Primitive recursion preserves computability.
![Page 22: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/22.jpg)
Primitive Recursive Functions
The basic functions are primitive recursiveO[x ] ' 0S[x ] ' x + 1Ini [x ] ' xi
The superposition is primitive recursiveIf f ,g1, . . . ,gk are primitive recursive, thenh[x ] ' f [g1[x ], . . . ,gk [x ]]
is primitive recursive.
The primitive recursion is primitive recursiveIf f and g are primitive recursive, then
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
is primitive recursive.
![Page 23: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/23.jpg)
Primitive Recursive Functions
The basic functions are primitive recursiveO[x ] ' 0S[x ] ' x + 1Ini [x ] ' xi
The superposition is primitive recursiveIf f ,g1, . . . ,gk are primitive recursive, thenh[x ] ' f [g1[x ], . . . ,gk [x ]]
is primitive recursive.
The primitive recursion is primitive recursiveIf f and g are primitive recursive, then
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
is primitive recursive.
![Page 24: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/24.jpg)
Primitive Recursive Functions
The basic functions are primitive recursiveO[x ] ' 0S[x ] ' x + 1Ini [x ] ' xi
The superposition is primitive recursiveIf f ,g1, . . . ,gk are primitive recursive, thenh[x ] ' f [g1[x ], . . . ,gk [x ]]
is primitive recursive.
The primitive recursion is primitive recursiveIf f and g are primitive recursive, then
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
is primitive recursive.
![Page 25: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/25.jpg)
Primitive Recursion
TheoremAll the primitive recursive functions are computable.
TheoremAll the primitive recursive functions are total.
![Page 26: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/26.jpg)
Primitive Recursion
TheoremAll the primitive recursive functions are computable.
TheoremAll the primitive recursive functions are total.
![Page 27: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/27.jpg)
Examples
Addition is primitive recursivef1[x , y ] ' x + y
f1[x , y ] '{
x ⇐ y = 0S[f1[x , y − 1]] ⇐ o.w.
Multiplication is primitive recursivef2[x , y ] ' x .y
f2[x , y ] '{
0 ⇐ y = 0x + f2[x , y − 1] ⇐ o.w.
![Page 28: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/28.jpg)
Examples
Addition is primitive recursivef1[x , y ] ' x + y
f1[x , y ] '{
x ⇐ y = 0S[f1[x , y − 1]] ⇐ o.w.
Multiplication is primitive recursivef2[x , y ] ' x .y
f2[x , y ] '{
0 ⇐ y = 0x + f2[x , y − 1] ⇐ o.w.
![Page 29: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/29.jpg)
Examples
Addition is primitive recursivef1[x , y ] ' x + y
f1[x , y ] '{
x ⇐ y = 0S[f1[x , y − 1]] ⇐ o.w.
Multiplication is primitive recursivef2[x , y ] ' x .y
f2[x , y ] '{
0 ⇐ y = 0x + f2[x , y − 1] ⇐ o.w.
![Page 30: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/30.jpg)
Examples
Addition is primitive recursivef1[x , y ] ' x + y
f1[x , y ] '{
x ⇐ y = 0S[f1[x , y − 1]] ⇐ o.w.
Multiplication is primitive recursivef2[x , y ] ' x .y
f2[x , y ] '{
0 ⇐ y = 0x + f2[x , y − 1] ⇐ o.w.
![Page 31: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/31.jpg)
ExamplesPower is primitive recursivef3[x , y ] ' xy
f3[x , y ] '{
1 ⇐ y = 0x .f3[x , y − 1]] ⇐ o.w.
Subtraction-dot-one is primitive recursive
f4[x ] ' x−̇1 '{
0 ⇐ x = 0x − 1 ⇐ o.w.
f4[x ] '{
0 ⇐ x = 0f4[x − 1] + 1 ⇐ o.w.
![Page 32: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/32.jpg)
ExamplesPower is primitive recursivef3[x , y ] ' xy
f3[x , y ] '{
1 ⇐ y = 0x .f3[x , y − 1]] ⇐ o.w.
Subtraction-dot-one is primitive recursive
f4[x ] ' x−̇1 '{
0 ⇐ x = 0x − 1 ⇐ o.w.
f4[x ] '{
0 ⇐ x = 0f4[x − 1] + 1 ⇐ o.w.
![Page 33: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/33.jpg)
ExamplesPower is primitive recursivef3[x , y ] ' xy
f3[x , y ] '{
1 ⇐ y = 0x .f3[x , y − 1]] ⇐ o.w.
Subtraction-dot-one is primitive recursive
f4[x ] ' x−̇1 '{
0 ⇐ x = 0x − 1 ⇐ o.w.
f4[x ] '{
0 ⇐ x = 0f4[x − 1] + 1 ⇐ o.w.
![Page 34: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/34.jpg)
ExamplesPower is primitive recursivef3[x , y ] ' xy
f3[x , y ] '{
1 ⇐ y = 0x .f3[x , y − 1]] ⇐ o.w.
Subtraction-dot-one is primitive recursive
f4[x ] ' x−̇1 '{
0 ⇐ x = 0x − 1 ⇐ o.w.
f4[x ] '{
0 ⇐ x = 0f4[x − 1] + 1 ⇐ o.w.
![Page 35: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/35.jpg)
ExamplesSubtraction-dot is primitive recursive
f5[x , y ] ' x−̇y '{
0 ⇐ x < yx − y ⇐ o.w.
f5[x , y ] '{
x ⇐ y = 0f5[x , y − 1]−̇1 ⇐ o.w.
Factorial is primitive recursivef6[x ] ' x!
f6[x ] '{
1 ⇐ x = 0x .f6[x − 1]] ⇐ o.w.
![Page 36: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/36.jpg)
ExamplesSubtraction-dot is primitive recursive
f5[x , y ] ' x−̇y '{
0 ⇐ x < yx − y ⇐ o.w.
f5[x , y ] '{
x ⇐ y = 0f5[x , y − 1]−̇1 ⇐ o.w.
Factorial is primitive recursivef6[x ] ' x!
f6[x ] '{
1 ⇐ x = 0x .f6[x − 1]] ⇐ o.w.
![Page 37: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/37.jpg)
ExamplesSubtraction-dot is primitive recursive
f5[x , y ] ' x−̇y '{
0 ⇐ x < yx − y ⇐ o.w.
f5[x , y ] '{
x ⇐ y = 0f5[x , y − 1]−̇1 ⇐ o.w.
Factorial is primitive recursivef6[x ] ' x!
f6[x ] '{
1 ⇐ x = 0x .f6[x − 1]] ⇐ o.w.
![Page 38: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/38.jpg)
ExamplesSubtraction-dot is primitive recursive
f5[x , y ] ' x−̇y '{
0 ⇐ x < yx − y ⇐ o.w.
f5[x , y ] '{
x ⇐ y = 0f5[x , y − 1]−̇1 ⇐ o.w.
Factorial is primitive recursivef6[x ] ' x!
f6[x ] '{
1 ⇐ x = 0x .f6[x − 1]] ⇐ o.w.
![Page 39: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/39.jpg)
ExamplesSign is primitive recursive
sg[x ] '{
0 ⇐ x = 01 ⇐ o.w.
sg[x ] '{
0 ⇐ x = 0O[sg[x − 1]] + 1 ⇐ o.w.
Opposite-sign is primitive recursive
sg[x ] '{
1 ⇐ x = 00 ⇐ o.w.
sg[x ] '{
1 ⇐ x = 0O[sg[x − 1]] ⇐ o.w.
![Page 40: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/40.jpg)
ExamplesSign is primitive recursive
sg[x ] '{
0 ⇐ x = 01 ⇐ o.w.
sg[x ] '{
0 ⇐ x = 0O[sg[x − 1]] + 1 ⇐ o.w.
Opposite-sign is primitive recursive
sg[x ] '{
1 ⇐ x = 00 ⇐ o.w.
sg[x ] '{
1 ⇐ x = 0O[sg[x − 1]] ⇐ o.w.
![Page 41: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/41.jpg)
ExamplesSign is primitive recursive
sg[x ] '{
0 ⇐ x = 01 ⇐ o.w.
sg[x ] '{
0 ⇐ x = 0O[sg[x − 1]] + 1 ⇐ o.w.
Opposite-sign is primitive recursive
sg[x ] '{
1 ⇐ x = 00 ⇐ o.w.
sg[x ] '{
1 ⇐ x = 0O[sg[x − 1]] ⇐ o.w.
![Page 42: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/42.jpg)
ExamplesSign is primitive recursive
sg[x ] '{
0 ⇐ x = 01 ⇐ o.w.
sg[x ] '{
0 ⇐ x = 0O[sg[x − 1]] + 1 ⇐ o.w.
Opposite-sign is primitive recursive
sg[x ] '{
1 ⇐ x = 00 ⇐ o.w.
sg[x ] '{
1 ⇐ x = 0O[sg[x − 1]] ⇐ o.w.
![Page 43: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/43.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 44: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/44.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 45: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/45.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 46: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/46.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 47: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/47.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 48: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/48.jpg)
Examples
Absolute value is primitive recursivemod [x , y ] ' |x − y |
mod [x , y ] ' (x−̇y) + (y−̇x)
Minimum is primitive recursivemin[x , y ]
min[x , y ] ' x−̇(x−̇y)
Maximum is primitive recursivemax [x , y ]
max [x , y ] ' x + (y−̇x)
![Page 49: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/49.jpg)
Primitive recursion. Properties
Theorem If then elseLet f0, f1,g be primitive recursive.Then
h[x ] '{
f0[x ] ⇐ g[x ] = 0f1[x ] ⇐ o.w.
is primitive recursive.
proof:h[x ] ' sg[g[x ]].f0[x ] + sg[g[x ]].f1[x ]
![Page 50: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/50.jpg)
Primitive recursion. Properties
Theorem If then elseLet f0, f1,g be primitive recursive.Then
h[x ] '{
f0[x ] ⇐ g[x ] = 0f1[x ] ⇐ o.w.
is primitive recursive.
proof:h[x ] ' sg[g[x ]].f0[x ] + sg[g[x ]].f1[x ]
![Page 51: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/51.jpg)
Primitive recursion. Properties
Theorem If then1 . . . thenk elseLet f0, . . . , fk ,g0, . . . ,gk−1 be primitive recursive.Then
h[x ] '
f0[x ] ⇐ g0[x ] = 0f1[x ] ⇐ g0[x ] 6= 0 ∧ g1[x ] = 0. . .. . .fk [x ] ⇐ o.w.
is primitive recursive.
![Page 52: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/52.jpg)
Partial Functions
While loopinput [x ]y := 0while f [x , y ] > 0 do y := y + 1return[y ]
g is obtained by minimization from fg[x ] ' yiff∀z < y(f [x , z] ↓ ∧ f [x , z] > 0)
f [x , y ] ' 0
g is obtained by minimization from fg[x ] ' µy [f [x , y ] = 0]
![Page 53: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/53.jpg)
Partial Functions
While loopinput [x ]y := 0while f [x , y ] > 0 do y := y + 1return[y ]
g is obtained by minimization from fg[x ] ' yiff∀z < y(f [x , z] ↓ ∧ f [x , z] > 0)
f [x , y ] ' 0
g is obtained by minimization from fg[x ] ' µy [f [x , y ] = 0]
![Page 54: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/54.jpg)
Partial Functions
While loopinput [x ]y := 0while f [x , y ] > 0 do y := y + 1return[y ]
g is obtained by minimization from fg[x ] ' yiff∀z < y(f [x , z] ↓ ∧ f [x , z] > 0)
f [x , y ] ' 0
g is obtained by minimization from fg[x ] ' µy [f [x , y ] = 0]
![Page 55: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/55.jpg)
Partial Functions
The basic functions are partialO[x ] ' 0S[x ] ' x + 1Ini [x ] ' xi
The superposition is partialIf f ,g1, . . . ,gk are partial, thenh[x ] ' f [g1[x ], . . . ,gk [x ]]
is partial.
![Page 56: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/56.jpg)
Partial Functions
The basic functions are partialO[x ] ' 0S[x ] ' x + 1Ini [x ] ' xi
The superposition is partialIf f ,g1, . . . ,gk are partial, thenh[x ] ' f [g1[x ], . . . ,gk [x ]]
is partial.
![Page 57: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/57.jpg)
Partial Functions
The primitive recursion is partialIf f and g are partial, then
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
is partial.
The minimization is partialIf f is partial, theng[x ] ' µy [f [x , y ] = 0]
is partial.
![Page 58: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/58.jpg)
Partial Functions
The primitive recursion is partialIf f and g are partial, then
h[x , y ] '{
f [x ] ⇐ y = 0g[x , y ,h[x , y − 1]] ⇐ o.w.
is partial.
The minimization is partialIf f is partial, theng[x ] ' µy [f [x , y ] = 0]
is partial.
![Page 59: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/59.jpg)
Partial Functions
TheoremAll the partial functions are computable.
Alternative DefinitionPartial functions = Computable functions.
![Page 60: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/60.jpg)
Partial Functions
TheoremAll the partial functions are computable.
Alternative DefinitionPartial functions = Computable functions.
![Page 61: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/61.jpg)
Examples
Subtraction is partial
f [x , y ] '{
x − y ⇐ x ≥ y↑ ⇐ o.w.
f [x , y ] ' µz[z + y = x ]
Division is partial
g[x , y ] '{
x/y ⇐ ∃k(y .k = x)↑ ⇐ o.w.
g[x , y ] ' µk [k .y = x ]
![Page 62: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/62.jpg)
Examples
Subtraction is partial
f [x , y ] '{
x − y ⇐ x ≥ y↑ ⇐ o.w.
f [x , y ] ' µz[z + y = x ]
Division is partial
g[x , y ] '{
x/y ⇐ ∃k(y .k = x)↑ ⇐ o.w.
g[x , y ] ' µk [k .y = x ]
![Page 63: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/63.jpg)
Examples
Subtraction is partial
f [x , y ] '{
x − y ⇐ x ≥ y↑ ⇐ o.w.
f [x , y ] ' µz[z + y = x ]
Division is partial
g[x , y ] '{
x/y ⇐ ∃k(y .k = x)↑ ⇐ o.w.
g[x , y ] ' µk [k .y = x ]
![Page 64: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/64.jpg)
Examples
Subtraction is partial
f [x , y ] '{
x − y ⇐ x ≥ y↑ ⇐ o.w.
f [x , y ] ' µz[z + y = x ]
Division is partial
g[x , y ] '{
x/y ⇐ ∃k(y .k = x)↑ ⇐ o.w.
g[x , y ] ' µk [k .y = x ]
![Page 65: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/65.jpg)
Enumeration of the computable functions
Enumeration = Encoding = Effective coding
I Uniqueness: each object has a unique codeI Totality: each natural number is a code of an objectI Effectiveness: For each object one can find algorithmically its
code and for each code (number) one can find its object.
![Page 66: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/66.jpg)
Enumeration of the computable functions
I Let P0,P1, . . . ,Pn, . . .be a list of all the programs (on one variable), and0,1, . . . ,n, . . . be an effective coding of these programs.
I Each program Pn corresponds to a computable function ϕ
I Let ϕ0, ϕ1, . . . , ϕn, . . .be a list of all the computable functions (on one variable), and0,1, . . . ,n, . . . be the effective encoding of these functions. Theencoding of the functions is such that for any n, the program Pnis an implementation of the computable function ϕn.
![Page 67: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/67.jpg)
Enumeration of the computable functions
I Let P0,P1, . . . ,Pn, . . .be a list of all the programs (on one variable), and0,1, . . . ,n, . . . be an effective coding of these programs.
I Each program Pn corresponds to a computable function ϕ
I Let ϕ0, ϕ1, . . . , ϕn, . . .be a list of all the computable functions (on one variable), and0,1, . . . ,n, . . . be the effective encoding of these functions. Theencoding of the functions is such that for any n, the program Pnis an implementation of the computable function ϕn.
![Page 68: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/68.jpg)
Enumeration of the computable functions
I Let P0,P1, . . . ,Pn, . . .be a list of all the programs (on one variable), and0,1, . . . ,n, . . . be an effective coding of these programs.
I Each program Pn corresponds to a computable function ϕ
I Let ϕ0, ϕ1, . . . , ϕn, . . .be a list of all the computable functions (on one variable), and0,1, . . . ,n, . . . be the effective encoding of these functions. Theencoding of the functions is such that for any n, the program Pnis an implementation of the computable function ϕn.
![Page 69: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/69.jpg)
Example
Total function which is not computable
f [x ] '{ϕx [x ] + 1 ⇐ ϕx [x ] ↓0 ⇐ o.w.
Assume f is computable. Then f = ϕa for some a.If a ∈ Dom[ϕa] then ϕa[a] ↓. Hence, f [a] = ϕa[a] = ϕa[a] + 1If a 6∈ Dom[ϕa] then ϕa[a] ↑. Hence, f [a] = ϕa[a] = 0, but ϕa[a] ↑
![Page 70: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/70.jpg)
Example
Total function which is not computable
f [x ] '{ϕx [x ] + 1 ⇐ ϕx [x ] ↓0 ⇐ o.w.
Assume f is computable. Then f = ϕa for some a.If a ∈ Dom[ϕa] then ϕa[a] ↓. Hence, f [a] = ϕa[a] = ϕa[a] + 1If a 6∈ Dom[ϕa] then ϕa[a] ↑. Hence, f [a] = ϕa[a] = 0, but ϕa[a] ↑
![Page 71: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/71.jpg)
Kleene’s S-m-n Theorem
S-m-n Theorem
For any n,m exists a primitive recursive function Smn , such that
for any a, x , y
ϕ(m+n)a [x , y ] ' ϕ(n)
Smn [a,x ][y ]
Property
Let F be a computable function. Then there exists a number e, suchthat,
F [e, x ] ' ϕe[x ]
![Page 72: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/72.jpg)
Kleene’s S-m-n Theorem
S-m-n Theorem
For any n,m exists a primitive recursive function Smn , such that
for any a, x , y
ϕ(m+n)a [x , y ] ' ϕ(n)
Smn [a,x ][y ]
Property
Let F be a computable function. Then there exists a number e, suchthat,
F [e, x ] ' ϕe[x ]
![Page 73: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/73.jpg)
Kleene’s S-m-n Theorem
Property – Quines
There exists a number e, such that,
e ' ϕe[x ]
Quine in Lisp((lambda (x) (list x (list ′quote x)))′(lambda (x) (list x (list ′quote x))))
![Page 74: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/74.jpg)
Kleene’s S-m-n Theorem
Property – Quines
There exists a number e, such that,
e ' ϕe[x ]
Quine in Lisp((lambda (x) (list x (list ′quote x)))′(lambda (x) (list x (list ′quote x))))
![Page 75: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/75.jpg)
Universal FunctionUniversal Function Theorem
The universal function
Φn[a, x ] ' ϕ(n)a [x ]
is computable.
Property
The class of all the total functions on n-variables does not have acomputable universal function.
proofAssume Φ[a, x ] is an universal function for the class of all the totalfunctions on one variable.
Let ϕ[x ] ' Φ[x , x ] + 1.
Since Φ is total, ϕ is also total and hence, there exists a, such that
ϕ[x ] ' Φ[a, x ].
ϕ[a] ' Φ[a,a], and also ϕ[a] ' Φ[a,a] + 1.
![Page 76: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/76.jpg)
Universal FunctionUniversal Function Theorem
The universal function
Φn[a, x ] ' ϕ(n)a [x ]
is computable.
Property
The class of all the total functions on n-variables does not have acomputable universal function.
proofAssume Φ[a, x ] is an universal function for the class of all the totalfunctions on one variable.
Let ϕ[x ] ' Φ[x , x ] + 1.
Since Φ is total, ϕ is also total and hence, there exists a, such that
ϕ[x ] ' Φ[a, x ].
ϕ[a] ' Φ[a,a], and also ϕ[a] ' Φ[a,a] + 1.
![Page 77: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/77.jpg)
Universal FunctionUniversal Function Theorem
The universal function
Φn[a, x ] ' ϕ(n)a [x ]
is computable.
Property
The class of all the total functions on n-variables does not have acomputable universal function.
proofAssume Φ[a, x ] is an universal function for the class of all the totalfunctions on one variable.
Let ϕ[x ] ' Φ[x , x ] + 1.
Since Φ is total, ϕ is also total and hence, there exists a, such that
ϕ[x ] ' Φ[a, x ].
ϕ[a] ' Φ[a,a], and also ϕ[a] ' Φ[a,a] + 1.
![Page 78: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/78.jpg)
Universal FunctionUniversal Function Theorem
The universal function
Φn[a, x ] ' ϕ(n)a [x ]
is computable.
Property
The class of all the total functions on n-variables does not have acomputable universal function.
proofAssume Φ[a, x ] is an universal function for the class of all the totalfunctions on one variable.
Let ϕ[x ] ' Φ[x , x ] + 1.
Since Φ is total, ϕ is also total and hence, there exists a, such that
ϕ[x ] ' Φ[a, x ].
ϕ[a] ' Φ[a,a], and also ϕ[a] ' Φ[a,a] + 1.
![Page 79: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/79.jpg)
Outline
ComputabilityPreliminariesPrimitive Recursive FunctionsPartial FunctionsEnumeration of the Computable Functions
DecidabilityDecidable and Semidecidable Sets
The Halting Problem
![Page 80: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/80.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
Characteristic function of a set χA
χA[x ] '{
1 ⇐ x ∈ A0 ⇐ o.w.
Decidable SetA set A is decidable iff χA is computable.
![Page 81: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/81.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
Characteristic function of a set χA
χA[x ] '{
1 ⇐ x ∈ A0 ⇐ o.w.
Decidable SetA set A is decidable iff χA is computable.
![Page 82: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/82.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
Characteristic function of a set χA
χA[x ] '{
1 ⇐ x ∈ A0 ⇐ o.w.
Decidable SetA set A is decidable iff χA is computable.
![Page 83: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/83.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
Semicharacteristic function of a set CA
CA[x ] '{
1 ⇐ x ∈ A↑ ⇐ o.w.
Semidecidable SetA set A is semidecidable iff CA is computable.
![Page 84: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/84.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
Semicharacteristic function of a set CA
CA[x ] '{
1 ⇐ x ∈ A↑ ⇐ o.w.
Semidecidable SetA set A is semidecidable iff CA is computable.
![Page 85: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/85.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremIf A is decidable then it is also semidecidable.
TheoremIf A is decidable then A is also decidable.
TheoremIf A and B are decidable thenA ∪ B, A ∩ B and A\B are decidable.
TheoremIf A and B are semidecidable thenA ∪ B and A ∩ B are semidecidable.
![Page 86: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/86.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremIf A is decidable then it is also semidecidable.
TheoremIf A is decidable then A is also decidable.
TheoremIf A and B are decidable thenA ∪ B, A ∩ B and A\B are decidable.
TheoremIf A and B are semidecidable thenA ∪ B and A ∩ B are semidecidable.
![Page 87: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/87.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremIf A is decidable then it is also semidecidable.
TheoremIf A is decidable then A is also decidable.
TheoremIf A and B are decidable thenA ∪ B, A ∩ B and A\B are decidable.
TheoremIf A and B are semidecidable thenA ∪ B and A ∩ B are semidecidable.
![Page 88: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/88.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremIf A is decidable then it is also semidecidable.
TheoremIf A is decidable then A is also decidable.
TheoremIf A and B are decidable thenA ∪ B, A ∩ B and A\B are decidable.
TheoremIf A and B are semidecidable thenA ∪ B and A ∩ B are semidecidable.
![Page 89: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/89.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremA set A is semidecidable iff there exists a computable function ϕ,such that,A = Dom[ϕ]
Post TheoremA set A is decidable iff A and A are semidecidable.
Kleene Set KThe set K = {x | ϕx [x ] ↓} is called Kleene set.
TheoremK is semidecidable but not decidable.
![Page 90: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/90.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremA set A is semidecidable iff there exists a computable function ϕ,such that,A = Dom[ϕ]
Post TheoremA set A is decidable iff A and A are semidecidable.
Kleene Set KThe set K = {x | ϕx [x ] ↓} is called Kleene set.
TheoremK is semidecidable but not decidable.
![Page 91: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/91.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremA set A is semidecidable iff there exists a computable function ϕ,such that,A = Dom[ϕ]
Post TheoremA set A is decidable iff A and A are semidecidable.
Kleene Set KThe set K = {x | ϕx [x ] ↓} is called Kleene set.
TheoremK is semidecidable but not decidable.
![Page 92: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/92.jpg)
Decidable and Semidecidable Sets A ⊆ Nn
TheoremA set A is semidecidable iff there exists a computable function ϕ,such that,A = Dom[ϕ]
Post TheoremA set A is decidable iff A and A are semidecidable.
Kleene Set KThe set K = {x | ϕx [x ] ↓} is called Kleene set.
TheoremK is semidecidable but not decidable.
![Page 93: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/93.jpg)
Outline
ComputabilityPreliminariesPrimitive Recursive FunctionsPartial FunctionsEnumeration of the Computable Functions
DecidabilityDecidable and Semidecidable Sets
The Halting Problem
![Page 94: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/94.jpg)
The Halting Problem
The halting problem is a decision problem which can be stated asfollows:
Given a source code of a program, decide whether the programterminates or will run forever.
This is equivalent to the problem of deciding, given a program and aninput, whether the program will eventually halt when executed on thatinput, or will run forever.
![Page 95: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/95.jpg)
The Halting Problem
The halting problem is a decision problem which can be stated asfollows:
Given a source code of a program, decide whether the programterminates or will run forever.
This is equivalent to the problem of deciding, given a program and aninput, whether the program will eventually halt when executed on thatinput, or will run forever.
![Page 96: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/96.jpg)
The Halting Problem
Assume there is a program P (a computable function) with thefollowing property:
P[Q, x ] '{
1 ⇐ Q[x ] ↓0 ⇐ o.w.
P[a, x ] '{
1 ⇐ ϕa[x ] ↓0 ⇐ o.w.
a ∈ K ⇔ ϕa[a] ↓ ⇔ P[a,a] = 1
a ∈ K ⇔ ϕa[a] ↑ ⇔ P[a,a] = 0
Thus K is decidable. This is a contradiction!Therefore, the Halting problem is not decidable – it is undecidable.
![Page 97: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/97.jpg)
The Halting Problem
Assume there is a program P (a computable function) with thefollowing property:
P[Q, x ] '{
1 ⇐ Q[x ] ↓0 ⇐ o.w.
P[a, x ] '{
1 ⇐ ϕa[x ] ↓0 ⇐ o.w.
a ∈ K ⇔ ϕa[a] ↓ ⇔ P[a,a] = 1
a ∈ K ⇔ ϕa[a] ↑ ⇔ P[a,a] = 0
Thus K is decidable. This is a contradiction!Therefore, the Halting problem is not decidable – it is undecidable.
![Page 98: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/98.jpg)
The Halting Problem
Assume there is a program P (a computable function) with thefollowing property:
P[Q, x ] '{
1 ⇐ Q[x ] ↓0 ⇐ o.w.
P[a, x ] '{
1 ⇐ ϕa[x ] ↓0 ⇐ o.w.
a ∈ K ⇔ ϕa[a] ↓ ⇔ P[a,a] = 1
a ∈ K ⇔ ϕa[a] ↑ ⇔ P[a,a] = 0
Thus K is decidable. This is a contradiction!Therefore, the Halting problem is not decidable – it is undecidable.
![Page 99: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/99.jpg)
The Halting Problem
Assume there is a program P (a computable function) with thefollowing property:
P[Q, x ] '{
1 ⇐ Q[x ] ↓0 ⇐ o.w.
P[a, x ] '{
1 ⇐ ϕa[x ] ↓0 ⇐ o.w.
a ∈ K ⇔ ϕa[a] ↓ ⇔ P[a,a] = 1
a ∈ K ⇔ ϕa[a] ↑ ⇔ P[a,a] = 0
Thus K is decidable. This is a contradiction!Therefore, the Halting problem is not decidable – it is undecidable.
![Page 100: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/100.jpg)
Questionnaire
When is a function computable?
When is a problem decidable?
When is a problem semidecidable?
When is a problem undecidable?
![Page 101: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/101.jpg)
Questionnaire
When is a function computable?
When is a problem decidable?
When is a problem semidecidable?
When is a problem undecidable?
![Page 102: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/102.jpg)
Questionnaire
When is a function computable?
When is a problem decidable?
When is a problem semidecidable?
When is a problem undecidable?
![Page 103: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/103.jpg)
Questionnaire
When is a function computable?
When is a problem decidable?
When is a problem semidecidable?
When is a problem undecidable?
![Page 104: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/104.jpg)
Questionnaire
Factorial
fact [x ] '{
1 ⇐ x = 0x .fact [x − 1] ⇐ o.w.
Sum
sum[x ] '{
0 ⇐ x = 0x + sum[x − 1] ⇐ o.w.
Is fact [0] ' sum[0]?
Is fact [2] ' sum[2]?
Is fact [−2] ' fact [−5]?
![Page 105: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/105.jpg)
Questionnaire
Factorial
fact [x ] '{
1 ⇐ x = 0x .fact [x − 1] ⇐ o.w.
Sum
sum[x ] '{
0 ⇐ x = 0x + sum[x − 1] ⇐ o.w.
Is fact [0] ' sum[0]?
Is fact [2] ' sum[2]?
Is fact [−2] ' fact [−5]?
![Page 106: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/106.jpg)
Questionnaire
Factorial
fact [x ] '{
1 ⇐ x = 0x .fact [x − 1] ⇐ o.w.
Sum
sum[x ] '{
0 ⇐ x = 0x + sum[x − 1] ⇐ o.w.
Is fact [0] ' sum[0]?
Is fact [2] ' sum[2]?
Is fact [−2] ' fact [−5]?
![Page 107: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/107.jpg)
Questionnaire
Factorial
fact [x ] '{
1 ⇐ x = 0x .fact [x − 1] ⇐ o.w.
Sum
sum[x ] '{
0 ⇐ x = 0x + sum[x − 1] ⇐ o.w.
Is fact [0] ' sum[0]?
Is fact [2] ' sum[2]?
Is fact [−2] ' fact [−5]?
![Page 108: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/108.jpg)
Questionnaire
Problem P: The function fact is defined on x .
Is the problem P decidable?
Problem Q: An arbitrary function f is defined on x .
Is the problem Q decidable?
![Page 109: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/109.jpg)
Questionnaire
Problem P: The function fact is defined on x .
Is the problem P decidable?
Problem Q: An arbitrary function f is defined on x .
Is the problem Q decidable?
![Page 110: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/110.jpg)
Questionnaire
Problem P: The function fact is defined on x .
Is the problem P decidable?
Problem Q: An arbitrary function f is defined on x .
Is the problem Q decidable?
![Page 111: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/111.jpg)
Questionnaire
Problem P: The function fact is defined on x .
Is the problem P decidable?
Problem Q: An arbitrary function f is defined on x .
Is the problem Q decidable?
![Page 112: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/112.jpg)
Questionnaire
How many indexes are there for the factorial function?
How many indexes are there for the universal function for theclass of all the total functions?
How many indexes are there for the universal function for theclass of all the partial recursive functions?
![Page 113: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/113.jpg)
Questionnaire
How many indexes are there for the factorial function?
How many indexes are there for the universal function for theclass of all the total functions?
How many indexes are there for the universal function for theclass of all the partial recursive functions?
![Page 114: Mathematical Logic - Introduction to Theory of Computability · Mathematical Logic Introduction to Theory of Computability Nikolaj Popov and Tudor Jebelean ... Decidable and Semidecidable](https://reader035.vdocuments.us/reader035/viewer/2022070108/603762e730e26276f73082ed/html5/thumbnails/114.jpg)
Questionnaire
How many indexes are there for the factorial function?
How many indexes are there for the universal function for theclass of all the total functions?
How many indexes are there for the universal function for theclass of all the partial recursive functions?