首页> 中国专利> 一种对历史事务的建模验证方法

一种对历史事务的建模验证方法

摘要

本发明提供一种对历史事务的建模验证方法,属于计算机领域。本方法建立一种在线性时序逻辑基础之上的新型逻辑,通过对线性时序逻辑的扩充,能描述历史条件下的事物以及时间,并能对描述好的历史事务进行验证。本发明解决之前线性时序逻辑只能表示未来情况的局限,提高了语言的表达能力,在提高软件质量、保证软件正确性等方面有非常重要的作用,有良好的社会效益。

著录项

  • 公开/公告号CN108197314A

    专利类型发明专利

  • 公开/公告日2018-06-22

    原文格式PDF

  • 申请/专利权人 江南大学;

    申请/专利号CN201810101474.3

  • 发明设计人 殷萍;高翠芳;

    申请日2018-02-01

  • 分类号

  • 代理机构哈尔滨市阳光惠远知识产权代理有限公司;

  • 代理人张勇

  • 地址 214122 江苏省无锡市滨湖区蠡湖大道1800号

  • 入库时间 2023-06-19 05:41:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-09

    授权

    授权

  • 2018-07-17

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20180201

    实质审查的生效

  • 2018-06-22

    公开

    公开

说明书

技术领域

本发明涉及一种对历史事务的建模验证方法,属于物联网技术领域。

背景技术

随着软件规模的越来越大,系统的功能越来越复杂,而且由于系统微小错误造成巨大损失的例子越来越常见,人工的验证的效率和可靠性也不能保证,这使得人工的验证软件的局限性越来越突出。因此,如何保证软件的正确性和可靠性变得越来越紧迫。模型检测由于其自动化程度高等诸多优点而受到了人们的广泛关注。

模型检测是一种自动的、基于模型的、性质验证处理方法,这种方法预期用于并发的反应式系统。其研究的目的就是扩展自动验证技术的应用领域,将其用于程序的推理,无论是在程序处理的验证还是性质的验证上,都要最大程度的增加自动化的比例,从而减轻人,尤其是专家程序员的工作量。由于模型检测可以自动执行,并能在系统不满足性质时提供反例路径,因此越来越受到人们的关注。模型检测的基本思想是用状态迁移系统(S)表示系统的行为,用模态逻辑公式(F)描述系统的性质。这样“系统是否具有所期望的性质”转化为“状态迁移系统S是否是公式F的一个模型”,表示为S╞F。

其中F包括线性时序逻辑和计算树逻辑。线性时序逻辑是把时间看成是路径的集合,其中路径是时间瞬时的一个序列。线性时序逻辑带有允许我们指示未来的连接词,它将时间建模成时间的序列,无限延伸到未来。一般来说,未来是不确定的,因此我们考虑若干路径,代表不同的可能未来,任何一种都可能实现的“实际”路径。它用连接词X、F、G、U、R和W表示时序连接词。其中X意为“下一个状态”,F意为“某未来状态”,G意为“所有未来状态”,U意为“直到”,R意为“释放”,W意为“弱一直到”,这些都用来表示将来时间。线性时序逻辑表达能力很强,但是有些事情是它不能表达出来的,例如:从任何状态出发,都可能达到一个重启状态(即:从所有状态出发都存在一条路径到达一个满足重启状态);又如电梯可以闲置在第三层不开门(即:从处于第三层的状态出发,存在一条路径,沿着该路径垫底停留在原地)。线性时序逻辑不能表达这些陈述,因为它不能直接断定这些路径的存在性。这时我们就需要计算树逻辑来表达这些性质。

通过上面介绍我们知道无论是线性时序逻辑还是计算树逻辑都能表达未来某些事情的发生,但是实际生活中我们经常需要考虑过去发生的事情。例如网上即时交易现在越来越流行,但交易的双方都是互不相识的,因此,用户要根据该商家的历史交易来判断该商家的信誉以及质量等问题来判断是否和该商家进行交易。然而线性时序逻辑和计算树逻辑并不能对过去的时间进行描述以及进行相关的检测。

发明内容

为解决上述问题,本发明提供一种对历史事务的建模验证方法。

本发明提供的对历史事务的建模验证方法,包括如下步骤:

步骤一:将系统建立模型表示为M=(S,→,L),其中S是一个状态集合,迁移关系→表示对每个s∈S,有某个s'∈S,满足s→s',标记函数L表示S→P(Atoms),P(Atoms)表示原子命题Atoms的幂集;

步骤二:对历史事务进行建模:

(1)增加一个计算过去一个政策被满足次数的量词,并用该量词来写另一个政策,公式扩展为形式的构造,其中x绑定公式并且不是自由出现的,表达方式如下:

其中n=|{j|1≤j≤iΛ(h,j)|=ψ}|,h代表“历史事务”,i是一个整型变量,代表历史事务中的第i个会话,ψ是一个公式,表示公式被满足的次数,iff表示当且仅当;

(2)设置一个量词进行筛选,用扩展的筛选量词来修正,其表达方式如下:

其中是筛选量词,保证对有限的值进行量化,是它的唯一的自由变量;

步骤三:用φ表示上述逻辑公式,为公式φ构造一个自动机,用Aφ表示,该自动机有一个接受迹的概念,迹是命题原子的赋值序列,从一条路径出发,可以抽象出它的迹,自动机Aφ有性质:编码满足φ的所有迹,即所有满足φ的迹;

步骤四:将自动机Aφ与模型M结合,结合运算的结果是一个迁移系统,其路径既是自动机的路径又是该迁移系统的路径;

步骤五:在结合的迁移系统中搜寻从s出发的满足逻辑公式φ;如果存在该路径,则输出“Yes,M,s|=φ”,即存在相应的历史事务;如果没有这样的路径,则输出“No,M,s|≠φ”,即不存在相应的历史事务。

在一种实施方式中,所述步骤二进一步包括:在一些历史数据无法获取或者丢失的情况,局部可观测性存在两个问题,一个是潜在可满足性,一个是遵守问题;部分可观察的会话是p(u1,...,un)形式的有限谓词集合,其中p是未解释的谓词符号,每个ui是常数或变量;部分可观察的历史是部分可观察会话的有限列表,在部分可观察历史中,我们用V(h)表示在历史h中出现的变量,用V(ψ)表示在公式ψ中出现的自由变量的集合。

在一种实施方式中,所述步骤二中筛选量词是对策略线性时序逻辑的直接扩展,即:

if(h,i)|=ψ(c1,...,cn)then(h,i)|=φ[x1:=c1,...,xn:=cn]

筛选量词产生公式的表达方式如下:

其中列表是变量和常量的集合,用表示只有唯一自由变量的筛选量词,正项筛选量词代表唯一的变量是的公式,它的表达方式如下:

本发明提供的对历史事务的建模验证方法,通过对历史事务进行建模,能够表达及验证历史事务以及时间。之前的技术将不受限制的量词与任意可计算的函数组合起来很容易导致不可判定性。我们的方法是将第一个将量化的政策和可计算的功能/关系纳入同样的逻辑之内。同时。我们用一个“计数量词”来扩展线性时态,即计算一个策略在过去已经满足了多少。我们还提出了当用户无法获取所有参数情况下的解决方案。本发明通过对历史事务的建模,验证过去发生过的事情,对历史发生的事务进行调查和评估,将本发明应用在模型检测中对软件进行验证,能够提高对软件的检测质量、保证检测正确性,具有良好的社会效益。

附图说明

图1为本发明提供的对历史事务的建模验证方法流程示意图。

具体实施方式

以下结合附图和具体实施例对本发明提出的一种对历史事务的建模验证方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。

实施例一

历史被组织成会话列表,每个会话是一个由事件或动作组成的有限集合,每一个事件由一个谓词来表示。变量组成被解释为多重排序的功能符号。没有参数的函数符号被称为常量,用a、b、c、d来表示,术语变量用x、y、z来表示,它可代表整型、字符串型等。用prop代表命题逻辑的集合;用f、g、h表示一个或多个参数的函数符号;用R表示一些关系运算符,例如<、=、>等,具体表达方式如下:

其中X-1表示“之前”操作符,S表示“自从”操作符。量化公式

p代表τ1×...×τn→prop类型的n元谓词每一个xi是τi类型。这种量化的目的解释是谓词p定义了一个子类型τ1×...×τn,它由公式所在的会话p的出现决定。如果xi的元数和信息不重要,或者可以通过上下文来推测出,我们常将写成一个公式如果没有自由变量出现则被称为封闭的。下面是该策略的基本解释:

(h,i)|=p(t1,...,tn)iff>1↓,...,tn↓)∈hi

(h,i)|=R(t1,...,tn)iff>1↓,...,tn↓)is>

(h,i)|=ψ1∧ψ2iff(h,i)|=ψ1>2

(h,i)|=X-1ψiffi>1>

(h,i)|=ψ12>2and

for all k,ifj<k≤i then(h,k)|=ψ1

then(h,i)|=ψ[x1:=c1,...,xn:=cn].

其中h代表“历史事务”,i是一个整型变量,代表历史中的第i个会话,ψ是一个公式,iff表示当且仅当。(h,i)|=ψ的含义及时在“在历史中的第i个会话中ψ是成立的”。同时,我们也派生操作符F-1φ≡TSφ(意为过去的某个时间),(意为一直在过去),其中T是的简写。

本实施例一提供了一种对历史事务的建模验证方法,包括如下步骤:

步骤一:将系统建立模型表示为M=(S,→,L),其中S是一个状态集合,迁移关系→表示对每个s∈S,有某个s'∈S,满足s→s',标记函数L表示S→P(Atoms),P(Atoms)表示原子命题Atoms的幂集;

步骤二:对历史事务进行建模:

(1)我们首先考虑在原策略中扩展一个计数量词增加一个计算过去一个政策被满足次数的量词,并用该量词来写另一个政策,公式扩展为形式的构造,其中x绑定公式并且不是自由出现的,表达方式如下:

其中n=|{j|1≤j≤iΛ(h,j)|=ψ}|,h代表“历史事务”,i是一个整型变量,代表历史事务中的第i个会话,ψ是一个公式,表示公式被满足的次数,iff表示当且仅当;

我们仍然可以保持这些算术表达式和其他底层可计算函数与逻辑的完全分离,从而允许我们模块化地扩展这些函数。并且,我们的扩展存在于逻辑本身,因此允许我们表达与其他逻辑运算符相结合的策略;

(2)现在考虑一些历史数据无法获取或者丢失的情况,局部可观测性存在两个问题,一个是潜在可满足性,一个是遵守问题。为此,我们将稍微扩展历史和会话的概念。部分可观察的会话是p(u1,...,un)形式的有限谓词集合,其中p是未解释的谓词符号,每个ui是常数或变量;部分可观察的历史是部分可观察会话的有限列表,在部分可观察历史中,我们用V(h)表示在历史h中出现的变量,用V(ψ)表示在公式ψ中出现的自由变量的集合;

(3)设置一个量词进行筛选,量化政策设计的基本思想是,政策只表达历史上观察到的物体的属性。用扩展的筛选量词来修正,其表达方式如下:

其中是筛选量词,保证对有限的值进行量化,是它的唯一的自由变量;

筛选量词就是对策略线性时序逻辑的直接扩展,即:

简单的筛选量词产生公式表达方式如下:

其中列表是变量和常量的集合,用表示只有唯一自由变量的筛选量词,正项筛选量词代表唯一的变量是的公式,它的表达方式如下:

步骤三:用φ表示上述逻辑公式,为公式φ构造一个自动机,用Aφ表示,该自动机有一个接受迹的概念,迹是命题原子的赋值序列,从一条路径出发,可以抽象出它的迹,自动机Aφ有性质:编码满足φ的所有迹,即所有满足φ的迹;

步骤四:将自动机Aφ与模型M结合,结合运算的结果是一个迁移系统,其路径既是自动机的路径又是该迁移系统的路径;

步骤五:在结合的迁移系统中搜寻从s出发的满足逻辑公式φ;如果存在该路径,则输出“Yes,M,s|=φ”,即存在相应的历史事务;如果没有这样的路径,则输出“No,M,s|≠φ”,即不存在相应的历史事务。

我们考虑网上交易的情形,当买家考虑在哪一家商店进行购物的时候,就希望对商家历史交易的信誉进行一些调查和评估,考察已购买用户的对该商家评价的情况。我们现在考虑一个策略,例如:“买家只与过去有差评的交易构成交易总额的四分之一且送货时间90%都是准时的卖家交易”。

第1步:我们为系统的行为进行建模,得到一个模型M。

第2步:根据用户的要求我们根据上述的逻辑描述出该逻辑公式φ:

其中Ny:T初始化为从交易开始的到现在的历史长度。

第3步:我们根据上述描述的公式φ建立一个自动机,它接受所有满足公式φ的迹。

第4步:然后我们将系统行为模型M和公式φ的自动机Aφ结合。

第5步:我们的目的是找出满足上述条件的商家来进行交易,我们判断模型M中有没有从s出发的满足逻辑公式φ,如果有,则输出“Yes,M,s|=φ”,即存在满足用户要求的商家;如果没有,则输出“No,M,s|≠φ”,即没有满足用户要求的商家。

经过上述步骤的操作,我们可以用逻辑表达方式描述基于历史条件下的事务,并完成对该事务的验证。

综上所述,本发明可以解决历史情况下的事务的验证。相比于已有技术,本发明可以验证基于历史的事务,解决之前线性时序逻辑只能表示未来情况的局限,提高了表达能力,在提高多组件部署的效率、降低成本和保证质量等方面有非常重要的作用,有良好的社会效益。

虽然本发明已以较佳实施例公开如上,但其并非用以限定本发明,任何熟悉此技术的人,在不脱离本发明的精神和范围内,都可做各种的改动与修饰,因此本发明的保护范围应该以权利要求书所界定的为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号