Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2018/2019

Architecture of Symbolic Computers

Login to KOS for course enrollment Display time-table
Code Completion Credits Range
PI-ASP ZK 4 0+3
Lecturer:
Tutor:
Josef Kolář (guarantor)
Supervisor:
Department of Theoretical Computer Science
Synopsis:

The course offers a deeper understanding of working principles and internal structure of functional and logical programming systems. A concrete insight is acquired concerning advantages and limits when using such systems as well as concerning specific issues related to their implementation as compared with common imperative programming systems.

Requirements:

Basic knowledge of languages of functional (Lisp) and logical (Prolog) programming.

Syllabus of lectures:

1. Lambda calculus.

2. Formal basis of abstract programs.

3. Self-interpretation, SECD abstract machine architecture.

4. Garbage collection in Lisp.

5. Lisp language variants and their implementations.

6. Predicate logic.

7. Horn clauses.

8. Theorem proving using resolution algorithm.

9. Warren abstract machine.

10. Prolog language variants and their implementations.

Syllabus of tutorials:
Study Objective:

To present theoretical background of abstract machines that represent computational models used when implementing functional and logical programming systems. When students get acquainted with these models, they are exposed to practical problems to be solved and to design alternatives to be selected when the real implementation is to be achieved.

Study materials:

. Peter M. Kogge: The Architecture of Symbolic Computers. McGraw-Hill, Inc., 1990.

. Gopal Gupta, et al.: Parallel execution of prolog programs: A survey. July 2001, ACM Transactions on Programming Languages and Systems (TOPLAS)

. L.C.Paulson: Foundations of Functional Programming.\http://www.cl.cam.ac.uk/users/lcp/papers/Notes/Founds-FP.pdf

Note:
Further information:
https://moodle.fit.cvut.cz/courses/PI-ASP/
Time-table for winter semester 2018/2019:
Time-table is not available yet
Time-table for summer semester 2018/2019:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2019-03-20
For updated information see http://bilakniha.cvut.cz/en/predmet1601006.html