- •Sense, Denotation and Semantics
- •Sense and denotation in logic
- •The algebraic tradition
- •The syntactic tradition
- •The two semantic traditions
- •Tarski
- •Heyting
- •Natural Deduction
- •The calculus
- •The rules
- •Interpretation of the rules
- •The Curry-Howard Isomorphism
- •Lambda Calculus
- •Types
- •Terms
- •Operational significance
- •Conversion
- •Description of the isomorphism
- •Relevance of the isomorphism
- •The Normalisation Theorem
- •The weak normalisation theorem
- •Proof of the weak normalisation theorem
- •Degree and substitution
- •Degree and conversion
- •Conversion of maximal degree
- •Proof of the theorem
- •The strong normalisation theorem
- •Sequent Calculus
- •The calculus
- •Sequents
- •Structural rules
- •The intuitionistic case
- •Logical rules
- •Some properties of the system without cut
- •The last rule
- •Subformula property
- •Asymmetrical interpretation
- •Sequent Calculus and Natural Deduction
- •Properties of the translation
- •Strong Normalisation Theorem
- •Reducibility
- •Properties of reducibility
- •Atomic types
- •Product type
- •Arrow type
- •Reducibility theorem
- •Pairing
- •Abstraction
- •The theorem
- •The calculus
- •Types
- •Terms
- •Intended meaning
- •Conversions
- •Normalisation theorem
- •Expressive power: examples
- •Booleans
- •Integers
- •Expressive power: results
- •Canonical forms
- •Representable functions
- •Coherence Spaces
- •General ideas
- •Coherence Spaces
- •The web of a coherence space
- •Interpretation
- •Stable functions
- •Parallel Or
- •Direct product of two coherence spaces
- •The Function-Space
- •The trace of a stable function
- •Representation of the function space
- •The Berry order
- •Partial functions
- •Denotational Semantics of T
- •Simple typed calculus
- •Types
- •Terms
- •Properties of the interpretation
- •Booleans
- •Integers
- •Sums in Natural Deduction
- •Defects of the system
- •Standard conversions
- •The need for extra conversions
- •Subformula Property
- •Extension to the full fragment
- •Commuting conversions
- •Properties of conversion
- •The associated functional calculus
- •Empty type
- •Sum type
- •Additional conversions
- •System F
- •The calculus
- •Comments
- •Representation of simple types
- •Booleans
- •Product of types
- •Empty type
- •Sum type
- •Existential type
- •Representation of a free structure
- •Free structure
- •Representation of the constructors
- •Induction
- •Representation of inductive types
- •Integers
- •Lists
- •Binary trees
- •Trees of branching type U
- •The Curry-Howard Isomorphism
- •Coherence Semantics of the Sum
- •Direct sum
- •Lifted sum
- •dI-domains
- •Linearity
- •Characterisation in terms of preservation
- •Linear implication
- •Linearisation
- •Linearised sum
- •Tensor product and units
- •Cut Elimination (Hauptsatz)
- •The key cases
- •The principal lemma
- •The Hauptsatz
- •Resolution
- •Strong Normalisation for F
- •Idea of the proof
- •Reducibility candidates
- •Remarks
- •Reducibility with parameters
- •Substitution
- •Universal abstraction
- •Universal application
- •Reducibility theorem
- •Representation Theorem
- •Representable functions
- •Numerals
- •Total recursive functions
- •Provably total functions
- •Proofs into programs
- •Formulation of HA2
- •Translation of HA2 into F
- •Representation of provably total functions
- •Semantics of System F
- •What is Linear Logic?
Chapter 10
Sums in Natural Deduction
This chapter gives a brief description of those parts of natural deduction whose behaviour is not so pretty, although they show precisely the features which are most typical of intuitionism. For this fragment, our syntactic methods are frankly inadequate, and only a complete recasting of the ideas could allow us to progress. In terms of syntax, there are three connectors to put back: : , _ and 9. For : , it is common to add a symbol ? (absurdity) and interpet :A as A ) ?.
The rules are:
|
|
|
|
|
|
|
[A] |
[B] |
|
||||
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
||||
A |
|
|
B |
|
|
|
|
? |
|
||||
|
1 |
|
|
|
|
2 |
A _ B |
C |
C |
|
|||
_ |
I |
_ I |
|
|
|
|
_E |
|
?E |
||||
A _ B |
|
|
A _ B |
|
|
C |
|
|
C |
||||
|
|
|
|
|
|
|
[A] |
|
|
||||
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
A[a= ] |
|
|
|
|
|
|
||||
|
|
|
|
|
9I |
|
|
9 : A |
C |
|
|
||
|
|
|
|
|
|
|
|
|
|||||
|
|
|
9 : A |
|
|
|
|
9E |
|
|
|||
|
|
|
|
|
C |
|
|
|
The variable must no longer be free in the hypotheses or the conclusion after use of the rule 9E. There is, of course, no rule ?I.
10.1Defects of the system
The introduction rules (two for _, none for ? and one for 9) are excellent! Moreover, if you mentally turn them upside-down, you will nd the same structure as ^1E, ^2E, 8E (in linear logic, there is only one rule in each case, since they are actually turned over).
72
10.2. STANDARD CONVERSIONS |
73 |
The elimination rules are very bad. What is catastrophic about them is the parasitic presence of a formula C which has no structural link with the formula which is eliminated. C plays the r^ole of a context, and the writing of these rules is a concession to sequent calculus.
In fact, the adoption of these rules (and let us repeat that there is currently no alternative) contradicts the idea that natural deductions are the \real objects" behind the proofs. Indeed, we cannot decently work with the full fragment without identifying a priori di erent deductions, for example:
|
|
|
[A] |
[B] |
|
|
[A] |
|
[B] |
||||||
|
|
|
|
|
and |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
A |
_ |
B |
C |
C |
|
|
C |
|
|
C |
|||||
|
|
|
|
|
|
_E |
|
|
|
|
r |
|
|
r |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C |
|
|
|
A _ B |
D |
|
|
D |
||||
|
|
|
D |
r |
|
|
|
|
D |
|
|
|
_E |
Fortunately, this kind of identi cation can be written in an asymmetrical form as a \commuting conversion", satisfying Church-Rosser and strong normalisation. Nevertheless, even though the damage is limited, the need to add these supplementary rules reveals an inadequacy of the syntax. The true deductions are nothing more than equivalence classes of deductions modulo commutation rules.
What we would like to write in the case of _E for example, is
A _ B
AB
with two conclusions. Later, these two conclusions would have to be brought back together into one. But we have no way of bringing them back together, apart from writing _E as we did, which forces us to choose the moment of reuni cation. The commutation rules express the fact that this moment can fundamentally be postponed.
10.2Standard conversions
These are redexes of type introduction/elimination: