### 2016　Logic in Computer Science

Font size  SML

Instructor(s)
Nishizaki Shin-Ya  Nitta Katsumi
Course component(s)
Lecture / Exercise
Day/Period(Room No.)
Tue5-8(W935)  Fri7-8(W935)
Group
E
Course number
CSC.T261
Credits
3
2016
Offered quarter
4Q
Syllabus updated
2017/1/11
Lecture notes updated
-
Language used
Japanese
Access Index

### Course description and aims

Mathematical logic is the study of reasoning in mathematics. We analyze mechanisms of mathematical reasoning using mathematical techniques. In this course, we first present propositional logic, which is a logical framework focusing on logical connectives such as conjunction, disjunction, implication, and negation and show their mathematical properties. Then, we introduce first-order predicate logic, in which we can use universal and existential quantifiers binding individual parts. We extend the Boolean model of propositional logic to the one for first-order predicate logic. In this course, we study logic not only from Boolean semantics but also from a deductive system, that is, natural deduction. The soundness and completeness properties between the Boolean model and natural deduction are also explained in this course. We learn fundamental knowledge and the technique of formalization in mathematical logic, which is also applied to computer science, especially the theoretical study of programming languages.

### Student learning outcomes

You can learn fundamental knowledge of the mathematical logic of computer science, which will be indispensable for the theory of programming languages and the symbolic approach in artificial intelligence. You will understand the relationship between the syntax aspect and the semantical aspect in mathematical logic, through cases of propositional and first-order predicate logic. Furthermore, you will learn how the notion of truth and false in mathematical statements is defined mathematically and the reasoning in mathematical science including computer science.

### Keywords

Mathematical logic, reasoning, propositional logic, first-order predicate logic, Boolean model, functional completeness, conjunctive normal form, disjunctive normal form, duality between conjunction and disjunction, natural deduction, soundness, completeness, compactness, structure, model

### Competencies that will be developed

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

### Class flow

We will give lectures in this course. We will assign exercises in several classes, which help you to understand the material covered in the lecture.

### Course schedule/Required learning

Course schedule Required learning
Class 1 Introduction to Mathematical Logic: history of mathematical logic and the relationship between mathematical logic and computer science Understanding of the history of mathematical logic and the relationship between mathematical logic and computer science
Class 2 Syntax of propositional logic: proposition, structural Gain an understanding of the syntax of propositional logic, especially structural induction of propositions
Class 3 Intuitive introduction of propositional logic's semantics: propositions as polynomials Gain an intuitive understanding of Boolean semantics of propositional logic
Class 4 Formal introduction of propositional logic's semantics: valuation, semantic function, tautology, satisfiability, unsatisfiability Gain a formal understanding of the semantics of propositional logic.
Class 5 Exercises of propositional logic's semantics I
Class 6 Mathematical properties of propositional logic: functional completeness, disjunctive normal form, conjunctive normal form, and duality Understanding of style of proofs on propositional logic's properties
Class 7 Exercises of propositional logic's semantics II
Class 8 Deductive system for propositional logic: natural deduction and formalization of mathematical proofs. Understanding of formalism of propositional logic's proof in the natural deduction
Class 9 Examples of formal proofs in natural deduction Understanding of how to write formal proofs in the natural deduction
Class 10 Soundness theorem of propositional logic and natural deduction Understanding of soundness theorem of propositional logic and natural deduction
Class 11 Completeness theorem of propositional logic and natural deduction Understanding of completeness theorem of propositional logic and natural deduction
Class 12 Exercises of natural deduction in propositional logic.
Class 13 Syntax of first-order predicate logic: first-order language and similarity type Understanding of first-order language and similarity type
Class 14 Semantics of first-order predicate logic: structures and models Understanding of semantics of first-order predicate logic
Class 15 Mathematical properties of first-order predicate logic: prenex normal form Understanding of prenex normal form
Class 16 Examples of semantics of first-order predicate logic
Class 17 Deductive system of first-order predicate logic: natural deduction Understanding of natural deduction for the first-order predicate logic
Class 18 Soundness theorem of first-order predicate logic and natural deduction Understanding of soundness theorem of first-order predicate logic and natural deduction
Class 19 Exercises of natural deduction in first-order predicate logic
Class 20 Advanced topic on first-order predicate logic I: decidability and Herbrand's theorem Understanding of the decision problem for the first-order predicate logic
Class 21 Advanced topic on first-order predicate logic II: resolution and unification Understanding of resolution
Class 22 Advanced topic on first-order predicate logic: compactness theorem, Löwenheim-Skolem's theorem Understanding of importance of Löwenheim-Skolem's theorem

### Textbook(s)

Course materials will be given in class.

### Reference books, course materials, etc.

Dirk van Dalen: Logic and Structure, 4th edition, Springer-Verlag

### Assessment criteria and methods

Reports (50%) and final examination (50%)

### Related courses

• CSC.T241 ： Fundamentals of Computing
• GRE.C101 ： Foundations of Computer Science I
• GRE.C102 ： Foundations of Computer Science II
• CSC.T272 ： Artificial Intelligence
• MCS.T404 ： Logical Foundations of Computing

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

Fundamental knowledge on discrete mathematics and naïve set theory