3 points - One 1-hour lecture or tutorial per week - First semester - Clayton, Sunway - Prerequisite: CSE1303 or CSC1030 or equivalent - Corequisite CSE2303 or CSC2030 - Prohibitions: CSC2930, CSC3930, CSE3393, SFT4070
Objectives On completion of the subject, students should be able to understand and appreciate the uses and limitations of the logic programming paradigm. They will have the ability to write small Prolog programs.
Synopsis The subject introduces the programming language Prolog and the logic programming language paradigm. It covers the operational semantics of Prolog and the pragmatics of how to program in Prolog, including debugging facilities, efficiency issues, and library functions. Some simple programming idioms such as meta-programming, generate and test, and accumulators are taught by means of programming examples. Applications of Prolog to artificial intelligence and compiler writing are discussed.
Assessment Practical examination (3 hours): 100%
Recommended texts
Bratko I Prolog programming for artificial intelligence
Addison-Wesley, 1990
Marriott K and Stuckey J Programming with constraints: an introduction
MIT Press, 1998
Sterling L and Shapiro E The art of Prolog MIT Press, 1994