Model Checking(模型检测)

news2024/11/27 8:44:49

1. Definition

给定一个系统和一个我们期待拥有的属性P, Model checking 会探索这个系统的每个状态,验证系统是否满足定义的性质。如果满足直接返回True,否则会给出一个反例(counter example)。如果系统被证明是正确的,说明该系统的所有的行为都已经被探索并满足了所定义的规约。

Advantages: (1)这是一个完全自动的过程,不需要测试有专业的数学方面的知识;(2)当设计不满足所期待的属性时,model checking会产生一个反例展示违反的属性。这个faulty trace提供了一个无价的见解帮助我们理解falure,并作为一个重要的线索帮助我们修复/解决问题。

2.Motivation

How to ensure the correctness of a design?

3. Traditional validation methods

(1) Testing

将被测系统当作一个黑盒,给予输入到系统本身,然后观察系统得输出,如果所有的输出结果符合预期的话,就通过测试。(作用于实际的系统)

 (2) Simulation

给予输入到原型系统,然后观察对应的输出(作用于模拟的系统或者系统的抽象)

Limitation:上述的两种方法没有办法证明系统正确性,只能发现了问题。

(3) Reasoning and deducation

使用数学的方法去证明系统的正确性

Limitation:不能够自动,很难处理复杂的系统,对测试人员要求比较高

4. How does it work?

(1) General framework

(2) Modeling Language — Petri Net

 (3) Formula Language — LTL;CTL

(a) LTL concepts

 (b) LTL 模型检测框架

 4. Weakness or Problem?

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/651028.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

H3C-HCL模拟器-STP生成树协议实验

一、实验拓扑图 二、实验步骤 1)CRT连接并重命名 若遇到连接失败,先在HCL中启动命令行配置 2)启动所有设备 3)4台交换机重新命令 4)查看信息 ① SW1的MAC地址:SW1是根桥 为什么SW1是根桥? HC…

图像坐标转换:一个点绕着另一个点逆时针旋转角度平移后的坐标

图像坐标系:x向右增大, y向下增大。 点A在图像中的坐标(x1, y1) 点B在图像中的坐标(x2, y2) 点B绕着点A逆时针旋转a弧度,旋转后的点B坐标为{x (x2 - x1)*cos(a) (y2 - y1)*sin(a) x1&#xf…

java基础——有多少是你不知道的?

java基础——有多少是你不知道的&#xff1f; 一、&&和||二、Integer和int三、String、StringBuffer、StringBuilder的区别四、i1<i居然是成立的&#xff1f;五、一脸懵逼的null问题六、整数除法向上取整你知道多少种&#xff1f;七、这也能运行&#xff1f; 一、&a…

QML 与 Python 交互

在 Qt 中&#xff0c;C 和 QML 交互一般有如下三种方法 上下文属性&#xff1a;setContextProperty( )向引擎注册类型&#xff1a;调用 qmlRegisterType( )QML 扩展插件&#xff1a;虽然有很大的灵活性&#xff0c;但是用 Python 创建 QML 插件比较麻烦&#xff0c;所以这种方法…

【补充:CAN卡通信的下位机-STM32cubeIDE-hal库+STMF1xx+数据发送和接收+中断接收方式+基础样例3】

【CAN卡通信的下位机-STM32cubeIDE-hal库STMF4xx数据发送和接收中断接收方式基础样例3】 1、概述2、实验环境3、问题描述4、大佬指点与解决问题5、实验效果截图6、代码连接7、细节部分8、总结 ) 1、概述 从第一篇F1和F4上采用轮询的方式调试can&#xff0c; 【CAN卡通信的下位…

如何用Jmeter进行接口测试 ,这应该是全网最详细的教程了

一、Jmeter 的使用步骤 打开Jmeter 安装包&#xff0c;进入\bin 中&#xff0c;找到"jmeter.bat", 点击打开即可。 在下图打开的Jmeter 页面中&#xff0c;右键“测试计划” -> “添加” -> "Threads(Users)" -> “线程组”&#xff0c; 建立线…

Allure安装、使用、Jenkins集成

目录 一、allure介绍 二、安装allure服务 三、安装pytest、allure-pytest 插件 四、生成报告 五、allure其他使用 5.1 给测试报告添加各种附件 5.2 添加用例标题和描述信息 5.3 添加链接 5.4 标记测试用例 5.5 优先级 六、allure和jenkins集成 一、allure介绍 all…

2023年5月青少年软件编程(图形化) 等级考试试卷(三级)

青少年软件编程&#xff08;图形化&#xff09; 等级考试试卷&#xff08;三级&#xff09; 一、 单选题(共 25 题&#xff0c; 共 50 分) 1.关于变量&#xff0c; 下列描述错误的是&#xff1f; &#xff08; &#xff09; A.只能建一个变量 B.变量可以隐藏 C.变量可以删除 D.…

【抽样调查】实验

文章目录 1、数组矩阵简单抽样&#xff08;1&#xff09;构造数组&#xff08;2&#xff09;构造矩阵&#xff08;3&#xff09;产生来自正态分布的随机数&#xff08;4&#xff09;从正态总体中抽取若干个样本&#xff08;5&#xff09;对矩阵的行或列进行统计计算 2、R软件作…

输入信号、冲激响应与卷积

输入信号与冲激响应的离散卷积 系统冲激响应&#xff1a; h ( t ) ∑ τ 0 ∞ x ( t ) δ ( t − τ ) h(t)\sum_{\tau0}^{\infty}x(t)\delta(t-\tau ) h(t)τ0∑∞​x(t)δ(t−τ) 上式中 h ( t ) h(t) h(t)是冲激信号输入到系统后系统的输出&#xff0c;也是系统对外在激…

stl容器vector笔记

Vector 一、初始化二、常用方法1. 访问元素at()、下标、data()、front()、back()2. push_back()、pop_back()尾部增删元素3. insert()在pos前插入元素&#xff0c;返回插入位置4. erase()擦除元素&#xff0c;返回擦除元素后的元素位置5. clear()清空容器6. resize()改变容器元…

C语言中函数返回数组(一维和二维)

文章目录 函数返回一维数组函数返回二维数组 C语言中函数返回数组是很重要的一种应用&#xff0c;有时候在程序中调用函数返回数组可以更容易的实现我们想要的某些操作&#xff0c;比如一次返回多个值&#xff0c;这篇文章带来的是C语言中函数返回一维数组和二维数组的例子。 函…

Python自动化测试框架我到底应该学哪一个?

企业中&#xff0c;自动化必定会演变成搭建测试框架&#xff0c;这是为什么呢&#xff1f; 可能有一些刚刚进入软件测试行业的朋友还不理解什么是测试框架&#xff0c;没关系&#xff0c;首先我们知道一点&#xff0c;为什么自动化会演变成搭建测试框架呢&#xff1f; 第一个…

Ribbon和 Nacos服务注册中心

✅作者简介&#xff1a;大家好&#xff0c;我是Cisyam&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Cisyam-Shark的博客 &#x1f49e;当前专栏&#xff1a; 微服务探索之旅 ✨特色专…

软件测试面试自己都不上心,就不要抱怨别人对你冷眼旁观

昨日表哥恳请帮他的学生投递一下开发岗的简历&#xff0c;举手之劳&#xff0c;这忙必须得帮。但当发来学生的简历后&#xff0c;我吐槽了“这简历平平无奇&#xff0c;没有任何亮点&#xff0c;如何令人另眼相看&#xff1f;”表哥说&#xff0c;学生经历不多&#xff0c;总不…

离散数学题目收集整理练习(期末过关进度20%)

✨博主&#xff1a;命运之光 &#x1f984;专栏&#xff1a;离散数学考前复习&#xff08;知识点题&#xff09; &#x1f353;专栏&#xff1a;概率论期末速成&#xff08;一套卷&#xff09; &#x1f433;专栏&#xff1a;数字电路考前复习 ✨博主的其他文章&#xff1a;点击…

一文看懂什么是广告联盟,未来可期吗?

日常学习一些行业内的相关基础知识&#xff0c;可以在工作中更好地理解业务。在互联网广告行业中&#xff0c;广告联盟是很重要的存在&#xff0c;我们今天一起来了解下什么是广告联盟吧。 文中GG联盟广告联盟 GG广告 一. 定义 GG联盟通指网络GG联盟&#xff0c;指集合中小网…

【链表复习】C++ 链表复习及题目解析 (3)

目录 剑指offer 中的链表题目 JZ6 从尾到头打印链表 JZ18 删除链表的结点 JZ24 反转链表 JZ25 合并两个排序的链表 JZ52 两个链表的第一个公共结点 JZ23 链表中环的入口结点 JZ22 链表中倒数第k 个结点 JZ35 复杂链表的复制 JZ76 删除链表中重复的结点 本次给大家带来…

用注解实现方法开关

一、自定义注解的基本使用 java.lang.annotation 提供了四种元注解&#xff0c;专门注解其他的注解&#xff08;在自定义注解的时候&#xff0c;需要使用到元注解&#xff09;&#xff1a; Documented – 注解是否将包含在JavaDoc中 Retention – 什么时候使用该注解 Target –…

【算法】动态规划-斐波那契模型

文章目录 结论斐波那契模型第 N 个泰波那契数三步问题使用最小花费爬楼梯**方法1&#xff1a;**以i位置为结尾....方法2&#xff1a;以i位置为起点.... 解码方法 结论 对于线性dp&#xff0c;一般是用经验题目要求来定义状态表示&#xff1a; 以某个位置为结尾…以某个位置为…