我试图比简单的英语句子更正式地表达规则,并希望在使用命题方法和某种二元决策树来说明规则方面有一些方向。
假设指定区域之外的对象需要处于特定状态(例如redState
)才能被考虑safe
。用通俗易懂的英文句子表达;
如果对象在 ZoneA 之外并且处于 RedState,那么它是安全的,
但是,在某些情况下,对象可能不受此限制:
如果对象在 ZoneA 之外,不处于 RedState 并且是 Exempt 的,那么它是安全的。
如果对象在 ZoneA 之外,不处于 RedState 并且不是 Exempt,那么它不是安全的。
区域 A 中的对象是否处于红色状态并不重要。剩下的规则是:
如果一个对象包含在区域 A 中,那么它是安全的。
使用命题公式,我认为这些规则可以表示为
¬
InZoneA
∧RedState
⇒Safe
¬
InZoneA
∧ ¬RedState
∧Exempt
⇒Safe
¬
InZoneA
∧ ¬RedState
∧ ¬Exempt
⇒ ¬Safe
工业区A⇒
Safe
我咨询过系统规范方法(例如 Z),但更感兴趣的是传达规则的简明概念,而不是确保它们在更大的系统中运行。因此,我想将它们表示为一种二元决策树(图)。我已经阅读了有关该主题的一些注释,但有点不确定它们的使用是否是最好的方法,或者我是否正在屠杀它们。我对这些规则得出的表示形式如图所示,实线表示True
,虚线表示False
。
我非常感谢您就这种表示是否正确或我的方法/想法是否有缺陷提供意见。非常感谢!