Overview
Offerings
S2-01-CLAYTON-ON-CAMPUS
S2-01-MALAYSIA-ON-CAMPUS
Rules
Enrolment Rule
Contacts
Chief Examiner(s)
Professor Graham Farr
Unit Coordinator(s)
Associate Professor Wong Kok Sheik
Notes
If you have not done one of the programming units specified you are encouraged to consult the Chief Examiner regarding possible approval to enrol in this unit.
Learning outcomes
Use propositional logic, predicates and quantifiers to represent and analyse problems in the theory of computation;
Construct Finite Automata, Nondeterministic Finite Automata and Context-Free Grammars to describe languages;
Convert Regular Expressions into Finite Automata and vice versa;
Find a Regular Grammar for a Regular Language;
Find a parse tree, leftmost derivation and rightmost derivation for a word in a Context Free Language;
Use Turing Machines to describe languages and represent computable functions;
Demonstrate the limitations of the models of computation considered;
Show a language is not regular, or not context-free, or not decidable;
Show that a language is in P, or in NP, or NP-complete;
Write rigorous formal proofs, including proofs by construction, cases, contradiction and induction.
Teaching approach
Enquiry-based learning
Active learning
Peer assisted learning
Problem-based learning
Assessment summary
This unit has threshold mark hurdles. You must achieve at least 45% of the available marks in the final scheduled assessment, at least 45% in total for in-semester assessments, and an overall unit mark of 50% or more to be able to pass the unit. If you do not achieve the threshold mark, you will receive a fail grade (NH) and a maximum mark of 45 for the unit.
Assessment
1 - Practical Preparation
2 - Assignment 1: Regular Expressions and Finite Automata
3 - Mid-semester Test
4 - Assignment 2: Lexical Analysis, Parsing, Computability
5 - Scheduled final assessment (3 hours and 10 minutes)
Scheduled and non-scheduled teaching activities
Laboratories
Lectures
Tutorials
Workload requirements
Workload
Learning resources
Recommended resources
Technology resources
Availability in areas of study
Computational science