Module Title:   Formal Foundations

Module Credit:   20

Module Code:   CM-0111L

Academic Year:   2015/6

Teaching Period:   Semester 1

Module Occurrence:   A

Module Level:   FHEQ Level 4

Module Type:   Linked 10+10

Provider:   Computer Science

Related Department/Subject Area:   SCIM (Dept of Computer Science)

Principal Co-ordinator:   Dr R Holton

Additional Tutor(s):   Dr A Csenki

Prerequisite(s):   None

Corequisite(s):   None

Aims:
To provide the foundations for formal specification and modelling of computer systems

Learning Teaching & Assessment Strategy:
Classes are given for individual help with the answers to the exercises and the lecture notes, revision, and feedback on the results of the coursework and the test

Lectures:   24.00          Directed Study:   126.00           
Seminars/Tutorials:   48.00          Other:   0.00           
Laboratory/Practical:   0.00          Formal Exams:   2.00          Total:   200.00

On successful completion of this module you will be able to...

understand the mathematical language of computer science and understand some of the fundamental
Concepts of computer theory.

On successful completion of this module you will be able to...

construct and validate many of the logical tools inherent in the construction and analysis of computer systems.

On successful completion of this module you will be able to...

explain in writing how logic is used as a tool for describing computer systems.

  Classroom test 0.35 10%
 
  Discrete Mathematics
  Coursework   15%
 
  Coursework/test; Computer Theory
  Examination - closed book 2.00 75%
 
  Discrete maths; Computer Theory; Queuing networks
  Examination - closed book 2.00 100%
 
  Supplementary examination

Outline Syllabus:
(a) Introduction to Discrete Mathematics: Sets and relations, logic, functions, graph theory.
(b) Introduction to Computer Theory: Basic concepts of formal language theory; alphabets, strings, languages, operations on strings and languages, recursive definitions, regular expressions, Finite automata, Deterministic and non-deterministic finite automata, Kleene`s theorem, Pushdown automata, Context-free grammars, Turing machines, Computability, Decidability.
(c) Introduction to Probability and Statistics: Averages, standard deviation, probability and conditional probability of events, probability distribution.

Version No:  5