# Mathematics for Computer Science module (CS11003)

Learn about important mathematical concepts that are used within Computer Science.

** 20 **

** CS11003 **

Mathematics provides the underlying framework for many common problems in Computer Science, ranging from algorithm design to cryptography and machine learning.

Studying the fundamental mathematical concepts behind various concepts in computing will allow you to improve your problem-solving skills and learn how to apply mathematics to approach these tasks.

In addition to studying the theory behind these concepts, you will put them into practice programmatically using Python. This will teach you to perform complex calculations using code and to work with common libraries for mathematical programming, such as matplotlib or pandas.

## What you will learn

In this module, you will study:

- functions and calculus, including 2D and 3D plotting, limits, differentiation, and vector calculus
- linear algebra, including vector and matrix operations, determination and properties, and 2D and 3D transformations
- optimisation, including least-squares and gradient-based methods
- probability and statistics, including probability calculus, distributions and densities, expectations, sampling, and Bayes' rule

By the end of this module, you will be able to:

- demonstrate your understanding of the mathematical concepts relevant to Computer Science
- understand where in computing these mathematics are of importance
- apply your knowledge of mathematics in problem solving
- read and interpret mathematical descriptions underlying various methods in computing

## Assignments / assessment

### Problem solving quiz 1 (15%)

- Given in week 5
- Due in week 5
- 10 hours effort expected

### Problem solving quiz 2 (15%)

- Given in week 9
- Due in week 9
- 10 hours effort expected

### Class test (70%)

- During week 11
- Class test lasts 1 hour

This module does not have a final exam.

## Teaching methods

You will learn by taking a hands-on approach. This will involve taking part in workshops and tutorial sessions where you will be guided by module staff.

Tutorials involve presentations, discussions, and problem-solving activities.

Learning material is provided through videos, review notes, examples, and tutorial questions.

## Courses

This module is available on following courses: