Handbook home
Models of Computation (COMP30026)
Undergraduate level 3Points: 12.5On Campus (Parkville)
About this subject
- Overview
- Eligibility and requirements
- Assessment
- Dates and times
- Further information
- Timetable(opens in new window)
Contact information
Semester 2
A/Prof Harald Sondergaard
email: harald@unimelb.edu.au
Overview
Availability | Semester 2 |
---|---|
Fees | Look up fees |
AIMS
Formal logic and discrete mathematics provide the theoretical foundations for computer science. This subject uses logic and discrete mathematics to model the science of computing. It provides a grounding in the theories of logic, sets, relations, functions, automata, formal languages, and computability, providing concepts that underpin virtually all the practical tools contributed by the discipline, for automated storage, retrieval, manipulation and communication of data.
INDICATIVE CONTENT
- Logic: Propositional and predicate logic, resolution proofs, mathematical proof
- Discrete mathematics: Sets, functions, relations, order, well-foundedness, induction and recursion
- Automata: Regular languages, finite-state automata, context-free grammars and languages, parsing
- Computability briefly: Turing machines, computability, decidability.
A functional programming language will be used to implement and illustrate concepts.
Intended learning outcomes
INTENDED LEARNING OUTCOMES (ILO)
- Use propositional and predicate logic as tools to reason about non-trivial computational problems
- Explain basic principles of mechanised reasoning, including resolution proof, and apply these to reason about computational problems
- Reason about properties of mathematical objects such as functions and relations, and apply them to computational problems
- Apply discrete mathematical techniques to problems in computer science
- Synthesize context-free grammars from less formal language specifications
- Design abstract computational devices, such as finite-state automata and pushdown automata
- Analyze and reason about computational models, including finite-state automata, pushdown automata and Turing machines
Generic skills
On completion of this subject students should have developed the following skills:
- Analytical skills
- Reasoning and problem-solving skills
- Ability to communicate with precision, rigour and efficacy
- Ability to apply knowledge of science and engineering fundamentals
- Capacity for creativity and innovation
- Ability to undertake problem identification, formulation and solution
Last updated: 3 November 2022
Eligibility and requirements
Prerequisites
One of
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP20007 | Design of Algorithms | Semester 1 (On Campus - Parkville) |
12.5 |
COMP20003 | Algorithms and Data Structures | Semester 2 (On Campus - Parkville) |
12.5 |
OR
Admission to one of:
- MC-ENG Master of Engineering (Software)
- MC-ENG Master of Engineering (Software with Business)
- MC-IT Master of Information Technology
Corequisites
None
Non-allowed subjects
COMP20004
Recommended background knowledge
Basic proficiency in discrete mathematics and mathematical reasoning.
Inherent requirements (core participation requirements)
The University of Melbourne is committed to providing students with reasonable adjustments to assessment and participation under the Disability Standards for Education (2005), and the Assessment and Results Policy (MPF1326). Students are expected to meet the core participation requirements for their course. These can be viewed under Entry and Participation Requirements for the course outlines in the Handbook.
Further details on how to seek academic adjustments can be found on the Student Equity and Disability Support website: http://services.unimelb.edu.au/student-equity/home
Last updated: 3 November 2022
Assessment
Additional details
A written (800-1000 word) assignment, requiring approximately 12-15 hours of work, due around week 7, addressing Intended Learning Outcomes ILOs 1 and 2 (12%)
A written (800-1000 word) assignment, requiring approximately 12-15 hours of work, due around week 12, addressing ILOs 3, 4, 5 and 6 (12%)
Successful completion of at least 75% of worksheet exercises, delivered via an online learning platform (Grok), requiring approximately 5-7 hours of work (6%)
A written 3-hour closed book examination, addressing all ILOs (70%)
Last updated: 3 November 2022
Dates & times
- Semester 2
Principal coordinator Harald Sondergaard Mode of delivery On Campus (Parkville) Contact hours 48 hours, namely two 1-hour lectures, one 1-hour practice class and one 1-hour tutorial per week Total time commitment 170 hours Teaching period 29 July 2019 to 27 October 2019 Last self-enrol date 9 August 2019 Census date 31 August 2019 Last date to withdraw without fail 27 September 2019 Assessment period ends 22 November 2019 Semester 2 contact information
A/Prof Harald Sondergaardemail: harald@unimelb.edu.au
Time commitment details
170 hours
Last updated: 3 November 2022
Further information
- Texts
Prescribed texts
There are no specifically prescribed or recommended texts for this subject.
- Subject notes
LEARNING AND TEACHING METHODS
The subject involves two 1-hour lectures per week followed by a 1-hour tutorial. Weekly tutorial problems are assigned and discussed in class. Tutors may use tutorial time to demonstrate applications of the theory, such as SAT-solver use, logic programming, and parsing. Lectures and tutorials are designed to be interactive, and the written assignments are designed to be challenging, so as to generate discussion. Although written assignments are submitted by students individually, in-plenum discussion of the problems encouraged.
INDICATIVE KEY LEARNING RESOURCES
The subject uses online reading materials and offers access to visualisation tools (the JFLAP suite), an online discussion forum, and advance access to all teaching materials, including slides used in lectures.
CAREERS / INDUSTRY LINKS
The subject is foundational. While the practice of computing changes fast, the theoretical underpinnings, and many of the basic concepts underlying computation, change only slowly. A foundation in logic and mathematics provides important conceptual tools that are used by theoreticians, computer scientists, and software engineering practitioners alike.
- Related Handbook entries
This subject contributes to the following:
Type Name Informal specialisation Science-credited subjects - new generation B-SCI Specialisation (formal) Computing Major Computing and Software Systems Major Computer Science Specialisation (formal) Software with Business Specialisation (formal) Software - Available through the Community Access Program
About the Community Access Program (CAP)
This subject is available through the Community Access Program (also called Single Subject Studies) which allows you to enrol in single subjects offered by the University of Melbourne, without the commitment required to complete a whole degree.
Entry requirements including prerequisites may apply. Please refer to the CAP applications page for further information.
Additional information for this subject
Subject coordinator approval required
- Available to Study Abroad and/or Study Exchange Students
This subject is available to students studying at the University from eligible overseas institutions on exchange and study abroad. Students are required to satisfy any listed requirements, such as pre- and co-requisites, for enrolment in the subject.
Last updated: 3 November 2022