Research

Formal Verification Techniques for Complex Concurrent Systems

The design of new verification techniques that deal with the state space explosion problem has always been a main research issue for me. The key idea of my work in this line is based on two orthogonal principles : abstraction and modularity. In the formal verification context, the abstraction allows to reduce the complexity of the system by capturing only the essential aspect with respect to the property to be checked, while modularity takes advantage of the modular design of concurrent and distributed systems. Using the "divide and conquer” principle, the system is broken down into components and each of these is analyzed separately. Thus, the verification of the global system is downsized to the analysis of its individual components.

Application/Adaptation of Formal Verification Techniques to a Specific Domains

Parallel to my interest in model checking technique, I am interested in applying and adapting formal verification techniques to specific domains such as inter-enterprise business processes, service composition, Cloud-based systems, diagnosis/control of discret event systems (DES), security properties, and processes in the Blockchain. Indeed, I have the conviction that developing domain-specific verification approaches may be more effective than general purpose verification techniques. Specific domains could have particular requirements/constraints and even specific properties that make existing monolithic verification approaches inappropriate or even inapplicable. On one hand, developing domain-specific verification approaches could allow to take benefit from the own characteristics of the domain’s applications, leading to a better efficiency. On the other hand, domain-specific approaches could bring new ideas to improve the verification in the general case. This would ideally create a virtuous circle where general and specific-domain verification approaches enrich each other.

Some Publications

Symbolic Observation Graph-Based Generation of Test Paths.

Kaïs Klai, Mohamed Taha Bennani, Jaime Arias, Jörg Desel, Hanen Ochi (2023)
International Conference on Tests and Proofs (TAP)
Leicester, UK, July 18-19, p.127-146.

Model Checking of Solidity Smart Contracts Adopted for Business Processes.

Ikram Garfatta, Kais Klai, Mohamed Graïet, Walid Gaaloul (2021)
Proceedings of Service-Oriented Computing - 19th International Conference (ICSOC)
Dubai, United Arab Emirates, November 22-25, p.116–132.

Hybrid Parallel Model Checking of Hybrid LTL on Hybrid State Space Representation.

Kais Klai, Chiheb Ameur Abid, Jaime Arias, Sami Evangelista (2021)
International Conference on Verification and Evaluation of Computer and Communication Systems (VECOS’21)
Beijing, China, November 22-23, p.27–42.

A semi-symbolic diagnoser for fault diagnosis of bounded labeled petri nets.

Abderraouf Boussif, Mohamed Ghazel, Kaïs Klai (2021)
Asian Journal of Control, vol 21, pp 648-660

On the verification of opacity in web services and their composition.

Amina Bourouis, Kais Klai, Nejib Ben Hadj-Alouane, Yamen El Touati (2017)
IEEE Transactions on Services Computing, vol 10 (1), pp 66-79

more


Teaching and Responsabilities

Teaching at Institut Galilée

SupGalilée Engineering School
  • Operating systems
  • Object oriented programming language
Bachelor
  • C language
  • Python
Master
  • Transition Systems & Model Checking (M1)
  • RPHN: High level Petri nets (M2 PLS)
  • SITH: Infinite Timed and Hybrid Systems (M2 PLS)

Academic and Scientific Responsabilities at USPN

  • President of the Computer science department of Institut Galilée (since 2019).
  • Vice-president of the Computer science department of Institut Galilée (2016-2019).
  • Responsible of the Verification axis of the LoVe team (since december 2017).
  • Elected member of the committee of experts in computer science of the University of Sorbonne Paris Nord (since March 2017)
  • International relations project manager for the southern Mediterranean (since september 2023).
  • Responsable of the first year of the computer science Master (2008-2012)