Quantitative Model Checking (Coursera)

Offered by EIT Digital,
Quantitative Model Checking (Coursera)

The integration of ICT (information and communications technology) in different applications is rapidly increasing in e.g. Embedded and Cyber physical systems, Communication protocols and Transportation systems. Hence, their reliability and dependability increasingly depends on software. Defects can be fatal and extremely costly (with regards to mass-production of products and safety-critical systems).

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

First, a model of the real system has to be built. In the simplest case, the model reflects all possible states that the system can reach and all possible transitions between states in a (labelled) State Transition System. When adding probabilities and discrete time to the model, we are dealing with so-called Discrete-time Markov chains which in turn can be extended with continuous timing to Continuous-time Markov chains. Both formalisms have been used widely for modeling and performance and dependability evaluation of computer and communication systems in a wide variety of domains. These formalisms are well understood, mathematically attractive while at the same time flexible enough to model complex systems.
Model checking focuses on the qualitative evaluation of the model. As formal verification method, model checking analyzes the functionality of the system model. A property that needs to be analyzed has to be specified in a logic with consistent syntax and semantics. For every state of the model, it is then checked whether the property is valid or not.
The main focus of this course is on quantitative model checking for Markov chains, for which we will discuss efficient computational algorithms. The learning objectives of this course are as follows:

  • Express dependability properties for different kinds of transition systems .
  • Compute the evolution over time for Markov chains.
  • Check whether single states satisfy a certain formula and compute the satisfaction set for properties.

Syllabus

WEEK 1
Module 1: Computational Tree Logic
We introduce Labeled Transition Systems (LTS), the syntax and semantics of Computational Tree Logic (CTL) and discuss the model checking algorithms that are necessary to compute the satisfaction set for specific CTL formulas.

WEEK 2
Discrete Time Markov Chains
We enhance transition systems by discrete time and add probabilities to transitions to model probabilistic choices. We discuss important properties of DTMCs, such as the memoryless property and time-homogeneity. State classification can be used to determine the existence of the limiting and / or stationary distribution.

WEEK 3
Probabilistic Computational Tree Logic
We discuss the syntax and semantics of Probabilistic Computational Tree logic and check out the model checking algorithms that are necessary to decide the validity of different kinds of PCTL formulas. We shortly discuss the complexity of PCTL model checking.

WEEK 4
Continuous Time Markov Chains
We enhance Discrete-Time Markov Chains with real time and discuss how the resulting modelling formalism evolves over time. We compute the steady-state for different kinds of CMTCs and discuss how the transient probabilities can be efficiently computed using a method called uniformisation.

WEEK 5
Continuous Stochastic Logic
We introduce the syntax and semantics of Continuous Stochastic Logic and describe how the different kinds of CSL formulas can be model checked. Especially, model checking the time bounded until operator requires applying the concept of uniformisation, which we have discussed in the previous module.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Statistical Mechanics: Algorithms and Computations (Coursera) Coursera
École normale supérieure

Statistical Mechanics: Algorithms and Computations (Coursera)

In this course you will learn a whole lot of modern physics (classical and quantum) from basic computer programs that you will download, generalize, or write from scratch, discuss, and then hand in. Join in if you are curious (but not necessarily knowledgeable) about algorithms, and about the deep insights into science that you can obtain by the algorithmic approach.

Aug 3rd 2026
5-12 Weeks
Continuous Delivery & DevOps (Coursera) Coursera
University of Virginia

Continuous Delivery & DevOps (Coursera)

Amazon famously delivers new code every 11.6 seconds. Just a few years ago, this was unthinkable: many ‘cutting edge’ firms would release software quarterly. When it comes to digital innovation, velocity is critical and many would say it’s the most reliable determinant of success. Bringing an organization to the state of the art (or even functional capability) in this area requires strong work in a combination of disciplines and a combination of both technical and managerial skills. There is no single cookie-cutter approach for achieving this capability.

Aug 10th 2026
4 Weeks
AI for Efficient Programming: Harnessing the Power of LLMs (Coursera) Coursera
Fred Hutchinson Cancer Center

AI for Efficient Programming: Harnessing the Power of LLMs (Coursera)

This course on Artificial Intelligence (AI) for software development explores the use of AI large language models such as ChatGPT, Bard, and others and their potential benefits and challenges. Through examples and hands-on activities, you will develop an understanding of the ways in which AI can speed up software development tasks and free up time for more creative and strategic work.

Aug 10th 2026
4 Weeks
The R Programming Environment (Coursera) Coursera
Johns Hopkins University

The R Programming Environment (Coursera)

This course provides a rigorous introduction to the R programming language, with a particular focus on using R for software development in a data science setting. Whether you are part of a data science team or working individually within a community of developers, this course will give you the knowledge of R needed to make useful contributions in those settings.

Jul 27th 2026
4 Weeks
Agile with Atlassian Jira (Coursera) Coursera
Atlassian

Agile with Atlassian Jira (Coursera)

Agile teams use “just enough” planning and an incremental approach to accomplishing the work of the team. Every project and every team uses a custom agile methodology. This course discusses common foundational principles and practices used by agile methodologies, providing the student a flexible set of tools to use in any role (e.g. product owner, scrum master, project manager, team member) on any agile team.

Aug 3rd 2026
4 Weeks
Architecting Smart IoT Devices (Coursera) Coursera
EIT Digital

Architecting Smart IoT Devices (Coursera)

This course will teach you how to develop an embedded systems device. In order to reduce the time to market, many pre-made hardware and software components are available today. You'll discover all the available hardware and software components, such as processor families, operating systems, boards and networks. You'll also learn how to actually use and integrate these components.

Jul 27th 2026
5-12 Weeks
Code Yourself! An Introduction to Programming (Coursera) Coursera
University of Edinburgh,Universidad ORT Uruguay

Code Yourself! An Introduction to Programming (Coursera)

Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.

Aug 3rd 2026
5-12 Weeks
Games, Sensors and Media (Coursera) Coursera
University of California, Irvine

Games, Sensors and Media (Coursera)

You will learn to make fluid digital interactive experiences that are suitable for gaming and use the advanced sensor hardware built into the iPhone and iPad. This includes drawing 2D graphics, playing sounds and music, integrating with Game Center, the iOS physics engine and detecting device orientation and location.

Aug 3rd 2026
4 Weeks
Introduction to .NET Core (Coursera) Coursera
Board Infinity

Introduction to .NET Core (Coursera)

This course is an introductory-level course for software developers who want to learn the basics of developing applications with .NET Core. .NET Core is a cross-platform, open-source development platform that allows developers to create applications for Windows, Linux, and macOS. Throughout this course, students will learn the fundamental concepts of .NET Core, including its architecture, programming model, and tools. They will also learn how to create, build, and deploy applications using .NET Core.

Aug 10th 2026
3 Weeks
Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Aug 3rd 2026
5-12 Weeks
Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Aug 10th 2026
4 Weeks