# COMP11120: Mathematical Techniques for Computer Science (2010-2011)

## Aims

This full-year course unit focuses on the use of mathematics as a tool to model and analyse real-world problems arising in computer science. Four principal topics, drawn from the traditional areas of discrete mathematics as well as some continuous mathematics, will be introduced: symbolic logic, probability, discrete structures, and vectors and matrices. Each topic will be motivated by experts introducing relevant real-world problems arising in their own specialism.

Abstraction is fundamental to computer science. Hence, a fundamental emphasis of this course unit is to introduce mathematical techniques and skills to enable the student to design and manipulate tractable and innovative abstract models of chunks of the real-world. These techniques and skills include appropriate mathematical notations and concepts. These range over the four principal areas mentioned above. Formalisation in mathematics has, in general, significant cost. Therefore, to be of practical use, the benefits arising from formalisation, such as succinctness, unambiguity, provability, transformability and mechanisability, must outweigh the costs. A key aim of the course is for the student to appreciate this issue and know how and when to use particular techniques.

The specific aims of the course unit are: To demonstrate the relevance of mathematics to computer science. To introduce fundamental mathematical techniques of abstraction. To demonstrate applicability of particular mathematical techniques and skills for particular types of computer science problem. To appreciate the costs and benefits of mathematical modelling.

The delivery style will place more emphasis on students undertaking appropriate background reading, i.e. being more independent learners, and use the lectures more to demonstrate examples and solutions and not working through every detail of a particular or concept.

The course unit is delivered by staff from both the School of Computer Science and the School of Mathematics .

Programme outcomeUnit learning outcomesAssessment
A1Be familiar with the idea of a discrete structure, and the notions of formal language and parse tree.
• Mid semester test
• Individual coursework
• Examination
A1Have an understanding of the basic ideas of sets and functions, including boolean combination of sets, and be able to manipulate such expressions.
• Mid semester test
• Examination
• Individual coursework
A1 B1Have an understanding of the standard propositional logic connectives and be able to convert logical expressions into conjunctive and disjunctive normal form.
• Individual coursework
• Mid semester test
• Examination
A1 B1Have an understanding of the universal and existential quantifiers.
• Examination
• Mid semester test
• Individual coursework
A1 B1Be able to formulate natural language logical statements as formal sentences of 1st order logic.
• Mid semester test
• Examination
• Individual coursework
A1 B1Be familiar with the general concept of binary relation, equivalence and order relations and methods of combining relations; be familiar with the standard graphical representations of relations.
• Examination
• Individual coursework
A1 B1Be familiar with the principle of mathematical induction and be able to perform proofs using this principle, also be aware of simple examples of structural induction on lists.
• Examination
• Individual coursework
A1Have a good appreciation of the basic laws of probability.
• Examination
A1Have the skills to tackle simple problems on discrete probability distributions, conditional probability and independence.
• Examination
A1Have an understanding of vectors and matrices and their associated operations.
• Examination
A1Be able to use vectors and matrices to solve simple geometrical problems.
• Examination
A1Have an understanding of the role of vectors and matrices in graphics-based computation.
• Examination

## Syllabus

### Introduction to Discrete Structures - 4 lectures

Standard number systems and arithmetical operations on them; introduction to syntax. A brief introduction to sets and set theoretic operations.

### Logic - 7 lectures

About propositions, truth and falsity, logical connectives and their meaning (via truth tables); propositional formulas --- the logical language, truth table semantics.

Validity, contingency, unsatisfiability; logical equivalences (laws);

Simple logical manipulation and reasoning, normal forms, satisfiability algorithms;

Predicates and individuals, universal and existential quantifiers, first order logic in use;

### Probability - 8 lectures

Random experiments. Finite or countable discrete sample spaces. Events, disjoint events. Algebra of events. Definition of probability of an event when outcomes are equally likely. General definition of probability of an event. Axioms of probability. Addition Rule of two events

Conditional probability. The product rule. The total probability of two events. Definition of a partition of a sample space (exhaustive events). The total probability rule for a partition set. Bayes Theorem. Independent events and the product rule for independent events.

Definition of a random variable. Discrete random variables and their distributions. The probability mass function and the cumulative distribution function for a discrete random variable. The Binomial and Poisson distributions.

### Discrete Structures - 9 lectures

Sets, functions and maps, use in specification, mathematical induction.

Binary relations, domain and range, properties of relations, relational composition, closure properties, equivalence relations, partitions.

Graphs and networks, directed/undirected, acyclic/cyclic, paths, networks in action, structural induction.

### Motivational Guest Lecture

The importance of vectors and matrices in graphics.

### Vectors and Matrices - 12 lectures

Vectors:

Reminder of 2-D and 3-D coordinate systems and right-angle trig; Vectors (Equality, Parallel, Addition / Subtraction, Multiplication by a scalar); Vectors in a cartesian system; Scalar and Vector Products; Vector Equations of lines and planes.

Matrices:

Concept, Equality, Addition, Subtraction and Multiplication by a scalar; Matrix Multiplication; Associative Law; Multiplication of matrix times vector; Matrices and systems of equations.

Geometrical Transformations:

Homogeneous Coordinates; Affine Transformations; The transformation matrix; Translation, Rotation, Reflection, Scaling, Shear; Transformations and inverse transformations; Combined Transformations and the Associative Law.

Title: Interactive computer graphics: a top-down approach with WebGL (7th edition)
Author: Angel, Edward and Dave Shreiner
ISBN: 9781292019345
Publisher: Pearson
Edition: 7th
Year: 2015
This book contains a chapter dealing with geometrical transformations and is used for a second year course unit.

Title: Mathematical techniques: an introduction for the engineering, physical, and mathematical sciences (4th edition)
Author: Jordan, D.W. and P. Smith
ISBN: 9780199282012
Publisher: Oxford University Press
Edition: 4th
Year: 2008
This will provide excellent coverage of probability and is a introduction for the engineering, physical and mathematical sciences.

Title: Discrete mathematics for Computer Scientists (2nd edition)
Author: Truss, J.K.
ISBN: 0201360616