基于Coq的航空电子模式控制一致性验证方法技术

技术编号:15864194 阅读:35 留言:0更新日期:2017-07-23 09:04
本发明专利技术公开了一种基于Coq的航空电子模式控制一致性验证方法,解决了航空电子系统的状态转移一致性验证问题。补充了航空电子模式控制系统中应用Coq语言形式化验证的空白。利用Coq语言对航空电子系统进行形式化建模,描述相应状态转移规则,即可实现航空电子模式控制形式化验证。

【技术实现步骤摘要】
基于Coq的航空电子模式控制一致性验证方法
本专利技术公开了一种基于Coq的航空电子模式控制一致性验证方法,主要用于解决航空电子模式控制系统的状态转移一致性问题。
技术介绍
在系统开发早期的模型建立阶段就对模型的可调度性、安全性等方面进行验证,可以避免设计阶段的反复,大大的提高开发效率。基于时间自动机的理论,采用形式化的方法,通过过程模拟对模型的一致性进行前期的验证是一种可行且必要的方法。形式化验证就是基于已建立的形式化规格,对所规格系统的相关特性进行分析和验证,以评判系统是否满足期望的特性。形式化验证并不能完全确保系统的性能正确无误,但是可以最大限度地理解和分析系统,并尽可能地发现其中的不一致性、模糊性、不完备性等错误。形式化验证的主要技术包括模型验证和定理证明。形式化验证方法主要可以分为三种:定理证明、模型检测和等价性验证。定理证明的基本原理是选定一个数学逻辑体系,并用其中的公式来描述系统和系统性质刻画,然后在一定的数学逻辑体系中依据此体系的公理、定理、推导规则和系统描述公式,考察其能否推导出系统的性质刻画公式,如果可以则验证成功。现有的航空电子系统中形式化验证中应用到了PVS语言,用于航空电子微处理器AAMP5的规格和验证,对209条AAMP5指令中的108条进行了规格,验证了11个有代表性的微代码。在现有的航空电子系统形式化验证中还没有基于Coq的描述。原型验证系统(PVS)是支持工具和自动定理证明器集成的规范语言。PVS基于一个内核组成的一个扩展的Church的类型的依赖类型的理论,从根本上是一个经典类型的高阶逻辑。PVS定理证明器提供强大的原始推理过程的集合,其在后续的演算框架中在用户指导下交互地应用。原始推论包括命题和量词规则,归纳,重写,使用用于相等和线性算法的决策过程的简化,数据和谓词抽象以及符号模型检查。这些基本推理的实现针对大型证明进行了优化:在PVS语言特征和证明者之间存在协同交互,使得与术语相关联的类型信息被推理机制利用,并且相反地,证明者中的自动化有助于自动地释放TCC。校对产生可以编辑,附加到其他公式并重新运行的脚本。这允许许多类似的定理被有效地证明,允许证据经济地调整以跟随需求或设计的变化,并且鼓励开发可读证据。PVS包括用于关系mu演算的基于BDD的判定过程,从而提供定理证明和CTL模型检验之间的实验积分。PVS最近已经扩展到使用YicesSMT解算器作为一个endgame证明器和一个无限状态有界模型检查器,用于评估地面PVS表达式的PVSio框架,以及可以在校验期间使用的随机测试功能。Coq是一个正式的证明管理系统。它提供了一种形式语言来写入数学定义,可执行算法和定理以及用于机器检查证明的半交互式开发的环境。典型的应用包括对编程语言(例如CompCert编译器认证项目或Bedrock验证的低级编程库)的属性的认证,数学的形式化(例如Feit-Thompson定理的完全形式化)教学等。Coq实现了称为Gallina的程序规范和数学高级语言,该语言基于称为感应建构的微积分的表达性形式语言,其本身组合了高级逻辑和丰富类型的函数编程语言。通过本地语言的命令,Coq允许:定义可以有效评估的函数或谓词;状态数学定理和软件规范;交互地开发这些定理的形式证明;通过相对较小的认证“内核”对这些证明进行机器检查;以将已认证的程序提取到ObjectiveCaml,Haskell或Scheme等语言。作为证明开发系统,Coq提供交互式证明方法,决策和半决策算法,以及用于让用户定义自己的证明方法的策略语言。可以与外部计算机代数系统或定理证明器连接。作为数学形式化或程序开发的平台,Coq为高级符号,隐式内容和各种其他有用的宏提供了支持。
技术实现思路
[专利技术目的]:针对上述
技术介绍
的不足,提供了基于Coq的航空电子系统形式化验证方法,用Coq验证航空电子系统的状态转移一致性问题。补充了现有技术中应用Coq语言形式化验证的空白,也解决了没有通用描述方法的问题。[技术方案]:本专利技术方案主要包括以下内容:1)利用定理证明辅助工具Coq结合规范要求建立系统各个模块的状态模型;2)结合步骤1)中的系统模块状态模型,建立状态转移规则;3)结合步骤1)和步骤2)建立模块的一致性规则,用来判断模块初始状态和模块转移之后的状态是否一致;4)结合步骤2)和步骤3)列举出所有可能出现的状态和操作,利用状态转移规则得到相应的转移后的状态;5)结合步骤3)和步骤4)对航空电子系统形式化规范进行一致性验证。在步骤1)中,建立模型状态的规范需要分别建立事件规范和状态规范,最后将完成的各个规范汇总。一般的,可基于Coq对事件做出如下形式的规范:Inductiveevents:Type:=|event1|event2|event3|…|eventn.对软硬件子模块的状态做出如下形式的规范:Inductivesoftware_or_hardware_work_state:Type:=|state1|state2|state3|…|staten.最后的汇总可使用Coq中的Record关键字建立记录类型,汇总已有的时间规范和软硬件子模块规范为系统状态规范,其中基于Coq每个子状态有如下规范形式:software_or_hardware1:software_or_hardware_work_stateX;结合步骤1)即可建立系统状态的转移规范,在建立转移规范之前,首先要确定系统的初始状态,基于Coq,可以对初始化状态的规则做出如下形式的规范:Definitioninit(st:states):states:=matchstwith|_=>Build_states(software_or_hardware_work_stateX1)(software_or_hardware_work_stateX2)…(software_or_hardware_work_stateXn)end.在初始化系统状态后即可依次对各个软硬件子模块的转移制定规范,基本思想为:在航电系统中,不同的事件会导致系统状态发生改变。这些事件使系统从当前状态(Sc)转换到新状态(Sn):Sc->Sn箭头表示转换函数nextstate,是当前状态(Sc)和事件(ev)的函数:Sn=nextstate(Sn,ev)其中对于软硬件子模块状态在一个事件触发后的转移规则基于Coq可以做出如下形式的规范:在完成各个软硬件子模块状态的转移规则的规范后,即可汇总这些规范为一个统一的系统状态转移规范nextstate以便后面的形式化验证。通过匹配触发事件的方式,构建系统状态的转移规则,其中基于Coq,系统状态转移规则有如下形式:结合步骤1)和步骤2),即可依据需求建立相应的一致性规范,其中基于Coq,通过匹配软硬件子模块并判断其工作状态,系统状态一致性规则的判定有如下基本形式:matchsoftware_or_hardwareX2stwith|software_or_hardware_work_state1=>true_or_false结合步骤3)即可对现有系统进行形式化验证工作,基于Coq有如下关键过程:1.使用Lemma关键字声明要验证的有蕴含关系的系统关系或规则本文档来自技高网
...
基于Coq的航空电子模式控制一致性验证方法

【技术保护点】
基于Coq的航空电子模式控制一致性验证方法,其特征在于,包括如下步骤:1)利用定理证明辅助工具Coq结合规范要求建立系统各个模块的状态模型;2)结合步骤1)中的系统模块状态模型,建立状态转移规则;3)结合步骤1)和步骤2)建立模块的一致性规则,用来判断模块初始状态和模块转移之后的状态是否一致;4)结合步骤2)和步骤3)列举出所有可能出现的状态和操作,利用状态转移规则得到相应的转移后的状态;5)结合步骤3)和步骤4)对航空电子系统形式化规范进行一致性验证。

【技术特征摘要】
1.基于Coq的航空电子模式控制一致性验证方法,其特征在于,包括如下步骤:1)利用定理证明辅助工具Coq结合规范要求建立系统各个模块的状态模型;2)结合步骤1)中的系统模块状态模型,建立状态转移规则;3)结合步骤1)和步骤2)建立模块的一致性规则,用来判断模块初始状态和模块转移之后的状态是否一致;4)结合步骤2)和步骤3)列举出所有可能出现的状态和操作,利用状态转移规则得到相应的转移后的状态;5)结合步骤3)和步骤4)对航空电子系统形式化规范进行一致性验证。2.根据权利要求1所述基于Coq的航空电子模式控制一致性验证方法,其特征在于,步骤1)建立模型状态的规范需要分别建立事件规范和状态规范,最后将完成的各个规范汇总。一般的,基于Coq对事件可以做出如下形式的规范:Inductiveevents:Type:=|event1|event2|event3|…|eventn.对软硬件子模块的状态做出如下形式的规范:Inductivesoftware_or_hardware_work_state:Type:=|state1|state2|state3|…|staten.最后的汇总可使用Coq中的Record关键字建立记录类型,汇总已有的时间规范和软硬件子模块规范为系统状态规范,其中基于Coq每个子状态有如下规范形式:software_or_hardwarel:software_or_hardware_work_stateX。3.根据权利要求2所述基于Coq的航空电子模式控制一致性验证方法,其特征在于,步骤2)结合步骤1)即可建立系统状态的转移规范,在建立转移规范之前,首先要确定系统的初始状态,基于Coq,可以对初始化状态的规则做出如下形式的规范:Definitioninit(st:states):states:=matchstwith|_=>Build_states(software_or-hardware_work_stateX1)(software_or_hardware_work_stateX2)…(software_or_hardware_work_stateXn)end.在初始化系统状态后即可依次对各个软硬件子模块的转移制定规范,基本思想为:在航电系...

【专利技术属性】
技术研发人员:周勇张天瑞刘骁谢红梅周洲程仕杰
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1