Logic and Computability (SS 2022)

Course Number IND04033UF | Sommersemester 2022

Content

In this course, you will learn to understand logic formulas, to use concise mathematical notations, to formulate and solve problems in formal languages, and to reason with logics manually and algorithmically. We will teach logic proof systems, and you will gain the ability to construct logic proofs on your own and you will master common proof techniques of computer science. Finally, we discuss the fundamental limitations of the computing abilities of computers and discuss selected decision problems and the underlying algorithms.

The content of this lecture includes:

  • Syntax and semantics of logic formulas in propositional logic and predicate logic (first-order logic)
  • Basics of logical reasoning (natural deduction)
  • Combinational equivalence checking
  • Propositional satisfiability problem – DPLL algorithm – Resolution proofs
  • Binary Decision Diagrams
  • First-Order Theories
  • Satisfiability modulo Theories

Material

You can find the current material here.

Administrative Information

For a detailed presentation of the administrative information please check the administrative slides of the first lecture.

Administrative Information - Lecture

Course Procedure

The lecture will be held in the style of a 'flipped classroom'. On Mondays, the students will be provided with videos, slides, questions, and lecture notes. The students may use the provided material to get familiar with the content of that week’s lecture. The lecture takes place every Friday at 10:15-12:00 at i13, video recordings will be provided and uploaded after class. During class, we will interactively solve the questions of the questionnaire labelled with [Lecture] and discuss any open questions.

Questionnaire

Students will be provided with a questionnaire. These questions cover the theoretical aspects of the lecture as well as practical examples. Questions within the questionnaire will have one of the following labels:
  • [Lecture] Questions that will solved during the lecture on Friday. Solutions will be provided by us after the lecture.
  • [Practicals] Questions part of the assignments of the practicals. Solutions will be provided by us after the corresponding practicals.
  • [Self-Assessment] Questions for self-assessment. Students are encouraged to post solutions (git) and discuss solutions (Discord). Details will be provided soon.
The questions for a particular topic will be published on Monday before the corresponding lecture. The questions that will be asked at the exam will be a subset of the questions of the questionnaire.

Exams

Dates for exams will be set via TUGrazonline, please register there. Exams will have a duration of 120 minutes and there will be at least 3 possible dates for exams each semester. The questions that will be asked at the exam will be a subset of the questions of the questionnaire.

Communication - Discord

Please use the Discord invitation link to simplify the communiction during the semester.

Administrative Information - Practicals

Course Procedure

During the semester, five assignments will be made available on this site containing pen-and-paper exercises. Students have at least two weeks to solve the assignment. The exercises will be part of the questionnaire and will be labelled with [Practicals] The assignments will be discussed by students during live blackboard sessions in class or video sessions via Discord. Please register for any of the 10 groups (6 of which will be held on campus, 4 via Discord). Students are required to tick and upload the tasks they have solved via the TeachCenter. The deadline for ticking is Friday 3:59am of the respective practical session. Students will be randomly selected during class to present their solutions. The attendance of practical classes is compulsory. For justified reasons (sickness), exceptions can be made. In such cases, students have to tick and upload their solutions in time (according to the deadline of the assignment) and have to present their solutions in a replacement interview that will be held in the following week, Friday, 1pm, via Discord. If students are not able to explain their solution or their solution is completely wrong, students may lose either 50% or 100% of the points of that assignment. Minor errors or typos will not lead to any point reductions. In Fridays where no practical class will be held, we offer a voluntary question hour via Discord from 13:00 to 14:00. In addition to the mandatory pen-and-paper exercises, there will be voluntary programming examples which will let you collect bonus points. Submitting the programming examples will be handled via git. You will receive your repository after the registration deadline for the course has ended.

Grading for the Practicals

  • Achievable points of assignment 1-5: 100 Points (20 points each)
  • Achievable bonus Points from programming examples: 20 Points
  • Rate = points of ticked tasks + bonus points from the programming examples
If Rate…
  • >= 87.5%: (1) Sehr Gut / Excellent
  • >= 75.0%: (2) Gut / Good
  • >= 62.5%: (3) Befriedigend / Satisfactory
  • >= 50.0%: (4) Genügend / Sufficient
  • >= 00.0%: (5) Nicht Genügend / Insufficient

Communication - Discord

Please use the Discord invitation link to simplify the communication during the semester. For any questions regarding the exercise, please contact either Stefan Pranger or Bettina Könighofer.

Lecturers

Bettina Könighofer
Bettina
Könighofer

Assistant Professor

View more
Paul Gollob
Paul
Gollob

Student Researcher

View more
Lukas Posch
Lukas
Posch


View more