Formal Languages and Logic (COMP2022)


This unit aims at providing a deeper understanding of computing systems and of what computation is in general. It covers two essential theoretical aspects of computer science and gives students the foundations to understand the power as well as the limitations of computers. It covers various abstract models for computation such as finite automata, grammars and regular expressions, and the different classes of formal languages that these models recognize such as regular and context-free languages. It also covers the concept of formal proofs in propositional and predicate logic. The course concludes with Turing machines, as well as the notions of computability and decidability.

Our courses that offer this unit of study

Further unit of study information


Lecture 2 hrs/week; Tutorial 1 hr/week.


Through semester assessment (40%) and Final Exam (60%)

Faculty/department permission required?


Unit of study rules


INFO1103 or INFO1903

Assumed knowledge

MATH1004 or MATH2069 or MATH2969

Study this unit outside a degree

Non-award/non-degree study

If you wish to undertake one or more units of study (subjects) for your own interest but not towards a degree, you may enrol in single units as a non-award student.

Cross-institutional study

If you are from another Australian tertiary institution you may be permitted to underake cross-institutional study in one or more units of study at the University of Sydney.