Course: Theoretical Computer Science

« Back
Course title Theoretical Computer Science
Course code UAI/732
Organizational form of instruction Lecture + Lesson
Level of course Bachelor
Year of study not specified
Frequency of the course In each academic year, in the winter semester.
Semester Winter
Number of ECTS credits 6
Language of instruction Czech
Status of course Compulsory-optional
Form of instruction unspecified
Work placements unspecified
Recommended optional programme components None
Lecturer(s)
  • Lhotka Ladislav, Ing. CSc.
  • Skrbek Miroslav, Ing. Ph.D.
Course content
Content of lectures: 1. Discrete mathematics - necessary prerequisites 2. Symbols, strings, languages 3. Regular languages: regular expressions, finite automata and regular grammars 4. Properties of regular languages, pumping lemma 5. Context-free gramamrs and languages 6. Parsing: derivation tree, algorithms, LL grammars 7. Simplification of context-free grammars, Chomsky and Greibach normal forms 8. Push-down automata 9. Properties of context-free grammars 10. Turing machine 11. Turing hypothesis and the notion of algorithm 12. Modifications of the Turing machine, universal Turing machine 13. LInear bounded automaton 14. Recursively enumerable languages, Chomsky hierarchy 15. Limits of algorithmic computation, the problem of halting the Turing machine Content of practicals: Practicals will extend and complement lecture topics with practical problems with an emphasis on syntactic analysis.

Learning activities and teaching methods
Monologic (reading, lecture, briefing)
  • Class attendance - 56 hours per semester
  • Preparation for classes - 56 hours per semester
  • Preparation for exam - 38 hours per semester
Learning outcomes
The course deals with the theory of formal languages and automata, with emphasis on syntactic analysis.
Students will gain essential insight into the theory of formal languages, and a more detailed knowledge about regular and context-free languages. This will help them with designing simple languages and selecting appropriate software tools.
Prerequisites
Basic knowledge of discrete matematics (sets, functions, graphs, trees)

Assessment methods and criteria
Written examination, Interim evaluation

Students receive points during the semester, up to the maximum of 100 points with the following structure: * Exam 55 points (minimum 25) * Practicals 45 points (minimum 25), divided as follows: - test 1 (15 points) - test 2 (15 points) - homework and individual exercises (15 points) In case of reaching at least the minimum amount of points from both exam and practicals, the resulting mark is determined according to the following table: | points | 90-100 | 80-89 | 70-79 | 60-69 | 50-59 | < 50 | | mark | 1 | 1- | 2 | 2- | 3 | 4 | Up to 2 unexcused absences in practicals are tolerated. Tests in regular terms may be done separately only after presenting evidence of a serious reason (such as illness confirmed by a physician, or another reason approved by the teacher in advance). A student may, on his or her own request, retry at most one test (chosen at his or her discretion), in a term set by the teacher. The result of the regular test is hereby completely replaced by the result of the corrective test. The exam is in written form, an oral part is optional (e.g. for explaining parts of the exam test that are unclear). In order to successfully pass the tests and exam, students need to know the contents of lectures, practicals and further educative materials provided on course's web pages (https://elearning.jcu.cz).
Recommended literature
  • Chytil, M. Automaty a gramatiky. Praha: SNTL, 1984.
  • Linz, P. Formal Languages and Automata. Fifth Edition. Sudbury:Jones and Bartlett, 2012. ISBN 978-1-4496-1552-9.
  • Melichar B. et al. Jazyky a překlady: Cvičení. Skriptum FEL ČVUT. Praha: Nakladatelství ČVUT, 2004. ISBN 80-01-03031-8.
  • Melichar, B. Jazyky a překlady. Skriptum FEL ČVUT, 2. vydání. Praha: Nakladatelství ČVUT, 2003. ISBN 80-01-02776-7.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Science Study plan (Version): Secondary Schools Teacher Training in Informatics (1) Category: Pedagogy, teacher training and social care - Recommended year of study:-, Recommended semester: Winter
Faculty: Faculty of Science Study plan (Version): Applied Informatics (1) Category: Informatics courses - Recommended year of study:-, Recommended semester: Winter
Faculty: Faculty of Science Study plan (Version): Applied Informatics (1) Category: Informatics courses - Recommended year of study:-, Recommended semester: Winter
Faculty: Faculty of Science Study plan (Version): Applied Informatics (1) Category: Informatics courses - Recommended year of study:-, Recommended semester: Winter
Faculty: Faculty of Science Study plan (Version): Applied Informatics (1) Category: Informatics courses - Recommended year of study:-, Recommended semester: Winter
Faculty: Faculty of Science Study plan (Version): Applied Informatics (1) Category: Informatics courses - Recommended year of study:-, Recommended semester: Winter