3 一阶语言:模型论

3.3 解释

  1. Q: 为什么要解释非逻辑符号?
    A: 非逻辑符号(函项符、谓词符)依赖于具体的应用背景,可以有不同的意思。在实际应用中,我们需要确定对\(n\)元谓词符,每个可能的\(n\)元组合是否满足该谓词;也需要确定对\(n\)元函项符,每个可能的\(n\)元组合映射到什么对象。这样才能确定公式的真值,项的实际意义等。
    当然,常元作为特殊的函项符,如果不经指定那也是不确定实际含义的。命题符同理。
  2. Q: 相同的一阶语言\(\mathscr L\)一定对应相同的论域\(D_I\)嘛?相同的论域\(D_I\)一定对应相同的解释\(I\)嘛?
    A: 不一定。相同的一阶语言只是有相同的函项符、谓词符、常元等等“字符”的集合。它们论域可以不同
    同样“字符集”中变元在\(I\)解释下,可取值范围为论域\(D_I\)中任意对象,在另一个\(J\)解释下,可取值范围为论域\(D_J\)中任意对象,这完全可能。
    不一定。比如对函项、谓词的定义可能不同(例如“哪些\(n\)元组合被某个指定谓词\(A_1^n\)判定为真?”的定义不同)
  3. Q: 论域和个体集有何区别和联系?
    A: 个体集就是对常元(0元函项)的解释,个体集是论域的子集。
    当然有时为了方便,令个体集与论域相同,则可容易地通过枚举常元,枚举论域中所有对象。
    注:如果个体集是论域的真子集,那么你仍然可以设一些不属于\(\mathscr L\)的符号表示论域中其余元素。例如个体集\(\{b_1,b_2,\cdots\}\),论域中还有一些其它元素\(\{a_1,a_2,\cdots\}\). 为了方便起见,你甚至可以写\(A(a_1)\)这样的原子,即直接把不属于语言的符号拿来使用。这种式子不是“合式”
  4. Q: 什么时候\(\forall x A(g(x,f(x)),a)\)可以被解释成对于所有整数\(x\)\(x\)和它的相反数之和为0?
    A: 设某一一阶语言包含变元\(x\),常元\(a\),函项符\(f,g\),谓词符\(A\).
    提供如下解释\(I\):令论域\(D_I\)是整数集,\(a\)表示0,\(f\)表示求相反数,\(g\)表示二元加法,\(A\)表示等于(关系)。

高阶语言

  1. Q: 用一阶语言表达关于信念的命题,设\(\forall xt ((Believe(x,t)\wedge Exists(t))\to Know(t))\),那\(\forall x\mathscr A((Believe(x,\mathscr A)\wedge Exists(\mathscr A))\to Know(\mathscr A))\)为啥不对?
    A: 公式作为“项”,这不是一阶语言了。
  2. Q: 二阶语言和数学归纳法有何联系?
    A: 数学归纳法要求对任意谓词成立某条性质。这超出了一阶语言的表达范围(即必须对“谓词变元”加上量词)。数学归纳法可以用二阶语言表达为\(\forall A((A(0)\wedge \forall x(A(x)\to A(x+1)))\to \forall xA(x))\).
    注:来自课堂:我们认为,如果强行“把\(A(x)\)这一事实放到论域中”,即强行构造与谓词\(A\)对应的函项符\(a\),与\(\to\)对应的谓词符\(\to\)等等,就从实质上已经超出一阶语言的表达范围了。我们在说“表达能力”的时候,实质上对论域有一定约定。
  3. Q: 如何理解“对谓词变元的量词解释为论域中子集的集”?
    A: 对量词\(\forall A_i\),如果\(A_i\)表示1元谓词,则我们把这里的\(A_i\)解释为一切可能的一元谓词,即论域的一切可能的子集。所以\(A_i\)在此处可以取得的解释的范围是论域的幂集(子集的集)。
    当然对于多元谓词,需要考虑笛卡尔积。
    举例:“每个自然数集都有最小元”,这里的“自然数集”实际上就是考虑谓词。

3.4 满足

  1. Q: 为什么给定一个解释可能有多种甚至无穷种赋值?
    A: 虽然对于常元的赋值\(v(a_i)=\bar a_i\)是指定的,但是对于变元的变元赋值\(u\)可能是有多种乃至无穷种的。
    注:根据赋值的定义\(v(f_i^n(t_1,\cdots,t_n))=\bar f_i^n(v(t_1),\cdots)\),也就是\(u\)和解释\(I\)决定了唯一的\(v\). 此处\(v(t_1)\)是项的赋值,\(\bar f_i^n\)是函项符的解释。如果你高兴可以写作\(v(f_i^n(t_1,\cdots))=i(f_i^n)(v(t_1),\cdots)\).
  2. Q: \(i-\)等值是等价关系嘛?\(i-\)等值是说除了\(v(x_i)\ne v'(x_i)\)外其余处\(v\)\(v'\)相等嘛?
    A: 是(根据\(=\)具有反身性,对称性,传递性显然得到\(i-\)等值也具有)。
    不是,是除了\(x_i\)外其它变元\(x_j\)\(v\)\(v'\)相等。一般地,对于包含变元\(x_i\)的项\(t\),不能保证\(v(t)=v'(t)\).
  3. Q: 对于赋值满足公式\(\mathscr A\)的归纳定义,其中哪些地方显式出现了对项的赋值?哪些地方出现了\(i-\)等值?
    (注:赋值\(v\)满足公式\(\mathscr A\)可以记作\(I,u\models \mathscr A\),其中此处\(I,u\)决定的赋值为\(v\).
    或记作\(v(\mathscr A)=1\),但注意此处的“1”不要称为“真值”。“真值”详见下一节。)
    A:
    出现对项赋值:对于原子\(A(t_1,\cdots,t_n)\)定义“满足”时,定义为:\(v(A(t_1,\cdots))=\bar A(v(t_1),\cdots,v(t_n))\). 如果你高兴可以写作\(v(A(t_1,\cdots))=i(A)(v(t_1),\cdots)\).
    (注:因此可以说对项的赋值是对公式的赋值的基础)
    出现\(i-\)等值:对于\((\forall x_i)\mathscr A\)定义“满足”时,定义为:任何与\(v\)\(i-\)等值的\(v'\)都满足\(\mathscr A\).
  4. Q: 刚刚使用了“多种赋值”的想法考察\(\forall x_i \mathscr A\),那么如何使用“多种解释”考察?
    A: 把\(x_i\)看作常元,并依次解释成\(D_I\)中每个元素(从而\(v\)赋值时无需再对\(x_i\)赋值),看\(v\)在这一系列解释中是否都满足\(\mathscr A\).
    注:对常元解释,对变元赋值。

公式中项替换的赋值

  1. Q: 考察等式\(v(f_t(s))=g_t(v)(s)\),其中\(s\)是任一含有\(x_i\)的项,\(v\)是一个赋值,\(g_t(v)\)\(v'\)是与\(v\)为()等值且\(v'(x_i)=v(t)\)的赋值,则\(f_t\)表示的是用()替换所有出现的()。最后一句提到的替换是()(选填“项替换”“公式中项替换”“换名替换”)。
    A: \(i-\)\(t\)\(x_i\),项替换
    注:此处\(t\)未必不含有\(x_i\). 此处\(t\)包含\(x_i\)不会造成特别本质的困难,因为此处\(v'\)定义是\(v'(x_i)=v(t)\),而不是\(v'(x_i)=v'(t)\),你完全可以先计算好\(v(t)\)再指定\(v'(x_i)\).
  2. Q: 证明上述命题时,对于项长度作归纳时利用了对于不同的赋值,相同的解释而言,什么是不变的?
    A:
    \(v(u') = \bar f_i^n(v(u_1'),\cdots)\)
    \(v'(u)=\bar f_i^n(v'(u_1),\cdots)\)
    即:函项符\(f_i^n\)\(\bar f_i^n\)(解释)相同。(接下来用归纳假设,考察更短的项,即可)
    注:只要把考察函项符变成考察谓词符,就马上证明了对于原子\(\mathscr A(x_i),\mathscr A(t)\),有\(v\models \mathscr A(t)\Leftrightarrow v'\models \mathscr A(x_i)\). (其中\(t\)\(\mathscr A(x_i)\)中对\(x_i\)自由显然,因为原子。\(\mathscr A(t)\)是由\(\mathscr A(x_i)\)经过公式中项替换得到的)
  3. Q: 接上,对于由原子构成的非原子公式作证明,针对\(\sim,\to\)的证明与之前的证明有何异同?
    A: 本质上,\(\sim,\to\)和谓词、函数有类似的性质。
    对比:对于函数有
    \(v(u') = \bar f_i^n(v(u_1'),\cdots)\)
    \(v'(u)=\bar f_i^n(v'(u_1),\cdots)\)
    对于\(\to\)
    \(v(\mathscr A\to\mathscr B)=f_\to (v(\mathscr A),v(\mathscr B))\)
    \(v'(\mathscr C\to\mathscr D)=f_\to (v'(\mathscr C),v'(\mathscr D))\)
    可以看到是完全类似的。
    当然,\(\to\)的“层次”比函项符、谓词符更高。函项符和谓词符诱导的函数\(\bar f_i^n\)等只是对于不同赋值相同,而\(\to\)诱导的函数\(f_\to\)则是对于不同的解释都含义相同!
  4. Q: 接上,对于量词\(\forall\)在待考察\(\mathscr A\)最外层出现的情况,如果其对应的约束变元恰好是()则直接根据公式中项替换的定义,可作()(请概括)论证。
    A: (一行一空)\(x_i\)
    公式中项替换过程中不会替换掉这里的\(x_i\),因此\(\mathscr A(x_i)=\mathscr A(t)\),再注意与\(v\)\(i-\)等值等价于与\(v'\)\(i-\)等值。则两处考察的赋值集合和公式都相同,结果当然相同。
  5. Q: 接上,否则,对于\(\forall x_j(\mathscr B(x_i))\)\(\forall x_j(\mathscr B(t)),j\ne i\),通过反证法证明。
    我们只看一侧即反设\(v\)不满足\(\forall x_j\mathscr B(t)\),欲证\(v'\)不满足\(\forall x_j \mathscr B(x_i)\)
    先根据反设,由\(v\)依据()找到\(w\),再根据\(w\)依据归纳假设考察\(\mathscr B\)构造与\(w\)为()等值且\(w'(x_i)=\)()的\(w'\).
    这时考察\(v'\)\(w'\)关系(至多对两个变元赋值不同),根据项在公式中对变元自由的定义,\(t\)中不出现(),因此\(w'(x_i)=w(t)=\)()\(=v'(x_i)\),从而\(w'\)\(v'\)为()等值。最后只需关注到()\(=0\)即可。
    A: 与\(v\)\(j-\)等值且使得\(w(\mathscr B(t))=0\)\(i-\)\(w(t)\)\(x_j\)\(v(t)\)\(j-\)\(w'(\mathscr B(x_i))=w(\mathscr B(t))\)

量词的构造

  1. Q: 设\(\mathscr A\)中出现的所有变元有\(n\)个,我们形式上把\(\forall x_{n+1}\mathscr A\)中公式\(\mathscr A\)抽象成一个原子\(A(x_1,\cdots,x_n)\),并构造()元谓词\(A'\),含义与\(A\)相同只是多了一个名义(dummy)变元()。
    这时对\(n+1\)元谓词\(B\),用\(B\models A'\)可以定义\(\exists x_{n+1} B\models A\),用()可以定义()。
    A: \(n+1\)\(x_{n+1}\)
    \(A'\models B\)\(A\models \forall x_{n+1} B\)