Languages for Artificial Intelligence

Semestr: Winter

Range: 2+2s


Credits: 4

Programme type: Undefined

Study form:

Course language:


Attributes of languages for AI, functional programming, recursive functions, imperative and functional notation, basic data types and functions of Lisp, function definition, free and bound variables, recursion and iteration in Lisp, functionals, filters, special forms, memory management, Prolog programming, basic data types, clauses, goals, backtracking, cut, negation, input and output in Prolog, programming style, Prolog implementation principles, Lisp vs. Prolog comparison.


Course syllabus:

1. Languages used in AI, functional notation, recursive functions
2. Functional notation, basic data types and functions in Lisp
3. Function definitions, free and bound variables, predicates, COND
4. Recursion and iteration in Lisp,tail recursion, efficiency
5. List and number functions, mapping functionals, filters, lambda-expr
6. Internal representation, special forms, property lists
7. Input/output, Lisp implementation, memory management
8. Logic programming, data and program syntax in Prolog
9. Predicates, clauses, facts, goals and their satisfaction in Prolog
10. Arithmetic predicates, operators, processing terms
11. Meta/logic predicates, cut and negation
12. Input/output, programming style, program database
13. Prolog implementation
14. Comparing Lisp and Prolog in studies application case

Seminar syllabus:

1. Recursive programming, solving simple problems in Pascal
2. Using the Lisp system in the computer laboratory
3. Definition of simple list processing functions in Lisp
4. Homework tasks assignment
5. Recursive and iterative solution of problems, efficiency of recursion
6. Usage of mapping functionals and filters
7. Usage of property lists of atoms and modifying pseudofunctions
8. Homework consultation
9. Using the Prolog system in the computer laboratory
10. Simple predicates, execution trace, program debugging
11. Using recursion when processing lists and structures in Prolog
12. Cut, role of logical database
13. Homework presentation
14. Assignment


Winston, P.H. - Horn, B.K.P. : Lisp. Reading, Mass., Addison-Wesley 1984.
Bratko, I. : PROLOG Programming for Artificial Intelligence. Reading,
Mass., Addison-Wesley 1990.