Properties of Coinductive Proof Nets

 

Laura Korte

Laboratory for Foundations of Computer Science

School of Informatics

University of Edinburgh

L.Korte@sms.ed.ac.uk

 

Abstract

Even though in recent years, research has shifted away from GOFAI, both the strong historic link between symbolic logic and Artificial Intelligence, and the contribution of the first to the latter, is undeniable. Of course there are many aspects of the original classical logic which make it unsuitable to model human reasoning, but many other, more appropriate logics have been introduced since then. In my MSc Thesis [4], I propose to introduce a new system of coinductive proof nets, which solves two of the most striking shortcomings of classical logic: the inability to reason with limited resources and the inability to reason with infinite objects. This article describes the properties of the new system and outlines some of their proofs. Full proofs can be found in my MSc Thesis [4] which was supervised by Dr. Vincent van Oostrom.

 

Introduction

Coinductive proof nets are created by specifying a coinductive definition of proof nets. This is in analogy with Joachimski’s coinductive λ-calculus in [3], which specifies a coinductive definition of the λ-calculus. Joachimski’s work on the coinductive λ-calculus, in combination with the existence of a correspondence between the λ-calculus and proof nets, also provides the major incentive to investigate a coinductive version of proof nets: if there exists an infinite version of the λ-calculus, it is worth specifying and investigating the properties of an infinite version of proof nets as well. The result of such an investigation could help us determine the relevance of both coinductive proof nets and the coinductive λ-calculus.

 

However, the motivation for our research on coinductive proof nets is not solely theoretical. Practical application of the λ-calculus like functional programming and natural language processing are well-known throughout the AI community, and because of the correspondence between the (coinductive) λ-calculus and (coinductive) proof nets, each practical application of the former, presents the latter with a potential application as well. Furthermore, the aforementioned relation between proof nets and λ-terms is one of implementation: each λ-term can be represented by a proof net. Only proof nets present us with a more efficient way of reduction than the λ-calculus does, and it has the advantage of proof identification. That is, there is more than one way to reduce a  λ-term to its normal form, yet no way to either identify or distinguish between these reduction sequences. Proof nets on the other hand supply us with only one proof for all reduction sequences that are equal modulo the order in which the individual reductions were applied. We can therefore draw the conclusion that the λ-calculus does not only give us many possible practical applications for coinductive proof nets, but also that most of these applications could potentially benefit from the introduction of coinductive proof nets.

 

Coinductive Proof Nets

As mentioned before, coinductive proof nets are created by specifying a coinductive definition of proof nets. This description is composed of two important parts: coinductive definition and proof nets, each of which we will discuss in turn. Research on coinduction is a relatively new research area, but its dual induction is much more wide spread. However, the reason for using a coinductive definition instead of an inductive one, is that the former is restricted to finite objects, whereas the latter has the ability to define infinite ones as well. The reader is referred to [2] for more information about coinduction, coalgebras and coinductive definitions.

 

The second part in the description of coinductive proof nets is proof nets. The logic for proof nets, linear logic, was first defined by Girard in [1] and its most important feature is resource sensitivity. Because of the correspondence between the λ-calculus and proof nets, every λ-term can be portrayed by a proof net. Figure 1 shows the proof net of a λ-term with an infinite reduction sequence: (λx.xx)(λx.xx).

 

To determine the relevance of coinductive proof nets and the coinductive λ-calculus, we would like the coinductive proof nets to have some reduction properties which prevent them from disruptive non-determinism and possibly even from infinite reduction sequences. A formal definition of these properties can be found in [5] and below:

Figure 1: Proof net of (λx.xx)(λx.xx)

 

 

Confluence:  a Î A is confluent if "b,c Î A (c *¬ a ®* b) Ş $d Î A (c ®* d *¬ b)

The rewrite relation ® is confluent if  every a Î A is confluent.

 

Strong Normalisation:  a Î A is strongly normalising if every reduction sequence starting from a is finite. The rewrite relation ® is strongly normalising if every a Î A is strongly normalising.

 

Proving proof nets confluent, implies that there is no disruptive non-determinism in the system and would allow us to infer that if a proof net has a normal form, it is a unique normal form. Proving our system strongly normalising, would allow us to infer that every proof net has a normal form. Confluence and strong normalisation together imply that there is a unique normal form for every proof net.

 

However, it is clear that strong normalisation does not hold for the type-free version of (co)inductive proof nets. We only need a λ-term like (λx.xx)(λx.xx), which has an infinite reduction sequence and therefore no normal form. It follows directly from this example and the correspondence between proof nets and the λ-calculus, that there is a proof net with an infinite reduction sequence and no normal form, hence strong normalisation does not hold for the type-free version of (co)inductive proof nets.

 

Confluence on the other hand, can be proven to hold for (co)inductive proof nets. In [4], we present a new proof of confluence for proof nets which does not use finiteness as an assumption and therefore holds for both inductive and coinductive proof nets. Note that even though we can adapt counter examples from the (co)inductive λ-calculus, it is necessary to build proofs like the one for confluence from scratch, because the set of proof nets representing valid λ-terms is only a subset of the set of all proof nets.

 

Up to this point, we have only spoken about the type-free version of (co)inductive proof nets, for which we have seen that confluence does, but strong normalisation does not hold. In the λ-calculus we see the exact same thing, but we also see that strong normalisation does hold for a typed version of the inductive λ-calculus. In [4] we present a new proof of the fact that strong normalisation also holds for inductive proof nets, but not for coinductive proof nets. A counter example for the latter can be constructed by taking any typed proof net with an infinite number of redexes.

 

Of course a result like this is to be expected when working with infinite objects, but in [4] we note that even the counterpart of strong normalisation in the infinite domain, head normalisation, does not hold either. The purpose of head normalisation is to contract only those redexes that are strictly necessary, i.e. the redexes that would be contracted no matter what reduction strategy is applied. Our counter example against head normalisation for typed coinductive proof nets is taken from the coinductive λ-calculus:

 

CE = (λx.x) (λx.x) (λx.x) (λx.x) ¼ ¥

 

It is clear that regardless of the redex we choose, a reduction of CE will always result in CE itself. Consequently, the infinite reduction sequence starting from CE is not head normalizing. However, it is perfectly typable. Figure 2 shows the infinite proof net of CE. Since a proof net is merely an implementation of a λ-term, it too will have an infinite reduction sequence which is not head normalizing.

 

Figure 2: Proof net of CE

 

Conclusions and Future Work

In this article we have seen that coinductive proof nets do indeed possess the desirable property of confluence, but we also saw that it does not have other ones like strong normalisation or even for head normalisation, its counterpart in the infinite domain. So when we come to evaluating the relevance of coinductive proof nets we are as yet undecided. Future work on the system would include developing a standardisation procedure, which always reduces a proof net to its head normal form, if there is one. A successful attempt at this, would significantly improve the relevance of coinductive proof nets and because of their close relation, the coinductive λ-calculus as well.

 

References

[1]       Jean-Yves Girard, Linear Logic, Theoretical Computer Science 50, 1987.

[2]       Bart Jacobs and Jan Rutten, A Tutorial on (Co)Algebras and (Co)Induction, Bulletin

of the European Association for Theoretical Computer Science 62, 1997.

[3]       Felix Joachimski, Reduction Properties of П IE-Systems, PhD Thesis, LMU München,

2001.

[4]       Laura Korte, Coinductive Proof Nets, MSc Thesis, Utrecht University 2002.

[5]       Terese, Term Rewriting Systems, Cambridge University Press 2003.