School of Informatics - 2021/22

Course Information

Content

  • Item

    Course Summary

    Informatics 1 - Introduction to Computation (INF1A) is a 20 credit course at Level 8, normally taken in Year 1. It runs in Semester 1. There is no exam for this course, the course mark is based 100% on coursework. The University descriptor is here.
  • Item

    Course Outline

    An introduction to concepts of programming, using the Haskell functional programming language, and to concepts of computation and specification, using finite-state machines and propositional logic. The use of sets, functions and relations to describe models of logic and computation. Programming using functions and data structures, including lists and trees, equational reasoning, case analysis, recursion, higher-order functions, algebraic and abstract data types. Finite-state machines as a basic model of computation: deterministic and non-deterministic automata; regular expressions; acceptors; structured design of finite state machines. Propositional logic: truth tables; satisfiability; deduction. Applications from different areas will be used to illustrate and motivate the material.

  • Item

    Weekly Activities

    This year, the course will be delivered with a mix of online and in-person delivery. Lectures will be delivered live with a limited in-person audience and live-streaming via Lecture Recordings. Recordings of lectures will be available within an hour or so. As of week 1, we believe that we can run all tutorials in person. Drop-in labs are in-person.
    The course keeps up a steady and fairly demanding pace. It is important to manage your schedule in an effective way for achieving all the learning outcomes of the course. Please read the information below and plan carefully your weeks accordingly.
    Each week, you have to complete the following activities:
    • Attend four online lectures (FP on Mon,Tue, CL on Thu,Fri) and review the associated slides (see the page Course Materials).
    • Attempt two quizzes -- one for each strand of the course; FP is due 16.00 on Wednesdays, and CL is due 16.00 on Saturdays (see the page Course Materials). 
    • Read the required and recommended chapters from the textbooks (see the Library Resources page and the Course Materials page).
    • Attend one in-person tutorial session (see details in the Tutorials page). These are 90-minute tutorials scheduled on Thursdays and Fridays.
    • Before attending the tutorials, you must prepare: you have to solve and submit two tutorial assignments, one for each strand of the course. The deadlines for submission are 16:00 on Tuesdays.
    There are also weekly optional activities that we encourage you to take:
    • Study the weekly topic in Mathematics for Computing (see the page Course Materials).
    • Attend demonstrations/drop-in lab sessions where you can ask for help from tutors and demonstrators, especially with your practical work. These sessions run on Mon,Tue,Wed, some at 16:10 and some at 17:10.
    Each week, the Directed Learning and Independent Learning activities (i.e. the guided self-study activities, such as preparing your tutorial assignments, doing the required reading, or attending the drop-in labs) should take you about 10 hours in total.
  • Item

    Timetable

    If you are looking for your class times for this course, these can be found via your University of Edinburgh calendar (links provided below):
  • Item

    Informatics Teaching Organisation: Information for Students

    You can also email the Informatics Teaching Organisation (ITO) at ito@inf.ed.ac.uk  or the Student Support Team (SST) at inf-sst@inf.ed.ac.uk.