Rule-Based Programming


The lecture, as well as the lab, will be held online (see Moodle course).

Today, rule-based systems are used in various areas, e.g. business rules and workflow systems, semantic web, UML, software verification, security systems, medical diagnosis, computational biology or computational psychology.

The lecture gives an overview of rule-based programming and formalisms based on the programming language Constraint Handling Rules (CHR). For instance, the following rule-based formalisms or systems are covered by the lecture:

  • Rewriting: Term Rewriting, Multiset Rewriting, Chemical Abstract Machine
  • Logic: Constraint Handling Rules, Deductive Databases
  • Rules: Event-Condition-Action Rules, Production Rules
  • Graphs: Petri Nets, Graph Transformation Systems

The lecture covers both formal and practical aspects. The different approaches are represented in a uniform way to make them comparable.

The lecture provides mature and permanently updated teaching materials as well as free software both online and in book form and addresses students who rejoice in abstraction and problem solving.


Tuesday, 14-16 (Q&A on demand via Zoom)

Thursday 14-16 via Zoom (Exercise)