1 命题逻辑:语义

1.1 命题和连接符

  1. Q: 数学语言,如“\(x_0\)是集合\(X\)的最大元”是符号语言嘛?如何把它转化为符号语言?
    A: 不是。数学语言是自然语言+记号。\(x_0\in X,\forall x\in X,x\le x_0\). 注意\(x_0\in X\)不能遗漏!
  2. Q: 逻辑矛盾和悖论有何联系?悖论常常如何产生矛盾?
    A: 逻辑矛盾是同时断言一个陈述和它的否定。悖论是一种逻辑矛盾的形式(导致自相矛盾的陈述的一种)。
    实际上,悖论常常是自指语句,引起自相矛盾。当然也可以:“循环”地“指一圈”,导致自相矛盾。
    注:悖论不是命题。并且,存在既不是悖论也不是命题的陈述句(即不是悖论,但并不具有真假意义)。
  3. Q: 用多项式及其在某点的值类比,直观阐述简单命题、复合命题、命题变元、命题形式的关系。
    A: 简单命题相当于一个数字,如0. 复合命题相当于已知数组成的表达式,如\(1+1\). 命题变元相当于未知数,如\(x\). 命题形式相当于含未知数代数式,如\(1+x+y\).
    复合命题的真值依赖于其中简单命题(原子)的真值及连接符。

1.2 真值函数和真值表

  1. Q: \((p\vee q)\vee r\)对应的布尔函数(真值函数)定义域和值域分别是什么?将它表示成真值表为几行几列?一共有多少个与它相同定义域和值域的真值函数?
    A: \(f:\{1,0\}^3\to\{1,0\}\).
    (如果表头4列分别为\(p,q,r,(p\vee q)\vee r\),不计表头所占的1行,则)4列,8行。
    \(2^{2^3}\)个。(当然,我们认为当定义域、值域和对应法则均相同的函数是相同的,而不重复计数。即使其对应命题形式可能不同
  2. Q: “如果\(1=2\)\(-1=-2\)”是真命题吗?
    A: (按数字和符号通常的意义理解)是真命题。因为\(1=2\)为假命题,故用\(\to\)连接它和任何命题都得到真命题。(这是“空虚(vacuous)的真”)
  3. Q: 如何理解“命题形式可嵌套,可潜在无限长;给定一个命题形式,则为有限长”?
    A: 嵌套:命题形式由归纳(递归)定义,即首先任一变元是命题形式,其次变元间各种(一元或二元)运算也得到命题形式。
    “潜在”意为任给一个命题形式,都存在“比它更长”的,此过程可以“无限进行”下去。但是每一个确定的命题形式都是有限长的。
    注:线性代数中无限维线性空间中“线性表出”的定义也是如此。确定的某一种线性表出方式一定只含有限个向量。但并不存在一个整数是所有表出方式中向量个数的上界。
  4. Q: 如何理解“技术性符号如( ) ...都不是必要的”?请解释:没有省略号,怎么表示\(p_1\wedge p_2\wedge\cdots \wedge p_n\)呢?
    A: 比如中缀表达式转化为前缀表达式(\(p\vee q\vee r\)转化为\(\vee\vee pqr\))则无需括号。用省略号表达命题形式只是为了表达方便,完全可以不需要。
    “没有省略号,怎么表示\(p_1\wedge p_2\wedge\cdots \wedge p_n\)”这个疑问并不清晰合理。实际上,当\(n\)为任意确定正整数时,显然可以去除省略号。而泛泛地说“\(p_1\wedge p_2\wedge\cdots \wedge p_n\)”而不确定\(n\)并不是一个命题形式(不符合命题形式的定义)。
  5. Q: “判定一个命题形式是否可满足/重言式/矛盾式的方法就是构造其真值表”是否说明SAT问题有通用解法?是否说明了解决了\(P=^?NP\)问题?为什么?
    A: 构建真值表需要指数复杂度,是一个平凡的通用解法。这样的“解决”并没有带来任何新的意义。
    注:SAT问题指判定一个命题形式是否可满足。如果找到了多项式复杂度的解决方法才相当于解决了\(P=^?NP\)问题。
  6. Q: 逻辑等价和运算符\(\leftrightarrow\)有何联系和区别?
    A: 联系:若\(\mathscr A\leftrightarrow\mathscr B\)是重言式,称\(\mathscr A \equiv \mathscr B\). 然而要注意逻辑等价\(\equiv\)针对的是命题形式,而\(\leftrightarrow\)可以连接命题(复合命题或简单命题)或者命题形式。
    更具体地说:你可以下结论:\(\mathscr A\equiv \mathscr B\),也可以下结论:\(\mathscr A\leftrightarrow \mathscr B\)是重言式。但是,\(\mathscr A\leftrightarrow \mathscr B\)本身只是一个命题形式,并不是“结论”,与\(\mathscr A\equiv \mathscr B\)含义不同。
    注:中文术语:若……则……、当且仅当:针对命题;逻辑隐含、逻辑等价:针对命题形式。
  7. Q: 简述具体怎么构造\(\sim (p\wedge q)\leftrightarrow((\sim p)\vee (\sim q))\)的真值表。
    A: 在这里插入图片描述
    例如可以如此进行,先写黑色,再写红色……总之简单命题最先写,接着运算顺序先的先写。

1.3 操作和替换规则

  1. Q: 设\(\mathscr A,\mathscr A\to \mathscr B\)都是重言式,那么\(\mathscr B\)()。试用反证法证明该命题。如果不用反证法,可以如何证明?该命题证明和“当\(\mathscr A\)为重言式时,\(\mathscr A_{p_1,p_2,p_3/\mathscr A_1,\mathscr A_2,\mathscr A_3}\)也为重言式”有何异同?
    A: 也是重言式。反证:如果存在指派使得\(\mathscr A\)真,\(\mathscr B\)假,那么\(\mathscr A\to \mathscr B\)依定义不是重言式。
    如果不反证,可以采用“分类讨论”,即每一个指派都使得\((\mathscr A,\mathscr B)\)取值组合是\(\{0,1\}^2\)的一者。讨论总共4种情况即可。
    注:“反证法”和“分类讨论”当然都需要排中律。
    异同:两者都可以用“反证法”“分类讨论”等证明。如果硬要说不同点,可能是后者涉及3个命题形式的连接,这里3可以扩展成任意确定的正整数\(n\).
  2. Q: 列真值表说明\(p\vee q\)\(q\vee p\)在一切\(p,q\)指派下,取值都相同(\(p,q\)都是命题变元)。此事实和两命题形式的交换律有什么区别和联系?
    A: 真值表略。该事实表示这两个命题形式的连接\(p\vee q\leftrightarrow q\vee p\)是重言式,可以称为“针对命题变元\(p,q\)的关于\(\vee\)的交换律”,但不是一般的“命题形式的交换律”。
    实际上,把\(p,q\)替换成任意命题形式\(\mathscr A,\mathscr B\)后,新命题形式也是重言式。所以对于任意\(\mathscr A,\mathscr B\),都有\(\mathscr A\vee \mathscr B\leftrightarrow \mathscr A\vee \mathscr B\)是重言式,也就是两命题形式的关于\(\vee\)的交换律:\(\mathscr A\vee \mathscr B\equiv \mathscr A\vee \mathscr B\).
  3. Q: 设火星人用\(C\)表示\(\sim\),用\(A,B\)分别表示\(0,1\)中一者且两者意义不同,用\(D,E\)分别表示\(\wedge,\vee\)中一者且两者意义不同,\(F_A,F_B\)分别意指“取值为\(A\)”和“取值为\(B\)”。
    那么你有可能从火星人写出的句子\(ADCBECAF_A\)中看出各个字母的含义嘛?你有可能命令火星人写出更多这样的句子来看出字母含义嘛?为什么?给出证明。
    A: 不可能。因为所有0和1互换,\(\wedge\)\(\vee\)互换后,整个复合命题真值也一定改变(真一定变为假,假一定变为真;\(F_A\)一定变为\(F_B\)\(F_B\)一定变为\(F_A\))。
    证明是使用数学归纳法,不断增加复合命题的长度。
    注:如果火星人有“异或”运算符,我们就可以推断出字母含义了。
  4. Q: 举自然语言中的例子说明:无矛盾律、排中律、双重否定律、重言律。
    A: 提示:“重言”的字面意思就是“说两遍”。
  5. Q: 举数学证明中的例子说明:赎出律、换位律。
    A: 举例:如果已知\(f\)是复平面上解析函数,那么只要再加入条件“\(f\)有界”,就得到了\(f\)是常数。实际上,“赎出律”的思维方式非常普遍,一般来说是有一个比较容易满足的“弱”的题设,和另一个较“强”的题设。“弱”的题设非常容易验证或是常常已知。比如复变函数题目常常给“解析”条件。
    “换位律”在数学证明中就对应反证法。
  6. Q: 合取、析取的交换律、结合律、分配律和四则运算的这些运算定律有何不同?
    A: 例如:合取和析取地位是对等的,故有2条分配律。

1.4 范式

  1. Q: 真值函数和析取范式(DNF)有何联系?如何写出合取范式?
    A: 只要真值函数不恒为0,就可以根据真值函数取值为1的那些指派,写出若干个基本合取式,再做析取得到析取范式。
    根据使得真值函数取值为0的那些指派,可以写出合取范式。也可以通过\(\sim \mathscr A\)的析取范式写出\(\mathscr A\)的合取范式。(把\(\sim\mathscr A\)中所有命题变元都取否定,同时交换所有\(\wedge,\vee\)即可)

1.5 连接符的完备集

  1. Q: 合取范式能说明什么集合是连接符的完备集?
    A: \(\{\sim, \wedge,\vee\}\)
  2. Q: 为什么说\(\{\sim,\wedge,\vee,\to,\leftrightarrow\}\)的任意完备子集必须含有\(\sim\)
    A: 最简单的证明方法:考虑\(\mathscr A \wedge \mathscr A,1\wedge \mathscr A,\mathscr A \wedge 1,1 \wedge 1,\mathscr A \vee\mathscr A\cdots\),4个连接符,共16个命题形式。发现所有结果都是\(1\)或者\(\mathscr A\).
    根据数学归纳法,这说明命题变元\(p\)通过\(\{\wedge,\vee,\to,\leftrightarrow\}\)无论如何连接只能得到\(p\)\(1\),则说明\(\{\wedge,\vee,\to,\leftrightarrow\}\)不完备。
  3. Q: 接上,如果运算符连接的命题形式除了\(\mathscr A\),还允许有\(0,1\),那么有可能仅通过\(\{\wedge,\vee,\to,\leftrightarrow\}\)连接得到\(\sim \mathscr A\)吗?为什么?
    A: 可能,例如\(\mathscr A\leftrightarrow 0\equiv \sim \mathscr A\). 但这不能说明“完备”。
  4. Q: 如何证明“与非”连接符的单元素集构成一个完备集?
    A: 提示:\(\mathscr A|\mathscr A\equiv \sim\mathscr A, (\mathscr A | \mathscr A) |( \mathscr B | \mathscr B)\equiv\mathscr A \vee \mathscr B\)
  5. Q: 异或连接符为什么用\(\oplus\)表示?(它和加法有何关系?)
    A: 在模2意义下相加。
  6. Q: 对每个不同的二元真值函数,各自定义一个连接符,则总共有()种连接符。请直接说出其中我们已经定义的7种。请问其中有多少种这样的连接符构成单元素的完备集?
    A: \(2^{2^2}=16\)\(\wedge,\vee,\to,\leftrightarrow,\downarrow,|,\oplus\)
    完备集只有\(\{|\},\{\downarrow\}\). 因为根据1.的方法,可以说明单元素完备集对应的真值函数\(f\)一定有\(f(0,0)=1,f(1,1)=0\). 再讨论:如果像\(f(p,q)\equiv \sim q\)这样“只和一边有关”,则显然也是不可的。

1.6 推理及有效性

  1. Q: 如果认为推理规则和推理过程正确无误,那么否定演绎推理的结果就相当于否定了什么的正确性?
    A: 基本前提(公理)。
  2. Q: 依据推理形式的原始定义,如何表示一个命题形式作为前提推出多个命题形式作为结论?
    A: 第一行写前提(一个命题形式),第二行以\(\therefore\)开头,写出多个命题形式以合取连接的命题形式即可。
  3. Q: 说明一个推理形式无效,可以考察一些使得结论为假的指派(一般来说是所有使得结论为假的指派的一个真子集),再()。也可以反过来,()。
    A: 考察题设是否可能为真。先考察一些题设为真的指派再考察结论是否可能为假。
    注:在数学考试中举反例常常需要这样。
  4. Q: 尝试用连接符的实际意义、命题形式的定律等,记忆常见的有效推理形式。
    A: \(\to\)的实际意义可用于记忆分离规则(三段论)\(\mathscr A,\mathscr A\to\mathscr B;\therefore \mathscr B\)和假言三段论\(\mathscr A\to\mathscr B,\mathscr B\to\mathscr C;\therefore\mathscr A\to\mathscr C\)。结合换位律记忆逆分离规则。
    析取的实际意义可用于记忆析取三段论。
    无矛盾律和排中律可用于记忆归谬法。
    合取和析取的实际意义可用于记忆引入规则和消去规则。
    (言之成理即可)
  5. Q: 有效的推理形式和重言式有何联系?
    A: 推理形式有效当且仅当\(\wedge_{i=1}^n\mathscr A_i\to \mathscr A\)是重言式。
  6. Q: \(\to\),逻辑隐含,推理形式,蕴涵有何异同?
    A: \(\to\)连接命题形式得到命题形式,若连接得到重言式则称左侧逻辑隐含右侧。
    \(\Gamma=\{\mathscr A_1,\cdots,\mathscr A_n\}\),或相当于\(\Gamma = \wedge_{i=1}^n \mathscr A_i\),则\(\Gamma\models\mathscr A\)等价于\(\mathscr A_1,\cdots,\mathscr A_n;\therefore \mathscr A\)是有效的推理形式。
    注:\(\Gamma \models \mathscr A\)就是对所有\(v\models\Gamma\)都有\(v\models\mathscr A\). \(\models\)符号有两种含义!
    \(\to\)和逻辑隐含考虑两个命题形式的关系(用一阶逻辑的语言说:一个是“函项符”一个是“谓词符”)。
    而推理形式和蕴涵都考虑一个命题形式集合和另一个命题形式的关系(都是“谓词符”)。
    当然可以把命题形式的(有限)集合用\(\wedge\)连接得到命题形式。

勘误集

ml-1_1.pdf

  • p6 底下一行字不够显示。
  • p24 最后一句:“符合”改为“符号”