Teaching

A glimpse at my previous teaching activities.

At Univ. Grenoble Alpes, I have regularly taught the following courses at the Bachelor and Master levels:

  • Automata and Regular Language Theory
  • Functional Algorithmic and Programming with OCaml
  • Semantics of Programming Languages and Compiler Design
  • Logic and Proof Techniques
  • Object-oriented Design and Programming
  • Runtime Verification
  • Research Projects

To support the teaching of automata theory and regular languages, I co-authored a teaching book with lectures notes, 150 exercises with their solutions. Moreover, with the help of students following the course, we developped a teaching software, Aude, which help them manipulate the concepts and run the underlying algorithms step by step.a

Automates et Langages Réguliers Aude, AUtomata DEmystifyer

To support the dissemination and teaching of the Runtime Verification principles, I created and led the creation of teaching material:

Lectures on Runtime Verification A taxonomy for Runtime Verification

I also gave invited lectures in other universities:

  • Pontificia Universidad Javeriana (Colombia): Intro to Model Checking
  • University of Galatasaray (Turkey): Semantics of Programming Languages and Introduction to Runtime Verification
  • Polytechnique Yaoundé (Cameroon): Semantics of Programming Languages and Compiler Design
  • American University of Beirut (Lebanon): Introduction to Runtime Verification

I also co-supervised the first year of the International Master in Computer Science.