COMP0009 Logic and Database Theory

This database contains the 2018-19 versions of syllabuses. These are still being finalised and changes may occur before the start of the session.

Syllabuses from the 2017-18 session are available here.

Academic session

2018-19

Module

Logic and Database Theory

Code

COMP0009

Module delivery

1819/A5U/T1/COMP0009 Undergraduate

Related deliveries

None

Prior deliveries

COMP202P

Level

Undergraduate

FHEQ Level

L5

FHEQ credits

15

Term/s

Term 1

Module leader

Hirsch, Robin

Contributors

Hirsch, Robin

Dowell, John

Module administrator

Ball, Louisa

Levit, Getrud

Aims

The module aims to introduce and familiarise students with logical and mathematical inference and with database theory, the latter having an emphasis on the fundamentals of relational database systems and SQL. Students learn a number of logical inference methods for classical logics.

Learning outcomes

On successful completion of the module, a student will be able to:

  1. understand how axiomatic systems can be used for propositional and predicate logic;
  2. understand the notions of soundness and completeness;
  3. understand how propositional and predicate tableaus work;
  4. have familiarity with other logics, including modal and temporal logics;
  5. be able to analyse relational databases.

Availability and prerequisites

This module delivery is available for selection on the below-listed programmes. The relevant programme structure will specify whether the module is core, optional, or elective.

In order to be eligible to select this module as optional or elective, where available, students must meet all prerequisite conditions to the satisfaction of the module leader. Places for students taking the module as optional or elective are limited and will be allocated according to the department’s module selection policy.

Programmes on which available:

  • BSc Computer Science (Year 2)
  • MEng Computer Science (International Programme) (Year 2)
  • MEng Computer Science (Year 2)
  • MEng Mathematical Computation (International Programme) (Year 2)
  • MEng Mathematical Computation (Year 2)
  • BASc Arts and Sciences (Sciences and Engineering)

Prerequisites:

In order to be eligible to select this module, students must have:

Content

Propositional and Predicate logic

  • Review of syntax and semantics.
  • Deduction and Inference.
  • Truth tables.
  • Decidability of propositional logic.

Mathematical proofs

  • Proof by contradiction.
  • Induction and structured induction.
  • Hilbert systems.
  • Axioms and inference rules for propositional logic.
  • Axioms and inference rules for predicate logic.
  • Tableau construction for propositional logic and predicate logic.
  • Soundness and completeness theorems for first order logic.
  • Semi-decidability of first order logic.

Finite computation methods

  • Finite state machines.
  • Regular languages.
  • Kleene's theorem.
  • Finite state machines with stacks.

Databases

  • Database management systems (DBMS) and the relational database: essential concepts; data model; and architecture and primary functions of the DBMS.
  • SQL: use of SQL as a language for database construction and data manipulation.
  • Database design: a structured method for designing relational databases through: data modelling, schema specification, validation, and normalisation.

An indicative reading list is available via http://readinglists.ucl.ac.uk/departments/comps_eng.html.

Delivery

The module is delivered through a combination of lectures, problem classes and programming exercises.

Assessment

This module delivery is assessed as below:

#

Title

Weight (%)

Notes

1

Written examination (2hrs 30 mins)

95

 

2

Coursework

5

 

In order to pass this module delivery, students must:

  • achieve an overall weighted module mark of at least 40%; and
  • achieve a mark of at least 30% in any components of assessment weighed ≥ 30% of the module.

Where a component comprises multiple assessments, the minimum mark applies to the overall component.