Sequent calculus
(→Formulas: table markup) |
(conventions for quantifiers) |
||
Line 1: | Line 1: | ||
This article presents the language and sequent calculus of second-order |
This article presents the language and sequent calculus of second-order |
||
propositional linear logic and the basic properties of this sequent calculus. |
propositional linear logic and the basic properties of this sequent calculus. |
||
− | |||
− | |||
== Formulas == |
== Formulas == |
||
Line 8: | Line 6: | ||
Formulas are built on a set of atoms, written <math>\alpha,\beta,\ldots</math>, that can |
Formulas are built on a set of atoms, written <math>\alpha,\beta,\ldots</math>, that can |
||
be either propositional variables <math>X,Y,Z\ldots</math> or atomic formulas |
be either propositional variables <math>X,Y,Z\ldots</math> or atomic formulas |
||
− | <math>X(t_1,\ldots,t_n)</math>, where the <math>t_i</math> are terms from some first-order language. |
+ | <math>p(t_1,\ldots,t_n)</math>, where the <math>t_i</math> are terms from some first-order language and <math>p</math> is a predicate symbol. |
Formulas, represented by capital letters <math>A</math>, <math>B</math>, <math>C</math>, are built using the |
Formulas, represented by capital letters <math>A</math>, <math>B</math>, <math>C</math>, are built using the |
||
following connectives: |
following connectives: |
||
Line 50: | Line 48: | ||
| exponentials |
| exponentials |
||
|- |
|- |
||
− | | <math>\exists x.A</math> |
+ | | <math>\exists \xi.A</math> |
| there exists |
| there exists |
||
− | | <math>\forall x.A</math> |
+ | | <math>\forall \xi.A</math> |
| for all |
| for all |
||
− | | quantifiers |
+ | | quantifiers (<math>\xi</math> is a first or second order variable) |
|} |
|} |
||
Line 66: | Line 64: | ||
read ''of course <math>A</math>'' for <math>\oc A</math> and ''why not <math>A</math>'' for <math>\wn A</math>. |
read ''of course <math>A</math>'' for <math>\oc A</math> and ''why not <math>A</math>'' for <math>\wn A</math>. |
||
Quantifiers may apply to first- or second-order variables. |
Quantifiers may apply to first- or second-order variables. |
||
− | |||
Given a formula <math>A</math>, its linear negation, also called ''orthogonal'' and |
Given a formula <math>A</math>, its linear negation, also called ''orthogonal'' and |
||
Line 112: | Line 109: | ||
| <math>:= \oc ( A\orth ) </math> |
| <math>:= \oc ( A\orth ) </math> |
||
|- |
|- |
||
− | |align="right"| <math> ( \exists X.A )\orth </math> |
+ | |align="right"| <math> ( \exists \xi.A )\orth </math> |
− | | <math>:= \forall X.( A\orth ) </math> |
+ | | <math>:= \forall \xi.( A\orth ) </math> |
| |
| |
||
− | |align="right"| <math> ( \forall X.A )\orth </math> |
+ | |align="right"| <math> ( \forall \xi.A )\orth </math> |
− | | <math>:= \exists X.( A\orth ) </math> |
+ | | <math>:= \exists \xi.( A\orth ) </math> |
|} |
|} |
||
− | |||
Note that this operation is defined syntactically, hence negation is not a |
Note that this operation is defined syntactically, hence negation is not a |
||
Line 133: | Line 129: | ||
A \limp B := A\orth \parr B |
A \limp B := A\orth \parr B |
||
</math> |
</math> |
||
− | |||
Free and bound variables are defined in the standard way, as well as |
Free and bound variables are defined in the standard way, as well as |
||
Line 150: | Line 145: | ||
Proofs are labelled trees of sequents, built using the following inference |
Proofs are labelled trees of sequents, built using the following inference |
||
rules: |
rules: |
||
− | |||
* Identity group:<br><math> |
* Identity group:<br><math> |
||
Line 163: | Line 157: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
* Multiplicative group:<br><math> |
* Multiplicative group:<br><math> |
||
Line 186: | Line 179: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
* Additive group:<br><math> |
* Additive group:<br><math> |
||
Line 209: | Line 201: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
* Exponential group:<br><math> |
* Exponential group:<br><math> |
||
Line 233: | Line 224: | ||
</math> |
</math> |
||
− | + | * Quantifier group (in the <math>\forall</math> rule, <math>\xi</math> must not occur free in <math>\Gamma</math>):<br><math> |
|
− | * Quantifier group (in the <math>\forall</math> rule, <math>X</math> must not occur in <math>\Gamma</math>):<br><math> |
+ | \AxRule{ \vdash \Gamma, A[t/x] } |
+ | \LabelRule{ \exists^1 } |
||
+ | \UnaRule{ \vdash \Gamma, \exists x.A } |
||
+ | \DisplayProof |
||
+ | \qquad |
||
\AxRule{ \vdash \Gamma, A[B/X] } |
\AxRule{ \vdash \Gamma, A[B/X] } |
||
− | \LabelRule{ \exists } |
+ | \LabelRule{ \exists^2 } |
\UnaRule{ \vdash \Gamma, \exists X.A } |
\UnaRule{ \vdash \Gamma, \exists X.A } |
||
\DisplayProof |
\DisplayProof |
||
Line 242: | Line 233: | ||
\AxRule{ \vdash \Gamma, A } |
\AxRule{ \vdash \Gamma, A } |
||
\LabelRule{ \forall } |
\LabelRule{ \forall } |
||
− | \UnaRule{ \vdash \Gamma, \forall X.A } |
+ | \UnaRule{ \vdash \Gamma, \forall \xi.A } |
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
− | |||
The rules for exponentials are called ''dereliction'', ''weakening'', |
The rules for exponentials are called ''dereliction'', ''weakening'', |
||
Line 276: | Line 265: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
− | |||
== Equivalences and definability == |
== Equivalences and definability == |
||
Line 293: | Line 280: | ||
=== Fundamental equivalences === |
=== Fundamental equivalences === |
||
+ | * Associativity, commutativity, neutrality: <br> <math> |
||
+ | A \tens (B \tens C) \equiv (A \tens B) \tens C </math>   <math> |
||
+ | A \tens B \equiv B \tens A </math>   <math> |
||
+ | A \tens \one \equiv A </math> <br> <math> |
||
+ | A \plus (B \plus C) \equiv (A \plus B) \plus C </math>   <math> |
||
+ | A \plus B \equiv B \plus A </math>   <math> |
||
+ | A \plus \zero \equiv A </math> |
||
+ | * Idempotence of additives: <br> <math> |
||
+ | A \plus A \equiv A </math> |
||
− | * Associativity, commutativity, neutrality: |
+ | * Distributivity of multiplicatives over additives: <br> <math> |
− | {| |
+ | A \tens (B \plus C) \equiv (A \tens B) \plus (A \tens C) </math>   <math> |
− | |- |
+ | A \tens \zero \equiv \zero </math> |
− | |align="right"|   <math> |
||
− | A \tens (B \tens C) </math> |
||
− | | <math>\equiv (A \tens B) \tens C </math> |
||
− | |align="right"|   <math> |
||
− | A \tens B </math> |
||
− | | <math>\equiv B \tens A </math> |
||
− | |align="right"|   <math> |
||
− | A \tens \one </math> |
||
− | | <math>\equiv A </math> |
||
− | |- |
||
− | |align="right"|   <math> |
||
− | A \plus (B \plus C) </math> |
||
− | | <math>\equiv (A \plus B) \plus C </math> |
||
− | |align="right"|   <math> |
||
− | A \plus B </math> |
||
− | | <math>\equiv B \plus A </math> |
||
− | |align="right"|   <math> |
||
− | A \plus \zero </math> |
||
− | | <math>\equiv A |
||
− | </math> |
||
− | |} |
||
+ | * Defining property of exponentials:<br> <math> |
||
+ | \oc(A \with B) \equiv \oc A \tens \oc B </math>   <math> |
||
+ | \oc\top \equiv \one </math> |
||
− | * Idempotence of additives: |
+ | * Monoidal structure of exponentials, digging: <br> <math> |
− | {| |
+ | \oc A \otimes \oc A \equiv \oc A </math>   <math> |
− | |- |
+ | \oc \one \equiv \one </math>   <math> |
− | |align="right"|   <math> |
+ | \oc\oc A \equiv \oc A </math> |
− | A \plus A </math> |
||
− | | <math>\equiv A |
||
− | </math> |
||
− | |} |
||
− | + | * Commutation of quantifiers (<math>\zeta</math> does not occur in <math>A</math>): <br> <math> |
|
− | * Distributivity of multiplicatives over additives: |
+ | \exists \xi. \exists \psi. A \equiv \exists \psi. \exists \xi. A </math>   <math> |
− | {| |
+ | \exists \xi.(A \plus B) \equiv \exists \xi.A \plus \exists \xi.B </math>   <math> |
− | |- |
+ | \exists \zeta.(A\tens B) \equiv A\tens\exists \zeta.B </math>   <math> |
− | |align="right"|   <math> |
+ | \exists \zeta.A \equiv A </math> |
− | A \tens (B \plus C) </math> |
||
− | | <math>\equiv (A \tens B) \plus (A \tens C) </math> |
||
− | |align="right"|   <math> |
||
− | A \tens \zero </math> |
||
− | | <math>\equiv \zero |
||
− | </math> |
||
− | |} |
||
− | |||
− | |||
− | * Defining property of exponentials: |
||
− | {| |
||
− | |- |
||
− | |align="right"|   <math> |
||
− | \oc(A \with B) </math> |
||
− | | <math>\equiv \oc A \tens \oc B </math> |
||
− | |align="right"|   <math> |
||
− | \oc\top </math> |
||
− | | <math>\equiv \one |
||
− | </math> |
||
− | |} |
||
− | |||
− | |||
− | * Monoidal structure of exponentials, digging: |
||
− | {| |
||
− | |- |
||
− | |align="right"|   <math> |
||
− | \oc A \otimes \oc A </math> |
||
− | | <math>\equiv \oc A </math> |
||
− | |align="right"|   <math> |
||
− | \oc \one </math> |
||
− | | <math>\equiv \one </math> |
||
− | |align="right"|   <math> |
||
− | \oc\oc A </math> |
||
− | | <math>\equiv \oc A |
||
− | </math> |
||
− | |} |
||
− | |||
− | |||
− | * Commutation of quantifiers (<math>z</math> does not occur in <math>A</math>): |
||
− | {| |
||
− | |- |
||
− | |align="right"|   <math> |
||
− | \exists x. \exists y. A </math> |
||
− | | <math>\equiv \exists y. \exists x. A </math> |
||
− | |align="right"|   <math> |
||
− | \exists x.(A \plus B) </math> |
||
− | | <math>\equiv \exists x.A \plus \exists x.B </math> |
||
− | |align="right"|   <math> |
||
− | \exists z.(A\tens B) </math> |
||
− | | <math>\equiv A\tens\exists z.B |
||
− | </math> |
||
− | |align="right"|   <math> |
||
− | \exists z.A </math> |
||
− | | <math>\equiv A |
||
− | </math> |
||
− | |} |
||
=== Definability === |
=== Definability === |
||
Line 316: | Line 315: | ||
quantification and exponentials, indeed the following equivalences hold: |
quantification and exponentials, indeed the following equivalences hold: |
||
− | {| |
+ | <math> \zero \equiv \forall X.X </math>   |
− | |- |
+ | <math> \one \equiv \forall X.(X \limp X) </math>   |
− | |align="right"|   <math> |
+ | <math> A \plus B \equiv \forall X.(\oc(A \limp X) \limp \oc(B \limp X) \limp X) </math> |
− | \zero </math> |
||
− | | <math>\equiv \forall X.X </math> |
||
− | |align="right"|   <math> |
||
− | \one </math> |
||
− | | <math>\equiv \forall X.(X \limp X) </math> |
||
− | |align="right"|   <math> |
||
− | A \plus B </math> |
||
− | | <math>\equiv \forall X.(\oc(A \limp X) \limp \oc(B \limp X) \limp X) |
||
− | </math> |
||
− | |} |
||
− | |||
=== Additional equivalences === |
=== Additional equivalences === |
||
− | {| |
+ | <math> \oc\wn\oc\wn A \equiv \oc\wn A </math>   |
− | |- |
+ | <math> \oc\wn \one \equiv \one </math> |
− | |align="right"|   <math> |
||
− | \oc\wn\oc\wn A </math> |
||
− | | <math>\equiv \oc\wn A |
||
− | </math> |
||
− | |align="right"|   <math> |
||
− | \oc\wn \one</math> |
||
− | | <math>\equiv \one |
||
− | </math> |
||
− | |} |
||
− | |||
Any pair of connectives that has the same rules as <math>\tens/\parr</math> is |
Any pair of connectives that has the same rules as <math>\tens/\parr</math> is |
||
equivalent to it, the same holds for additives, but not for exponentials. |
equivalent to it, the same holds for additives, but not for exponentials. |
||
− | |||
=== Positive/negative commutation === |
=== Positive/negative commutation === |
||
− | |||
<math>\exists\forall\limp\forall\exists</math>, |
<math>\exists\forall\limp\forall\exists</math>, |
||
Line 346: | Line 343: | ||
{{Theorem|title=cut elimination| |
{{Theorem|title=cut elimination| |
||
− | For every sequent <math>\vdash\Gamma</math>, there is a proof of <math>\vdash\Gamma</math> if and |
+ | For every sequent <math>\vdash\Gamma</math>, there is a proof of <math>\vdash\Gamma</math> if and only if there is a proof of <math>\vdash\Gamma</math> that does not use the cut rule. |
− | only if there is a proof of <math>\vdash\Gamma</math> that does not use the cut rule. |
||
}} |
}} |
||
Line 357: | Line 354: | ||
{{Definition|title=subformula| |
{{Definition|title=subformula| |
||
− | The subformulas of a formula <math>A</math> are <math>A</math> and, inductively, the subformulas |
+ | The subformulas of a formula <math>A</math> are <math>A</math> and, inductively, the subformulas of its immediate subformulas: |
− | of its immediate subformulas: |
||
− | |||
− | |||
* the immediate subformulas of <math>A\tens B</math>, <math>A\parr B</math>, <math>A\plus B</math>, <math>A\with B</math> are <math>A</math> and <math>B</math>, |
* the immediate subformulas of <math>A\tens B</math>, <math>A\parr B</math>, <math>A\plus B</math>, <math>A\with B</math> are <math>A</math> and <math>B</math>, |
||
− | |||
* the only immediate subformula of <math>\oc A</math> and <math>\wn A</math> is <math>A</math>, |
* the only immediate subformula of <math>\oc A</math> and <math>\wn A</math> is <math>A</math>, |
||
− | |||
* <math>\one</math>, <math>\bot</math>, <math>\zero</math>, <math>\top</math> and atomic formulas <math>\alpha</math> and <math>\alpha\orth</math> have no immediate subformula, |
* <math>\one</math>, <math>\bot</math>, <math>\zero</math>, <math>\top</math> and atomic formulas <math>\alpha</math> and <math>\alpha\orth</math> have no immediate subformula, |
||
− | + | * the immediate subformulas of <math>\exists x.A</math> and <math>\forall x.A</math> are all the <math>A[t/x]</math> for all first-order terms <math>t</math>. |
|
* the immediate subformulas of <math>\exists X.A</math> and <math>\forall X.A</math> are all the <math>A[B/X]</math> for all formulas <math>B</math>. |
* the immediate subformulas of <math>\exists X.A</math> and <math>\forall X.A</math> are all the <math>A[B/X]</math> for all formulas <math>B</math>. |
||
}} |
}} |
||
Line 372: | Line 367: | ||
formulas of <math>\Gamma</math>. |
formulas of <math>\Gamma</math>. |
||
}} |
}} |
||
− | {{Proof| |
+ | {{Proof|By the cut elimination theorem, if a sequent <math>\vdash</math> is provable, then it |
− | By the cut elimination theorem, if a sequent <math>\vdash</math> is provable, then it |
||
is provable by a cut-free proof. |
is provable by a cut-free proof. |
||
In each rule except the cut rule, all formulas of the premisses are either |
In each rule except the cut rule, all formulas of the premisses are either |
||
Line 423: | Line 418: | ||
We prove this by induction on <math>A</math>. |
We prove this by induction on <math>A</math>. |
||
Not that there is a case for each pair of dual connectives. |
Not that there is a case for each pair of dual connectives. |
||
− | |||
* If <math>A</math> is atomic, then <math>\vdash A\orth,A</math> is an instance of the atomic axiom rule. |
* If <math>A</math> is atomic, then <math>\vdash A\orth,A</math> is an instance of the atomic axiom rule. |
||
Line 444: | Line 438: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
* If <math>A=A_1\plus A_2</math> then we have<br><math> |
* If <math>A=A_1\plus A_2</math> then we have<br><math> |
||
Line 463: | Line 456: | ||
\DisplayProof |
\DisplayProof |
||
</math> |
</math> |
||
− | |||
* If <math>A=\oc B</math> then we have<br><math> |
* If <math>A=\oc B</math> then we have<br><math> |
||
Line 483: | Line 475: | ||
</math><br>where <math>\pi</math> exists by induction hypothesis. |
</math><br>where <math>\pi</math> exists by induction hypothesis. |
||
+ | * First-order quantification works like second-order quantification. |
||
}} |
}} |
||
Line 493: | Line 486: | ||
{{Definition|title=reversibility| |
{{Definition|title=reversibility| |
||
A connective <math>c</math> is called ''reversible'' if |
A connective <math>c</math> is called ''reversible'' if |
||
− | |||
* for every proof <math>\pi\vdash\Gamma,c(A_1,\ldots,A_n)</math>, there is a proof <math>\pi'</math> with the same conclusion in which <math>c(A_1,\ldots,A_n)</math> is introduced by the last rule, |
* for every proof <math>\pi\vdash\Gamma,c(A_1,\ldots,A_n)</math>, there is a proof <math>\pi'</math> with the same conclusion in which <math>c(A_1,\ldots,A_n)</math> is introduced by the last rule, |
||
* if <math>\pi</math> is cut-free then there is a cut-free <math>\pi'</math>. |
* if <math>\pi</math> is cut-free then there is a cut-free <math>\pi'</math>. |
||
− | |||
}} |
}} |
||
Line 548: | Line 539: | ||
<math>\top</math> rule with the appropriate conclusion. |
<math>\top</math> rule with the appropriate conclusion. |
||
− | For <math>\forall</math>, consider a proof <math>\pi\vdash\Gamma,\forall X.A</math>. |
+ | For <math>\forall</math> at second order, consider a proof <math>\pi\vdash\Gamma,\forall X.A</math>. |
Up to renaming, we can assume that <math>X</math> occurs free only above the rule that |
Up to renaming, we can assume that <math>X</math> occurs free only above the rule that |
||
introduces the quantifier. |
introduces the quantifier. |
||
Line 556: | Line 547: | ||
The case when the <math>\forall</math> was introduced in a <math>\top</math> rule is solved as |
The case when the <math>\forall</math> was introduced in a <math>\top</math> rule is solved as |
||
before. |
before. |
||
+ | First-order quantification is similar. |
||
Note that, in each case, if the proof we start from is cut-free, our |
Note that, in each case, if the proof we start from is cut-free, our |
Revision as of 17:10, 17 January 2009
This article presents the language and sequent calculus of second-order propositional linear logic and the basic properties of this sequent calculus.
Contents |
Formulas
Formulas are built on a set of atoms, written , that can
be either propositional variables
or atomic formulas
, where the ti are terms from some first-order language and p is a predicate symbol.
Formulas, represented by capital letters A, B, C, are built using the
following connectives:
α | atom | ![]() |
negated atom | atoms |
![]() |
tensor | ![]() |
par | multiplicatives |
![]() |
one | ![]() |
bottom | multiplicative units |
![]() |
plus | ![]() |
with | additives |
![]() |
zero | ![]() |
top | additive units |
![]() |
of course | ![]() |
why not | exponentials |
![]() |
there exists | ![]() |
for all | quantifiers (ξ is a first or second order variable) |
Each line corresponds to a particular class of connectives, and each class
consists in a pair of connectives.
Those in the left column are called positive and those in the right column are
called negative.
The tensor and with are conjunctions while par and
plus are disjunctions.
The exponential connectives are called modalities, and traditionally
read of course A for and why not A for
.
Quantifiers may apply to first- or second-order variables.
Given a formula A, its linear negation, also called orthogonal and
written , is obtained by exchanging each positive connective with the
negative one of the same class and vice versa, in a way analogous to de Morgan
laws in classical logic.
Formally, the definition of linear negation is
![]() |
![]() |
![]() |
: = α | |
![]() |
![]() |
![]() |
![]() | |
![]() |
![]() |
![]() |
![]() | |
![]() |
![]() |
![]() |
![]() | |
![]() |
![]() |
![]() |
![]() | |
![]() |
![]() |
![]() |
![]() | |
![]() |
![]() |
![]() |
![]() |
Note that this operation is defined syntactically, hence negation is not a
connective, the only place in formulas where the symbol occurs
is for negated atoms
.
Note also that, by construction, negation is involutive: for any formula A,
it holds that
.
There is no connective for implication in the syntax of standard linear logic.
Instead, a linear implication is defined similarly to the decomposition
in classical logic:
Free and bound variables are defined in the standard way, as well as
substitution.
Formulas are always considered up to renaming of bound names.
If A and B are formulas and X is a propositional variable, the formula
A[B / X] is A where all atoms X are replaced (without capture) by B and
all atoms are replaced by the formula
.
Sequents and proofs
A sequent is an expression where Γ is a finite multiset
of formulas.
For a multiset
, the notation
represents
the multiset
.
Proofs are labelled trees of sequents, built using the following inference
rules:
- Identity group:
- Multiplicative group:
- Additive group:
- Exponential group:
- Quantifier group (in the
rule, ξ must not occur free in Γ):
The rules for exponentials are called dereliction, weakening,
contraction and promotion, respectively.
Note the fundamental fact that there are no contraction and weakening rules
for aribtrary formulas, but only for the formulas starting with the
modality.
This is what distinguishes linear logic from classical logic: if weakening and
contraction were allowed for arbitrary formulas, then
and
would be identified, as well as
and
,
and
,
and
.
By identified, we mean here that replacing a
with a
or
vice versa would preserve provability.
Note that this system contains only introduction rules and no elimination
rule.
Moreover, there is no introduction rule for the additive unit , the
only ways to introduce it at top level are the axiom rule and the
rule.
Sequents are considered as multisets, in other words as sequences up to permutation. An equivalent presentation would be to define a sequent as a finite sequence of formulas and to add the exchange rule:
Equivalences and definability
Two formulas A and B are (linearly) equivalent, written , if
both implications
and
are provable.
Equivalently,
if both
and
are provable.
Another formulation of
is that, for all Γ,
is provable if and only if
is provable.
Note that, because of the definition of negation, an equivalence
holds if and only if the dual equivalence
holds.
Fundamental equivalences
- Associativity, commutativity, neutrality:
- Idempotence of additives:
- Distributivity of multiplicatives over additives:
- Defining property of exponentials:
- Monoidal structure of exponentials, digging:
- Commutation of quantifiers (ζ does not occur in A):
Definability
The units and the additive connectives can be defined using second-order quantification and exponentials, indeed the following equivalences hold:
Additional equivalences
Any pair of connectives that has the same rules as is
equivalent to it, the same holds for additives, but not for exponentials.
Positive/negative commutation
,
Properties of proofs
The fundamental property of the sequent calculus of linear logic is the cut elimination property, which states that the cut rule is useless as far as provability is concerned. This property is exposed in the following section, together with a sketch of proof.
Cut elimination and consequences
Theorem (cut elimination)
For every sequent , there is a proof of
if and only if there is a proof of
that does not use the cut rule.
This property is proved using a set of rewriting rules on proofs, using appropriate termination arguments (see the specific articles on cut elimination for detailed proofs), it is the core of the proof/program correspondence.
It has several important consequences:
Definition (subformula)
The subformulas of a formula A are A and, inductively, the subformulas of its immediate subformulas:
- the immediate subformulas of
,
,
,
are A and B,
- the only immediate subformula of
and
is A,
-
,
,
,
and atomic formulas α and
have no immediate subformula,
- the immediate subformulas of
and
are all the A[t / x] for all first-order terms t.
- the immediate subformulas of
and
are all the A[B / X] for all formulas B.
Theorem (subformula property)
A sequent is provable if and only if it is the conclusion of
a proof in which each intermediate conclusion is made of subformulas of the
formulas of Γ.
Proof. By the cut elimination theorem, if a sequent is provable, then it
is provable by a cut-free proof.
In each rule except the cut rule, all formulas of the premisses are either
formulas of the conclusion, or immediate subformulas of it, therefore
cut-free proofs have the subformula property.
The subformula property means essentially nothing in the second-order system, since any formula is a subformula of a quantified formula where the quantified variable occurs. However, the property is very meaningful if the sequent Γ does not use second-order quantification, as it puts a strong restriction on the set of potential proofs of a given sequent. In particular, it implies that the first-order fragment without quantifiers is decidable.
Theorem (consistency)
The empty sequent is not provable.
Subsequently, it is impossible to prove both a formula A and its negation
; it is impossible to prove
or
.
Proof.
If is a provable sequent, then it is the conclusion of a
cut-free proof.
In each rule except the cut rule, there is at least one formula in
conclusion.
Therefore
cannot be the conclusion of a proof.
The other properties are immediate consequences: if A and were
provable, then by a cut rule one would get an empty conclusion, which is not
possible.
As particular cases, since
and
are provable, their negations
and
are not.
Expansion of identities
Let us write to signify that π is a proof with
conclusion
.
Proposition (η-expansion)
For every proof π, there is a proof π' with the same conclusion as
π in which the axiom rule is only used with atomic formulas.
If π is cut-free, then there is a cut-free π'.
Proof.
It suffices to prove that for every formula A, the sequent
has a cut-free proof in which the axiom rule is used only
for atomic formulas.
We prove this by induction on A.
Not that there is a case for each pair of dual connectives.
- If A is atomic, then
is an instance of the atomic axiom rule.
- If
then we have
where π1 and π2 exist by induction hypothesis.
- If
or
then we have
- If
then we have
where π1 and π2 exist by induction hypothesis.
- If
or
, we have
- If
then we have
where π exists by induction hypothesis.
- If
then we have
where π exists by induction hypothesis.
- First-order quantification works like second-order quantification.
The interesting thing with η-expansion is that, we can always assume that
each connective is explicitly introduced by its associated rule (except in the
case where there is an occurrence of the rule).
Reversibility
Definition (reversibility)
A connective c is called reversible if
- for every proof
, there is a proof π' with the same conclusion in which
is introduced by the last rule,
- if π is cut-free then there is a cut-free π'.
Proposition
The connectives ,
,
,
and
are
reversible.
Proof.
Using the η-expansion property, we assume that the axiom rule is only
applied to atomic formulas.
Then each top-level connective is introduced either by its associated rule
or in an instance of the rule.
For , consider a proof
.
If
is introduced by a
rule, then if we remove this rule
we get a proof of
(this can be proved by a
straightforward induction).
If it is introduced in the contect of a
rule, then this rule can be
changed so that
is replaced by A,B.
In either case, we can apply a final
rule to get the expected proof.
For , the same technique applies: if it is introduced by a
rule, then remove this rule to get a proof of
, if it is
introduced by a
rule, remove the
from this rule, then apply
the
rule at the end of the new proof.
For , consider a proof
.
If the connective is introduced by a
rule then this rule is applied
in a context like
Since the formula is not involved in other rules (except as
context), if we replace this step by π1 in π we finally get a proof
.
If we replace this step by π2 we get a proof
.
Combining π1 and π2 with a final
rule we finally get the
expected proof.
The case when the
was introduced in a
rule is solved as
before.
For the result is trivial: just choose π' as an instance of the
rule with the appropriate conclusion.
For at second order, consider a proof
.
Up to renaming, we can assume that X occurs free only above the rule that
introduces the quantifier.
If the quantifier is introduced by a
rule, then if we remove this
rule, we can check that we get a proof of
on which we can
finally apply the
rule.
The case when the
was introduced in a
rule is solved as
before.
First-order quantification is similar.
Note that, in each case, if the proof we start from is cut-free, our
transformations do not introduce a cut rule.
However, if the original proof has cuts, then the final proof may have more
cuts, since in the case of we duplicated a part of the original
proof.
Variations
Two-sided sequent calculus
The sequent calculus of linear logic can also be presented using two-sided
sequents , with any number of formulas on the left and
right.
In this case, it is customary to provide rules only for the positive
connectives, then there are left and right introduction rules and a negation
rule that moves formulas between the left and right sides:
Identity group:
Multiplicative group:
Additive group:
Exponential group: