![]() |
THE UNIVERSITY of EDINBURGHDEGREE REGULATIONS & PROGRAMMES OF STUDY 2007/2008
|
|
Informatics 1A (U01834)? Credit Points : 20 ? SCQF Level : 8 ? Acronym : INF-1-INF1A Informatics 1A consists of two strands, (i) Computation and Logic, and (ii) Functional Programming. Entry Requirements? Pre-requisites : SCE H-grade Mathematics or equivalent is desirable. ? Co-requisites : None ? Prohibited combinations : None Subject AreasHome subject areaDelivery Information? Normal year taken : 1st year ? Delivery Period : Semester 1 (Blocks 1-2) ? Contact Teaching Time : 5 hour(s) per week for 10 weeks First Class Information
All of the following classes
? Additional Class Information : Labs (2hrs/week) and Tutorials (1hr/week) as arranged. Summary of Intended Learning Outcomes
(i) Computation and Logic
After completing the course successfully, students should be able to: - Design a small finite-state system to describe, control or realise some behaviour. - Evaluate the quality of such designs using standard engineering approaches. - Apply the algebra of finite automata to design systems and to solve simple problems on creating acceptors for particular languages. - Describe simple problems using propositional logic. - For a given formula in propositional logic, draw a truth table for that formula and hence deduce whether that formula is true or not. - Apply a system of proof rules to prove simple propositional theorems. - Describe the range of systems to which finite-state systems and propositional logic are applicable and be able to use the meta theory to demonstrate the limitations of these approaches in concrete situations. (ii) Functional Programming The goal of this course is to develop basic competence in programming in functional languages. After completing the course successfully, students should be able to use a functional language to: - Solve simple programming tasks (for example, convert a number into a string for the corresponding roman numeral). - Define appropriate data types (for example, to represent parse trees for arithmetic expressions). - Perform case analysis, use recursion (for example, evaluate a parse tree for an arithmetic expression to yield a value). - Solve simple combinatorial search and deductive inference problems (for example, Missionaries and Cannibals, Cryptarithmetic, Reasoning about Family Trees). - Perform simple i/o; read and write a file. Students should also be able to: - Choose appropriate decompositions of problems to create a program to solve that problem. - Compose a functional program from suitable function definitions, including their types. - Document programs effectively. - Apply basic techniques to test and debug programs, including unit tests. Assessment Information
Written examination 95%
Assessed assignments 5% Exam times
Contact and Further InformationThe Course Secretary should be the first point of contact for all enquiries. Course Secretary Ms Marie Hamilton Course Organiser Dr Alex Simpson Course Website : http://www.inf.ed.ac.uk/teaching/courses/ School Website : http://www.informatics.ed.ac.uk/ College Website : http://www.scieng.ed.ac.uk/ |
|