查看“︁相继式演算”︁的源代码
←
相继式演算
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
在[[证明论]]和[[数理逻辑]]中,'''相继式演算'''(又译矢列演算、矢列式演算、序贯演算)是[[一阶逻辑]](和作为它的特殊情况的[[命题逻辑]])、[[模态逻辑]]等逻辑的一类{{tsl|en|Proof_calculus|证明演算}}。第一个相继式演算<math>LK</math>和<math>LJ</math>由格哈德·根岑([[Gerhard Gentzen]])在1934年/1935年引入<ref name=gentzen19341935>{{harvnb|Gentzen|1934}}, {{harvnb|Gentzen|1935}}.</ref>,作为研究[[自然演绎]]的工具;它的名字得来自德语的“Logischer Kalkül”,意思是“逻辑演算”。相继式演算系统有时被称为'''Gentzen系统'''<ref>{{harvnb|Curry|1977|pp=189–244}}, calls Gentzen systems LC systems. Curry's emphasis is more on theory than on practical logic proofs.</ref><ref>{{harvnb|Kleene|2009|pp=440–516}}. This book is much more concerned with the theoretical, metamathematical implications of Gentzen-style sequent calculus than applications to practical logic proofs.</ref><ref>{{harvnb|Kleene|2002|pp=283–312, 331–361}}, defines Gentzen systems and proves various theorems within these systems, including Gödel's completeness theorem and Gentzen's theorem.</ref><ref>{{harvnb|Smullyan|1995|pp=101–127}}</ref>,但使用时应避免与同为Gentzen发明的证明演算[[自然演绎]]混淆。自然演绎、[[公理系统]]和相继式演算是常见的证明演算。 相继式演算是逻辑研究的重要工具。许多逻辑学者会为其所研究的逻辑构造出一个或多个相继式演算,并研究其性质(如[[切消定理]])<ref>{{harvnb|Curry|1977|pp=208–213}}, gives a 5-page proof of the elimination theorem. See also pages 188, 250.</ref><ref name=kleene_cut_elimination>{{harvnb|Kleene|2009|pp=453}}, gives a very brief proof of the cut-elimination theorem.</ref>。 ==介绍== 分类不同风格的演绎系统的一种方式是查看在系统中“判断”的形式,就是说,什么事物可以作为(子)证明的结论出现。最简单的判断形式是用在[[希尔伯特演绎系统]]中的,这里的判断有形式 :<math>B</math> 这个<math>B</math>是[[一阶逻辑]]的任何公式(或演绎系统适用的任何逻辑,比如[[命题演算]]或[[高阶逻辑]]或[[模态逻辑]])。定理出现为有效证明中结论判断。希尔伯特演绎系统不需要区分公式和判断;提及它只是为了和下面的情况做比较。 希尔伯特演绎系统的简单语法付出的代价是完整的形式证明变得非常长。在这种系统中的关于证明的具体论证总是求助于[[演绎定理]]。这导致了把演绎定理包括为系统中的形式规则的想法,这激发出了[[自然演绎]]。在自然演绎中,判断有形式 :<math>A_1, A_2, \ldots, A_n \vdash B</math> 这里的<math>A_i</math>和<math>B</math>是公式并且<math>n\geq 0</math>。用语言表述,判断组成自[[十字转门]]符号“<math>\vdash</math>”左手端的公式(可能为空)列表与右手端的一个单一公式<ref>{{harvnb|Curry|1977|pp=184–244}}, compares natural deduction systems, denoted LA, and Gentzen systems, denoted LC. Curry's emphasis is more theoretical than practical.</ref><ref>{{harvnb|Suppes|1999|pp=25–150}}, is an introductory presentation of practical natural deduction of this kind. This became the basis of [[System L]].</ref><ref>{{harvnb|Lemmon|1965}} is an elementary introduction to practical natural deduction based on the convenient abbreviated proof layout style [[System L]] based on {{harvnb|Suppes|1999|pp=25–150}}.</ref>。定理是那些公式<math>B</math>使得<math>\vdash B</math>(带有空左手端)是一个有效证明的结论。(在某些自然演绎的介绍中,<math>A_i</math>和十字转门是不明显写出来的,转而使用二维表示法)。 在自然演绎中判断的标准语义是断言只要<ref>这里的“只要”是如下的非正式略写“对值到判断中的自由变量的所有指派”。</ref> <math>A_1</math>, <math>A_2</math>等都是真的,<math>B</math>就也是真的。判断 : <math>A_1, \ldots, A_n \vdash B \quad</math>与<math>\quad \vdash(A_1 \land \cdots \land A_n) \rightarrow B</math> 是在任何一个的证明都可以扩展为另一个的证明的强烈意义上等价的。 最后,“相继式演算”推广了自然演绎的形式为 : <math>A_1, \ldots, A_n \vdash B_1, \ldots, B_k</math>, 这个语法对象叫做'''[[相继式]]'''<ref name="pvs-prover">{{cite web |url=http://pvs.csl.sri.com/doc/pvs-prover-guide.pdf |title=PVS Prover Guide |last1=Shankar |first1=Natarajan |author-link=Natarajan Shankar |last2=Owre |first2=Sam |last3=Rushby |first3=John M. |author-link3=John Rushby |last4=Stringer-Calvert |first4=David W. J. |work=User guide |publisher=[[SRI International]] |date=2001-11-01 |access-date=2015-05-29 |archive-date=2022-03-27 |archive-url=https://web.archive.org/web/20220327200740/https://pvs.csl.sri.com/doc/pvs-prover-guide.pdf }}</ref>。再次<math>A_i</math>和<math>B_i</math>是公式,而<math>n</math>和<math>k</math>是非负整数,就是说左手端或右手端都可以为空或不空。如同自然演绎,定理是那些<math>B</math>这里的<math>\vdash B</math>是有效证明的结论。 相继式的标准语义是断言只要<math>A_i</math>都是真的,“至少一个”<math>B_i</math>也是真的<ref>For explanations of the disjunctive semantics for the right side of sequents, see {{harvnb|Curry|1977|pp=189–190}}, {{harvnb|Kleene|2002|pp=290, 297}}, {{harvnb|Kleene|2009|p=441}}, {{harvnb|Hilbert|Bernays|1970|p=385}}, {{harvnb|Smullyan|1995|pp=104–105}} and {{harvnb|Gentzen|1934|p=180}}.</ref>。表达这个的一种方式是在十字转门左侧的逗号要被认为是“合取”,而在十字转门右侧的逗号要被认为是(包容性的)“析取”。相继式 : <math>A_1, \ldots, A_n \vdash B_1, \ldots, B_k \quad</math>与<math>\quad \vdash(A_1 \land\cdots\land A_n)\rightarrow(B_1 \lor\cdots\lor B_k)</math> 是在任何一个的证明都可以扩展为另一个的证明的强烈意义上等价的。 在第一印象上,这种判断的扩展可能带来奇怪的复杂性—它不是由于自然演绎的有明显缺陷而激发来的,人们最初被逗号在十字转门的两侧完全意味着不同的事物搞糊涂了。但是观察到相继式的语义还可以(通过命题[[重言式]])被表达为 : <math>\neg A_1 \lor \neg A_2 \lor \cdots \neg A_n \lor B_1 \lor B_2 \lor\cdots\lor B_k</math> 在这种公式中,在十字转门两侧的公式间的唯一不同是在左侧的公式被否定了。因为对换相继式左右侧的公式对应于否定所有构成公式。这意味着对称性,如逻辑否定的[[德·摩根定律]]在语义层次上所显现的,直接转换到了相继式的左右对称—实际上,在相继式中处理合取(<math>\land</math>)、的推理规则处理析取(<math>\lor</math>)的推理规则的镜像。 很多逻辑学家觉得这种对应的对称表述允许提供比其他证明系统在逻辑结构上的深刻洞察,这里的否定的对偶性不出现在规则中。 ==LK系统== 在这个演算中的(形式)证明是一序列的[[相继式]],这个的每个相继式使用下面的[[推理规则]]之一而推导自更早出现的相继式。 ===推理规则=== 将要使用下列符号: * <math>A</math>和<math>B</math>指示一阶谓词逻辑的公式(你也可以把它限制为命题逻辑), * <math>\Gamma</math>、<math>\Delta</math>、<math>\Sigma</math>和<math>\Pi</math>是有限的(可能为空)公式序列,也叫做上下文, * <math>t</math>指示一个任意的项, * <math>A[t]</math>指示一个公式<math>A</math>,在其中项<math>t</math>的某个出现是我们感兴趣的 * <math>A[s/t]</math>指示把在<math>A[s]</math>中的<math>s</math>的指定出现代换为项<math>t</math>, * <math>x</math>和<math>y</math>指示变量, * 一个变量被称为在一个公式中''自由''出现,如果它只出现于不在量词<math>\forall</math>或<math>\exist</math>作用域内的公式中, * <math>WL</math>和<math>WR</math>表示'''弱化左/右''',<math>CL</math>和<math>CR</math>表示'''紧缩左/右''',而<math>PL</math>和<math>PR</math>表示'''排列左/右'''。 {| border="0" cellpadding="5" |----- | '''公理''':|| '''切''': |----- | style="text-align: center;" | <math> \cfrac{\qquad }{ A \vdash A} \quad (I) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, \Delta \qquad \Sigma, A \vdash \Pi} {\Gamma, \Sigma \vdash \Delta, \Pi} \quad(\mathit{Cut}) </math> |} {| border="0" cellpadding="5" |----- | '''左逻辑规则''':|| '''右逻辑规则''': |----- | style="text-align: center;" | <math> \cfrac{\Gamma, A \vdash \Delta} {\Gamma, A \land B \vdash \Delta} \quad({\land}L_1)</math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, \Delta}{\Gamma \vdash A \lor B, \Delta} \quad({\lor}R_1) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma, B \vdash \Delta}{\Gamma, A \land B \vdash \Delta} \quad({\land}L_2) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash B, \Delta}{\Gamma \vdash A \lor B, \Delta} \quad({\lor}R_2) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma, A \vdash \Delta \qquad \Sigma, B \vdash \Pi}{\Gamma, \Sigma, A \lor B \vdash \Delta, \Pi} \quad({\lor}L) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, \Delta \qquad \Sigma \vdash B, \Pi}{\Gamma, \Sigma \vdash A \land B, \Delta, \Pi} \quad({\land}R) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, \Delta}{\Gamma, \lnot A \vdash \Delta} \quad({\lnot}L) </math> | style="text-align: center;" | <math> \cfrac{\Gamma, A \vdash \Delta}{\Gamma \vdash \lnot A, \Delta} \quad({\lnot}R) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, \Delta \qquad \Sigma, B \vdash \Pi}{\Gamma, \Sigma, A\rightarrow B \vdash \Delta, \Pi} \quad({\rightarrow }L) </math> | style="text-align: center;" | <math> \cfrac{\Gamma, A \vdash B, \Delta}{\Gamma \vdash A \rightarrow B, \Delta} \quad({\rightarrow}R) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma, A[t] \vdash \Delta}{\Gamma, \forall x A[x/t] \vdash \Delta} \quad({\forall}L) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A[t], \Delta}{\Gamma \vdash \exist x A[x/t], \Delta} \quad({\exist}R) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma, A[y] \vdash \Delta}{\Gamma, \exist x A[x/y] \vdash \Delta} \quad({\exist}L) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A[y], \Delta}{\Gamma \vdash \forall x A[x/y], \Delta} \quad({\forall}R) </math> |} 限制:在规则<math>(\forall R)</math>和<math>(\exists L)</math>中,变量<math>y</math>一定不能在<math>\Gamma, A[x/y]</math>或<math>\Delta</math>中自由出现。 {| border="0" cellpadding="5" |----- | '''左结构规则''':|| '''右结构规则''': |----- | style="text-align: center;" | <math> \cfrac{\Gamma \vdash \Delta}{\Gamma, A \vdash \Delta} \quad(\mathit{WL}) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash \Delta}{\Gamma \vdash A, \Delta} \quad(\mathit{WR}) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma, A, A \vdash \Delta}{\Gamma, A \vdash \Delta} \quad(\mathit{CL}) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash A, A, \Delta}{\Gamma \vdash A, \Delta} \quad(\mathit{CR}) </math> |----- | style="text-align: center;" | <math> \cfrac{\Gamma_1, A, B, \Gamma_2 \vdash \Delta}{\Gamma_1, B, A, \Gamma_2 \vdash \Delta} \quad(\mathit{PL}) </math> | style="text-align: center;" | <math> \cfrac{\Gamma \vdash \Delta_1, A, B, \Delta_2}{\Gamma \vdash \Delta_1, B, A, \Delta_2} \quad(\mathit{PR}) </math> |} ===直觉解释=== 上面的规则可以被分成两个主要群组:'''逻辑规则'''和'''结构规则'''。每个逻辑规则都在十字转门<math>\vdash</math>的左边或右边介入一个新的逻辑公式。相反的,结构规则操作在相继式的结构上,忽略公式的准确形状。这个一般模式的两个例外是同一性公理<math>(I)</math>和规则切<math>(Cut)</math>。 尽管是以形式方式陈述的,上述规则允许用经典逻辑的方式非常直觉的读出来。比如,考虑规则<math>\wedge L_1</math>。它陈述了如果你能证明<math>\Delta</math>可以从包含<math>A</math>的公式序列推导出来,则你也能证明<math>\Delta</math>自更强的假定,也就是<math>A\wedge B</math>成立。类似的,规则<math>(\neg R)</math>陈述了如果<math>\Gamma</math>和<math>A</math>足够推导出<math>\Delta</math>,则从单独的<math>\Gamma</math>你可以要么仍然推导出<math>\Delta</math>要么<math>A</math>必然为假,就是说<math>\neg A</math>成立。所有规则都可以用这种方式来解释。 对于量词规则的直觉解释,考虑规则<math>(\forall R)</math>。当然只从<math>A[y]</math>为真的事实推导出<math>\forall x, A[x/y]</math>成立一般是不可能的。但是如果变量<math>y</math>在其他地方没有被提及(就是说,它仍可以被自由的选择,而不影响其他公式),则你可以假定,<math>A[y]</math>对<math>y</math>的任何值都成立。其他规则应当是非常直接的。 不再把规则看作是对在谓词逻辑中合法的推导的描述,你还可以把它们当作为给定陈述构造一个证明的指导。在这种情况下规则可以自底向上的读。例如,<math>(\wedge R)</math>声称要证明<math>A\wedge B</math>推导自假定<math>\Gamma</math>和<math>\Sigma</math>,分别证明<math>A</math>可以推导自<math>\Gamma</math>和<math>B</math>可以推导自<math>\Sigma</math>就足够了。注意,给顶某个前件,如何分解成<math>\Gamma</math>和<math>\Sigma</math>是不明确的。但是,只有有限多的可能需要检查,因为前件被假定为是有限的。这也展示了证明论如何被看作是以组合方式在证明的操作:给定对<math>A</math>和<math>B</math>二者的证明,你可以构造一个对<math>A\wedge B</math>的证明。 在查找某个证明的时候,多数规则提供或多或少的如何做的处方。切规则是不同的:它声称,在公式<math>A</math>可以被推导出来,并且这个公式也可以充当推导其他公式的前提的时候,则公式<math>A</math>可以被"切掉"并把各自的推导连接起来。在自底向上构造一个证明的时候,这产生了猜测<math>A</math>的问题(因为它在下面根本就没有出现)。这个问题在[[切消定理]]中处理。 第二个规则有某种特殊性,它就是同一性公理<math>(I)</math>。明显的直觉读为:<math>A</math>证明<math>A</math>。 ===例子推导=== 作为一个例子,下面是叫做[[排中律]](拉丁语tertium non datur)的<math>\vdash(A\vee \neg A)</math>的序列推导。 :<math> \cfrac { \cfrac { \cfrac { \cfrac { \cfrac { \cfrac {} {A \vdash A} (I) } {\vdash \lnot A,A} ({\lnot}R) } {\vdash A\lor \lnot A,A} ({\lor}R_2) } { \vdash A,A\lor \lnot A } (PR) } {\vdash A\lor \lnot A,A\lor \lnot A} ({\lor}R_1) } {\vdash A\lor \lnot A} (CR) </math> 这个推导还强调了语法演算的严格形式结构。例如,上述定义的右逻辑规则总是作用于右相继式的第一个公式,这使得<math>(PR)</math>的应用在形式上是需要的。这种非常严格的推理开始时可能难于理解,但是它形成了在形式逻辑中'''语法'''和'''语义'''之间非常核心的区别。尽管我们知道<math>A\vee \neg A</math>和<math>\neg A\vee A</math>有相同的意义,对后者的推导将不等价于上面给出的那个。但是,你可以通过介入引理而使语法推理更加方便些,就是说,预定义完成特定标准推导的方案。作为一个例子,你可以证明下列是一个合法的变换: ::<math> \cfrac {\Gamma \vdash A \lor B, \Delta} {\Gamma \vdash B \lor A, \Delta} </math> 一旦已知一个一般的规则序列要建立这种推导,你可以使用它作为证明内的缩写。但是,当证明使用了好的引理而变得更加易读的时候,也使得推导的过程更加复杂,因为有更多可能的选择要考虑。在使用证明论(经常需要)作为自动演绎的时候这特别重要。 ===结构规则=== 结构规则需要某些额外的讨论。规则的名字是'''弱化'''(<math>W</math>)、'''紧缩'''(<math>C</math>)和'''排列'''(<math>P</math>)。紧缩和排列确保序列元素的次序(<math>P</math>)和多次出现(<math>C</math>)都不重要。就是说,你可以不把它当作[[序列]]而作为[[集合]]。 但是使用序列的额外努力是正当的,因为部分或全部的结构规则可以被忽略。这么做了就得到了所谓的[[亚结构逻辑]]。 ===LK系统的性质=== 这个规则系统可以被证明关于[[一阶逻辑]]是[[可靠性|可靠]]的和[[完备性|完备]]的,就是说,从前提的集合Γ语义上得到的一个陈述<math>(\Gamma \vDash A)</math>,[[当且仅当]]相继式<math>\Gamma \vdash A</math>可以用上述规则推导出来。 在相继式演算中,[[切消定理|切是可接纳的]]。这个结果也称为Gentzen的Hauptsatz("主定理")。 ==变体== 上述规则可以以各种方式修改: ===次要结构变更=== 有些修改不改变<math>LK</math>系统的本质。所有这些修改都仍可以叫做<math>LK</math>系统。 首先,如上面提及的,相继式可以被看做由集合或[[多重集]]组成。在这种情况下,排列和(在使用集合的时候)紧缩公式的规则就可以废弃了。 弱化规则也变成是可接纳的了,在公理<math>(I)</math>被变更的时候,使得形如<math>\Gamma, A\vdash A,\Delta</math>的任何相继式都可以被得出。这意味着在任何上下文中<math>A</math>证明<math>A</math>。在推导中的任何弱化因此可以在开始处正确的进行。在自底向上构造证明的时候这是个方便的变更。 独立于这些修改,你还可以在规则内上下文被分割的方式:在<math>(\wedge R)</math>、<math>(\vee L)</math>和<math>(\rightarrow L)</math>的情况下,在向上走的时候,左上下文被以某种方式分割成<math>\Gamma</math>和<math>\Sigma</math>。因为紧缩允许它们的重复,你可以假定全部上下文在两个推导分支中都使用。通过这么做,你能确保没有重要的前提在错误的分支中被丢失。使用弱化,上下文中无关的部分以后可以被消去。 所有这些改变生成等价的系统,这是在LK中的所有推导可以有效的变换因使用了替代规则的推导反之亦然的意义上。 ===亚结构逻辑=== {{main|亚结构逻辑}} 人们可以限制或禁用某个结构规则。这产生了[[亚结构逻辑]]系统变体。它们一般要弱于<math>LK</math>(就是说有更少的定理),因为关于标准的一阶逻辑语义是不完备的。但是它们的其他有趣性质导致其在理论[[计算机科学]]和[[人工智能]]中的应用。 ===LJ系统=== 令人惊讶的,<math>LK</math>的规则的一些细小的变更就足以把它变成[[直觉逻辑]]的证明系统。你必须限制使用[[相继式|直觉相继式]](就是说,右上下文被消去)并修改规则<math>(\vee L)</math>为如下: ::<math> \cfrac{\Gamma, A \vdash C \qquad \Sigma, B \vdash C }{\Gamma, \Sigma, A \lor B \vdash C} \quad({\lor}L) </math> 这里的<math>C</math>是任意的公式。 结果的系统叫做<math>LJ</math>系统。它关于直觉逻辑是可靠的和完备的并且容许类似的切消证明。 == 引用 == {{Reflist|2}} ==参考文献== * {{cite book | last1 = Buss | first1 = Samuel R. | chapter = An introduction to proof theory | editor = Samuel R. Buss | title = Handbook of proof theory | pages = 1–78 | url = http://math.ucsd.edu/~sbuss/ResearchWeb/handbookI/ | publisher = Elsevier | year = 1998 | isbn = 0-444-89840-9 | access-date = 2022-04-20 | archive-date = 2021-05-17 | archive-url = https://web.archive.org/web/20210517170059/https://math.ucsd.edu/~sbuss/ResearchWeb/handbookI/ }} * {{cite book|last1=Curry|first1=Haskell Brooks|author1-link=Haskell Curry|title=Foundations of mathematical logic|orig-year=1963|year=1977|publisher=Dover Publications Inc.|location=New York|isbn=978-0-486-63462-3}} * {{Cite journal|last1=Gentzen|first1=Gerhard Karl Erich|author1-link=Gerhard Gentzen|title=Untersuchungen über das logische Schließen. I|journal=Mathematische Zeitschrift|volume=39|issue=2|year=1934|doi=10.1007/BF01201353|pages=176–210|s2cid=121546341|url=http://gdz.sub.uni-goettingen.de/dms/resolveppn/?PPN=GDZPPN002375508|access-date=2022-04-20|archive-date=2020-03-07|archive-url=https://web.archive.org/web/20200307215733/https://gdz.sub.uni-goettingen.de/id/PPN266833020_0039?tify=%7B%22view%22:%22info%22,%22pages%22:%5B180%5D%7D}} * {{Cite journal|last1=Gentzen|first1=Gerhard Karl Erich|author1-link=Gerhard Gentzen|title=Untersuchungen über das logische Schließen. II|journal=Mathematische Zeitschrift|volume=39|issue=3|year=1935|pages=405–431|url=http://gdz.sub.uni-goettingen.de/dms/resolveppn/?PPN=GDZPPN002375605|doi=10.1007/bf01201363|s2cid=186239837}} * {{cite book | first=Jean-Yves | last=Girard | author-link=Jean-Yves Girard | author2=Paul Taylor | author3=Yves Lafont | title=Proofs and Types | publisher=Cambridge University Press (Cambridge Tracts in Theoretical Computer Science, 7) | year=1990 | orig-year=1989 | isbn=0-521-37181-3 | url=https://archive.org/details/proofstypes0000gira | url-access=registration }} * {{cite book|last1=Hilbert|first1=David| author1-link=David Hilbert | last2=Bernays | first2=Paul |author2-link=Paul Bernays|title=Grundlagen der Mathematik II|orig-year=1939|year=1970|publisher=Springer-Verlag|location=Berlin, New York|isbn=978-3-642-86897-9|edition=Second}} * {{cite book|last1=Kleene|first1=Stephen Cole|author1-link=Stephen Cole Kleene|title=Introduction to metamathematics|orig-year=1952|year=2009|publisher=Ishi Press International|isbn=978-0-923891-57-2}} * {{cite book|last1=Kleene|first1=Stephen Cole|author1-link=Stephen Cole Kleene|title=Mathematical logic|orig-year=1967|year=2002|publisher=Dover Publications|location=Mineola, New York|isbn=978-0-486-42533-7}} * {{cite book|last1=Lemmon|first1=Edward John|author1-link=John Lemmon|title=Beginning logic|url=https://archive.org/details/beginninglogic0000lemm|year=1965|publisher=Thomas Nelson|isbn=0-17-712040-1}} * {{cite book|last1=Smullyan|first1=Raymond Merrill|author1-link=Raymond Smullyan|year=1995|orig-year=1968|title=First-order logic|url=https://archive.org/details/firstorderlogic0000smul_r5h6|publisher=Dover Publications|location=New York|isbn=978-0-486-68370-6}} * {{cite book|last1=Suppes|first1=Patrick Colonel|author1-link=Patrick Suppes|year=1999|orig-year=1957|title=Introduction to logic|publisher=Dover Publications|location=Mineola, New York|isbn=978-0-486-40687-9}} == 参见 == * [[相继式]] * [[自然演绎]] * [[切消定理]] == 外部連結 == [[Category:证明论]] [[Category:逻辑演算]]
该页面使用的模板:
Template:Cite book
(
查看源代码
)
Template:Cite journal
(
查看源代码
)
Template:Cite web
(
查看源代码
)
Template:Harvnb
(
查看源代码
)
Template:Main
(
查看源代码
)
Template:Reflist
(
查看源代码
)
Template:Tsl
(
查看源代码
)
返回
相继式演算
。
导航菜单
个人工具
登录
命名空间
页面
讨论
不转换
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息