COMPUTABILITY

Academic Year 2022/2023 - Teacher: Domenico CANTONE

Expected Learning Outcomes

Computability studies functions (and problems) which can be computed (solved) by way of a mechanical process, regardless of the quantity (though finite) of space/time resources.

The primary goal is therefore the formalization of the notion of algorithm, by means of effective models of computation. The primary model of computation adopted in the course is that of Unlimited Register Machines (URM). Other models will be quickly presented, such as that of Turing machines and that of general recursive functions. Such models (and all other models of computation that have been proposed over the years) are all equivalent, in the sense that a function can be computed in one of the models if and only if it can computed in the remaining ones. Thus, one can conjecture that, in particular, the URM model captures exactly the abstract concept of algorithm (Church-Turing thesis).

Much as a function is computable if its values can be calculated algorithmically, a problem or predicate is said to be decidable if it can be solved algorithmically.

By way of an effective enumeration of URMs (inspired by Gödel's numbering) and Cantor's diagonal method, examples of non-computable functions and undecidable predicates will be exhibited. The latter, in particular, include most problems of interest concerning the execution of computer programs.

The notion of decidability is generalized to that of partial decidability and we shall study various techniques (such as the technique of reduction. the Theorems of Rice and of Rice-Shapiro, and the Theorem s-m-n) to verify whether a given predicate is partially decidable or not.

Course Structure

Classroom-taught lessons

Should teaching be offered in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.

Required Prerequisites

Elements of discrete mathematics
Intuitive concept of algorithm
Elements of mathematical logic

Detailed Course Content

Computable functions: algorithms, effective procedures. URM model: Unlimited Register Machines. URM-computable functions. Decidable predicates and problems. Computability in other domains.

Generation of URM-computable functions: basic functions, composition or substitution, recursion, minimalisation.

Church-Turing's thesis: Other approaches to computability. Primitive recursive functions and general recursive functions. Turing machines. (Post and Markov systems.)

Enumeration of computable functions. Enumeration of URM-programs. The diagonal method. The s-m-n theorem

Universal programs: universal functions and universal programs (and applications). Effective operations on computable functions.

Decidability, undecidability and partial decidability: Undecidable problems in computability and in other areas of mathematics. Rice's theorem. Partial decidable problems.

Textbook Information

1) N.J. Cutland. Computability: an introduction to recursive function theory, Cambridge University Press, Cambridge - UK, 1986. [Main textbook]

2) M.D. Davis, R. Sigal, E.J. Weyuker. Computability, Complexity, and Languages: Fundamentals of Theoretical Computer Science, Academic Press, New York, 1994. [Recommended reading]

Course Planning

 SubjectsText References
1Funzioni calcolabili: Algoritmi, procedure effettive. Modello URM: Unlimited Register Machines. Funzioni URM-calcolabili. Predicati e problemi decidibili. Calcolabilità su altri domini.Cap. 1.1-1.5 di 1) e materiale didattico integrativo
2Generazione di funzioni URM-calcolabili: Funzioni calcolabili di base. Composizione. Ricorsione. Minimalizzazione.Cap. 2.1-2.5 di 1) e materiale didattico integrativo
3Tesi di Church-Turing: Altri approcci alla computabilità. Funzioni ricorsive primitive e ricorsive generali. Macchine di Turing. Cap. 3.1-3.4, 3.6 e 3.7 di 1) e materiale didattico integrativo
4Sistemi di Post e di MarkovCap. 3.5 di 1)
5Enumerazione delle funzioni calcolabili: Enumerazione dei programmi URM. Metodo diagonale. Teorema s-m-n.Cap. 4.1-4.4 di 1) e materiale didattico integrativo
6Programmi universali: Funzioni e programmi universali (e applicazioni). Operazioni effettive su funzioni calcolabili.Cap. 5.1-5.3 di 1) e materiale didattico integrativo
7Problemi indecidibili in computabilitàCap. 6.1 di 1) e materiale didattico integrativo
8Problemi indecidibili in altre aree della matematicaCap. 6.2-6.5 di 1)
9Problemi semi-decidibiliCap. 6.6 di 1) e materiale didattico integrativo
10Insiemi ricorsivi e insiemi ricorsivamente enumerabili: Teorema di Rice-ShapiroCap. 7.1-7.2 di 1) e materiale didattico integrativo

Learning Assessment

Learning Assessment Procedures

The final exam is essentially written. The verbalization may be preceded by a short discussion on the written assignment and, in doubtful cases, by a short oral test.
Verification of learning can also be carried out electronically, should the conditions require it.

Examples of frequently asked questions and / or exercises

http://www.dmi.unict.it/cantone/ESAMI/ESAMI_COMPUTABILITA/Cmp-sample-2016.pdf