高保证行为综合的形式验证:从编译认证到等效性检查
在高保证行为综合领域,形式验证是确保设计正确性的关键。本文将深入探讨编译认证、等效性检查等核心内容,并通过实验结果展示其有效性。
编译认证
编译认证的核心在于证明对控制和数据流图(CCDFG)进行的转换是正确的。具体而言,若对CCDFG G应用转换T生成新的CCDFG G’,则需证明G和G’的执行之间存在可证明的对应关系。这一过程依赖于正式的对应概念,该概念基于“口吃追踪包含”,允许操作执行顺序存在差异,只要观察序列不受影响。
以下是几个关键定义:
- 压缩执行 :设E为CCDFG G的执行序列,F为G上的一组输出函数。E在F下的压缩是通过移除满足每个f∈F都有f(si) = f(si+1)的si得到的子序列。
- 追踪等效 :对于两个CCDFG G和G’,若它们在相同的状态和输入变量集合上,且执行序列E和E’在F下的压缩具有相同的可观察行为,则称E和E’追踪等效。
- CCDFG细化 :若对于G’的每个执行E’,都存在G的执行E使得E和E’追踪等效,则称G’细化G。
为了明确转换的适用性,将转换视为“受保护的命令”τ ≜⟨pre, T, post⟩,其中pre是应用转换的前置条件,T是转换操作,post是转换后的后置条件。转换正确性的定义为:若对满足pre的任何CCDFG G应用T的结果细化G并满足post,则转换τ是正确的。
通过对转换序列的归纳,可以证明转换序列的正确性定理:设τ0, …, τn是一系列正确的转换,其中τi ≜⟨prei, Ti
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



