Skip to content


Welcome to Week 1!

This week we will start with a general tour of computers and computation. How we got to what we have now.

Learning Objectives for this week

  • What is a (computational) problem?
  • What is computation?
  • How can we solve (computational) problems?

Ask & Answer Questions

Don't forget that you can use the Aula's Common Room to raise questions for me and the rest of the class.

Add your questions to the Community Common Room and take a look at others' questions. If you see a question which you'd like to answer then just go ahead and participate in the discussion!

Pre-class Activity

The Pre-class Activity for this first week is a free-form tour of some digital museums for you to review some history of computing. Think about the common theme that could provide us with the barebones of an abstract definition of what computation/computer is.

Lecture videos

The PDF slides are available for download.

Download Slides

You are encouraged to download these. You can follow the videos without downloading them though.

The "problem" concept

What are problems in the context of computers? Let us see.

Next, let us try to classify these problems, and distinguish between single instances and classes of problems.


We will need to use notation to express our ideas more succintly. Let us review some common mathematical notation that you have seen in previous years and which will be useful to us. (This part is a little long, so I split it into two parts.)

We start with a review of some common symbols that we will use frequently, some set notation and logic.

Next we review the concept of functions, strings of symbols, and graphs (discrete, made of vertices and edges).


Finally, a quick preview of what will come next.

Now, move to the lab section and try the problems. We will meet in your timetabled lab session to help you with any challenging exercises.

Ready for the lab exercises?

Attempt Lab 1 exercises