COMPUTABILITA' E COMPLESSITA'
Module COMPUTABILITA'

Academic Year 2025/2026 - Teacher: Domenico CANTONE

Expected Learning Outcomes

Knowledge and understanding: students will acquire knowldege relative to the formalization of the notion of algorithm, by means of of Unlimited Register Machines (URM), examples of non-computable functions and undecidable predicates will be exhibited, the notion of decidability will be generalized to that of partial decidability and students will learn 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.

Applying knowledge and understanding:  students will acquire the ability to construct non-computable functions under various constraints using diagonalization and to verify whether a given predicate is partially decidable or not.

Making judgements: students will be able to evaluate even informally the status of (semi-)decidability of a given computational problem.

Communication skills: students will acquire the necessary communication skills and expressive ability in communicate problems regarding computability studies, also to non-expert interlocutors.

Learning skills: students will have the ability to adapt the knowledge acquired also in new contexts and to advance his/her knowledge through the consultation of specialist sources in the computability field.


Course Structure

Classroom-taught lessons

Should teaching be delivered in mixed mode or remotely, some adjustments may be required compared to the above, in accordance with the organization and contents set out in the syllabus.

Required Prerequisites

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

Attendance of Lessons

For a complete understanding of the course topics and the techniques illustrated, attending the lessons regularly is highly recommended.

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
1Computable functions: algorithms, effective procedures. URM model: Unlimited Register Machines. URM-computable functions. Decidable predicates and problems. Computability on other domains.Chapter 1.1-1.5 of 1) and integrative handouts.
2Generation of  URM-computable functions: Initial functions. Composition. Recursion. Minimalisation.Chapter 2.1-2.5 of 1) and integrative handouts.
3Church-Turing thesis: Other approach to computability. Primitive recursive functions and general recursive functions. Turing machines.Chapters 3.1-3.4, 3.6 e 3.7 of 1) and integrative handouts.
4Post-systems and Markov- systems.Chapter 3.5 of 1)
5Enumeration of computable functions: enumeration of URM-programs. Diagonal method. S-m-n theorem.Chapters 4.1-4.4 of 1) and integrative handouts.
6Universal programs: universal functions and programs (with applications). Effective operations on computable functions.Chapter 5.1-5.3 of 1) and integrative handouts.
7Undecidable problems in computability.Chapter 6.1 of 1) and integrative handouts.
8Undecidable problems in other areas of mathematics.Chapter 6.2-6.5 of 1)
9Semi-decidable problemsChapter 6.6 of 1) and integrative handouts.
10Recursive sets and recursively enumerable sets. Rice and Rice-Shapiro theorems.Chapter 7.1-7.2 of 1) and integrative handouts.

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.


The following criteria are generally applied for the assignment of the final grade:

Not approved: the student has not yet acquired the basic concepts and is unable to adequately solve the exercises.

18–23: the student demonstrates an essential knowledge of the basic concepts; exposition and ability to connect topics are limited, but the student manages to solve simple exercises.

24–27: the student demonstrates a good knowledge of the course contents, presents them clearly and connects them appropriately; exercises are solved with few errors.

28–30 with honors: the student has acquired a complete knowledge of the contents, presents them with clarity and critical insight, and solves the exercises accurately and without errors.


Students with disabilities and/or specific learning disorders (DSA) must contact the instructor, the CInAP representative of the DMI (Prof. Daniele), and CInAP sufficiently in advance of the exam date to notify their intention to take the exam with the appropriate compensatory measures.

Examples of frequently asked questions and / or exercises

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