31、通过模型检查理解SIP

通过模型检查理解SIP

1. 形式模型的有效性与正确性

在形式模型中,有效性和正确性都至关重要。一个有效的模型需忠实于读者的需求和假设,而一个正确的模型则要符合其预期属性的形式规范。由于正确性是两个形式对象之间的关系,因此可以使用模型检查等技术进行形式验证。

本文中的模型旨在描述SIP,而非实现特定的用户目标,所以其外部规范较弱。对于简单模型,唯一的外部规范是每个对话都应结束,并且两个用户代理都应同意对话已结束。为了将这一属性形式化,在对话的期望结束状态下,两个布尔变量 endedc endeds 为真。这两个变量用于线性时间时态逻辑公式:

32(endedc = true ∧ endeds = true)

该公式被称为稳定性属性,它表示在任何轨迹中,最终( 3 )会有一个点,从该点起变量断言在轨迹的其余部分始终为真( 2 )。Spin工具可以验证简单模型是否满足这一属性规范。

此外,在模型的可执行代码中穿插状态变量断言也是一种更有用的规范形式。每个断言都是一个规范,即在断言所在的控制点,断言的谓词必须始终为真。例如,在UAS的简单模型中,当发送 invSucc 消息时,布尔变量 acked 被设置为 false 。在UAS代码中,无论何时接收到 ack 消息,都会有一个断言表明 acked

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值