其他分享
首页 > 其他分享> > 线性时间逻辑(LTL)

线性时间逻辑(LTL)

作者:互联网

线性时间逻辑(LTL)

linear-time logic,提供了一种非常直观但是在数学上又很精确的表示方法来描述线性时间性质。在70年代后期,Pnueli提出将线性时序逻辑应用于验证复杂计算机系统。LTL一般通过对程序建模来描述交错序列的属性,但不能描述不同状态间的变化。

LTL的语法

TL在静态逻辑u基础之上定义,利用一阶命题作为u的一个实例,定义为:

φ::= true | a | φ 1 ∧ φ 2 | ¬φ | ◯φ | φ 1 U φ 2

LTL公式的基本成分是原子命题,同时LTL公式一般通过一个无限状态序列x0x1x2…来解释:
在这里插入图片描述

上图所示的无限状态序列解释如下,a表示a在当前时刻成立,在轨迹表现为在第一个位置成立

LTL在无限字上的语义

用ζk表示以xk开始的序列ζ=x0x1x2…的后缀序列LTL在无限字上的语义可以表示为:

在此基础上,再定义一个额外的模态运算符V,称为释放(release),书上的定义为当φ1永远满足或φ1保持满足直到(后缀上)某个点使φ1和φ2都成立,则φ1Vφ2对于序列ζk都成立。

LTL规约连接规则

LTL简单示例

如下图,展示了一个简单的弹簧模型:

1.PNG

我们能够拉伸这个弹簧然后释放掉。拉伸弹簧过后,弹簧有三种可能的状态:失去弹性、保持拉伸状态或者恢复原来的形状。所以系统中设置三个状态,s1:初始状态(弹簧原态)、s2:拉伸状态、s3:拉伸且失去弹性状态。同时将每个状态用集合AP={extended(拉伸),malfunction(失效)}进行标记。

假设此系统拥有无限数目的序列如下所示:

2.jpg

下面给出几个LTL公式,分析ζ2是否满足。

LTL公理化

为了证明给定时序公式φ是有效的,为命题化线性时序逻辑给定一组公理。需要注意的是在此证明系统下,释放运算符V会被去除(例如:μVφ=¬((¬μ)U(¬φ))。

在这里插入图片描述

交通灯实例

一个交通灯能在绿色、黄色、红色之间变换,其底层逻辑u是一个命题逻辑。命题re、ye、gr分别对应红灯、黄灯和绿灯。交通灯的颜色按如下顺序变换,并可以无限变换下去:
g r e e n → y e l l o w → r e d → g r e e n green→yellow→red→green green→yellow→red→green
交通灯在任意时刻仅亮一种颜色,这是系统的一个不变量,用LTL语言可以描述为:
□ ( ¬ ( g r ∧ y e ) ∧ ¬ ( g r ∧ y e ) ∧ ¬ ( g r ∧ y e ) ∧ ( g r ∨ y e ∨ r e ) ) □(¬(gr∧ye)∧¬(gr∧ye)∧¬(gr∧ye)∧(gr∨ye∨re)) □(¬(gr∧ye)∧¬(gr∧ye)∧¬(gr∧ye)∧(gr∨ye∨re))
灯在绿灯状态时,他在变成黄灯之前会一直保持绿灯状态,用LTL可以表示为:
□ ( g r → ( g r U y e ) ) □(gr→(gr U ye)) □(gr→(grUye))
则变化规则用LTL语言表示为:
□ ( ( g r U y e ) ∨ ( y e U r e ) ∨ ( r e U g r ) ) □((gr U ye) ∨(ye U re) ∨(re U gr)) □((grUye)∨(yeUre)∨(reUgr))

互斥进程实例

假设有一对共享某资源的互斥进程P1、P2,他们不能同时使用某资源,我们使用一个特殊机制对他们进行控制,在该机制中,为每个进程设置一临界区,进程进入临界区之后才能使用资源且一次仅供一个进程进入;再为它们设置尝试区,在进入临界区之前,每个进程首先进入尝试区,表明进入临界区的目的。首先,我们定义一些描述需求的命题:

tryCSi:进程pi进入它的尝试区(试图进入临界区)。
inCSi:进程pi在它的临界区CSi中。

其次,利用上面的命题和LTL语言定义系统属性:

  1. 互斥性:任何时间里只有一个进程能够在它的临界区里。
    □ ¬ ( i n C S 1 ∧ i n C S 2 ) □¬(inCS1∧inCS2) □¬(inCS1∧inCS2)
  2. 响应能力属性:每个尝试进入临界区的进程最终都能够获取资源进入临界区。
    □ ( t r y C S i → ◊ i n C S i ) □(tryCSi→◊inCSi) □(tryCSi→◊inCSi)
  3. 互斥协议属性:当一个进程进入它的尝试区时他将会停留在里面直到它进入自己的临界区。
    □ ( t r y C S i → ( ( t r y C S i U i n C S i ) ∨ □ t r y C S i ) □(tryCSi→((tryCSi U inCSi)∨ □tryCSi) □(tryCSi→((tryCSiUinCSi)∨□tryCSi)

标签:状态,逻辑,extended,gr,ye,线性,成立,LTL
来源: https://blog.csdn.net/weixin_43824169/article/details/121302430