20-00-0003-iv Formal Principes of Computer Science III

Course offering details

Instructors: Prof. Dr.-techn. Stefan Katzenbeisser

Event type: Integrated Course

Org-unit: Dept. 20 - Computer Science

Displayed in timetable as: FGdI III

Subject:

Crediting for:

Hours per week: 2

Language of instruction: German

Min. | Max. participants: - | -

Course Contents:
Objectives:

Foundational skills in applying theoretical concepts of computer science and appropriate mathematical techniques when using a formal reasoning tool.
This course is focussed on the application of Formal Methods, the acquaintance, understanding and assessment of the benefits of which necessitate a deep theoretical foundation. Different to Formale Grundlagen der Informatik 1 (FGdI 1 - Formal Languages and Automata) and Formale Grundlagen der Informatik 2 (FGdI 2 - Formal Logic) concrete and practical applications of Formal Methods are in the spotlight of Formale Grundlagen der Informatik 3 (FGdI 3 - Formal Systems). To say it in other words: A civil engineer who designs a skyscraper or a bridge needs not to be a mathematician but must be well familiar with statics and mechanics and must be able as well to use this knowledge for applying appropriate design and control tools. In the same way, a computer scientist should be familiar with the formal foundations of his profession as well as able to use appropriate tools for verifying the correctness of his products.

Consequently, the aim of this course is to deepen, to apply and to extend concepts and methods of Formal Logic with a particular focus in acquiring competence for the

(1) formal design of solutions for problems in computer science,
(2) formal specification of the correctness of these solutions,
(3) formal verification of correctness using a verification tool.

Course Content


  • Programs, specification and verification
  • Proving and testing
  • Calculi and deductions
  • The role of Formal Logic in mathematics vs. computer science
  • Syntax and (operational) semantics of a functional programming language
  • Induction und recursion
  • Structural induction und induction based on the recursion structure of procedures
  • Terminationproofs
  • Axioms obtained from programs
  • Theorem proving by symbolic evaluation
  • Algebras, interpretations, models and theories
  • Semantics of the specification language

Diploma Supplement:
Peano structures; induction and recursion; many-sorted algebras; subalgebras, homomorphisms and congruence relations; freely generated algebras, interpretation of terms; logics with equality, initial models; abstract data types; modal logic; application of formal methods: verification of functional programs, verification of protocols and hardware circuits using Model Checking<BR>

Literature:
Course handouts

Preconditions:
Basic mathematical knowledge, obtained in particular in the courses FGdI 1 and FGdI 2.

Small group(s)
This course is divided into the following small groups:
  • Formal Principes of Computer Science III - Ü 01

    Prof. Dr.-techn. Stefan Katzenbeisser

    Wed, 14. Oct. 2015 [11:40]-Wed, 10. Feb. 2016 [13:20]

  • Formal Principes of Computer Science III - Ü 02

    Prof. Dr.-techn. Stefan Katzenbeisser

    Wed, 14. Oct. 2015 [11:40]-Wed, 10. Feb. 2016 [13:20]

  • Formal Principes of Computer Science III - Ü 03

    Prof. Dr.-techn. Stefan Katzenbeisser

    Th, 15. Oct. 2015 [11:40]-Th, 11. Feb. 2016 [13:20]

  • Formal Principes of Computer Science III - Ü 04

    Prof. Dr.-techn. Stefan Katzenbeisser

    Th, 15. Oct. 2015 [11:40]-Th, 11. Feb. 2016 [13:20]

  • Formal Principes of Computer Science III - Ü 05

    Prof. Dr.-techn. Stefan Katzenbeisser

    Th, 15. Oct. 2015 [14:25]-Th, 11. Feb. 2016 [16:05]

  • Formal Principes of Computer Science III - Ü 06

    Prof. Dr.-techn. Stefan Katzenbeisser

    Wed, 14. Oct. 2015 [09:50]-Wed, 10. Feb. 2016 [11:30]

  • Formal Principes of Computer Science III - Ü 07

    Prof. Dr.-techn. Stefan Katzenbeisser

    Wed, 14. Oct. 2015 [09:50]-Wed, 10. Feb. 2016 [11:30]

  • Formal Principes of Computer Science III - Ü 07

    Prof. Dr.-techn. Stefan Katzenbeisser

    Fri, 16. Oct. 2015 [13:30]-Fri, 12. Feb. 2016 [15:10]

  • Formal Principes of Computer Science III - Ü 09

    Prof. Dr.-techn. Stefan Katzenbeisser

    Th, 15. Oct. 2015 [08:00]-Th, 11. Feb. 2016 [09:40]

  • Formal Principes of Computer Science III - Ü 10

    Prof. Dr.-techn. Stefan Katzenbeisser

    Th, 15. Oct. 2015 [08:00]-Th, 11. Feb. 2016 [09:40]

Literature
Appointments
Date From To Room Instructors
1 Tue, 13. Oct. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
2 Tue, 20. Oct. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
3 Tue, 27. Oct. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
4 Tue, 3. Nov. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
5 Tue, 10. Nov. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
6 Tue, 17. Nov. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
7 Tue, 24. Nov. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
8 Tue, 1. Dec. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
9 Tue, 8. Dec. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
10 Tue, 15. Dec. 2015 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
11 Tue, 12. Jan. 2016 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
12 Tue, 19. Jan. 2016 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
13 Tue, 26. Jan. 2016 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
14 Tue, 2. Feb. 2016 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
15 Tue, 9. Feb. 2016 16:15 17:55 S101/A01 Prof. Dr.-techn. Stefan Katzenbeisser
Class session overview
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
Instructors
Prof. Dr. techn. Stefan Katzenbeisser