歧义与逻辑


17

在自动机理论(有限自动机,下推自动机,...)和复杂性中,存在“歧义”的概念。如果单词至少具有两个不同的接受行程,则自动机是不明确的。如果对于机器接受的每个单词最多有不同的行来接受则该机器是模糊的。wkwkw

这个概念也在上下文无关的语法中定义:如果存在可以以两种不同方式派生的单词,则该语法是不明确的。

还众所周知,许多语言在有限模型上都有很好的逻辑特征。(如果语言是规则的,存在一元二阶式过字,使得每一个单词的是模型,类似于NP如果等同于二阶式,每一个第二顺序量词是存在)LϕwLϕ

因此,我的问题在两个领域的边缘:给定逻辑公式的“歧义性”是否有任何结果,甚至是规范的定义?

我可以想象一些定义:

  • xϕ(x)如果最多存在一个使得成立且是明确的,则是明确的。 xϕ(x)ϕ(x)
  • ϕ0ϕ1如果同时存在和的模型,或者不明确,则将是不明确的。 ϕ0ϕ1ϕi
  • 如果最多只有一个正确的分配,则SAT公式将是明确的。

因此,我想知道这是否是一个众所周知的概念,否则尝试对此主题进行研究可能会很有趣。如果这个概念是已知的,谁能给我可以用来搜索有关此问题的信息的关键字(因为“逻辑歧义”给出了许多无关的结果),或者是一本书/ pdf /文章参考?

Answers:


11

语法中的规则和逻辑中的推理规则都可以看作是生产规则,它使我们从“已知的东西”中获得“新的东西”。就像有很多方法可以产生(或解析)语法中的单词一样,也有很多方法可以产生(或证明)逻辑公式。这个类比可以进一步得出。例如,某些逻辑系统接受正常形式的证明。同样,某些语法也接受规范的解析树。

因此,我想说您的逻辑示例往错误的方向发展。正确的比喻是

“ parse tree”:“ word” =“ proof”:“逻辑公式”

实际上,一种足够通用的语法将能够表达逻辑的典型推理规则,因此语法上正确的单词将恰好是可证明的公式。在这种情况下,分析树实际上样张。

相反,如果我们愿意考虑非常笼统的推理规则(不一定具有传统的逻辑风格),那么每个语法都可以表示为公理(终端)和推理规则(产生式)的系统。再一次,我们将看到证明与解析树是一回事。


我没有真正考虑过证明。我更习惯(有限)模型理论。我们关心弄清楚哪些集是公式的模型,哪些集不是。(特别是,对于一个公式,查找一个集合是否为模型的复杂度是多少,对于可证明的公式(即重言式),因为每个集合都是模型,所以复杂度为O(1))。但是非常感谢您的回答。
Arthur MILCHIOR 2011年

2
好了,比喻:模型理论对逻辑而言,语义对语言而言。模型论将意义赋予逻辑理论,而语义则将意义赋予语言。有时,即使您习惯了,也最好不要混合苹果和橙子。
Andrej Bauer

7

仅两句话。希望他们能帮上忙。

逻辑语义和真理语义的标准定义遵循Tarski的介绍,从公式结构的归纳入手。另一种可能性是根据Hintikka的建议给出基于游戏的语义。真实性和可满足性都是根据游戏中的策略来定义的。对于一阶公式,只要且仅当Hintikka游戏中存在获胜策略时,才能证明在Tarski的观念下公式是正确的。

为了正式化您的问题,可以问游戏是否接受多种策略。关于策略是否应该确定性,还有一个有趣的问题。Hintikka要求它们具有确定性。Hintikka的原始语义与Tarski的语义相等的证明需要选择公理。人们还可以使用具有较少确定性的非确定性策略在游戏中形式化真理。

您的语言理论示例使我想到了确定性,模拟关系和语言接受度。自动机之间的模拟关系意味着它们的语言之间包含语言,尽管事实并非如此。对于确定性自动机,这两个概念是重合的。有人会问,是否有可能以一种“平滑的”方式扩展仿真关系,以捕获非确定性自动机的语言等效性。Kousha Etessami的论文非常不错,展示了如何使用k仿真(自动机的多项式时间可计算仿真层次))。直观地,“ k”反映了仿真关系可以捕获的不确定性程度。当“ k”等于自动机中的不确定性水平时,模拟和语言等效性会重合。该论文还根据多态模态逻辑和一阶逻辑的有界变量片段对k模拟进行了逻辑表征。您可以在一个保险杠包中获得语言包容性,确定性,游戏,模态逻辑和一阶逻辑。


4

开始时是在安德烈·鲍尔(Andrej Bauer)的回答下发表评论,但太大了。

我认为歧义的从一个有限模型理论点明显的定义将是: ambiguous(ϕ)M1,M2|M1ϕM2ϕM1ψM2ψ

在口头上,存在你的语法编码为一个公式的不同型号,可以通过一些公式来区分ψ,或许是一个子公式φϕψϕ

您可以通过描述性复杂性将此与Andrej关于证明的回应联系起来。特定模型编码的存在加上适当的TM作为给定公式的模型的接受度的结合,证明了该公式中编码的公理和推论(以及等效语法)是一致的。

为了使它与Andrej的答案完全兼容,您必须说该模型是由公式“生成”的,该公式充当了所有可能有限模型(或类似模型)空间的过滤器,并具有过滤的编码和作用在输入模型上作为“证明”。然后,不同的证据证明了模棱两可。

这可能不是流行的观点,但是我倾向于将有限模型理论和证明理论视为从不同角度来看的同一事物。;-)


“您的语法中编码有一个公式 ”,对不起,我不明白。您是说“作为公式”吗?据我所知,您始终可以区分两个不同的有限模型。ϕ
Arthur MILCHIOR 2011年

是的,那应该是“公式”。我已经解决了。至于区分有限模型,另一种情况是您的语言只有一个公认的有限模型(可能取决于同构概念)。那是模棱两可的。
马克·哈曼

我想那确实是“模棱两可”。我只是没有想到这样。主要是因为就语言而言,这并不是很有趣。但是从逻辑上看是否
有意义

我不确定语言部分一定很无聊。我对此有更多想法,但我认为这将使我们超出此论坛的范围。;-)
Marc Hamann

0

不确定适用于CS的问题,但请尝试搜索术语模糊性和逻辑性。在逻辑哲学中,通常将模糊性与模糊性区分开(例如,参见此处),并且我认为您追求的是模糊性(因为模糊性被定义为存在临界情况的术语)。该领域的主要书籍是蒂莫西·威廉姆森(Timothy Williamson)的《模糊性》(Vagueness)(但也可以在上方的斯坦福网站上查看参考书目)。


1
谢谢您的回答。但是正如您所说,我并没有真正看到与计算机科学的关系。尤其是,宇宙是否是公式的模型,这里实际上并没有任何模糊性。取而代之的是,在自动机上,模棱两可是明确定义的,并且有已知的算法来确定自动机是模棱两可,k模棱两可还是模棱两可。(仅适用于某种类型的自动机)
Arthur MILCHIOR 2011年

您说得很对,我可能不应该跳进这个问题而陷入潜伏。我只是CS的新手(即将完成逻辑/科学哲学和纯数学课程的本科学习)。感谢您提供的信息。
DanielC 2011年

0

我(也)同意Anrej。

我认为描述性复杂性是一种无需计算的表征(以其自身的方式使其变得有趣),因此,您给出的形式语言理论(自动机/语法/ ...)中的计算歧义示例似乎在完全不同的领域中。在描述性复杂性中,语言对应于复杂性类,而查询(在一种语言中)对应于计算问题(而非算法)。没有检查/计算查询AFAIK的预期方法,因此,如果您不希望在计算上模糊不清,恕我直言,这些示例会引起误解。


Kaveh,我不确定我是否同意描述性复杂度的无计算特征是100%正确的。计算细节对于理解特定逻辑如何捕获复杂性类非常重要。这样做的好处是,一旦您完成了证明并理解了它是如何工作的,就可以将计算放在一边,并使用标准逻辑方法将重点放在逻辑细节上。
马克·哈曼

相同的注释à标记。描述性复杂度也被称为数据库理论,词汇是数据库的结构,理论模型是数据库的内容。因此,很高兴我们能够计算并确定数据库是否遵守公式。
Arthur MILCHIOR 2011年

AC0FO

1
@Kaveh,我的观点有点微妙,但是我认为很重要,因为它似乎经常被误解(例如,由于P = NP?尝试失败)。这里一个潜在的,相当蛮力算法underlies逻辑语言的对应和复杂性类。使用逻辑可以使您不必每秒钟思考一下该算法的细节,但是Fagin,Immerman,Vardi和其他人提供的证明的精妙之处在于描述这些算法。完全看不见他们的人通常会陷入麻烦。
马克·哈曼

1
@Kaveh,我想我们彼此了解,并分享我们对该领域的尊重。“蛮力”并不是要对基础算法稍加了解,只是要表明我们所谈论的是比从事算法优化工作的人所认为的更抽象的东西。
马克·哈曼
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.