# F29FA Foundations 1

Course co-ordinator(s): Prof Fairouz Kamareddine (Edinburgh), Adrian Turcanu (Dubai).

Aims:

• To give an introduction to and an appreciation of the basic principles and techniques of logic and proof fundamental to Computer Science.
• Introduce the λ-calculus, how computable functions are represented in the λ-calculus, basic theoretical properties of the λ-calculus, and the relevance of the λ-calculus to computer science.

## Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: none.

Location: Dubai, Edinburgh, Malaysia.

Semester: 1.

Syllabus:

• Logic & proof: propositional calculus – truth tables, predicate calculus, inference rules, soundness, completeness, validity, satisfiability, reasoning and calculating with propositions.
• Lambda calculus: syntax, notation, bound & free variables and α-conversion and substitution, reduction and computation, representing computable functions, theoretical properties.

Learning Outcomes: Subject Mastery

Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)

• To demonstrate an understanding of the principles of propositional and predicate calculus.
• To foresee the role of argument in logical reasoning.
• Practice in formulating and proving arguments using formal logic
• Knowledge of lambda calculus
• Understanding of different variable techniques (de Bruijn indices, combinator variables)
• Understanding of variable binding and capture-free substitution
• Knowledge of how to represent computations in the λ-calculus

Learning Outcomes: Personal Abilities

Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT

• To be able to formulate statements as well formed formulae in propositional and predicate calculus.
• To be able to express arguments/problems in propositional and predicate calculus.
• To be able to construct formal proofs of logical arguments.
• To be able to think about the meaning of programs mathematically

Assessment Methods: Due to covid, assessment methods for Academic Year 2021/22 may vary from those noted on the official course descriptor. Please see:
- Maths (F1) Course Weightings 2021/22
- Computer Science (F2) Course Weightings 2021/22
- AMS (F7) Course Weightings 2021/22

SCQF Level: 9.

Credits: 15.