弗雷格的逻辑(四)
条件 \Delta
在 \(\Delta\) 为真时为真,在 \(\Delta\) 非真时为假。因此,情况 \xi
是一个函数,其值始终为真值,或者根据我们的规定,为一个概念。(1893/1903: §5)
换句话说,如果将水平线加到真值名称“\(\Delta\)”的前缀,则得到的复合名称:
情况 \Delta
与“\(\Delta\)”所命名的真值相同。然而,如果“\(\Delta\)”没有命名真值,则“情况 \(\Delta\)”命名的是假。
这里尤其重要的是,在《基本法》的逻辑中,水平线的应用并不局限于可判断的内容:水平线可以有意义地应用于任何名称。由于弗雷格坚持所有函数都定义在所有相应类型的参数上,因此水平划线所表示的函数也必须定义在所有对象上。因此,当它应用于非真值对象时,输出结果为False。
因此,尽管弗雷格在解释上述判断划线时要求将判断划线附加到真值名称上,但我们可以在《基本法》的逻辑框架内,通过将判断划线附加到“情况\(\Delta\)”,可以实现将判断划线附加到任何名称\(\Delta\)的效果,从而得到:
判断(情况\Delta)
如果水平划线是判断划线的一部分,并且(如下所述)多个水平划线可以合并为一个水平划线,则上述判断等价于:
判断\Delta
或者,如果后者是合式的,则等价于。因此,“判断 \(2\)”(或者至少,“判断 \((\) 情况 \(2)\)”)在《基本法》的逻辑中是一个合式判断,尽管它不正确。
3.1.2 否定笔画
在《基本法》的逻辑中,否定笔画是一个附加在对象名称上的一元函数符号——用弗雷格的术语来说,它命名了一个第一层概念。与水平符号类似,否定笔画将任何专名转化为真值名称:
我们不需要特定的符号来声明真值为假,只要我们有一个符号可以将每个真值转化为其反面,这在任何情况下都是必不可少的。我现在规定:
函数
not \xi
的值对于每个函数
circumstance \xi
为真的论证,都为假;对于所有其他论证,也都为真。 (1893/1903: §6)
因此,如果将否定笔划加到真值名称“\(\Delta\)”的前缀,则如果“\(\Delta\)”指向假,则“非\(\Delta\)”指向真;如果“\(\Delta\)”指向真,则“非\(\Delta\)”指向假。然而,如果“\(\Delta\)”没有指向真值,则“非\(\Delta\)”指向真。
弗雷格将否定笔划视为全函数的做法,其结果有些奇怪。例如,如果“\(\Delta\)”是除真值以外的任何对象的名称,那么“非\(\Delta\)”则指代真,因此我们有:
判断非\Delta
弗雷格明确指出,“判断非\(2\)”是一个正确的判断 (1893/1903: §6)。
3.1.3 条件笔触
在《基本法》的逻辑中,弗雷格的条件笔触是一个附加在对象名称上的二元函数符号——用弗雷格的话来说,条件笔触指代了一个一级关系:
其次,为了能够指示概念的从属关系和其他重要关系,我引入一个带有两个自变量的函数:
条件项 \zeta 项 \xi
通过以下规范:如果真被作为 \(\zeta\) 自变量,则其值应为假,而任何非真对象均应作为 \(\xi\) 自变量;在所有其他情况下,该函数的值应为真。(1893/1903: §12)
条件笔画是一个全函数:给定任意两个专有名称“\(\Delta\)”和“\(\Gamma\)”:
条件项 \Delta 项 \Gamma
如果“\(\Delta\)”未能命名真(即,命名假或未命名真值),或者“\(\Gamma\)”命名真,则该函数为真;否则,它命名假。因此,对于任何名称“\(\Delta\)”而言:
条件项 2 项 \Delta
是真之名称,因此:
判断 条件项 2 项 \Delta
是《基本法》逻辑中的一个正确判断
弗雷格将条件句的下级成分(现代读者称之为先行词)称为条件句的子成分,将上级成分(现代读者称之为后继词)称为超成分。然而,正如我们在概念文字逻辑讨论中所指出的,条件笔画结构可以通过多种方式解析为超成分和子成分。例如,给定专名“\(\Delta\)”、“\(\Gamma\)”、“\(\Theta\)”、“\(\Lambda\)”和“\(\Xi\)”,我们可以解析以下复杂表达式:
条件 {项 \Delta} {项 条件 {项 \Gamma} {项 条件 {项 \Theta} {项 条件 项 \Lambda 项 \Xi}}}
具有以下任意一项:
条件 {项 \Gamma} {项 条件 {项 \Theta} {项 条件 项 \Lambda 项 \Xi}} 条件 {项 \Theta} {项 条件 项 \Lambda 项 \Xi} 条件 项 \Lambda 项 \Xi
或“\(\Xi\)”作为超分量(每次读取分别包含一个、两个、三个或四个子分量)。尽管弗雷格引入条件式时,将其视为一个简单的二元一级函数,从对象对到真值,但在他对条件式的运用中(尤其是在使用条件式进行推理的推理规则中),他将其更像是一种开放式n元函数名,它接受一个参数作为其上级组件,但可以接受任意(有限)个参数作为其子组件。由于弗雷格的许多推理规则都是通过添加、消除或重新定位上级组件和子组件来表述的,这种系统性的歧义性对于《基本法》中证明的构造方式有着深远的影响。
对复杂条件式构造的多子组件解读有两个值得在此提及的后果。首先,弗雷格指出,如下理解:
条件 {项 \Delta} {项 条件项 \Lambda 项 \Theta}
其中 \Delta\ 和 \Lambda\ 是两个子成分,每个子成分都扮演着与另一个完全相同的角色——子成分的“顺序”无关紧要 (1893/1903: §12)。因此,此表达式的真值与以下表达式相同:
条件式 {项 \Lambda} {项 条件式 \Delta 项 \Theta}
弗雷格引入了一条推理规则(该规则可以在推导过程中应用,无需注释),允许对子成分进行任意重新排序。这条规则相当于《基本法》中“概念文字”逻辑公理3的类似物。
类似地:
条件式 {项 \Delta} {项 条件式 \Delta 项 \Theta}
的真值与以下表达式相同:
条件式 \Delta 项 \Theta
弗雷格引入了一条推理规则,该规则允许从第一个公式推导出第二个公式,并且通常允许相同子成分的“融合”(同样,该规则也可以在推导过程中应用,无需注释)。弗雷格进一步指出,这些推理规则可以推广到具有任意数量子成分的条件笔画结构。
3.1.4 判断笔划的等价关系
既然我们已经考虑了我们可能自然而然地(尽管正如我们已经指出的,这相当不合时宜)认为是《基本法》逻辑的命题片段的内容,我们需要回到水平笔划。弗雷格认为,否定笔画、条件笔画和判断笔画可以理解为仅由其形式化中涉及的实际垂直“笔画”或线条组成,而其符号中附加的水平部分则被理解为水平线的单独出现(参见(1893/1903:§5、§6 和 §12)。因此,对于任何名称“\(\Delta\)”,以下所有:
非 \(\Delta\)、
非(情况 \(\Delta\))、
情况(非 \(\Delta\))和
情况(非(情况 \(\Delta\)))
都具有相同的真值(1893/1903:§6),并且,对于任何名称“\(\Delta\)”和“\(\Gamma\)”,全部:
条件 \Delta 项 \Gamma
(a)
情况 (条件 项 \Delta 项 \Gamma)
(b)
条件 项 (情况 \Delta) 项 \Gamma
(c)
条件 {项 \Delta} {项 (情况 \Gamma)}
(d)
条件 {项 (情况 \Delta )} {项 (情况 \Gamma)}
(e)
情况 (条件 {项 \Delta} {项 (情况 \Gamma)})
(f)
情况 (条件 {项 (情况 \Delta)} {项 \Gamma})
(g)
情况 (条件 {项 (情况 \Delta)} {(情况Gamma)})
(h)
命名相同的真值 (1893/1903: §12)。弗雷格将这些等价关系以及用另一个等价公式替换上述表达式所产生的变换称为水平融合。与子成分的置换和相同子成分的融合一样,弗雷格允许在《基本法》推导 (1893/1903: §48) 中融合(和“取消融合”)水平,而无需任何注释。
细心的读者可能会想知道,弗雷格为何选择他实际上选择的特定函数。难道他不能这样定义否定,使得如果“\(\Delta\)”不是真值的名称,那么“not \(\Delta\)”就命名了真吗?现在我们可以回答这个问题了:否定笔画和条件笔画必须与水平笔画融合,这一事实意味着,鉴于弗雷格对水平笔画的定义方式,他提供的否定笔画和条件笔画的具体定义是唯一可能的(Berg & Cook 2017)。
3.1.5 等号
现在,我们来看看概念文字逻辑和基本法逻辑之间的另一个显著区别。既然他引入了意义/指称的区别,弗雷格可以用意义的差异来解释“\(a = a\)”和“\(a = b\)”(两者均为真)之间内容上的差异。因此,在《基本法》的逻辑中,弗雷格的等号定义正如人们所料:
我们已经相当随意地使用等号来举例,但有必要对其进行更精确的定义。
如果\(\Gamma\)与\(\Delta\)相同,则\[\text{‘}\Gamma = \Delta\text{’}\]
表示真;在所有其他情况下,表示假。(1893/1903: §7)
请注意,他已经改用传统的恒等符号“\(=\)”,而不是他在《概念文字》中为表示概念内容相同性而引入的特殊符号“\(\equiv\)”。 Kremer (2010) 很好地概述了弗雷格的涵义/指称区分的发展,并特别关注了这种区分在《基本法》后期逻辑中的作用。
虽然等号的定义现在很简单,但弗雷格对它的使用方式与现代谓词逻辑中等号的使用方式略有不同。弗雷格在进行诸如“\(2 + 2 = 4\)”之类的日常等式断言时使用等号,但他也使用等号两侧加上真值名称来表达真值名称是相同真值的名称这一断言——也就是说,所讨论的表达式是等价的。这解释了弗雷格在讨论已定义命题算子时的一个明显疏忽。弗雷格在《基本法》中没有明确给出实质双条件的定义,尽管他可以很容易地按照标准思路将实质双条件句定义为两个条件句的合取:
非条件句 {项 条件句 项 \Delta 项 \Gamma} {非项 条件句 项 \Gamma 项 \Delta}
如果“\(\Delta\)”和“\(\Gamma\)”都是真值名,那么这个定义的概念和弗雷格原始等号所命名的函数输出相同的值。然而,如果“\(\Delta\)”和“\(\Gamma\)”中的一个或两个是专名而非真值名,那么应用于这些论证的复杂实质条件句的值可以与应用于它们的等号的值不同。例如:
非条件句 {项 条件句 项1 项2} {非项 条件句 项2 项1}
是真值名,而“1 = 2”是假值名。
弗雷格指出,恒等符号与水平线相结合,使我们能够构造一个函数,将真值映射到真,并将所有其他对象映射到假 (1893/1903: §5):
\xi = 情况 \xi
这个真值概念帮助我们理清了一个技术问题,该问题与概念文字逻辑和基本法逻辑之间的一个深层差异有关。
回想一下,弗雷格在《概念文字》的前言中指出,他本可以添加:
判断(not not a equiv a)
到逻辑中,而这条原则可以简化表述,因为它同时蕴含了公理5和公理6。我们还注意到,这个断言对于概念文字逻辑来说是正确的,因为所讨论的量词仅限于可判断的内容。然而,在《基本法》的逻辑中,情况就不同了,因为根据《基本法》的解释,同样的公式(如果从纯粹句法的角度来理解“相同性”),将“\(\equiv\)”替换为“\(=\)”的条件为假。设“\(\Delta\)”为任何非真值对象的名称。则“非\(\Delta\)”是真值的名称,因此“非非\(\Delta\)”是假值的名称,而“\(\Delta\)”和“非非\(\Delta\)”指的不是同一个对象。因此,“非非\(\Delta= \Delta\)”是假值的名称。
我们可以利用刚才讨论的真值概念,在《基本法》逻辑中构建一个正确的判断,该判断能够体现弗雷格考虑添加到《概念文字》中的原则的直观含义:
判断 条件 {项 (a = 情况 a)} {项 (a = 非非 a)}
简而言之,如果“\(\Delta\)”命名了一个真值,那么“\(\Delta\)”和“\(\Delta\)”的双重否定命名的是同一个对象。
3.1.6 两种全称量化形式
接下来是量词。在《基本法》逻辑中,与(严格来说)《概念文字》逻辑不同,弗雷格运用了两种不同的全称量化形式。其中第一种是最简单的:凹性。凹性(及其对应的德文字母)是一个一元二级概念,将一级函数映射到真值:
[…] 设:
所有 gothic a 项 \Phi(gothic a)
如果函数 \Phi(\xi)\) 的值对于所有自变量都为真,则表示真,否则表示假。(Frege 1893/1903:§8)
弗雷格没有限制“\Phi(\xi)\)”必须是概念的名称,因此“判断 all gothic a \(\mathfrak{a} + 1\)”在《基本法》的逻辑中是一个合式判断,尽管它不正确。事实上,他不可能连贯地施加任何这样的限制。因为所有一级函数都必须以与所有对象定义一级函数完全相同的方式定义二级函数。
在《基本法》的逻辑中,凹性与否定笔划和条件笔划一样,与水平线“融合”。换句话说,以下所有名称都具有相同的真值(即等价):
所有哥特式 a 项 \Phi(gothic a),
情况(所有哥特式 a 项 \Phi(gothic a)),
所有哥特式 a 项(情况 \Phi(gothic a)),以及
情况(所有哥特式 a 项(情况 \Phi(gothic a)))
并且弗雷格也允许在推导过程中对与凹性相关的水平线进行融合或非融合,而无需进行任何注释 (1893/1903: §8)。
弗雷格通过凹度明确地引入了二阶量化的符号,使用了现在熟悉的方法:识别此类量词命名的函数(在本例中为第三级)。如果“\(\mathcal{F}_\beta\)”是二级函数名(且下标出现的“\(\beta\)”绑定了“\(\mathcal{F}_\beta\)”所应用的参数中出现的“\(\beta\)”的对象级出现),则:
所有哥特式 f 项 \mathcal{F}_\beta(gothic f (\beta))
都定义了以下断言的真值:对于每个一级函数 \(\Phi(\xi)\),将以“\(\mathcal{F}_\beta\)”命名的函数应用于 \(\Phi(\xi)\) 的结果为真 (1893/1903: §24)。因此,与概念文字的逻辑不同,基本法的逻辑涉及一阶和二阶量化的不同量词,而不是仅仅引入一个量词,该量词有时根据上下文涵盖函数,有时涵盖这些函数的参数。弗雷格没有引入三阶或更高阶凹量化的符号,因为从实践角度来看,他根本不需要它:相反,他使用值域运算符来“降低”《基本法》(如下所述)中各种构造的级别,使它们处于他的一阶和二阶凹量化的范围内。
最后,我们有定义笔划。与在《概念文字》中一样,弗雷格使用定义笔划“定义符号”来指示一个句子何时是定义:
为了通过已知符号引入新符号,我们现在需要双划定义,它表现为双划判断笔划与水平线的组合:
定义符号
在需要定义而非判断某物时,使用它来代替判断笔划。通过定义,我们通过确定新名称与由已知符号组成的名称具有相同的含义和指称来引入新名称。新符号因此与解释符号共指;这样,定义就立即变成了命题。因此,我们可以像引用命题一样引用定义,只需用判断“stroke”代替定义“stroke”。(1893/1903: §27)
对定义“stroke”的这种解释与《概念文字》中的解释几乎没有区别,但值得注意的是,《基本法》定义所蕴含的相等性判断仅断言“\(a\)”和“\(b\)”具有相同的指称对象,而不是它们具有相同的含义。因此,弗雷格明确规定,《基本法》定义的定义项和被定义项具有相同的含义。
3.2 《基本法》的新运算符
3.2.1 通用性工具:罗马字母
3.2.1.1 罗马字母基础
我们将从《基本法》中表达普遍性的第二种方式——罗马字母的普遍性手法——来讨论那些在《概念文字》逻辑中未曾出现的新概念。乍一看,这或许令人惊讶,因为正如上文所述,罗马字母在《概念文字》中曾被用作表达普遍性的手法。但在《概念文字》中,它们(至少在官方意义上)仅仅是最初出现在该公式中的凹面实例的缩写。然而,在《基本法》逻辑中,罗马字母是一种全新的、独立的普遍性手法。
先将注意力集中到最简单的情况,即小写罗马字母“\(x\)”表示(用弗雷格的术语来说)一个对象,而“\(\Phi(\xi)\)”是任意一级函数名: