32、特征化转换系统十年:理论、扩展与测试应用

特征化转换系统十年:理论、扩展与测试应用

1. 可达性算法

可达性算法(Reachables)用于计算从给定初始状态出发的可达状态集合。以下是算法的具体实现:

Input: fts = (S, Act, Trans, I, AP, L, fm, γ), s0 ∈S.
Output: R(s0).
1 R ←⊥;
2 Stack ←push((s0, fm), []);
3 while Stack ̸= [] do
4
(s, γ) ←pop(Stack);
5
succ ←{(s′, γ′) | s′ ∈dom(Post(s)) ∧γ′ = Post(s)(s′) ∧γ};
6
foreach (s′, γ′) ∈succ • γ′ ̸|=⊥do
7
if s′ ∈dom(R) then
8
γnew ←¬R(s′) ∧γ′;
9
if γnew ̸|=⊥then
10
R(s′) ←R(s′) ∨γ′;
11
push((s′, γnew), Stack);
12
end
13
end
14
else
15
R(s′) ←γ′;
16
push((s′, γ′), Stack);
17
end
18
end
19 end
20 return R

该算法的理论复杂度分析如下:设 fts 是基于特征集合 F 的 FTS,计算该算法的最坏情况时间复杂度为 $O(|fts| \cdot 2^{|F|})$。虽然 FTS 算法的理论复杂度较高,但实验表明在实际应用中它优于基于产品的方法。

2. 相关的 FTS 验证工作 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值