Course title
V0545800
Exercises in Symbolic Manipulation

idogawa tomoyuki Click to show questionnaire result at 2018
Course description
The term "symbolic manipulation (processing)" is used in contrast to "numerical processing" and it deals "formula manipulation" in which mathematical computations such as differentiation, integration, factorization and so on, are processed as they are in mathematical formulas (symbolic strings), or "artificial intelligence" in which knowledges and reasonings are modeled and processed as symbolic strings, in a narrow sense. But in a wide sense, it includes any non-numerical processing like compiler, OS and so on. In this course, we will treat it in a narrow sense. Although this subject is one of exercise courses, it will be proceeded as lecture + exercise. In symbolic manipulation, the programming languages LISP and Prolog are often used. At first, introduction and fundamental exercises of these languages (mainly LISP) will be given. Then, by doing exercises to implement toy models of formula manipulations and expert systems using these languages, fundamental concepts of symbolic manipulations will be studied.
Purpose of class
To understand/study on symbolic processing, which is totally different from numerical processing, with learning the programming languages LISP/Prolog.
Goals and objectives
  1. Understand fundamental concepts of symbolic manipulation and learn basics of the programming language LISP.
  2. Be able to construct applications on LISP by implementing a simple formula manipulation system.
  3. Study fundamentals of expert systems by implementing a simple production system using Prolog.
Language
Japanese
Class schedule

Class schedule HW assignments (Including preparation and review of the class.) Amount of Time Required
1. Lecture and exercise on following subjects.

Introduction to formula manipulation systems
Check the web or references for the symbolic manipulations 90minutes
2. Data structures in symbolic manipulations Review the contents of "Data Structures and Algorithms" 90minutes
3. LISP (1)
Atom, list, basic functions
Check the web or references for the programming language LISP 90minutes
4. LISP (2)
Variables, functional definitions, recursive calls
Review the last exercise 90minutes
5. LISP (3)
Predicates, conditions
Review the last exercise 90minutes
6. LISP (4)
Some list processing (recursion, map functions)
Review the last exercise 90minutes
7. LISP (5)
Some list processing (efficient processing using destructive functions)
Review the last exercise 90minutes
8. Formula manipulation (1)
Internal representations of mathematical formulas
Review the last exercise 90minutes
9. Formula manipulation (2)
Input/output of mathematical formulas (syntax analysis, pretty-print)
Review the last exercise 90minutes
10. Formula manipulation (3)
Symbolic differentiation and symplification of mathematical formulas
Review the last exercise 90minutes
11. Formula manipulation (4)
Symbolic integration
Review the last exercise 90minutes
12. Expert system (1)
Symbolic logic and logic programming language Prolog
Check the web or references for the programming language Prolog 90minutes
13. Expert system (2)
Production systems
Review the last exercise 90minutes
14. Final examination and review Review the total exercises 90minutes
Total. - - 1260minutes
Relationship between 'Goals and Objectives' and 'Course Outcomes'

Examination Exercises Total.
1. 20% 20% 40%
2. 20% 20% 40%
3. 10% 10% 20%
Total. 50% 50% -
Evaluation method and criteria
Examinations (50%) and exercises (50%)
Textbooks and reference materials
No textbook
Prerequisites
"Data Structures and Algorithms", "Programming Exercises"
Office hours and How to contact professors for questions
  • Tuesday 12:15 -- 13:00
Relation to the environment
Non-environment-related course
Regionally-oriented
Non-regionally-oriented course
Development of social and professional independence
  • Non-social and professional independence development course
Active-learning course
About half of the classes are interactive
Last modified : Wed Oct 17 07:34:04 JST 2018