6 ECTS credits
180 h study time
Offer 2 with catalog number 1000447ANR for all students in the 1st semester at a (A) Bachelor - preliminary level.
This course is composed of three parts:
A first part reviews some important mathematical proving techniques, which are used later on in the course: proof by contraposition, proof by contraction, proof by induction.
The second part consists of an introduction into logic. The aspects relevant for computer science are highlighted.
The following subjects are treated:
- Motivation for logic in computer science.
- Proposition logic: syntax en semantics, semantic tableaux, natural deduction, adequateness, soundness and completeness.
- Predicate logic: syntax en semantics, semantic tableaux, natural deduction, adequateness, soundness, completeness, and normal forms.
The third part is an introduction to Lambda Calculus. Here, the emphasis is on the link with the functional programming language Scheme used to learn the student to program in the first year of the Bachelor Computer Science. Topics covered: origin, lambda-expression, currying, free and bounded variables, substitution, reduction, Church-numerals, lambda-definable, fix points and recursive definitions, lambda-calculus as programming language.
Additional information (such as schedules, teaching assistants, contact information, deadlines, assignments, …) may be found on the learning platform
Lectures are given in Dutch.
The course (except for the part about Lambda Calculus) is based on the following (Dutch) book (chapters 1 to 12):
J.F.A.K. van Benthem, H.P. van Ditmarsch, J. Ketting J.S. Lodder & W.P.M. Meyer-Viol (2003) Logica voor Informatica, 3de editie, Addison-Wesley.
This book is not available anymore in bookshops but an on-line version is available at http://resources.illc.uva.nl/lvi/
The course material used during the lectures as well as the excercises and a course text on Lambda Calculus is bundled and available at the VUB course service ("Logica en formele systemen").
Video’s of the lectures (a.o. for students that work during the day) are available on learning platform.
All the aboved mentioned study material is in Dutch.
A learning game is available to practice the logic tables (information available on the learning platform.
Additional study material (in English):
R.P. Grimaldi (1994) Discrete and Combinatorial Mathematics , An applied introduction, third edition, Addison-Wesley.
D.R. Hofstadter (1979) Goedel, Escher, Bach, The Harvester
Press, US.
G. Révész (1988) Lambda-Calculus, Combinatorics, and Functional Programming, Cambridge University Press, UK.
The general learning goals of the course are:
Students have basic knowledge of logic, more in particular proposition logic and predicate logic.Student, so that they are able to use this knowledge to formulate and solve problems.
Students can use this knowledge to formulate and solve problems and use the knowledge to learn other types of logic independently.
The students know the link between formal systems, such as Lambda Calculus, and programming languages such as Scheme.
Final competences are:
About
Knowledge and Insight
Knowing and understanding the syntax and semantics of proposition and predicate logic.
Knowing and understanding semantic tableaux for proposition logic as well as for predicate logic.
Knowing and understanding the system of natural deduction for proposition logic as well as for predicate logic.
Knowing, understanding, and being able to prove (only for proposition logic) the adequacy theorem for proposition logic as well as for predicate logic.
Knowing, understanding, and being able to prove (only for proposition logic) the soundness & completeness for proposition logic as well as for predicate logic.
Knowing and understanding the difference between proposition logic and predicate logic.
Knowing and understanding the basics of Lambda Calculus.
Knowing and understanding the link between Lambda Calculus and the programming language Scheme.
Application of Knowledge and Insight:
Being able to make exercises about the subjects mentioned; being able to formulate and solve problems in terms of proposition and predicate logic. Being able to elaborate lambda expressions.
Judgement Shaping:
Being able to decide which formalism to use for simple exercises and problems.
Communication:
Being able to express himself in a written way, about the subject mentioned above.
Learning skills:
Being able to learn other logical systems, starting for the knowledge acquired.
The final grade is composed based on the following categories:
Written Exam determines 95% of the final mark.
SELF Practical Assignment determines 5% of the final mark.
Within the Written Exam category, the following assignments need to be completed:
Within the SELF Practical Assignment category, the following assignments need to be completed:
In the course of the semester homework must be submitted.
In week 6 or 7, a mid-term evaluation will be organized on propositional logic. Participation in this mid-term evaluation is mandatory for 1st generation students.
In the exam session after the first semester there is a written exam. I the student obtained 14 or more (on 20) on the mid-term evaluation, the student may decide to not retake the part on propositional logic. In this case the score of the written exam is determined based on first order logic (part 2) and Lambda calculus (part3). In the second examen session (Aug-Sept) all 3 parts will be examined.
The written exam is a closed book exam and includes for each part (propositional logic, predicate logic and lambda calculus) at least a theoretical question and an exercise. The questions about the theory assess the knowledge and insights; the exercises assess the ability to apply the knowledge.
This offer is part of the following study plans:
Bachelor of Business Economics: Minor Minor Education (only offered in Dutch)
Bachelor of Computer Science: Default track (only offered in Dutch)
Bachelor of Political Science and Sociology: - afstudeerrichting sociologie, minor onderwijs (only offered in Dutch)
Bachelor of Mathematics and Data Science: Standaard traject (only offered in Dutch)
Bachelor of Artificial Intelligence: Default track (only offered in Dutch)
Master of Teaching in Social Sciences: politieke wetenschappen en sociologie (90 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: biologie (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: geografie (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: chemie (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: fysica (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: computerwetenschappen (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: ingenieurswetenschappen (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Economics: standaard traject (90 ECTS, Etterbeek) (only offered in Dutch)