3 一阶逻辑:模型论

3.5 真值

  1. Q: 真值和满足有何联系与区别?
    A:
  • 满足针对赋值,真值针对解释。
  • 解释下一切赋值都满足则“真”。一切赋值都不满足则“假”。
    • 注:所以说对于一般的情况可以“不确定真假”。但不可能既真又假。
  1. Q: 考察公式真值关于\(\to,\sim\)的性质(强调:这并不是真值定义的一部分,而是“性质”),其来源是什么?
    A: 赋值定义中关于\(\to,\sim\)的部分。(真值、解释之下更底层的是赋值)
  2. Q: \(\forall x_i \mathscr A(x_i)\)\(\mathscr A(x_i)\)是一样的吗?
    A: 一者为真则另一者为真(等价)。一者为假则另一者不一定为假。
    一般地,对于某个赋值,后者满足前者未必满足。(但对于某个解释,后者为真等价于前者为真)
  3. Q: \(\exists xA(x,y)\)为真等价于\(\forall y\exists x A(x,y)\)为真嘛?等价于\(\exists x\forall y A(x,y)\)为真嘛?
    A:
    第一问。用课件已知结论直接知道:前面添加\(\forall y\)仍等价(同时为真)。
    注:也可以用真值定义,写出(这里是非形式化说明。这里的\(\forall\)不是形式的一阶逻辑记号,下同)
  • \(\exists xA(x,y)\)\(\sim\forall x (\sim A(x,y))\)为真表示\(\forall u(x),u(y),\exists u'(x),s.t.A(u'(x),u(y))\)(其中\(u,u'\)是互为\(i-\)等值的赋值).
  • 再写出另一式的含义,即可。
    • 注意此处在所有“等值”的赋值中找到一个,即可说明\(\sim\forall\cdots\)型式子的真值是什么

第二问。根据真值定义,\(\exists x\forall y A(x,y)\)为真即\(\sim\forall x(\sim\forall yA(x,y))\)为真表示\(\forall u(x),u(y),\exists u'(x),s.t. \forall u'(y)A(u'(x),u'(y))\),即\(\exists u'(x)\forall u'(y)A(u'(x),u'(y))\). 故不等价。

  1. Q: 重言式与解释为真之间的关系,相比解释为真与赋值满足之间的关系有何异同?
    A: 重言式则所有解释为真,解释为真则所有赋值满足。
    非重言式且非矛盾式,则(有可能)部分解释为真部分解释为假(但不一定。有效的公式不一定是重言式);解释非真且非假,则(一定)有部分赋值满足部分赋值不满足。
  • 注:非有效且非矛盾的公式才(根据定义)是一定对部分解释为真部分解释为假。重言式不一定!

二者层次不同。重言式是对于语言来说的,其对于一切解释为真。解释为真是对于解释来说的,其对于一切赋值满足。
二者定义方式不同。对于解释为真,定义就是对一切赋值满足。但是对于一阶逻辑中重言式,定义是命题逻辑中重言式的“替换”,所以对重言式“任何解释都为真”是需要证明的,而不是定义。

  1. Q: 接上,重言式“任何解释都为真”的具体证明与上一节“公式中项替换的赋值”有何异同?
    A:
  • 之前是公式中项替换,现在是在公式中把0元谓词(命题符)替换成公式(“替换实例”)。这完全是类似的。
  • 之前:\(v'(x_i)=v(t)\),则\(v'(\mathscr A(x_i))=v(\mathscr A(t))\). (当然还有“自由”等条件,此处省略)
    现在:\(v'(p_i)=v(\mathscr A_i)\),则\(v'(\mathscr A_0)=v(\mathscr A)\),其中\(\mathscr A\)就是把\(\mathscr A_0\)中的\(p_i\)替换成\(\mathscr A_i\).
  • 具体证明的归纳法也是类似的。不过
    之前:归纳时比较复杂,需要考虑函项、谓词、量词、连接符等等。
    现在:归纳起点就是原子,归纳过程只需考虑两种连接符,归纳过程相比之下简单得多。(注意:\(\mathscr A_0\)命题逻辑中的公式)

闭式

  1. Q: 闭项和闭式有何联系?
    A: 闭项不含变元,闭式不含自由变元。闭项组成闭式,闭式不一定内部全为闭项(可能有约束变元)。
  2. Q: 利用前一篇中公式的项替换的赋值中的类似技术,容易证明对于某公式\(\mathscr A\),如果两个赋值对于()的自由变元都相同,则()。由此推出()是二值的。
    注:这并不是在证“解释\(I\)和变元赋值\(u\)决定赋值\(v\)”。注意只要求自由变元赋值相同!
    A: 出现在\(\mathscr A\)中的所有,这两个对于\(\mathscr A\)的赋值同时满足或不满足,闭式
  3. Q: 数学中通常只用闭式,那怎么处理一般公式?“对闭式,检测其真假值只需检查某个赋值”意味着可以通过举特例证明或证伪一切数学命题吗?
    A: 提示:增加全称量词,把自由变元变为约束变元。
    对闭式检查某个赋值是否满足时,根据全称量词相关定义,可能实际上需要检查无穷多个\(i-\)等值的赋值,也就是不能简单举特例。

有效

  1. Q: 重言式和有效是何关系?
    A: 有效是对任意解释为真,重言式一定有效。有效不一定是重言式,例如\(\forall x_i\mathscr A\to\exists x_i\mathscr A\)显然有效但不能由命题逻辑的重言式替换得到。
  2. Q: 对于“有效”和“矛盾”式,做类似于“3.5真值”总标题下题1.的考察
    A: 提示:那里是“赋值是底层,解释是上层”。这里再上一层达到“有效和矛盾”概念这里。
  3. Q: \(\mathscr A\models \mathscr B\)是否表示满足\(\mathscr A\)的赋值都满足\(\mathscr B\)
    A: 否。是“使\(\mathscr A\)真的解释也使\(\mathscr B\)真”。举例:\(\mathscr A\)\(A(a_1)\wedge B(a_1)\wedge C(x_1)\)\(\mathscr B\)\(A(a_1)\)这样。
    注:\(\mathscr A\models \mathscr B\)也可说是“\(\mathscr A\)的模型都是\(\mathscr B\)的模型”,其中解释\(I\)\(\mathscr A\)的模型即解释\(I\)\(\mathscr A\)为真。
    注:回忆命题逻辑中\(\models\)的两种含义:“模型”或“蕴涵”。此处也是如此。如果\(I\models \mathscr A\)推出\(I\models \mathscr B\),则\(\mathscr A\models \mathscr B\). 此处\(I\models\)是模型,\(\mathscr A\models\)是蕴涵。
  4. Q: 有效的开式都是重言式吗?若不是,如何对以上命题做合适修改?
    A: 例:\(\forall x_i \mathscr A\to\mathscr A\)
    须不含量词。这样待考察开式只能是一些原子通过连接词连接的结果。从而容易证明只能是重言式。
    注:证明过程梗概:待考察开式中只有有限个常元、变元、函项、谓词,前三者均可手动作某种解释和赋值使得各个层次出现所有各个项赋值都各不相同,从而可以“灵活指定”各个原子真值。这样只要不是重言式就可以有某个赋值使得整个开式赋值为假。

蕴涵

  1. Q: \(\models_L\)\(\models_K\)有何关系?
    A: 若\(\mathscr A\models_L\mathscr B\)\(\mathscr A\models_K\mathscr B\),特别地,两公式重言等价(即互相\(\models_L\))则逻辑等价(即互相\(\models_K\))。
    特别地,L的重言式也是K的有效式。
    注:显然考察此命题有意义的前提是:\(\mathscr L_0\)的公式一定是\(\mathscr L\)的公式(“子语言”关系)
  2. Q: 上题的具体证明先根据定义说明()是重言式,而()一定逻辑有效。最后再把()通过定义转化为“如果\(I\models_K\mathscr A\)则()”。
    A: \(\mathscr A\to\mathscr B\),重言式,\(\models_K \mathscr A\to \mathscr B\)\(I\models_K\mathscr B\)
    注:课件“据\(L\)的完全性定理和演绎定理”的意思是\(\mathscr A\models_L\mathscr B\)等价于\(\mathscr A\vdash_L\mathscr B\),等价于\(\vdash_L\mathscr A\to\mathscr B\),最后等价于\(\models_L \mathscr A\to\mathscr B\).
    感觉这多少有点舍近求远

3.6 斯科伦化

  1. Q: 斯科伦函项和斯科伦常元有何区别和联系?
    A: 提示:斯科伦常元是0元斯科伦函项(不在任何全称量词辖域中,即0元)。
  2. Q: 设存在\(I\models \mathscr A\),则存在()的\(I^s\),使得\(I^s\models \mathscr A^s\).
    另一个方向也易证,因此存在(而非任意)解释使得()为真等价于存在解释使得()为真。
    因此,()矛盾和()矛盾等价。然而()有效不能推出()有效。
    注:
    A: 包含\(I\)中已有的所有解释且额外再包含斯科伦函项的(指定的)解释(注:显然不能任意地解释斯科伦函项,否则不能保证解释为真)
    \(\mathscr A\)\(\mathscr A^s\)\(\mathscr A\)\(\mathscr A^s\)\(\mathscr A\)\(\mathscr A^s\)
  3. Q: 考察并说明\(\forall xA(x)\to \exists xA(x)\)的斯科伦式。
    A: \(\forall xA(x)\to A(c)\)。两者恰巧都是有效式(但这并不是一般结论)。
  4. Q: 证明斯科伦式有关结论时,经常构造斯科伦函项在某点取值为()。
    或者另一方向:构造赋值在某点等于()。
    A: 根据\(\exists\)定义构造出的指定赋值\(v\)在某点的值,斯科伦函项在某点取值。

模型论附录

  1. Q: 代数结构的同构是保持运算的()射。具体到解释的同构,要保持的是()运算。
    A: 双,函项符和谓词符
  2. Q: 举例说明同构与抽象的关系。
    A: 比如常元“小明”“小红”可以被抽象成常元\(a,b\)等等(我们对常元命名就可以看作是某种程度上应用了同构)。
    比如星期一到星期日抽象成\(\bar 1,\cdots,\bar 6,\bar 0\)共7个等价类,“后继”关系抽象成等价类之间的模7“后继”关系。
  3. Q: 为什么基本等价不一定同构?
    A: 基本等价只是说两个解释对于任何公式\(\mathscr A\)同时为真,没有细化到更深一层的“赋值”。
    比如对于只有一个谓词符\(A_1^1\),没有函项符,只有一个变元\(x\),论域为\(\{0,1,2\}\)的语言。
    解释\(I_1\)\(A=\{0,1\}\),解释\(I_2\)\(A=\{0\}\),则不细化到“赋值”一层是看不出区别的。
    注:对于一个一阶语言,谓词符必须有。常元、函项符可能没有。

勘误集

ml-3_3.pdf

  • p86 “非真既假”应为“非真即假”
  • p89 \(w',v'\)不是\(i-\)等值,而是在\(\mathscr B\)的一切自由变元处都取值相同。
  • p94(d)疑似有误
  • p95有个命题编号没显示
  • p96:应为“有效的无任何量词的开式必是重言式”“任一非逻辑有效的不带量词的开式,我们都可以构造出其不为真的赋值”
  • p106最后是反之不然
  • p106中间3.67有一个\(I_1\)疑为\(I_2\)
  • p107“对任一常元”处多了个括号