COMP21111 Logic and Modelling syllabus 2021-2022
COMP21111 Logic and Modelling
Level 2
Credits: 10
Enrolled students: 176
Course leader: Konstantin Korovin
Additional staff: view all staff
Requisites
- Pre-Requisite (Compulsory): MATH10111
- Pre-Requisite (Compulsory): MATH10131
- Pre-Requisite (Compulsory): MATH10212
- Pre-Requisite (Compulsory): MATH10232
- Pre-Requisite (Compulsory): COMP11120
Additional requirements
- Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.
Pre-requisites
To enrol students are required to have taken COMP11120 or one of the following: MATH10111, MATH10131 , MATH10212, MATH10232.
Assessment methods
- 50% Written exam
- 50% Coursework
Semester | Event | Location | Day | Time | Group |
---|---|---|---|---|---|
Sem 1 w2 | ONLINE Examples | Fri | 09:00 - 10:00 | - | |
Sem 1 w2 | ONLINE Examples | Fri | 10:00 - 11:00 | - | |
Sem 1 w3-5,7-12 | Examples | Collab | Fri | 09:00 - 10:00 | - |
Sem 1 w3-5,7-12 | ONLINE Examples | Fri | 09:00 - 10:00 | - | |
Sem 1 w3-5,7-12 | Examples | Collab | Fri | 10:00 - 11:00 | - |
Sem 1 w3-5,7-12 | ONLINE Examples | Fri | 10:00 - 11:00 | - |
- Rigorous Development
Overview
This is a unique course developed at the University of Manchester. It explains how implementations of logic can be used to solve a number a number of problems, such as solving hardest Sudoku puzzles in no time, analysing two-player games, or finding serious errors in computer systems
This course unit detail provides the framework for delivery in 20/21 and may be subject to change due to any additional Covid-19 impact. Please see Blackboard / course unit related emails for any further updates.
Aims
This course intends to build an understanding of fundamentals of (mathematical) logic as well as some of the applications of logic in modern computer science, including hardware verification, finite domain constraint satisfaction and verification of concurrent systems.
Syllabus
- Propositional logic
- Conjunctive normal form (CNF)
- DPLL satisfiability algorithm
- Randomized satisfiability algorithms
- Compact representations of Boolean functions using BDTs/BDDs/OBDDs
- Quantified Boolean Logic (QBF) Splitting and DPLL algorithms for QBF
- Propositional logic of finite domains
- State-changing systems
- Linear temporal logic (LTL)
- Model checking
Teaching methods
Lectures
22 in total, 2 per week, including some feedback sessions on exercises
Feedback methods
My Website of this course will contain a lot of material, including solutions to exercisesStudy hours
- Assessment written exam (2 hours)
- Lectures (24 hours)
- Practical classes & workshops (9 hours)
Employability skills
- Analytical skills
- Innovation/creativity
- Problem solving
- Research
Learning outcomes
On successful completion of this unit, a student will be able to:
- Have a knowledge about basic reasoning (or satisfiability-checking) algorithms for propositional logic.
- Have a knowledge of quantified boolean formulas and basic understanding of bound variables and quantifiers.
- To understand BDDS (binary decision diagrams) as a data structure for compact representation of propositional formulas.
- Have a knowledge about applications of propositional logic (such as finite domain constraint satisfaction and planning) and be able to apply it for solving hard combinatorial problems.
- Have a knowledge of simple temporal logics.
- Be able to formally specify finite-state concurrent systems as transition systems.
- Be able to specify properties of simple transition systems in temporal logics.
Reading list
No reading list found for COMP21111.
Additional notes
Course unit materials
Links to course unit teaching materials can be found on the School of Computer Science website for current students.