计算机科学家逻辑/模态逻辑/多模态逻辑 - 一个例子
外观
如果要使用模态逻辑来表达不同代理的知识,则需要参数化的操作符:我们引入方框操作符 ,它们由任意项 参数化;对于 ,参数化的菱形操作符也是如此。
一位国王想要知道他的三个顾问中谁最聪明,就在他们每个人的额头上涂了一个白点,告诉他们这些点是黑点或白点,并且至少有一个白点,然后要求他们说出自己额头上的点的颜色。过了一段时间,第一个智者说:“我不知道我是否有白点。” 第二个听到后,也说自己不知道。第三个(真正!)智者然后回答:“我的点一定是白色的。”
以下是使用缩写 进行的形式化,它代表任意嵌套的参数化 操作符。如果我们只有 2 个智者 和 , 将代表 。因此,一般来说, 代表“ 是普遍已知的”。
这三个智者是不同的
众所周知,他们中有人有白点
众所周知,如果有人没有白点,其他人就会知道
C 知道,B 知道,A 不知道自己位置的颜色。
C 知道,B 不知道自己位置的颜色。
要证明的定理是 " 知道自己有一个白色位置"
如果我们有一个模态逻辑定理证明器,我们可以将其应用于上述指定的问题,以便获得证明,从而得到定理的解释。
在本节的其余部分,我们将介绍两种定义这种定理证明器的方法:直接表格演算和翻译方法到一阶经典谓词逻辑。