课程主页: https://www.coursera.org/learn/automated-reasoning-symbolic-model-checking
在Coursera上提供的《自动推理:符号模型检查》课程,旨在向学生展示如何自动验证系统和程序的属性。该课程的基本概念是转移系统:任何可以用状态和步骤描述的系统。课程中介绍了如何在计算树逻辑(CTL)中描述可达性等属性。
课程的内容结构清晰,分为多个模块:
1. **CTL模型检查**: 该模块首先对模型检查进行了概述,然后引入了计算树逻辑(CTL),这是一种用于描述转移系统属性的语言。课程中介绍了检查属性是否成立的算法,虽在抽象的背景下,并未明确表示状态集的具体表示方式。
2. **BDD部分1**: 在该模块中,学生将学习二进制决策图(BDD)作为具有共享的决策树的概念。课程中介绍了表示布尔函数的额外要求,并由此推导出表示的唯一性。
3. **BDD部分2**: 此模块将展示BDD的示例,并讨论如何计算任意命题公式的ROBDD(规范化二进制决策图)算法。
4. **基于BDD的符号模型检查**: 在最后一个模块中,CTL模型检查和BDD的主题结合在一起,展示了如何使用BDD符号表示状态集,以使得CTL模型检查的抽象算法得以应用。这种方法能够处理比显式状态模型检查更大的状态空间,同时课程中还给出了多个实例。
总体来说,这门课程非常适合那些对自动推理和模型检查感兴趣的计算机科学学生。无论是理论基础还是实际应用,这门课程都提供了丰富的学习资源,能帮助学生深入理解符号模型检查的核心概念及其应用。
课程主页: https://www.coursera.org/learn/automated-reasoning-symbolic-model-checking