2019 Logic and Reasoning

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Undergraduate major in Information and Communications Engineering
Okumura Manabu  Shinozaki Takahiro 
Class Format
Lecture / Exercise     
Media-enhanced courses
Day/Period(Room No.)
Tue5-6(前半:W323, 後半:VLSI設計室)  Fri5-6(前半:W323, 後半:VLSI設計室)  
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

Sentences expressed by a language have a meaning. In order to process meanings using a computer, we need to consider logical inference itself as a mathematical object. In this lecture, we learn logic as a basic methodology for this purpose, which provides a foundation for knowledge processing by the formal approach. Particularly, we learn propositional logic, predicate logic, resolution principle, and a logic programming language Prolog.

Student learning outcomes

By the end of this course, students will be able to:
1) explain propositional and predicate logic that formalize inference as symbolic operation
2) write program code using a logic programming language Prolog


propositional logic, predicate logic, resolution principle, logic Programming, Prolog

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

Eight lectures about propositional and predicate logic at the first half, and seven exercies of prlog programming at the second half.

Course schedule/Required learning

  Course schedule Required learning
Class 1 Introduction Explain the background of logic
Class 2 Propositional logic 1 : syntax, proposition, connectives Explain syntax, proposition, and connectives
Class 3 Propositional logic 2 : semantics, truth value, tautology Explain semantics, truth value, and tautology
Class 4 Propositional logic 3 : Boolean algebras, normal form Explain Boolean algebras and normal form
Class 5 Proofs in natural deduction: inconsistent, reductio ad absurdum, derivation Explain inconsistent, reductio ad absurdum, and derivation
Class 6 Predicate logic: predicate, quantifiers, term, formula Explain predicate, quantifiers, term, and formula
Class 7 Resolution principle Explain resolution principle
Class 8 Logic programming language Prolog Explain the syntax and semantics of the Prolog programming language
Class 9 Program execusion and basic operations Setup Prolog programming environemnt and run sample programs
Class 10 List and recursion Write Prolog code that handles list and recursion
Class 11 Graph search Write Prolog code that implement graph search
Class 12 Automaton Write Prolog code that implement automaton
Class 13 Syntax analysis Write Prolog code that implement syntax analysis
Class 14 Creative task 1 Write a Prolog code that implements a given creative task.
Class 15 Creative task 2 Write a Prolog code that implements a given creative task.


Handouts are distributed

Reference books, course materials, etc.

Logic and Structure, D. van Dalen, Springer-Verlag, 1983

Assessment criteria and methods

Report is 40%, and the final exam is 60%.

Related courses

  • ICT.H212 : Automata and Languages (ICT)

Prerequisites (i.e., required knowledge, skills, courses, etc.)

Students are required to be able to submit reports through OCW.


We will use room W323 in the former half.
In the latter half, we will use the computers in the VLSI room for the prolog exercise.
You may bring a personal note PC instead of using them.

Page Top