Diplômes intégrant cet élément pédagogique :
Descriptif
This module introduces the fundamental aspects of computer science and particularly focuses on the notions of computability and complexity. Regarding computability theory, it presents the basic formal model to reason on the notion of computation, i.e., the Turing machine and its variants. Based on this computational model, the notions of decidable and semi-decidable languages will be defined, while the existence of languages which are undecidable will be shown. Regarding complexity theory, it presents the main classes of time complexity such as P, NP, as well as the notion of NP-completeness. Several problems in the domains of propositional logic, graphs and scheduling are studied with respect to their time complexity by proposing either polynomial-time algorithms to solve them efficiently or polynomial-time reductions to prove their hardness.
Course opened in 2018/2019
Bibliographie
[1] Harry R. Lewis and Christos H. Papadimitriou, Elements of the Theory of Computation , Prentice-Hall
[2] Mickael Sipser, Introduction to the Theory of Computation, Thomson Course Technology
Informations complémentaires
Méthode d'enseignement : En présenceLangue(s) : Anglais
En bref
Période : Semestre 8Crédits : 3
Volume horaire
- CM : 16.5h
- TD : 16.5h
Contact(s)
Alastair Abbott
Etudiants internationaux
Crédits : 3.0