When you enroll in this course, you'll also be enrolled in this Specialization.
Learn new concepts from industry experts
Gain a foundational understanding of a subject or tool
Develop job-relevant skills with hands-on projects
Earn a shareable career certificate
There are 4 modules in this course
This course will provide different techniques on the verification of autonomous systems against stability, regular, or omega-regular properties. Such techniques include Lyapunov theories, reachability analysis, barrier certificates, and model checking. Finally, it will introduce several techniques on designing controllers enforcing properties of interest over the original autonomous systems.
This course can be taken for academic credit as part of CU Boulder’s Masters of Science in Computer Science (MS-CS) degrees offered on the Coursera platform. This fully accredited graduate degree offer targeted courses, short 8-week sessions, and pay-as-you-go tuition. Admission is based on performance in three preliminary courses, not academic history. CU degrees on Coursera are ideal for recent graduates or working professionals. Learn more:
MS in Computer Science: https://coursera.org/degrees/ms-computer-science-boulder
Welcome to the beginning of our exploration into formal verification and synthesis within the model-based design framework. In this introductory module, we will guide you through the key processes of specification, design, verification, and refinement of systems. We will delve into the vital role of formal methods in guaranteeing the correctness of systems. Through captivating examples, we will demonstrate the importance of formal verification, especially in safety-critical and life-critical applications. This module lays the foundation for the more advanced topics we will address throughout the course.
What's included
3 videos10 readings
Show info about module content
3 videos•Total 40 minutes
Meet Your Instructor!•1 minute
Outline of Specialization•6 minutes
Introduction to Course 3 - Verification and Synthesis •32 minutes
10 readings•Total 91 minutes
Course Updates and Accessibility Support•1 minute
Earn Academic Credit for your Work!•10 minutes
Course Support•10 minutes
Assessment Expectations•10 minutes
AI Citation and Acknowledgement•10 minutes
Important Prerequisites•10 minutes
Notice for Degree-Seeking Learners•10 minutes
Logistics: Important information about the Course Assignments and Exam•10 minutes
Logistics: Lecture Slides, Textbook and Readings•10 minutes
Ariane Flight V88•10 minutes
Verification of Finite Systems
Module 2•3 hours to complete
Module details
In this module, we focus on the verification of finite systems, particularly emphasizing regular safety properties and ω-regular properties (including those expressed as linear temporal logic formulae). We will explore a variety of verification techniques and delve into the theoretical underpinnings essential for understanding how finite systems are verified. Through detailed examples and clear, comprehensive explanations, we aim to provide a deep understanding of how these properties are verified in the context of finite systems.
What's included
13 videos1 reading3 assignments
Show info about module content
13 videos•Total 95 minutes
Introduction•11 minutes
Product of System and NFA•5 minutes
Example of Product of Simple System and NFA•10 minutes
An Example•15 minutes
Introduction•9 minutes
Product of System and NBA•3 minutes
ω-Regular Model Checking•3 minutes
ω-Regular Model Checking: Example•7 minutes
Checking Regular Safety vs ω-Regular Properties•3 minutes
Persistence Checking via Strongly Connected Component•12 minutes
Introduction•6 minutes
From LTL to NBA•1 minute
NBA for LTL Formulas: Examples•10 minutes
1 reading•Total 1 minute
Overview of Module 2•1 minute
3 assignments•Total 60 minutes
AI Policy Quiz•5 minutes
Assignment 1: LTL Verification•30 minutes
Assignment 2: Persistence Checking•25 minutes
Synthesis for Finite Systems
Module 3•3 hours to complete
Module details
In this module, we explore the synthesis of controllers for finite systems, focusing on enforcing certain linear temporal logic (LTL) formulas, including safety, reachability, persistence, and recurrence. We aim to understand how controllers can be designed to render specific LTL formulas for closed-loop systems. The module provides essential theoretical frameworks and practical algorithms necessary for synthesizing such controllers, with an emphasis on the roles of fixed-point operators and algorithms in the computation processes. Additionally, we will discuss various synthesis techniques that depend on the properties of the system and the involved LTL formulas.
What's included
12 videos1 reading2 assignments
Show info about module content
12 videos•Total 135 minutes
Overview•16 minutes
Fixed Points•4 minutes
Computation of Fixed Points•4 minutes
The Pre Map•6 minutes
Synthesis for Safety Specifications•13 minutes
Synthesis for Safety Specifications: Example•6 minutes
Synthesis for Reachability Specifications•11 minutes
Synthesis for Reachability Specifications: Example•14 minutes
Synthesis for Persistence Specifications•11 minutes
Synthesis for Persistence Specifications: Example•27 minutes
Synthesis for Recurrence Specifications•10 minutes
More Specifications•14 minutes
1 reading•Total 1 minute
Overview of Module 3•1 minute
2 assignments•Total 60 minutes
Assignment 3: Computation of Maximal Fixed Point•30 minutes
Assignment 4: Solving a Recurrence Synthesis•30 minutes
Abstraction and Refinement
Module 4•3 hours to complete
Module details
In this module, we will explore the concepts of abstraction and refinement within the context of control systems. We will delve into feedback refinement relations to understand how controllers can be modified or replaced to meet new specifications without altering the overall system behavior. The module also covers the computation of abstractions, demonstrating how we derive abstract models from complex systems to facilitate analysis and design. Additionally, we will discuss practical methods for abstracting different types of control systems, equipping us with the skills to apply theoretical concepts in real-world scenarios.
What's included
9 videos2 readings2 assignments
Show info about module content
9 videos•Total 124 minutes
Motivation•7 minutes
Definition of Feedback Refinement Relations•6 minutes
Example: Feedback Refinement Relation•9 minutes
Theorem: Feedback Refinement Relations and Behavioral Inclusion•6 minutes
Corollary: Feedback Refinement Relations and Behavioral Inclusion•7 minutes
Theorem: Computation of Abstractions•10 minutes
Example: Computation of Abstractions•5 minutes
Abstractions of Sample-and-Hold Linear Control System•16 minutes
SCOTS and OmegaThreads: Tools for the Synthesis of Controllers via Finite Abstractions•58 minutes
Assignment 6: Construction of an Abstraction•30 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Build toward a degree
This course is part of the following degree program(s) offered by University of Colorado Boulder. If you are admitted and enroll, your completed coursework may count toward your degree learning and your progress can transfer with you.¹
View eligible degrees
Build toward a degree
This course is part of the following degree program(s) offered by University of Colorado Boulder. If you are admitted and enroll, your completed coursework may count toward your degree learning and your progress can transfer with you.¹
¹Successful application and enrollment are required. Eligibility requirements apply. Each institution determines the number of credits recognized by completing this content that may count towards degree requirements, considering any existing credits you may have. Click on a specific course for more information.
CU Boulder is a dynamic community of scholars and learners on one of the most spectacular college campuses in the country. As one of 34 U.S. public institutions in the prestigious Association of American Universities (AAU), we have a proud tradition of academic excellence, with five Nobel laureates and more than 50 members of prestigious academic academies.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.