MAX-PLANCK-INSTITUT FÜR

INFORMATIK

LDS – Labelled Deductive Systems Volume 1 — Foundations

Dov M Gabbay

MPI–I–94–223 May 94

[figure: I N F O R M A T I K]

Im Stadtwald D 66123 Saarbrücken

Germany Author’s Address

Department of Computing Imperial College of Science, Technology & Medicine 180 Queen’s Gate London SW7 2BZ Tel: 071-225 8447 E-mail: dg@doc.ic.ac.uk

Publication Notes

This is the third intermediate working partial draft of a book intended for Oxford University Press.

Earlier drafts seem to have attracted great interest among the international community. The 6th Draft was published as a report by CIS, University of Munich in February 1991. LDS is used as a framework in three major European Esprit basic research actions and its development is supported by several national projects. I am therefore responding by publishing what I currently have written, as is, labelling it the third intermediate version in the form of a technical report. I am happy to include a discussion of algebraiclabelled deductive systems and a prototype semantics for LDS in the current version. Many colleagues have been asking what the Fibred semantics for LDS looks like.

This version is currently being expanded and adjusted and it is expected that the final draft will be double in size. I am therefore labelling it as Volume 1.

1st Draft - September 1989 2nd Draft - May 1990 3rd Draft - July 1990 4th Draft - August 1990 5th Draft - December 1990 6th (Intermediate) Draft - February 1991 7th (Expanded) Draft - April 1992 8th (2nd Intermediate) Draft - October 1993 9th Expanded Draft - March 1994 10th (3rd Intermediate) Draft - May 1994

Acknowledgements

This research is continuing while the author is a SERC Senior Research Fellow, under grant GR/H01014.

I would like to dedicate this work to my Administrator and friend Mrs Jane Spurr, with respect and appreciation. Against all odds, this wonderful colleague has managed to produce several of my books and research papers in LaTEX, to organise and produce multiple volumes Handbooks and book series and to launch, produce and maintain the publication of an International Journal.

Contents

I Labelled Deduction in Context 1

1 What is a Logical System? 3 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Logical systems as consequence relations . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Logical systems as algorithmic proof systems . . . . . . . . . . . . . . . . . . . . . 7 1.4 Logical systems as algorithmic structured consequence relations . . . . . . . . . . . 8 1.5 Logical systems as labelled deductive systems . . . . . . . . . . . . . . . . . . . . . 9 1.6 Aggregated systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.7 Practical reasoning systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.8 Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2 Introducing Labelled Deductive Systems 33 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.2 Examples from implicational and monotonic logics . . . . . . . . . . . . . . . . . . 33 2.3 Examples from non-monotonic logics . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.4 Case study: Concatenation logic and linear logic . . . . . . . . . . . . . . . . . . . 51 2.5 Case study: Modal logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 2.6 Case study: priority logic and prolog . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.7 Case study: Modelling information flow . . . . . . . . . . . . . . . . . . . . . . . . 71 2.8 Fibred semantics for LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 2.9 IPR - Interactive practical reasoning systems . . . . . . . . . . . . . . . . . . . . . 79 2.10 The role of LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

II Formal Theory of Labelled Deductive Systems 85

3 Algebraic LDS 87 3.1 Introduction and overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 3.2 Algebraic LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 3.3 Introduction rules: A discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 3.4 The metabox system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

4 PT & S for Algebraic LDS 115 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 4.2 Basic proof theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 4.3 Algorithmic procedures for algebraic LDS . . . . . . . . . . . . . . . . . . . . . . . 140 4.4 Consequence relations and flattening . . . . . . . . . . . . . . . . . . . . . . . . . . 141 4.5 Hilbert formulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 4.6 Semantics and Completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 4.7 Combining algebraic LDSs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 4.8 Tableau for algebraic LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 5 General LDS 143

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 5.2 Databases used as labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 5.3 General LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 5.4 Fibred semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

6 Quantifiers and η-functions 149 6.1 Introduction and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

7 A General Theory of Structured Consequence Relations 155 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 7.2 A general notion of an unlabelled logical system . . . . . . . . . . . . . . . . . . . . 158 7.3 Structural connectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 7.4 A Case study: What is the logic of linear logic . . . . . . . . . . . . . . . . . . . . 175 7.5 Case study: What is negation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 7.6 Negation and structured consequence relations . . . . . . . . . . . . . . . . . . . . 187

8 Metalevel Features in LDS 195 8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 8.2 Classical logic as a metalanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 8.3 Linked predicate languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 8.4 The meta-language HFP: computational classical logic . . . . . . . . . . . . . . . . 206 8.5 How to give an LDS formulation for a logic . . . . . . . . . . . . . . . . . . . . . . 216 8.6 Labelling the metalevel (nested labelling systems) . . . . . . . . . . . . . . . . . . . 226

III Labelled Resource Logics 231

9 Resource Logics 233 9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2 Basic resource logics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 9.3 Peirce’s axiom and the restart rule . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

10 Proof Theory for Resource Logics 255 10.1 Concatenation logic and linear logic . . . . . . . . . . . . . . . . . . . . . . . . . . 255 10.2 Concatenation logic with additional connectives . . . . . . . . . . . . . . . . . . . . 268 10.3 Axiomatisation of W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 10.4 The logic of H-relevance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 10.5 Introducing deductive relevance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 10.6 The cut rule for deductive relevance . . . . . . . . . . . . . . . . . . . . . . . . . . 291 10.7 Negation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.8 Concatenation semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 10.9 Semi algebraic semantics for resource logics . . . . . . . . . . . . . . . . . . . . . . 311 10.10Metalevel features via connectives . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

11 Many Valued Logics 329 11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 11.2 Introducing Łukasiewicz many valued logics . . . . . . . . . . . . . . . . . . . . . . 334 11.3 Non linear Łukasiewicz many valued logics . . . . . . . . . . . . . . . . . . . . . . . 336 11.4 Finite many valued logics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 12 Extending the Curry-Howard Interpretation to LDS Systems 337

12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 12.2 Formulas as types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 12.3 Correspondence between terms and proofs . . . . . . . . . . . . . . . . . . . . . . . 343 12.4 Curry Howard interpretation for general LDS systems . . . . . . . . . . . . . . . . 343

IV Labelled Modal and Temporal Systems 345

13 Labelled Modal and Temporal Logics 347 13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 13.2 H-modal logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 13.3 Temporal labelled deduction systems . . . . . . . . . . . . . . . . . . . . . . . . . . 354 13.4 Different flows of time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 13.5 A theorem prover for modal and temporal logics . . . . . . . . . . . . . . . . . . . 367 13.6 Modal and temporal Herbrand universes . . . . . . . . . . . . . . . . . . . . . . . . 369 13.7 Tractability and persistence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373

V LDS Metatheory 377

14 Labelled Analytic Deduction 379 14.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 14.2 Tableaux for algebraic LDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380

14.2.1 Substructural consequence relations . . . . . . . . . . . . . . . . . . . . . . 382 14.2.2 Information frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 14.2.3 Labelled analytic deduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 14.2.4 Soundness and completeness of LKE_{S} . . . . . . . . . . . . . . . . . . . . . 403 14.2.5 Free variables in the labels . . . . . . . . . . . . . . . . . . . . . . . . . . . 405 14.2.6 Further examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406

15 Combining Labelled Deductive Systems 411 15.1 Introduction and motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 15.2 Case study 1: Combining modal logics . . . . . . . . . . . . . . . . . . . . . . . . . 419

15.2.1 Fibring and Dove-tailing modal fragments . . . . . . . . . . . . . . . . . . . 431 15.2.2 The disjunction property . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434

15.3 Case study 2: Intuitionistic modal logics . . . . . . . . . . . . . . . . . . . . . . . . 436 15.4 Algebraic fibring of logics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 15.5 Label dependent connectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

16 Abduction in Labelled Deductive Systems 451 16.1 Intuitive theory of labelled abduction . . . . . . . . . . . . . . . . . . . . . . . . . . 451 16.2 Labelled abductive mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 iv CONTENTS

Preface

This is the third intermediate working partial draft of a book intended for Oxford University Press.

Earlier drafts seem to have attracted great interest among the international community. The 6th Draft was published as a report by CIS, University of Munich in February 1991. LDS is used as a framework in three major European Esprit basic research actions and its development is supported by several national projects. I am therefore responding by publishing what I currently have written, as is, labelling it the third intermediate version in the form of a technical report. I am happy to include a discussion of algebraiclabelled deductive systems and a prototype semantics for LDS in the current version. Many colleagues have been asking what the Fibred semantics for LDS looks like.

This version is currently being expanded and adjusted and it is expected that the final draft will be double in size. I am therefore labelling it as Volume 1. Among the shortcomings of the present version are the following:

• Some topics have been further developed than others. This is a bit of a distortion which may create a feeling of lack of thematic flow.

• Some concepts need further refinement and adjustments. For example, label dependent skolemising is done in several contexts; modal logic, metabox environment, substructural logics etc. The principles are the same but the local definitions need to be made more compatible. This takes time, and comments from readers are welcome.

• Chapters 4–6 are less complete than others.

• The references to works by colleagues are not complete, and proper credit to other authors is yet to come.

• The final definition of what a logical system is and of what an LDS system is may change slightly, as well as the fine tuning of the fibred semantics.

I hope this third intermediate version will be of value and I would greatly appreciate reader’s comments and criticism and any corrections.

To the Reader

It is not easy writing this book. It is not only a matter of doing the research and trying to solve problems and seek the correct formulation of new concepts, it is also the problem of how to communicate and present the material to the reader. The framework of Labelled Deductive Systems is of interest to a large variety of readers. On the one extreme there is the pure mathematical logician who likes exact formal definitions and dry theorems, who probably specialises in one logic and methodology. On the other extreme there are also the practical consumers of logic, who like to absorb the intuitions and use labelling as needed to advance the cause of their aplications.

Between the two extremes there are the rest of the ‘logic and computation’ community. My problem is how to communicate with all these readers in one book.

My compromise was to divide the book into parts and thus allow for different emphasis in the presentation. The purpose of this overview to the reader is to explain what I had done.

The first step in reading this book is to understand its intuitive message. This message is very simple:

Traditional logics manipulate formulas. My message is to manipulate pairs; formulas and labels. The labels annotate the formulas. This sounds very simple but it turned out to be a big step, which makes a serious difference, like the difference between using one hand only or allowing for the coordinated use of two hands. Of course the idea has to be made precise, and its advantages and limitations clearly demonstrated. ‘Precise’ means a good mathematical definition and ‘advantages demonstrated’ means case studies and applications in pure logic and in AI.

To achieve that we need to address the following:

1. Define the notion of LDS, its proof theory and semantics and relate it to traditional logics.

2. Explain what form the traditional concepts of cut elimination, deduction theorem, negation, inconsistency, update, etc. take in LDS.

3. Formulate major known logics in LDS. For example, modal and temporal logics, substructural logics, default, nonmonotonic logics, etc.

4. Show new results and solve long-standing problems using LDS.

5. Demonstrate practical applications.

This is what I am trying to do in this book. Part I of the book is an intuitive presentation of LDS in the context of traditional current views of monotonic and nonmonotonic logics. It is less oriented towards the pure logician and more towards the practical consumer of logic. It has two tasks, addressed in two chapters. These are:

Chapter1: Formally motivate LDS by starting from the traditional notion of ‘What is a logical system’ and slowly adding features to it until it becomes essentially an LDS.

Chapter 2: Intuitively motivate LDS by showing many examples where labels are used, as well as some case studies of familiar logics (e.g. modal logic) formulated as an LDS.

The second part of the book presents the formal theory of LDS for the formal logician. I have tried to avoid the style of definition-lemma-theorem and put in some explanations. What is basically needed here is the formulation of the mathematical machinery capable of doing the following.

• Define LDS algebra, proof theory and semantics.

• Show how an arbitrary (or fairly general) logic, presented traditionally, say as a Hilbert system or as a Gentzen system, can be turned into an LDS formulation.

• Show how to obtain a traditional formulations (e.g. Hilbert) for an arbitrary LDS presented logic.

• Define and study major logical concepts intrinsic to LDS formalisms.

• Give detailed study of the LDS formulation of some major known logics (e.g. modal logics, resource logics) and demonstrate its advantages.

• Translate LDS into classical logic (reduce the ‘new’ to the ‘old’), and explain LDS in the context of classical logic (two sorted logic, metalevel aspects, etc).

Chapter 3: Give fairly general definitions of some basic concepts of LDS theory, mainly to cater for the needs of the practical consumer of logic who may wish to apply it, with a detailed study of the metabox system.

The presentation of Chapter 3 is a bit tricky. It may be too formal for the intuitive reader, but not sufficiently clear and elegant for the mathematical logician. I would be very grateful for comments from the readers for the next draft.

Chapter 4: Presents the basic notions of algebraic LDS. The reader may wonder how come we introduce algebraic LDS in chapter 3 and then again in chapter 4. Our aim in chapter 3 is to give a general definition and formal machinery for the applied consumer of logic. Chapter 4 on the other hand studies LDS as formal logics. It turns out that to formulate an arbitrary logic as an LDS one needs some specific labelling algebras and these need to be studied in detail (chapter 4). For general applications it is more convenient to have general labelling algebras and possibly mathematically redundant formulations (chapter 3). In a sense chapter 4 continues the topic of the second section of chapter 3.

Chapter 5: Present the full theory of LDS where labels can be databases from possibly another LDS. It also presents Fibred Semantics for LDS.

Chapter 6: Presents a theory of quantifers for LDS. The material for this chapter is still under research.

Chapter 7: Studies structured consequence relations. These are logical system swhere the structure is not described through labels but through some geometry like lists, multisets, trees, etc. Thus the label of a wff A is implicit, given by the place of A in the structure.

Chapter 8: Deals with metalevel features of LDS and its translation into two sorted classical logic.

Parts 3 and 4 of the book deals in detail with some specific families of logics. Chapters 9–11 essentailly deal with substructural logics and their variants.

Chapter 9: Studies resource and substructural logics in general.

Chapter 10: Develops detailed proof theory for some systems as well as studying particular features such as negation.

Chapter 11: Deals with many valued logics.

Chapter 12: Studies the Curry Howard formula as type view and how it compres with labelling.

Chapter 13: Deals with modal and temporal logics.

Part 5 of the book deals with LDS metatheory.

Chapter 14: Deals with labelled tableaux.

Chapter 15: Deals with combining logics.

Chapter 16: Deals with abduction.

This concludes the current version of Volume 1.

0 CONTENTS

Tentative chapters for Volume 2

• Default in LDS

• Decision problems

• Inconsistency and integrity

• Goal directed algorithmic proof

• Priority labelling

• Action and processes in LDS

• Practical reasoning and arugmentation

• Cut and other meta notions

• Labels and types

• Labels and situations

• Applications.

Part I

Chapter 1

Labelled Deduction in Context What is a Logical System?

1.1 Introduction

There is an increasing demand from computer science, linguistics and philosophy for a variety of logical systems. This is prompted by the extensive applications of logic in theoretical computer science, artificial intelligence and logic programming. In these fields there is a growing need for a diversity of semantically meaningful and algoirthmically presented logical systems which can serve various applications. Therefore renewed research activity is being devoted to analysing and tinkering with old and new logics.

This activity has produced a shift in the notion of a logical system. Traditionally a logic was perceived as a ‘consequence relation’ between sets of formulas. Problems arising in application areas have emphasized the need for consequnce relations between structures of formulas (such as multisets, sequences or even richer structures). This finer-tuned approach to the notion of a logical system introduces new problems which call for an improved general framework in which many of the new logics arising from computer science applications can be presented and investigated.

This chapter is a systematic study of the notion of what is a logical system. It will incrementally motivate a notion of logical system through the needs of various applications and applied logical activity, with a view of naturally leading to the notion of Labelled Deductive Systems, the topic of this book. We begin with the traditional concept of a logical system as a consequence relation between sets of formulas and slowly end up with the notion of a logical system as a Labelled Deductive System. Let us consider the initial position of a logical system as a consequence relation on sets of formulas. In this traditional view, any set theoretical binary relation of the form Δ |∼ Γ satisfying certain conditions (reflexivity, monotonicity and cut) is a logical system. Such a relation has to be mathematically presented. This can be done either semantically, or set theoretically or it can be algorithmically generated. There are several options for the latter. Generate first the {A | ∅ |∼ A} as a Hilbert system and then generate {(Δ, Γ) | Δ |∼ Γ} or generate the pairs (Δ, Γ) directly (via Gentzen rules) or use any other means (other proof theories)?

The concepts of a logical system, semantics and proof theory are not sharp enough even in the traditional literature. There are no clear definitions of what is a proof theoretic formulation of a logic (as opposed to, e.g. a decision procedure algorithm) and what is e.g. a Gentzen formulation. Let us try here to propose a working definition, only for the purpose of making the reader a bit more comfortable and not necessarily for the purpose of giving a definitive formulation of these concepts.

• We start with the notion of a well formed formula of the language L of the logic.

• A consequence relation is a binary relation on finite sets of formulas, Δ, Γ written as Δ |∼ Γ, satisfying certain conditions, namely reflexivity, monotonicity and cut.

• Such a relation can be defined in many ways. For example, one can list all pairs (Δ, Γ) such that Δ |∼ Γ should hold. Another way is to give Δ, Γ to some computer program and wait for an answer (which should always come).

• A semantics is an interpretation of the language L into some family of set theoretical structures, together with an interpretation of the consequence relation |∼ in terms of the interpretation. What I have just said is not clear in itself because I have not explained what ‘structures’ are and what an interpretation is. Indeed, there is no clear definition of what is a semantics. In my book [Gabbay, 1981], following Scott I defined a model as a function s giving each wff of the language a value in {0,1}. A semantics S is a set of models, and Δ |∼_{S} Γ is defined as the condition:

(∀s ∈ S)[∀X ∈ Δ(s(X) = 1) → ∃Y ∈ Γ(s(Y) = 1)]

• There can be algorithmic systems for generating |∼. Such systems are not to be considered ‘proof theoretical systems’ for |∼. They could be decision procedures or just optimal theorem proving machines.

• the notion of a proof system is not well defined in the literature. There are some recognised methodologies such as ‘Gentzen formulations’, ‘tableaux’, ‘Hilbert style’ but these are not sharply defined. For our purpose, let us agree that a proof system is any algorithmic system for generating |∼ using rules of the form:

{Δ_{1} |∼ Γ_{1}; …; Δ_{n} |∼ Γ_{n} \atop Δ |∼ Γ}

and ‘axioms’ of the form:

{∅ \atop Δ |∼ Γ}

The axioms are initial list of (Δ, Γ) ∈|∼ and the other rules generate more. So a proof system is a particular way of generating |∼. Note that there need not be structural requirement on the rule (that each involves a main connective and some subformulas, etc.). A Hilbert formulation is a proof system where all the Δ’s involved are ∅. A Gentzen formulation would be a proof system where the rules are very nicely structured (try to define something reasonable yourself, again, there is no clear definition!) A Gentzen system can be viewed as a higher level Hilbert system for the ‘connective’ ‘|∼’. A tableaux formulation is a syntactical countermodel construction relative to some semantics. We have Δ|∼Γ if the countermodel construction is ‘closed’, i.e. must always fail. It is also possible to present tableaux formulations for logics which have no semantics if the consequence |∼ and the connectives satisfy some conditions.

The central role which proof theoretical methodologies play in generating logics compells us to put forward the view that a logical system is a pair (|∼, S_{|∼}), where S_{|∼} is a proof theory for |∼. In other words, we are saying that it is not enough to know |∼ to ‘understand’ the logic, but we must also know how it is presented (i.e. S_{|∼}).

The next shift in our concept of a logic is when we observed from application areas whose knowledge representation involves data and assumptions the need to add structure to the assumptions and the fact that the reasoning involved relies on and uses the structure. This view also includes non-monotonic systems. This led us to develop the topic of this book, namely the notion of Labelled Deductive Systems and adopt the view that this is the framework for presenting logics. Whether we accept these new systems as logics or not, we must have a general framework able to represent them.

The real departure from traditional logics (as opposed to just giving them more structure) comes with the notion of aggregating arguments. Real human reasoning does aggregate arguments (circumstantial evidence in favour of A as opposed to evidence for ¬A) and what is known as quantitative (fuzzy) reasoning systems make heavy use of that. Fortunately LDS can handle that easily. The section concludes with the view that a proper practical reasoning system has ‘mechanisms’ for updates, inputs, abduction, actions, etc. as well as databases (theories, assumptions) and that a proper logic is an integrated LDS system together with a specific choice of such mechanisms.^{1}

1My personal view is that this is a logic, i.e. Logic = LDS system + several mechanisms. In AI circles this might

1.2 Logical systems as consequence relations

Traditionally, to present a logic L, we need to present first the set of well formed formulas of that logic. This is the language of the logic. We define the sets of atomic formulas, connectives, quantifiers and the set of arbitrary formulas. Secondly we mathematically define the notion of consequence, namely for a given set of formulas Δ and a given formula Q, we define the consequence relation Δ |∼L Q, reading ‘Q follows from Δ in the logic L’.

The consequence relation is required to satisfy the following intuitive properties: (Δ, Δ′ abbreviates Δ ∪ Δ′).

Reflexivity

Δ |∼ Q if Q ∈ Δ

Monotonicity

Δ |∼ Q implies Δ, Δ′ |∼ Q

Transitivity (Cut)^{2}:

Δ |∼ A; Δ, A |∼ Q imply Δ |∼ Q

The consequence relation may be defined in various ways. Either through an algorithmic system S_{|∼},or implicitly by postulates on the properties of |∼.

Thus a logic is obtained by specifying L and |∼. Two algorithmic systems S_{1} and S_{2} which give rise to the same |∼ are considered the same logic.

If you think of Δ as a database and Q as a query, then reflexivity means that the answer is yes to any Q which is officially listed in the database. Monotonicity reflects the accumulation of data, and transitivity is nothing but lemma generation, namely if Δ |∼ A, then A can be used as a lemma to obtain B from Δ.

The above properties seemed minimal and most natural for a logical system to have, given that the main applications of logic were in mathematics and philosophy.

.
Δ, Γ |∼ B

{Δ |∼ A; A |∼ Q \atop Δ |∼ Q}

be called an agent. Unfortunately, the traditional logic community are still very conservative in the sense that they have not even accepted non-monotonic reasoning systems as logics yet. They believe that all this excitement is transient, temporarily generated by computer science and that it will fizzle out sooner or later. They believe that we will soon be back to the old research problems, such as how many non-isomorphic models does a theory have in some inaccessible cardinal or what is the ordinal of yet another subsystem of analysis. I think this is fine for mathematical logic but not for the logic of human reasoning. There is no conflict here between the new and the old, just further evolution of the subject.

2There are several versions of the Cut Rule in the literature, they are all equivalent for the cases of classical and intuitionistic logic but are not equivalent in the context of this section. The version in the main text we call Transitivity (Lemma Generation). Another version is:

Γ |∼ A; Δ, A |∼ B This version implies monotonicity, when added to Reflexivity.

Another version we call Internal Cut:

Δ, A |∼ Γ; Δ |∼ A, Γ

.

Δ |∼ Γ A more restricted version of cut is Unitary Cut:

The above notion was essentially put forward by [Tarski, 1956] and is referenced to as Tarski consequence. [Scott, 1974], following [Gabbay, 1969], generalised the notion to allow Q to be a set of formulas Γ. The basic relation is then of the form Δ |∼ Γ, satisfying:

Reflexivity

Δ |∼ Γ if Δ ∩ Γ ≠ ∅

Monotonicity

\frac{Δ |∼ Γ}{Δ, Δ′ |∼ Γ}

Transitivity (cut)

\frac{Δ, A |∼ Γ; Δ′ |∼ A, Γ′}{Δ′, Δ |∼ Γ, Γ′}

Scott has shown that for any Tarski consequence relation there exists two Scott consequence relations (a maximal one and a minimal one) that agree with it (see my book [Gabbay, 1981]).

The above notions are monotonic. However, the increasing use of logic in artificial intelligence has given rise to logical systems which are not monotonic. The axiom of monotonicity is not satisfied in these systems. There are many such systems, satisfying a variety of conditions, presented in a variety of ways. Furthermore, some are proof theoretical and some are model theoretical. All these different presentations give rise to some notion of consequence Δ |∼ Q, but they only seem to all agree on some form of restricted reflexivity (A |∼ A). The essential difference between these logics (commonly called non-monotonic logics) and the more traditional logics (now referred to as monotonic logics) is the fact that Δ |∼ A holds in the monotonic case because of some Δ_{A} ⊆ Δ, while in the non monotonic case the entire set Δ is used to derive A. Thus if Δ is increased to Δ′, there is no change in the monotonic case, while there may be a change in the non monotonic case.

The above describes the situation current in the early 1980’s. We have had a multitude of systems generally accepted as ‘logics’ without a unifying underlying theory and many had semantics without proof theory. Many had proof theory without semantics, though almost all of them were based on some sound intuitions of one form or another. Clearly there was the need for a general unifying framework. An early attempt at classifying non-monotonic systems was [Gabbay, 1985]. It was put forward that basic axioms for a consequence relation should be reflexivity, transitivity (cut) and restricted monotonicity, namely:

Restricted Monotonicity

\frac{Δ |∼ A; Δ |∼ B}{Δ, A |∼ B}

A variety of systems seem to satisfy this axiom. Further results were obtained [Makinson, 1989, Makinson, 1993, Wójcicki, to appear, Wójcicki, 1989, Kraus et al., 1990, Lehmann and Magidor, 1992] and the area was called ‘axiomatic theory of the consequence relation’ by Wojcicki.^{3}

Although some classification was obtained and semantical results were proved, the approach does not seem to be strong enough. Many systems do not satisfy restricted monotonicity. Other systems such as relevance logic, do not satisfy even reflexivity. Others have richness of their own which is lost in a simple presentation as an axiomatic consequence relation. Obviously a different approach is needed, one which would be more sensitive to the variety of features of the systems in the field. Fortunately, developments in a neighbouring area, that of automated deduction, seem to give us a clue.

3In general, the exact formulations of transitivity and reflexivity can force some form of monotonicity.

1.3 Logical systems as algorithmic proof systems

The relative importance of automated deduction is on the increase, in view of its wide applicability. New automated deduction methods have been developed for non-classical logics, and resolution has been generalised and modified to be applicable to these logics. In general, because of the value of these logics in theoretical computer science and artificial intelligence, a greater awareness of the computational aspects of logical systems is developing and more attention being devoted to proof theoretical presentations. It became apparent to us that a key feature in the proof theoretic study of these logics is that a slight natural variation in an automated or proof theoretic system of one logic (say L_{1}), can yield another logic (say L_{2}).

Although L_{1} and L_{2} may be conceptually far apart (in their philosophical motivation, and mathematical definitions) when it comes to automated techniques and proof theoretical presentation, they turn out to be brother and sister. This kind of relationship is not isolated and seems to be widespread. Furthermore, non monotonic systems seem to be obtainable from monotonic ones through variations on some of their monotonic proof theoretical formulation.

This seems to give us some handle on classifying non-monotonic systems.

This phenomena has prompted us to put forward the view that a logical system L is not just the traditional consequence relation ⊢ (monotonic or non monotonic) but a pair (|∼, S_{|∼}), where |∼ is a mathematically defined consequence relation (i.e. the set of pairs (Δ, Γ) such that Δ |∼ Γ) satisfying whatever minimal conditions on a consequence one happens to agree to, and S_{|∼} is an algorithmic system for generating all those pairs [Gabbay, 1992a]. Thus according to this definition classical propositional logic |∼ perceived as a set of tautologies together with a Gentzen system S_{|∼} is not the same as classical logic together with the two valued truth table decision procedure T_{|∼} for it. In our conceptual framework,( |∼, S_{|∼}) is not the same logic as (|∼, T_{|∼}).

To illustrate and motivate our way of thinking, observe that it is very easy to move from T_{|∼} for classical logic to a truth table system T_{|∼}^{n} for Łukasiewicz n-valued logic. It is not so easy to move to an algorithmic system for intuitionistic logic. In comparison, for a Gentzen system presentation, exactly the opposite is true. Intuitionistic and classical logics are neighbours, while Łukasiewicz logics seem completely different. In fact for a Hilbert style or Gentzen style formulation, one can show proof theoretic similarities between Łukasiewicz’s infinite valued logic and Girard’s Linear Logic, which in turn is proof theoretically similar to intuitionistic logic.

This issue has a bearing on the notion of ‘what is classical logic’. Given an algorithmic proof system S_{|∼_{c}} for classical logic |∼_{c}, then (|∼_{c}, S_{|∼_{c}}) is certainly classical logic. Now suppose we change S_{|∼_{c}} a bit by adding heuristics to obtain S′. The heuristics and modifications are needed to support an application area. Can we still say that we are essentially in ‘classical logic? I suppose we can because S′ is just a slight modification of S_{|∼_{c}}. However, slight modifications of an algorithmic system may yield another well-known logic. In fact S′ may be linear logic. So is linear logic essentially classical logic, slightly modified, or vice versae!

We give an example from goal directed implicational logic. Consider a language with implication only. It is easy to see that all wffs A have the form A_{1} → (A_{2} → … → (A_{n} → q) …), q atomic, where A_{i} has the same form as A. We now describe a computation with database a multiset Δ of wffs of the above form and the goal a wff of the above form. We use the metapredicate Δ ⊢ A to mean the computation succeeds; i.e. A follows from Δ. Here are the rules:

1. Δ, q ⊢ q, q atomic and Δ empty. (Note that we are not writing A ⊢ A for arbitrary A. We are not writing a Gentzen system).

2. Δ ⊢ A_{1} → (A_{2} → … → (A_{n} → q) …) if Δ ∪ {A_{1}, …, A_{n}} ⊢ q. Remember we are dealing with multisets.

3. Δ′ = Δ ∪ {A_{1} → (A_{2} → … (A_{n} → q) …)} ⊢ q if Δ = Δ_{1} ∪ Δ_{2} ∪ … ∪ Δ_{n}, Δ_{i}, i = 1, …, n are pairwise disjoint and Δ_{i} ⊢ A_{i}.

The above computation characterises linear implication. If we relinquish the side condition in (3) and let Δ_{i} = Δ′ and the side condition (1) that Δ is empty, we get intuitionistic implication.

The difference in logics is serious. In terms of proof methodologies, the difference is minor. More examples in [Gabbay, 1992a, Olivetti and Gabbay, 1993].

1.4 Logical systems as algorithmic structured consequence relations

Further observation of field examples shows that in many cases the database is not just a set of formulas but a structured set of formulas. The most common is a list or multiset.^{4} Such structures appear already in linear and concatenation logics and in many non-monotonic systems such as priority and inheritance systems. In many algorithmically presented systems much use is made (either explicitly or implicitly) of this additional structure.

A very common example is a Horn clause program. The list of clauses

\begin{matrix}(a_{1}) & q \\ (a_{2}) & q → q \end{matrix}

does not behave in the same way as the list

\begin{matrix}(b_{1}) & q → q \\ (b_{2}) & q \end{matrix}

The query ?q succeeds from one and loops from the other.

It is necessary to formulate axioms and notions of consequence relations for structures. This is studied in detail in a later chapter. Here are the main features:

• Databases (Assumptions) are structured. They are not just sets of formulas but have a more general structure such as multisets, lists, partially ordered sets, etc. To present a database formally, we need to describe the structures. Let M be a class of structures (e.g. all finite trees). Then a database Δ has the form Δ = (M, f), where M ∈ M and f : M ↦ wffs, such that for each t ∈ M, f(t) is a formula. We assume the one point structure {t} is always in M. We also assume we know how to take any single point t ∈ M out of M and obtain (M′, f′), f′ = f ↾ M. This we need for some versions of the cut rule and the deduction theorem.

• A structured-consequence relation |∼ is a relation Δ |∼ A between structured databases Δ and formulas A. (We will not deal with structured consequence relations between two structured databases Δ|∼Γ here. More details are in the chapter on structured consequence relation.

• |∼ must satisfy the minimal conditions, namely

Identity

{A} |∼ A

Surgical Cut

{Δ |∼ A; Γ[A] |∼ B \atop Γ[Δ] |∼ B}

where Γ[A] means that A resides somewhere in the structure Γ and Γ[Δ] means that Δ replaces A in the structure. These concepts have to be defined precisely. If Δ = (M_{1}, f_{1}) and Γ = (M_{2}, f_{2}) then Γ[A] displays the fact that for some t ∈ M_{2}, f_{2}(t) = A. We allow for the case that M_{2} = f_{2} = ∅ (i.e. taking A out) We need a notion of substitution, which is a three place function Sub(Γ, Δ, t), meaning that for t ∈ M_{2} we substitute M_{1} in place of t. This gives us a structure (M_{3}, f_{3}) according to the definition of Sub. (M_{3}, f_{3}) is displayed as Γ[Δ], and Γ[∅] displays the case of taking A out. Many non monotonic systems satisfy a more restricted version of surgical cut:

4Classical logic cannot make these distinctions using conjunction only. It needs further annotation or use of predicates.

{Γ[∅/A] |∼ A; Γ[A] |∼ B \atop Γ[Γ[∅/A]] |∼ B}

Another variant would be

Deletional Cut

{Γ[∅/A] |∼ A; Γ[A] |∼ B \atop Γ[∅/A] |∼ B}

.

• A logical system is a pair (|∼, S_{|∼}), where |∼ is a structured-consequence and S_{|∼} is an algorithmic system for it.

Of course we continue to maintain our view that different algorithmic systems for the same structured consequence relation define different logics. Still although we now have a fairly general concept of a logic, we do not have a general framework. Monotonic and non-monotonic systems still seem conceptually different. There are many diverse examples among temporal logics, modal logics, defeasible logics and more. Obviously, there is a need for a more unifying framework. The question is, can we adopt a concept of a logic where the passage from one logic to another is natural, and along predefined acceptable modes of variation? Can we put forward a framework where the computational aspects of a logic also play a role? Is it possible to find a common home for a variety of seemingly different techniques introduced for different purposes in seemingly different intellectual logical traditions?

1.5 Logical systems as labelled deductive systems

To find an answer, let us ask ourselves what makes one logic different from another? How is a new logic presented and described and compared to another? The answer is obvious. These considerations are performed in the metalevel. Most logics are based on modus ponens anyway. The quantifier rules are formally the same anyway and the differences between them are metalevel considerations on the proof theory or semantics. If we can find a mode of presentation of logical systems where metalevel features can reside side by side with object level features then we can hope for a general framework. We must be careful here. In the logical community the notions of object-level vs metalevel are not so clear. Most people think of naming and proof predicates in this connection. This is not what we mean by metalevel here. We need a more refined understanding of the concept. There is a similar need in computer science.

We found that the best framework to put forward is that of a Labelled Deductive System, LDS, the topic of this book. Our notion of what is a logic is that of a pair (|∼, S_{|∼}) where |∼ is a structured (possibly non-monotonic) consequence relation on a language L and S_{|∼} is an LDS, and where |∼ is essentially required to satisfy no more than Identity (i.e. {A} |∼ A) and a version of Cut. This is a refinement of our concept of a logical system presented of the previous sections. We now not only say that a logical system is a pair (|∼, S_{|∼}), but we are adding that S_{|∼} itself has a special presentation, that of an LDS.

As a first approximation, we can say that an LDS proof system is a triple (A, L, M), where L is a logical language (connectives and wffs) and A is an algebra (with some operations) of labels and M is a discipline of labelling formulas of the logic (from the algebra of labels A), together with deduction rules and with agreed ways of propagating the labels via the application of the deduction rules. The way the rules are used is more or less uniform to all systems.

To present an LDS system we need first to define its set of formulas and its set of labels.

For example, we can take the language of classical logic as the formulas (with variables, constants and quantifiers) and take some set of function symbols on the same variables and constants as generating the labels. More precisely, we allow ordinary formulas of predicate logic with quantifiers to be our LDS formulas. Thus ∃xA(x, y) is a formula with free variable y and bound variable x. To generate the labels, we start with a new set of function symbols t_{1}(y), t_{2}(x, y), … of various arities which can be applied to the same variables which appear in the formulas. Thus the labels and formulas can share variables, or even some constants and function symbols. In other words in some applications it might be useful to allow some labels to appear inside formulas A. We can form declarative units of the form t_{1}(y) : ∃xA(x, y). When y is assigned a value y = a, so does the label and we get t_{1}(a) : ∃xA(x, a). The labels should be viewed as more information about the formulas, which is not coded inside the formula, (hence dependence of the labels on variables x makes sense as the extra information may be different for different x). A formal definition of an algebraic LDS system will be given later, meanwhile, let us give an informal definition of an LDS system and some examples which help us understand what and why we would want labels.^{5}

Definition 1.5.1 (Prototype AlgebraicLDS System) Let A be a first order language of the form A = (A, R_{1}, …, R_{k}, f_{1}, …, f_{m}) where A is the set of terms of the algebra (individual variables and constants) and R_{i} are predicate symbols (on A, possibly binary but not necessarily so) and f_{1}, …, f_{m} are function symbols (on A) of various arities. We think of the elements of A as atomic labels and of the functions as generating more labels and of the predicates as giving additional structure to the labels. A typical example would be (A, R, f_{1}, f_{2}) where R is binary and f_{1}, f_{2} are unary.

A diagram of labels is a set D containing elements generated from A by the function symbols together with formulas of the form ±R(t_{1}, …, t_{k}), where t_{i} ∈ D and R is a predicate symbol of the algebra.

Let L be a predicate language with connectives ♯_{1}, …, ♯_{n}, of various arities, with quantifiers and with the same set of atomic terms A as the algebra.

We define the notions of a declarative unit, a database and a label as follows:

1. An atomic label is any t ∈ A. A label is any term generated from the atomic labels by the symbols f_{1}, …, f_{m}.

2. A formula is any formula of L.

3. A declarative unit is a pair t : A, where t is a label and A is a formula.

4. A database is either a declarative unit or has the form (D, f, d, U), where D is a finite diagram of labels, d ∈ D is the distinguished label, and f is a function associating with each label t in D either a database or a finite set of formulas and U is the set of all terms. (Note that this is a recursive clause. We get simple databases if we allow f to associate with each label t only single or finite sets of formulas. Simple databases are adequate for a large number of applications.)

5The idea of annotating formulas for various purposes is not new. A R Anderson and N. Belnap in their book on Entailment, label formulas and propagate lables during proofs to keep track of relevance of assumptions. Term annotations (Curry–Howard formula as type approach) are also known where the propagation rules are functional application. The Lambek Calculus and the categorial approach is also related to labelling. The extra arguments sometimes present in the Demo predicate of metalogic programming are also a form of labelling. What is new is that we are proposing that we use an arbitrary algebra for the labels and consider the labelling as part of the logic.

We are creating a discipline of LDS and claiming that we have a unifying framework for logics and that almost any logic can be given an LDS formulation. We can give |∼ an LDS formulation provided |∼ is reflexive and transitive and each connective is either |∼ monotonic or antimonotonic in each of its arguments. See the chapter on structured consequence relation. We are claiming that the notion of a logic is an LDS. This is not the same as the occasional use of labelling with some specific purpose in mind. We are translating and investigating systematically all the traditional logical concepts into the context of LDS and generalising them.

I am reminded of the story of the Yuppy who hired an interior decorator to redesign his sitting room. After much study, the decorator recommended that the Yuppy needed a feeling of space and so the best thing to do is to arrange the furniture against the wall, so that there will be a lot of space in the middle. The cleaning lady, when she first saw the new design was very pleased. She thought it was an excellent idea. ‘Yes’, said the Yuppy, ‘and I paid £1000 for it’. ‘That was stupid’, exclaimed the cleaning lady, ‘I could have told you for free! I arrange the furniture this way every time I clean the floor!’.

Of course she is right, but she used the idea of the new arrangement only as a side effect!

Definition 1.5.1 is simplified. To understand it intuitively, think of the atomic labels as atomic places and times (top of the hill, Jan 1st 1992, etc.) and the function symbols as generating more labels, namely more times and more places (behind(x), day after(t) etc.). We form declarative units by taking labels and attaching formulas to them. Complex structures (D, f, d, U) of these units are databases. This definition can be made more complex. Here the labels are terms generated by function symbols from atomic labels. We can complicate matters by using databases themselves as labels. This will give us recursively more complex, richer labels. We will not go into that now. The first simplification is therefore that we are not using databases as labels. The second simplification is that we assume constant domains. All times and places have the same elements (population) in them. If this were not the case we would need a function U_{t} giving for each t ∈ D a set of terms, being the elements residing in t, and a database would have the form (D, f, d, U_{t}). Chapter 3 continues with the formal definition of LDS.

Example 1.5.2 Consider a language with the predicate VS900(x, t). This is a two sorted predicate, denoting Virgin airline flight London-Tokyo, where t is the flight date and x is a name of an individual. For example VS900 (Dov, 15.11.91) may be put in the database, denoting that Dov is booked on this flight scheduled to embark on 15.11.91.

If the airline practices overbooking and cancellation procedures (whatever that means), it might wish to annotate the entries by further useful information such as

• Time of booking;

• Individual/group travel booking;

• Type of ticket

• ± VIP.

This information may be of a different nature to that coded in the main predicate and it is therefore more convenient to keep it as annotation, or label. It may also be the case that the manipulation of the extra information is of a different nature to that of the predicate.

In general, there may be many uses for the label t in the declarative unit t : A. Here is a partial list

• Fuzzy reliability value:

(a number x, 0 ≤ x ≤ 1.) Used mainly in expert systems.

• Origin of A:

t indicates where the input A came from. Very useful in complex databases.

• Priority of A:

t can be a date of entry of updates and a later date (label) means a higher priority.

• Time when A holds:

(temporal logic)

• Possible world where A holds:

(modal logic)

• t indicates the proof of A:

(which assumptions were used in deriving A and the history of the proof). This is a useful labelling for Truth Maintenance Systems.

• t can be the situation and A the infon (of situation semantics).

Example 1.5.3 Let us look at one particular example, connected with modal logic. Assume the algebra A has the form (A, <), with a set of atomic labels A, no function symbols and a binary relation <. According to the previous definition, a diagram of labels, would contain a (finite) set D ⊆ A, together with a set of pairs of the form {t < s}, t, s, ∈ D. A database has the form (D, f, a), where D is a finite diagram and f is a function, say giving a formula A_{t} = f(t), for each t ∈ D.

The perceptive reader may feel resistence to the idea of the label at this stage. First be assured that you are not asked to give up your favourite logic or proof theory nor is there any hint of a claim that your activity is now obsolete. In mathematics a good concept can rarely be seen or studied from one point of view only and it is a sign of strength to have several views connecting different concepts. So the traditional logical views are as valid as ever and add strength to the new point of view. In fact, manifestations of our LDS approach already exist in the literature in various forms, they were locally regarded as convenient tools and there was not the realisation that there is a general framework to be studied and developed. None of us is working in a vacuum and we build on each others work. Further, the existence of a general framework in which any particular case can be represented does not necessarily mean that the best way to treat that particular case is within the general framework. Thus if some modal logics can be formulated in LDS, this does not mean that in practice we should replace existing ways of treating the logics by their LDS formulation. The latter may not be the most efficient for those particular logics. It is sufficient to show how the LDS principles specialise and manifest themselves in the given known practical formulation of the logic.

The reader may further have doubts about the use of labels from the computational point of view. What do we mean by a unifying framework? Surely a Turing machine can simulate any logic. Is that a unifying framework? The use of labels is powerful, as we know from computer science. Are we using labels to play the role of a Turing machine? The answer to the question is twofold. First that we are not operating at the metalevel, but at the object level, (see point 4 below). Second, there are severe restrictions on the way we use LDS. Here is a preview:

1. The only rules of inference allowed are the traditional ones, modus ponens and some form of introduction rule (deduction theorem) for implication, for example.

2. Allowable modes of label propagation are fixed for all logics. They can be adjusted in agreed ways to obtain variations but in general the format is the same. For example, it has the following form for implications: Let LDS_{↠} be a particular LDS system with labels A, and with ↠ a special implication characteristic to this particular LDS system. Then there exists a fixed set of labels Γ, which can characterise ↠ as follows. For any theory Δ (of labelled wffs) we have: Δ proves (A ↠ B) with label t iff ∀x ∈ Γ [B can be proved from Δ and x : A with label t ⊗ x], where Γ is a set of labels characterising the implication in that particular logic. For example Γ may be restricted to atomic labels only, or to labels related to t, or some other restrictions. The freedom that different logics have is in the choice of Γ and the (possibly not only equational) properties of ‘⊗’. For example we can restrict the use of modus ponens by a wise propagation of labels.

3. The quantifier rules are the same for all logics.

4. Metalevel features are implemented via the labelling mechanism, which is object language.

The reader who prefers to remain within the traditional point of view of:

assumptions (data) proving a conclusion

can view the labelled formulas as another form of data.

There are many occasions when it is most intuitive to present an item of data in the form t : A, where t is a label and A is a formula. The common underlying reason for the use of the label t is that t represents information which is needed to modify A or to supplement (the information in) A which is not of the same type or nature as (the information represented by) A itself. A is a logical formula representing information declaratively, and the additional information of t can certainly be added declaratively to A to form A′, however, we may find it convenient to put forward the additional information through the label t as part of a pair t : A.

Take for example a source of information which is not reliable. A natural way of representing an item of information from that source is t : A, where A is a declarative presentation of the information itself and t is a number representing its reliability. Such expert systems exist (eg Mycin) with rules which manipulate both t and A as one unit, propagating the reliability values t through applications of modus ponens. We may also use a label naming the source of information and this would give us a qualitative idea of its reliability.

Another area where it is natural to use labels is in reasoning from data and rules. If we want to keep track, for reasons of maintaining consistency and/or integrity constraints, where and how a formula was deduced, we use a label t. In this case, the label in t : A can be the part of the data which was used to get A. Formally in this case t is a formula, the conjunction of the data used. We thus get pairs of the form Δ_{i} : A_{i}, where A_{i} are formulas and Δ_{i} are the parts of the database from which A_{i} was derived.

A third example where it is natural to use labels is time stamping of data. Where data is constantly revised and updated, it is important to time stamp the data items. Thus the data items would look like t_{i} : A_{i}, where t_{i} are time stamps. A_{i} itself may be a temporal formula. Thus there are two times involved, the logical time s_{i} in A_{i}(s_{i}) and the time stamping t_{i} of A_{i}. For reasons of clarity, we may wish to regard t_{i} as a label rather than incorporate it into the logic (by writing for example A^{∗}(t_{i}, s_{i})).

To summarise then, we replace the traditional notion of consequence between formulas of the form A_{1}, …, A_{n} ⊢ B by the notion of consequence between labelled formulas

t_{1} : A_{1}; t_{2} : A_{2}, …; t_{n} : A_{n} ⊢ s : B

Depending on the logical system involved, the intuitive meaning of the labels varies. In querying databases, we may be interested in labelling the assumptions so that when we get an answer to a query, we can record, via the label of the answer, from which part of the database the answer was obtained. Another area where labelling is used is temporal logic. We can time stamp assumptions as to when they are true and query, given those assumptions, whether a certain conclusion will be true at a certain time. Thus the consequence notion for labelled deduction is essentially the same as that of any logic: given assumptions does a conclusion follow.

Whereas in the traditional logical system the consequence is defined using proof rules on the formulas, in the LDS methodology the consequence is defined by using rules on both formulas and their labels. Formally we have formal rules for manipulating labels and this allows for more scope in decomposing the various features of the consequence relation. The meta features can be reflected in the algebra or logic of the labels and the object features can be reflected in the rules of the formulas. Recall, however, that there are severe restrictions on how we use LDS rules, as we discussed earlier.

The notion of a database or of a ‘set of assumptions’ also has to be changed. A database is a hierarchical configuration of labelled formulas. The configuration depends on the labelling discipline. For example, it can be a linearly ordered set {a_{1} : A_{1}, …, a_{n} : A_{n}}, a_{1} < a_{2} < … < a_{n}. The proof discipline for the logic will specify how the assumptions are to be used. See for example the logic programming case study.

We summarise our current position on what is a logical system. A logical system is a pair (|∼, LDS_{|∼}), where |∼ is a consequence relation between labelled databases Δ and declarative units t : A and LDS_{|∼} is an algorithmic system for |∼.

We need one more component to the notion of a logical system. In previous subsections, a logical system was presented as (|∼, S_{|∼}), where |∼ is a structured consequence relation satisfying Identity and Surgical Cut and S_{|∼} is an algorithmic proof system for computing |∼. We are now saying that we need to refine this notion and deal with Labelled Deductive Systems, where |∼ is a consequence relation between labelled databases Δ and declarative units t : A and that S_{|∼} is replaced by some specific LDS discipline (algorithm) for computing the above. We need to be able to retrieve the old notion i.e. (|∼_{1}, S_{|∼_{1}}) from the new notion (|∼_{2}, LDS_{|∼_{2}}). In other words, we must add into LDS the capability of proving and reasoning without labels. To achieve this we can first reason with labels and then strip the labels and give a conclusion without labels. The additional algorithm which we can use to strip the labels is called flattening. Thus a labelled theory Δ may prove t_{i} : A and s_{i} : ¬A, with many different labels t_{i} and s_{i}, depending on various labelling considerations and proof paths. The flattening algorithm will allow us to decide whether we flatten the pair of sets ({t_{i}}, {s_{i}}) to + or − i.e. whether we say Δ|∼A or Δ|∼¬A. In fact, the flattening rules simply allow us to simplify the labels. They have the general form:

t_{1} : A; t_{2} : A; …, t_{m} : A ⊢ s : A

or if we have negation

t_{i} : A; t′_{j} : ¬A|∼s : ±A

See also Definition 3.2.8. See Example 2.3.1 for a clear cut case where only flattening is required.

Flattening can also be used during the deduction in an interlaced mode. For example, if the labels represent moments of time or priorities, we may say the value is + if max {t_{i}} ≥ max{s_{j}}, or we may interlace the flattening with the deduction itself, by flattening during the dedution before each proof step is taken. A careful inductive definition is neded. We need the notion Δ ⊢_{n} t : A maning t : A can be proved from Δ in at most n steps. We cannow flatten the sets {t | Δ ⊢_{n} t : A} and {s | Δ ⊢_{n} s : ¬A} before we continue the proof. See Example 1.5.4 below.

Thus, given a structured theory Δ (without labels) and a candidate A, we can have the following procedure, using LDS, of deciding whether Δ|∼?A.

• Label the elements of Δ with completely different atomic labels, representing existing structure in Δ.

• Use the LDS machinery to deduce all possibilities Δ|∼t_{i} : A and Δ|∼s_{i} : ¬A.

• Flatten and get A (or interlace with flattening and get A).

Example 1.5.4 (Interlacing) The database has

\begin{matrix}t_{1} : A \\ t_{2} : ¬A \\ t_{3} : ¬A → B \\ t_{4} : A → ¬B. \end{matrix}

Assume priority is t_{1} < t_{2} < t_{3} < t_{4}, and assume a flattening process which gives higher priority rules superiority over low priority rules and similarly for facts but gives lexicographic superiority for rules over facts. Thus t_{4}t_{1} is stronger than t_{3}t_{2}. If we deduce and then flatten, we get

\begin{matrix}t_{4}t_{1} : ¬B \\ t_{3}t_{2} : B \end{matrix}

The flattening process would take ¬B.

If we pursue an interlace argument, we first flatten the premisses and take ¬A and then perform the modus ponens and get B.

1.6 Aggregated systems

So far all our logical systems either proved or not proved a conclusion A. There was no possibility of aggregating arguments in favour of A as against arguments in favour of negation of A. The lack of aggregation is a basic characteristic which currently separates the symbolic qualitative school of reasoning from the numerical, quantitative one. We can view thenotion of flattening of the previous section as a special form of aggregation; a noncompromising, all or nothing, aggregation.

There are many systems around (many are recognised as probabilistic systems, expert systems, fuzzy systems) which attach numerical values to assumptions and rules, use various functions and numerical procedures to manipulate these values and formulas and reach conclusions.

In many cases we get systems which give answers which seem to make sense, which can be very successfully and profitably applied but which cannot be recognised or understood by traditional logic. The main feature common to all of these numerical systems (which is independent of how they calculate and propagate their values) is that their ‘proofs’ aggregate. They can add the numbers involved and thus aggregate arguments. The spirit is: Five good rumours are better than one proof.

To further illustrate, consider the following example

Example 1.6.1 (Aggregation and interlacing) The assumptions are:

t_{1} : A → C
t_{2} : B → C
t_{3} : A
t_{4} : B
t_{5} : D → ¬C
t_{6} : D

Here we can conclude C in two different ways and conclude ¬C in one way.

Non monotonic systems like defeasible logic will not allow us to draw any conclusion unless one rule defeats all others. If we had a numerical evaluation of the data, say t_{i} are numbers in [0 1], then we could aggregate our confidence in the conclusion. Thus we get:

\begin{matrix}(t_{1} · t_{3} ⊎ t_{2} · t_{4}) : C \\ t_{5} · t_{6} : ¬C \end{matrix}

the two numbers can be compared and a conclusion reached.

If we operate in the context of LDS, we can use the labels to aggregate arguments. Any conclusion is proved with a label indicating its proof path. These can be formally (algebraically) added (aggregated) and an additional process (called flattening) can compare them. See Examples 4.1.1 and 2.3.12.

In consequence relation terms, the property of aggregation destroys the cut rule. The reason is as follows:

Assume Δ, A |∼ B. This now means that the aggregated proofs in favour of B are stronger than the aggregated proofs in favour of ¬B. Similarly Γ|∼A would mean the balance from Γ is in favour of A.

If we perform the cut we get

Δ, Γ |∼?B

Δ and Γ may interact, forming new additional proofs of ¬B, which outweigh the proofs for B.

Cut is a very basic rule in traditional logical systems and can be found in one form or another in each one of them. Thus it is clear that aggregation of arguments is a serious departure from traditional formal logic. Yet, it cannot be denied. In practical reasoning we do aggregate arguments and so logic, if it is to be successfully applied and be able to mirror human reasoning, must be able to cope with aggregation. Classical logic, if it is to be a universal language, must also be able to deal naturally with aggregation.

One form of cut is still valid. The unitary cut.

{Δ |∼ A; A |∼ B \atop Δ |∼ B}

This holds because there is nothing for Δ to interact with.

We thus require from our reasoning system that it satisfy only Identity (A|∼A) and Unitary Cut.

To show how real and possibly destructive aggregation can be, consider the example of Prince Karlos and Princess Laura.

Example 1.6.2 The prince and princess are separated. Both made it clear to the press that no third parties were involved and the separation was purely due to a personality clash. However, the editor Mr Angel of the Daily Tabloid, thought otherwise. First he observed that after her separation the princess moved to a house very near the Imperial Institute of Logic, Language and Computation. This in itself did not mean much, because both the Institute and the residence were in the centre of town. However, Mr Angel further found out that in the past two years, whenever the princess went on a European holiday, there was an Esprit project meeting in the same hotel, and surprisingly all projects involve a certain professor from the Institute. Again, this could be a coincidence, because it is a well known fact that Esprit project consortia find it most inspiring to be in the most expensive holiday resorts in Europe and it is equally well known that certain dynamic professors participate in many such projects.

However the plot thickens when the princess, as part of her general social activity seems to actively support the new logics for computation. This could also be a coincidence because after all, this subject is going to transform the nature of our society. The various little arguments do seem to be aggregating, though not conclusively enough to risk an article in such a responsible paper as the Daily Tabloid. The situation changed when it became known that the princess actively supports Labelled Deductive Systems and the Universality of classical logic. Under this aggregation of arguments an obvious conclusion could be drawn!

1.7 Practical reasoning systems

Our discussion so far generalised the notion of a deductive system; namely, given a database Δ and a formula Q, we ask the basic question, does Δ prove Q? The various concepts we studied had to do with what form do Δ and Q take and what kinds of consequence relations |∼ and algorithmic systems S_{|∼} are involved.

In practical reasoning systems, the deductive question is but one of many which interest us. Other operations such as updating, abduction, action, explanation are also involved. If we rethink of Q as an input, we can partially list the kind of of operations which may be involved. These operations are performed using algorithms which accompany the deductive component. We refer to them as mechanisms.

• The input Q is a query from Δ. We are interested in whether Δ |∼ Q and possibly ask what proofs are available.

• The input Q is an update. We want to insert Q into Δ to obtain Δ′. We may possibly have to deal with inconsistency and restructuring of Δ.^{6}

• The input Q is an abductive stimulus (goal). We are interested in Δ′ such that Δ + Δ′ |∼ Q. Where + is a symbol (to be precisely defined) which ‘adds’ or ‘joins’ Δ and Δ′ to ‘combine’ their declarative information.

The + operation may or may not be the same as update. The abductive question is to find (possibly the minimal) Δ′ which helps prove the input.^{7}

• The input Q may be a stimulus for action on the database outputting a new database or outputting an explanation or any other output of interest.

The new possibilities of a formula Q interacting with a database Δ, (via action or abduction or other mechanisms) allow for a new way of answering queries from Δ. To see this, consider the query Δ?Q. In the declarative aspect, we want an answer, namely we are asking whether Δ|∼Q. This can be checked via S_{|∼},or semantically. Q does not act or change Δ in any way. In the interactive case, we trigger an action. Q acts on Δ to produce a new Δ′. Q is read imperatively.

6Such a view has been presented in Chapter 13 of Bob Kowalski’s book [1979]. The systematic study of updates and theory change was initiated in [Alchourrón et al., 1985, Gärdenfors, 1988].

7For a given system (|∼, S_{|∼}), the abductive mechanism is usually dependent on S_{|∼}, the particular algorithmic proof system involved. Different applications might require different abductive procedures.

We can write Δ!Q to stress this fact. The result of the interaction is Δ′. Thus Δ!Q = Δ′. Thus given a Δ and a Q, we have two options. We can ask whether Δ |∼ Q holds, (written Δ?Q, with |∼ implicit) or we can let Q act on Δ, written Δ!Q, where ! denotes the action. When an action ! is given, it is possible to derive a new consequence relation |∼ dependent on the action ! (really we should write |∼_{!}). The new |∼ is defined by Δ |∼ Q iff Δ!Q = Δ. This view was particularly put forward by F. Veldman and pursued by J. van Benthem.

Let us clearly state our current view on the question of what is a logical system:

Definition 1.7.1 (Current tentative view of a logical system) A logical system has the form (|∼, S_{|∼}, S_{abduce}, S_{update}, …) where |∼ is a labelled consequence relation, S_{|∼} is a Labelled Deductive System with Flattening procedures and S_{abduce}, S_{update} etc are mechanisms which are dependent on (make use of ) S_{|∼}.

The above definition of a logical system is really a definition of an agent (in the AI sense). Thus we are refining the notion of a logic to be a system more and more like a practical reasoner,or an agent. In fact, research in the applications of logic in AI has concentrated mainly on the study of essentially logical systems modelling various pure logical aspects of an agent in an application area. There is less emphasis on integrated combined systems, modelling how the agent uses these pure aspects in an interleaved and combined way. Yet, this integrated use is the dominant feature in any application area, the feature which gives the agent what we perceive as intelligence. Our view is to consider such systems as logics, and bring into the realm of logic the methodology of integrating various human reasoning mechanisms.

To focus our ideas, we start with an example, involving integrated practical reasoning.

Imagine a situation where a Head of Department goes to a member of staff trying to persuade him to teach a course which is not exactly in his area. Say the fellow is a logician and the course is operating systems. The Head of Department will explain the situation in the department, pointing out the shortage of staff, financial cutbacks, and argue that everyone must teach more etc. He may use emotional and other arguments, saying things like: think of the challenge! I cannot rely on someone else for this important course! You don’t want to antagonise the dept! etc. The member of staff may put forward his general dissatisfaction with his promotion etc. At the end a deal may be struck. This is a typical reasoning interactive process involving many types of databases, beliefs, processes, views and logics. To understand human practical reasoning we must understand and model such interactions.

Our strategy is to build a complex formal model for describing human practical reasoning interactions, show the model is plausible and highlight the role of multilogic integration and combination in such a model. The emphasis is not on the actual practical modelling of human reasoning, (which is a major serious task) but on showing how systematic combinations of logical mechanisms can produce an intelligent agent. Thus, for example, we an try and construct an overall system capable of formalizing the above interaction. We shall describe below the basic components we expect such a system to have. Thus our new notion of a logical system must be capable of defining the following central concepts:

1. Declarative Unit This concept corresponds to the notion of a formula in classical logic. It is supposed to be the basic information units of our system. It is a labelled formula in Gabbay’s Labelled Deductive System ; a situation and an infon in Barwise and Perry Situation Theory; a node and a formula in an inheritance network; a world and a modal formula in a semantically presented modal logic; a formula and a fuzzy value in fuzzy logic and so forth.

Formally a declarative unit is a pair δ = (t : A), where A is a formula in some logic L and t a term in some algebra A. The intended meaning is that t gives more information about A. There are various possibilities for what this information can be. It can be priority, it can indicate the source of A, or it can code the proof of A.

2. Databases This concept corresponds to a theory (set of formulas) in classical logic. In general it is some structure (constellation, network) of declarative units. It is supposed to be, in each logic, the architecture of how several declarative units are put together to form a more complex data structure. In linear logic it is a multiset of formulas. In the Lambek calculus it is a list of formulas.

It is reasonable to require that a single declarative unit counts as a singleton database. We also allow ∅, the empty database.

3. Input This notion is a function associating with each database Δ and a declarative unit δ, a new database, Δ′ = Input (Δ, δ), the result of ‘adding δ to Δ.

In classical logic there is only one input function, Δ = Δ ∪ {δ}. Same in linear logic, where the union is a multiset union. In other logics, where databases are more complex structures, there can be a variety of input functions. For example in the Lambak calculus, where a database is a list of formulas, there are two obvious input functions, appending δ either to the end or to the beginning of the list. It is reasonable to assume that the Input Function, is also defined for databases, i.e. Input (Δ_{1}, Δ_{2}) is meaningful and it is not necessarily commutative.

4. Integrity (Consistency) Given a database Δ we assume we have a notion of Integrity. Certain databases are not wanted (they do not satisfy integrity). This notion is not exactly the same as consistency. It generalises consistency. In classical logic inconsistent databases can prove ⊥ and so we can say that we do not want them. But we can equally say databases are not wanted if they for example list people’s addresses without their telephone numbers. These are consistent but do not satisfy integrity (constraints).

5. Update Updating a database is a function Update (Δ, δ) = Δ′, inputting δ into Δ and obtaining a Δ′ whose integrity is maintained. Input (Δ, δ) may not satisfy integrity. Update (Δ, δ), will yield a different theory which does satisfy integrity. Algorithmic versions of this function could conceivably contain a truth maintenance component which restores integrity.

There can be several possible update functions for a logic. We may or may not stipulate some minimal conditions on the update function.

6. Consequence This is a binary relation between databases of the form Δ_{1} ⊢ Δ_{2} . Its meaning can vary from logic to logic and it must satisfy some minimal conditions. It may be only partially presented

• Hilbert consequence has the form ∅ ⊢ δ

• Singleton Tarski consequence has the form δ_{1} ⊢ δ_{2}

• Structured (Tarski) consequence has the form Δ ⊢ δ

• Structured (Scott) consequence has the general form Δ_{1} ⊢ Δ_{2}

In practice one version of the consequence may be presented in some (axiomatic or proof theoretic or semantical) manner, (e.g. Hilbert,) and other forms, (e.g. Tarski,) may or may not be definable from it.

For our purpose, we insist that the consequence relation be presented through an algorithmic proof procedure for determining, for arbitrary Δ and δ, whether Δ ⊢ δ holds or not. The procedure may succeed, fail or loop on each input. We refer to such a consequence relation as an algorithmic consequence.

7. Abudction Abduction is an algorithm which is defined on top of a consequence relation ⊢. The definition of the abduction algorithm may possibly make use of the particular algorithmic proof procedure which presents ⊢. The abductive algorithm defines a function, Abduce (Δ, δ) = Δ′, such that when Δ′ is input into Δ, the goal δ succeeds. In symbols

• Abduce(Δ, δ) = ∅ when Δ ⊢ δ.

• Abduce(Δ, δ) = Δ′, where Δ′′ = input(Δ, Δ′) and Δ′′ ⊢ δ.

We can assume that the abduction algorithm we are dealing with is particularly convenient, for example, assume that it produced only labelled conjunctions of atoms.

Abduction is used in finding what is needed to have goals succeed. Since goals represnt what the agent ‘wants’, abduction procedures may be involved in causing actions.

8. Actions We need notation for actions. This is comprised of atomic actions (a set Π_{0} of atomic actions) and some algebraic operations giving new actions from old, generating the family Π of all actions. The theory of action is complex, involving post-conditions and pre-conditions. We assume the action ‘a’ is semantics, in the sense that it operates on models of the world. [Note, however, that we did not igve a notion of a model or semanitcs forthe structured databases proposed above.] a is controlled by a precondition α_{a}, and when applied to a model satisfying α_{a}, a post condition β_{a} is guaranteed to hold.

a can be understood as operating on theories as well as follows.

Let Δ be a theory. Let {m_{1}, m_{2}, …} be its models. For each m_{i}, let m_{i}^{a} be m_{i} if α_{a} does not hold and let m_{i}^{a} be the result of applying a to m_{i} if α_{a} does hold. Let Δ_{a} be the theory of the models {m_{1}^{a}, m_{2}^{a}, …}. Then Δ_{a} can be taken to be the result of applying a to Δ. When dealing with labelled formulas and databases, it is possible to have (in many cases) a δ_{a} = (t_{a} : E_{a}) such that Δ_{a} = Update (Δ, δ_{a}). i.e. there is a syntactical representation of the action a.

Thus the labels may allow us to present general actions as syntactical operations on databases. The action a can be represented by a labelled wff t_{a} : E_{a} and the result of the action given a database Δ can be described by Δ_{a} = Update_{Π}(Δ, t_{a} : E_{a}), where Update_{Π} is the input function associated with the action family Π.

We can assume for simplicity that E_{a} is a conjunction of atoms or their negations.

This approach allows us to represent the fact that in an interaction between two people, the same action ‘a’ may be understood differently by different persons and may have a different update value. If ‘a’ is the action then δ_{a}^{i} = (t_{a}^{i} : E_{a}^{i}) may be what person i ‘understands’ of it and Update_{Π}^{i}(Δ_{i}, δ_{a}^{i}) is the resulting updated theory.

9. Goals, desires and wants Each person or ‘logic’ has goals he wants to achieve or ‘wants’. We represnt them as a sequence (g_{1}, …, g_{n}), each g_{i} is a declarative unit. The interpretation is that the person will take actions to create a situation (database) from which all goals succeed (i.e. follow as consequence).

Having now presented the basic components of a ‘logic’ or ‘agent’, we can describe how we view the ‘interaction’ between the two agents; the Head of Department and the member of staff. In the context of our model of the interaction, we will identify the role of the various non monotonic mechanisms described in this volume.

The following are some components involved in the interaction:

• We need two notions of time, external time (day, hour, minute, etc.) and cycle time, the counting of the moves by the agents. So, for example, agent 1 may ask a query at time t_{1} which causes a reply at time t_{2} > t_{1}. The external time is the t_{1}, t_{2} axis while the cycle time is {1, 2, 3, …}.

• Assume that at step n, time t_{n}, agent 1 makes a move. What he might do is to ask goal g from his database Δ_{n}^{1} at step n. Assume g does not succeed from Δ_{n}^{1}. He can then ask the abduction mechanism to find what input δ is needed to make g succeed. Thus

δ = Abduce (Δ_{n}^{1}, g).

δ cannot just be put into the database since the database is expected to be related to the real world. Agent 1 looks at his stock of actions and possibly finds an action ‘a’ whose precondition succeeds from his database Δ_{n}^{1}, and whose post condition is δ. Note that for simplicity we assumed that abductions and conditions are conjunctions of literals. Agent 1 executes this action. Agent 2 also updates his database according to what he sees of action a.

• Since the databases represent parts of the world, there are other things that may happen during the interaction. An external input may be asked or information exchanged.

The following lists the possible occurrrences at step n.

1. Agent 1 asks a query from agent 2.

2. Agent 1 takes an action to satisfy a goal.

3. An external input δ_{i} arrives for agent i.

4. Agent 1 gives information δ_{1} to agent 2 who inputs it.

Obviously the input of data is a major activity for our agents. We view this process as syntactical model building. The following is a more detailed analysis:

• Agent 1 observes the real world and inputs data of the form t : E.

• Another agent proforms an action a and agent 1 interprets the action his own way and inputs some resulting data of the form t_{a}^{1} : E_{a}^{1}.

• Agent 1 receives a direct input t^{2} : E^{2} from agent 2.

The above are external inputs. They can be compared with internal updates such that arise from abduction.

How does non-monotonicity arise in such a set up? Suppose agent 1 gets input t : E. This input arises in an active environment. The agent understands the environment and can nonmonotonically assume and add a further input s : B, which accompanies t : E. For example, a used car salesman seeing a man looking around his parking lot examining prices can assume that he has a potential customer. Of course it may be the local printing shop emloyee examining how the price stickers were printed. However, we do have the phenomena in general that more input is generated by such non-monotonic principles. I will call this phenomena conduction (from peoples conduct).

t : E yields s : B by conduction.

This is not just default, although it may technically embrace it. It includes any principles which allow for more data to be put in in addition to any input.

Thus a conduction rule looks like this:

• If Δ ⊢ α : A and t : E is received as input and s : B is consistent (with Δ and t : E) then add s : B to the input.

It would be instructive to construct a logical system in the sense of the above discussion. We now incrementally present one.

Example 1.7.2 (Minimal implication) Our starting point is minimal propositional implicational logic with a constant for falsity. The langauge contains atomic propositions {p, q, r, …} and the implication connective {→} together with the falsity constant {⊥}. As a Hilbert system, minimal logic satisfies the following schemas (see [Gabbay, 1981]):

• A → (B → A)

• (A → (B → C) → ((A → B) → (A → C))

and the rule of modus ponens

• {A; A → B \atop B} .

The following theorems can be proved • ⊢ A → A

• ⊢ (A → (B → C)) → (B → (A → C)).

A consequence relation |∼_{m} can be defined by:

• A_{1}, …, A_{n}|∼_{m}B iff (def ) ⊢ A_{1} → (A_{2} → … → (A_{n} → B) …)

Note that in minimal logic ⊥ does not imply anything in particular, just itself. If we add the axiom schema ⊥ → A, we get intuitionistic logic based on the connectives {→, ⊥}.

The following additional Hilbert axioms yield full minimal logic with ∧ and ∨.

• A → (B → A ∧ B)

• A ∧ B → A

• A ∧ B → B

• (A → C) → ((B → C) → (A ∨ B → C))

• A → A ∨ B

• B → A ∨ B

We now have defined |∼_{m}, the consequence relation of our logic. We proceed to define S_{m} (actually S_{|∼_{m}}), an algorithmic proof system for |∼_{m}. There are many options to choose from, such as Gentzen systems, Tableaux, Term Translation into Classical logic, etc. We choose a goal directed formulation.

Definition 1.7.3 (Goal directed algorithm for minimal consequence) 1. First note that any formula B of the language (without ∨ and ∧) has the form B = (B_{1} → (B_{2} → … → (B_{n} → q) …), where q is atomic and B_{i} has the same form as B. q is called the head of B and {B_{i}} is the body. If we allow ∧ in the language, then every formula is equivalent to a set of wffs of the above form. This holds because of the following equivalences in minimal logic:

\begin{matrix}A ∧ B → C and A → (B → C) \\ A → (B ∧ C) and (A → B) ∧ (A → C) \end{matrix}

2. A theory Δ is a list of wffs of the logic.

3. We define the following metapredicates:

• Δ?A = 1, reading ‘the goal A succeeds from the theory Δ’.

• Δ?A = 0 reading ‘the goal A finitely fails from Δ’.

The definition is as follows:

(a) Δ?q = 1, for q atomic if q is listed in Δ.

(b) Δ?q = 0, for q atomic if q is not the head of any element in Δ.

(c) Δ?A_{1} → (… (A_{n} → q) …) = 1 (resp. 0) if Δ ∗ (A_{1}, …, A_{n})?q = 1 (resp. 0) where ∗ is concatenation.

(d) Δ?q = 1 if for some B = (B_{1} → … → (B_{n} → q) …) in Δ we have that Δ?B_{i} = 1, for i = 1, …, n.

(e) Δ?q = 0 if for each B in Δ of the form B_{1} → (B_{2} … (B_{n} → q) …) there exists an 1 ≤ i ≤ n such that Δ?B_{i} = 0.

Theorem 1.7.4 (Completeness of algorithm) A_{1}, …, A_{n}|∼_{m}B iff (A_{1}, …, A_{n})?B = 1

Proof. See [Gabbay, 1992a]. ■

To obtain a proper algorithm for S_{|∼_{m}}, we need to specify exactly how we compute Δ?Q. It is convenient for the purpose of ease of control to let the goal be a list of formulas Γ, as in some Prolog interpreters. Thus clause 3d of Definition 1.7.3 will now read:

Δ?q ∗ Γ = 1 if for some B = (B_{1} → (… → (B_{n} → q) …) in Δ we have Δ?(B_{1}, …, B_{n}) ∗ Γ = 1.

We can agree to search the list Δ top down and agree where to continue the search when starting a new goal in the list of goals. The policy of some Prolog interpreters is always to start the search at the top of the database list Δ. This would yield a precise algorithm but may cause loops. For example (q → q)?q will loop. With a loop checker, however, we get decidability in P -space.

We now proceed with the incremental definition of our logic. We need next the notion of a database. This will contain integrity constraints and some clauses as data. The data is divided into two parts, permanent data and added hypothetical data. (e.g. to show A → B, we hypothetically assume A and try to show B.) The next definition does the job.

Definition 1.7.5 (The basic logic) 1. A formula of the form B_{1} → (… → (B_{n} → ⊥) …) where ⊥ does not appear in B_{i}, i = 1, …, n, is called an integrity constraint.

2. A formula in the pure → fragment (i.e. without ⊥) is called a clause.

3. A simple database is a concatenation of three (possibly empty) lists of formulas of the form Δ = Δ_{I} ∗ Δ_{P} ∗ Δ_{A}, where Δ_{I} is a list of integrity constraints, Δ_{P} is a list of clauses, called protected clauses (the significace of Δ_{P} will emerge later when we update), and Δ_{A} is another list of clauses called the additional clauses.

4. A database Δ is inconsistent if Δ?⊥ = 1. Note that Δ is also a theory, so Δ?⊥ can be computed.

Definition 1.7.6 (Updates) 1. Let Δ = Δ_{I} ∗ Δ_{P} ∗ Δ_{A} be a consistent database with Δ_{A} = (C_{1}, …, C_{m}) and let Q be a clause. We define the update of Δ by Q, denoted by Δ!Q, to be the following database Δ′.

• Δ′ = Δ if Δ_{I} ∗ Δ_{P} ∗ (Q) is not consistent.

• Otherwise, let Δ′ be Δ_{I} ∗ Δ_{P} ∗ (C_{i}, C_{i+1}, …, C_{m}, Q) where i is the least number ≥ 1 such that the above theory is consistent.

An update Δ!Q insists, if possible, on putting Q into Δ and maintains consistency by taking out from Δ those assumptions that are unprotected (i.e. in Δ_{A}) and old (i.e. earlier in the list Δ_{A}). If Q is inconsistent with Δ_{I} ∗ Δ_{P}, then and only then do we reject the input.

In Definition 1.7.3, the algorithm S_{|∼_{m}} for computing Δ?A → B is based on the deduction theorem and the query Δ?A → B is reduced to Δ ∗ (A)?B. In minimal logic, where Δ is a theory, Δ ∗ (A) is always consistent, because we do not mind deriving ⊥, and there is no notion of inconsistency. When we move to the notion of databases, integrity constraints and clauses, databases can be inconsistent and the old reduction of Δ?A → B to Δ ∗ (A)?B may need to face the fact that Δ ∗ (A) is inconsistent. However, we do have in this case the notion of the update Δ!A, and we could reduce the query Δ?A → B to that of Δ!A?B. This new reduction actually defines a new a conditional implication A ⇒ B, meaning B would be true if A were true i.e. update Δ by A and then (query) check B. The next definition gives the details. We are going to keep using the ‘→’ symbol for both kinds of implication and the context will decide what meaning we give to ‘→’. See [Gabbay et al., 1994].

Definition 1.7.7 (Computation for conditional →) We define a new computation Δ?!Q = 1 and Δ?!Q = 0 for clauses Q as follows:

a. Δ?!q = 1 if q is in Δ, for atomic q.

b. Δ?!q = 0 for q atomic, if q is not the head of any clause in Δ. c. Δ?!B_{1} → (B_{2} → … → (B_{n} → q) …) = 1 (resp. 0) iff (((Δ!B_{1})!B_{2}) …!B_{n})?!q = 1 (resp. 0).

d. Δ?!q = 1 if for some B_{1} → (… → (B_{n} → q) …) in Δ we have Δ?!B_{i} = 1, for i = 1, …, n.

e. Δ?!q = 0 if for each B_{1} → (… → (B_{n} → q) …) in Δ there exists an i such that Δ?!B_{i} = 0.

f. Δ?!⊥ is not defined. We only compute Δ?⊥.

We now have an update mechanism and a new consequence relation. Let us define some more mechanisms. First we deal with normal defaults of the form \frac{A:B}{B}, reading: if A is in Δ and it is consistent to add B then we do add B. Note that the default notion we are proposing here is straightforward and tailored for our case and is not a general theory of default. We are building a ‘new logic’ and we want to put some default aspects to it.

Definition 1.7.8 (Default mechanism) 1. A normal default δ is a pair δ = (A, B) where A and B are clauses.

2. A default database is a concatenation of several lists of clauses and constraints containing at

least the following

Δ = Δ_{I} ∗ Δ_{P} ∗ Δ_{A} ∗ Δ_{D}

where Δ_{D} is a list added because of default.

3. We now define the default update Δ!δ as follows

Δ!δ = Δ_{I} ∗ Δ_{P} ∗ Δ_{A} ∗ Δ_{D} ∗ (B)

provided this theory is consistent and Δ?A = 1.

So far we have built a logical system with a consequence relation, an algorithmic procedure for it and some mechanisms such as updates and default. We will add one more mechanism and then rest our case. This time we add abduction.

From the purely logical point of view, abduction is a syntactical action on a theory Δ and a goal Q, consistent with Δ, in a logic (|∼, S_{|∼}), yielding some additional data Δ_{B}, consistent with Δ, (denoted by Δ_{B} = Abduce (Δ, Q)) such that Δ, Δ_{B}|∼Q. i.e. we ‘answer’ the question of ‘what do we need to consistently add to Δ to make it prove Q’?

Let us define Abduce(Δ, Q) for the logic (|∼_{m}, S_{|∼_{m}}). The definition will be by induction on the computation steps of Q from Δ, as in Definition 1.7.3.

Definition 1.7.9 Let Δ be a theory and Q be a goal in the minimal logic |∼_{m} of Example 1.7.2 (for the language with →, ⊥ and possibly ∧), using the algorithm S_{|∼_{m}} of Definition 1.7.3(3) which is complete by Theorem 1.7.4.

We define a formula Abduce(Δ, Q) in the full language of minimal logic, with ∧ and ∨ such that:

• Δ∗ Abduce (Δ, Q)|∼_{m}Q

1. Abduce(Δ, Q) = ⊤ if Δ?Q = 1.

2. Abduce(Δ, q) = q, for q atomic such that q is not the head of any clause in Δ.

3. Abduce(Δ, A_{1} → (A_{2} → … (A_{n} → q) …)) = A_{1} → … (A_{n} → Abduce (Δ∗(A_{1}, …, A_{n}), q) …)

4. Let q be atomic and let B^{j} = B_{1}^{j} → … → (B_{n_{j}}^{j} → q) …), j = 1, …, m be all clauses in Δ with head q. Then Abduce(Δ, q) = ⋁_{j=1}^{m} ⋀_{i=1}^{n_{j}} Abduce (Δ, B_{i}^{j}).

5. In case we have conjunctions; Abduce(Δ, A ∧ B) = Abduce (Δ, A) ∧ Abduce (Δ, B).

Note that clause 4 of the above definition of Abduce may be simplified to be that any one of the disjuncts (say of the first B^{j} in the list Δ) is always chosen. However, when we take the disjunction we get a logically weaker abduced formula. Also note that clause 5 may give rise to inconsistency; Abduce(Δ, A) and Abduce(Δ, B) may be consistent but not necessarily their conjunction.

If we adopt the policy of taking disjunctions in clause 4, we increase the chances of finding a consistent abduced formula. In the → fragment, of course, we do not want disjunctions.

Examples 1.7.10 1. Let Δ be {a} and let the goal be q. The abduced fomula is Abduce((a), q) = q. Note that if we were to take γ = (a → q) then certainly

Δ, γ|∼_{m}q

so the abudced formula is not the logically weakest which can be added to Δ to prove the goal (since γ |̸∼_{m}q but q|∼_{m}γ). However, in the presence of Δ it is the weakest.

2. Let Δ be

(a) a → (b → q)

(b) a

(c) (c → d) → q

and let the goal be q.

The abduced theory is b ∨ (c → d)

Lemma 1.7.11 Δ, Abduce (Δ, Q)|∼_{m}Q.

Proof. The proof is by induction on the definition of the abduced formula.

1. If the abduced formula is ⊤ then this means Δ|∼_{m}Q.

2. Assume that Q = q is atomic and that it is not the head of any clause. Then the abduced formula is q and clearly Δ, q|∼_{m}q.

3. Assume Q has the form

Q = (A_{1} → … → (A_{n} → q) …).

Then the abduced formula is

A_{1} → … → (A_{n} → Abduce (Δ ∗ (A_{1}, …, A_{n}), q), …).

We need to show

Δ, A_{1} → (… → (A_{n} → Abduce (Δ ∗ A_{1}, …, A_{n}), q) …)|∼_{m}Q.

By the induction hypothesis

Δ, A_{1}, …, A_{n}, Abduce (Δ ∗ (A_{1}, …, A_{n}), q)|∼_{m}q,

hence

Δ, A_{1}, …, A_{n}, A_{1} → … (A_{n} → Abduce (Δ ∗ (A_{1}, …, A_{n}), q) …)|∼_{m}q,

hence

Δ, A_{1} → (… A_{n} → Abduce (Δ ∗ (A_{1}, …, A_{n}), q) …)|∼_{m}Q.

4. Assume Q = q is atomic and let B^{j} = (B_{1}^{j} → … → (B_{n_{j}}^{j} → q) …), j = 1, …, m, be all the clauses in Δ with head q.

Then we need to show

Δ, Abduce (Δ, q)|∼_{m}q

where

Abduce (Δ, q) = ⋁_{j=1}^{m} ⋀_{i=1}^{n_{j}} Abduce (Δ, B_{i}^{j}).

By the induction hypothesis for j fixed, we have

Δ, Abduce (Δ, B_{i}^{j})|∼_{m}B_{i}^{j}

for i = 1, …, n_{j}.

Hence for each j, since B^{j} is in Δ, we have:

Δ, ⋀_{i=1}^{n_{j}} Abduce(Δ, B_{i}^{j})|∼_{m}q.

Hence

Δ, ⋁_{j=1}^{m} ⋀_{i=1}^{n_{j}} Abduce(Δ, B_{i}^{j})|∼_{m}q.

This completes the induction step and the lemma is proved. ■

Remark 1.7.12 (Abdtop) The above defined abduction mechanism gives rise to abduced formulas which may be disjunctions, but not necessarily. If we are dealing with the → fragment only, we will not be able to add the abduced formula into Δ. We notice however, that conjunctions are no problem because in the → fragment, every formula with conjunctions is equivalent to a conjunction of pure → formulas. This conjunction can be added to Δ as an additional list. We have already observed that disjunctions arise from the fact that an atom q may have several clauses in the database with head q (item 4 of the inductive definition). Since all clauses are ordered, we can shoose as part of our abduction policy to use only an agreed one of them (say the top of the list). This will give us no disjunctions. Call such a modified abduction algorithm by Abdtop(Δ, Q).

Example 1.7.13 Consider the database Δ with one integrity constraint in it and one data item in it.

1. a ∧ s ∧ e → ⊥

2. a

We are using conjunction but it can be eliminated. We can write item 1 as

a → (s → (e → ⊥)).

Consider the following two goals.

• Q_{1} = a ∧ e

• Q_{2} = a ∧ e → ⊥

Note that for conjunctions the obvious rule to use (at a risk that integrity constraints are violated) is:

• Abduce(Δ, A ∧ B) = Abduce (Δ, A)∧ Abduce(Δ, B)

Therefore for our example:

Abduce(Δ, Q_{1}) = Abduce(Δ, a)∧ Abduce(Δ, e) = Abduce(Δ, e)

Clearly Abduce(Δ, e) = e, as the only way to prove e from Δ is to abduce e itself (note we do not have ⊥|∼_{m}e).

We now try to abduce the second goal, Q_{2}.

Abduce(Δ, Q_{2}) = (a ∧ e → Abduce(Δ ∗ (a) ∗ (e), ⊥) = a ∧ e → s

Since

Abduce(Δ ∗ (a) ∗ (e), ⊥) = Abduce(Δ ∗ (a) ∗ (e), a ∧ s ∧ e) = s

Remark 1.7.14 There is a sense in which Abduce(Δ, q) is the logically minimal addition to Δ which can prove Q, namely

If Δ, X|∼_{m}Q, then Δ′, X|∼_{m} Abduce(Δ, Q), where Δ′ is some completion of Δ. It is not clear to me at this stage exactly what Δ′ should be. Consider the following:

Δ = {a → b}, Q = b. Abduce(Δ, Q) = a.

Clearly, Δ, b ⊢ Q but Δ, b ⊬ a. However, Clark’s completion, Δ′ = {a ↔ b} does the job; Δ′, b ⊢ a.

There is work for Horn clauses in this direction in [Console et al., 1991], but our language here contains embedded implications.

Example 1.7.15 (An example of a logical system) We can now define an example of a ‘logical’ system in our sense as follows:

• The language has → only.

• The notion of a theory and of a consequence relation is that of minimal logic |∼_{m}.

• The algorithmic system is S_{|∼_{m}} of Definition 1.7.3. Theorem 1.7.4 shows the algorithm is complete and sound.

• The abduction mechanism is Abdtop of Remark 1.7.12. The result is appended at the end of the Δ_{B} list.

• A database is comprised of several lists of clauses and integrity constraints of the form

Δ = Δ_{I} ∗ Δ_{P} ∗ Δ_{B} ∗ Δ_{A} ∗ Δ_{D}

where Δ_{I} is the integrity constraint, Δ_{P} is the permanent data, Δ_{B} is the abduced data, Δ_{A} is the additional data and Δ_{D} is

the default data.

• The update mechanism is as in Definitions 1.7.6 and 1.7.7, where for the purpose of performing an update the list Δ_{B} is considered ‘protected’ data while Δ_{A} ∗ Δ_{D} is considered ‘additional data’. This gives defaults higher priority than hypotheticals.

• Input of hypotheticals is appended to the end of the Δ_{A} list.

• The default mechanism is as in Definition 1.7.8 and the result of default is appended at the end of the Δ_{D} list

Note that some of our decisions in defining the logic of Example 1.7.15 are not the most reasonable. They need to be refined. We can be more careful how we update and more careful where to input the results of abduction by looking at what part of the database was used in the abduction. For example if we abduce q because of default rules, it makes more sense to put the result in the default database then in the abduced database.

However, for the purpose of illustrating what we mean by a logical system with mechanisms, the above is sufficient.

In the most general case, databases are LDS databases and not just lists. In this case the mechanisms and algorithms will be more complex.

1.8 Semantics

We cannot address the problem of what is a logical system without saying something about our view of semantics. The traditional view, for classical, intuitionisitc, or modal logic is to have some notion of a class of models and of an evaluation procedure of a formula in a model. Thus we may have a set K of models and a notion of validity in m ∈ K of a formula A of the logic. We use the notation m ⊨ A. Given no details on the internal structure of m and on how m ⊨ A is evaluated, all we can say about the model is that m is a {0,1} function on wffs. Completeness of K for |∼ means that the following holds:

• A|∼B iff for all m ∈ K (if m ⊨ A then m ⊨ B).

We would like to present a different view of semantics.

We would like to remain totally within the world of logical systems (in our sense, i.e. LDS with mechanisms) and to the extent that semantics is needed, we bring it into the syntax. This can obviously and transparently be done in modal logic where the labels denote possible worlds and the proof rules closely reflect semantical evaluation rules. This in fact can also be done in general. So what then is the basic notion involved in a purely syntactical set up? What replaces the notions of a ‘model’, ‘evaluation’, and completeness? We give the following definition. It must be taken with care, as it is easy to give trivial interpretations.

Definition 1.8.1 (Syntactical semantics) Let |∼ be a consequence relation and let K be a class of consequence relations, not necessarily of the same language. for each |∼^{∗} ∈ K, let k_{|∼}^{∗} be an interpretation of |∼ into |∼^{∗}. This involves mapping of the language of |∼ into the language of |∼^{∗} and the following homomorphic commitment:

• A|∼B implies A^{∗}|∼^{∗}B^{∗} (where A^{∗} is k_{|∼}^{∗}(A) and resp. B^{∗}).

We say |∼ is complete for (K, k), iff we have

• A|∼B iff for all |∼^{∗} ∈ K, A^{∗}|∼^{∗}B^{∗}.

Example 1.8.2 The following can be considered as semantical interpretations in our sense:

1. The Solovay–Boolos interpretation of modal logic G (with Löbs axiom) in Arithmetic, with □ meaning ‘provable’.

2. The interpretation of intuitionistic propositional logic into various sequences of intermediate logics whose intersection is intuitionistic logic (e.g. the Jaskowski sequence).

3. The interpretation of modal logic into classical logic.

Remark 1.8.3 We gave a definition of interpretation for conseqeunce relations |∼. In the general case, we have a general LDS proof system with algorithmic proof systems S_{|∼} and various mechanisms. These should also be interpreted. Each algorithmic move in S_{|∼} should be interpreted as a move package in S_{|∼}^{∗}, and similarly for mechanisms.

It is possible to justify and motivate our syntactical notion of semantics from the more traditional one. Let us take as our starting point the notion of Scott-semantics described in [Gabbay, 1976].

Definition 1.8.4 Let L be a propositional language, for example the modal language with □ or intuitionistic language with →.

1. A model for the language is a function s assigning a value in {0, 1} to each wff of the language.

2. A semantics S is a class of models.

3. Let Δ be a set of wffs and A a wff. We say Δ ⊨_{S} A iff for all s ∈ S if s(B) = 1 for all B ∈ Δ then s(A) = 1.

The above definition relies on the intuition that no matter what our basic concepts of a ‘model’ or interpretation is, sooner or later we have to say whether a formula A ‘holds’ in it or does not ‘hold’ in it. Thus the technical ‘essence’ of a model is a {0, 1} function s (we ignore the possibility of no value).

It can be shown that this notion of semantics can characterise any monotonic (syntactical) consequence relation i.e. any relation |∼ between sets Δ (including Δ = ∅) of wffs and wffs A satisfying reflexivity, monotonicity and cut. Thus for any |∼ there exists an S such that |∼ equals ⊨_{S}.

Given the above point of view, the notion of syntactical semantics subsumes that of Scott semantics. If, as in Definition 1.8.1, |∼ is faithfully interpretable in a family of consequence relations |∼_{i}, and these in turn have Scott semantics S_{i}, then we can derive Scott sematics S for |∼ through the interpretations. Conversely, given |∼ and its Scott semantics S, let S_{i}, i ∈ I be a large enough family of subsets of S and let |∼_{i} be ⊨_{S_{i}}. Clearly the family {|∼_{i}} would be syntactical semantics for |∼.

The semantics S can be given further structure, depending on the connectives of L. The simplest is through the binary relation ≤, defined as follows:

• t ≤ s iff (definition) for all wffs A, t(A) ≤ s(A).

Other relations can be defined on S. For example, if the original language is modal logic we can define:

• tRs iff for all □A of L if t(□A) = 1 then s(A) = 1.

One can then postulate connections between values such as:

• t(□A) = 1 iff ∀s[tRs ⇒ s(A) = 1]

or for a language with →:

• t(A → B) = 1 iff ∀s(t ≤ s and s(A) = 1 imply s(B) = 1).

In some logics and their semantics the above may hold. For example, the respective conditions above hold for the modal logic K and for intuitionistic logic. For other logics, further refinements are needed.

The nature of what is happening here can be best explained through a translation into classical logic. The language L can be considered as a Herbrand universe of terms (i.e. the free algebra based on the atomic propositions and the connectives acting as function symbols), and the models considered as another sort of terms, (i.e. the names of the models can be terms). The ‘predicate’ t(A) = 1 can be considered as a two sorted predicate Hold(t, A). Thus the reductions above become

• Hold(t, □A) iff ∀s(tRs ⇒ Hold(s, A)), where tRs is ∀B(Hold(t, □B) ⇒ Hold(s, B)).

This condition reduces to

• ∀s[∀X(Hold(t, □X) ⇒ Hold(s, X)) ⇒ Hold(s, A)] ⇒ Hold(t, □A)

This is an internal reduction on Hold.

In general, we want to define Hold(t, ♯(A_{1}, …, A_{n})) in terms of some relations R_{i}(x_{1}, …, x_{n_{i}}) on sort t (first coordinate of Hold), and the predicates Hold(x, A_{j}) for subformulas of ♯(A_{1}, …, A_{n}). R_{i}(t_{1}, …, t_{n_{i}}) in turn, are expected to be defined using Hold(t_{i}, X_{j}) for some formulas X_{j}.

Thus in predicate logic we have formulas φ_{i} and Ψ_{♯} such that:

• Hold(t, ♯(A_{i}, …, A_{n}) iff Ψ_{♯}(t, R_{i}, Hold(x_{i}, A_{j}))

• R_{i}(t_{1}, …, t_{n_{i}}) iff (definition) φ_{i}(t_{1}, …, t_{n_{i}}, Hold(t_{j}, X_{k})).

Together they imply a possible closure condition on the semantics

• Hold(t, ♯(A_{1}, …, A_{n}) iff Ψ_{♯}(t, φ_{i}(…, Hold(t_{j}, X_{k})), Hold(x_{i}, A_{k}))

which may or may not hold.

Remark 1.8.5 (Represntation of Algebras) The above considerations can be viewed as a special case of a general set-representation problem for algebras. Let A be an algebra with some function symbols f_{i} satisfying some axioms. Take for example the language of lattices A = (A, ⊓, ⊔). we ask the following question: Can A be represented as an algebra of sets? In other words, is there a set S and a mapping h(a) ⊆ S, for a ∈ A and a monadic first-order langauge L_{1} on S involving possibly some relation symbols R_{1}, …, R_{k} on S such that for all s ∈ S and function symbol f of the algebra we have the following inductive reduction, for all x_{1}, …, x_{n} ∈ A

s ∈ h(f(x_{1}, …, x_{n}) iff ⊨ Ψ_{f}(s, h(x_{1}), …, h(x_{n}))

where Ψ_{f} is a modadic wff of L_{1} involving R_{1}, …, R_{k} and the subsets h(x_{j}).

If the relations R(t_{1}, …, t_{m}) on S can be defined using h by some formula φ_{R} of the algebra (involving the classical connectives and equality and the monadic predicates on the algebra T_{i}(x) meaning t_{i} ∈ h(x), then

⊨ R(t_{1}, …, t_{m}) iff A ⊨ φ_{R}(T_{1}, …, T_{m}, R).

Compare with section 8.5.

Remark 1.8.6 (Dependent semantics) The above considerations are not the most general and do not reflect all that might happen. The considerations explain nicely semantics like that of modal K, but we need refinements.

Consider the logic K_{1} obtained by collecting all theorems of modal logic K together with the schema □A → A and the rule of modus ponens. Necessitation is dropped, so although K_{1} ⊢ □A → A, we can still have K_{1} ⊬ □(□A → A). See Example 3.4.8. This logic is complete for the class of all Kripke structures of the form m = (Sm, Rm, am, hm), where amRam holds. Completeness means

1. K_{1} ⊢ A iff for every m as above am ⊨ A

Let am be the function satisfying

2. am(A) = 1 iff am ⊨ A

and let

3. S_{0} = {am | m as above}.

Then we have here a semantics S_{0} ⊆ S (of the langauge L of modal logic) where am(□A) cannot be recuced to values of s(A) for s ∈ S_{0}, but can be reduced to values s(A), for s ∈ S. This is so because when we evaluate am ⊨ A, we evaluate at points b ∈ Sm such that amRmb and the Kripke structure but notnecessarily a K_{1} structure (Sm, Rm, b, hm) is a K structure as bRb need not hold. Let bm be the function defined by

4. bm(A) = 1 iff b ⊨ A in m.

we get

5. am(□A) = 1 iff for all s ∈ {bm | amRb}, we have s(A) = 1.

Let φ(a, b) mean as follows:

6. φ(a, b) iff (definition) for some m, a = am and b = bm and amRb.

Then we have that K_{1} is characterised by a designated subset S_{0} of S and the truth definition:

7. s(□A) = 1 iff for all s′φ(s, s′) and sRs′ imply s′(A) = 1.

8. A ⊨ B iff for all s ∈ S_{0}, s(A) = 1 implies s(B) = 1.

Compare with Example 4.1.3 for an essentially related meaning of φ.

We are now ready to say what it means to give technical semantics t a consequence relation |∼.

Definition 1.8.7 (What is semantics for |∼) Let |∼ be a consequence relation (Reflexive and trasitive) in a language with connectives. Then a semantics for |∼ is any set theoretic representation (in the sense of Remark 1.8.1) of the free term algebra based on |∼.

The previous definition does not take account of remark 1.8.6. If we want a better concept of what is semantics, we need to talk about fibred sematnics and label dependent connectives. These topics will be addressed in chapter 15.

1.9 Conclusion

We have incrementally gone through several notions of ‘what is a logical system’ and have ended up with Definition 1.7.1 and Example 1.7.15 to illustrate it. This new concept of a logic is very far from the traditional concept. In artificial intelligence circles, what we call a ‘logic’ is perceived as an ‘agent’ or ‘intelligent agent’. This is no accident. Whereas traditional logical systems (classical logic, intuitionistic logic, linear logic) model mathematical reasoning and mathematical proof, our new concept of logic attempts to model, and stay tuned to, human practical reasoning. What we tried to do is to observe what features and mechanisms are at play in human practical reasoning, and proceed to formalise them. The systems emerging from this formalisation we accept as the new ‘logics’. It is therefore no surprise that in AI circles such systems are perceived as intelligent agents. However, compared with AI, our motives are different. We are looking for general logical principles of human reasoning and not necessarily seeking to build practical applied systems.

There is one more point to make before we can close this paper. The above ‘logics’ manipulate formulas, algebraic terms and in general syntactical symbols. We have maintained already in 1988 [Gabbay and Reyle, to appear] that deduction is a form of stylised movement, which can be carried out directly on natural objects from an application area. Thus ‘logic’ can be done not only on syntactical formulas, but on any set of structured objects, naturally residing in some application area.

To reason about gardening, for example, we can either represent the area in some language and manipulate the syntax in some logic, or we can directly manipulate and move the plants themselves and ‘show’ the conclusion. The style of movement is the ‘logic’. This concept of logic as movement is clearly apparent in automated reasoning. Different kinds of ‘shuffling’ licenced by a theorem prover can lead to different ‘logics’, because then different sets of theorems become provable. Our insight was that similar movements can be applied directly on the objects of the application areas, and therefore reasoning can be achieved directly in the application area without formalisation. This philosophy has been carried out on Discourse Representation Structures in [Gabbay and Reyle, to appear].

We now address the question of how we propose to tackle the classification of non-monotonic systems. To explain our ideas, consider for the moment the theory of Boolean algebra. The class of boolean algebras can be characterised axiomatically by writing the axioms of boolean algebra. Any specific interesting Boolean algebra may or may not be characterisable using further axioms. This is the declarative way of classifying algebras. If a logical system is taken as our object of study (corresponding to a Boolean algebra) then the method of axiomatic presentation of consequence relation corresponds to identifying Boolean algebras by further axioms. In the Boolean algebra area, there is another way of identifying a certain algebra. We have a method of constructing and generating more algebras from given algebras by taking products and subalgebras. So we can start with the {0, 1} Boolean algebra and generate any algebra in this manner. Thus by the Stone representation theorem, any boolean algebra can be represented as a subalgebra of a product of {0, 1} algebras.

Suppose now we want to identify a certain class of algebras in a natural way. It may be that this class cannot naturally be identified by axioms nor can it be naturally constructed via a clearly identifiable sequence of products and subalgebras. It may be possible however to combine the two methods. Give some axioms A and give some ways of constructing algebras, say C, and the desired class is the intersection, we can denote that by (A, C). The analog in our case is clear. Axioms on the consequence relation gives us the ⊢ part and the LDS discipline gives us the S part. Together they can identify a logic (⊢, S). See the Section ‘A case study: concatneation logic below.

Going back to our logics, what would be a mechanism for generating more logics? The answer is simple. Given two logics L_{1} and L_{2}, L_{1} is defined as a labelled deductive system. Replace the labels of L_{1} by formulas of L_{2} and retain the L_{1} labelling discipline. Assuming the discipline can be meaningfully applied to formulas of L_{2} as labels, the result will be a new logic L_{3}. In simple words, we use one logic on the labels, another logic on the rules to form a third logic. I agree that a lot of these “generated” logics will not be interesting. That is not what is of importance here. What is important is that we have a unifying mechanism LDS that when refined can generate known logics and possibly other interesting logics. In the theory and construction of boolean algebras we can also generate uninteresting systems, it is the good ones that we look at.

32 CHAPTER 1. WHAT IS A LOGICAL SYSTEM?

Introducing Labelled Deductive Systems

2.1 Introduction

The previous chapter successively refined the notion of a logical system with a view of introducing LDS as the most general concept of a logic. This chapter motivates LDS through many examples from monotonic and nonmonotonic logics. Section 2.2 is mainly concerned with formulating known and familiar monotonic logics as LDS. This will persuade the reader that LDS is general enough. Section 2.3 presents many nonmonotonic systems and features as LDS. This should show that LDS is indeed natural and comprehensive framework. Within LDS, the distinction between monotonic and nonmonotonic systems is not important. Both kinds look essentially the same with some variations. The rest of the sections in the chapter present case studies in depth, showing how LDS presentations of known logics make us understand them much better and present them with technical simplicity and elegance. The chapter concludes with a discussion of the limitations of LDS.

2.2 Examples from implicational and monotonic logics

To motivate our approach we study several known examples in this section.

Example 2.2.1 below shows a standard deduction from Relevance Logic. The purpose of the example is to illustrate our point of view. There are many such examples in Anderson and Belnap’s book. Example 2.2.3 below considers a derivation in modal logic. There we use labels to denote essentially possible worlds. The objective of the example is to show the formal similarities to the relevance logic case, Example 2.2.1. Example 2.2.4 can reap the benefits of the formal similarities of the first two examples and introduce, in the most natural way, a system of relevant modal logic. The objective of Example 2.2.4 is to show that the labels in Example 2.2.1 and Example 2.2.3 can be read as determining the metalanguage features of the logic and can therefore be combined “declaratively” to form the new system of Example 2.2.4. Example 2.2.5 considers strict implication. This example shows that for strict S4 implication one can read the labels either as relevance labels or as possible world labels. Examples 2.2.6 and 2.2.7 show how labels can interact with quantifiers in modal logic.

Example 2.2.1 (Relevance and Linear Logic) Consider a propositional language with implication “→” only. The forward rule is modus ponens. From the theorem proving view, modus ponens is an object language consideration. Thus a proof of ⊢ (B → A) → ((A → B) → (A → B)) can proceed as follows:

Assume a_{1} : B → A and show (A → B) → (A → B). Further assume a_{2} : A → B and show A → B. Further assume a_{3} : A and show B. We thus end up with the following problem:

Assumptions

1. a_{1} : B → A

2. a_{2} : A → B

3. a_{3} : A

Derivation

4. a_{2}a_{3} : B by modus ponens from lines (2) and (3).

5. a_{1}a_{2}a_{3} : A from (4) and (1).

6. a_{2}a_{1}a_{2}a_{3} : B from (5) and (2).

7. a_{2}a_{1}a_{2} : A → B from (3) and (6).

8. a_{2}a_{1} : (A → B) → (A → B) from (2) and (7).

9. a_{2} : (B → A) → ((A → B) → (A → B)) from (1) and (8).

The meta-aspect of this proof is the annotation of the assumptions and the keeping track of what was used in the deduction. A metalevel condition would determine the logic involved.

A formal definition of the labelling discipline for this class of logics will be given in a later chapter. For this example it is sufficient to note the following three conventions:

1. A deduction task has labelled assumptions and a labelled goal (later we will allow several goals). Each new assumption is labelled by a new atomic label.

An ordering on the labels can be imposed, namely a_{1} < a_{2} < a_{3}. This is to reflect the fact that the assumptions arose from our attempt to prove (B → A) → ((A → B) → (A → B)) and not for example from (A → B) → ((B → A) → (A → B)) in which case the ordering would be a_{2} < a_{1} < a_{3}. The ordering can affect the proofs in certain logics.

2. If in the proof A is labelled by the multiset α and A → B is labelled by β then B can be derived with a label α ∪ β where “∪” denotes multiset union.

3. If B was derived using A as evidenced by the fact that the label α of A is a atomic and is in the label β of B(α ∈ β) then we can derive A → B with the label β − α (“-” is multiset subtraction).

The derivation can be represented in a more graphical way. To show (B → A) → ((A → B) → (A → B)), we use the metabox of Fig 2.1. This is a way of representing the deduction. Note that in line 11, multiset subtraction was used

and only one copy of the label a_{2} was taken out. The other copy of a_{2} remains and cannot be cancelled. Thus this formula is not a theorem of linear logic because the outer box does not exit with label ∅. In relevance logic, the discipline uses sets and not multisets. Thus the label of line 11 in this case would be a_{1} and that of line 12 would be ∅. Strictly speaking we get R-mingle, a variation of relevance logic.

The above deduction can be made even more explicit as follows:

(B → A) → ((A → B) → (A → B)) follows with a label from Box a_{1}.

Box a_{1}

a_{1} :  B → A assumption
a_{2}a_{1} : (A → B) → (A → B) from Box a_{2}

Box a_{2}

Box a_{1}  1  show (A → B) → (A → B)
2 a_{1} : B → A
Box a_{2}  3  show A → B
4 a_{2} : A → B

\begin{matrix}Box a_{3} 5 & & show B \\ 6 & a_{3} : A \\ 7 & a_{2}a_{3} : B \\ 8 & a_{1}a_{2}a_{3} : A \\ 9 & a_{2}a_{1}a_{2}a_{3} : B \end{matrix}

exit 10 a_{2}a_{1}a_{2} : A → B
exit 11 a_{2}a_{1} : (A → B) → (A → B)
exit 12 a_{2} : (B → A) → ((A → B) → (A → B))

Figure 2.1:

a_{2} :  A → B assumption
a_{2}a_{1}a_{2} : A → B from Box a_{3}

Box a_{3}

a_{3} : A  assumption
a_{2} : A → B reiteration from box a_{2}
a_{2}a_{3} : B  by modus ponens
a_{1} : B → A reiteration from box a_{1}
a_{1}a_{2}a_{3} : A  modus ponens from the two preceding lines
a_{2} : A → B repetition of an earlier line
a_{2}a_{1}a_{2}a_{3} : B modus ponens from the two preceding lines

The following metarule was used: We have a system of partially ordered metaboxes a_{1} < a_{2} < a_{3}. Any assumption in a box a

can be reiterated in any box b provided a < b. In this example the box structure is not necessary but in general it might be useful.

Remark 2.2.2 a. The above presentation of the boxes makes them look more like possible worlds. The labels are the worlds and formulas can be exported from one world to another according to some rules. The next example describes modal logic in just this way.

b. Note that different metaconditions on labels and metaboxes correspond to different logics. The following table gives intuitively some correspondence between metaconditions and logics. A precise definition can be found in Chapter 9.

Metacondition:  Logic
ignore the labels  intuitionistic logic
accept only the derivations  relevance logic

which use all the assumptions

accept derivations which  linear logic

use all assumptions exactly once

The metaconditions can be translated into object conditions in terms of axioms and rules. If we consider a Hilbert system with modus ponens and substitution then the additional (not necessarily independent) axioms involved are given below:

Linear Logic A → A (A → (B → C)) → (B → (A → C)) (C → A) → ((B → C) → (B → A)) (C → A) → ((A → B) → (C → B))

Relevance Logic Add the schema below to linear logic: (A → (B → C)) → ((A → B) → (A → C))

R-Mingle Add the schema below to relevance logic: A → (A → A)

Intuitionistic Logic Add the schema below to relevance logic: A → (B → A)

The reader can note that the following axiom (Peirce Rule) yields classical logic. The corresponding metacondition is the Restart Rule, to be given in Chapter 3. We shall see that for example, we can define “Linear Classical Logic” by adding Peirce Rule to linear logic. A new logic is obtained.

Classical Logic Add the schema below to intuitionistic logic: ((A → B) → A) → A.

Example 2.2.3 (Modal logic) This example shows the metalevel-object level division in the case of modal logic. Modal logic has to do with possible worlds. We thus think of our basic database (or assumptions) as a finite set of information about possible worlds. This consists of two parts. The configuration part, the finite configuration of possible worlds for the database, and the assumptions part which tells us what formulas hold in each world. The following is an example of a database:

Assumptions Configuration
(1) t : □□B t < s
(2) s : ♢(B → C)

The conclusion to show (or query) is:

t : ♢♢C.

The derivation is as follows:

3. From (2) create a new point r with s < r and get r : B → C.

We thus have

Assumptions Configuration ; (1), (2), (3) t < s < r 4. From (1), since t < s get s : □B.

5. From (4) since s < r get r : B.

6. From (5) and (3) we get r : C.

7. From (6) since s < r get s : ♢C.

8. From (7) using t < s we get t : ♢♢C.

Discussion: The object rules involved are:

□E Rule:

\frac{t < s; t : □A}{s : A}

♢I Rule:

\frac{t < s, s : B}{t : ♢B}

♢E Rule:

\frac{t : ♢A}{create a new point s with t < s and deduce s : A}

Note that the above rules are not complete. We do not have rules for deriving, for example, □A. Also, the rules are all for intuitionistic modal logic. Modal and temporal logics will be studied in a special chapter.

The metalevel consideration may be properties of <, such as transitivity t < s and s < r implies t < r or linearity: t < s or t = s or s < t etc.

Example 2.2.4 (Modal relevance logic) The reader can already see the benefit of separating the metalevel and the object level features. We can combine both the metalevel features of Examples 2.2.1 and 2.2.3 to create for example a modal relevance logic in a natural way. Each assumption has a relevance label as well as world label. Thus the proof of the previous example becomes the following:

Assumptions  Configuration
(1) (a_{1}, t) : □□B  t < s
(2) (a_{2}, s) : ♢(B → C)

We proceed to create a new label r using ♢E rule. The relevance label is carried over. We have t < s < r.

3. (a_{2}, r) : B → C

Using □E rule with relevance label carried over, we have:

4. (a_{1}, s) : □B

5. (a_{1}, r) : B

Using modus ponens with relevance label updated

6. (a_{1}, a_{2}, r) : C

Using ♢I rule:

7. (a_{1}, a_{2}, s) : ♢C

8. (a_{1}, a_{2}, t) : ♢♢C

(8) means that we got t : ♢♢C using both assumptions a_{1} and a_{2}.

There are two serious problems in modal and temporal theorem proving. One is that of Skolem functions for ∃x♢A(x) and ♢∃xA(x) are not logically the same. If we skolemise we get ♢A(c). Unfortunately it is not clear where c exists, in the current world (∃x = c♢A(x)) or the possible world (♢∃x = cA(x)).

If we use labelled assumptions then, t : ∃x♢A(x) becomes t : ♢A(c) and it is clear that c is introduced at t.

On the other hand, the assumption t : ♢∃xA(x) will be used by the ♢E rule to introduce a new point s, t < s and conclude s : ∃xA(x). We can further skolemise at s and get s : A(c), with c introduced at s. We thus need the mechanism of remembering or labelling constants as well, to indicate where they were first introduced.

Labelling systems for modal and temporal logics will be studied in a later Chapter.

Example 2.2.5 (S4 Strict implication) The following example describes the logic of modal S4 strict implication. In this logic the labels can be read either as relevance labels or as possible worlds. S4 strict implication A → B can be understood as a temporal connective, as follows:

“A → B is true at world t iff for all future worlds s to t and for t itself we have that if A is true at s then B is true at s”. Thus A → B reads “From now on, if A then B”.

Suppose we want to prove that A → B and A → (B → C) imply A → C. To show this we reason semantically and assume that at time t, the two assumptions are true. We want to show that A → C is also true at t. To prove that we take any future time s, assume that A is true at s and show that C is also true at s. We thus have the following situation:

1. t : A → B

2. t : A → (B → C)

3. t : A → C, from box

3.1 Assume s : A Show s : C

Since s is in the future of t, we get that at s,

(1) and (2) are also true.

3.2 s : A → B from (1)
3.3 s : A → (B → C) from (2)

We now use modus ponens, because X → Y means “from now on, if X then Y ”

3.4 s : B
3.5 s : B → C from (3.1) and (3.3)
3.6 s : C modus ponens from (3.4) and (3.5)

exit t : A → C

Notice that any t : D can be brought into (reiterated) the box as s : D, provided it has an implicational form, D = D_{1} → D_{2}. We can thus regard the labels above as simply naming assumptions (not as possible worlds) and the logic has the reiteration rule which says that only implications can be reiterated.

Let us add a further note to sharpen our understanding. Suppose → is read as a K4 implication (ie transitivity without reflexivity). Then the above proof should fail. Indeed the corresponding restriction on modus ponens is that we do perform X, X → Y ⊢ Y in a box, provided X → Y is a reiteration into the box and was not itself derived in that same box. This will block line (3.6).

Example 2.2.6 (The Barcan formula) Another example has to do with the Barcan formula

Assumption Configuration
(1) t : ∀x□A(x)  t < s

We show

s : ∀xA(x)

We proceed intuitively

1. t : □A(x) (stripping ∀x, remembering x is arbitrary).

2. Since the configuration contains s, t < s we get

s : A(x)

3. Since x is arbitrary we get

s : ∀xA(x)

The above intuitive proof can be restricted.

The rule

\frac{t : □A(x), t < s}{s : A(x)}

is allowed only if x is instantiated.

To allow the above rule for arbitrary x is equivalent to adopting the Barcan formula axiom:

∀x□A(x) → □∀xA(x)

Example 2.2.7 (More on the Barcan formula) To show ∀x□A(x) → □∀xA(x) in the modal logic where it is indeed true.

1. Assume t : ∀x□A(x)

We show □∀xA(x) by the use of the metabox:

create α,  t < α
(2) t : □A(x) from (1)
(3) α : A(x)  from (2) using a rule

which allows this with x a variable.

(4) α : ∀xA(x) universal generalisation.
(5) Exit: t : □∀xA(x).

This rule has the form:

Create α,  t < α
Argue to get α : B
Exit with  t : □B

The above are just a few examples for the scope we get using labels. The exact details and correspondences will be worked out in the main body of the book.

A later chapter develops the formal mechanism we use in LDS, the mechanism of the Metabox. To explain intuitively what is involved, we look at a few more examples in this section and redo some of our earlier examples in the framework of the Metabox.

If we use modus ponens to go forward, we cannot prove theorems like

A → (B → C) ⊢ B → (A → C).

To achieve that, we need to be able to use some metarule like the deduction theorem. We need to assume B and show that B, A → (B → C) ⊢ A → C and then further assume A and show that A, B, A → (B → C) ⊢ C.

Formally in the framework of labelled deduction we have to allow for a mechanism similar to the “assume” mechanism and we have to indicate what is the label of the assumption.

The general framework is the metabox rule. Metabox:

(α ) Assume the assumptions α_{i} : A_{i} (this is the input).

(β ) Prove within the metabox and get β_{j} : B_{j}.

(γ ) Exit the metabox with γ_{k} : C_{k}.

Example 2.2.8 Relevance Reasoning The indices are α, β, and γ = (β − α). The reasoning structure is: Assume α : A, α atomic Show β : B If α ∈ β then exit with (β − α) : A → B. To show A → (B → C) ⊢ B → (A → C)

Assume

a_{1} : A → (B → C)

we use the metabox to show B → (A → C). See fig 2.2.

1  Show A → C
2 a_{2} : B  assumption
3  Show C
4 a_{3} : A  assumption
5 a_{1}a_{3} : B → C
6 a_{1}a_{3}a_{2} : C
exit  7 a_{1}a_{2} : A → C
exit  8 a_{1} : B → (A → C)

Figure 2.2:

Example 2.2.9 (Łukasiewicz many valued logics) Consider Lukasiewicz infinite valued logic, where the values are all real numbers or rationals in [0,1]. We designate 0 as truth and the truth table for implication is

x → y = max(0, y − x)

Here the language contains atoms and implication only, assignments h give values to atoms in [0,1], h(q) ∈ [0, 1] and h is extended to arbitrary formulas via the table for → above. Define the relation

A_{1}, …, A_{n} ⊢ B

to mean that for all h, h(A_{1}) + … + h(A_{n}) ≧ h(B), where + is a numerical addition.

This logic can be regarded as a labelled deductive system, where the labels are values t ∈ [0, 1]. t : A means that h(A) = t, for a given background h. The interesting part is that to show t : A → B (ie that A → B has value t) we assume x : A (ie that A has value x) and then have to show that B has value t + x, ie show t + x : B.

This is according to the table of →.

Thus in box form, Fig 2.3:

This has the same structure as the case of relevance logic, where + was understood as concatenation.

A full study of many valued logics is given in a subsequent chapter.

x : A  assumption

⋮

⋮

t + x : B

Figure 2.3:

Example 2.2.10 (Formulas as Types) Another instance of the natural use of labels is the Curry-Howard interpretation of formulas as types. This interpretation conforms exactly to our framework. In fact, our framework gives the incentive to extend the formulas as types interpretation in a natural way to other logics, such as linear and relevance logics and surprisingly, also many valued logics, modal logics, and intermediate logics. A formula is considered as a type and its label is a definable λ-term of the same type. Given a system for defining λ-terms, the theorems of the logic are all those types which can be shown non empty.

The basic propagation mechanism corresponding to modus ponens is:

t^{A} : A
t^{A→B} : A → B
t^{A→B}(t^{A}) : B

It is satisfied by application.

Thus if we read the + in t^{A→B} + t^{A} as application, we get the exact parallel to the general schema of propagation. Compare with relevance logic where + was concatenation, and with many valued logics where + was numerical addition!

To show t : A → B we assume x : A, with x arbitrary, ie start with a term x of type A, use the proof rules to get B. As we saw, applications of modus ponens generate more terms which contain x in them via application. If we accept that proofs generate functionals, then we get B with a label y = t(x). Thus t = λxt(x). This again conforms with our general schema for →.

In a later chapter on the Curry-Howard interpretation we shall exploit this idea systematically. There are two mechanisms which allow us to restrict or expand our ability to define terms of any type. We can restrict λ-abstraction, (eg allow λxt(x) only if x actually occurs in t), this will give us logics weaker than intuitionistic logic, or we can increase our world of terms by requiring diagrams to be closed eg, for any φ of classical logic such that

⊢ (A → B) → [φ(A) → φ(B)]

in classical logic, we want the following diagram to be complete, ie for any term t there must exist a term t′ (see fig 1.4)

[figure: φ(A); t′; φ(B); A; t; B] Figure 2.4:

Take for example the formula A → (B → A) as type. We want to show a definable term of this type, we can try and use the standard proof (see Fig 2.5), however, with the restriction on x_{A} : A

y_{B} : B ; ⋮ ; ⋮ ; x_{A} : A

exit λy_{B}.x_{A}
exit λx_{A}.λy_{B}.x_{A}

Figure 2.5:

λ-abstraction which requires the abstracted variable to actually occur in the formula, we cannot exit the inner box.

Example 2.2.11 (Realisability Interpretation) The well known realisability interpretation for intuitionistic implication is another example of a functional interpretation for → which has the same universal LDS form. A notation for a recursive function {e} realises an implication A → B, iff for any n which realises A, {e}(n) realises B. Thus

e : A → B iff ∀n[n : A ⇒ {e}(n) : B]

It is an open problem to find an axiomatic description of the set of all wffs which are realisable.

2.3 Examples from non-monotonic logics

The examples in the previous section are from the area of monotonic reasoning. This section will give examples from non-monotonic reasoning. As we have already mentioned, we hope that the idea of LDS will unify these two areas.

The next example shows how labels can be used for information sources and priorities.

Example 2.3.1 (Mother-in-law) Let B(a) be a literal meaning ‘It is a sound investment for Dov to buy the house a for the price quoted’. The words in Figure 2.6 indicate source of information.

[figure: lawyer:B(a); accountant:B(a); Dov: B(a); wife: B(a); mother-in-law: ∼ B(a); assistant: B(a); informer: B(a)]

Figure 2.6:

The accountant and lawyer recommend that I buy the house. So do I and so does my wife. I like it, the accountant thinks I have the money and it is a good move. The lawyer checked with his assistant the legal aspects as well as with his informer in City Hall. The area development plan looks good. So practically everybody agrees that B(a) is true except the mother-in-law. For her own (non-logical) reasons she says no. Figure 2.6 represents a labelled database. The tree structure gives the priorities. It is not a situation theory “situation” in spirit because it is not semantic. It is just an LDS representing the hierarchy of information where the labels are prioritised sources. In fact, the above database ‘boils down’ to Figure 2.7:

[figure: Dov: B(a); mother-in-law: ∼ B(a)]

Figure 2.7:

We need a further mechanism (logical or not) to draw a conclusion from this database. We need to know the answer to the following question: is the final conclusion B(a) or is it ∼ B(a). In a general setting, we need one mechanism (proof theory) for the relation Δ ⊢ t : A, for arbitrary Δ, t, A and another mechanism which we call flattening to ‘abstract’ from the sets {t | Δ ⊢ t : A}, {s | Δ ⊢ s :∼ A} a final conclusion Δ ⊢ A or Δ ⊢∼ A or neither, see Section 1.5.

Example 2.3.2 (Ordered Logic) An ordered logic database is a partially ordered set of local databases, each local database being a set of clauses. The following diagram (figure 2.8) describes an ordered logic database: The local databases are labelled t_{1}, t_{2}, t_{3}, s_{1}, s_{2} and ∅ and are partially

[figure: a ← ¬b; b ← ¬a; c ← ¬d; d ← ¬c; ¬q; q; ¬p ← ¬q; p; ¬d; ¬c; ¬b; ¬a; ∅; t_{3}; t_{2}; t_{1}; s_{2}; s_{1}] Figure 2.8:

ordered as in the figure.

To motivate such databases, consider an ordinary logic program C_{1} = {p ← ¬q}. The computation of logic program assumes that, since q is not a head of any clause, ¬q is part of the data, (this is the closed world assumption). Suppose we relinquish this principle and adopt the principle of asking an advisor what to do with ¬q. The advisor might say that ¬q succeeds or might say that ¬q fails. The advisor might have his own program to consult. If his program is C_{2}, he might run the goal q (or ¬q), look at what he gets and then advise. To make the situation symmetrical and general we must allow for Horn programs to have rules with both q and ¬q (ie literals) in heads and bodies and have any number of negotiating advisors. Thus we can have C_{2} = {¬q}, C_{1} = {q ← ¬q} and C_{1} depends on C_{2}. Ordered logic develops and studies various aspects of such an advisor system which is modelled as a partially ordered set of theories. Such a logic is useful, eg for multi-expert systems where we want to represent the knowledge of several experts in a single system. Experts may then be oredered according to an “advisory” or a relative preference relation.

A problem to consider is what happens when we have several advisors that are in conflict. For example, C_{1} depends on C_{2} and C_{1} depends on C_{3}. The two advisers, C_{2} and C_{3}, may be in conflict. One may advise ¬q, the other q. How to decide? There are several options:

1. We can accept q if all advisors say yes to q.

2. We can accept q if at least one advisor says yes to q.

3. We can apply some nonmonotonic or probabilistic mechanism to decide.

If we choose options (1) or (2) we are essentially in modal logic. To have a node t and to have ?q refer to advisors t_{1}, …, t_{n} with t < t_{i}, i = 1, …, n is like considering ?□q at t in modal logic with t_{1}, …, t_{n} possible worlds in option 1 and like considering ♢q at t in option (2). Option (3) is more general, and an LDS approach is most useful. We see from this advisors examples an application area where the labels arise naturally and usefully. The area of ordered logic is surveyed in [Vermeir and Laenens, 1990].

Example 2.3.3 (Defeasible Logic) This major approach to non-monotonic reasoning was introduced by [Nute, 1986]. The idea is that rules can prove either an atom q or its negation ¬q. If two rules are in conflict, one proving q and one proving ¬q, the deduction that is stronger is from a rule whose antecedent is logically more specific. Thus the database:

Bird (x) → Fly (x)
Big (x) ∧ Bird (x) → ¬ Fly (x)
Big (a)
Bird (a)

will entail ¬ Fly (a) because the second rule is more specific.

As an LDS system the labelling of rules in a database Δ is very simple. We label a rule by its antecedent. The ordering of the labels is done by logical strength relative to some background theory Θ (which can be a subtheory of Δ of some form). Deduction pays attention to strength of labels.

The previous examples motivated the need for the database to be labelled. The following examples motivate how a database in itself can be labelled and how it can in itself serve as a label. This will enhance the analogy between the label and the situation.

Example 2.3.4 (Jethrow’s Career) Figure 2.9 is a database labelled S about Jethrow’s performance.

S: Student: good teacher (J), survey Letters: good research (J), Students: fatherly figure (J)

Figure 2.9:

The label involved indicates the source supporting the truth of the predicate. The following database, figure 2.10, lists candidates for directorship of a new Max-Planck Institute in Germany. mp: (fairly strong, S): candidate (J), (preferred, t): candidate (H),

Figure 2.10:

The database is labelled mp. It contains data about candidates labelled by their source, and some non-numeric evaluation.

Here we see that a whole database can be a label in another. There are two ways of looking at this phenomenon. One is to view the database as being a label. Another is to allow for links between databases via their labels.

Example 2.3.5 (Linked Databases) Consider two lists of data of the form Δ and Γ below.

\begin{matrix}Δ = (t_{1} : A_{1}, t_{2} : A_{2}, t_{3} : A_{3}, …) \\ Γ = (s_{1} : B_{1}, s_{2} : B_{2}, s_{3} : B_{3}, …) \end{matrix}

The two databases come with a link between t_{2} and s_{3}. This can be formally described via a special operator

Link (Δ(t_{2}), Γ(s_{3}), t_{2}, s_{3}).

The link can be understood in one of several ways:

1. t_{i}, s_{i} are situations and A_{i}, B_{j} are infons, and the link is a constraint. In this case more information about the link needs to be given.

2. Δ, Γ are two databases. t_{i}, s_{j} are the transaction times (in increasing temporal order) in which the items of data were put in the database.

The links are the synchronisation between some items (ie t_{2} = s_{3}).

3. The t_{i}, s_{j} are labels naming actions. The declarative formulas A_{i}, B_{j} are the respective post conditions of the actions. The link signifies some connection (to be additionally specified) between the actions. For example, the link can mean that one action should precede another.

Example 2.3.6 (Propositional Circumscription) Circumscription is defined semantically, via satisfaction in minimal models. Surprisingly, results of N Olivetti allow one to present an LDS discipline for (at least) propositional circumscription.

To explain the idea let ⊢_{m} denote consequence in minimal models. For this consequence we have, for example, p ∨ q ⊢_{m} ¬p ∨ ¬q, which does not follow in classical logic. Suppose we try and find a semantic tableaux counter model for the above. In classical logic we try the tableaux construction and if all the top nodes are closed then there is no countermodel. For ⊢_{m} we just change the notion of “closed”. This can depend on labelling. A more precise study of this theme will be done later. See [Olivetti, ].

Example 2.3.7 (Application to Planning) The notion of a structured database allows one to give a logical modelling to actions. To give an idea of how it is done, consider a blocks world example. Assume three blocks a, b and c and the initial state (model) Δ_{1} to be {on (a, c), on (table, b), on (table, a)}. We move c from the top of a by our first action α and put it on the table and then move it again and put it on b by action β. The question is can we model the pair (Δ_{1}, α ∗ β)? Clearly after executing α we get Δ_{2} = { on (table, a), on (table, b), on (table, c)} and after executing β we get Δ_{3} = {on (table, a) , on (table, b), on (b, c)}. If we want one database to model (Δ_{1}, α ∗ β), we can use the following structured database, where 0, α, β are labels.

0. on (a, c)

0. on (table, b)

0. on (table, a)

α: on (table, c)

β: on (b, c) 0 < α < β.

If we ask the query ?(on (x, c) we get three answers with three labels: 0: on (a, c); α: on (table, , c); β: on ( b, c).

The situtation is no different from a previous Example 2.3.3 where we get Fly(a) and ¬ Fly

(a) from different parts of the database. The relative strength of the data will determine which answer is accepted.

To sum up, we are saying we can model actions by adding their results to the data to form a structured database.

Example 2.3.8 (Probabilistic Nets) A typical example is a network of dependencies of the form in Figure 2.11

[figure: t = Illness; Symptom 1; Case; Smoker; Symptom 2]

Figure 2.11:

There are various probabilistic dependencies in the network and one can put in numerical values at the nodes. If some of the values are known, the network can predict values at the remaining nodes. Thus network ⊢ value x: node t means that the value x is predicted at the node t.

Suppose we put in a value y at the node Smoker. On the basis of that and the other values we get a value x at node t. Suppose the value y: Smoker was obtained from another network, for example Figure 2.12 on the grounds that hippies smoke because they are hippies and yuppies smoke because they are stressed.

The Surgical Cut rule means that if we replace in the first network the node “Smoker” by the second diagram to obtain a new more complex network, then the complex network will give the same answer at t.

A notion of proper replacement (or Substitution) needs to be defined, which will include adjustments of the probability dependencies between nodes. Such adjustment is possible. There are working systems of this kind. One such a commercial system is HUGIN, based on [Lauritzen and Spiegelhalter, 8].

Example 2.3.9 (Databases as labels) Let M be the theory of sequences of numbers and A algebra of labels and L classical language. Here is a database (figure 2.13).

[figure: ?y: Smoker; b: Yuppy; a: Hippie]

Figure 2.12:

s : \begin{matrix}1. t_{1} : A_{1} \\ 2. t_{2} : 1. r_{1} : B_{1} 2. r_{2} : B_{2} . \\ 3. 1. n_{1} : C_{1} 2. n_{2} : C_{2}, 3. n_{3} : C_{3} : D \end{matrix} Figure 2.13:

The database is labelled s. It has three items in it, t_{1} : A_{1}, t_{2} : A_{2}, t_{3} : A_{3}. The first, t_{1} : A_{1} is a pure declarative unit. The second is a labelled database (ie A_{2} is a database) and the third is a declarative unit with formula D and a database as a label, t_{3}.

Example 2.3.10 (Situation semantics (Barwise and Perry)) Situation semantics, introduced in the early 1980’s, is based on different basic notions. The primitives of the theory are situations (standing for events, properties and relations), and not models and possible worlds. These are partial states of the real worlds. Formally the situation when compared with the traditional notion of a model, should be considered as some limited parts of a model. But these situations can also be elements of situations, standing in relations to one another and to other things.

Types of situations, called infons, take the form of a collection of basic facts. The infons, σ, are to be considered as properties holding of situations s. This relation is denoted by s ⊨ σ. These properties divide the situations into situation types. Declarative assertions are called propositions, they are comprised of a situation and a type of situation (infon) representing the assertion that the situation is of the indicated type. The notion of constraints is understood as a relation between types of situations. This relation is of the form s_{i} ⊨ σ_{i} ⇒ s_{j} ⊨ σ_{j}, namely: If in some situation s_{i}, σ_{i} holds then in some other situtation s_{j}, σ_{j} holds, (eg if there is smoke, there was fire). The traditional notion of a consequence relation is replaced by the notion of an information containment system (ICS). These are structures (S, Σ, ⊨) which contain situations s ∈ S and infons σ ∈ Σ as above, together with a relation of the form s ⊨ σ.

The formal connection of LDS with situation semantics is as follows:

• the label corresponds to the situation

• the formula corresponds to the infon.

This connection is not superficial or just mathematically formal. It is basic and conceptual. By connection, however, we do not necessarily mean agreement. By connection we mean that both disciplines focus on more or less the same phenomena and try to address them their own way. Consider the basic intuition of situation semantics, that the traditional models are not adequate and that the basic notion should be that of a limited situation, s, a portion of reality with various facts holding at that context. An infon σ is a bit of information holding in s. If we represent the information of the infon σ by a formula A, then we can annotate the formula by a label t, to indicate the kind of situation s in which the formula holds. Thus s : σ becomes t : A. We can also represent this intuition by annotating formulas A by s yielding a pair s : A, indicating which “contexts” A is to be “applied”. Conversely, assume we are given a labelled declarative unit t : A, if we want to give it appropriate semantical interpretation in a model, we need to interpret the label t in the model as well as the formula A. If we define a satisfaction relation of the form M ⊨ t : A then, by varying t we get various contexts t, within the model M, which can be viewed as the situations M_{t} with A as the infon, and we can let M_{t} ⊨ A mean M ⊨ t : A.

The formal connection between the two theories can be given as follows:

1. An ICS is a system (S, Σ, ⊨) where S are the situations σ ∈ Σ are the infons and s ⊨ σ is the support relation. This can be turned into a formal LDS theory by letting the labels be S, the atomic formulas be σ and take the proof system to be identity (namely we let A ⊢ B iff A = B and Δ ⊢ A iff A ∈ Δ).

2. Conversely, given an LDS theory Θ, an ICS can be derived by letting s ∈ S be the labels, σ ∈ Σ be the set of formulas and ⊨_{Θ} be defined by s ⊨_{Θ} σ iff Θ ⊢ s : σ.

Let us work out a detailed example of an LDS which is at the same time an Information Containment System.

1. A time-location situation theory

(a) Let {l_{1}, l_{2}, …} be a set of indices for locations and {t_{1}, t_{2}, …, } be a set of indices for times. Let {R_{1}^{n_{1}}, R_{2}^{n_{2}}, …} be a set of preidcates of the indicated arity and {a_{1}, a_{2}, …} be a set of individuals.

(b) A situation is a set of tuples of the form

α = (t, l, R_{i}^{n_{i}}, a_{1}, …, a_{n_{i}}, ν)

where ν ∈ {0, 1}. The meaning of α is that at time t and location l the relation R_{i} holds (for ν = 1) or does not hold (for ν = 0) between the individuals a_{1}, …, a_{n_{i}}.

(c) We write s ≤ s′ iff for all α, α ∈ s implies α ∈ s′.

(d) A set S of situations is called realist if S is directed under ≤. This notion is equivalent to there being a temporal-location model for S.

(e) A situation is coherent if it does not contain both (t, l, R, a_{1}, …, a_{n}, 0) and (t, l, R, a_{1}, …, a_{n}, 1) for the same relation.

(f) Let the language for infons be many sorted predicate logic with atoms of the form R_{i}^{2+n_{i}}(t, l, a_{1}, …, a_{n_{i}}) where the first sort is for time variables, the second sort for location and the rest is for individuals.

(g) An infon is a disjunction of conjunctions of literals of the language. A literal is either an atom or its negation. We write literals R(t, l, a_{1}, …, a_{n})^{ν}, to mean R(t, l, a_{1}, …, a_{n}) for ν = 1 and ¬R(t, l, a_{1}, …, a_{n}) for ν = 0.

(h) Given a situation s and an infon σ = ∨_{i} ∧_{i} σ_{ij}, where σ_{ij} are literals we say s ⊨ σ iff for some i we have that for all j, s ⊨ σ_{ij}. We say s ⊨ R(t, l, a_{1}, …, a_{n})^{ν} iff (t, l, R, a_{1}, …, a_{n}, ν) ∈ s.

We now have an ICS, Information Containment System (S, ⊨ Σ, ≤).

2. Translating in general an ICS into LDS

Let us see how this would be represented as an LDS. We first do a general construction and later do an LDS system for this particular example.

To turn any ICS system (S, ⊨ Σ, ≤) into an LDS, we take (S, ≤) as our algebra of labels A and M, and take Σ as our language L. We choose a particular labelled theory Δ to be {s : σ | s ⊨ σ} and define an LDS-consequence from any Θ by Θ ⊢ α : A iff α : A ∈ Θ. This consequence ⊢ will give us back, in the case of Δ, our relation ⊨, namely s ⊨ σ iff Δ ⊢ s : σ.

The relation ≤ satisfies Δ ⊢ s : σ and s ≤ s′ implies Δ ⊢ s′ : σ.

Conversely, given any LDS system and any theory Θ, we can define an information containment system (dependent on Θ) by taking:

S = set of labels
Σ = set of formulas

and define

s ⊨ σ if Θ ⊢ s : σ.

The relation ≤ has to be defined externally as s ≤ s′ iff for all σ, s ⊨ σ implies s′ ⊨ σ.

3. An LDS formulation of the time location example

We now look at the example in (1) and see how we would naturaly turn it into an LDS theory. Since in LDS the emphasis is on syntax, we would take as our labels triples (s, t, l) of the situation, time and location. We take as our formulas literals of the form ±R(a_{1}, …, a_{n}). The basic declarative unit is (s, t, l) : ±R(a_{1}, …, a_{n}). The relation ≤ can be arbitrarily defined on the labels and can be written as (s_{1}, t_{1}, l_{1}) ≤ (s_{2}, t_{2}, l_{2}) meaning the situation s_{1} at (t_{1}, l_{1}) is part of the situation s_{2} at (t_{1}, l_{2}). (We may wish to require that t_{1} = t_{2} and l_{1} = l_{2} depending whether you accept that the same situation can arise at different times and places. It is up to us to formulate what we want).

A theory is a constellation of declarative units. The following is an example of a theory

{α : R_{1}(a, b); β : ¬R_{2}(c, d, a); α ≤ β.}

α, β are triples (labels).

The proof theory is very simple:

{α : A, α ≤ β \atop β : A} .

This reflects the fact that β contains α.

Let Θ be any theory, e.g. the above theory. We get an ICS from it by letting

S  = {a, β}
Σ  = set of ± literals
s ⊨_{Θ} σ  iff Θ ⊢ s : σ

If we externally define α ≤′ β iff for all σ, α ⊨ σ implies β ⊨ σ, we get that ≤′ is the same as ≤, since the proof rules ensure that.

For example, let us show that for the above Θ, we have

β ⊨_{Θ} R_{1}(a, b).

Here is the proof:

(a) α : R_{1}(a, b) given in Θ

(b) α ≤ β given

(c) β : R_{1}(a, b) by rule

Note that so far, our language L does not allow for labels in the formulas. Thus formally situations cannot appear inside infons. This is only a formality because the label algebra A can be a sublanguage of L. In fact the LDS discipline allows for label dependent connectives.

Example 2.3.11 (Fallacies) The reader should note that our point of view and the use of labels is genuinely more general and is capable of yielding more. We describe an unexpected application of our view. There is a serious, well-motivated and well-organised community; the informal logic and argumentation community, studying the nature of human reasoning and argumentation in general and attempting to foundationally explain the role of the fallacies in human arguments. Fallacies are argument structures which appear to be correct and convincing, but are actually wrong. Many of them can be effectively used in some situations, but not in others. Any account of real life human practical reasoning must give account of the fallacies. Well known among them is the fallacy Ad Hominem, the fallacy of attacking not the argument but the person presenting it. This kind of reasoning is sometimes acceptable and sometimes not. It is generally considered nonlogical, although admittedly extensively used by the human practical reasoner. In our framework, this fallacy has a natural place.

Consider the notion of a database Δ. This is a structure of declarative units of the form t : A, where t is the label and A the formula. The label t annotates A. Suppose the annotation indicates the priority of the formula A and that in an external ordering < gives the relative strength of the priorities. Thus a priority database can be for example

{t : A → C, s : B, t < s}

t and s can be numbers of algebraic terms and t < s indicates that B has a higher priority than A. This priority can be used in derivation. For example, in the presence of A → ¬C, B → C of equal priority, C will be derived.

The data items A and B are formulas of the logic L_{1}, which is applied to some application area. In many areas it is quite reasonable to have the labels themselves be formulas α, β of another language and logic L_{2}, describing the origin and nature of the data items, A, B. Some reasoning in L_{2} may be available to determine the priority (if any) of α and β. A formula Ψ(α, β) and a base theory Θ (possibly dependent on Δ) of L_{2} may be used for this purpose, i.e. we have:

α ≤ β iff Θ ⊢_{2} Ψ(α, β).

The simplest condition (in case L_{2} has some form of implication) is

α ≤ β iff Θ ⊢_{2} β → α.

Note that our labels are wffs α of L_{2} labelling wffs A of L_{1} and the base theory Θ determines the priorities of labels. We now explain the logical force of the fallacy by an example. Suppose we are faced with the following deduction.

\begin{matrix}α : A → ¬C \\ β : B → C \\ γ : A \\ γ : B \\ Θ ⊢_{2} β → α \end{matrix}

We must conclude C, because β has higher priority than α. To counter this argument, we may either prove ¬C from additional data or we may attack the source of information, i.e. add Θ_{0} to Θ or try and show that Θ ∪ Θ_{0} ⊬_{2} β → α?, (Note that L_{2} reasoning is also non-monotonic!). This move appears to us as attacking, not the argument, but its source. However, in the correct context (priority logic) it is a correct move. Other fallacies which are explainable in this framework are Ad Verecundiam, appeal to unsuitable authority, where the labelling is incorrect and fallacies of irrelevance. A systematic study of the fallacies in our context will (hopefully) be done elsewhere. [Gabbay, 1994]

Example 2.3.12 (Dempster–Shafer Rule) Section 1.6 discussed the feature of aggregating arguments and evidence towards a conclusion. Examples 4.1.1 and 1.6.1 are sample cases. The present example presents a very well known rule of aggregation, the Dempster–Shafer rule. Our exposition relies on [Ng and Subrahmanian, 1994].

The algebra A we are dealing with is the set of all subintervals of the unit interval [0,1]. The Dempster–Shafer addition on these intervals is defined by

[a, b] ⊕ [c, d] = [a · d + b · c − a · c ; , ; 1 − k {b · d \atop 1 − k} ]

where k = a · (1 − d) + c · (1 − b), where ‘·’, ‘+’, ‘−’ are the usual arithmetical operations. The compatibility condition required on a, b, c, d is

φ([a, b], [c, d]) ≡ k ≠ 1.

The operation ⊕ is commutative and associative. Let e = [0, 1].

The following also holds:

• [a, b] ⊕ e = [a, b]

• For [a, b] ≠ [1, 1] we have [a, b] ⊕ [0, 0] = [0, 0]

• For [a, b] ≠ [0, 0] we have [a, b] ⊕ [1, 1] = [1, 1]

• [a, b] ⊕ [c, d] = ∅ iff either [a, b] = [0, 0] and [c, d] = [1, 1] or [a, b] = [1, 1] and [c, d] = [0, 0].

In this algebra, we understand the declarative unit [a, b] : A as saying that the probability of the event represented by A lies in the interval [a, b]. We have, of course

[a, b] : A → B; [c, d] : A
,
[a, b] ⊕ [c, d] : B

provided φ([a, b], [c, d]) holds.

It is also possible to move to a higher language and write clauses of the form

t : (t_{1} : A_{1}) → ((t_{2} : A_{2}) → (t_{3} : A_{3}))

which is more like the way clauses are used in traditional Dempster–Shafer applications. Such languages are studied in Section 8.6.

2.4 Case study: Concatenation logic and linear logic

This section will illustrate the ideas of previous sections by applying them to one case study, that of concatenation logic CL. We give a Hilbert system formulation, an LDS formulation, and an consequence relation formulation for concatenation logic. We describe its data structures, deduction theorem and semantics. The full details will be developed later, in the chapters on resource logics.

A database in this logic is a sequence of formulas (A_{1}, …, A_{n}). To derive B from the database we must “use” the assumptions in the order shown. Further when we use modus ponens A, A → B ⊢ B, the ticket A → B must be supported by assumptions earlier in the data sequence than all those which support the minor premise A. Thus, for example

1. A → (B → C)

2. B

3. A

does not prove C because we have to start by using (1) and (3) “jumping over” (2). However,

1. A → (B → C)

2. A

3. B

does prove C because (1) and (2) give (B → C) then (3) is used and we get C.

Another example is:

1. A → (A → B)

52 CHAPTER 2. INTRODUCING LABELLED DEDUCTIVE SYSTEMS

2. A This database does not prove B because (2) needs to be used twice. However, the database:

1. A → (A → B)

2. A

3. A does prove B.

Another example is:

1. A → (A → B)

2. A

3. A

4. C This database does not prove B because (4) is not used. Even if (4) were B (ie C = B) we still could not derive B because if we use (4) we are not using all the assumptions and we are not starting our proof at the first one.

Note that in principle there is a lot of scope here to define how we want to use the resource. For example we can say that we want to use the assumption in order but it does not matter where we start or finish, as long as order is preserved.

Thus the database:

1. C

2. A → B

3. A

4. D will prove B but the database:

1. A → B

2. C

3. A

4. D will not prove B.

The reader may ask why one should require such restrictions on resource? This particular restriction may or may not have any logical intuitive meaning (maybe it is useful for verification of stack handling in Forth?). We are just technically illustrating the options of resource use.

We have more options for restrictions like those in the following database:

1. A → (B → C) 2a. : A 2b. B Our restriction is to use only one of any a, b pair. Thus we can deduce only B → C but not C.

This particular resource restriction arises naturally in applications. Assume we have the data 1. A → (B → C)

2. X

but we do not know whether X is A or X is B. For example, our research project will be funded and a letter has been sent but we do not know the starting date. It is either October 1 or April 1. H Williams studies such databases in [Kong and Williams, 1991].

The language contains implication → only.

Definition 2.4.1 (CL Hilbert System) 1. Consider the Hilbert system defined by the following axiom schemas and rules:

Axioms

1  A → A
2  (A → B) → ((C → A) → (C → B))

Rules

3  {A, A → B \atop B}

4  {A → B \atop (B → C) → (A → C).}

Define ⊢ A as usual in Hilbert system theory.

2. We now define a consequence relation for concatenation logic.

Our data structures are lists of wffs of the form (A_{1}, …, A_{n}). We define

(A_{1}, …, A_{n}) ⊢ B iff ⊢ A_{1} → (A_{2} → … → (A_{n} → B) …).

The above presented CL in Hilbert style. Notice that our idea of structured database is exemplified in the fact that our database is a list. We can now formulate the Cut rule.

Theorem 2.4.2 (Cut Rule for CL Hilbert Style) (1) and (2) imply (3):

1. Δ ⊢ A

2. Γ[A] ⊢ B

3. Γ[Δ] ⊢ B

Where

\begin{aligned}Δ & = & (A_{1}, …, A_{n}) \\ Γ[A] & = & (C_{1}, …, C_{m}, A, D_{1}, …, D_{k}) \\ Γ[Δ] & = & (C_{1}, …, C_{m}, A_{1}, …, A_{n}, D_{1}, …, D_{k}) \end{aligned}

Proof. In later chapters, Theorem 10.1.16. ■

Notice that Theorem 2.4.2 illustrates our notion of surgical cut. A appears in the data structure Γ and this is symbolised by writing Γ[A]. Δ can prove A and the cut rule says Δ can be substituted for A in the same position in Γ.

To give another example, if the data structure of a logic are diamonds and Γ is something like: and Δ ⊢ A and Δ itself is a diamond configuration then the cut rule will substitute Δ for A in Fig 2.14. The substitution notion will be defined as part of the cut rule.

We now give a consequence relation presentation of CL. We denote the consequence relation by ⊩, to compare it with ⊩ of definition 2.4.1.

Definition 2.4.3 (Consequence presentation of CL) Consider data structures in the form of lists Δ = (A_{1}, …, A_{n}). A structured-consequence relation on pairs (Δ, A), written as Δ ⊩ A is any relation satisfying the following two conditions.

[figure: A] Figure 2.14:

1. Identity (Restricted Reflexivity)

(A) ⊩ A

2. Surgical Cut (for the data structure)

(A_{1}, …, A_{n}) ⊩ A

{(C_{1}, …, C_{m}, A, D_{1}, …, D_{k}) ⊩ B \atop (C_{1}, …, C_{m}, A_{1}, …, A_{n}, D_{1}, …, D_{k}) ⊩ B}

Let ⊩CL be the smallest consequence relation satisfying the right hand side for the data structure namely: deduction theorem

(A_{1}, …, A_{n}) ⊩ A → B iff (A_{1}, …, A_{n}, A) ⊩ B

Such a smallest ⊩ exists.

Remark 2.4.4 The previous definition illustrates two points.

1. How to define a logic by conditions on its consequence relation and its data structures.

2. The notion of the Cut rule and a deduction theorem depend on the data structures.

To further illustrate our ideas, note that the well known intuitionistic logic can be defined in a similar manner, as shown next.

Definition 2.4.5 1. Intuitionistic Consequence Data structures are sets of wffs Δ ⊩ A is the smallest consequence relation on the data structure satisfying Reflexivity, Monotonicity, Cut and the Deduction Theorem.

2. R-mingle Consequence Data structures are sets of wffs. Δ ⊩ A is the smallest Consequence Relation satisfying Restricted Reflexivity, Cut and the Deduction Theorem.

3. Linear Consequence Data structures are multisets of formulas. Δ ⊩ A is the smallest Consequence Relation satisfying Restricted Reflexivity, Cut and the Deduction Theorem.

Notice that the difference between R-mingle and linear consequence is only in the data structures.

Remark 2.4.6 One needs to prove that indeed what is known as implicational linear logic, or implicational relevance logic or implicational intuitionistic logic are indeed what is defined in the previous definition. This is a non-trivial claim. See [Gabbay, 1992a, Gabbay et al., 1994] for proofs. In particular, we will show that ⊢CL of Definition 2.4.1 is the same as ⊩CL of 1.4.3.

We now present an LDS discipline for CL

Definition 2.4.7 (LDS Discipline for CL) 1. The labelling algebra is the free semigroup with associative binary operation ∗ and left identity e. We thus have

• e ∗ x = x

• (x ∗ y) ∗ z = x ∗ (y ∗ z).

2. The LDS logic rules are → Introduction and → Elimination for labelled formulas

\begin{matrix}→ E rule \\ α : A \\ β : A → B \\ β ∗ α : B \end{matrix}

→ I Rule: To introduce γ : A → B, open a box. Assume x : A with a new atomic (generator) label x and prove using the rules γ ∗ x : B. Schematically as in figure 2.15:

Show γ : A → B

x : A  Assumption
⋮
⋮
γ ∗ x : B

Figure 2.15:

Theorem 2.4.8 ⊢ A in the Hilbert system if and only if e : A (A with label e ) is provable in LDS.

Proof. Later ■

Definition 2.4.9 (Concatenation (free semigroup frame) Semantics for CL) 1. A CL structure is a pair (X, h) where X is a set and h is a function assigning to each atomic proposition q and each finite sequence α ∈ X^{∗} a truth value, ie h(α, q) ∈ {0, 1}, where X^{∗} is the set of all finite (or empty) sequences of elements of X. The function h is called an assignment. The function h can be extended to a function h^{∗} on arbitrary formulas via the following recursive equation:

\begin{aligned}(∗) & h^{∗}(α, A → B) = 1 iff \\ & ∀β ∈ X^{∗}[h^{∗}(β, A) = 1 and (α = ∅ ∨ β ≠ ∅) ⇒ h^{∗}(α ∗ β, B) = 1] \end{aligned}

where α ∗ β is result of concatenating the sequence β to α from the right. * is assumed to be associative, ie

(a ∗ b) ∗ c = a ∗ (b ∗ c) = (a ∗ b ∗ c)

2. We say that a formula A is valid in the semantics if for all structures (X, h), we have h^{∗}(∅, A) = 1.

3. Note the requirement α = ∅ ∨ β ≠ ∅ in (*) above. If we relinquish this requirement we need the additional rule

{⊢ A \atop ⊢ (A → B) → B}

Theorem 2.4.10 For the Hilbert system CL we have ⊢CL A iff A is valid in the CL semantics.

Proof. The reader can verify soundness directly. To show completeness construct the canonical structure by letting X be the set of all wffs of the language and define h((A_{1}, …, A_{n}), q), for atomic q to be 1 iff (A_{1}, …, A_{n}) ⊩ q. Show by induction that

h^{∗}((A_{1}, …, A_{n}), B) = 1 iff (A_{1}, …, A_{n}) ⊩ B

for arbitrary A_{1}, …, A_{n} and B. ■

Remark 2.4.11 Note that the semantics for linear implication is obtained by taking X^{∗} to be all finite multisets of elements of X, the semantics for relevant implication is obtained by taking X^{∗} to be the set of all finite subsets of X and the semantics for intuitionistic implication is obtained by further requiring that h(α, q) be ⊆ monotonic in α.

We now give a goal directed computation procedure for the consequence relation ⊩CL.

Definition 2.4.12 Let data be lists of wffs and goals be wffs. Consider the following computation rules.

1. Identity (q)?(q) success, for atomic q.

2. Deduction (A_{1}, …, A_{n})?A → B succeeds if (A_{1}, …, A_{n}, A)?B succeeds.

3. Atomic Rule (B_{1} → … → (B_{k} → q) …), A_{1}, …, A_{n})?q succeeds if the list (A_{1}, …, A_{n}) can be divided as a concatenation of k lists (A_{1}, …, A_{m_{1}+1}, …, A_{m_{k}}) where m_{0} = 0 < m_{1} < … < m_{k−1} < m_{k} = n, such that all the following queries succeed for i = 0, …, k − 1

(A_{m_{i}+1}, …, A_{m_{i+1}})?B_{i+1}

Notice that the ticket (B_{1} → … → (B_{k} → q) …) must appear first in the data structure.

Theorem 2.4.13 (A_{1}, …, A_{n}) ⊩ B iff (A_{1}, …, A_{n})?B succeeds.

Example 2.4.14 1.
∅?(A → B) → ((C → A) → (C → B))

succeeds if

(A → B)?(C → A) → (C → B)

succeeds if

(A → B, C → A)?C → B

succeeds if

(A → B, C → A, C)?B

succeeds if

(C → A, C)?A

[figure: s : ♢B; t : □A] Figure 2.16:

succeeds if

(C)?C

succeeds if success.

2.

(C → A, C, C)?A

succeeds if

(C, C)?C

succeeds if failure.

This fails because the rule of identity does not apply. The reader should compare this example with Definition 2.6.2.

2.5 Case study: Modal logic

Modal and temporal logic is a good motivating example for labels. In essence modal logic deals with information (i.e. formulas) related to different worlds or times and with patterns among these worlds. It is therefore very natural to name and explicitly refer to these worlds and the way they are related. We also have a distinguished world and time which is where we are. Thus an LDS approach, where we use labels to name worlds and a labelling language A to describe patterns of worlds comes very naturally indeed.

Example 2.5.1 (Some modal rules) We begin with a simple configuration of Figure 2.16

The modal axioms and the meaning of □ dictate to us that in the constellation displayed in Fig. 2.16, A must hold at s. Further, the meaning of ♢ tells us that there should exist a point r with s < r such that r : B.

We can thus state two rules for manipulating modal databases.

(∗1) {t : □A; t < s \atop s : A}

and

(∗2)  s : ♢B . create r, s < r and r : B

Using the first rule we manipulate the constellation displayed in Fig. 2.16 into the one of Fig. 2.17 and using the second rule we further manipulate it into that displayed in Fig. 2.18. In the predicate case r depends on the free variables of B. The second rule is good for modal logics like K S4, etc.

The axiom of Löb:

□(□A → A) → □A

corresponds to the modification rule

(∗3)  s : ♢B create r; s < r and r : B ∧ □ ∼ B

[figure: s : A; s : ♢B; t : □A] Figure 2.17:

[figure: r : B; s : A; s : ♢B; t : □A] Figure 2.18:

thus in the logic with the Löb axiom we get from the configuration of Fig. 2.16 to the configuration in Fig. 2.19.

It is clear now how the rules work. They allow us to move from one configuration to another and the consequence relation is between configurations. For example, we have Fig. 2.16 ⊨ Fig. 2.18, in modal K and with Löb’s axiom we have Fig. 2.16 ⊨ Fig. 2.19.

The above rules are elimination rules. We still need introduction rules

(∗4)  s : A; t < s ; . ; t : ♢A

(∗5) \begin{matrix}create an arbitrary s; t < s \\ and show s : A \\ . \\ t : □A \end{matrix}

Example for □ introduction:

Given t : □(A → B) ∧ □A
Create s, t > s
Show s : B
Deduce t : □B.

The picture however is not as simple as it seems. In the usual formulations of modal logics, axioms correspond to conditions on the possible world relation.

In our presentation, axioms correspond to any one of a variety of features. Table 2.1 below offers a selection.

We see here how a second order axiom, i.e. the axiom of Löb, which corresponds to a second order semantical condition, can become a simple movement in LDS. When LDS is translated into two sorted classical logic, the function symbols generating the labels may allow us to reduce the second order condition into first order, as is the case with McKinsey axiom ♢□q → □♢q, when added to K without transitivity.

Remark 2.5.2 (Linear Modal Logic) Suppose we deal with the modal logic for linear frames. Then the configuration in Fig. 2.20. can be expanded in three ways.

By rule (*2) we can create a point u : A, with t < u. In a non linear modal logic such as K, S4, etc. this would lead us to the configuration of Fig. 2.21.

one more step would allow us to have u : A∧B and hence by ♢ introduction we get t : ♢(A∧B). However in the case of linear modal logic, Fig. 2.21. is not allowed. We need to consider five

possibilities.

[figure: r : B ∧ □ ∼ B; s : A ∧ ♢B; t : □A] Figure 2.19:

Table 2.1:

Axioms  LDS Features
K axioms  The notion of basic constellation
□(A → B) → (□A → □B) or a diagram, as in Definition 1.5.1
⊢ A ⇒⊢ □A  Note that in the modal case the relation R
♢A = def¬□¬A  in the diagram is binary. The LDS

formulation contains also some simple rules for □ and ♢ some of which were shown in the figure above, rules (*1), (*2)

□A → □□A  Transitivity of R in the constellation
□(□A → A) → □A  In modal semantics the axiom has no

first order condition. It corresponds to the finiteness of the frame. In LDS it corresponds to the modification rule (*3).

♢A ∧ ♢B →  Corresponds to the linearity
♢(A ∧ B) ∨ ♢(A ∧ ♢B)  of the relation R. This affects the
∨♢(B ∧ ♢A)  basic rule (*2) as explained in Remark 2.5.2

1. t < u < r < s

2. t < u = r < s

3. t < r < u < s

4. t < r < u = s

5. t < r < s < u

If, as a result of each of these possibilities, we end up with t : ♢(A ∧ B) then we can conclude t : ♢(A ∧ B).

We have to do that because our databases are linear and the above five configurations are all the minimal possible extensions in which u can be accommodated.

We thus have to modify all the rules with ‘create’ in them to mean:

[figure: t : □B; r : B; s : B; t : ♢A] Figure 2.20:

[figure: u : A; s : B; r : B; t : □B; t : ♢A] Figure 2.21:

s : ∃xB(x) t : ∃x♢A(x, y) \overline{}Figure 2.22:

Given initial configuration

Split proof into n branches according to all minimal allowed extensions in which the created u can be accommodated.

(*3) becomes (**3)

(∗ ∗ 3) \begin{matrix}t : ♢A in a configuration \\ create u, consider all allowed minimal \\ extensions of D with u in them. Put \\ u : A in and branch the proof. The ultimate \\ goal of the overall proof must succeed in \\ all branches. \end{matrix}

The above is computationally very expensive. In the example previously given, we need to go to five configurations in order to make the simple move

(∗6) {t : □A ∧ ♢B \atop t : ♢(A ∧ B)}

However our LDS proof discipline does not stop us from adopting (*6) as a rule. Recall that the LDS discipline tries to enjoy both worlds—the classical world through the labels and the special non-classical world through the language of the formulas in the labels. For each application, desired balance can be sought.

We now come to quantifier rules. We have already assumed that different labels will have different sets of elements in them. To appreciate what this means, we take our clue from modal logic. Consider Fig. 2.22.

At the label t, an x exists such that t : ♢A(x, y) holds. This x depends on t and on y. We therefore need a Skolem function c^{t}(y). The index t is read to mean that c^{t} was created at t. We thus get t : ♢A(c^{t}(y), y). Hence we can create a node s : A(c^{t}(y), y). We also must indicate whether c^{t}(y) ‘exists’ at the node s. If it does exist at s (probably because of some rules) then we write s : c^{t}(y). The difference comes out in existential introduction. Suppose we have s : E(c^{t}(y)), can we infer s : ∃xE(x)? The answer depends whether c^{t}(y) exists at s or not. Here are some rules:

(∗7)  s : c; s : E(c) ; . ; s : ∃xE(x)

(∗8)  t : ∃xA(x, y_{1}, …, y_{n}) ; . ; t : A(c^{t}(y_{1}, …, y_{n}), y_{1}, …, y_{n}); t : c^{t}(y_{1}, …, y_{n})

(∗9)  t : ∀xA(x) \overline{u^{t} is a universal constant.} t : A(u^{t}); t : u^{t},

(∗10)  s : u^{t}; s : A(u^{t}); s : c^{r} ; . ; s : A(c^{r})

u^{t} is a new universal constant, r is arbitrary.

(∗11)  t : c^{r}; s : A(u^{t}) u^{t} a universal constant. s : A(c^{r})

(∗12)  s : u^{t}; s : A(u^{t}) u^{t} a universal constant. s : ∀xA(x)

Rule (*9) is analogous to the classical logic rule which allows us to replace ∀xA(x) by A(u), where u is a universal constant, i.e. u is arbitrary. At any stage later in a classical logic proof, we can pass from B(u) to ∀uB(u) provided we discharged all additional assumptions. We can certainly pass from B(u) to B(c), c any constant. The same considerations apply to the labelled case except that we have to watch for the added complication that elements created in one label (world) (e.g. c^{r}, u^{t}) may not exist in another label (world). Imagine we have t : ∀xA(x), this means A holds for all elements existing at t. We use rule (*9) and represent t : ∀xA(x) by a universal constant u^{t}, i.e. we have now t : u^{t} and t : A(u^{t}). Suppose for some proof theoretical reason, s : A(u^{t}) is obained. Thus we really have that A holds at s for an arbitrary element existing at t. Suppose now that we know that the element c^{r} created at r, exists at t. This is written as t : c^{r}. Then we can deduce s : A(c^{r}). This is rule (*11).

We now explain rule (*10). Start with t : ∀xA(x), this by rules (*9) and (*12) is equivalent to having t : u^{t} and t : A(u^{t}). Suppose that by some proof manipulation we end up with s : u^{t} and s : A(u^{t}). This means that the universal constant u^{t} is in label s and so is s : A(u^{t}). We understand that as a proof of s : ∀xA(x) from t : ∀xA(x) and so we allow ourselves to deduce s : ∀xA(x). Therefore for any c^{r}, which exists at s displayed as s : c^{r}, we get A(c^{r}) at s, i.e. s : A(c^{r}). This entire chain is summarized as rule (*10).

So far these rules assume that somehow an element c^{t} created at t ends up available at label s, i.e. s : c^{t} holds. How do elements move around? We need special rules for that and they differ from system to system. In other words the logic must tell us how elements skolemized in one label can be transported to another label. These are called visa rules. Here are two sample rules corresponding to the Barcan and converse Barcan formulas:

(b1)  t : x^{r}, t < s x either a constant c or a universal constant u. s : x^{r}

(b2)  t : x^{r}, s < t x either constant c or a universal constant u. s : x^{r}

62 CHAPTER 2. INTRODUCING LABELLED DEDUCTIVE SYSTEMS

Example 2.5.3 (Barcan formula revisited ) Use (b1) to show that

t : ∀x□A(x) ⊢ t : □∀xA(x)

1. Start t : ∀x□A(x).

2. ∀-Elimination at t yields t : □A(u^{t}), t : u^{t}.

3. Create an arbitrary s, t < s.

4. s : A(u^{t}), s : u^{t} by □ elimination rule and visa rule (b1).

5. s : ∀xA(x), by (*12).

6. t : □∀xA(x), since s was arbitrary.

To present modal logic as an LDS, we take the usual language of modal logic with □ and ♢ as our L and take sets D with a binary relation ≤ as our labels. It is convenient to think of (D, <) as a configuration. Definition 2.5.4 1. A declarative unit is a pair t : A where t is a label and A is a formula

of the modal language. A labelled term has the form t : c_{s}, where t, s are labels and c is a constant or variable of the modal language. The double indices for terms are needed because c can be created at label s and be used or be present at label t. We write t : c_{s} to denote that.

2. A configuration has the form (D, f, ≤, d), where (D, ≤, d) is a finite partially ordered set, with d ∈ D and f a function, f : D ↦ wff and terms such that f(t) = a set of formulas and a set of labelled terms. f(t) can be represented as

{A_{1}, A_{2}, …, c^{s_{1}}, c^{s_{2}}, …, }.

Note that the terms are labelled arbitrarily.

3. Queries have the form s : A. Definition 2.5.5 A modal LDS system is determined by the following components (compare with Definition 3.2.8)

1. A class K of partially ordered sets (D, ≤, d) to be used in the configurations of the system.

2. Inference rules. The inference rules manipulate configurations. These include creation and elimination of points t ∈ D and the introduction and elimination of wffs. The rules are divided into the following categories. 2.1. Introduction and elimination rules for connectives specialised for modal logic. 2.2. Quantifier rules, including Skolemization, as intuitively defined in the discussion above. 2.3. Individual elements visa permits (mobility of elements from one node to another). These

have the general form

{(D, f, ≤, d) \atop (D, f′, ≤, d)}

where f′ is like f except that for some c^{s} and t ∈ D, f′(t) = f(t) ∪ {c^{s}}.

We write

t : A; t : c^{s}; t < r

to represent the information that in the configuration (D, f, ≤, d) which we are dealing with (ie re-writing), we have t, s, r ∈ D, t < r, and f(t) contains A and c^{s}.

The notation ‘Δ(t, s); t < s; s : B; s : c^{r}; s a new point’ means that we are given a configuration Δ = (D, f, ≤, d), with t ∈ D. We add a new point s to D to form D′ = D ∪ {s} and extend ≤ by stipulating t < s and let f′ be like f on D and let f′(s) = {B, c^{r}}. Then ‘Δ(t, s), t < s, s : B, s : c^{r}’ denotes Δ′ = (D′, f′, ≤, d).

A rule of the form

{t : A \atop create s, t < s; s : B; s : c^{r}}

should be understood as

{Δ \atop ‘Δ(t, s); t < s; s : B; s : c^{r}’}

as explained above.

Example 2.5.6 Show □(□A → A) ⊢ □A.

1. Assume t : □(□A → A) and show t : □A.

2. Use an introduction rule. Create an s, t < s and show s : A.

2.1. Use □ elimination rule.

[figure: s : □A → A, □(□A → A); t]

2.2. Use classical logic to rewrite the entry at s.

s : ♢ ∼ A ∨ A

2.3. Split into two cases

[figure: s : ♢ ∼ A; s : A; 2; 1]

Case 1 is a success because we needed to show s : A.

We proceed with case 2 and show it leads to a contradiction: Create a new point r:

{r :∼ A ∧ □A \atop s} .

bring □A → A from s.

r : □A → A

use classical logic and get:

r : A

a contradiction, because we also have r :∼ A.

3. Since we showed (2) successfully, we conclude t : □A.

Example 2.5.7 Test whether ♢∃xA(x) ⊢ ∃x♢Ax 64 CHAPTER 2. INTRODUCING LABELLED DEDUCTIVE SYSTEMS

1. t : ♢∃xA(x)

2. Create s, with t < s; s : ∃xA(x)

3. Skolemise and get s : A(c^{s}).

4. t : ♢A(c^{s})

5. t : ∃x♢A(x), to be derived only if there is a visa for c^{s} to be at t. Example 2.5.8 Test whether ∃x♢Ax ⊢ ♢∃Ax

1. t : ∃x♢A(x)

2. t : ♢A(c^{t})

3. Create s, with t < s; s : A(c^{t})

4. s : ∃xA(x), to be derived only if there is a visa for c^{t} to be at s.

5. t : ♢∃xA(x) Example 2.5.9 Our modal rules can be label dependent rules, for example ♢ can change meaning from world to world:

{t : ♢_{t}A \atop create t < s_{1} < … < s_{n(t)}, s_{n(t)} : A}

The semantic condition for this modality is:

∥♢A∥_{t} = 1 iff ∥A∥_{t+n(t)} = 1.

Different truth tables in different worlds.

Let us give a quick proof that

t : □A; t : ♢B ⊢ t : ♢(A ∧ B)

1. Initial configuration

t : □A, ♢B

2. Create an s, t < s with s : B we get the configuration t : □A, ♢B; s : B; t < s.

3. Move A to s : A, using the rule:

{t : □A t < s \atop s : A}

we get the configuration

t : □A, ♢B; s : B, A; t < s.

4. Add t : ♢(A ∧ B), using the rule

{s : A, t < s \atop t : ♢A}

we get the configuration

t : □A, ♢B, ♢(A ∧ B); s : B, A; t < s.

We have thus proved that □A, ♢B ⊢ ♢(A ∧ B) because we started with the configuration in (1) with t : □A, ♢B and we step by step manipulated it into the configuration in (4) which contained t : ♢(A ∧ B).

Example 2.5.10 To show that the logic depends on the class K of orders, assume we want (D, ≤ , d) to be linearly ordered. We now try and prove

t : ♢A ∧ ♢B ⊢ t : ♢(A ∧ B) ∨ ♢(A ∧ ♢B) ∨ ♢(B ∧ ♢A)

To show that assume

1. t : ♢A, ♢B

2. Create s, t < s with

s : A

3. Create r, t < r with

r : B

However, since only linear orders are allowed our options are

t < r < s, t < r = s, t < s < r.

In each of these options, the conclusion can be proved. The lesson to be learnt is that the class of allowed configurations can influence the proof theory.

Example 2.5.11 We show that

t : □A; t : ♢B ⊢ t : ♢(A ∧ B)

1. Initial configuration

t : □A, ♢B

2. Create an s, t < s with s : B we get the configuration

t : □A, ♢B; s : B; t < s.

3. Move A to s : A, using the rule:

{t : □A t < s \atop s : A}

we get the configuration

t : □A, ♢B; s : B, A; t < s.

4. Add t : ♢(A ∧ B), using the rule

{s : A, t < s \atop t : ♢A}

we get the configuration

t : □A, ♢B, ♢(A ∧ B); s : B, A; t < s.

We have thus proved that □A, ♢B ⊢ ♢(A ∧ B) because we started with the configuration in (1) with t : □A, ♢B and we step by step manipulated it into the configuration in (4) which contained t : ♢(A ∧ B).

Discussion Advantages of the LDS proof discipline for modal logics:

• No conceptual problem in Skolemising and theorem proving, which is a major problem for modal logic.

• The principles involved are more general, good for any LDS.

• We can handle systems which have semantics which is higher order (Löb’s system is higher order because it has to be characterised by a higher order condition on the Kripke frame, namely it being a finite irreflexive partial ordering).

• The modal logic can change from world to world, all we have to do is to make our rules label dependent (ie containing labels as parameters).

2.6 Case study: priority logic and prolog

Our next case study involving structure is propositional Horn clause computation without negation by failure. This case study is not semantically based. It is based on prioritized proof theory and is a typical challenge to translate to classical logic. Here LDS can help. If Δ is a set of Horn clauses and q an atom then the non-deterministic procedural interpretation of Δ?q should mean Δ ⊢_{c} q, where ⊢_{c} is provability in classical logic. Thus since the database {q, q → q} proves q, the computation of ?q from this database should succeed. In practice, i.e. in any prolog implementation, for this simple example, the database is represented as a list, i.e. either Δ_{1}

1. q

2. q → q

or Δ_{2}

1. q → q

2. q

and the computation is deterministic, searching the list either top down or bottom up, unifying with the head of a clause asking for the body. Thus if the implementation scans the clauses top down, we have that Δ_{1}?q succeeds while Δ_{2}?q loops.

Can we characterize the notion of Δ?q = success for the top down interpretation?

We can enumerate the database Δ_{2} but obviously a translation into classical logic like the one of the modal logic case is not easily available.

It is no use translating Δ_{2} into {q(1) → q(1), q(2)} and trying to figure out a truth table for → much in the same way we did for ♢ in the previous case study. I don’t think we can find some natural translation. Of course one can always translate into classical logic using meta predicates like database (‘Δ’), succeed (‘Δ’, ‘A’) etc. but this is not a direct translation. To make our case study more tractable let us change slightly the way the computation works. This will no longer yield computation but another familiar logic. The reason for doing so is simply that at this stage I do not know how to handle the prolog case. There is, however, a Gentzen system for it by J. van Benthem [1992]. The change we make is that we ask the pointer to continue moving in one direction only. Thus ?q from

1. q → q

2. q

succeeds, because after clause 1 the pointer continues to clause 2.

On the other hand ?q from

1. p → q

2. r

3. r → p

fails, because the pointer, having passed clause 2, cannot go back to it.

I am using the word ‘pointer’ without due explanation. Use your own intuitions. In more complex prolog programs execution is much more complex using stacks and several pointers. This database and query has only one goal done in sequence. So it is easy to explain the ‘pointer’.

Let Δ be a database in the form of a list of clauses Δ = (A_{1}, …, A_{n}). The pointer is just a number 1 ≤ k ≤ n. We query the pair (Δ, k) i.e. (Δ, k)?q. To search for a solution we try and resolve with heads of the clauses (A_{k}, A_{k+1}, …). Once we resolve with clause j, we ask for the body of the clause. The computation must tell us for each k and j what is the new pointer. This we call the strategy of the pointer. For example if the pointer always goes back to r = j − k, we get that ((q → q, q), 1)?q loops, while ((q → q, q), 2)?q succeeds.

The above discussion presented an example where the database was a list. The list was needed for technical reasons, having to do with the implementation strategies of prolog interpreters. There is a rich family of systems which require priorities among the data. Among them are defeasible logics, cumulative defaults, Lambek Calculus, truth maintainance and belief revision. They all share the feature that they have no semantics but the data is organized according to priority or some network hierarchy and computation depends on this structure. The structure may come from the application area (defeasible logics, default) or be purely technical (maintaining consistency). This subsection deals with list structure. We would like our case study to be based on an application where the list structure in the database comes intuitively and naturally and has an obvious meaning. We find such a case in legal reasoning.

Consider the area of Esprit projects with which we are all familiar. There are rules for claiming expenses following an Esprit project meeting. These rules may vary slightly from country to country and from university to university. A typical rule could be of the form

C(x, d) → S(x, d, 50)

which reads:

x spent the day d at a conference → x gets subsistence of DM 50 for d.

This is a time dependent rule in the sense that it is valid at any time s after it was introduced. Thus if the rule was introduced at time t, we can put it at the database as

t : C(x, d) → S(x, d, 50).

If Dov has been to a conference at time s then the database will contain

s : C(Dov, d).

To ask the query ?S(Dov, d, 50) we resolve with the first clause and get ?C(Dov, d). However, we can use the clause s : C(Dov, d) only if t < s.

The above control mechanism is not temporal control (as was the case in the previous case study) but rather prioritized control,^{1} and although the priorities come from temporal considerations, the time does not enter into the computation, only the control strategy of the ‘prolog pointer’. In fact there are cases where exceptions are made by the commission allowing to claim for conferences before the start time of the rule. In terms of labelled deduction, the rule is that to perform modus ponens on t : A → B with s : A, we must have t < s, i.e. the ‘fact’ must come after the ‘rule’, where ‘after’ is not necessarily real ‘after’ but virtual ‘after’ including special permission.

Turning back to the application at hand, obviously we are supposed to claim expenses only once for each conference we attend. Thus if there is another rule, say university rule, introduced at time t′ which says:

t′ : C(x, y) → UP (x, y, 150)

where UP (x, y, 150) means university participation of DM 150, we are not expected to use both rules and get a total of DM 200. Either we claim from Esprit or we claim from the university.

The system may be flexible enough to allow us to claim DM 50 from Esprit and get the rest (DM 50) from the university, but not all systems are like that. The important point is that the assumption s : C(x, d) can be used only once in the computation.

Let us summarize the properties we have so far:

• The database is structured with labels which are ordered.

1Again, we are not being precise. What is a ‘prioritized’ system? As a first approximation, say that a labelling system is a priority system if the atomic labels form a partially ordered set (T, ≤, d) and the label generating function is concatenation. i.e. the labels are finite sequences of elements of T. The ordering ≤ on T is used to define some priority ordering on the sequences. This priority ordering is then used in all proof theoretical rules.

• Modus ponens is allowed only when the ticket (i.e. the implication) is earlier than the minor premiss (i.e. the fact).

• Minor premisses (facts) can be used at most once.

Let us now consider another complication arising in the application area. The above rules are only valid for conferences held in European Community countries. For a conference in America, one needs permission from the project coordinator in Brussels. So we can write a more accurate rule:

t′′ : AC(x, d) ∧ Per(x, d) → S(x, d, 100).

x participates at an American conference at day d and x has permission then x can get DM 100.

The problem with the above is that Brussels insists that permission be asked before conference participation, and not after the event. Thus to represent the rule we cannot use ordinary conjunction, but we need the ‘first A then B’ connective, which we denote by A ⊗ B. Our rule becomes

t′′ : Per(x, d) ⊗ C(x, d) → S(x, d, 100).

Consider the query ?S(a, d, 100). We resolve with the above rule and get the query ? Per(a, d)⊗ C(a, d). To succeed with that query we need to look at facts after t, succeed with Per(a, d) first and then succeed with C(a, d) with label bigger than that of Per(a, d).

We thus get the following additional property for our system:

• To show A ⊗ B we must succeed with A and with B, but must show A from an earlier part of the database than B.

So far, we made a distinction between ‘facts’ and ‘rules’. In a full scale logic (not Horn clause) a rule can serve as a ‘fact’ for another rule. Take for example, the following:

t_{2}: If subsistence per day is only DM 50, we must appeal to the commission.

This has the form

t_{2}: ∀x[C(x, d) → S(x, d, 50)] → q.

If t < t_{2} then the rule can be used to derive q. At time r, how do we know whether the antecedent of t_{2} holds? In our case it is explicitly stated as a rule, but in general it may be derivable from a group of rules. How do we check the implicational goal r : ∀x[C(x, d) → S(x, d, 50)]? We have to use hypothetical reasoning. We add C(x_{0}, d_{0}) to the database and try and derive S(x_{0}, d_{0}, 50), with x_{0} and d_{0} a new Skolem constants. We thus get an additional principle.

There are two questions to be settled. First is when we add C(x_{0}, d_{0}), i.e. with what priority (time) label? Intuitively the answer is at r, i.e. we add r : C(x_{0}, d_{0}). This is not so simple. In general we may be checking r : A → B and so we want to add r : A, but A may have the form A_{1} ⊗ A_{2}. Do we add r : A_{1} ⊗ A_{2} or do we add r_{1} : A_{1}, r_{2} : A_{2}, with r_{1}, r_{2} new priority points with the restriction r < r_{1} < r_{2}? It makes sense to choose the latter, in which case, if r < s do we also require r_{2} < s. (i.e. do we put r_{2} immediately after r but before anything which comes after r?).

The second question is how do we compute with the additional r : A? Do we use the part of the database after r : A? or do we say that since our purpose was to determine r : A → B then ‘future data’ is not relevant. The validity of r_{1} : A → B now means that data up to now together with r must yield B? These issues we leave for later.

Meanwhile note that rules can be used at any time after they are introduced, and as many times as necessary, while facts (in this particular Esprit example, though not necessarily in general) can be used only once. Thus the rule A(x) → B(x) can be used as often as needed, but the fact A(d) can be used only once. This is a bit misleading because we can regard the rule as a family of rules for each instantiation of x. Thus we could write a family of rules.

A(d) → B(d) ; A(e) → B(e) ; ⋮

If A(d) as a fact can be used only once and A(d) → B(d) can be fired only with A(d) then the rule can be used only once anyway. We get

• Without a real loss of generality we can assume that propositional instances of rules can be used at most once.

We are now ready for an example.

Example 2.6.1 (Esprit travel expenses) Database

t_{1} : ∀x, d[ Per(x, d) ⊗ C(x, d) → S(x, d, 200)] s_{1} : Per(Dov, date) s_{2} : C(Dov, date) t′ : ∀x, d[C(x, d) → UP(x, d, 150)] t_{2} : ∀x, d[C(x, d) → S(x, d, 50)] → q.

Priority

t_{1} < s_{1} < s_{2} < t′ < t_{2}.

Computation pointer At any time the pointer resides at some priority label r, i.e. the basic computation structure is (Δ, r)?t : G. The label r is the pointer. The compuation rules tell us which rules we can use to resolve with G. In our particular example we can resolve with any rule with label s. The computation then continues with the new pointer label max(r, s). Formally (we leave the pointer implicit):

• Δ?t : q succeeds if s : q ∈ Δ, t = s.

• Δ?t : q succeeds if for some s : A → q ∈ Δ, s < t and Δ?t : A succeeds.

• Δ?t : A → q succeeds if Δ ∪ {t : A}|?t : q succeeds.

• Δ?t : A ⊗ B if for some s_{2} > s_{1} > t, Δ?s_{1} : A and Δ?s_{2} : B succeeds.

Let us ask the query ?s : q, with t_{2} < s. We can thus unify with rule t_{2} and ask ?C(x_{0}, d_{0}) → S(x_{0}, d_{0}, 50). We add to the database s : C(x_{0}, d_{0}) and ask ?s : S(x_{0}, d_{0}, 50). This unifies with t_{1} and we ask ?s : Per(x_{0}, d_{0}) ⊗ C(x_{0}, d_{0}). The last query fails.

If at some future time a general permission is given, then of course the computation will succeed.

It is possible to develop the model further. One can add integrity constraints, to make the database more realistic. Once we have integrity constraints we can deal with conditions ?t : A → B as a goal is computed by letting t : A into the database, which may violate integrity constraints, so some truth maintenance has to be done. We will not go into the details of all our options. A. Martelli, L. Giordano, N. Olivetti and I have a paper on this [Gabbay et al., 1994]. Our purpose here is just to illustrate a realistic use of labels which is purely syntactical. For this purpose our discussion so far is quite sufficient.

Let us give a simplified version of the computation so far in the form of propositional directional N-prolog. The version is a stylized, simplification of the above legal database problem, but it also happens to be a fragment of the Lambek calculus, exactly suited for linguistic application and implemented by Esther Köning [1994].

Definition 2.6.2 (directional N-prolog) Let our language contain ⊗ and →.

1. Clauses and goals

(a) A is a clause if A is an atom.

(b) A is a body if A is an atom.

(c) If A_{i} are clauses and q an atom then (A_{1}⊗…⊗A_{n}) → q is a clause with body A_{1}⊗…⊗A_{n} and head q. Note that ⊗ need not be commutative.

(d) A database is a list of clauses. We present a database Δ as t_{1} : A_{1}, …, t_{n} : A_{n}, t_{1} < t_{2} < … < t_{n}. A_{i} are clauses. t_{i} are priorities and hence < is strict. In case t_{1} = t_{2}, we can simply write t_{1} : A_{1} ∧ A_{2}.

2. Let Δ be a database and B a goal. We recursively define the notion of Δ ⊢ α : B where α is a sequence of elements from {t_{1}, …, t_{n}}.

(a) Δ ⊢ α : B if B is atomic and α : B ∈ Δ.

(b) Δ ⊢ α : B_{1} ⊗ … ⊗ B_{k} → q iff the database

Δ; x_{1} : B_{1}, … x_{k} : B_{k} ⊢ α ∗ β : q

where ∗ is concatenation and where t_{1} < … t_{n} < x_{1} < … < x_{k} and β is a subsequence of (x_{1}, …, x_{k}).

(c) Δ ⊢ α : B iff B is an atomic q and for some

t_{i} : A_{i} ∈ Δ, we have A_{i} = C_{1} ⊗ … ⊗ C_{k} → q

and α = (t_{i}) ∗ α′ and

{t_{i+1} : A_{i+1}, …, t_{n} : A_{n}} ⊢ α′ : C_{1} ⊗ … ⊗ C_{k}.

(d) Δ ⊢ α : C_{1} ⊗ … ⊗ C_{k} iff Δ can be partitioned into k segments Δ = Δ_{1} ∗ … ∗ Δ_{k} and Δ_{j} ⊢ α_{j} : C_{j} and α = α_{1} ∗ … ∗ α_{k}.

Example 2.6.3

\begin{matrix}t_{1} : A → B \\ t_{2} : C \\ t_{3} : A \\ t_{1} < t_{2} < t_{3} \end{matrix}

proves t_{1}t_{3} : B.

Note that we require the pointer to continue to go in the same direction. Thus

\begin{matrix}s_{1} : A \\ s_{2} : A → B \\ s_{1} < s_{2} \end{matrix}

does not prove B.

We need not use all clauses.

Example 2.6.4 (Translation into classical logic) It is possible to represent the above databases and reasoning structures in classical logic by introducing a new sort for the priority labels and describe the computation in classical logic. It might be rather unnatural. The translation is the following. We need predicate logic with two sorts of variables. The first sort, the t_{1}, t_{2}, s_{2}, s_{2}, …, type of variables, range over an algebra (A, ∗, <), where ∗ is concatenation, and < is a irreflexive and transitive ordering. The other sort are x, y, x_{1}, x_{2}, …, type of variables, which are the ordinary predicate calculus variables. Atomic predicates have the form Q^{∗}(t, x_{1}, …, x_{n}) where n ≥ 1, t is the algebra sort variable and x_{i} are ordinary predicate sort variables. We now translate into this two sorted predicate logic, the Directional N-prolog clauses as follows (τ is the translation):

• We associate with each atom Q(x_{1}, …, x_{n}) of Directional N-prolog a predicate Q^{∗}(t, x_{1}, …, x_{n}) of the two sorted predicate logic.

• τ(α : Q(x_{1}, …, x_{n})) = Q^{∗}(α, x_{1}, …, x_{n}) where α is a label from the algebra.

• τ(α : A ⊗ B) = ∃t_{1}t_{2}(α = t_{1} ∗ t_{2} ∧ t_{1} < t_{2} ∧ τ(t_{1} : A) ∧ τ(t_{2} : B)).

• τ(α : A → q) = ∀t[τ(t : A) → ∃s (s subsequence of t ∧ τ(α ∗ s : q)).

The notion of subsequence must be definable in the two sorted classical logic.

The following can be proved.

Lemma 2.6.5 1. If t : A ∈ Δ then Δ ⊢ t : A

2. If Δ ⊢ t : A and Δ ⊆ Δ′ then Δ′ ⊢ t : A

3.

s < t
Δ ⊢ t : A
Δ′ ⊢ s : A → B
.
Δ′ + Δ ⊢ s ∗ t : B

Lemma 2.6.6 Let DH be the Hilbert system extension of CL of Definition 2.4.1 with the axiom

A → (B → A)

Then t_{1} : A_{1}, t_{2} : A_{2}, …, t_{n} : A_{n} ⊢ α : B for some α which is a subsequence of (t_{1}, …, t_{n}) iff DH ⊢ A_{1} → (A_{2} → … → (A_{n} → B) …).

2.7 Case study: Modelling information flow

This section presents a model of information flow in LDS. We want to give a rigorous definition of a process, Flow, which begins with two LDS databases Δ and Γ and ends up in a new database E = Flow (Δ, Γ), which is to be the result of inputting or ‘flowing’ the data in Γ into Δ. To use the notion of Barwise, we are giving a channel

C(Γ) = λx Flow (x, Γ)

satisfying:

Δ →^{C(Γ)} E = Flow (Δ, Γ).

To motivate our notion of information flow, we begin with two very familiar systems, namely strict S4 implication → and intuitionistic implication → and scrutinise the difference between them. It is well known that the formula

A → (B → A)

is a theorem of intuitionistic logic, but is not a theorem of strict implication, unless A is of the form A = (A_{1} → A_{2}).

Let us try to use natural deduction to prove this ‘axiom’.

Our Goal is to show A → (B → A). For this purpose we start a proof box, say Box a. We assume t : A and try to prove t : B → A, which is the goal of this box. Figure 2.23 illustrates what happens.

The proof will succeed if line 6 is allowed in Box b. Line 6 is justified by bringing data item t : A from line 1 outside the box into it. Intuitionistic logic allows us to bring in any t : A from outside, while strict implication S4 allows us to bring in only t : A where A = A_{1} → A_{2}, i.e. only formulas in implicational form.

We want to view the above as a dynamic construction process; a construction of a proof. We imagine we are in the middle of a proof in, say, line 5 of Box a. We have successfully derived previous lines and we want to derive line 5 which is to have the form

(5) t : A → B.

Box a  1  Show t : B → A
2 t : A  assumption
3 t : B → A  from box b
Box b  4  Show s ∗ t : A
5 s : B  assumption
6 t : A  from 2
7

Figure 2.23:

\begin{matrix}Box a 1 & & Show r : C \\ 2 & t_{1} : C_{1} \\ 3 & ⋮ \\ 4 & ⋮ \\ 5 & t : A → B \end{matrix}

Box b  1  Link to line 5 in Box a
2  Show r′ : B
3 s : A  assumption

Figure 2.24:

The labelled natural deduction rules tell us that to show t : A → B, we must go to a subcomputation recorded in Box b, in which we must assume A with a new label s and prove B with label r′(s). We then exit Box b and continue to derive further steps in the proof, the immediate next step being recorded as line 6 of Box a. We have thus established line 5 by justifying it in the subproof in Box b. The following figure 2.24 is a better dynamic picture of our process.

The labels involved and the manipulation rules used all depend on the logic. Different logics will have different rules. However, we do see here a common pattern. Databases have goals, they are linked to others and data can be accessible from one database to another according to some logico-geometric rules. The process is dynamic in the sense that a pointer (indicating our current position in the proof process) is resident in some box (e.g. line 1, box b). We are trying to ‘bring in’ data and use the proof process to achieve the goal of the box it is in by successfully deriving more lines until we reach the goal. Once this goal is achieved, e.g. r′ : B is proved in Box b (say in line 7), then the pointer moves back to line 6 in the parent box (Box a), and continue trying to achieve the goal of Box a, namely prove r : C.^{2}

Suppose we freeze the situation in the middle of a proof. What do we see? We see a family of linked databases where each database has a goal attached to it. We also see a pointer residing somewhere in one of the databases. We also see proof rules for proving the goals for allowing databass to access formulas and labels from another. The proof rules define the logic to which the databases are the data.

So far so good. How does this connect with the notion of information flow?

The answer is that it is now very easy to abstract from what we have just described and define a notion of a database ready to receive infomation. Take the instant when the database is frozen in figure 2.24. We are in the middle of our proof, our pointer is at line 1 in Box b and there is data all around us. We have goals to fulfill, the most immediate one being the current goal.

2Note that although in our example the links indicate subproofs, this need not be the case in general.

Imagine that suddenly we get an input: d : D from some external source. A labelled formula descends into the system. Where do we put it? Is it meant as an additional assumption for Box b? Is it meant for Box a? Do we start a new box? Do we move the pointer? Well, it is up to us to decide what to do and clearly whatever we decide is part of our update (information flow) discipline.

To be specific, let us agree that any input d : D goes into the box where the pointer is, to help prove the goal of that box. Let us further agree that once the goal is proved the pointer goes back to achieve the previous goal, unless instructed otherwise.

Instruct by what? Up to now we were in absolute control of the proof process deciding what to prove next. How can we be instructed?

Obviously we can be instructed by the input! We assumed that we are receiving more data from an external source; we might also receive some instructions from that same source about what to prove next (call it ‘hints’ if you like). Thus in general the external source can input one of the following:

1. Data items with instructions of where to put them in the existing linked structure.

2. Instructions to start a new linked box. This can be understood as a ‘hint’ on proof strategy.

3. Instructions to change the existing structure of the existing database. This can be seen as ‘information’ input, if we understand information not only as raw data of the form t : A but also as the structure and priorities of existing data.

We need to make the above mathematically precise. We need rules associating with each label d : D of input, an algorithmic instruction of what to do with it in the current database. The instructions should be as general and ‘functional’ as possible. They should depend on the ‘proof theory’ of existing data and the geometry of the database, as opposed to using local side effects such as line numbers.

Here are some examples of instructions:

• Put t : D among the data to be used in the current box (to help achieve the current goal of the pointer), at the place where the pointer is.

• Replace the current goal by t : D.

• Start a new linked box with goal t : D (and do your best to achieve it). The pointer will therefore move to the new box which will serve as a new current box for future inputs.

• t: truth can be an instruction to modify (add, change) existing labels by (using) t.

Example 2.7.1 (Linguistic Database) To be specific, let us describe a particular LDS system and a particular information flow function Flow . Let L be a propositional language with implication → only and atoms. Let M be the theory of finite chains represented as models {1, 2, …, n}. Let A be a set of atomic labels and let ∗ be associative concatenation. Compare with Examples 2.2.1 and 2.3.5.

To get a database ready for input, we need (1) to give each database proof rules and a goal (to prove), (2) we need to locate the pointer and (3) we need to define the notion of accessiblity of data from box to box. To simplify the definitions, and to avoid the need of getting into a new definition of a recursive construction of more complex databases, let us fix the above as follows:

• let q be a fixed atom. Stipulate that the goal of any database is to prove α : q, where the label α is a concatenation of all labels of assumptions which are in the database or are accessible to it. (like in linear logic , we use all our assumptions in achieving the goal).

• the proof rule is modus ponens:

\begin{matrix}t : A → B \\ s : A \\ s ∗ t : B \end{matrix}

notice the ‘s’ comes before the ‘t’.

• The geometric accessibility of data is as follows:

Let database

Δ = (t_{1} : A_{1}, …, t_{n} : A_{n})

be linked to the database

Γ = (s_{1} : B_{1}, …, s_{m} : B_{m})

through linking s_{i} to t_{j} (in this direction) then t_{j} : A_{j} is immediately accessible to Γ. The accessibility relation is the transitive closure of the above.

• The position of the pointer can either be indicated explicitly or be geometrically defined.

• The input rules are to put data at the left of the location of the pointer until the goal is achieved. Then, unless the next input instructs otherwise, the pointer moves to the next (parent) database through the links. If no such database exists (no links) the pointer starts a new empty database. Note that we are using one look ahead here!

• A special label W_{o} is understood, when coming as an input with truth, to instruct the pointer to start a new database and link it to its current position.

Example 2.7.2 (Linguistic Parsing) This is just a hint of what we have in [Gabbay and Kempson, 1991]. Consider John who sat down smiled.

We understand the above as logical input into the empty database according to agreed lexical meaning (ignore tense): Lexicon: John: e sit: e → t smile e → t who: ∅

John, sit, smile are data, who is an instruction to start a new database. When encountering who as input the pointer is instructed to start a new database and to put a variable label u : e in and link it to John (the first label of a formula e to the left of the pointer). The goal is always to prove t.

After the input John who sat we get figure 2.25

[figure: pointer position; u : e  sat down: e → t; John: e]

The pointer can prove t with label John sat in the second database by accessibility. It is now free to move back to the top database unless the next input instructs it to start a new one. (We need one look ahead here). In our case, the pointer, when seeing smiles: e → t, will put it in the top database. Figure 2.26 shows the final position:

[figure: smile: e → t; John: e; u : e  sat down: e → t; pointer position]

Figure 2.26:

We will not go into more details of what can be done with this linguistic model. See our paper [Gabbay and Kempson, 1991] for details.

Let us summarise what we have so far. We presented a well motivated notion of linked databases and a notion how such a database can receive input. The model seems to be compatible with our proof theoretic intuitions as well as with some lingusitic ones (assuming the Gabbay–Kempson [Gabbay and Kempson, 1991] paper is convincing!). From LDS point of view we are simply defining a computational notion of updates and flow of information. From situation theory point of view we have provided a concrete reasonable realisation for sites and information flow.

We have so far defined Flow (Δ, Γ) for Γ a sequence of declarative units. We have not defined Flow (Δ, Γ) for arbitrary Γ. This we can do if we have a procedure to reduce Γ into linear input. Assume we have some agreed way of reducing Γ into Γ = Flow (∅, l(Γ)) where l(Γ) is a l sequence of instruction constructing Γ from the empty database.

Given such function l = λxl(x) we can now define:

• Flow (Δ, Γ) = def Flow (Δ, l(Γ))

I’ll not go into details of how define the function l. It is not a simple matter.

2.8 Fibred semantics for LDS

This section will motivate the type of semantics required for LDS. We motivate our semantics by giving several case studies where this semantics arises naturally and then present the general definition of a fibred structure. Our starting point is the preferential semantics of Kraus-Lehmann-Magidor, given for an arbitrary consequence relation (based on the classical connectives) satisfying reflexivity, transitivity, and restricted monotonicity.

The structures have the form m = (W, <, h), where W is a set of states, < is a relation on W, h a function assigning to each state w ∈ W a family h(w) of classical structures.

We write w ⊨ A iff A holds in every structure of h(w).

We assume that h is such that the set h(A) = {w | w ⊨ A} satisfies

∀x ∈ h(A)∃y ∈ h(A)∀z ∈ h(A)[y < x and z < y imply z = y].

We define A |∼m B iff for every minimal w ∈ h(A), w ⊨ B.

If we require of |∼ to satisfy

A ∨ B |∼ C iff A |∼ C and B |∼ C

then the function h can be assumed to give only one classical model h(w) for each w. In such a case h can be directly presented as an assignment to the atoms, h(w, q) ∈ {0, 1}.

The immediate question we can ask ourselves is why should we restrict ourselves to have a function h(w) giving classical models? We can allow h(w) to yield a class of other models e.g. Kripke models or in fact, other preferential models.

Thus a Fibred Preferential Structure is a structure m = (W, <, h) such that for each w ∈ W h(w) is a set of fibred preferential structures. This is a recursive definition. Let us not worry at the moment on how to give a non recursive (looping) definition of the concept and ask ourselves under what circumstances we might wish to consider such structures? One such example is the following. Suppose we want to systematically reflect a consequence relation |∼ in the language itself. Thus we want a new connective ‘⇒’ with the single defining axiom

A |∼ B iff ∅ |∼ A ⇒ B.

This looks like a deduction theorem. In a sense it is, but it does the job of reflecting the consequence relation A |∼ B (which is metalevel) in the object level through the connective ⇒ and |∼ A ⇒ B. The question is what is the semantics of ⇒, given that we know the semantics of |∼. Let us try to find out what we need. Assume a preferential semantics for |∼. Consider C |∼ A ⇒ B. Since A ⇒ B is a legitimate wff, we should be able to semantically evaluate the above in a model m = (W, <, h). Thus C |∼ A ⇒ B holds in m iff for all minimal w ⊨ C we have w ⊨ A ⇒ B.

We do not know how to evaluate w ⊨ A ⇒ B because A ⇒ B is supposed to mean A |∼ B and to evaluate that we need a model m′ not a point (state) w. In the fibred preferential semantics, h(w) is a set of models {m_{j}} and we can use the following formal definition:

w ⊨ A ⇒ B iff A |∼ B holds in all models m_{j} ∈ h(w).

In fact what we have just been describing is not only an intuitive motivation for fibred semantics, but also a general methodology for reflecting any consequence relation |∼ into the object language, by adding a new connective ⇒ (with the axiom A |∼ B iff |∼ A ⇒ B) and by methodologically ‘fibering’ a semantics for it.

Another example where fibering is needed is when we want to combine two logics. Assume that we are given two logics, L_{1} and L_{2}, say L_{1} is intuitionistic →_{i} and L_{2} is strict implication →_{m}. We would like to form a unified logic L in the language with both connectives →_{i} and →_{m}. We want to fibre the semantics of each to obtain a combined semantics.

How do we do it?

Consider p →_{i} (q →_{m} r). The outer connective is intuitionistic. Thus if we regard x = (q →_{m} r) as atomic, we can consider an intuitionistic Kripke model for p →_{i} x. This has the form (S, ≤ h) where h is the assignment to the atoms (p, q, r) but not to x. We have for all s ∈ S

s ⊨ p → x iff ∀s′ ≥ s(if s′ ⊨ p then s′ ⊨ x).

We do not know how to evaluate s′ ⊨ x because x = q →_{m} r and →_{m} is a modal connective.

Suppose now we associate with each t ∈ S a modal model m_{t} = (S_{t}, R_{t}, h_{t}). Then we can say that

s′ ⊨ q →_{m} r iff m_{s′} ⊨ q →_{m} r.

Of course we know how to evaluate →_{m} in modal models.

m_{t} ⊨ q →_{m} r iff (say for all t′ ∈ S_{t}, t′ ⊨ q →_{m} r) iff (for all t′, t′′ ∈ S_{t}, if t′R_{t}t′′ and t′′ ⊨ q then t′′ ⊨ r).

Of course these models m_{t} must satisfy the conditions of the intuitionistic semantics i.e. t ≤ s and m_{t} ⊨ q imply m_{s} ⊨ q for all atoms q. So we cannot arbitrarily associate models m_{t} to each t of the intuitionistic model. They must satisfy the coherence conditions of these models.

In the general case, we need the following notions:

1. Each semantics has a clear notion of satisfaction of a formula in the model, i.e. model ⊨ formula.

2. Each semantics and model in the semantics can identify the notion of a basic semantic unit t (possible world, state) in which each atom q is evaluated (t ⊨ q).

Given (1) and (2) we can fibre the semantics together by adding functions Fm(t) = n giving for each model m of each semantics and each semantic unit t of m a model n of the other semantics.

The above discussion motivates the prototype definition of fibred semantics below. For more details on semantics and on combination of logics see the corresponding chapters of the book.

Definition 2.8.1 (Fibred Semantics) We define a prototype semantics. A full study of semantics is given in a following chapter.

1. Let W be a model of an algebraic language of the form W = (W, <_{i}^{w}, f_{j}^{w}) where W is a set, <_{i}^{w} are relations on W and f_{j}^{w} are functions on W.

2. Let LDS be a labelled deductive system with algebra A and language L with connectives ♯_{i} with n_{i} places, respectively, as defined in Definition 1.5.1

3. We say a structure of the form m = (W, S, a, R_{♯}, g, D, h, π, F) is a fibred point structure for the LDS system (A, L) if the following holds.

3.1. W is a model for the language A, ie each relation <_{i} and fucntion symbol f_{i} of A have their interpretations <_{i}^{W} and f_{i}^{W} in W.

3.2. S ⊆ W^{2}, giving for each w ∈ W a subset S^{w} ⊆ W, and a is a function such that a(w) ∈ S^{w}.

3.3. R_{♯}, for each connective ♯(A_{1}, …, A_{n}) of L, is a function giving for each w ∈ W, an n + 1 neighbourhood relation R_{♯}(w) ⊆ S^{w}×(2^{S^{w}})^{n} i.e. it is a relation of the form R_{♯}^{w}(y, Q_{1}, …, Q_{n}), y ∈ S^{w}, Q_{i} ⊆ S^{w}.

3.4. g is a function giving for each ground term t of A and each w ∈ W an element g^{w}(t) ∈ S^{w}. We require that g^{w}(f(t_{1}, …, t_{k})) = f^{w}(g^{w}(t_{1}), …, g^{w}(t_{k})).

3.5. D is a non empty domain.

3.6. h is an assignment function, assigning to each variable or constant x and each w a value h(w, x) ∈ D.

3.7. π is a predicate assignment assigning for each w ∈ W and each y ∈ S^{w} and each n place predicate or function symbol P from L a corresponding n place relation or function π^{w}(y, P) on D.

3.8. F is a binary function on W, assigning to each w and y from W another z = F^{w}(y) ∈ W, such that y ∈ S^{z}.

Example 2.8.2 (Modal logic semantics) Consider propositional Kripke structures for modal logic. These have the form (S, R, a, h) where R ⊆ S^{2}, a ∈ S and h is the assignment. Consider the modal language with □ and the algebra of labels with atomic labels T and relation <. We turn the Kripke model into a fibred model as follows.

1. Let W = S

2. Let y ∈ S^{w} iff for some natural number n ≥ 0, wR^{n}y (R^{0} is equality). Let a(w) = w.

3. Let R_{□}^{w} = R ↾ S^{w}, h^{w} = h ↾ S^{w}.

4. g has to be defined on the elements of T.

5. Let F^{w}(y) = y.

Thus (S, R, a, h) is transformed into (S, S^{w}, a, R, g, h, F).

Essentially we are regarding the Kripke model m_{y} = (S^{y}, R ↾ S^{y}, y, h ↾ S^{y}) as the Kripke model associated with y ∈ S^{w}. i.e. F^{w}((y) = y).

Definition 2.8.3 (Satisfaction in fibred structures) Let Δ be an LDS database. Let m be a fibred structure for the language. We define the notion y ⊨_{w} Δ, for w ∈ W, y ∈ S^{w}, by induction as follows:

1. Δ is a declarative unit of the form t(y_{1}, …, y_{m}) : A(x_{1}, …, x_{n})

1.1. A is atomic:

y ⊨_{w} Δ iff y = t^{w}(h^{w}(y_{1}), …, h^{w}(y_{m})), and (h^{w}(x_{1}), …, h^{w}(x_{n})) ∈ π^{w}(y, A)

1.2. A has the form ♯(B_{1}, …, B_{k}):

In this case we have

y ⊨_{w} A iff R_{♯}^{w}(g^{w}(y), Q_{1}, …, Q_{k}) holds

where Q_{i} = {y ∈ S^{w} | y ⊨_{w} B_{i}}

2. Δ = (D, f, a) where D is a finite diagram of labels and for each t ∈ D, f(t) = Δ_{t} is a database.

y ⊨_{w} Δ iff g^{w}(a) = y and the diagram D is satisfied in the model W through the function g^{w}. (i.e. whenever t <_{i} s ∈ D then g^{w}(t) <_{i}^{w} g^{w}(s) holds in the model W) and for each t ∈ D,

a(F^{w}(g^{w}(t))) ⊨_{F^{w}(g^{w}(t))} Δ_{t}

3. Δ = (D_{1}, f_{1}, a_{1}) : (D_{2}, f_{2}, a_{2}).

This is the case where we have a whole database serving as a label.

y ⊨_{w} Δ iff g^{w}(a_{1}) = y and the diagram D_{1} is satisfied in the model W through the function g^{w} and for each t ∈ D_{1} the following holds:

If g^{w}(t) ⊨_{w} f_{1}(t) then a(f^{w}(g^{w}(t))) ⊨_{F^{w}(g^{w}(t))} (D_{2}, f_{2}, a_{2}).

To understand the intuition behind this case consider Case 2 for a database Δ = (D_{1}, f_{1}, a_{1}), where f_{1}(t) = (D_{2}, f_{2}, a_{2}) for all t. In this case we require y ⊨_{w} Δ iff g^{w}(a_{1}) = y and W is a model of D_{1} and for all t ∈ D_{1} a(F^{w}(g^{w}(t))) ⊨_{F^{w}(g^{w}(t))} f_{2}(t). The only difference between this definition and our case is that we require the further qualification y ⊨_{w} f_{2}(t). Thus the set of points at which we evaluate f is not only required to be in D_{2} but also to support f_{1}.

4. We say Δ ⊨W Δ′ iff for all w, y ∈ W, if y ⊨_{w} Δ then y ⊨_{w} Δ′.

Example 2.8.4 Consider an LDS system with no atomic labels and a language L with no connectives, just with atomic propositions {p, q, r, …}. The definitions of labels and databases (definition 1.5.1) reduces to the following:

1. A database is a formula

2. If Δ, Γ are databases, so is Δ : Γ.

3. A label is a database

4. A declarative unit has the form Δ : A, where Δ is a database and A a formula.

Note that if we read Δ : Γ as Δ ⇒ Γ then the databases (labels) will syntactically be identical with all formulas in the language with implication. This suggests that we understand a formula of concatenation logic A → B as A : B; A is the label of B. This view has support from applications. The statements ‘if A then B’ or ‘when A then B’ do have the meaning of A qualifying the extension of the truth set of B, and so A can be viewed as labelling B.

The semantics for this case also simplifies. We have no need for the algebraic language for labels. We need no (R_{♯}, g, D). All we need is (W, S, a, h, F). The clauses for the semantics become:

1. For each w ∈ W, S^{w} ⊆ W.

2. h^{w} is an assignment, giving for each atom q and y ∈ S^{w} a truth value h^{w}(y, q).

3. F is a binary function as before, and a(w) ∈ S^{w} selects the actual world of the model indexed by w.

4. Satisfaction reduces to the following:

y ⊨_{w} A : B iff y ⊨_{w} A implies a(F^{w}(y)) ⊨_{F^{w}(y)} .

Assume now that h^{w}(y) is independent of w. (i.e. h^{w}(y) = h(y) for all w) and that W = S^{w} for all w. Let (W, +, 0) be a semigroup with addition and left unit 0. Let F^{w}(y) = w + y and let the function a be identity, a(w) = w.

Then by definition of satisfaction

⊨ A : B iff ∀w, y[y ⊨_{w} A : B]
iff ∀w, y[y ⊨_{w} A implies ⊨_{w+y} B]
iff ∀w, y(y ⊨_{w} A implies w + y ⊨ B).

The above condition is exactly the truth condition for w ⊨ A → B of concatenation logic.

2.9 IPR - Interactive practical reasoning systems

We call this section Interactive Practical Reasoning systems or logics because deduction is only one aspect of practical reasoning activity. The task of this section is to clarify these concepts and show the place of LDS within this framework, namely within IPR. Needless to say, I present here my current views, which will undoubtedly be modified, as the book progresses and as I receive (I hope) the criticism of my colleagues and readers.

We begin by distinguishing two orthogonal aspects of IPR, Interactive Practical Reasoning systems. These are:

1. A single data structure vs a network of data structures.

2. Declarative + procedural activity vs imperative interactive activity.

The first dimension, single vs several databases is very simple to explain. It is the difference between dealing with distributed and non-distributed knowledge. As we shall see later, classical logic will be a deductive system for a single data structure, while modal logic will be a deductive system for several structures.

The declarative vs imperative distinction can be summed up in a nutshell as the difference between querying a database and interacting with it, (for example updating it). Any deductive system or a theorem prover or even a logic programming system is a declarative procedural system, while a system of action logic or a truth maintenance system or even a logically based metalevel planning system are imperative interactive activities.

The following matrix (fig 2.27) summarises our features with some examples. A full discussion follows.

The Declarative-Procedural Aspect

We begin with a single database. Here the basic situation is that of a structured database Δ and a query Q from it, i.e. Δ?Q. This situation was described in Chapter 1, Section 3. Our view in Section 1 was that a logical system (i.e. a single database, declarative procedural system in the terminology of this section) is a pair (⊢, S_{⊢}), where ⊢ is a consequence relation (satisfying some minimal conditions) and S_{⊢} is an algorithmic system for it, as described in Section 1.

The class of a single database declarative system includes a variety of both monotonic and non-monotonic logics. A crude classification, just to illustrate our point is into at least three categories:

Interactive Practical Reasoning

Single data structure  Network of data structures
Declarative • Classical Logic  • Modal Logic
• Linear Logic  • Temporal Logic
• Defeasible Logic  • Belief Systems
• Circumscription
Imperative • Truth Maintenance • Executable Temporal Logic
Systems  • Action Logics
• Question Answering • Machine Learning
• Abduction  • Dialogue Logics

Figure 2.27:

1. Systems which read the connectives in different ways, eg classical, intuitionistic and Łukasiewicz logics. These systems interpret the implication differently. The varieties of consequence relations stem from the different readings.

2. Resource logics; or systems which differ in the way they handle the assumptions. Such examples are relevance and linear logics.

3. Systems relying on structured database, where the reasoning and data is structured, and the deduction process is driven by the structure. These include inheritance systems, ordered logics (of section 2.3) and priority logics.

Turning now to the network aspect, we observe that each one of the above single database logics can be developed and extended into a multiple, network database logic. If we take several databases and form a network, we need two logical components. The local logic, the logic of each database characterises how we get queries answered locally. We also need a global logic, the network logic, because we want to talk about connections between the different local databases. For this purpose, we need connectives or operators in the language which express the connection. The local logic or logics must have these additional connectives. To illustrate, consider a very simple network of two databases Δ_{1} and Δ_{2} with consequence relations ⊢_{1} and ⊢_{2}. The language is that of classical logic with an additional connective N. ⊢_{1}, ⊢_{2} can be taken as classical. From the point of view of a single database, NA is considered atomic. The single database, when queried Δ?NA, treats it as atomic. Recognising N as a network operator, Δ_{1} “sends” A to the appropriate place for querying, in this case to Δ_{2}. Thus

Δ_{1}?NA = 1 iff Δ_{2}?A = 1
Δ_{2}?NA = 1 iff Δ_{1}?A = 1

Written in this way, Δ_{1} and Δ_{2} need not even be answering queries using the same logic. The network logic is the discipline of where to send A when queries ?NA, and is independent of the “local” logics, ⊢_{1} and ⊢_{2}.

Thus, for example, modal logic is a network logic with a discipline for □. In modal logic, if we take each node Δ_{i} with classical logic as its logic ⊢_{i} (ie Δ_{i}?A is computed in classical logic), we get classical modal logic. It is therefore wrong for example to refer to modal logic (based on classical logic) as a non-classical logic. It is classical logic extended with additional network connectives. We can equally have intuitionistic modal logic or a non-monotonic modal logic. An example of a modal relevance logic was given in section 2.2.

A single database logic can be structured. For example the database can have two assumptions with the proviso that one can use exactly one of them. Here the structure is used to control deduction. Of course a network of databases can be amalgamated into a single, structured database, and the notion of a network can be subsumed in the notion of a single database. This is mathematically possible to do but not always profitable to do. Different approaches have their advantages. This book will clarify (I hope) some of the problems involved. We certainly have to know all the translation and reduction options and of their conceptual and logical standing. Chapter 7 of the current draft does a bit of that.

The network of databases can give rise to a very intricate and fascinating systems. Consider a single node t in the network. Its database is Δ_{t}. Its logic is ⊢_{t}, with S_{⊢_{t}} as its algorithmic system. The local node t regards each network connective N as foreign and when queried it, ie Δ_{t}?NA, it refers to the global network logic for advice. The network logic, if it is modal for example, may send A to be queried in nodes s_{1}, …, s_{n} accessible to t. Thus we reduce Δ_{t}?NA to the queries Δ_{s_{i}}?A and if N is necessity, we expect all Δ_{s_{i}}?A to succeed. This is a requirement of the network logic. It is independent of the local logics of node s_{i} (ie ⊢_{s_{i}}). It is characterised by the first order global condition

Hold(t, NA) iff ∀s[s accessible to t → Hold(s, A)]

There is no reason why we should have a classical global condition. One can have a non-monotonic probabilistic condition, for example:

NA holds at t if A holds in most worlds accessible to t.

The above illustrates that we truly have two types of logics here. The local and the global. In fact in the most general case the global logic may be locally dependent. For example NA

holds at t iff A holds in Most(t) worlds accessible to t, where Most(t) depends on t. More on this in the chapter on label dependent connectives. We conclude with an example from the world of word processors. Take for example MacWrite.

It allows you, when typing a letter, to open a window t_{1}, and take part of the text and work on it. You can open a secondary window t_{2} and take some text from t_{1} and work on it. Continue in this manner and get a sequence of windows t_{1}, …, t_{n}. Suppose we now want to take a piece of text from window t_{i} and place it in window t_{j}. Can we do it? The way MacWrite manages this is an example of a network logic. In fact, MacWrite does allow for arbitrary movements from one window to another and therefore its network logic is the modal logic S5. Thus MacWrite is an S5 word processor.

The Interactive and imperative reasoning Aspect

When we query a single database, symbolised as Δ?Q, we want an answer. We may need a procedure to compute the answer. We may reduce the problem of the database and query to other databases and queries.

Δ?Q = 1 if Δ_{i}?Q_{i} = x_{i}i = 1, …, n, x_{i} = 0, 1

But we are not changing the database nor are we interacting with it. There is the aspect of interacting with our data when encountering a query. This aspect of logic is new and exciting. Dialogue logic, and in computing, human computer interaction, human assisted deduction, etc, are extreme examples of a logic arising out of two interacting agents. The pure logician who may be reading this section may object to my use of the word “logic” here. His patience and goodwill may be already stretched to the limit by my treating non-monotonic logics as “logics”. However, please bear with me a little longer.

Consider the query Δ?Q. In the declarative aspect, we want an answer. In the interactive case, we trigger an action. Q is read imperatively. We can write Δ!Q to stress this fact.

The result of the interaction is Δ′. Thus Δ!Q = Δ′. As an example of action assume that we have integrity constraints on databases Δ. We want to add Q to Δ and applying the integrity constrains checker to yield the resulting Δ′. Thus Δ!Q = Δ′. We are assuming here a procedure for maintaining integrity constraints.

Another example is Abduction. We describe how it arises in many linguistics contexts. We have a database Δ and a deductive system S_{⊢}. When we query Δ?Q, we apply S_{⊢} to find out whether Δ ⊢ Q. Suppose we want to know what is the minimal Δ_{0} to add to Δ so that to ensure that Δ, Δ_{0} ⊢ Q. We assume that there are restrictions in the system as to what we can add, which can be either proof theoretic or contextual (structured) etc. Otherwise we simply add Q, ie Δ_{0} = {Q} Δ_{0} can be the abductive set to be added. It can also arise in query answering of the form Question: Does Δ ⊢ Q ? Answer: Yes, if Δ_{0} holds.

Again we have an imperative aspect here

Δ!Q = Δ ∪ Δ_{0}

Notice that there are three systems involved here.

• The logic of the Δ’s

• The logic of the imperative procedures (integrity constraints, or abductive procedures etc)

• A metalogic that relates the two previous logics

2.10 The role of LDS

How does LDS fit into the IPR picture? LDS can manipulate labelled formulas, by manipulating both formulas and their labels in some prescribed ways. The use of labels allows us to include extra information via properties of labels. This information can be any of the following:

• Structural and/or resource information for a single database.

• Network information for several databases.

• Metalevel information for the imperative aspect.

Thus LDS can serve as the underline logical tool for describing and presenting the different logics in fig 2.2.7.

To show how this is done is the object of this book.

1. The need for labelled deductive systems

• The first step was the realization that practical applications which lend themselves to possible logical analysis contain several independent and related structures. These structures must be recognized by any logic which we use to describe and reason about the application.

• The second step is that we have an option, either to use traditional logics, such as classical logic to represent these structures or to use specialized logics. Careful analysis of two case studies shows conceputally we might wish to use specialized logics, but computationally we are better off with classical logic.

• The third step is to look for a good framework which could give us the kind of logics we want for applications. The proposed framework was labelled deductive systems, where the declarative units are of the form Labels: Formulas. The important intuitive point is that we agree to manipulate the existing natural structures of the application together, side by side, without reduction or translation.

Our case studies showed that additional structure can come from semantics (bringing semantics into the logic, as in the case of temporal logic) or from resource or proof theoretic considerations (bringing priorities as labels). In either case the formalism (algebraic LDS) is very similar. In fact, some successful widespread formalisms such as the A-Box reasoning of KL-one is already a example for an LDS in our sense. Therefore we propose to use this formalism (LDS) in application areas where logic is needed. The practical usefulness and applicability of such a program can be demonstrated. We are currently trying to do exactly that. The reader can reflect upon his own personal experience to see how useful the labels can be. The relevance of LDS to the question of the universality of classical logic is that any LDS, either syntactically presented or semantically presented, can be translated into classical logic.

The perceptive and critical reader may have already asked himself why we need to present and use LDS as an intermediate step in the translation of a logic L into classical logic. Semantical translations are known, and given a semantics for the logic, we can translate the semantics directly into classical logic and thus obtain a translation. This can certainly be done for many modal and temporal systems. We need not formulate these systems as LDS and then translate the LDS into classical logic. However, LDS is necessary for the translation of logics which have no known semantics, for example, any logic formulated proof theoretically through elimination and introduction rules. We need to take the following steps: Step 1: Formulate the logic proof theoretically as an algebraic LDS of the kind described in this

section (especially note that the introduction rules depend definitionally on the elimination rules, which may not be the case in the original logic). Step 2: Translate the LDS formulation into classical logic.

The perceptive reader might continue to ask that once we manage to produce the LDS in Step 1 above, do we not now have a semantics, i.e. a term semantics arising from the rules? The answer is that it is not necessarily the case. In a proper semantics the semantical value of ‘♯(A_{1}, …, A_{n})’ is reduced to the values of ‘A_{i}’. We allow elimination rules which reduce a formula to other formulas, not necessarily subformulas of it, as long as some general measure of complexity is reduced and a very long path involving all connectives may be involved in the reduction. It is not at all clear that any semantics can be extracted out of this reduction. More on these points will be given in later chapter.

2. Advantages of LDS The advantage of LDS is that it is a natural and adaptable way of doing logic. We consider a logical system as basically a discipline for databases and labels, giving structures and mechanisms for deduction. The mechanisms could be either proof theory or other mechanisms, such as abduction or circumscription, or explanation, etc. This scenario is very natural and can be adapted to a variety of application areas. To use LDS in an application area we need to

1. Recognize underlying structures in the application. These include

(a) the declarative information to be manipulated and reasoned with;

(b) the units (objects) to be manipulated and their relative structure. (e.g. semantic objects such as worlds or individuals, syntactic objects such as priorities or probabilities);

(c) any compatibility or conflict in natural manipulative movement between (a) and (b).

2. Having recognized in (1) the natural components of the system, we devise an LDS to represent and reason about them. Note that LDS is not a single logic, but a family of logics.

The above process needs to be applied anyway for any use of traditional logic. What I am saying to the reader is that he should not approach the problem with a pre-determined pre-fabricated logic (such as the logic of his youth) and therefore be compelled to force all representation into it.

In fact, what many researchers often do in practice is to use labels as side effects (implementation tricks) to retain distinctions that their (favourite) logic forces them to abandon.^{3}

Once we adopt the discipline of LDS, we see that there are other advantages.

• The labels can be formally used to bring into the object level meta-level features of the logic. A simple example would be to use the labels to trace the proof of the current goal. Conditions on the label can restrict the next move. These conditions are basically meta-level, but such meta-level features can be incorporated into an object level algebraic labelled proof rule.

3My favourite analogy is that of a person who has a wife (husband) and a mistress (lover). Obviously they are there for a reason and may have considerable influence (good or bad)! There may be a need for them much in the same way that there is a need for the label. Rather than supress them and treat them as a side effect, I am proposing that we bring them forward into the open, and recognize their influence. We should openly declare that a declarative unit is a formula and a label (or several labels) and analogously in some societies it may be better to admit (the unfortunate fact) that a ‘family’ unit is a husband/wife and a mistress/lover (read Balzac!). We should recognize the structure involved so that we can handle it better.

• LDS allows for a uniform method for bringing the semantics into the syntax. Recall Example 2.3.10 as a striking example of that, with a connection with situation theory.

• LDS is a unified framework for monotonic and non-monotonic logics.

• LDS is more computationally transparent (through the labels) and hence more receptive to meaningful optimisations.

• The proof theory of LDS can be more flexible. In classical logic, there is proof theory and there are tableaux systems which can be considered as model building systems. One is syntax based and the other is semantically based. In LDS, a tableaux procedure is just another LDS. The basic notion of consequence in LDS is that of a database proving a labelled formula for example t_{1} : A_{1}, t_{2} : A_{2} … ⊢ s : B. A tableaux refutation for an LDS consequence relation will start with

True [t_{i} : A_{i}], False [s : B]

and manipulate that. But such a system is just another LDS!

Thus we have: Δ_{1} ⊢_{LDS_{1}} α : A iff in the tableaux system Δ_{2} ⊢_{LDS_{2}} ‘closed’ where LDS_{2} is an LDS system dealing with signed labelled formulas.

• The devices of labelled Skolemization and visas across worlds are very powerful tools of LDS.

• Different worlds can have different reasoning systems (time dependent reasoning).

• We can reduce higher order properties to lower order.

3. Limitations of LDS The main limitation is that an LDS logic needs to commit itself. Take for example S4. This logic has one modality which is reflexive and transitive. Presented as a Hilbert system, we write a certain number of axioms:

□A → A
□A → □□A
□(A ∧ B) ↔ (□A ∧ □B)
⊢ A ⇒⊢ □A.

The above system is not committed to any interpretation. □A means any of the following:

• A holds in all accessible worlds.

• A is a set in the Euclidean plane and □A is its topological interior.

• A is provable

• □ represents the progressive of English (e.g. if A is ‘John walks’, then □A is ‘John is walking’).

• □ can mean some algebraic operation.

In any LDS interpretation, we need to identify the labels, in order to state what the declarative units are. The nature of t, the algebra of t, will commit us to some—if not exactly one—of the possible interpretations. We thus lose generality. We gain power, but we have to sacrifice our semantic options. When we are applying LDS, we may not mind that because the application area already dictates the interpretation. Thus we must be careful to choose the right level of labelling. Not too detailed to be able to remain within the realm of logic, avoiding turning the system into an implementation.

This argument can be used against the universality of classical logic. To translate a specific logic into classical logic, such as the S4 necessity □, we need to commit its interpretation. Some application areas, such as legal reasoning, may not allow us to commit the interpretation. Furthermore, such an application area may not be particularly interested in the computational advantages offered by the translation and may be more sensitive to the naturalness of the representation.

By the way, this limitation is equally valid when we translate into or use directly classical logic. □ has to be translated into classical logic and the translation requires commitment (unless we use the term translation).

Part II

Formal Theory of Labelled Deductive Systems Introducing Algebraic Labelled Deductive Systems

3.1 Introduction and overview

The previous chapter, Introducing LDS, gave many examples of how labelling is used, both in monotonic and nonmonotonic reasoning systems. We need now to give formal definitions of the concepts involved.

The basic mechanism for introducing an LDS is to choose an algebra A and to consider declarative units t : A and databases Δ = (D, f, d, U) as defined in Definition 1.5.1. and in Definition 3.2.4

The rationale behind this definition as well as several case studies motivating it were amply demonstrated in Chapter 2, ‘Introducing LDS’. From the technical point of view the basic idea is to add annotations (labelling) to formulas of a given logic L giving further information about the formulas through the labels. The labels come from another language, which we call the labelling language, or algebra. Thus for an algebra A and a logic L we can be used to construct a new system (A, L), an LDS. In this LDS we create new databases of the form Δ = (D, f, d, U). These new databases are themselves declarative ‘units’. We are perfectly within our framework if we regard them as a sort of ‘formula’ and introduce a new algebra B and start labelling these new ‘formulas’. Thus we can have new ‘atomic’ declarative units of the form b : Δ and get new databases of the form (D, f, b, U), b ∈ D, where for any term t ∈ D, f(t) = Δ_{t} is a databse of the LDS (A, L). Symbolically this means that we are constructing the new LDS, (B, (A, L)), see example 3.2.7 for useful additional resource labelling. Furthermore, symmetrically, we can use the databases Δ of the LDS (A, L) also as labels. Given another logic L_{1} and a wff A of L_{1}, Δ : A can mean that Δ is a database ‘justifying’ A, or describing the context in which A was introduced, or any other information about A. We can thus use the LDS (A, L) as a labelling system for another logic L_{1} and thus form the new LDS ((A, L), L_{1}).

If we start with (A, L) and iterate the above constructions we get a complex (higher level) LDS based on A and L. These matters will be studied in a later chapter.

The purpose of the present chapter is to present a notion of LDS most suitable for applications. This notion is that of algebraic LDS. Algebraic LDS play another role. They are a kind of LDS which arise in turning an arbitrary formal logical system into an LDS system. In fact, there are some specific kind of algebras involved. These algebras are good for theoretical studies (of how to turn any logic into an LDS) but not necessarily good for general applications. Thus for all the applied consumers of logic, more general algebras are needed. Also the consumer of logic will feel more comfortable with a more sophisticated LDS proof theory, of a kind which may be mathematically reducible to simpler notions.

We are, therefore, introducing general algebraic LDS in the present chapter, outlining features of interest for applications. The next chapter, chapter 4, will introduce and study some specific algebraic LDS, with some specific algebras. These specific algebras are the kind of algebras that arise in turning an arbitrary logic into an LDS.

We present in section 3.2 a simplified version of the basic definitions and then proceed to deal with the proof theory. Since we have labelling at our disposal, the proof theory can be simplified. For one thing, we need present only elimination rules to define the system and the introduction rules can be defined ‘inversely’ and automatically from the elimination rules. This is unusual and is possible only because the labels can be used for metalevel control. This is done in section 3.3.

On the predicate level, Skolem constants become label dependent and allow us to present the beautiful theory of quantification, run time skolemization and visa rule, as hinted in the introductory chapter, ‘Introducing LDS’, and as will be presented in a later chapter. Section 3.4 presents the metabox system, which is a way of formulating special introduction rules for presenting special logics. For the applied logician, the metabox system is most useful. For the pure logician, it is redundant, as it can be reduced to a more complex labelling. The mathematical study is postponed to chapter 4.

3.2 Algebraic LDS

Definition 3.2.1 (Labelling langauges) (a) A labelling langauge is a higher order language with the following symbols:

(a) Function symbols {f_{1}, f_{2}, …} on individuals with arities r_{1}, r_{2}, …, respectively.

(b) Relation symbols {R_{1}, R_{2}, …} on individuals with arities s_{1}, s_{2}, … respectively.

(c) The classical connectives, equality =, and possibly the set theoretic operations of union ∪ and intersection ∩, and possibly other higher order functions on predicates.

(d) Element variables x_{1}, x_{2}, … and individual constantx c_{1}, c_{2}, . . ..

(e) Relation and function variables of all arities.

(f) Higher order quantifier symbols ∀, ∃ for individual relation and function variables of all arities.

(b) By a syntactical labelling theory we mean a theory τ (first order or higher order) in the langauge A above.

(c) By a (model theoretic) algebra m for the language A we mean a classical (higher-order) structure with domain S in which the symbols (functions and relations) of A are interpreted.

We are calling m an ‘algebra’ rather than an ‘A-model’ for conceptual clarity. In many of our applications more emphasis will be put on the function symbols of A than on its relation symbols.

(d) Let m be an algebra, τ be a syntactical labelling theory and φ a formula of A, and h an assignment to its free variables. The notion of satisfaction, m ⊨_{h} φ, meaning that φ holds in m under h, is defined classically, bearing in mind that m is taken as a full higher-order model, namely the higher-order quantifiers in φ range over all relations and functions. We with m ⊨ φ if m ⊨_{h} φ for all h. Let M be a class of models. We write M ⊨ φ if m ⊨ φ for all m ∈ M. Let M_{τ} be the class of all structure m such that m ⊨ τ.

(e) τ is said to be first-order if its formulas contain only first order quantifiers.

(f) Let A be a labelling language. The Herbrand domain of A, H_{A} is the set of all first order terms definable in A. Namely H_{A} contains exactly all individual variables and constants of A and is closed under the application of the first order function symbols of A

(g) Given t_{1}, t_{2} ∈ H_{A} and a class M of models, we write t_{1} =M t_{2} iff in every model m ∈ M, we have m ⊨ t_{1} = t_{2}. We similarly define t_{1} =_{τ} t_{2} iff for every model m ⊨ τ, we have m ⊨ t_{1} = t_{2}.

(h) Let A be a labelling langauge. By a syntactical diagram D, we mean a pair (D_{1}, D_{2}), where D_{1} ⊆ H_{A} and D_{2} is a set of formulas. Each formula φ ∈ D_{2} is either atomic or the negation of an atomic formula.

(i) Since D_{1} and D_{2} are disjoint, we can assume D = D_{1} ∪ D_{2}. I.e. the diagram is a set of terms and formulas.

Let D be an A diagram and let M be a class of models. D is said to be M satisfiable iff for some model m ∈ M and an assignment h, m ⊨_{h} D_{2}. D is said to be τ satisfiable iff for some model m and assignment h, m ⊨_{h} τ ∪ D_{2}. We write D ⊨M φ iff D ∪ {∼ φ} is not M satisfiable.

(j) Since D is a diagram of Herbrand terms and formulas, it is possible to define an algorithmic consequence relation for a query φ from D. For example, we can assume D is a logic program (let us have no negative literals for convenience) and that τ is a Horn clause theory. If φ is a suitable query, we can write D |≡_{τ} φ to mean that φ succeeds as a query from D ∪ τ. In many cases it is more convenient to deal with our algebras syntactically in this manner.

Example 3.2.2 (Free concatenation algebra) Let S be a nonempty set. Let S^{∗} be the set of all finite sequences of elements from S. Let ∅ be the empty sequence. We identify S ⊆ S^{∗} by the map s ↦ (s). Let ∗ be concatenation on S^{∗}. Let, for x = (x_{1} ∗ x_{2}) ∈ S^{∗} the functions r(x) and l(x) be

r(x) = (x_{2})
l(x) = (x_{1})
r(∅) = s(∅) = ∅.

We need the following additional functions on S^{∗}

• seq(x) is defined by seq(a) = (a) for a atomic. seq(x ∗ y) = seq(x) ∗ seq(y), where ∗ is concatenation of sequences.

• multiset(x) is defined by multiset(a) = {a}, the singleton multiset multiset(x ∗ y) = multiset(x)∪ multiset (y)

• set(x) is defined similarly.

Then (S^{∗}, ∗, r, l, seq, multiset, set, ∪, ∩) is an algebra, we denote it by F. It is convenient to assume that S contains all natural numbers and some additional letters as atoms. This assumption becomes useful when we use this algebra for resource management.

Example 3.2.3 (Possible world algebra) Let S be a non empty set and let R be an n-place relation on S (R ⊆ S^{n}). Then (S, R) is an algebra. Note that we have no function symbols, but we still call it an algebra. In case R is binary, we get a possible world model where S is the set of worlds and R ⊆ S^{2} is the accessibility relation.

Definition 3.2.4 (Object level algebraic LDS) 1. Let A be a labelling langauge. A logical language L with Skolem constants parameterised from A is a predicate language with variables and predicates, a set of connectives ♯_{1}, …, ♯_{n} with appropriate arities and the quantifiers ∀ and ∃. The notion of a wff with free variables is defined in the traditional manner. The language may also contain function symbols e_{1}, e_{2}, … of various arities, and constants. The language shares the variables x_{1}, x_{2}, … with the labelling language A. The constants of the langauge L are not atomic constants but are generated from special unary function symbols in the following manner. We assume we always have a sequence c_{1}(x), c_{2}(x), … of terms made of function symbols with one variable (for elements for the domains associated with labels). If t, s are labels s : c_{1}(t) means that c_{1}(t) is an element created (Skolemized) at label t but now residing at s. Thus the terms of L are generated by first generating the Herbrand universe [figure: t_{3}; t_{2}; t_{1}] Figure 3.1:

H_{A} from the atomic labels and from the labelling algebra function symbols f_{1}, …, f_{k}. Then we apply c_{1}, c_{2}, … to generate the constants of L and then we apply the function symbols of L, e_{1}, e_{2}, … to generate the full range of terms of L. Such terms we denote by α_{1}, α_{2}, . . ..

2. The language of an algebraic labelled deductive system is a pair (A, L) where A is a labelling language and L is a logical language parameterised by A. A and L share the set of free variables and may share some of the constants and function symbols.

3. A declarative unit is a pair t : A, where t is a term of A and A is a wff of the logic. t and A may share free variables and constants. A labelled term has the form s : α, where s is a label and α is a term of L.

4. A database is a tuple Δ = (D, f, d, U) where D is a diagram of the labelling language A, and f and U are two functions, associating with each term in D a wff A_{t} = f(t) and a set of terms U_{t}. U_{t} is the set of L terms residing at label t. The functions f and U can also be displayed by writing {t : A, t : c_{i}(x)}, t ∈ D. Note that D may contain also some relations ±R(t_{1}, …, t_{n}). d ∈ D is the ‘actual’ world of D.

Example 3.2.5 (Modal logic with temporal labels) A possible world LDS language can be as follows. The language is the first order language of modal logic with connectives □ and ♢. The labelling language is the first order language of a binary relation R. We have no function symbols in the algebra but we do have an infinite stock of constants. We can think of the constants as moments of time and of R as the earlier-later relation. The modal language contains the functions c_{1}(t), c_{2}(t), …, t ranges over labels, generating the terms of the modal language. We can think of c(t) as an individual born at time t. A diagram D has the form {t_{1}, …, t_{n}, ±R(s_{i}, s_{j})} where s_{i}, s_{j} are from among t_{1}, …, t_{n} which are terms in D. This can be graphically displayed as a proper geometric diagram such as

where arrows display the relation R. Thus D in this case is

{t_{1}, t_{2}, t_{3}, R(t_{1}, t_{2}), R(t_{1}, t_{3}), R(t_{3}, t_{3}), R(t_{2}, t_{2})}.

A database is a tuple (D, f, d, U), where d ∈ D and f associates with each term t ∈ D a wff f(t) = A_{t} of predicate modal logic, and U_{t} is a set of terms of the modal language of the form {c_{i}(s_{j})}, for t ∈ D. We can think of the elements of U_{t} as the individuals living at time t. Thus c(s) ∈ U_{t} means that the individual born at time s is alive at time t. We can also display this fact by writing t : c(s). Thus, according to this notation, t : c(t) always holds. The formula f(t) = A_{t} is a modal language formula which is supposed to hold at time t. Thus t : ♢A(c(s)) means that at time t it is possible that A holds for the element c(s), who was born at time s. We are not saying

that c(s) is alive at t. Figure 3.2 displays a database based on the diagram of Fig. 3.1.

Definition 3.2.6 (Semantics for algebraic LDS) Let (A, L) be an LDS language. Let ♯_{1}, …, ♯_{n} be the connectives of the language, with arities r(i), i = 1, …, n respectively. A possible world semantical interpretation for (A, L) has the form I = (M, ψ_{1}, …, ψ_{n}, ψ) where M is a class of models

[figure: t_{3} :∼ C; t_{3} : c_{2}(t_{3}); t_{2} : B ∧ ♢B; t_{2} : c_{1}(t_{1}); t_{1} : □A; t_{1} : c_{1}(t_{1})] Figure 3.2:

for the language A and each ψ_{i} has the form ψ_{i}(x, Q_{1}, …, Q_{r(i)}), is a wff of the monadic extension of the language of A, (which may be A itself if A is already higher order), containing r(i) new monadic predicates Q_{j} and one free variable x, and ψ = ψ(a, Q) is a closed wff of the language with one monadic predicate and the constant a. Note that in many applications A is based in first order logic.

A structure of the semantics has the form (m, a, V, h) where m ∈ M is a model of A, V_{m}, m ∈ M is a non-empty domain and h is an assignment associating with each n-place atomic P of L and each m ∈ M a subset h(m, P) ⊆ V_{m}^{n}, a ∈ M and where M is the domain of m. h can be extended to an h′ containing h, by assigning subsets of M to the monadic predicates of ψ_{i} and ψ.

Satisfaction ⊨_{h} can be defined for arbitrary wffs of L via the inductive clauses and the usual ‘abuse’ of notation, (V = ⋃_{m∈M} V_{m}).

0. m ⊨ P (b_{1} …, b_{n}) iff (b_{1}, …, b_{n}) ∈ h(m, P), b_{i} ∈ V.

1. m ⊨ ¬A iff m ⊭ A.

2. m ⊨ A ∧ B iff m ⊨ A and m ⊨ B.

3. m ⊨ ♯_{i}(A_{1}, …, A_{k}) iff m ⊨ ψ_{i}(m, Q_{1}, …, Q_{k}), with Q_{i} = {n | n ⊨ A_{i}}, extending the assignment h.

4. m ⊨ ∃yA(y) iff for some y ∈ V_{m}, m ⊨ A(y).

5. We say that the structure (m, a, V, h) satisfies a formula A of L iff m ⊨ ψ(Q_{1}, …, Q_{k}), with Q_{i} = {m | m ⊨ A}.

6. A database Δ = (D, f, d, U) is said to hold at a structure (m, a, V, h) iff there exist functions g_{1} : D → M and g_{2} : U → V such that g_{1} validates the diagram D in M, g_{1}(d) = a, and for every t : A(x_{1}, …, x_{n}) in D we have g_{1}(t) ⊨ A(g_{2}(x_{1}), …, g_{2}(x_{n})).

7. We say Δ_{1} ⊨_{τ} Δ_{2} iff for every structure m ∈ M_{τ} and every g_{1}^{1}, g_{2}^{1} which validate Δ_{1} in the structure, there exists extensions g_{1}^{2} and g_{2}^{2} of g_{1}^{1} and g_{2}^{1} respectively, which validate Δ_{2}.

So far our definitions and examples have concentrated on the notions of algebras, declarative units and databases. This is parallel to defining the notion of well formed formula in classical logic. We have not provided the reader yet with proof theory nor with semantics. Our next task is to define the general form of proof theory for object level algebraic LDS. This means that we want to give proof rules which allow us to define the notion of Δ ⊢ Γ, where Δ and Γ are databases. In particular we want to define the notion of Δ ⊢ t : A, for declarative units t : A.

The reader should note that more refined and formal definitions and theorems on the proof theory of algebraic LDS are given in a later chapter. The purpose of this section is just to introduce the various aspects of algebraic LDS.

To explain our approach we give in a later chapter a detailed case study in the pure propositional implicational language with {→} alone. The examples are not trivial, since in principle they cover all substructural logics.

This chapter will give fairly general definitions.

Example 3.2.7 (LDS with resource labelling using free concatenation algebras) We use the algebra F in the example 3.2.2 for a language with → only. (t_{1}, …, t_{n}) : A can mean that A was derived (using modus ponens) from assumptions named t_{1}, …, t_{n} and the derivation used the assumptions in that order. The modus ponens propagation rule is:

{α : A; β : A → B \atop β ∗ α : B}

A more general example is to use the algebra F to add a resource labelling to an arbitrary LDS of the form (A, L). We consider the cross product F × A of the two algebras and use this as labels. Thus a declarative unit of the new LDS has the form (a, α) : A, where a is from F and α from A. For t = (a, α) and a formula φ of either language (of F or of A) we let φ(t) hold iff φ(a) resp. φ(α) holds.

The label propagation rules for the new LDS (F × A, L) are defined pointwise as follows.

Let ♯(A_{1}, …, A_{n}) be an arbitrary connective of L. Consider one of its elimination rules in (A, L), say, of the following form:

{φ_{A}; α_{1} : B_{1}; …, α_{k} : B_{k}; α : ♯(A_{1}, …, A_{n}) \atop ψ_{A}; r_{1} : C_{1}; …; r_{m}C_{m}} .

We are writing φ_{A}, ψ_{A} with subscript A to emphasise that they are in the A language.

We would like to use our resource algebra F to record exactly how each r_{i} : C_{i} is derived. Let us use an atomic letter b to name uniquely this particular rule. In the LDS (F × A, L) this rule becomes

{φ_{F}; φ_{A}; (a_{1}, α_{1}) : B_{1}; …; (a_{k}, α_{k}) : B_{k}; (a, α) : ♯(A_{1}, …, A_{n}) \atop ψ_{F}, ψ_{A}; (b ∗ a ∗ a_{1}, …, ∗a_{k}) ∗ (1), r_{1}) : C_{1}; …; ((b ∗ a ∗ a_{1} ∗ …, ∗a_{k}) ∗ (m), r_{m}) : C_{m}}

where φ_{A}, ψ_{A} apply to the A components of the labels and φ_{F}, ψ_{F} are in the language of F and apply to the F components of the labels. For example φ_{F}(a_{1}, …, a_{n}, a) might say a_{1} = a_{2} = … = a_{n} = a, i.e. we can eliminate only if all components were proved from the same assumptions. This is a sort of resource management. Thus any derived labeled formula α : A of (A, L) can be represented in (F × A, L) with a label as (a, α) : A, where a records the derivation exactly.

Definition 3.2.8 (Proof theory for algebraic LDS) Let (A, L) be an algebraic LDS. The following is a stock of typical proof rules. The elimination rule for connectives and the quantifier elimination, visa and flattening rules are called data rules. The introduction rule for connectives and the quantifier introduction rules are called goal rules. All the various conditions φ, ψ on the labels appearing in the rules are called the enabling conditions.

1a. Elimination rules for connectives An elimination rule for a connective ♯(A_{1}, …, A_{n}) has the form

φ; t_{1} : B_{1}; …, t_{k} : B_{k}; s : ♯(A_{1}, …, A_{n})
.
ψ; r_{1} : C_{1}, …; r_{m} : C_{m}

The terms r_{1}, …, r_{m} are new (created) function symbols dependent on the free variables (universal constants) of A_{i}, B_{j}. Where φ(t_{1}, …, t_{k}, s) is a formula of A called the pre-condition for the (firing of the) rule and ψ(t_{1}, …, t_{k}, s, r_{1}, …, r_{m}) is a formula of A called the post condition. ψ may contain equality. The rule is to be understood as saying:

If we have proved the wffs above the line with labels satisfying φ then we can create new labels and deduce the formulas below the lines and the new and old labels satisfy ψ.

ψ may contain equality just in case we want to say the new labels are equal to some old ones. To understand the roles of φ and ψ consider example 2.5.1. In rule (∗1) of this example, φ is t < s and the application of the rule transfoms figure 2.16 into figure 2.17.

In rule (∗2) of this example ψ is s < r and the application of the rule transforms figure 2.17 into figure 2.18. Note that ψ gives the ‘position’ of the newly created r_{i} relative to the old points, thus allowing us to transform the old database into the new one.

ψ can also be used to cancel data from the database. Consider Example 3.2.10. Here ψ is used to throw assumptions out. In this context, option (j) of Definition 3.2.1 is more convenient. According to this option, a rule of the form

φ; Old Data

ψ; Additional Data

can be understood as:

If the current database Δ contains the labelled formulas above the line (Old Data) and the diagram D of Δ proves φ in the sense D |≡_{τ} φ, then put the Additional Data into Δ and put ψ in as well.

1b. Introduction rules for connectives Introduction rules in LDS are defined in terms of elimination rules and hence need not be introduced separately. Their use will be properly defined when we give the notion of a proof. We view them as the respective ‘inverses’ of the elimination rules. Intuitively, when we are in the middle of a proof and we want to introduce a connective t : ♯(A_{1}, …, A_{n}) with label t, we are really saying ‘we already have this connective’. If this is indeed true, then for an aritrary elimination rule of this connective (e.g. like in (1a) above), if we assume the antecedent, without the connective, we must be able to prove the consequent of the rule. If we can demonstrate this capability for each elimination rule, then we can introduce the connective. Take for example

A; A → B ; . ; B

We show we already have A → B (i.e. introduce A → B) by showing we can assume A and get B. Another example is \frac{A∧B}{A} \frac{A∧B}{B}. To introduce A ∧ B we must show we can get the conclusions of each rule, without the connective, namely assume ∅ and get A and assume ∅ and get B.

2. Quantifier elimination and introduction rules These include the usual classical quantifier rules and visa rules

(a.)

t : ∀xA(x)
t : A(u^{t}); t : u^{t}, u^{t} a new universal constant

(b.)

{t : ∀xA(x); t : c^{s} \atop t : A(c^{s})}

(c.)

{t : c^{s}; t : A(c^{s}) \atop t : ∃xA(x)}

(d.)

t : ∃xA(x, y)
.
t : A(c^{t}(y), y); t : c^{t}(y)

t : c^{t}(y) is optional in (d). It may not be adopted in modal logic but may be adopted in numerical or priority logics.

(e.) To introduce t : ∀xA(x) we prove t : A(u_{0}^{t}), for any arbitrary new constant u_{0}^{t}.

Some important side conditions may be involved in (e.).

3. Visa rules These have the form

t_{i} : A_{i}; t_{i} : c^{s_{i}}; r_{j} : B_{j}; ψ(t_{i}, s_{i}, r_{j})
j = 1 … k and i = 1, …, n
r_{j} : d^{s′_{j}}

where d^{s′_{j}} ∈ {c^{s_{i}} | i = 1, … n}, for j = 1, …, k.

The meaning of the visa rule is that if c^{s_{i}} exist at t_{i} where A_{i} holds and if ψ holds and B_{j} holds at r_{j} then d^{s′_{j}} exist at r_{j}.

• Sample visa rule from modal logic:

t : c^{s}; t < r, r : □⊥
.
r : c^{s}

The rule says that if c^{s} exists at t then it exists at any endpoint above t. It happens to correspond to the following refinement of the Barcan formula.

∀x□A(x) → □(□⊥ → ∀xA(x)).

4. Flattening Rules These have the form (note only one formula A is involved):

{t_{i} : A; ψ(t_{i}, r_{j}) \atop r_{j} : A}

• Sample flattening rules from substructural logics (e.g. R-mingle):

{t : A; s : A \atop t ∗ s : A}

{t : A; t ≤ s \atop s : A}

5. A proof π_{0} of level 0 from a database (D, f, d, U) is a sequence of labelled databases (D_{n}, f_{n}, d, U_{n}) and justification function J^{0} satisfying the following:

5.1 (D_{0}, f_{0}, d, U_{0}) = (D, f, d, U) and J^{0}(0) = ‘assumption’.

5.2 (D_{n+1}, f_{n+1}, d, U_{n+1}) is obtained from (D_{n}, f_{n}, d, U_{n}) by applying a data rule and adding the consequent of the data rule to (D_{n}, f_{n}, d, U_{n}) to obtain (D_{n+1}, f_{n+1}, d, U_{n+1}). The data rule is applicable iff D_{n} ⊢ φ, φ is the enabling precondition in which case J^{0}(n+1) = name of the data rule. Note that the post condition ψ of the data rule (when needed) will tell us how to ‘add’ the consequent to the old database to obtain the new one. Compare the discussion under (1a) of the present definition. We write (D, f, d, U) ⊢_{0} (D′, f′, d, U′) iff there exists a proof π_{0} of level 0 leading from one to the other.

6. A proof of level ≤ n has the form of linked sequences of databases with a main sequence π, and justification function J. The first element of the main sequence π is (D, f, d, U). Each element of the sequence is obtained from a previous one either according to one of the cases of a proof of level 0 or according to the following case.

Introduction case For some connective ♯(A_{1}, …, A_{n}) let

{φ_{j}; t_{1}^{j} : B_{1}^{j}, …, t_{k(j)}^{j} : B_{k(j)}^{j}; s_{j} : ♯(A_{1}, …, A_{n}) \atop ψ_{j}; r_{1}^{j} : C_{1}^{j}, …; r_{m(j)}^{j} : C_{m(j)}^{j}}

j = 1 … k, be all the elimination rules involving ♯. We want to introduce s : ♯(A_{1}, …, A_{n}). Suppose we also have that for each j there is a proof π_{j} of level ≤ n−1 of each (D_{n}, f_{n}, d, U_{n})+ {ψ_{j}(s_{j}/s), r_{i}^{j} : C_{i}^{j}} from (D_{n}, f_{n}, d, U_{n})+{φ_{j}(s_{j}/s), t_{i}^{j} : B_{i}^{j}} (i.e. we can prove the consequent of each rule from the antecedent of the rule without the use of s : ♯(A_{1}, …, A_{n}), as if we already have it) then the introduction step allows us to move onto (D_{n+1}, f_{n+1}, d, U_{n+1}) = (D_{n}, f_{n}, d, U_{n}) + {s : ♯(A_{1}, …, A_{n})}.

The meaning of ‘+’ is that we add into the old database the labelled wffs indicated, together with the conditions φ, ψ as shown. Going back to Example 2.5.1, rule (∗1) of this example is an elimination rule:

{t : □A; t < s \atop s : A}

So to show t : □A, we take an arbitrary s, such that t < s, i.e. add {s; t < s} to the old database and prove that we can add s : A to it.

We link the proofs π_{j} into the proof π at line n, via the justification function, J(n + 1) = {proofs (π_{j}, J_{j})}.

We write (D, f, d, U) ⊢_{n} (D′, f′, d, U′) if there is a proof of level ≤ n of the consequent from the antecedent. We write (D, f, d, U) ⊢ (D′, f′, d, U′) if there is a proof of any level of the consequent from the antecedent.

7. For the sake of tractability we can also assume that in the elimination rule the complexity of B_{1}, …, B_{n} and C_{1}, …, C_{m} is strictly less than the complexity of ♯(A_{1}, …, A_{n}). We should assume some suitable complexity function. So for example the ⇒ elimination rule, modus ponens

{t : A; s : A ⇒ B \atop f(t, s) : B}

is acceptable because A, B are subformulas of A ⇒ B. However, the classical disjunction elimination rule, written in traditional form

\begin{matrix}A ∨ B \\ A … C \\ B … C \\ C \end{matrix}

where X … Y means there exists a (inductively simpler!) proof from X to Y, is not in acceptable form. A proper treatment of ∨ elimination is done in the next chapter in terms of flattening rules. We can rely, however, on the deduction theorem for ⇒, when we do have it and write the rule as follows:

{t_{1} : A ⇒ C; t_{2} : B ⇒ C; s : A ∨ B \atop f(t_{1}, t_{2}, s) : C}

where C is a wff with less nested disjunctions than A ∨ B. See also remark 4.2.2.

It is easier to understand the proof rules and the visa rules if we translate them into two sorted classical logic. The next definition accomplishes that.

Definition 3.2.9 (Proof theoretical translation of algebraic LDS into classical logic) Let (A, L) be a proof theoretic LDS as in definition 3.2.8. We define a translation * into two sorted predicate logic, relative to the data rules of the LDS as follows: With each atomic Q(x_{1}, …, x_{n}) we associate a two sorted classical predicate Q^{∗}(t, x_{1}, …, x_{n}). We also use the predicates C(t, y) and E(t, y), reading y was created at t, and y exists at t respectively. The first coordinate accepts terms of the sort of the algebra A. The inductive definition of the translation [t : A]^{∗}, for an arbitrary wff A and label t is as follows:

1. [t : Q(x_{1}, …, x_{n})]^{∗} = Q^{∗}(t, x_{1}, …, x_{n}), Q atomic.

2. [t : ¬A]^{∗} = ¬[t : A]^{∗}.

3. [t : A ∧ B]^{∗} = [t : A]^{∗} ∧ [t : B]^{∗}.

4. [t : ∃yA(y)]^{∗} = ∃y(E(t, y) ∧ [t : A(y)]^{∗}), y not in t. [t : ∀yA(y)]^{∗} = ∀y(E(t, y) → [t : A(y)]^{∗}), y not in t.

5. Let ♯ be any connective of L whose elimination rules are

φ_{j}; t_{1}^{j} : B_{1}^{j}; …; t_{k(j)}^{j} : B_{k(j)}^{j}; s_{j} : ♯(A_{1}, …, A_{n})
.
ψ_{j}; r_{1}^{j} : C_{1}^{j}; …; r_{m(j)}^{j} : C_{m(j)}^{j}

Then

[t : ♯(A_{1}, …, A_{n})]^{∗} = (definition)

\begin{matrix}⋀_{j}[∀t_{1}^{j}, …, t_{k(j)}^{j}\{⋀_{i=1}^{n(j)}[t_{i}^{j} : B_{i}^{j}]^{∗} ∧ φ_{j} → \\ ∃r_{1}^{j}, …, r_{m(j)}^{j}(ψ_{j}(s_{j}/t) ∧ ⋀_{i=1}^{m(j)}[r_{i}^{j} : C_{i}^{j}]^{∗})\}] \end{matrix}

where (s_{j}/t) means substitute t for s_{j}.

The translation correctly represents the algebraic LDS provided the following holds in classical logic.

6. ∀y∃!tC(t, y).

7. ∀y∀t(C(t, y) → E(t, y))

8. For every visa rule of the form:

{t_{i} : A_{i}; t_{i} : c^{s_{i}}; r_{j} : B_{j}; ψ(t_{i}, s_{i}, r_{j}) \atop r_{j} : d^{s′_{j}}}

j = 1, …, k and i = 1, …, n, where d^{s′_{j}} ∈ {c^{s_{i}}, …, c^{s_{n}}} we have the axiom

(∀c_{1}, …, c_{n})(∀t_{1}, …, t_{n})(∀s_{1}, …, s_{n})(∀r_{1}, …, r_{k})(ψ(t_{i}, s_{i}, r_{j})∧
⋀_{i=1}^{n}[t_{i} : A_{i}]^{∗} ∧ E(t_{i}, c_{i}) ∧ C(s_{i}, c_{i}) ∧ ⋀_{j=1}^{k}[r_{j} : B_{j}]^{∗} →
⋀_{j=1}^{k} E(r_{j}, d^{s′_{j}}))

9. For every flattening rule of the form

{t_{i} : A; ψ(t_{i}, r_{j}) \atop r_{j} : A}

we have the axiom

(∀t_{1} …)(∀r_{1}, …)(⋀_{i}[t_{i} : A]^{∗} ∧ ψ(t_{i}, r_{j}) → ⋀_{j}[r_{j} : A]^{∗})

Note that we need to assume in the introduction rules that some complexity goes down. Unlike the semantic translations, B_{i}^{j} and C_{i}^{j} are not necessarily subformulas of ♯(A_{1}, …, A_{n}) and so if some complexity goes down we end up with a finite number of steps with several formulas of the form s : Q, Q atomic.

Example 3.2.10 ((φ, ψ) MP rule for →) The usual rule of modus ponens can be labelled as follows

α : A; β : A → B; φ(β, α)
.
γ : B; ψ(α, β, γ)

1. For example, if our labelling algebra is the possible world algebra of Example 3.2.3 and → is taken to mean strict implication, then the MP rule becomes

α : A; β : A → B; β < α
.
α : B

2. If on the other hand, the algebra is the free concatenation algebra of example 3.2.7 then our MP becomes

{α : A; β : A → B \atop β ∗ α : B}

One can take any semigroup (S, ∗) with operation ∗ and define the above Elimination rule. We have seen such examples in the Chapter ‘Introducing LDS’.

3. The formula ψ can be used for deletion as well as multiple conclusions. Consider lienar implication, where each assumption can be used at most once. Thus A; A → B|∼B but having invoked modus ponens, these particular assumptions cannot be reused. We can achieve this aimin several ways:

(a) Use multisets of atomic labels and write modus ponens as

{α : A; β : A → B; α ∪ β = ∅ \atop α ∪ β : B}

The condition φ(β, α) = α ∩ β = ∅ will block the reuse ofany assumption.

(b) Use a predicate C)α) to mean ‘α is cancelled’. Write modus ponens as

{¬C(α); ¬C(β); α : A; β : A → B \atop α ∪ β; C(α); C(β)}

We can read teh rule as:

If C(α) and C(β) finitely fail from the Diagram of the current database, and α : A and β : A → B are in the current database then add to it α ∪ β : B and C(α) and C(β). Now α : A and β : A → B can no longer participate in modus ponens because C(α) and C(β) will succeed. For this we assume that we use syntactical consequence (option *j) of Definition 3.2.1). If we choose model theoretic consequence, adding ψ would be a proper update (chance ¬C(x) to C(x)).

A more detailed study of Algebraic LDS is continued in Chapter 4.

3.3 Introduction rules: A discussion

The definition of the proof theory for algebraic LDS, Definition 3.2.8 is a general definition, in terms of an arbitrary labelling language A, and elimination rules only. The introduction rules can be defined using the elimination rules. Although mathematically such a formalism is sufficient to define a large class of logics, in practice some logics are formulated by elimination rules and introduction rules with special restrictions on them which makes them no longer the ‘inverse’ of the elimination rules. Such presnetations of logics make it easier to work with them. These restrictions are, of course, eliminable in terms of a more elaborate labelling system, but may be preferable in practice. The aim of this section is to identify these convenient restrictions and to give a general definition of an LDS using them. We first illustrate the implicational fragment of modal logic. Consider the modal logic of possible world models of the form (S, R, a, h), a ∈ S, R ⊆ S^{2}, h the assignment, where a is the actual world and where we require aRa to hold. We understand the consequence relation A_{1}, …, A_{n} ⊢ B to mean that in every model (S, R, a, h) if a ⊨_{h} A_{i}, i = 1, …, n then a ⊨_{h} B. See example 3.4.8 below.

The above definition means that A, A → B ⊢ B holds but C → A, C → (A → B) ⊢?C → B does not hold, since reflexivity is required to hold only in the actual world. Thus if aRs holds and a ⊨ C → A and a ⊨ C → (A → B) and s ⊨ C hold then we are assured that s ⊨ A and s ⊨ A → B, but unless sRs we may not have s ⊨ B. Thus a ⊨?C → B may not hold.

Let us examine the proof theory of this implication from the point of view of modus ponens. Let the labelling language be that of example 3.2.7 and we will check what kind of (φ, ψ) modus

ponens is needed. Consider the following database.

1. t_{1} : D → (C → (A → B))

2. t_{2} : D → (C → A)

3. t_{3} : D

4. t_{4} : D

The database is perceived as holding in the actual world a of some model (S, R, a, h) and hence modus ponens is allowed. We can thus deduce

5. t_{1}t_{3} : C → (A → B)

6. t_{2}t_{4} : C → A

We want to show C → B with some label s. We know that the semantic meaning of C → B that C implies B in any possible world s is such that aRs holds. So we can assume C and try and show B with the appropriate labels. Since C → (A → B) and C → A hold in the actual world we can get A → B and A in the world s, but we cannot continue the modus ponens in s to get B because sRs may not hold.

Let us continue formally

7. To show C → B

x :C  assumption
t_{1}t_{3}x : A → B allowed modus ponens
t_{2}t_{4}x : A  allowed modus ponens
(t_{1}t_{3}x)(t_{2}t_{4}x) : B  not allowed

We observe that the use of modus ponens should be different in a nested box, and we need to formulate the right rules to caputure the right semantical meaning. In fact, the natural formulation will probably tinker with the introduction rule for →, since it will give restrictions on modus ponens inside a box. This is not compatible with our policy of letting the introduction rule for → be the ‘inverse’ of (automatically and uniformly be defined from) the elimination rule for →.

We can solve the problem by offering a new labelling system and new rules. Let the labels be pairs (m, t). m is the level of nesting and t the former formal label. Thus the data will be

1. (0, t_{1}) D → (C → (A → B))

2. (0, t_{2}) D → (C → A)

3. (0, t_{3}) D

4. (0, t_{4}) D

The modus ponens rule is:

{(m, α) : A; (n, β) : A → B; m = n = 0 ∨ n < m \atop (m, βα) : B}

We thus get:

5. (0, t_{1}t_{3}) : C → (A → B)

6. (0, t_{2}t_{4}) : C → A

7. To show (n, α) : C → B . For some n and α we open a box and assume (n, x) : C. For x arbitrary and try and show (n, α(x)) : B.

So let us do this:

(7.1) (1, x) : C  assumption
(7.2) (1, t_{1}t_{3}x) : A → B from 7.1 and 5
(7.3) (1, t_{2}t_{4}x) : A  from 7.1 and 6
(7.4) We cannot apply modus ponens on 7.2 and 7.3

because the rule does not apply

If the modal logic was reflexive at all points, the modus ponens rule would have been

{(m, α) : A; (n, β) : A → B; n ≤ m \atop (m, βα) : B}

and we could have continued

(7.3) (1, (t_{1}t_{3}x)(t_{2}t_{4}x)) : B.

Note that if we were to label our assumptions as in modal logic, say as in example 3.2.5, then the appropriate elination rule would be

{t : A → B; s : A; tRs \atop s : B}

and the introduction rule for → is the expected ‘inverse’ of the elimination rule i.e. if Δ; t < y; y : A can prove Δ; t < y; y : B, where y is arbitrary, then we can deduce Δ; t : A → B. In this labelling language the labels are worlds, the labelling language contains the accessibility relation R and the actual world a and aRa is required to hold. The database becomes the multiset

{a : D → (C → (A → B)); a : D → (C → A); a : D; a : D; aRa}

Deduction will allow to use modus ponens to get a : C → (A → B) and a : C → A because aRa is unavailable. To show a : C → A, we need to assume {y : C; aRy} for an arbitary y and show y : A, which is not possible.

In conclusion, note that we did manage to adhere to the principle that the → introduction rule is automatically and uniformly dependent on the elimination rule by changing the labelling.

This can always be done as we shall prove later. Nevertheless, it is more convenient to present logics where the introduction rule is modified and different from the expected inverse of the elimination rule and where the labelling is not changed. We thus need to define the new notions of metabox reasoning which allows us to do that.

It will be convenient to allow for composite labelling of the form (a_{1}, …, a_{k}, α) : A where each a_{i} component performs essentially a metalevel task while α is the ‘main’ label.

Another way of looking at the notion of algebraic labelling, is that we consider our labelling algebra as a cross product of several subalgebras, each perforing a specific metalevel task.

The above example and short discussion shows that we generally need, for each connective, introduction and elimination rules, which include the propagation of labels and include proof rules for subcomputations.

It is convenient for us to enclose the subcomputation specified geometrically in a box which we call a Metabox. The introduction rules we call Goal Rules, because the goal is to introduce the new connectives. The elimination rules we call Data Rules, because they increase our data directly, not via metabox subcomputation. The reason for using these new names is because not all data or goal rules are elimination or introduction rules. Some may be rewrite rules, Skolemisation rules etc. The important distinction will then be whether we are working directly on the data (assumptions) or modifying the goal. The distinctions will become more clear as we progress through the subject matter. The speical rules for subcomputation we call Metabox Rules. These include rules for passing a formula with the connective from one box to another, as well as for algorithmic proof within a box.

We shall later prove that in the presence of labels only data rules (elimination rules) are needed. We will prove that for any LDS, (A, L, M) with proof rules M there exists another LDS, (A′, L′, M′), which ‘proves’ the ‘same’ labelled formulas, but which use only elimination rules, the introduction rules being defined as the ‘inverses’ of the elimination rules. The above notions are first explained through a series of examples, and then the general definitions are given. The examples will also illustrate the practical way we annotate our proofs:

Example 3.3.1 We take a traditional proof of ((c → a) → c) → ((c → a) → a):

1. (c → a) → c assumption

2. c → a assumption

3. c modus ponens (1), (2)

4. a modus ponens (2), (3).

The following is how we look at it in our metabox system:

Box 1

1. ((c → a) → c) → ((c → a) → a) from Box 2

Since Box 2 is referred to in Box 1 to justify a line.

We write Box 1 < Box 2.

Box 2

1. (c → a) → c assumption
2. (c → a) → a from Box 3

exit Box 2: ((c → a) → c) → ((c → a) → a) We also have Box 2 < Box 3. Box 3

1. c → a  assumption
2. (c → a) → c imported from Box 2
3. c  modus ponens (1), (2)
4. a  modus ponens (1), (3)

exit box 3 (c → a) → a

We summarise the rules we used:

• The goal rule for A → B is the opening of a box with assumption A and the showing of B. The exit is the introduction rule.

• The data rule is the fact that we can use modus ponens. This is the elimination rule.

• The meatabox rule is the fact that assumptions can be propagated (reiterated) into inner boxes (ie Boxi < Boxj).

We can imagine different metabox rules, which give rise to new logics. Here is an alternative propagation rule:

⋆ If A is an assumption in Box a of the form A_{1} → A_{2} and a < b and b is an immediate < successor box of a then A can be propagated into b.

Example 3.3.2 To show the power of this notation, let us do a modal logic deduction, with □ and →:

Box 0

□A → (□(A → B) → □B) from Box 1

Box 1

1. □A assumption
2. □(A → B) → □B from box 2

exit: □A → (□(A → B) → □B)

Box 2

1. □(A → B) assumption
2. □B from box 3

Note that if we adopt the alternative ⋆ propagation rule for → mentioned above, we get strict modal-K implication.

One more point before we go on. We saw that given a system of linked boxes a_{1} < a_{2} < a_{3} we can propagate assumptions, for example for a_{1} into a_{3}. To make a box more independent, we can list all reiterations at the beginning of a box. Thus box 3 of 3.3.1 becomes:

Box 3

0. (c → a) → c reiteration
1. c → a assumption
2. Same as (0)
3. c modus ponens
4. a modus ponens

exit: (c → a) → a

Box 3 is now independent of its place and relation to other boxes. Furthermore, to keep trace exactly what assumptions were used, we can label the assumptions

and propagate the labels.

All of this is done in the definitions below: The rest of this Chapter defines metabox algorithmic proof rules for a general LDS and illustrate

it in a language with →. The definitions for modal logics are given in a separate chapter. We consider various restrictions on the two rules

→ I : A

… …

B / (A → B)

and

→ E : A, A → B
B

The various restrictions will yield classical implication, intuitionistic implication, relevant implication, linear implication, entailment implication and strict implication. A later Chapter shows how the restrictions and the logics are connected.

metabox

x : A assumption

⋮

⋮

y : B conclusion

Figure 3.3:

3.4 The metabox system

We begin with a mathematical definition of proof boxes. The definition is logically correct but can be simplified and made more efficient for implementation as an automatic system. We give the less efficient definitions first for explanatory considerations.

The previous section described three components for a labelled deduction system, the introduction rules, the elimination rules and the metabox rules. The first two are familiar; we now have to introduce and define the metabox.

Imagine we are going forward using our proof rules. We proceed line by line, let us say from line 1 (denoted l_{1}), to line 99 (denoted l_{99}). This proof looks like the usual proofs we are familiar with, except that instead of the usual formulas at each line, we have labelled formulas

l_{n} = t_{n} : A_{n}

We now want to use an introduction rule at line l_{100}, to show that we can prove the labelled formula of the form, for example, t : A → B. Our metabox rules tell us we have to open a box as in the figure below 3.3, assuming x : A as an assumption and proving y : B as a conclusion. What kind of proof rules can we have for this metabox subcomputation?

We have several components here:

1. What are the rules of proof within the box? These include both formula rules and label rules.

2. Which of lines l_{1}, …, l_{99} can we use within the box? Earlier lines are units already proved. Are they available inisde the box?

3. We also have a notational problem. What notation do we use to indicate the fact that line 100, namely l_{100} = t : A → B is justified by the metabox?

4. How do we present and deal with nestings of metaboxes? Are there going to be logical connections, and if yes, how do we represent them?

5. What kind of lables do we use within the box? What is the label x going to be? A new atomic label? How does it relate to existing labels?

Our strategy is to give a definition of a deduction within a box which is completely context free. We import into the box all information we need for the algorithmic proof computation within the box and then there is no need to know how the box relates to the rest of the proof.

We now survey our options in choosing the metabox rules. We can have different rules depending on how deeply the boxes are nested. The outer box, the metabox of complexity 0 is the outer derivation using elimination rules only. A metabox of complexity 1 is the derivation with a box justifying an introduction of a connective. Similarly complexity n + 1 indicates a box justifying an introduction of a connective within a box of complexity n.

Let us now survey our options. Options for Metabox of Complexity 0 Let us examine more closely the basic box of complexity 0 for forward proof: (We illustrate using the language with →). Its structure looks as follows:

[figure: a_{1}; a_{3}; a_{2}; a_{4}] Figure 3.4:

Assumptions A_{1}, …, A_{n}.

t : A
⋮
s : A → B
⋮
φ(t, s)
⋮
r : B; ψ(t, s, r)
⋮

We use the elimination rules, which for → is modus ponens, as the only rules for going forward. The following are the parameters (distinctions) involved in this concept:

3.4.0.1 Labelling of the Assumptions

We use a labelling language A_{1} whose elements have the form t = (a, α), where α is from a labelling language A_{0}, referred to as ‘main labels’, and a is from a free concatenation algebra (see example 3.2.7 which indicates resource. We need an agreement (considered as part of the logic) of how to label new assumptions. For example several copies of the same assumption may have the same main label α but never the same resource labels, as shown.

\begin{matrix}(a_{1}, α) : A \\ (a_{2}, α) : A \\ (a_{3}, β) : B \end{matrix}

or {(a_{1}, α, A), (a_{2}, α, A), (a_{3}, α, B), …}

• The second component may indicate relative strength among the data {(a_{i}, α, A_{i})} for example See figure 3.4.

3.4.0.2 Forward Proofs Level 0

We use several simple forward proof rules. For implication, →, we use MP and distinguish the following resource considerations which are done by the first resource component of the label.

1. We note which formulas (assumptions) are used to yield a conclusion;

2. We count how many times each formula was used.

3. We ask whether the assumption was used as a minor premise or as a ticket? Eg:

minor  A
ticket  A → B
conclusion B

4. We check the length of steps and the sequencing of the steps of the proof.

5. We have to decide how the main labels are propagated during proof (i.e. the second component). We can use a propagation formula ψ.

6. We give a formal definition of when do we consider the proof successful.

Options for Metabox of Complexity n + 1 The motivation is to introduce a t : ♯(A_{1}, …, A_{n}) for example in the case of implication, to show t : A → B (a complex wff). One way to show it is by direct elimination rule, as for → we use modus ponens:

t_{1} : X → (A → B)
…
t_{2} : X
t = t_{1}t_{2} : A → B

A second way is to use the introduction rule procedure to show t : ♯(A_{1}, …, A_{n}), for example t : A → B. In this case we use a subproof (box) ie use proof steps as follows.

Imagine we are at line k of the proof:

line k: show t : A → B at level n + 1, if the metabox below is successful:

Assume A with some labelling

… use proof steps of level ≤ n to show B with some other appropriate label

The following are the parameters (distinctions) involved in this construction:

1. What are the labels of the assumption for a nested box and how these labels relate to existing ones.

2. In the proof at level n + 1, line k requires us to intoruce a t : ♯(A_{1}, … A_{n}) e.g. for implication to show A → B. We are doing a metabox sub-computation. What resources (assumptions, lemmas and goals, etc) of the level n + 1 of the proof (up to line k) can we use in the box and in what form? This is R^{w} of 3.4.2 below.

For example we may say we can reiterate only implications of the form C → D and that these can be used only as tickets. Another example is that we allow to reiterate only from the immediately enveloping box only. The way to use a reiteration may depend on its label, which carries information about where it was first introduced. We may also decide to change the label as we reiterate the formula into the box.

3. What distinctions and what proof rules we adopt for the box ie, in the sense of 2 above (inductively on n). These distinctions may use other logics which are already known. In other words the logic of the inner box may be different from the logic of the outer box.

4. What parameters to give to line k, with (A → B) if the box succeeds? By parameters we mean here a label to be used in the continuing proof in level n + 1.

Note that the metabox has the structure:

Entry conditions (import) Box proof conditions Exit conditions (export)

Example 3.4.1 Consider a proof of (A → (A → B)) ⊢ (A → B). We have:

l_{1} = a_{1} : A → (A → B) assumption
l_{2} = a_{1} : A → B  from metabox in fig 3.5

metabox

show B
l_{2.1} a_{2} : A  assumption
l_{2.2} a_{1}a_{2} : A → B  from l_{1} and l_{2.1}
l_{2.3} a_{1}a_{2}a_{2} : B  from l_{2.1} and l_{2.3}

Figure 3.5:

The above metabox is context dependent. It relies on the fact that it justifies line l_{2} and can use in the internal proof line l_{1}. To make it context independent, we can put line l_{1} in the metabox itself. Thus it becomes, fig 3.6.

show B
l_{1} a_{1} : A → (A → B)  reiteration
l_{2.1} a_{2} : A  assumption
l_{2.2} a_{1}a_{2} : A → B  from l_{1}, l_{2.1}
l_{2.3} a_{1}a_{2}a_{2} : B  from l_{2.1}, l_{2.2}

Figure 3.6:

Once we have all the reiterations in the box, the box becomes self contained. Furthermore, there is no need for the decimal numbering system, since the box is self contained. the goal to show in the above box is the formula B. When we have many nested boxes, the goals to show in the outer boxes also play a part in the algorithmic proof procedures of the inner box. These, therefore, also have to be reiterated. (The rule which uses previous goals to show is called the Restart Rule.)

We therefore end up with the following box, see fig 3.7 below, presented after cleaning up and re-organising

The justification of a line within a box may refer to another box, as in the following:

r_{n} = t : A → B π_{n} = from box m.

Reiterations  Previous Goals
R_{1} = a_{1} : A → (A → B) none
Assumption  Current Goal
A_{1} = a_{2} : A  a_{1}a_{2}a_{2} : B
Proof Lines  Justification
r_{1} = a_{2} : A  π_{1} =assumption
r_{2} = a_{1}a_{2} : A → B  π_{2} = from R_{1} and r_{1} by modus ponens
r_{3} = a_{1}a_{2}a_{2} : B  π_{3} = from r_{1} and r_{2} by modus ponens

Figure 3.7:

We are now ready to give a general definition of the metabox. This general definition also includes the rules for the label propagation. As we have seen, the ‘main’ labels could be numbers, algebraic constants, or even formulas of a logic. Generally, when we are given the labels, we must also be given their algebraic or logical structure. This structure we call the Labelling Logic (or Algebra of Labels) A. It is convenient to adopt an algebra of elements which are pairs t = (a, α). The first component is from the free concatenation algebra and the second component is from the main arbitrary algebra. The first component is there to trace the proofs while the second component is the main labelling. So, for example, if the second component is reliability numbers, we can have modus ponens as

{(a_{1}, 0.7) : A; (a_{2}, 0.9) : A → B \atop (a_{2}a_{1}, 0.63) : B}

Definition 3.4.2 (Metabox computation) We start with a labelling logic A on a set of well formed formulas L. We form the logic which we call LDS_{1} = (A_{1}, L). This LDS_{1} has elimination rules, and its introduction rules are ‘inverse’ to the elimination rules. Our purpose in this definition is to show how a metabox discipline can change the introduction rules in a way as to get a new logic LDS_{2}. To achieve this, we form a new algebra A_{2} whose elements are of the form t = (a, α), where a is an element of a free concatenation algebra F of example 3.2.7, and α ∈ A_{1}.

The manipulation of the labels for the elimination rules (A_{2}, L) are as in example 3.2.7. A_{2} gives us complete resource control over derivations of (A_{1}, L) and is used in the formulation of the metabox discipline defined below. We assume a set of conditions C on labels t_{i}. Among them are formulas φ_{MP} (t, r), ψ_{MP} (t, r, s), to be used in propagating resource F labels through modus ponens, and ψ_{E}(t, r, s) to be used on F labels for exiting from a box.

A Let A, B, R, G, denote finite sequences of sets of labelled formulas. If H is such a sequence, its elements have the form (H(1), H(2), …, H(n)), where n is its length. Each H(i) is a set of labelled formulas of the form H(i) = {(t_{i}, H_{i})}, where t_{i} is the label and H_{i} is the formula. In the definition below, A sequences have labels of the form t = (a, α), a atomic from F, and it is assumed that for A sequences i ≠ j → a_{i} ≠ a_{j}. Other sequences have as their labels as propagated by the rules of the labelling algebra. For example if the labelling algebra is the set of all finite sequeces of atomic labels with concatenation, then the propagated labels will be as in example 3.2.7.

For the case of B, R, G sequences, we allow a_{i} = a_{j} for i ≠ j.

B We define a proof box (in short box) of complexity 0 as a tuple of the form Box = (R, A, B, Π, G, Q), which satisfies certain conditions, to be described below. In this tuple, R, A, B, G are finite sequences of sets of labelled formulas satisfying the agreed notational convention of (A) above. Q is a set of formulas and Π is a function giving for each i ≤ length of B a value. The intended meaning of the above sequences is as follows:

* R is a sequence of reiterations (ie essentially formulas already proved before and which can be used in the current proof).

* A is the sequence of the assumptions.

Reiterations Past Goals
l_{1} : R_{1}  s_{1} : G_{1}
Assumptions Current Goal
t_{1} : A_{1}  t : Q
Proof  Justification
r_{1} : B_{1}  Π_{1}
⋮  ⋮
r_{n} : B_{n}  Π_{n}

Figure 3.8:

* Π is the justification function, giving a value for each line of the proof, indicating why it is valid.

* G is the sequence of past queries and (q, Q) is the current query.

The labels are annotations of the form (a, α) a is a sequence of names of assumptions showing resource, while α is a general label from a general algebra showing any other information in the general case. For example the label α can be a possible world in the case of a metabox system for modal logic.

The box can be presented graphically as in Figure 3.8.

For boxes of complexity 0, the following conditions must be satisfied

0 All assumptions A(i) = (t_{i}, A_{i}) are labelled as t_{i} = (a_{i}, α_{i}), where a_{i} are all different and atomic. This is already a convention in (A) above. Note that we may adopt a different convention. We may want t_{i} = {A_{i}}, that is, we label a formula by itself, and have an interesting interaction between the metabox logic and the labelling logic.

1 If B(n) = {(t_{n}^{k}, B_{n}^{k})} is the last element in the proof sequence B then for some k B_{n}^{k} = Q, t_{n}^{k} = q.

2 The justification function Π satisfies one of the following for each B(j).

2.1 Π(B(j)) = A(i), ie, B(j) is an assumption. 2.2 Π(B(j)) = R(i), ie B(j) is a reiteration. 2.3 Π(B(j)) = B(i), i < j, ie B(j) is a repetition. 2.4 With each connective ♯(A_{1}, …, A_{n}) and with each elimination rule for that connective

of the form

{φ; t_{1} : B_{1}; …; t_{k} : B_{k}; s : ♯(A_{1}, …, A_{n}) \atop ψ; r_{1} : C_{1}; …; r_{m} : C_{m}}

We associate a justification clause as follows:

Π(B(j)) = (B(i_{0}), B(i_{1}), …, B(i_{k}))

with i_{0} < j, …, i_{k} < j and

(s, ♯(A_{1}, …, A_{n})) ∈ B(i_{0})

and

(t_{1}, B_{1}) ∈ B(i_{1}), …, (t_{k}, B_{k}) ∈ B(i_{k})

and φ(t_{1}, … t_{k}, s) hold as and B(j) = {(r_{i}, C_{i})} and ψ(t_{1}, …, t_{k}, s, r_{1}, …, r_{m}) hold.

For example for the case of implication, the clauses will be as follows: Π(B(j)) = (B(i), B(k)), for i, k < j and B(i) = (t_{i}, B_{i}) and B(k) = (t_{k}, B_{i} → B_{j}) and φ_{MP} (t_{i}, t_{k}) and ψ_{MP} (t_{i}, t_{k}, t_{j}) hold where φ, ψ are conditions in C having to do with modus ponens. For example φ can be t_{i} ∩ t_{k} = ∅ and ψ can be t_{j} = t_{i} ∪ t_{k} (in case the labels are finite multisets).

C Let us assume that the notion of a proof box of complexity < m has been defined. We define the notion of a proof box of complexity ≤ m to be a tuple Box = (R, A, B, Π, G, Q) satisfying the following:

0 as before

1 as before

2 The justification function Π satisfies, for each B(j) one of 2.1-2.4 as before, or as in 2.5 as below:

2.5 We are justifying the introduction of a connective B(j) = {t : ♯(A_{1}, …, A_{n})}, with a label t = (a, α). We thus have the elimination rules for this connective do work.

Let

{φ_{w}; t_{1}^{w} : B_{1}^{w}; …; t_{k(w)}^{w} : B_{k(w)}^{w}; t_{w} : ♯(A_{1}, …, A_{n}) \atop ψ_{w}; r_{1}^{w} : C_{1}^{w}; … r_{m(w)}^{w} : C_{m(w)}^{w}}

be the wth eliminition rule. Let θ be a general substitution instantiating t_{w} to t i.e. t_{w}θ = t. Then if we claim we have t : ♯(A_{1}, …, A_{n}) already, we must be able to show each r_{i}^{w}θ : C_{i}^{w}θ and ψ_{w}θ from each respective

φ_{w}θ; t_{1}^{w}θ : B_{1}^{w}θ; …; t_{n(w)}^{w}θ : B_{n(w)}^{w}θ.

We therefore require that the justification of B(j), Π(B(j)) to be a set of boxes each of complexity less than m. The wth box has the form.

2.5.1 Box (w) = (R^{w}, A^{w}, B^{w}, Π^{w}, G^{w}, Q^{w})

where

A^{w} is a sequence of length 1 with A^{w}(1) = {t_{1}^{w}θ : B_{1}^{w}θ …, t_{k(w)}^{w}θ : B_{k(w)}^{w}θ}.

2.5.2 R^{w} is the sequence of reiterations. For most metabox disciplines (though not always) it is obtained by concatenating R ∗ A ∗ (B(1), …, B(j − 1)) (* denotes concatenating).

(a)

2.5.3 B^{w} is the new proof.

2.5.4 G^{w} is obtained by concatenating G ∗ ((q, Q)) where Q is the current goal and q is its label obtained from the last element B(n) of B(see condition 1).

2.5.5 Q^{w} is the new query.

2.5.6 If B^{w}(k) = (t_{k}, Q^{w}) is the last element of the proof B^{w} then the appropriate ψ^{w}, acting now as a Box exit condition, is satisfied.

2.5.7 We say in this case that Box(w) is subordinate to Box. The concept means that Box(w) is used to justify a line (B(j)) in the proof of Box. Denote this relation by Box(w) < Box and let ≤ be the transitive and reflexive closure of <. ≤ is a tree relation. The above simply says that the justification of t : ♯(A_{1}, …, A_{n}) set of boxes proving the appropriate elimination rules.

Definition 3.4.3 We say t_{1} : A_{1}; … t_{n} : A_{n} ⊢ t : B iff (by definition) there exists a box of some complexity with R = ∅, A = ((t_{1}, A_{1}) … (t_{n}, A_{n})), G = ∅ and (t, B) is the last element of B, ie Q = B.

Box 0  1 Reiterations : ∅  Previous Goals : ∅
2  Show B → (A → B)
3 Assumption : ∅
4 B → (A → B)  from Box 1 :
Box 1  5 Reiterations : ∅  Previous Goals : B → (A → B)
6  Show A → B
7 Assumption : B
8 A → B  from Box 2 :
Box 2  9 Reiteration : B  Previous goals : B → (A → B), A → B
10  Show B
11 Assumption : A
12 B  Π(1) = 0
13
14
15 We have Box 2 < Box 1 < Box 0

Figure 3.9:

Example 3.4.4 1. Here is a box for B → (A → B).

See figure 3.9

We now give a series of examples to further illustrate the general definitions.

Example 3.4.5 (Intuitionistic Logic) 1. Assumptions: sets of formulas (no labels), the goal is a single formula.

2. Level 0: modus ponens forward.

Success is reaching the goal.

3. The conditions for proof rules for an inner box introducing A → B: at Line k: at level n + 1.

Take in the box assumption A and add to the assumptions any previous line and then reach B by the rules of level n.

Example 3.4.6 (Classical Logic) Modify level n + 1 in intuitionistic logic by allowing previous goals in the box and success of box means reaching in the box the goal B or any previous goals.

The following illustrates the new condition (called Restart) (see fig 3.10):

The box on Level 2 is successful because line 1.2.3 proves a which is in the show corner. We have Box2 < Box1 < Box0.

Example 3.4.7 (A labelled Proof) This is a straightforward box proof of ∅ : (B → A) → ((A → B) → (A → B)). The justification is Box a_{1} below (see fig 3.11):

Level 0 Box 0 :  1  To show ((a → b) → a) → a
2 ∅  assumptions
3 ((a → b) → a) → a, follows from box 1
Level 1 Box 1 :  4  To show a
5 (a → b) → a),  assumptions
6 a → b,  from box 2
Level 2 Box 2 :  7  Show either a (previous goal) or b (current goal)
8 a,  local assumption
9 (a → b) → a,  reiteration
10 a,  from 8
11 a,  from 5 and 6

12

Figure 3.10:

Box a_{1}  1  Show (A → B) → (A → B)
2 a_{1} : B → A  assumption
3 a_{1} : (A → B) → (A → B),  from Box a_{2}
Box a_{2}  4  Show A → B
5 a_{2} : A → B  assumption
6 a_{2}a_{1} : A → B,  from Box a_{3}
Box a_{3}  7  Show B
8 a_{3} : A  assumption
9 a_{2} : A → B
10 a_{1} : B → A
11 a_{3}a_{2} : B
12 a_{2}a_{3}a_{1} : A
13 a_{2}a_{3}a_{1} : B
exit 14 a_{2}a_{1} : A → B
exit 15 a_{1} : (A → B) → (A → B)
exit 16 ∅ : (B → A) → ((A → B) → (A → B))

Example 3.4.8 (Modal logic K_{1}) This example shows how the logic of an inner box can be different for the logic of an outer box. The example we chose is from modal logic. It is well known that the modal logic K with modality □ is axiomatised by the three schemas.

1. □(A ∧ B) ↔ □A ∧ □B

2. {⊢ A \atop ⊢ □A}

3. All substitutions of truth functional tautologies.

It is complete for the class of all Kripke structures of the form (SR, a) where a ∈ S is the actual world and R ⊆ S × S is the accessibility relation.

Consider the semantical condition aRa. The class of all Kripke models in which aRa holds, define a modal logic K_{1}. We do have in this logic ⊢K_{1} □A → A but ⊬K_{1} □(□A → A).

The LDS of 2.2.3 will handle this easily and most naturally, as aRa will be part of the configuration. No other additions to the rules of 2.2.3 is necessary.

A Hilbert type axiomatisation of K_{1} is not easily formulated. We would need to replace axiom (2) above by the two axioms

2a. □A → A

2b. {⊢K A \atop ⊢K_{1} □A}

In other words, we have to use ⊢K provability to define ⊢K_{1} provability.

If we write A → B for K_{1}-strict impliction, then the metabox rules for → are as follows:

1. A formula D can be reiterated from Box a into Box b only if the following two conditions hold:

1.1. D has the form D_{1} → D_{2}.

1.2. Box b is immediately subordinate to Box a (in the sense of 2.5.7 of definition 3.4.2).

2. Modus ponens

\frac{X, X → Y}{Y}

can be performed in box b provided one of the following conditions is satisfied.

2.1. X → Y is a reiteration

2.2. Box a is the outermost box.

Note that relaxing condition (1.2) corresponds to the transitivity of the accessibility relation and that relaxing condition (2.1) corresponds to the semantical condition of reflexivity of the accessibility relation.

Thus modus ponens can behave differently in different boxes.

The previous definitions described the metabox discipline for the case where the geometry was based on nested metaboxes. It is more conveient in many cases to order the boxes and rely on external ordering to achieve the effect of nesting. In fact, ordering is more general than nesting and can address a wider variety of logics. Here are the definitions:

Definition 3.4.9 (Ordered metabox computation) Let ♯(A_{1}, … A_{n}) be a new n-place connective. A Metabox system for this connective has the following components:

1. A language A of labels.

2. Goal Rules The goal rules for ♯ have the form: To show α : ♯(A_{1}, … A_{n}) open one or more metaboxes b_{j} with α_{i,j} : C_{i,j} as assumptions and γ_{k,j} : D_{k,j} as goals to show. The α_{i,j} : C_{i,j} and γ_{k,j} : D_{k,j} are the other formulas involved in an elimination rule of α : ♯(A_{1}, …, A_{n}) and it is assumed that according to some measure of complexity, the complexity of b_{j} is less than the complexity of the original problem. The labelling langauge A is involved in the relationship between α, α_{i,j} and γ_{k,j}.

For example, to show α : A → B, open a box, assume a : A and show αa : B, where a is a new atomic label.

3. Data Rules (Elimination rules)

These have the form:

\frac{t_{1} : A_{1}; …; t_{n} : A_{n}, with restrictions φ(t_{1}, …, t_{n}) on t_{i}}{s : B; with t_{i} and s satisfying some formula ψ(t_{i}, s) of the logic A}

where A_{i} involve the connective ♯ in some complexity and B involves ♯ to a less complexity. This is an elimination rule.

The simplest form is that A_{i} involve the connective ♯ and B does not. Examples are:

Modus Ponens: \frac{α : A; β : A → B; α ∩ β = ∅}{α ∪ β : B}

Ackerman Rule: \frac{α : A; β : B → (A → C)}{α ∪ β : B → C}

Possible Worlds Rule: \frac{t : ♢A}{s : A}

s being a new label with tRs, where R is the external relation on labels.

4. Metabox Rules These rules say which assumptions are reiterated into the new box in (1) and how they are to be used.

For example we may allow only implications A → B to be reiterated and require that they be used as tickets. Or we may allow □A(u) to be reiterated even though u is free in A. (This corresponds to the Barcan formula in modal logic.)

5. Ordered metaboxes A metabox system is comprised of the following components.

(a) A finite partially ordered set of metaboxes names {a_{i}, <}. The relation a < b is the subordination relation, meaning that the metabox b is used to justify a line in the proof in metabox a. Let a <_{1} b read that b is an immediate successor of a.

(b) With each metabox name a a sequence B(a) of triples is associated. The triples have the form (α, A, Π), where α is a label, A is a formula and Π is the justification. The following conditions are satisfied:

(5.2.1) Each element in the sequence is either an assumption, a reiteration or is obtained

from previous elements of the sequence via a data rule. (5.2.2) If (α, A, Π) is an assumption then Π = “assumption”. (5.2.3) If (α, A, Π) is a reiteration then form some box names a_{1}, …, a_{n} = a we have Π

= “reiteration (α, A) from Box a_{1}” and a_{1} <_{1} a_{2} <_{1} … <_{1} a_{n} = a and in the box B(a_{1}) the line (α, A, Π′) appears earlier than a line (β, B, Π′′) where the justification Π′′ = “from Box a_{2}” appears. We also require that the reiteration be allowed by the metabox rules.

(5.2.4) (α, A, Π) is justified by a box b. In this case Π= “from box b using the appropriate

exit rule”. (5.2.5) (α, A, Π) is obtained through a data rule from earlier elements in the sequence. In

this case there is a rule R:

\frac{t_{i} : A_{i}}{s : B}

and instances of this rule appear earlier in the sequence and α : A is an instance of s : B and Π = “from earlier instances in this box of the rule R”.

(c) Each box b is introduced uniquely once in one other box a < b to justify a line (α, A, Π) in the sequence B(a). The assumption of b are first in the sequence B(b) and agree with the Goal Rules of the connectives of A. The last element in the sequence B(b) is β : B. We further require that α : A and β : B and the assumptions of b satisfy to correct exit rule quoted by Π.

114 CHAPTER 3. ALGEBRAIC LDS

Proof Theory and Semantics for Algebraic LDS

4.1 Introduction

This chapter develops proof theory and semantics for algebraic LDS in detail, with certain specific algebras, needed in representing an arbitrary logic consequnce relation as an LDS. We deal with propositional languages first, and illustrate our methodological principles. A later chapter will study the options available in LDS for quantifiers. The algebras studied in this chapter are more specific than those given in definition 3.2.4. That definition requires an algebra (labelling language) A and a language L. In our case we assume that A is a cross product of the form A = F × A_{0}, where F is the free concatenation algebra of definition 3.2.2 and A_{0} contains some specific function symbols and an ordering which will be used later in formulating a proof theory for our systems. This ordering shows up again in a later chapter on the algebraic study of consequence relations.

This specific presentation of the algebra A does not restrict its generality. The algebra F is used to keep track of proofs and does not interfere with the main labelling algebra A_{0}, which can be arbitrary. The ordering in A_{0} is a natural one, and can always be formally defined as equality for any algebra which does not already have a natural ordering.

Example 4.1.1 (Typical example) Suppose we are given data of the form:

\begin{matrix}d_{1} : A \\ d_{2} : A \\ d_{3} : A → B \\ d_{4} : A → B \end{matrix}

d_{1}, d_{2}, d_{3} indicate different sources for the data items and also serve as letters to name them. The source d_{1} is more reliable than d_{2}, and we associate a number with A, indicating how reliable A is. The source d_{2} also puts for ward A,but it is less reliable. Say d_{1} puts forward A with reliability value α_{1} = 0.7. Similarly, α_{2} = 0.5 and α_{3} = α_{4} = 0.2. Suppose we agree that when we perform modus ponens we multiply the numbers. We can now derive B in several ways:

d_{3} ∗ d_{1} : B reliability α_{3} · α_{1} = 0.14
d_{3} ∗ d_{2} : B reliability α_{3} · α_{2} = 0.10
d_{4} ∗ d_{2} : B reliability α_{4} · α_{2} = 0.10

The d sequence actually records how B is derived (notice we put d_{3} first in the sequence because it names the ticket) and the α multiplication sequence gives the numerical reliability. We might wish to forbid the application of modus ponens between data of incompatible sources. Let us say that sources with odd indices are not compatible with sources with even indices. Thus the derivation of d_{4} ∗ d_{1} : B is blocked. Thus we may write φ(x, y) to indicate that x and y are compatible. Then the modus ponens rule becomes

{φ(a, b); (a, α) : A; (b, β) : A → B \atop (b ∗ a, α · β) : B}

Suppose we accept as proven formulas obtained with reliability ≧ 0.5. There may not be a single proof with such reliability, however, if there are several derivations of the same formula from different sources, we can aggregate the reliabilities.

Let us examine what kind of algebra we need for this system.

• The operation ⊗ for modus ponens.

(a, α) ⊗ (b, β) = (b ∗ a, α · β)

where ‘*’ is conatenation and ‘·’ is number multiplication.

• The relation φ(x, y) of compatibility of labels (to keep modus ponens within data of the same source).

• The relation ≤ of strength among labels, where

(a, α) ≤ (b, β) iff definition a ⊆ b and α ≦ β

a ⊆ b means the sequence b contains the sequence a and α ≤ β is numerical comparison. ≤ is the relation of higher priority and relying on more data.

• The operation ⊎ on labels indicating aggregation.

(a, α) ⊎ (b, β) = definition (a ∪ b, α + β)

where + is numerical addition and ∪ is disjoint union of sequences.

Thus in our example B can be proved with label

(d_{3}, α_{3}) ⊗ (d_{1}, α_{1}) ⊎ (d_{4}, α_{4}) ⊗ (d_{2}, α_{2}) = (d_{3} ∗ d_{1} ∪ d_{4} ∗ d_{2}, 0.24)

See also Examples 1.6.1 and 2.3.12.

• The set E of distinguished labels e ∈ E, which indicate acceptability. For example E = {(x, α) | 0.5 ≤ α}. E must satisfy:

x ∈ E and x ≤ y imply y ∈ E.

Thus we accept any B which can be derived with a label e : B, e ∈ E.

The above considerations inidcate that the kind of semantics we need for general implicational logics has the following form.

Definition 4.1.2 (General semantics for implicational logics) Let |∼ be a propositional consequence relation for a language with → satisfying identity (A |∼ A) and transitivity (A|∼B and B|∼C imply A|∼C). Assume that A → B is antimonotonic in A and monotonic in B. Then the following is a general semantics for |∼.

1. Models have the form m = (S, ≤, ⊎, φ, e, f, h), where S is a nonempty set of possible worlds. e ∈ S is the actual world. φ ⊆ S × S is the compatibiltiy relation, ⊎ is the associative and commutative aggregate binary function and h is the assignment. For each atomic q, h(q) ⊆ S. ≤ is a reflexive and transitive relation on S. f is a binary ‘accessibility’ function on S. h satisfies the condition t ∈ h(q) and t ≤ s imply s ∈ h(q).

2. The notion of satisfaction t ⊨_{h} A, under h, is defined by induction as follows:

• t ⊨_{h} q iff t ∈ h(q) for atomic q.

• t ⊨_{h} A → B iff ∀s(φ(t, s) and s ⊨_{h} A imply f(t, s) ⊨_{h} B).

• We say m ⊨ A iff e ⊨_{h} A.

3. Let K be a class of models.

• We say K ⊨ A iff m ⊨ A for all m ∈ K.

• A model m is normal iff φ(t, s) is not dependent on t.

• A class of models K is normal iff all m ∈ K are normal.

Example 4.1.3 (Modal logic in the general semantics) 1. To explain the previous definition, let us see what modal logics look like in such an environment. Consider the modal logics K or S4. These are complete for suitable classes of Kripke structures of the form (S, R, a, h), where R ⊆ S^{2}, a ∈ S and h is the assignment. It is possible to obtain completeness for the class of Kripke models where the possible worlds are trees. Thus, for a set S_{0} of atoms we have S ⊆ S_{0}^{∗}, where S_{0}^{∗} is the set of all finite sequences of elements of S_{0} and S is closed under initial segments. The actual world is ∅, the empty sequence.

The accessibility relation for modal K can be defined by

xRy iff for some atom s ∈ S_{0} we have y = x ∗ (s)

where ∗ is concatenation.

The accessibility relation for S4 can be defined by:

xRy iff for some z (which may also be empty) we have y = x ∗ z.

Satisfaction for modality □B (also written ⊤ → B, using strict implication → and truth ⊤) is defined in the traditional manner in a Kripke model.

x ⊨ □B iff for all y such that xRy we have y ⊨ B.

for modal K we observed that

xRy iff ∃z ∈ S_{0}(x = y ∗ z)

thus we get

x ⊨ □B iff ∀z(z ∈ S_{0} implies y ∗ z ⊨ B)
iff (∀z(φ(x, z) and z ⊨ ⊤ imply f(x, z) ⊨ B)

where φ(x, z) = z ∈ S_{0} and f(x, z) = x ∗ z.

The last clause is identical with the truth condition of ⊤ → B of the previous definition.

If we choose φ(x, z) to mean z ∈ S_{0}^{∗} we get S4 semantics. If we choose φ(x, z) to mean x = ∅ ∨ z ≠ ∅, we get the semantics where R is transitive everywhere but reflexive only at the actual world.

2. There is another uniform way of presenting the semantics of strict implication A → B. The table for strict implication is

t ⊨ A → B iff ∀s(tRs and s ⊨ A imply s ⊨ B).

We define a function f(x, y) on trees as follows. Let u be the maximal sequence such that for some x_{0}, y_{0}, x = u ∗ x_{0}, y = u ∗ y_{0}. Denote u by u = x ∩ y. u may be equal to ∅. Denote x_{0} by x − x ∩ y and similarly y_{0}. See figure 4.1

Define f(x, y) to be x ∗ (y − x ∩ y) = x ∗ y_{0}. In particular we get

f(x, u) = x ∗ ∅ = x and f(u, x) = u ∗ x_{0} = x.

[figure: x; y; ∅; u = x ∩ y] Figure 4.1:

Let φ(x, y) be x ∩ y = x.

Thus we can write

x ⊨ A → B iff for all y(x ∩ y = x and y ⊨ A imply f(x, y) ⊨ B).

Since x ∩ y = x implies xRy and implies f(x, y) = y, we get that → is S4 strict implication. To get K semantics for → we let φ(x, y) be the conjunction of the two conditions x ∩ y = x and (y − x ∩ y) ∈ S_{0}, i.e. y is only one atom longer than x.

This definition of the function f is good for all substructural and many valued implications.

Example 4.1.4 (Intuitionistic logic in the general semantics) Kripke models for intuitionistic logic can also be taken as trees. They have the form (T, ≤, ∅) where x ≤ y iff ∃z(y = x ∗ z). This indicates that in the general semantics we should require z ≤ f(x, z). For the choice of φ(x, y) = x ∩ y = x and f(x, y) = x ∗ (y − x ∩ y) we get that the table:

x ⊨ A → B iff ∀y(φ(x, y) and y ⊨ A imply f(x, y) ⊨ B)

gives intuitionistic implication.

Example 4.1.5 (Translation through the general semantics) It is possible to translate any wff A into classical logic with binary φ(x, y) and function symbol f(x, y) through the semantics. We translate the pair [t : A] (meaning t ⊨ A or t labels A) and the translation is ∗. With atomic q associate a classical unary predicate Q(x).

\begin{aligned}[t : q]^{∗} & = & Q(t) \\ [t : A → B]^{∗} & = & ∀y(φ(t, y) ∧ [y : A]^{∗} ⇒ [f(t, y) : B]^{∗}) \end{aligned}

Example 4.1.6 (Linear database) 1. Consider a language with → and algebra A. We define the notion of linear database t : Δ for this language. A linear database with base t has the form

t : {s_{1} : A_{1}; …; s_{n} : A_{n}, φ(t, s_{1}), φ(t_{1}, s_{2}), …, φ(t_{n−1}, s_{n})}

where t_{0} = t and t_{i} = f(t_{i−1}, s_{i}).

Such databases arise in evaluating wffs.

Consider B = A_{1} → (… → (A_{n} → q) …). Then

t ⊨ B iff ∀s_{1}(s_{1} ⊨ A_{1} and φ(t, s_{1}) imply f(t, s_{1}) ⊨ A_{2} → (… (A_{n} → q) …).

t_{1} = f(t, s_{1}) ⊨ A_{2} … (A_{n} → q) …) iff ∀s_{2}(s_{2} ⊨ A_{2} and φ(t_{1}, s_{2}) imply f(t_{1}, s_{2}) ⊨ A_{3} → … → (A_{n} → A) …).

The ‘database’ is the sequence

t : {s_{1} : A_{1}; …; s_{n} : A_{n}, …, φ(t_{i}, s_{i+1}), …}

2. Consider an unlabelled traditional substructural logic L_{↠} for an implication ↠. Assume the theorems of L_{↠} are axiomatised in some way, say as a Hilbert system or a Gentzen system, etc. Assume the language also contains unary predicates Q(x), one binary predicate φ(x, y) and the connective ∧, and the universal quantifier ∀. Let A be an algebra with φ and f (we are abusing notation here and using the same letter φ) and, assume that the variables of L_{↠} range over A and that all elements of A are constants of L_{↠}. We can thus legitimately write Q(t), for t in A.

We can translate any t : A of (A, L) into a formula [t : A]^{τ} of L_{↠}, (τ denotes the translation) as follows:

• [y_{0} : q]^{τ} = Q(y_{0}), q atomic

• [y_{0} : A_{1} → (A_{2} → … (A_{n} → q) …)]^{τ} = ∀x_{1}, …, x_{n}([⋀_{i=1}^{n}[x_{i} : A_{i}]^{τ} ∧ ⋀_{i=1}^{n} φ(y_{n−1}, x_{n}) ↠ Q(y_{n})) where y_{1}, …, y_{n} are abbreviations for terms defined by the recursion equation

y_{i} = f(y_{i−1}, x_{i})

Thus y_{0} is the only free variable of the above translation.

Note that the translated formulas reside in a fragment of the ↠ logic, defined as follows:

Universal ↠ fragment

• An atomic A is in the fragment

• If A_{k} is in the fragment, and B is atomic, then

⋀_{k} A_{k} ↠ B

is in the fragment.

• If A(x) is in the gragment so is ∀xA(x).

We shall see later that for some algebras A and some axioms on ↠ we may have:

(*) ∅ ⊢_{(A,L)} e : A iff ⊢L↠ [e : A]^{τ}.

Note that if L_{↠} has some nice semantics, then (*) will endow a semantics on (A, L).

It is useful to think of ↠ as intuitionistic implication.

This chapter will concentrate on the following topics:

• Proof theory for algebraic LDS, natural deduction formulation.

• Conversion methods from natural deduction formulation to a Hilbert formulation and back.

• A theorem showing that one can adopt the view that introduction rules are always the ‘inverse’ of elimination rules.

• A methodology for combining any two algebric LDS systems

• Tableaux methods for any algebraic LDS

• Semantics and general completeness theorems.

• Examples and applications from well known logics.

4.2 Basic proof theory

This section develops the basic proof theoretic notions for resource propositional LDS. We need the exact formulations of the language, the labelling, the consequence relation and various notions of theoremhood.

Definition 4.2.1 (Resource propositional LDS) 1. Let L be a fixed propositional language with atomic propositional variables {q_{1}, q_{2}, …} and connectives {♯_{1}, …, ♯_{n}} of arities r_{1}, …, r_{n} respectively. Let |∼ be a consequence relation on L satisfying identity (A|∼A) and transitivity (A|∼B and B|∼C imply A|∼C). A connective ♯(…, x, …) is said to be monotonic (anitmonotonic) in place x if the following holds for all A, B.

A|∼B implies ♯(…, A, …)|∼♯(…, B, …) (resp. ♯(…, B, …)|∼♯(…, A, …)).

We can assume the connectives of L are either monotonic or antimonotonic or both in each argument and that the arities can be written as r_{i} = r_{i}^{+} + r_{i}^{−}. The meaning of the r_{i}^{+} and r_{i}^{−} partition is that the connective is monotonic up in r_{i} places and monotonic down in r_{i}^{−} places. We shall see later that such logics and connectives are very general indeed. For example, A → B is monotonic up in B and down in A. Thus → has arity r = 2 with r^{+} = r^{−} = 1.

2. A resource algebraic labelling language L for L and |∼ has the form

A = (δ, τ, S, ≤, ⊎, φ_{i}, e, f_{i,k,j}(y, x_{1}, …, x_{r_{i}^{−}}), j = 1, …, r_{i}^{+}, i = 1, …, n, k = 1, …, k_{i},)

where S is the set of atomic labels, e ∈ S is a distinguished label. f_{i,k,j} are Skolem functions which generate from S the set S^{∗} of all algebraic labels. ≤ is a reflexive and transitive relation on S^{∗}. τ is a syntactical theory in the (possibly higher order) language of the algebra, which (S^{∗}, ≤, e, ⊎, φ_{i}, f_{i,k,j}) satisfies and δ(x) is a formula (possibly higher-order) of the algebra with one free variable. The φ_{i} are r_{i}^{−} + 1 relations on S^{∗} and ⊎ is an associative binary, commutative aggregation function on S^{∗}.

⊎ satisfies the following, for each term t(α_{1}, …, α_{r_{i}^{−}}, x) of the algebra with a free variable x and α_{1}, …, α_{r_{i}^{−}} and each function symbol f_{i,k,j}(α, α_{1}, …, α_{r_{i}^{−}}); t(α_{1}, …, α_{r_{i}^{−}}, f_{i,k,j}(α, α_{1}, …, α_{r_{i}^{−}}))⊎ … ⊎ t(α_{1}, …, α_{r_{i}^{−}}, f_{i}, k, r_{i}^{+}(α, α_{1}, …, α_{r_{i}^{−}})) ≤ t(α_{1}, …, α_{r_{i}^{−}}, α).

A database Δ has the form Δ = (D, f, d), where D is a finite diagram of the algebra A (i.e. a set of labels and relations on them), d is a label and f is a function associating with label t of D a wff f(t).

Let δ(x) be a (possibly higher-order) formula of the algebra A. We write (D, d) |≡ δ(t), for a label t, iff (D, d) satisfies δ(t) as a Herbrand model, where quantifiers range over elements of D only. This can be achieved syntactically if D is a Horn clause database and D |≡ δ means that δ succeeds as a query from D ∪ τ. Compare with item (j) of Definition 3.2.1.

Usually a logical system comes with a pair (δ′, δ) of formulas. δ′ is a formula restricting the diagram (D, d), for example saying all labels in D are atomic (from S), while δ(t) says what kind of labels can be proved from the database, for example, saying that the label t contains all labels in D.

In many cases we have

(D, d) |≡ δ(t) iff ⊨ δ_{D} ⇒ δ(t)

where δ_{D} is the conjunction of all the formulas of D. The right hand side is validity in any classical model while the left-hand side is |≡ δ_{D} ⇒ δ(t), i.e. validity in all Herbrand universes. They are the same for certain syntactical forms.

3. For each connective ♯_{i} consider the following φ_{i}-elimination rules e_{i,k,j}, j = 1, …, r_{i}^{+}, k = 1, …, k_{i}.

{φ_{i}(α, α_{1}, …, α_{r_{i}^{−}}); α_{1} : A_{1}; …, α_{r_{i}^{−}}; α : ♯_{i}(A_{1}, …, A_{r_{i}^{−}}, B_{1}, …, B_{r_{i}^{+}}) \atop f_{i,k,j}(α, α_{1}, …, α_{r_{i}^{−}}) : B_{j}}

In view of the above rule we can write ♯(A_{1}, …, A_{r_{i}^{−}}, B_{1} …, B_{r_{i}^{+}}) as (A_{1}, …, A_{r_{i}^{−}}) →_{i} (B_{1}, …, B_{r_{i}^{+}}).

4. There are some natural conditions to require on the algebra and the φ elimination rules. These conditions arise in the LDS formulation of current well known existing logics. Among them are

• ∀xφ(e, x)

• Residuation:

for every n + 1 place y = f(x, x_{1}, …, x_{n}) and every b, a_{1}, …, a_{n} there exists a unique a such that b = f(a, x_{1}, …, x_{n}).

• e is a unit:

For every n + 1 place f and a we have f(a, e, …, e) = a.

• For a binary f(x, y), ∀y[f(a, y) ≤ f(b, y)] ⇒ a ≤ b

We can require the algebra to be archimedian, in the following sense. Let a_{1}, …, a_{n} ∈ A be a finite number of elements and let b ∈ A. Let {{a_{1}, …, a_{n}}} be the set generated from {a_{1}, …, a_{n}} by repeatedly applying the function symbols of A to these elements.

Let b be any element and let I_{b} = {a ∈ A | a ≤ b}. Then {{a_{1}, …, a_{n}}} ∩ I_{b} is finite. Furthermore, for all a_{1}, …, a_{n}, b there exists a natural number k that any term obtained from more than k repeated application of function symbols to a_{i} is not ≤ b.

5. Let A_{1}, A_{2} be two algebras for the same language L, i.e. both have the form of (3) above:

A_{m} = (τ^{m}, S^{m}, ⊎^{m}, φ_{i}^{m}, e^{m}, ≤^{m}, f_{i,k,j}^{m}).

We define the algebra A_{1} × A_{2}. Let S = S^{1} × S^{2}. The wffs and functions of A are pairs of wffs and functions φ = (φ^{1}, φ^{2}), f = (f^{1}, f^{2}), where φ^{m}, f^{m} are in the language of A_{m}. Let φ((s_{1}, s_{2})), s_{1} ∈ (S^{1})^{∗}, s_{2} ∈ (s^{2})^{∗} hold iff both φ^{1}(s_{1}) and φ^{2}(s_{2}) hold. Let f((s_{1}, s_{2})) be (f^{1}(s_{1}), f^{2}(s_{2})). In short the functions and predicates are evaluated coordinatewise. Let τ = (τ^{1}, τ^{2}) and let ≤= (≤^{1}, ≤^{2}), e = (e^{1}, e^{2}), ⊎ = (⊎^{1}, ⊎^{2}), and let the new function symbols be

f_{(i,k,j)(i′,k′,j′)} = (f_{(i,k,j)}^{1}, f_{(i′,k′,j′)}^{2})

Let e_{1}, e_{2} be two elimination rules from the respective algebras of the form

e_{m} {φ_{m}; α_{1}^{m} : A_{1}, …, α_{n}^{m} : A_{n}; β_{m} : B \atop f^{m}(β_{m}, α_{1}, …, α_{n}) : C}

Then the following elimination rule e_{1,2} is available in A.

e_{1,2} \frac{(φ_{1}, φ_{2}); (α_{1}^{1}, α_{1}^{2}) : A_{1}; …; (α_{n}^{1}, α_{n}^{2}) : A_{n}; (β^{1}, β^{2}) : B}{(f^{1}, f^{2})((β^{1}, β^{2}), (α_{1}^{1}, α_{1}^{2}), …, (α_{n}^{1}, α_{n}^{2})) : C}

6. Conversely, let A = A_{1} × A_{2} be an algebra which is a cross product of A_{1} and A_{2}. Assume the elimination rules of A all have the form:

{φ_{1}(β^{1}, α_{1}^{1}, …, α_{1}^{1}); φ_{2}(β^{2}, α_{1}^{2}, …, α_{n}^{2}); (α_{i}^{1}, α_{i}^{2}) : A_{i}, …; (β^{1}, β^{2}) : B \atop (f^{1}(β^{1}, α_{i}^{1}), f^{2}(β^{2}, α_{i}^{2}) : C}

Then one can consider only the first A_{1} component of the algebra and derive an LDS, (A_{1}, L) from the first component of the rules. So the first component of the rule above is:

\frac{φ_{1}; α_{i}^{1} : A_{i}; β^{1} : B}{f^{1}(β^{1}, α_{i}^{1}) : C}

Let e_{1} be a rule of A_{1} and e_{2} be a rule of A_{2}. e_{2} is said to be a companion to e_{1} if e^{1,2} = (e_{1}, e_{2}) is a rule of A.

7. A semialgebraic resource labelling language has the form A = F × L, where F is the free algebra of definition 3.2.2. Let (a, α) ≤ (b, β) be defined as a = b and α ≤ β. The (i, k, j)th rule e_{i,k,j} now becomes the (ρ_{i}, φ_{i}) resource rule (labelled e_{i,k,j}):

\frac{ρ_{i}(a, a_{1}, …, a_{r_{i}^{−}}); φ_{i}(α, α_{1}, … α_{r_{i}^{−}}); (a_{1}, α_{1}) : A_{1}; …; (a_{r_{i}^{−}}, α_{r_{i}^{−}}) : A_{r_{i}^{−}}; (a, α) : ♯(A_{1}, …, A_{r_{i}^{−}}, B_{1}, …, B_{r_{i}^{+}})}{(((e_{i,k,j}, a); (a_{1}, …, a_{r_{i}^{−}})), f_{i,k,j}(α, α_{1}, …, α_{r_{i}^{−}})) : B}

Remark 4.2.2 (Notes on resource elimination rules) 1. Note that the assumptions in the elimination rule e are ordered. Thus, for a three place connective

(A_{1}, A_{2}) →_{3} B

the rule becomes

\frac{ρ(a, a_{1}, a_{2}); φ(α, α_{1}, α_{2}); (a_{1}, α_{1}) : A_{1}(a_{2}, α_{2}) : A_{2}; (a, α) : (A_{1}, A_{2}) →_{3} B}{(((e, a), (a_{1}, a_{2})), f(α, α_{1}, α_{2})) : B}

A_{1} goes in the first slot of →_{3} and A_{2} in the second.

For example the two disjunction rules become

e_{1} \frac{(a, α) : A ∨ B}{((e_{1}, a), f_{1}(α)) : A}

e_{2} \frac{(a, α) : A ∨ B}{((e_{2}, a), f_{2}(α)) : B}

It is possible to recognise the left and right disjunct from the rule applied.

Of course, the modus ponens condition φ plays an important role in restricting the (mis)use of the disjunction rules. We can restrict the modus ponens of {α : A; β : A → B} by requiring that for no label t do we have {f_{1}(t), f_{2}(t)} ⊆ set (α) ∪ set (β).

The elimination rules for conjunction can be taken as

{t : A ∧ B \atop t : A} and {t : A ∧ B \atop t : B}

There is a difference between conjunction and disjunction. Disjunction has one rule e which has two componenets, e_{1} and e_{2}. Conjunction has two rules. Each rule has one component. In general a connective, say A ↠ (B_{1}, B_{2}), may have several rules each having two components. The difference between a new rule and a new component comes in the corresponding introduction rule. Our approach to introduction rules is that they can be obtained uniformly and automatically from the elimination rules.

Thus if e_{1} and e_{2} are two elimination rules for ↠ above, each with two components we get the form

e_{i,j}{φ(β, α); α : A; β : A ↠ (B_{1}, B_{2}) \atop f_{i,j}(β, α) : B_{j}} .

To be able to introduce β : A ↠ (B_{1}, B_{2}) at some stage in the proof we must show that essentially our proof machinery already has it at that stage. This means that if we assume the antecedent α : A for a suitable α (i.e. such that φ(β, α) holds), we can show in a subproof at that same stage that the consequent for each rule e_{1} and e_{2} of ↠. Showing the consequent means showing at least one of the B_{j}. Thus we need to show that for an arbitrary α such that φ(β, α) and arbitrary rule e_{i} there exists at least one j such that

φ(β, α); α : A ⊢ f_{ij}(β, α) : B_{j}

So to show conjunction β : A ∧ B we must show the result of each rule i.e. we must show β : A and show β : B, since the rules are:

{β : A ∧ B \atop β : A} and {β : A ∧ B \atop β : B} .

To introduce β : A∨B we must show one of the two consequences of the single rule i.e. either f_{1}(β) : A or f_{2}(β) : B. By way of illustration, let us intuitively prove A → A ∨ B.

Assume β : A
Show  β : A ∨ B

If we claim we ‘have’ β : A ∨ B we must be able to ‘perform’ the elimination rule. We choose the f_{1}(β) : A option. Can we derive f_{1}(β) : A from β : A? Yes, if in the algebra we have β ≤ f_{1}(β). Let us check how to prove

(a) β : A ∨ B

(b) α : A → C

(c) α : B → C

(d) β ∗ α : C

We reason as follows:

(e) f_{1}(β) : A from (a)

(f) α ∗ f_{1}(β : C from (b) and (c)

(g) f_{2}(β) : B from (a)

(h) α ∗ f_{2}(β) : C from (c) and (g). Consider now λx(α ∗ x) = t(x). We have

\begin{matrix}t(x/f_{1}(β)) : C \\ t(x/f_{2}(β)) : C \end{matrix}

and we want to deduce

t(x/β) : C.

We need this as a flattening rule of the algebra. We can also write it as:

t(f_{1}(β)) ⊎ t(f_{2}(β) ≤ t(β).

Note that C must be derived from A and from B in teh same way, as exhibited by the term λxt(x).

2. Note that the LDS arising out of the labelling A_{1} × A_{2} is not the intersection in any sense of the logics with A_{1} and A_{2}. It is more like the sharing of the proof paths and propagating the labels of each algebra side by side. To illustrate, consider the database:

t_{1} : A
t_{2} : A → (A → B)
t_{3} : A
t_{1} < t_{2} < t_{3}

The logic A_{1} is labelled in such a way that it starts modus ponens by taking A from above the A → B and then alternates to below and so on. While A_{2} starts the opposite way. Thus both logics individually can prove B but the cross product cannot prove B. So the cross product is not the intersection of what can be proved in both.

3. Further note that the definition of the Elimination Rules for resource LDS can be refined as follows:

• A φ-rule of the form:

\frac{φ(t, t_{1}, …, t_{k}); t_{1} : A_{1}; …; t_{k} : A_{k}; t : B}{f(t, t_{1}, t_{2}, …, t_{k}) : C}

can be written as a (φ, ψ) rule eliminating t : B

\frac{φ(t, t_{i}); t_{i} : A_{i}; t : B}{ψ(s, t, t_{i}); s : C}

where ψ(s, t, t_{1}, …, t_{k}) is f(t, t_{1}, …, t_{k}) ≤ s.

We write ‘≤ s’ rather than ‘= s’ because of the inference rule

Δ ⊢ s_{1} : A and s_{1} ≤ s_{2} imply Δ ⊢ s_{2} : A.

4. Furthermore, the corresponding ‘inverse’ introduction rule becomes the following: Δ ⊢ t : B if for some t_{1}, …, t_{k}, and t such that φ(t, t_{1}, …, t_{k}) holds, we have that: Δ∪{t_{1} : A_{1}; …; t_{k} : A_{k}} ⊢ s : C, where t_{1}, …, t_{k} are arbitrary in the set ⟨x_{1}, …, x_{k}⟩φ(t, x_{1}, …, x_{k}) = {(t_{1}, …, t_{k}) | φ(t, t_{1}, …, t_{k}}, and t is the y such that ψ(s, y, t_{1}, …, t_{k}) holds (if such a y exists).

We can use the notation

t = σyψ(s, y, t_{1}, …, t_{k}),

or

t = s/f(t_{1}, …, t_{k})

to denote the y such that ψ(s, y, t_{1}, …, t_{k}) holds.

Definition 4.2.3 (Proof theory for resource LDS) Let (A, L) be a resource LDS with A = F × A_{0}. We allow for F or for A_{0} not to appear, in which case A = F or A = A_{0}.

1. A database Δ = (D, f, d) is a set of labelled formulas of the form t : A, where t = (a, α), a from F and α from A_{0}, as formally defined in Definition 4.2.1.

2. A labelled consequence relation is a relation between databases and declarative units of the form Δ ⊢_{A} t : A; (written as Δ ⊢ t : A for convenience) as follows:

We use two parameters m and n. m for the depth of the use of introduction rules and n for the length of the proof using elimination rules. Thus Δ ⊢_{m,n} t : A means t : A can be proved in at most n lines. Each line is either obtained from previous lines by elimination rules or is justified by an Introduction rule whose subproof uses at most m − 1 nested subproofs.

(a) Δ ⊢_{0,0} t : A if t : A ∈ Δ and (D, d) |≡ δ(t), (or in many cases ⊨ δ_{D} ⇒ δ(t)) as in Definition 4.2.1.

(b) Δ ⊢_{0,n+1} t : A if for some elimination rule of the form

\frac{ρ; φ; t_{i} : C_{i}, i = 1, …, k}{t : A}

we have that ρ and φ hold in the algebra and that Δ ⊢_{0,n_{i}} t_{i} : C_{i}, i = 1, …, k, for some n_{i} ≤ n.

(c) Δ ⊢_{m+1,n+1} t : A if for some elimination rule of the form

\frac{ρ; φ; t_{i} : C_{i}, i = 1, …, k}{t : A}

we have that ρ and φ hold and that Δ ⊢_{m_{i},n_{i}} t_{i} : C_{i}, i = 1, …, k, for some m_{i} ≤ m and n_{i} ≤ n.

(d) Δ ⊢_{m+1,0} (a, α) : (A_{1}, …, A_{r_{i}^{−}}) →_{i} (B_{1}, …, B_{r_{i}^{+}}) if for arbitrary new atomic a_{1}, …, a_{r_{i}^{−}} satisfying ρ_{i}(a, a_{1}, …, a_{r_{i}^{−}}) and arbitrary α_{1}, …, α_{r_{i}^{−}} satisfying φ_{i}(α, α_{1}, …, α_{r_{i}^{−}}) we have that for each k there exists a j such that for some m′, n, with m′ ≤ m we have for each j

Δ∪{(a_{1}, α_{1}) : A_{1} …, (a_{r_{i}^{−}}, α_{r_{i}^{−}}) : A_{r_{i}^{−}}} ⊢_{m′,m} ((e_{i,k,j}, a), (a_{1}, …, a_{r_{i}^{−}})), f_{i,k,j}(α, α_{1}, …, α_{r_{i}^{−}})) : B_{j}

(e) Δ ⊢_{m,n} t : A if Δ ⊢_{m′,n′} t′ : A for some m′ ≤ m and some n′ ≤ n, and some t′ ≤ t.

(f) We let Δ ⊢ t : A be defined as Δ ⊢_{m,n} t : A, for some m, n.

(g) Let ⊢ A mean ∅ ⊢ e : A

(h) Note, in view of remark 4.2.2, that Δ ⊢_{A_{1}} B and Δ ⊢_{A_{2}} B does not necessarily imply Δ ⊢_{A_{1}×A_{2}} B.

Example 4.2.4 (Resource for implication) Consider the language with binary implication A → B. Let |∼ be a consequence relation for → satisfying identity and transitivity and assume that A → B is antimonotonic in A and monotonic in B. Let A_{0} be an algebra with binary ⊗ and a constant e. Let the (ρ, φ) modus ponens rule be:

\frac{(a, α) : A; (b, β) : A → B; ρ(b, a); φ(β, α)}{(b ∗ a, β ⊗ α) : B}

In many known substructural logics e is a left unit satisfying e⊗α = α for all α and that ρ(∅, a) and φ(e, α) hold for all a and α. We shall see in (a) below that this property corresponds to adopting the axiom ⊢ A → A. Also the database formula δ(x) expresses in many substructural logics the notion of relevance and/or resource use. For example δ(t) could be the formula ∀x(x ∈ Set (t)). This formula holds in any Herbrand universe iff for all constants in the universe appear in t.

For the above algebras and elimination rule, let us check what properties of A are needed to get some theorems of the form ∅ ⊢ (∅, e) : A, for various wffs A.

The reader should note that we do not claim completeness. A completeness theorem should be proved for each combination of axioms. To illustrate, consider the Hilbert system with the single axiom ⊢ A → A and the rule of Modus ponens

⊢ A and ⊢ A → B imply ⊢ B.

Let A be an algebra with e, ⊗, ≤ and φ. From case (a) below and from Example 4.2.8 we get that the corresponding conditions are:

• • φ(e, α) ⇒ α ≤ e ⊗ α

• • φ(e, α) ⇒ δ(e ⊗ α)

• • φ(e, e)

• • e ⊗ e ≤ e If the algebra A satisfies these conditions, then the corresponding algebraic LDS satisfies

•∅ ⊢_{A} e : A → A

and

∅ ⊢_{A} e : A

and

∅ ⊢_{A} e : A → B

imply

∅ ⊢_{A} e : B.

In other words we get soundness. What we still need to prove is completeness, namely if for some formula D, ∅ ⊬ e : D then for some algebra A_{D}, satisfying hte above condition, we have that

∅ ⊬_{A_{D}} D.

We can define a translation τ_{δ}, similar to the one given in definition 4.1.6(b), where the atoms t : q is translated as Q(t) ∧ δ(t) and ↠ is intuitionisitc implication. We believe (conjecture) that we can show

∅ ⊢ e : A iff [e : A]^{τ_{δ}}

is a theorem of intuitionisitc logic, at least for wffs A which are temselves intuitionistic theorems.

(a) We check ∅ ⊢?(∅, e) : A → A. The above holds if for arbitrary a in ⟨x⟩ρ(∅, x) and arbitrary α in ⟨x⟩φ(e, x) we have

{ρ(∅, a); φ(e, α); (a, α) : A} ⊢ (∅ ∗ a, e ⊗ α) : A

This will follow if a ≤ ∅ ∗ a and α ≤ e ⊗ α and {ρ(∅, a), φ(e, α); (a, α)} |≡ δ((∅ ∗ a, e ⊗ α).

We do have a = ∅ ∗ a, but we do need to require α ≤ e ⊗ α, if we want A → A to be a theorem. If we assume also that e ⊗ α = α that will also yield the axiom.

The minimal condition for A → A is

• • ∀α(φ(e, α) ⇒ α ≤ e ⊗ α)
• • ∀a(ρ(∅, a) ⇒ a ≤ ∅ ∗ a).
• • {ρ(∅, a); φ(e, α); (a, α)} |≡ δ((∅ ∗ a, e ⊗ α)).

(b) Consider the rule

\frac{⊢ A → B}{⊢ (B → C) → (A → C)}.

To check this assume

∅ ⊢ (∅, e) : A → B

This means for arbitrary a and α in ⟨x⟩ρ(∅, x) and ⟨x⟩φ(e, x) respectively we have

{ρ(∅, a); φ(e, α); (a, α) : A} ⊢ (∅ ∗ a, e ⊗ α) : B

while we need to show for arbitrary a, α as above that

{ρ(∅, a); φ(e, α); (a, α) : B → C} ⊢ (∅ ∗ a, e ⊗ α) : A → C

For the latter we need for arbitrary b and β in ⟨x⟩ρ(∅∗a, x) and in ⟨x⟩∅(e⊗α, x) respectively to have

{φ(e⊗α, β); ρ(∅∗a, b); ρ(∅, a); φ(e, α); (a, α) : B → C; (b, β) : A} ⊢ ((∅∗a)∗b, (e⊗α)⊗β) : C.

To show that we need ρ(∅, b) and φ(e, β) to hold, so that we get

(∅ ∗ b, e ⊗ β) : B.

Further, we need ρ(a, ∅ ∗ b) and φ(α, e ⊗ β) to hold and a ∗ (∅ ∗ b) ≤ (∅ ∗ a) ∗ b and α ⊗ (e ⊗ β) ≤ (e ⊗ α) ⊗ β. Thus the condition is

• •ρ(∅ ∗ a, b) ⇒ ρ(∅, b) ∧ ρ(a, ∅ ∗ b) ∧ (a ∗ (∅ ∗ b) ≤ (∅ ∗ a) ∗ b).

• •φ(e ⊗ α, β) ⇒ φ(e, β) ∧ φ(α, e ⊗ β) ∧ (α ⊗ (e ⊗ β) ≤ (e ⊗ α) ⊗ β).

From now on we assume the algebra satisfies for all a, α:

∅ ∗ a = a; e ⊗ α = α; φ(e, α); ρ(∅, a)

we also assume that δ(t) always holds. This will simplify the examples.

(c) Let us check when

∅ ⊢ (∅, e) : B → (A → B).

The above holds if

{(a, α) : B} ⊢?(a, e ⊗ α) : A → B

where a is arbitrary for ⟨x⟩ρ(∅, x) and α is arbitrary for ⟨y⟩φ(e, y). Let b be arbitrary for ⟨x⟩ρ(a, x) and β be arbitrary for ⟨y⟩φ(α, y). We must check whether we have {ρ(a, b); φ(α, β); (a, α) : B; (b, β) : A} ⊢?(a ∗ b, α ⊗ β) : B. Clearly if our algebra allows for a ≤ a ∗ b and α ≤ α ⊗ β then we can indeed succeed. The above means that the condition we need on the algebra is

• • ρ(a, x) ∧ φ(α, y) ⇒ a ≤ a ∗ x ∧ α ≤ α ⊗ y.

(d) Let us check the axiom

∅ ⊢?(∅, e) : A → ((A → B) → B).

Again this reduces to checking

{(a, α) : A} ⊢?(a, α) : (A → B) → B.

which reduces to showing for any (b, β) such that ρ(a, b) and φ(α, β) hold that:

{ρ(a, b); φ(α, β); (a, α) : A; (b, β) : A → B} ⊢?(a ∗ b, α ⊗ β) : B

where further b is arbitrary in ⟨x⟩ρ(a, x) (i.e. b ≠ a) and β is arbitraray in ⟨y⟩φ(α, y). The only way to get the conclusion is to perform modus ponens on the assumptions, in which case we get (b ∗ a, β ⊗ α) : B but we need φ(β, α) to hold. We thus need the algebra to satisfy the following conditions:

• • ρ(a, x) ⇒ ρ(x, a) ∧ (x ∗ a ≤ a ∗ x)
• • φ(α, y) ⇒ φ(y, α) ∧ (y ⊗ α ≤ α ⊗ y)

(e) Let us check the axiom

∅ ⊢?(∅, e) : (A → (B → C)) → (B → (A → C))

Again we get that we need

{(a, α) : A → (B → C)} ⊢?(a, α) : B → (A → C)

and we need to show that for any (b, β) such that ρ(a, b) and φ(α, β) hold and such that b is arbitrary in ⟨x⟩ρ(a, x) and β is arbitrary in ⟨y⟩φ(α, y) we have

{ρ(a, b); φ(α, β); (a, α) : A → (B → C); (b, β) : B}f ⊢?(a ∗ b, α ⊗ β) : A → C

We must show for any (c, γ) such that ρ(a ∗ b, c) and φ(α ⊗ β, γ), which are arbitrary respectively, we have

\begin{matrix}\{ρ(a, b); φ(α, β); ρ(a ∗ b, c); φ(α ⊗ β, γ); (a, α) : A → (B → C); (b, β) : B; (c, γ) : A\} \\ ⊢ ((a ∗ b) ∗ c, (α ⊗ β) ⊗ γ) : C \end{matrix}

using modus ponens we can get: ((a∗c)∗b, (α⊗β)⊗γ) : C provided φ(α, γ), ρ(a, c), φ(α⊗γ, β) and ρ(a ∗ c, b) all hold.

We thus need the following to hold

• • ρ(a, x_{1}) ∧ ρ(a ∗ x_{1}, x_{2}) ⇒ ρ(a, x_{2}) ∧ ρ((a ∗ x_{2}, x_{1}) ∧ ((a ∗ x_{2}) ∗ x_{1} ≤ (a ∗ x_{1}) ∗ x_{2})

• • φ(α, y_{1}) ∧ φ(α ⊗ y_{1}, y_{2}) ⇒ φ(α, y_{2}) ∧ φ((α ⊗ y_{2}, y_{1}) ∧ ((α ⊗ y_{2}) ⊗ y_{1} ≤ (α ⊗ y_{1}) ⊗ y_{2})

(f) Note that if we let a = ∅ and α = e in the conditions of (d) above, then if we assume ρ(∅, x) and φ(e, y) hold for any x and y we get the following:

ρ(x_{1}, x_{2}) ⇒ (x_{2} ∗ x_{1} ≤ x_{1} ∗ x_{2}) ∧ ρ(x_{2}, x_{1})
φ(y_{1}, y_{2}) ⇒ (y_{2} ⊗ y_{1} ≤ y_{1} ⊗ y_{2}) ∧ φ(y_{2}, y_{1})

which are exactly the conditions of (c) above. Indeed axioms (a) and (d) imply axiom (c) because from

(A → B) → (A → B)

we can get by commutativity

A → ((A → B) → B).

(g) We check the axiom

∅ ⊢?(∅, e) : (A → (B → C)) → ((A → B) → (A → C))

We have to check whether

{(a, α) : A → (B → C)} ⊢?(a, α) : (A → B) → (A → C).

For this purpose we need to show that for any (b, β) such that ρ(a, b) and φ(α, β) hold and such that b is arbitrary in ⟨x⟩ρ(a, x) and β is arbitrary in ⟨y⟩φ(α, y) we have

{ρ(a, b); φ(α, β); (a, α) : A → (B → C); (b, β) : A → B} ⊢?(a ∗ b, α ⊗ β) : A → C.

We must therefore show that for any (c, γ) such that ρ(a ∗ b, c), φ(α ⊗ β, γ), c is arbitraray in ⟨x⟩ρ(a ∗ b, x), γ arbitrary in in ⟨y⟩φ(α ⊗ β, y), we have

\begin{matrix}\{ρ(a, b); φ(α, β); ρ(a ∗ b, c); φ(α ⊗ β, γ); (a, α) : A → (B → C); \\ (b, β) : A → B; (c, γ) : A\} ⊢?((a ∗ b) ∗ c, (α ⊗ β) ⊗ γ) : C \end{matrix}

To do modus ponens we need the following properties to hold

• ρ(a, c) ∧ φ(α, γ)

• ρ(b, c) ∧ φ(β, γ)

4.2. BASIC PROOF THEORY 129

These two will respectively give us

(a ∗ c, α ⊗ γ) : B → C

and

(b ∗ c, β ⊗ γ) : B

We further need

ρ(a ∗ c, b ∗ c) ∧ φ(α ⊗ γ, β ⊗ γ)

which will allow us to get by modus ponens

((a ∗ c) ∗ (b ∗ c), (α ⊗ γ) ⊗ (β ⊗ γ)) : C

we therefore need to have that • (a ∗ c) ∗ (b ∗ c) ≤ (a ∗ b) ∗ c

• (α ⊗ γ) ⊗ (β ⊗ γ) ≤ (α ⊗ β) ⊗ γ The Conditions on the algebra we require are therefore the following for all a, b, c and α, β, γ.

• •ρ(a, b) ∧ ρ(a ∗ b, c) ⇒ ρ(a, c) ∧ ρ(b, c) ∧ ρ(a ∗ c, b ∗ c) ∧ ((a ∗ c) ∗ (b ∗ c) ≤ (a ∗ b) ∗ c).

• •φ(α, β)∧φ(α⊗β, γ) ⇒ φ(α, γ)∧φ(β, γ)∧φ(α⊗γ, β⊗γ)∧((α⊗γ)⊗β⊗γ ≤ (α⊗β)⊗γ).

(h) We check the axiom

∅ ⊢?(∅, e) : (A → B) → (A → (A → B))

As before, we need to show

{(a, α) : A → B} ⊢?(a, α) : A → (A → B)

For this purpose we need to show, as before, that for any (b, β) such that ρ(a, b) and φ(α, β) hold and b is arbitrary in ⟨x⟩ρ(a, x) and β is arbitrary in ⟨y⟩φ(α, y) we have

{ρ(a, b); φ(α, β); (a, α) : A → B; (b, β) : A} ⊢?(a ∗ b, α ⊗ β) : A → B

This can be shown if

• a ≤ a ∗ b and α ≤ α ⊗ β. We an alternatively try and show the consequent using the elimination rule, in which case we need to show that for an arbitrary (c, γ) such that ρ(a ∗ b, c) ∧ φ(α ⊗ β, γ) holds and c is arbitrary in ⟨x⟩ρ(a ∗ b, x) and γ is arbitrary in ⟨y⟩φ(α ⊗ β, y) we have {ρ(a, b); φ(α, β); ρ(a∗b, c); φ(α⊗β, γ); (a, α) : A → B; (b, β) : A; (c, γ) : A} ⊢?((a∗b)∗c, (α⊗β)⊗γ) : B there are two ways we can proceed: since the algebra allows for

• ρ(a, b) ∧ φ(α, β) then we can perform the modus ponens and get

(a ∗ b, α ⊗ β) : B

and we need further that

• a ∗ b ≤ (a ∗ b) ∗ c and α ⊗ β) ≤ (α ⊗ β) ⊗ γ On the other hand, if the algebra allows for

• ρ(a, c) ∧ φ(α, γ) then we can perform modus ponens and get

• (a ∗ c, α ⊗ γ) : B

We further need that

• a ∗ c ≤ (a ∗ b) ∗ c and α ⊗ γ ≤ (α ⊗ β) ⊗ γ

Thus the overall conclusion is that the above axiom can be proved from the empty database ∅ if the algebra itself satisfies the following condition for all a, b, c and α, β, γ.

•• {ρ(a, b) ∧ φ(α, β) ⇒ (a ≤ a ∗ b) ∧ (α ≤ α ⊗ β)}
∨{[ρ(a, b) ∧ ρ(a ∗ b, c) ⇒ (a ∗ b ≤ (a ∗ b) ∗ c]∧
∧[φ(α, β) ∧ φ(α ⊗ β, γ) ⇒ (α ⊗ β ≤ (α ⊗ β) ⊗ γ)]}
∨{[ρ(a, b) ∧ ρ(a ∗ b, c) ⇒ ρ(a, c) ∧ (a ∗ c ≤ (a ∗ b) ∗ c)]
∧[φ(α, β) ∧ φ(α ⊗ β, γ) ⇒ φ(α, γ) ∧ (α ⊗ γ ≤ (α ⊗ β) ⊗ γ)]}

(i) Let us check

∅ ⊢?(∅, e) : (A → B) → ((C → A) → (C → B))

As before, we need an arbitrary a in ⟨x⟩ρ(∅, x) and an arbitrary α in ⟨x⟩φ(e, x) for which we have

{(a, α) : A → B} ⊢?(a, α) : (C → A) → (C → B).

This reduces to allowing any (b, β) such that b is arbitrary in ⟨x⟩ρ(a, x) and β is arbitrary in ⟨x⟩φ(α, x) to have

{ρ(a, b); φ(α, β); (a, α) : A → B; (b, β) : C → A} ⊢?(a ∗ b, α ⊗ β) : C → B.

We must now show that for any (c, γ) such that c is arbitrary in ⟨x⟩ρ(a ∗ b, x) and γ is arbitrary in ⟨x⟩φ(α ⊗ β, x) we have

{ρ(a∗b, c); φ(α⊗β, γ); ρ(a, b); φ(α, β); (a, α) : A → B; (b, β) : C → A; (c, γ) : C} ⊢?((a∗b)∗c, (α⊗β)⊗γ) : B.

To succeed in this we need ρ(c, b) ∧ φ(γ, β) to hold and ρ(b ∗ c, a) ∧ φ(β ⊗ γ, α) to hold. we further need

a ∗ (b ∗ c) ≤ (a ∗ b) ∗ c

and

α ⊗ (β ⊗ γ) ≤ (α ⊗ β) ⊗ γ.

Thus the two conditions we need are:

• •ρ(a, b) ∧ ρ(a ∗ b, c) ⇒ ρ(c, b) ∧ ρ(b ∗ c, a) ∧ (a ∗ (b ∗ c) ≤ (a ∗ b) ∗ c)

• •φ(a, β) ∧ φ(α ⊗ β, γ) ⇒ φ(γ, β) ∧ φ(β ⊗ γ, α) ∧ (α ⊗ (β ⊗ γ) ≤ (α ⊗ β) ⊗ γ.

Example 4.2.5 (Semilinear, many valued algebra) Consider the albegras F and A_{0} defined as follows:

1. ρ(a, b) = def (set (a) ∩ set (b) = ∅), where set (a) ∩ set (b) = ∅ means that the expressions a and b share no atoms in common.

2. Let a ≤ b be multiset(a) ⊆ multiset(b).

3. Let the algebra A_{0} be all real numbers in the interval [0,1]. Let e be 0 and let β ⊗ α = min(1, α + β). Clearly ⊗ is commutative and e ⊗ α = α.

Let α ≤ β mean the same as ≤ of the real numbers.

Let φ(α, β) be ⊤.

to show in A_{0}, β : A → B, we need to asusme α : A for an arbitrary α and show β ⊗ α : B. Thus we have the truth table TruthValue(A → B) = max (0, TruthValue (B)−TruthValue (A))

with 0 being Truth.

Let us check whether A → (B → A) is a theorem of this logic. The condition to check is

• • ρ(a, x) ∧ φ(α, y) → a ≤ a ∗ x ∧ α ≤ α ⊗ y.

which becomes

set (a) ∩ set (b) = ∅ ⇒ multiset (a) ⊆ multiset (a ∗ x) ∧ α ≤ min (1, α + y)

This condition is satisfied.

Example 4.2.6 (An algebraic condition for an axiom) The next definition is motivated by Example 4.2.4 and is intended to associate a formula τ_{A} of the algebra A with every wff A of a logic L such that in the LDS (A, L) we hope to have that (under suitable conditions on A):

∅ ⊢ e : A iff A ⊨ τ_{A}.

We explain the basic idea by an example. Consider the algebra A = F × A_{0} and the A_{0} database Δ_{0}.

\begin{matrix}α_{1} : B \\ α_{2} : A → B \\ α_{3} : A \end{matrix}

and we want to prove in A_{0}, β : A → (A → B) from this database. We assume the algebra A_{0} has the modus ponens rule:

\frac{φ(α, β); α : A; β : A → B}{f(β, α) : B}

We proceed with a proof in A_{0} and assume x_{1} : A with an arbitrary label x_{1} in ⟨x⟩φ(β, x) and try and prove f(β, x_{1}) : A → B.

This can be done in several ways. To record the different ways we ue resource labelling by working in the algebra A = F × A_{0}. So let us display our database as an A database Δ_{1} below:

(a_{1}, α_{1}) : B
(a_{2}, α_{2}) : A → B
(a_{3}, α_{3}) : A
(c_{1}, x_{1}) : A

where a_{1}, a_{2}, a_{3}, c_{1} are atomic resource labels from F. In the pure resource logic with F labels, ignoring the algebraic A_{0} labels, we can prove A → B in two ways.

1. Using the Elimination Rules only. In which case we get a_{2} : A → B

2. Use an introduction rule for A → B.

Option 1 will also succeed in the A_{0} algebra if α_{2} ≤ f(β, x_{1}) in A_{0}.

Let us write t = a_{2} for the resource label with which A → B can be proved and let

Π_{1} = [φ(β, x_{1}) ⇒ (α_{1} ≤ f(β, x_{1}))]

for the associated formula, which if it holds in A_{0} the corresponding A_{0} proof will succeed.

Thus we look at t of F such that Δ_{1} ⊢_{F} t : A → B and check whether A_{0} ⊨ Π_{t} and this ensures that Δ_{1} ⊢_{A_{0}} β : B.

Turning to the second option in A_{0}, we assume x_{2} : A with a label x_{2} arbitrary in ⟨x⟩φ(f(β, x_{1}), x) and get the A database Δ_{2} below:

(a_{1}, α_{1}) : B
(a_{2}, α_{2}) : A → B
(a_{3}, α_{3}) : A
(c_{1}, x_{1}) : A
(c_{2}, x_{2}) : A

and we want to prove in A_{0} γ = f(f(β, x_{1}), x_{2}) : B. On pure resource considerations we can prove b in F in several different ways:

\begin{matrix}a_{1} : B \\ a_{2}a_{3} : B \\ a_{2}c_{1} : B \\ a_{2}c_{2} : B \end{matrix}

The corresponding A_{0} labels:

\begin{matrix}α_{1} : B \\ f(α_{2}, α_{3}) : B \\ f(α_{2}, x_{1}) : B \\ f(α_{3}, x_{2}) : B \end{matrix}

Therefore we can deduce in A_{0} the required γ = f(f(β, x_{1}), x_{2}) : B provided the following holds:

Π_{2} = φ(f(β, x_{1}), x_{2}) ⇒ α_{1} ≤ γ ∨ (f(α_{2}, α_{3}) ≤ γ) ∨ (f(α_{2}, x_{1}) ≤ γ) ∨ (f(α_{3}, x_{2}) ≤ γ).

We therefore conclude that in A_{0} the database Δ_{0} can prove β : B if the algebra satisfies

∀x_{1}, x_{2}(Π_{1} ∨ Π_{2})

The general situation, however, is not as simple as it seems from the above discussion. Let us look at the formula (((A → A) → B) → B. To find the condition needed we try

(a, α) : (A → A) → B ⊢?(a, α) : B

We cannot get B by direct modus ponens (ignoring the labels). We need to observe that we should try and prove A → A. So we try to show x : A → A with a label x such that f(α, x) ≤ α and φ(α, x) holds. Clearly, to show x : A → A, we assume y : A, and try and show f(x, y) : A. The simplest is to assume y ≤ f(x, y). We are thus looking for an x such that ∀y(φ(x, y) ⇒ y ≤ f(x, y)) and such that φ(α, x) holds.

The choice x = e can do that, except that φ(α, e) might not hold. In fact the condition for ((A → A) → B) → B to be a theorem is indeed that φ(α, e) holds.

To summarize, for e : ((A → A) → B) → B to hold, we need:

• • ∀α[φ(α, e) ∧ f(α, e) ≤ α]

The lesson we learn from this example si that there may be ways to prove the goals which do not arise from direct modus ponens pattern matching. We may have: t_{1} : A → B,; t_{2},: C ⊢^{?} t : B, and we may need to try and show x : A with an appropriate label x. Thus to find all possible proofs algorithmically we need a good proof strategy. Note that the definition of the consequence relation Δ ⊢ t : A (Definition 4.2.3) is correct but it is inductive. For example, we can get

α : (A → A) → B ⊢ α : B

because α : (A → A) → B ⊢_{1,0} e : A → A and hence it proves ⊢_{1,1} f(α, e) : B and provided f(α, e) ≤ α, we get the desired result.

We thus need a good proof strategy. Let us adopt a goal directed strategy. The strategy of N-Prolog, which is as follows:

1. To show ?q, q atomic, find a clause A_{1} → … → (A_{n} → q) …) in the data and show ?A_{i}, i = 1, …, n.

2. To show A → B, add A to the data and show B.

3. Success for q atomic if q is in the data.

This strategy is an improvement. It will certainly deal with the previous examples, but still, there are cases where it fails. Consider

((A → B) → B) → ((B → A) → A

To find the condition for this we try

(a, α) : (A → B) → B ⊢?(a, α) : (B → A) → A

which reduces to

(a, α) : (A → B) → B; (b, β) : B → A ⊢?(a ∗ b, f(α, β)) : A

and φ(α, β) must hold.

Now we can again see the improvement of the goal directed approach. Forward pattern matching for modus ponens will give us nothing. The goal directed approach will indicate that we need to prove B with a label x : B such that φ(β, x) holds and

f(β, x) ≤ f(α, β).

Again, in a goal directed procedure we get that we need to prove y : A → B with a label y such that φ(α, y) holds and f(α, y) ≤ x. To show y : A → B, we assume z : A for arbitrary z in ⟨z⟩φ(y, z) and show f(y, z) : B. Here we loop because we have to go through the clause (A → B) → B again.

Thus we get no condition for this case unless we improve our proof procedures.

The N-Prolog goal directed proof procedure is complete for intuitionistic implication. Additional rules can be given to caputre classical logic and some intermediate logics. The above axiom is not an intuitionistic theorem. Perhaps then as a beginning step we restrict our conditions finding algorithms to axioms which are intuitionistic theorems, and hope to obtain completeness proofs for such cases.

Let us agree that by a substructural Hilbert system for → we mean a Hilbert system whose theorems are all intuitionistically valid. It is for this kind of system that we give the next definition.

Definition 4.2.7 (Algebraic conditions for substructural axioms) Let (A_{0}, L) be an LDS. Consider the resource algebra A = F × A_{0}. Assume (A, L) is an algebra with rules of the sort described in Definition 4.2.1. Let Δ be a database in A. Assume that if (a_{1}, α_{1}) : A; (a_{2}, α_{2}) : A ∈ Δ and A_{0} ⊭ α_{1} = α_{2} then a_{1} ≠ a_{2}. Let Δ_{F} be the F database {a : A | for some α, (a, α) : A ∈ Δ}. Similarly Δ_{A_{0}} = {α : A | for some a, (a, α) : A ∈ Δ}.

The notions Δ_{F} ⊢ a : A and Δ_{A_{0}} ⊢ α : A are well defined. We shall abuse notation and write Δ ⊢_{F} a : A and Δ ⊢_{A_{0}} α : A instead. We now define the formula τ(Δ, β, B) of the language A_{0}, which is the condition which A_{0} has to satisfy so that Δ ⊢_{A_{0}} β : B. We begin by defining a formula τ(Δ, t, β, B), for any t of F for which Δ ⊢_{F} t : B. The definition is by induction on the proof of t : B as defined in Definition 4.2.3.

Case m = n = 0 In this case for some α, (t, α) : B is in Δ. We can deduce Δ ⊢ β : B provided α ≤ β holds. So in this case let τ(δ, t, β, B) be (δ_{D} ⇒ δ(t)) ∧ α ≤ β. If δ(t) is not used, i.e. is always true then the formula is α ≤ β.

Cases m, n + 1 In this case t : B is obtained from previously proved formulas by an elimination rule, as in Definition 4.2.3. Say the rule is rule e below:

{ρ(a, a_{1}, …, a − n); a_{1} : A_{1}; …, a_{n} : A_{n}; a : A \atop t = ((e, a), (a_{,} …, a_{n}) : B}

Let r_{1}, …, r_{k} be companion rules for e above, of the form:

r_{i} {φ_{i}(α^{i}, α_{1}^{i}, …, α_{n}^{i}); α_{1}^{i} : A_{1}; …; α_{n}^{i} : A_{n}; α^{i} : A \atop f^{i}(α^{i}, α_{1}^{i}, …, α_{n}^{i}) : B}

By the induction hypothesis there are formulas τ(Δ, a, α^{i}, A) and τ(Δ, a_{j}, α_{j}^{i}, A_{j}) such that if the algebra A_{0} satisfies them then Δ ⊢_{A_{0}} α^{i} : A, Δ ⊢_{A_{0}} α_{j}^{i} : A_{j} respectively hold. Therefore the formula τ(Δ, t, β, B) is :

⋁_{i}[τ(Δ, a, α^{i}, A) ∧ ⋀_{j} τ(Δ, a_{j}^{i}, α_{j}^{i}, A_{i}) ⇒ (f^{i}(α^{i}, α_{1}^{i}, …, α_{n}^{i}) ≤ β)]

Case m + 1, 0 In this case t : B is obtained by an introduction rule (denoted by e). Thus B has the form B = (A_{1}, …, A_{r^{−}}) → (B_{1}, …, B_{r^{+}}).

We have for arbitrary new F labels a_{1}, …, a_{r^{−}} satisfying ρ(t, a_{1}, …, a_{r^{−}}), that for each j = 1, …, r^{+}

Δ′_{F} = Δ_{F} ∪ {a_{1} : A_{1}; …, a_{r^{−}} : A_{r^{−}}} ⊢ ((e_{j}, t), (a_{1}, …, a_{r^{−}}) : B_{j}

Let r_{1}, …, r_{k} be all elimination rules for → in A_{0}. These have the form:

r_{i} {φ_{i}(α^{i}, α_{1}^{i}, …, α_{r^{−}}^{i}); α_{1}^{i} : A_{1}; …; α_{r^{−}}^{i} : A_{r^{−}}; t : B \atop f_{j}^{i}(α^{i}, α_{1}^{i}, …, α_{r^{−}}^{i}) : B_{j}}

By the induction hypothesis, there exist formulas τ_{i} = τ(Δ_{i}, ((e_{j}, t), (a_{1}, …, a_{r^{−}})), f_{j}^{i}(α^{j}, α_{1}^{i}, …, α_{r^{−}}^{i}), B_{j}) giving the conditions under which

Δ_{i} = Δ ∪ {α_{1}^{i} : A_{1}; …; α_{r^{−}}^{i} : A_{r^{−}}} ⊢_{A_{0}} f_{j}^{i}(α^{i}, α_{1}^{i}, …, α_{r^{−}}^{i}) : B_{j}.

Thus τ(Δ, t, β, B) is the following:

⋀_{i}[∀α^{i}∀α_{1}^{i}, …, α_{r^{−}}^{i}(φ_{i}(α^{i}, α_{1}^{i}, …, α_{i−1}^{i}) ∧ τ_{i} ⇒ (α_{i} ≤ β)]

Case of deduction from s : A; s ≤ t deduce t : A In this case, let τ(Δ, t, β, B) be τ(Δ, s, β, B).

The above inductive definition defined formula τ = τ(Δ, t, β, B) for every t such that Δ ⊢_{F} t : B. The formula says that if A_{0} ⊨ τ then Δ ⊢ β : B. In other words the fact that Δ ⊢_{F} t : B holds means that there is a resource proof of B from the database Δ and t is the term encoding the proof steps. Whether a corresponding A_{0} label propagation is possible depnds on the algebra A_{0}. If A_{0} ⊨ τ then this is possible. To find whether Δ ⊢_{A_{0}}?β : B can succeed we must find all possible resource proof routes t such that Δ ⊢_{F} t : B and for each consider τ(Δ, t, β, B). The disjunction of all possible such τ’s will give us the minimal condition on A_{0} to enable Δ ⊢_{A_{0}} β : B.

If the number of such t’s is finite then we are finished. What if the number of t’s is infinite? For example {a_{1} : A; a_{2} : A → A; a_{3} : A → B} can prove B with an infinite number of labels of the form t_{m} = a_{2}^{m}a_{1}a_{3}. For this reason we assumed that the algebra A_{0} is archimedian. The ‘longer’ the term t, the more A_{0} function symbols are applied to the initial labels of Δ to get the final label of B. Thus after a large number of applications of A_{0} function symbols, the resulting label α will not be less than β(≤ β). So the number of ts to consider is finite.

Example 4.2.8 (Labels for intuitionistic implication) Let us check intuitionistic implication. The axioms are

\begin{matrix}⊢ A → (B → A) \\ ⊢ (A → (B → C)) → ((A → B) → (A → C)) \end{matrix}

and the rule

{⊢ A; ⊢ A → B \atop ⊢ B}

The conditions on labels corresponding to the first two axioms were examined in example 4.2.4. These are respectively

∀α, y(φ(α, y) ⇒ α ≤ α ⊗ y)
∀αβγ(φ(α, β) ∧ φ(α ⊗ β, γ) ⇒ φ(α, γ) ∧ φ(β, γ)∧
∧φ(α ⊗ γ, β ⊗ γ) ∧ ((α ⊗ γ) ⊗ (β ⊗ γ) ≤ (α ⊗ β) ⊗ γ))

The condition for modus ponens is Assume ⊢ A, ⊢ A → B. This means that ∅ ⊢ e ⊢ e : A and ∀α arbitrary in ⟨x⟩φ(e, x)(α : A ⊢

e ⊗ α : B) hold. The above should imply ∅ ⊢ e : B. If e is in ⟨x⟩φ(e, x) then we can substitute for α and get ⊢ e ⊗ e : B. Thus the condition is

• • φ(e, e) ∧ e ⊗ e ≤ e.

Example 4.2.9 (Labels for concatenation logic) This system has the axioms

1. A → A

2. (A → B) → ((C → A) → (C → B)

and the rules

3. \frac{⊢ A; ⊢ A → B}{⊢ B}

and

4. \frac{⊢ A → B}{⊢ (B → C) → (A → C)}

From Examples 4.2.4 and 4.2.8 we get the following conditions:

1. φ(e, α) ⇒ (α ≤ e ⊗ α)

2. φ(e, α) ∧ φ(e ⊗ α, β) ∧ φ((e ⊗ α) ⊗ β, γ) ⇒ φ(γ, β) ∧ φ(β ⊗ γ, α) ∧ (α ⊗ (β ⊗ γ ≤ (α ⊗ β) ⊗ γ)

3. φ(e, e) ∧ e ⊗ e ≤ e

4. φ(e ⊗ α, β) ⇒ φ(e, β) ∧ φ(α, e ⊗ β) ∧ (α ⊗ (e ⊗ β) ≤ (e ⊗ α) ⊗ β).

Definition 4.2.10 (Labelled Hilbert systems) 1. Let (A, L) be a resource algebraic labelled deductive system as defined in 4.2.1 and let ⊢ be its labelled consequence relation. Let H = H(A, L) be the set of theorems of (A, L), i.e. H = {A | ∅ ⊢ e : A}.

2. Let (A, L) be a resource algebraic LDS, as before, and let H_{0} be a set of wffs of L. Define a new consequence relation Δ ⊢H_{0} t : A by letting

Δ ⊢H_{0} t : A iff def Δ ∪ {e : A | A ∈ H_{0}} ⊢ t : A

i.e. we prove t : A by allowing us to use e : A, A ∈ H_{0} at any time.

3. We write Δ ⊢^{E} t : A if there is a proof of t : A from Δ using elimination rules only. In terms of definition 4.2.3 this means that Δ ⊢_{0,n} t : A for some n.

4. A set H_{0} of wff is said to be a Hilbert formulation of (A, L) if the following holds for all Δ

and t : A:

Δ ⊢ t : A iff Δ ⊢H_{0}^{E} t : A.

In other words, any theorem Δ ⊢ t : A can be proved using axioms from H_{0} without introduction rules.

5. Of special interest is the case of Δ = ∅ and t = e. We have:

∅ ⊢ e : A iff ∅ ⊢H_{0}^{E} e : A

The left hand side uses introduction rules (i.e. is a labelled natural deduction system) while the right hand side does not, it uses H_{0} instead, and can therefore be seen as a Hilbert axiomatization of the theorems of (A, L).

Example 4.2.11 (Hilbert axioms for labelling conditions) We would like to know under what conditions on the algebra of labels can we find a Hilbert type axiomatization for (A, L). We examine the case of a language with a binary → only, where the algebra is (τ, S, ≤, e, ⊗) and where the elimination rule has the form

{φ(β, α); α : A; β : A → B \atop β ⊗ α : B}

It is convenient to assume that the algebra satisfies the following additional conditions

• ∀xφ(e, x)

• ∀a, b, α([φ(a, α) ∧ φ(b, α) ⇒ a ⊗ α ≤ b ⊗ α] ⇒ a ≤ b)

• ∀x(e ⊗ x = x ⊗ e = x)

and residuation:

• ∀a, b∃!y(a = y ⊗ b)

Our strategy is as follows:

Imagine we are in the middle of a proof from some assumptions. At a ceratin point, say line 99 of the proof, we introduce β : A → B using an introduction rule. This means that we start a subproof whose first line is the assumption α : A, where α is arbitrary in ⟨x⟩φ(β, x) and its last line is γ : B where γ ≤ β ⊗ α. Figure 4.1 illustrates the situation:

98 t : C
99 show β : A → B from box

99.0 α : A assumption α arbitrary in ⟨x⟩φ(β, x)

⋮

99.k γ : B, γ ≤ β ⊗ α

exit β : A → B

Figure 4.2:

Our intention is to dispense with the box justifying line 99 by bringing in several Hilbert axioms and deducing β : A → B by modus ponens only. We thus want the situation in figure 4.2

98  t : C
98.1 e : A_{1}  axiom

⋮

98.n e : A_{n}  axiom

⋮

99  β : A → B from axioms and previous lines by modus ponens only.

Figure 4.3:

The proof that a replacement is possible is by induction on the length and case analysis of the derivation in the box, i.e. on the number k. We start with the innermost boxes (i.e. assume that no introduction rules ar eused inside the box of fig 4.1) and eliminate these boxes and continue to work our way outwards until all boxes are eliminated. we will be left with anew proof using elimination rules only and axioms.

The following is a complete case analysis, for the proof in the box:

Case k = 1 The box proof has the following structure, fig 4.3.

99.0 α : A, assumption α
99.1 γ : B, γ ≤ β ⊗ α

Figure 4.4:

We distingush several subcases:

Subcase (1, a) γ : B is derived from α : A.

Subcase (1, b) γ : B is obtained from an earlier line outside the box, say line 37 is γ′ : B.

Subcase (1, c) γ : B is obtained from α : A; δ : A → B; φ(δ, α) by elimination. δ : A → B is outside the box, say line 37 is δ : A → B.

Subcase (1, d) A has the form Z → B and we have outside the box, say line 37 is ε : Z and γ : B is obtained by elimination from

α : Z → B; ε : Z; φ(α, ε)

the above completes the case analysis for k = 1. We now list the cases for k > 1.

Case k > 1 In this case the proof structure looks like the one in figure 4.4.

α : A ; ⋮ ; ε : X ; ⋮ ; δ : X → B ; ⋮ ; γ : B Figure 4.5:

We have the following subcases. Subcase (k, a)

γ : B is obtained from γ′ : B in the box. Subcase (k, b)

γ : B is obtained from γ′ : B outside the box. Subcase (k, c)

γ : B is obtained by elimination from ε : X and δ : X → B, where φ(δ, ε) holds and both ε : X and δ : X → B are outside the box.

Subcase (k, d)

Like subcase (k, c) but with ε : X outside the box and δ : X → B inside. Subcase (k, e)

Like (k, c) but with ε : X inside the box and δ : X → B outside the box. Subcase (k, f)

Like (k, c) but with ε : X and δ : X → B both inside the box.

This ends our case analysis. We now examine by induction on k how the box can be eliminated. We go case by case.

Subcase (1, a) In this case we must have B = A and α ≤ β ≤ β ⊗ α; and α is arbitrary in ⟨x⟩φ(β, x).

We need to show under these conditions that we can prove β : A → A outside the box.

Obviously β : A → A must be derivable from axioms. So if we take the axiom e : A → A then we can derive β : A → A provided e ≤ β. β is not arbitrary, it satisfies the condition

∀α[φ(β, α) ⇒ α ≤ β ≤ β ⊗ α].

So we need the albegra to satisfy:

• • ∀α[φ(β, α) ⇒ α ≤ β ≤ β ⊗ α] ⇒ e ≤ β.

Subcase (1, b) In this case we have outside the box γ′ : B and we know γ′ ≤ β ⊗ α and α is aritrary in ⟨x⟩φ(β, x). We want to deive outside β : A → B.

Thus we need the axiom

e : B → (A → B)

We want to carry out elimination with γ′ : B. For this we need φ(e, γ′) which we assumed always holds. We will get e ⊗ γ′ : A → B and from this we need to be able to deduce β : A → B. We have to understand what this means. We can get β : A → B if e ⊗ γ′ ≤ β. Thus we need

• • ∀α∀γ′[φ(β, α) ⇒ γ′ ≤ β ⊗ α] ⇒ e ⊗ γ′ ≤ β

since e ⊗ x = x in our algebras we can rewrite it as:

∀γ′[∀α(φ(β, α) ⇒ γ′ ≤ β ⊗ α) ⇒ γ′ ≤ β]

Subcase (1, c) In this case we already have δ : A → B outside the box. We want to get β : A → B outside the box. What we know about δ is that for an aribtarary α ∈ ⟨x⟩[φ(δ, x) ∧ φ(β, x)], δ ⊗ α ≤ β ⊗ α. If from this we can deduce δ ≤ β then we are done.

Thus we need

..∀α[φ(δ, α) ∧ φ(β, α) ⇒ δ ⊗ α ≤ β ⊗ α] ⇒ δ ≤ β.

This is in fact one possible requirement on the algebra.

Subcase (1, d) In this case we have ε : Z outside the box and we want to get outside the box β : (Z → B) → B. We are given that φ(β, α) and φ(α, ε) hold and α ⊗ ε ≤ β ⊗ α. We need the axiom

e : Z → ((Z → B) → B).

Since we have φ(e, ε) we can get e ⊗ ε : (Z → B) → B and if e ⊗ ε ≤ β we are done. Thus the condition we need is:

• • ∀α[φ(β, α) ∧ φ(α, ε) ⇒ (α ⊗ ε ≤ β ⊗ α)] → (ε ≤ β).

Subcase (k, a) In this case γ : B is obtained from γ′ : B inside the box. Thus we have γ′ ≤ γ and since γ ≤ β ⊗ α we have γ′ ≤ β ⊗ α and the induction hypothesis β : A → B can be obtained outside the box.

Subcase (k, b) This is the same as subcase (1, b). Subcase (k, c)

γ : B is obtained by elimination from ε : X and δ : X → B where φ(δ, ε) holds and both ε : X and δ : X → B are outside. We can perform elimination outside and get γ : B outside. Now we continue to find the condition as in case (1, b).

Subcase (k, d) In this case γ = δ ⊗ ε, with ε : X in the box and δ : X → B outside the box. φ(δ, ε) holds. By the induction hypothesis we can have outside a proof of ε_{0} : A → X where ε_{0} ⊗ α = ε.

We need to assume that our algebra allows residuation, i.e. ∀ε, α∃x(ε = x⊗α). In fact in many algebras there exists the minimal such x.

We know that φ(β, α) and γ = δ ⊗ε = δ ⊗(ε_{0} ⊗α) ≤ β ⊗α. We want to get β : A → B outside. We distinguish two possibilities.

Subcase (d_{1}) ε_{0} ≤ e. In this case ⊢ A → X. We need the rule

{⊢ A → X \atop ⊢ (X → B) → (A → B)}

this means that we can get δ : A → B by modus ponens since φ(e, δ) holds. We have δ ⊗ (ε_{0} ⊗ α) ≤ β ⊗ α for arbitrary α such that φ(δ, ε_{0} ⊗ α) ∧ φ(β, α) hold.

If we can deduce from this δ ≤ β then we finish. We need

•ε_{0} ≤ e ∧ ∀α(φ(δ, ε_{0} ⊗ α) ∧ φ(β, α) ⇒ δ ⊗ (ε_{0} ⊗ α) ≤ β ⊗ α) ⇒ δ ≤ β.

Subcase (d_{2}) Not ε ≤ e Take the axiom

e : (X → B) → ((A → X) → (A → B))

Since φ(e, δ) holds we get by modus ponens

δ : (A → X) → (A → B)

and assuming φ(δ, ε_{0}) holds, we get δ ⊗ ε_{0} : A → B.

We need now δ ⊗ ε_{0} ≤ β in order to get β : A → B outside.

Thus the condition we need is

• ∼ ε_{0} ≤ e ∧ ∀α[φ(δ, ε_{0} ⊗ α) ∧ φ(β, α) ⇒ δ ⊗ (ε_{0} ⊗ α) ≤ β ⊗ α] ⇒ φ(δ, ε_{0}) ∧ δ ⊗ ε_{0} ≤ β

Subcase (k, e) We have ε : X outside and δ : X → B inside the box. By the induction hypothesis, we have that δ = δ_{0} ⊗ α and δ_{0} : A → (X → B) can be obtained outside. We want to get β : A → B outside. Try the axiom

e : A → (X → B) → (X → (A → B))

we can thus get

δ_{0} : X → (A → B)

and assuming φ(δ_{0}, ε) holds we get δ_{0} ⊗ ε : A → B. We want δ_{0} ⊗ ε ≤ β.

We therefore need the condition:

• • ∀α[φ(δ_{0} ⊗ α, α) ⇒ (δ_{0} ⊗ α) ⊗ ε ≤ β ⊗ α] ⇒ δ_{0} ⊗ ε ≤ β ∧ φ(δ_{0}, ε)

Subcase (k, f) We have δ = δ_{0} ⊗ α, ε = ε_{0} ⊗ α and δ ⊗ ε ≤ β ⊗ α and outsie the box we have

\begin{matrix}ε_{0} : A → X \\ δ_{0} : A → (X → B) \end{matrix}

we want to get outside the box β : A → B.

Take the axiom

e : (A → (X → B)) → ((A → X) → (A → B)).

We need φ(e, δ_{0}) to get

δ_{0} : (A → X) → (A → B)

and φ(δ_{0}, ε_{0}) to get

δ_{0} ⊗ ε_{0} : A → B

and we need δ_{0} ⊗ ε_{0} ≤ β.

Thus the condition is

• • ∀α(φ(δ_{0} ⊗ α, ε_{0} ⊗ α) ⇒ (δ_{0} ⊗ α) ⊗ (ε_{0} ⊗ α) ≤ β ⊗ α) ⇒ δ_{0} ⊗ ε_{0} ≤ β ∧ φ(δ_{0}.ε_{0})

4.3 Algorithmic procedures for algebraic LDS

We cannot present a logical system without presenting also proof theoretic algorithmic procedure for it. In our case, it is not just a mattter that the very concept of a logic (as discussed in Chapter 1) requires algorithmic procedures. It is also that some of the natural operations and applications of our systems rely heavily on effective proof procedures. One such an example we have already encountered, is finding conditions on the algebra corresponding to an axiom. This really involves some sort of abduction, and algorithmic procedures are needed.

This section will give a goal directed system. we begin with some definitions and examples. See Definition 2.4.12, Theorem 2.4.13 and Example 2.4.14.

Definition 4.3.1 (Goal directed algorithmic proof for substructural logics) Let A be an algebra and L be an implictional propositional language. We give a computation for the consequence relation of definition 4.2.3. We assume there is one modus ponens rule of the form

φ(β, α); α : A; β : A → B
.
β ⊗ α : B

Let Δ be a set of labelled formulas of the form {t_{i} : A_{i}} and let s : B be a goal (declarative unit). We define two metapredicates: Success (Δ, t, B, C, H). Failure (Δ, t, B, C, H).

The success (failure) predicate means that from the database Δ the goal t : B succeeds, (resp. fails) where the state of the compuation is that the constraints C have to be satisfied and where the history of the computation (usually only previous goals) is H. C is a consistent set of wffs in the language of the algebra A. H is a list of triples, database, label and goals. The computation can go as follows. (It can be slightly varied):

• Succ (Δ, t, B, C, H) if for some t′ ≤ t, t : B ∈ Δ and C is consistent in A and δ_{D}?δ(t) succeeds.

• Succ (Δ′ = Δ ∪ {s_{0} : A_{1} → … → (A_{n} → q) …)}, t, q, C, H) for q atomic, if for some s_{1}, …, s_{n} Succ (Δ, s_{i}, A_{i}, C′, H′) for i = 1, …, n, where C′ = C ∪ {φ(s_{0}, s_{1}), φ(s_{0} ⊗ s_{1}, s_{2}), …, φ((… (s_{0} ⊗ s_{1}) ⊗ s_{2}) … ⊗ s_{n−1}, s_{n})} ∪ {(… (s_{0} ⊗ s_{1} ⊗ … ⊗ s_{n}) ≤ t} and H′ = H ∗ (Δ′, t, q) and C′ is consistent.

4.4. CONSEQUENCE RELATIONS AND FLATTENING 141

• Succ (Δ, t, A → B, C, H) if for arbitrary α in ⟨x⟩φ(t, x) we have Succ (Δ ∪ {α : A}, t ⊗

α, B, C ∪ {φ(t, α)}, H) and C ∪ {φ(t, α)} is consistent. The clauses for the Failure predicate are as follows:

• Fail (Δ, t, A, C, H) if C is inconsistent.

• Fail (Δ, t, q, C, H) for q atomic, if for each s_{0} : A_{1} → (… → (A_{n} → q) …) in Δ and each s_{1}, …, s_{n} we have for some i, Fail (Δ, s_{i}, A_{i}, C′, H′) where C′, H′ are as in the corresponding success clause.

• Fail (Δ, t, A → B, C, H) if for arbitrary α in ⟨x⟩φ(t, x) we have Fail (Δ∪{α : A}, t⊗α, B, C∪ {φ(t, a), H)

• Fail (Δ, t, q, C, H) if q does not unify with any clause in Δ. Many systems can be presented using a form of the Restart rule.

Let R be a formula in the metalanguage of H and Δ and t : q, choosing a database and goal (Δ′, s′, q′). Then the restart rule says

• Succ (Δ, t, q, C, H) if Succ (Δ ∪ Δ′, s′, q′, C, H) where (Δ′, s′, q′) is the database and goal chosen by R.

To be continued …

4.4 Consequence relations and flattening

4.5 Hilbert formulations

4.6 Semantics and Completeness

4.7 Combining algebraic LDSs

4.8 Tableau for algebraic LDS

142 CHAPTER 4. PT & S FOR ALGEBRAIC LDS

General Labelled Deductive Systems and their Fibred Semantics

5.1 Introduction

The previous two chapters dealt with algebraic LDS. These have the form (A, L), where A is an algebra of labels. All labels in an algebraic LDS are from A and all formulas are from L. Thus a declarative unit has the form t : A, and a database has the form Δ = (D, f, d) as defined in Definition 4.2.1. D is a diagram of the theory of A, containing labels and some relations between them of the form φ(x, y) ∼ φ(x, y), x ≤ y, ∼ x ≤ y, and some equalities. The function f associates with each t ∈ D, a wff f(t).

We want to generalise the above notions. In general, the label is supposed to give more information about the formula it annotates. In the most general case, a label can itself be a database. Similarly, a formula is in general a declarative statement from a logic. In the most general case the declarative statement can be a database. Thus we must give a definition of an LDS which allows for declarative units of the form Δ_{1} : Δ_{2} where Δ_{1} is a database serving as a label and Δ_{2} is a database serving as a formula.

Examples 2.3.9, 2.3.10 and 2.3.11 have already illustrated the need for such concepts.

It is easy to understand what Δ_{1} : Δ_{2} means in the context of modal logic. Imagine an algebraic modal LDS. The declarative units have the form t : A, where t is a name for a possible world and A a formula holding at that world.

Imagine A has the form ♢q, q true in some accessible world. Then Figure 5.1 really means that at world t, there is an s, t < s and s : q. Suppose we want to be more specific about what s is. I might write the database in Figure 5.2 , corresponding to the meaning of figure 5.1. or in our database notation

Δ = ({t, t ≤ s_{0}, s_{0}}, f, t}

where f(t) = ⊤ and f(s_{0}) = q.

What would x : Δ mean?

It can only mean that the declarative contents of Δ must hold at the label x. But the declarative content of Δ is t : ♢q. To keep our notation consistent we must have x = t. Thus we can allow for

·t : ♢q Figure 5.1:

t·⟶·s_{0} : q Figure 5.2:

expressions of the form t : (D, f, d) provided t = d.

Let us now consider how we can use a database as labels. Consider again t : ♢q. The point t is a world. Let C be some formula which happens to be true at exactly world t (e.g. C can be ‘the world here is t’).

Then C : ♢q means the same as t : ♢q. In the general case we can have a whole database, e.g. Δ_{1}

Δ_{1} = (D_{1}, f_{1}, t)

‘characterising’ t, as the only t ‘around’ which Δ_{1} holds. Thus we can write Δ_{1} : ♢q. We can now write Δ_{1} : Δ and it should mean t : ♢q.

In the general case we can write

(D_{1}, f_{1}, d_{1}) : (D_{2}, f_{2}, d_{2})

we do not have to require d_{1} = d_{2}, this will be expected in the semantical denotation. The above process should be inductively iterated to obtain full generality. To turn the above into a logical system, we need proper proof theory and semantics for it as

well as other traditional investigations.

This is the task of this chapter.

5.2 Databases used as labels

Definition 5.2.1 (Metabases) Let (A, L) be an algebraic LDS in the sense of definition 4.2.1. We define the notion of an (A, L) metabase as follows.

1. a diagram is a set (D, d) of labels, with d ∈ D together with literals of the form φ(x, y), ∼ φ(x, y), x = y, x ≠ y, x ≤ y, ∼ x ≤ y, for some x, y ∈ D.

2. A metabase of level 1 has the form (D, f, d) where (D, d) is a diagram and f is a function associating with ech t ∈ D a declarative unit f(t) = s : A.

Note that the label s need not be the same as t.

3. A metabase of level n + 1 has the form (D, f, d), where (D, d) is as before and f is a function associating with each t ∈ D, the pair f(t) = Δ_{1}^{t} : Δ_{2}^{t}, where Δ_{i}^{t} are metabases of level ≤ n. We also allow f(t) to be of the form s : Δ_{2}^{t}, where s is a label from A or to be of the form Δ_{1}^{t} : A, where A is a formula of L.

Example 5.2.2 (Modal metabases) We try to give a semantic interpretationfor modal metabases, to help give ourselves some intuition. This should be compared with Example 2.8.2 and Definition 2.8.3. Let (S, R, a, h) be a propositional Kripke structure. Let t : A be a declarative unit, where t comes from an algebra A = (T, <) (really a set with an ordering) and A from a modal langauge (with ♢ and □). Let g be a function from labels into possible worlds of S. Then for s ∈ S we have

1. s ⊨^{h,g} t : A iff (def) g(t) = s and s ⊨^{h} A where ⊨^{h} is the traditional Kripke model satisfaction.

2. Let Δ = (D, f, d) be a metabase of level 1. Then f(t) = t′ : A, for t ∈ D, where t′ is an algebraic label. Let s ∈ S. We write s ⊨^{g,h} Δ iff (def) the following holds:

• g(d) = s • g is a homomorphism from (D, ≤, d) into (S, R, a) namely, for all x, y ∈ D, we have

D ⊢ x ≠ y implies g(x) ≠ g(y) D ⊢ x = y implies g(x) = g(y) D ⊢ x < y implies g(s)Rg(y) D ⊢∼ (x < y) implies ∼ g(x)Rg(y)

• If f(t) = t′ : A then g(t) = g(t′)) and g(t) ⊨^{h} A

3. Let Δ be of the form (D, f, d) such that f(t) = Δ_{1}^{t} : Δ_{2}^{t} for metabases Δ_{i}^{t}.

We say s ⊨^{g,h} Δ iff (def) the following holds

• g(d) = s

• For all t ∈ D, if g(t) ⊨^{g,h} Δ_{1}^{t} then g(t) ⊨^{g,h} Δ_{2}^{t}

• g is a homomorphism from (D, ≤, d) into (S, R, a).

Example 5.2.3 (Uniquely declarative resource metabases) This example will illustrate what can be done with metabases.

Let (A, L) be an LDS as in definition 4.2.1. Assume A is a resource algebra with φ and ⊗ and L is a language with → only.

1. A declarative unit has the form t : A, t a label, A a wff.

2. A level (0, 1) metabase Δ of length n is a function f from the set {1, 2, …, n} associating with i a declarative unit f(i) = t_{i} : A_{i}. We can also display Δ as (t_{1} : A_{1}; …; t_{n} : A_{n}).

3. A level (0, m + 1) metabase Δ of length n is a function f from {1, …, n} associating with each i a declarative expression f(i) = t_{i} : Δ_{i}, where t_{i} is a label and Δ_{i} is a metabase of level (0, m′), m′ ≤ m.

4. A labelled metabase of level 0 has the form t : Δ, where t is a label and Δ a metabase of level (0, m) for some m.

5. Let Δ_{1} and Δ_{2} be two metabases of level 0.

Δ_{i} = (t_{1} : Δ_{1}^{i}; …; t_{n_{i}} : Δ_{n_{i}}^{i})

Then Δ_{1} ∗ Δ_{2} is defined as

(t_{1} : Δ_{1}^{1}; …, t_{n_{1}}^{1} : Δ_{n_{1}}^{1}; t_{1}^{1} : Δ_{1}^{2}, …, t_{n_{2}}^{2} : Δ_{n_{2}}^{2})

6. Let ϑ be a function associating with each pair of algebraic labels t, s a new label ϑ(t, s), we now define the notion of Δ ⊢_{ϑ} s : B, for a metabase Δ of level 0 and a declarative unit s : B. Recall that → has the elimination rule

{α : A; β : A → B; φ(β, α) \atop β ⊗ α : B}

(a) t_{1} : A_{1} ⊢_{ϑ} s : B iff t_{1} = s and A_{1} = B

(b) t_{1} : A_{1}; t_{2} : A_{2} ⊢ s : B iff s = t_{1} ⊗ t_{2} and A_{1} = A_{2} → B and φ(t_{1}, t_{2}) hold.

(c) t_{1} : A_{1}; …; t_{n} : A_{n}; t_{n+1} : A_{n+1} ⊢ s : B iff for some k and s_{1}, s_{2} we have t_{1} : A_{1}; …; t_{k} : A_{k} ⊢ s_{1} : A → B, and t_{k+1} : A_{k+1}; …; t_{n+1} : A_{n+1} ⊢ s_{2} : A and s = s_{1} ⊗ s_{2} and φ(s_{1}, s_{2}) hold.

7. Let t : Δ be a labelled metabase of level 0. We write t : Δ ⊢_{ϑ} s : B iff for some s_{1}, Δ ⊢_{ϑ} s_{1} : B and s = ϑ(t, s_{1}).

8. Let t : Δ = t : (t_{1} : Δ_{1}; …; t_{n} : Δ_{n}) be a labelled metabase of level 0. Let s : B be a declarative unit. We write t : Δ ⊢_{ϑ} s : B iff for some s_{1} : B_{1}; …; s_{n} : B_{n} we have t_{i} : Δ_{i} ⊢_{ϑ} s_{i} : B_{i} and t : (s_{1} : B_{1}; …; s_{n} : B_{n}) ⊢_{ϑ} s : B.

9. A metabase may not prove anything. For example {t_{1} : q; t_{2} : q} does not prove anything.

A metabase Δ of level 0 is said to have a unique declaration if there exists a unique declarative unit s : B such tha Δ ⊢_{ϑ} s : B. We call such metabases uniquely declarative. B is the formula of Δ and s its label. (The other alternatives are that Δ proves B with several labels or proves nothing.)

10. Let A be a wff and Δ a uniquely declarative metabase of level 0 with wff A. Then Δ : A is a metadeclarative unit (i.e. since we have that Δ ⊢ s : A uniquely, instead of writing ‘s’, we can put Δ instead). We could have written Δ alone since A is also determined by Δ but we might prefer this more convenient display.

(a) A metabase of level 1 has the form

Δ_{1} : A_{1}, …, Δ_{n} : A_{n}

where Δ_{i} : A_{i} are metadeclarative units.

(b) Modus ponens can be extended to metadeclarative units by

{Δ_{1} : A; Δ_{2} : A → B; φ(s, t) \atop s ⊗ t : B}

where Δ_{1} ⊢_{ϑ} t : A, Δ_{2} ⊢_{ϑ} s : A → B. (Note that each Δ_{i} has a unique label and formula.) we can similarly deal with

t_{1} : A, Δ_{2} : A → B

and

Δ_{1} : A, s : A → B

(c) Let Δ be a metabase of level 1. The notion of Δ ⊢_{ϑ} s : B can be defined as for metabases of level 0. Similarly the notion of being uniquely declarative can be defined as for metabases of level 0.

(d) A metabase of level n+1 has the form Δ = (Δ_{1} : Γ_{1}; …; Δ_{n} : Γ_{n}) where Δ_{i} are uniquely declarative metabases of level ≤ n and Γ_{n} are also uniquely declarative metabases of level ≤ n. Assume by induction that the notion of Δ ⊢_{ϑ} s : B has been defined for metabases of level ≤ n. We assume that Γ_{i} proves the unique formula of Δ_{i}. I.e. if Δ_{i} ⊢ s_{i} : B_{i} then Γ_{i} ⊢ t_{i} : B_{i}. We let

Δ ⊢ r : C iff by definition {s_{i} : (t_{i} : B)} ⊢_{ϑ} r : C

(e) A metabase is a metabase of level n, for some n.

Example 5.2.4 (Linked metabases) This example continues the example of resource metabases, Example 5.2.3 by adding the concpet of linking of databases. This concept was mentioned in Examples 2.7.1 and 2.7.2.

Consider a metabase Δ. Δ contains in it algebraic labels from the algebra A. Suppose it contains somewhere among its labels a variable x (ranging over labels from the algebra). We can write it as Δ[x]. In an intuitive sense, Δ[x] is a predicate on x, in the very complex LDS langauge of the metabase. Its exact nature will be clear only when we give fibred semantics for metabases. At this stage we can think of it just as a ‘metapredicate’. Suppose we have two metabases Δ_{1}[x] and Δ_{2}[y]. We can link them by writing Link(Δ_{1}[x], Δ_{2}[y], y/x). The geometry of the linkage is displayed in figure 5.3

\begin{matrix}Δ_{1}[x] \\ ↑ \\ Δ_{2}[y] \end{matrix} Figure 5.3:

Its meaning is that we have a metabase Δ_{1}[x] containing a label x satisfying the ‘metapredicate’ λyΔ_{2}[y]. This is similar to writing in classical logic the expression:

Q_{1}(x), for x such that Q_{2}(x) holds

we may ask, why not write Q_{1}(x) ∧ Q_{2}(x), clearly this means the same? The answer is that sometimes it is more convenient to link, especially if x and y are buried deep inside different metabases whose languages are different!

A simple example where a natural linkage may occur may be the database

Δ_{1}(x) = {x : A},

which is a declarative unit, where x is the reliability value of the wff A. If x is obtained by some other numerical model analysis in a language different from that of A, then the most natural way of representing this relation is by Link({x : A}, Δ_{2}(y), x/y), where Δ_{2} is the metabase supporting the analysis leading to the numerical value x.

Definition 5.2.5 (Semantics for metabases) A general semantics structure has the form

m = (W, S, ≤, φ, e, f, h, g, F)

where W is a set of labels and for each x ∈ W, we have S^{x} ⊆ W, S^{x} ≠ ∅ ≤^{x}, φ^{x} are relations on S^{x}, e^{x} ∈ S^{x}, f is a binary fuction on S^{x} and h^{x} is an assignment into S^{x} such that (S^{x}, ≤^{x} , φ^{x}, e^{x}, f^{x}, h^{x}) is a model in the sense of Definition 4.1.2.

g^{x} is a function associating with each atomic label t an element

g^{x}(t) ∈ S^{x}

The function F^{x} is a binary function F^{x}(y) = z associating a new z with each x and y. It is used to ‘fibre’ our semantics. Since metabases can serve as labels, we must ‘fibre’ the models of these labels with the current models.

We proceed to define the notion y ⊨_{x} Δ, to be read, the database Δ holds at point y ∈ S^{x} in the model m.

Entailent between metabases Δ, Γ is defined

Δ ⊨ Γ iff ∀x, y[y ⊨_{x} Δ implies y ⊨_{x} Γ]

Let us now define ⊨_{x}.

1. For a basic declarative unit a : q for q atomic and a atomic label, we have:

y ⊨_{x} a : Q iff h^{x}(y, q) = 1 and g^{x}(a) = y

2. y ⊨_{x} a : A → B (where A and B are wffs built up from atoms and →) iff g^{x}(a) = y and for all y′, y′ ⊨_{x} A implies f^{x}(y, h′) ⊨_{x} B

3. y ⊨_{x} s : Δ for Δ = (t_{1} : Δ_{1}; …, t_{n} : Δ_{n}) iff g^{x}(s) = y and for all i, g^{F^{x}(y)}(t_{i}) ⊨_{F^{x}(y)} Δ_{i} We use the function F to move to the model ⊨_{z} for z = F^{x}(y) and we evaluate t_{i} : Δ_{i} in there.

4. y ⊨_{x} (r : Link(Δ_{1}(u), Δ_{2}(α), α/u iff g^{x}(r) = y and y ⊨_{x} Δ_{1} and y ⊢_{x} Δ_{2}(u). Thus semantically Linking is like taking a conjunction.

5. We now consider y ⊨_{x} Δ : Γ, a case where the label is Δ, a metabase. We read it as y ⊨_{x} a : Γ for all labels a such that y ⊨_{x} a : Δ.

In general, given two LDS logics (A_{1}, L_{1}) and (A_{2}, L_{2}), we can allow one to be the algebra for the other Thus we can allow for declarative units of the form Δ_{1} : Δ_{2}, where Δ_{1} is a metabase of LDS_{1} and Δ_{2} of LDS_{2}.

If we use LDS_{1} as a labelling algebra, we need to define the notions e, ≤, φ, f, ⊎, etc. required by Definition 4.2.1.

Let us begin by examining what we need to define, for the case, of the same LDS i.e. the algebra of metabases Δ labelling a wff A where both A and Δ are from the same (A, L).

This, we hope, will give us clues for the general case.

Let A, e, φ, f, ≤ and ⊎ be given for a language L with →. Let Δ_{1}, Δ_{2} be two databases. Consider

{Δ_{1} : A; Δ_{2} : A → B; Φ(Δ_{2}, Δ_{1}) \atop F (Δ_{2}, Δ_{1})}

We want to find a reasonable definition for Φ and F. Consider

t : A_{1} → (A_{2} → … → (A_{n} → B) …) ⊢ t : A_{1} → (A_{2} → … (A_{n} → B) …)

this should hold in the original LDS. According to the rules the above holds iff for all s_{1} such that φ(t, s_{1}) holds we have the database

φ(t, s_{1}); t : B_{1}; s_{1} : A_{1} ⊢ f(t, s_{1}) : B_{2}

where B_{i} = A_{i} → (A_{i+1} → … → (A_{n} → B) …). Continuing this process we get to the notion of a linear database of Example 4.1.6.

The process of increasing the antecedent database by use of introduction rule (adding s_{i} : A_{i}) indicates what Φ(Δ_{2}, Δ_{1}) and F (Δ_{2}, Δ_{1}) should be

• A database has the form Δ = (D, f, t_{0}), where

D = {t_{0}, s_{1}, …, s_{n}, φ(t, s_{1}), φ(t_{1}, s_{2}) … φ(t_{n−1}, s_{n}), …, t_{i} = f(t_{i−1}, s_{i}), i = 1 … n}

f(s_{i}) = A_{i}, i = 1, …, n.

• Two databases Δ_{1}, Δ_{2} satisfy Φ(Δ, Δ′) if t′_{0} = t_{n}.

• F (Δ, Δ′) = Δ′′ where Δ′′ is obtained by appending Δ′ to Δ. This is made possible by the condition t_{n} = t′_{0}.

There is another way of looking at the above. Consider

φ(t_{1}, t_{2}); t_{1} : A → B; t_{2} : A ⊢ t_{1}t_{2} : B.

Suppose

\begin{matrix}Δ_{1} ⊢ t_{1} : A → B \\ Δ_{2} ⊢ t_{2} : A \end{matrix}

If we have cut we must deduce

F (Δ_{1}, Δ_{2}) ⊢ t_{1}t_{2} : B

where F is the way Δ_{1}, Δ_{2} are ‘put together’ and Φ(Δ_{1}, Δ_{2}) is the compatibility predicate. To be continued …

5.3 General LDS

5.4 Fibred semantics

Quantifiers and η-functions

6.1 Introduction and discussion

This chapter extends the metabox discipline to quantifiers and Skolem functions. The language is built up in the usual way from atomic predicates P (x_{1}, …, x_{n}), from propositional connectives and the quantifiers ∀ and ∃. For the purpose of this section let us assume that the only propositional connective is →. This will allow us to study the metabox behaviour of ∀, ∃ in the context of linear, relevant, intuitionistic and classical implications. The next section will give a system of predicate modal and temporal logic as an example of the metabox discipline.

The main problem with the quantifiers is how to handle the four main rules in the metabox. These are:

∀ Introduction:

\frac{A(y)}{∀xA(x)}

y free and satisfies some restrictions.

∀ Elimination:

\frac{∀xA(x)}{A(t)}

∃ Introduction

\frac{A(t)}{∃xA(x)}

∃ Elimination:

\frac{∃xA(x)}{A(η)}

where η is a Skolem constant subject to some rules and restrictions.

The way to discover the rules is to look at some examples, try to prove them using the metabox procedures and see what goes wrong, and what is needed.

The first feature we discover, which we motivate by the examples below, is that we need two types of variables. One type of variables, the ordinary type, are the usual ones, the ones which are used in quantifiers and which can appear free in formulas. These we denote by x, y, z . . .. The other type of variables arise from the proper treatment of Skolem functions. These variables we call η-variables. We use u, v, w, … to denote these variables. the name η-variable comes from the use of the function η which is a generalised Skolem operator. Assume for example that ∃xA(x, y) is considered true, ie is either among our assumpitons or is derived from them. Then we can skolemise and write A(f(y), y)), where f is a Skolem function. For our purposes this is too crude. Hilbert ε operator is a bit better. We can consider ε_{x}A(x, y) and write A(ε_{x}A(x, y), y). For the

150 CHAPTER 6. QUANTIFIERS AND η-FUNCTIONS

1  Show ∃x(A(x) → ∀xAx))
2 ∅  Assumption
3 A(u) → ∀xA(x),  from Box 1 and choose u later
Box 1  4  Show ∀xA(x)
5 A(u)  Assumption
6 ∀xA(x)  from box 2
Box 2  7  Show A(y)
8 Introduce an arbitrary y  i.e. skolemise 6
9 A(y)  Instantiate u = y from 5 and 8

Figure 6.1:

purpose of the metabox, special care must be taken with Skolem functions. In fact we need a logic for Skolem functions. In this new logic of Skolem functions we use the η-function and write

A(ηxA(x, y), y)

Thus the η-function is a generalised sort of ε-function developed especially for the metabox. The formula A(u), u an η-variable, will be understood as meaning A (constant to be chosen).

u is to be chosen at a later step in the metabox. Meanwhile it is put in as an η-variable u. This is best explained by an example.

We know that in any logic

⊢ ∀xA(x) → ∀xA(x)

in classical logic we can pull the first quantifier out and get

⊢_{C} ∃x(A(x) → ∀xA(x))

This is not a theorem of intuitionistic logic. Let us try a metabox proof of this formula, see Figure 6.1.

Example 6.1.1 A metabox to check whether

∅ ⊢ ∃x[A(x) → ∀xA(x)]

in intuitionistic logic, figure 6.1

Here we get success. We should not succeed. We went wrong when we made u = y. The correct rule is to introduce in line 8 a Skolem function y = f(u) and hence the step u = f(u) will be blocked by the occur check. Thus formally the metabox discipline must tell us which {u_{i}} are involved so that when we skolemise we make the Skolem function dependent on the u_{i}. Moreover, if some u_{i} are involved in an outer box it is not clear that we transfer (reiterate) them into an inner box. Different logics may have different disciplines.

Let us try another example. This time with and without Restart, see Example 3.4.6 for restart..

Example 6.1.2

¬¬∃xA(x) ? ∃x¬¬A(x)

should fail in intuitionistic logic and succeed in classical logic. Let us check it in linear logic and linear logic with restart (linear classical in 9.1.2). (See fig 6.2)

1  Show a_{1} : ∃x((A(x) → ⊥) → ⊥)
2 a_{1} : (∃xA(x) → ⊥) → ⊥  Assumption
3 ∅ : ∃xA(x) → ⊥  from Box 1
Box 1  4  Show a_{2} : ⊥, ∃x((A(x) → ⊥) → ⊥)
5 a_{2} : ∃xA(x)  Assumption
6 a_{2} : A(c)  Skolemising
7 a_{2} : ∃x((A(x) → ⊥) → ⊥)  from Box 2 and use restart
Box 2  8  Show a_{2}a_{3} : ⊥
9 a_{3} : A(u) → ⊥  Assumption
10 a_{3} : A(c) → ⊥  instantiate, u = c
11 a_{2} : A(c)  reiteration
12 a_{2}a_{3} : ⊥
exit  13 a_{2} : ∃x((A(x) → ⊥) → ⊥
exit 14 ∅ : ∃xA(x) → ⊥
15 a_{1}∃x((A(x) → ⊥) → ⊥)  from Box 3
Box 3 : 16  a_{1}a_{4} : ⊥, u is an η variable
17 a_{4} : A(u) → ⊥  Assumption
18 a_{1} : ⊥  from lines 2 and 3
19 we cannot exit in Relevance of linear logic because the
20 label of ⊥ is a_{1} and it does not contain (use) the label of
21 box assumption (namely a_{4}) . However, we an exit in
22 intuitionistic and classical logic because these logics
23 disregard the labels.
exit  24 a_{1} : ∃x((Ax)x → ⊥) → ⊥)

1  Show a : ∃xA(x) → B
2 a : ∀x(A(x) → B)  Assumption
3 a : ∃xA(x) → B  from Box 1
Box 1  4  Show ab : B
5 b : ∃xA(x)  Assumption
6 b : A(c),  Skolem constant
7 a : A(c) → B,  from line 2
8 ab : B
exit  9 a : ∃xA(x) → B

Figure 6.3:

1  Show a : ∀x(A(x) → B)
2 a : ∃xA(x) → B  Assumption
3 a : ∀x(A(x) → B)  from box 1
Box 1  4  Show a : A(y) → B
5 Introduce y
6 a : A(y) → B  from Box 2
Box 2  7  Show ab : B
8 b : A(y)  Assumption
9 b : ∃xA(x)  Rule
10 ab : B
exit  11 a : A(y) → B

Figure 6.4:

Example 6.1.3 The equivalence of

∀x(A(x) → B) ↔ (∃xA(x) → B)

where x not free in B, holds in linear logic, as the following two boxes illustrate. (See figs 6.3 and 6.4)

The second box is (fig 6.4).

We are now ready to give a formal definition of the notion of a quantificational metabox. It is convenient to use Definition 2.4.1 and Theorem 2.4.2 of Chapter 2. It is sufficient to give the Goal Rules, Data Rules and Metabox rules for each of the quantifiers. Having done that, we will be able to add ∀, ∃ to any propositonal metabox system. Definition 6.1.4 here should be compared with the skolemization and visa rules of Definition 3.2.8. It is especially useful to compare how both definitions apply to the case of S4 strict implication in view of the discussion presented in Example 2.2.5.

Definition 6.1.4 (Metabox Quantifier Rules) 1. The predicate language contains two types of variables, ordinary variables for the quantifiers denoted by {x, y, z, …} and η variables for Skolem constants denoted by {u, v, w, …}. It also contains the Skolem functor η. We define the notion of well formed formulas (wffs) and terms as follows:

1.1. Any n-place atomic predicate Q(x_{1}, …, x_{n}) with the indicated variables is a wff with the variables free.

1.2. If ♯ is an m-place connective and A_{i}(x_{i,j}) are formulas with the indicated free variables, then ♯(A_{1}, …, A_{n}) is a formula with the indicated (union) of free variables.

1.3. If A(x, y_{i}) is a wff with an ordinary variable x free then

∀xA(x, y_{i}) and ∃xA(x, y_{i})

are wffs with the remaining y_{i} variables free.

1.4. If α : A(x, y_{i}) is a labelled formula, x an ordinary variable and u is a set of η− variables then η[α : A(x, y_{i}), u] is a term.

2. A quantified metabox system is comprised of the following components:

2.1. A finite partially ordered system of metabox names {a_{i}, <}, as in (1) of Definition 3.4.9. In addition with each metabox name a, a finite set of η-variables U(a) is associated, together with a substitution Θa to these variables. The metabox system satisfies the conditions of Definition 3.4.9(5).

3. The following are the Goal Rules, Data rules and Metabox rules for the quantifiers. Imagine we are at a certain line in a box a

3.1. To show α : ∃xA(x) we open a new box b and choose a new η variable u, associate V (a) ∪ {u} with b. Let the assumptions and reiterations of b be the same as those of a together with whatever was already proved in a. We want to show α : A(u) in box b.

3.2. To show α : ∀xA(x) we start a box b and show

α : A(ηx[A(x), U(a)])

The term ηx[A(x), U(a)] is marked as having been first introduced in this box.

3.3. At any time in the forward proof at any box a we can modify the substitutiton Θa(u) to be Θa(u) = t. This is allowed provided the occur check is satisfied.

3.4. \frac{α : ∀xA(x)}{α : A(t)}

Subject to restrictions on the term t and where it was first introduced.

3.5. \frac{α : A(t)}{α : ∃xA(x)}

Subject to restrictions on the term t which take into account where it was first introduced.

3.6. \frac{α : ∃xA(x)}{A(ηx[α : A(x), U(a)]}

The term ηx[α : A(x), U(a)] is marked as having been first introduced in box a.

3.7. The metabox rules for the propositional connectives about what can be reiterated are also valid for the universal closures of the reiterated formulas but not for existential closures.

Box a_{1}  1  Show a_{1} : ∀xA(x) → ∀xB(x)
2 a_{1} : ∀x(A(x) → B(x))  assumption
3 a_{2} : ∀xA(x) → ∀xB(x),  from box a_{2}
Box a_{2}  4  Show a_{1}a_{2} : ∀xB(x)
5 a_{2} : ∀xA(x)  assumption
6 a_{1}a_{2} : ∀xB(x)  from box a_{3}

Box a_{3} 7

8 Introduce y = ηxB(x)
9 a_{1} : ∀x(A(x) → B(x))  Reiteration
10 a_{1} : A(y) → B(y)  ∀∃Rule
11 a_{2} : ∀yA(y)  Reiteration
12 a_{2} : A(y)  ∀∃Rule
13 a_{1}a_{2} : B(y)

Figure 6.5:

Example 6.1.5 We show that in the logic W see Definition 9.2.1:

⊢ ∀x[A(x) → B(x)] → [∀xA(x) → ∀xB(x)]

but

⊬ ∀xA(x) → [∀x(A(x) → B(x)) → ∀xB(x)].

See fig 6.5. The proof of ∀xA(x) → [∀x(A(x) → B(x)) → ∀xB(x)] is blocked by the reiteration restrictions

of the logic W.

A General Theory of Structured Consequence Relations

7.1 Introduction

In previous chapters we introduced a systematic framework where the logical units are labelled formulas (of the form t : A, where t is a term in some algebra) and where the logical rules are rules for manipulating both formulas and their labels. The intuition behind LDS is that in t : A, A carries declarative information and the label t, represents further information of a different nature which we do not want to “code” into A. It turns out that many monotonic, non-monotonic and probabilistic systems can be presented as LDS systems. An LDS database Δ is a constellation of labelled formulas with additional structure on the labels. For example Δ may be an algebra τ with a function δ(x), x ∈ τ, assigning formulas A_{x} = δ(x), for each x ∈ τ.

Proof rules are given to define the notion Δ ⊢ s : B. This approach is developed in detail in other chapters. It is possible to have Δ ⊢ s_{i} : B for several labels s_{i}, for example s_{i} may show from which part of Δ B is proved. In many applications one is interested in the notion of Δ ⊢ B, where we want to ignore the label and just give a yes or no answer to the query “ Does B follow from Δ”. In such cases we are actually hiding the labels and all we have is a structured database Δ proving or not proving a formula B. We can in this case define axiomatically the properties of the consequence Δ ⊢ B. We thus end up with a notion of consequence between Δ and B, where Δ is structured and the labels in Δ are hidden, and used only in the proof system. It turns out that this simplified notion is very useful and can be developed on its own as a direct extension of the notion of monotonic consequence relation. We call our studies the area of structured consequence relation. It can be developed independently of LDS, as a direct contribution to the abstract area of axiomatic non-monotonic reasoning.

The purpose of this chapter is to develop the notion of structured consequence relation and further refine the notion of a non-monotonic consequence relation to relate to non monotonic systems arising from resource boundedness, and controlled inference. The refinement is in the direction of structuring the assumptions.

The traditional notion of a database Δ and a logical unit of information A (on which consequence Δ |∼ A is defined) is that of a set Δ and a wff A.

Many non-monotonic databases are naturally structured. The database may be, for example, a list of assumptions, or a partially ordered set of assumptions, and consequences are proved from the database using an inferential (logical) discipline which takes into account such a structure. Nonmonotonicity may arise because of these “resource” considerations and inferential restrictions.

We introduce the new notion of a non-monotonic consequence relation, which we call Sconsequence relation (Structured Consequence Relation). A precise definition will be given in a later section. We need two auxiliary notions for our definition:

156CHAPTER 7. A GENERAL THEORY OF STRUCTURED CONSEQUENCE RELATIONS

1. We have already indicated that we need to deal with structured databases. We thus have to specify precisely what structures are allowed as databases, for the consequence relation to be defined. These must include the one formula database (A) and the empty database ∅.

2. The notion of a structured database must also include the concept of structured addition of data. By this we mean the notion of how to combine two databases together. The traditional way is to take their union but when the databases are already structured, the union has to be structured as well. We denote the structured addition of the databases Δ and Γ by Δ + Γ. This binary operation, “+”, has to be defined as part of the concepts underlying the consequence relation. It usually satisfies associativity

Δ_{1} + (Δ_{1} + Δ_{3}) = (Δ_{1} + Δ_{2}) + Δ_{2}

and the empty database must satisfy

∅ + Δ = Δ + ∅ = Δ

Commutativity is not required to hold.

3. We also need a concept of substitution of one structured database Δ inside another, Γ, achieved by replacing one formula A in Γ by Δ. Formally we need to make sense of the symbol Γ[A], reading Γ is a structured database which contains A somewhere inside, and the symbol Γ[Δ], which denotes the database resulting from substituting Δ for A inside Γ. These notions are needed to formulate the Cut Rule.

We can now define the three rules which we call Identity, Surgical Cut (or Substitutional Cut) and Directional Monotonicity as follows:

Identity

(A) |∼ A

Surgical (Substitutional) Cut

Δ |∼ A

{Γ[A] |∼ B \atop Γ[Δ] |∼ B.}

Directional Monotonicity (right hand side)

{Δ |∼ A \atop Δ + Γ |∼ A}

Directional Monotonicity (left hand side)

{Δ |∼ A \atop Γ + Δ |∼ A}

Definition 7.1.1 (Tentative Definition of Structured Consequence Relation) Let L be a language. Let L be a family of order types of the form (τ, ≤). Assume that the empty set and one element set types are in L. Assume that the notion of substitution of one order type τ for a point x in another order type τ′(x) is well defined (as in (3) above).

We say that a relation Δ |∼ A, (between ordered multisets Δ of wffs of an order type τ and a single wff A) is a S-consequence relation iff it satisfies Identity and Surgical Cut.

The next two sections will describe several logics in detail and section 4 will give the precise definitions of our general concepts.

We now give some examples of structured consequence relations

Example 7.1.2 (Hereditarily Finite Sets) 1. Let X be a set of atoms and let the family of wffs be the family of all Hereditarily Finite Sets built up from X, ie

(a) Any finite subset of X is a wff.

(b) If A and B are wffs so are A ∪ B and {A}.

2. For a finite set of wffs Δ, let Δ |∼ A iff (definition) A ∈ Δ.

3. Define the notion of substitution of one set for another to be as follows:

The result of substituting Δ for y ∈ Γ is the set (Γ − {y}) ∪ Δ. Define Δ + Γ as Δ ∪ Γ

4. It is easy to show that |∼ satisfies Reflexivity, Monotonicity and Surgical Cut.

5. Note also that if our data strucutres were just subsets of Xwith substitution and + defined as in (3), then Reflexivity, Monotonicity and Surgical Cut are still satisfied.

Example 7.1.3 (Hereditarily Finite Stacks) 1. Let X be a set of atoms. Define the notion of a wff by

(a) (a_{1}, …, a_{n}) is a wff if a_{i} ∈ X for all i

(b) If A_{1}, …, A_{n} are wffs so is (A_{1}, …, A_{n}).

(c) A database is any wff.

2. Define (A_{1}, …, A_{n}) |∼ A iff (definition) for some i, A = A_{i}.

3. Define strucutral substitution as follows:

The result of substituting for y in (A_{1}, …, A_{n}, y, B_{1}, …, B_{m}) the list (C_{1}, …, C_{k}) is the list (A_{1}, …, A_{n}, C_{1}, …, C_{k}, B_{1}, …, B_{m}).

4. Define Δ + Γ to be the concatenation, in that order, of Δ and Γ.

5. It is easy to show that |∼ satisfies Identity, Directional Monotonicity and Surgical Cut.

Example 7.1.4 1. Let L be the language of classical or intuitionistic logic and let the data structures be sets. Define a consequence relation |∼_{H^{0}} by {A_{1}, …, A_{n}} |∼_{H^{0}} B iff B ⊢_{H} ⋁_{i=1}^{n} A_{i} where ⊢_{H} is provability in classiccal logic (H = C) or intuitionistic logic (H = I). We show that |∼_{H^{0}} is an S-consequence relation.

It is obvious that it satisfies Identity, we check the Surgical Cut rule.

Assume, for example, that Δ, A |∼_{H^{0}} B and Γ |∼_{H^{0}} A. We must show that Δ, Γ|∼_{H^{0}}B. From our assumptions we have B ⊢_{H} A ∨ ⋁ Δ and A ⊢_{H} ⋁ Γ.

We get therefore

B ⊢_{H} ⋁ Γ ∨ ⋁ Δ

hence by definition

Δ, Γ |∼_{H^{0}} B.

Note that the following holds for all A, B

A ⊢_{H} B iff B |∼_{H^{0}} A.

2. Define another consequence relation |∼_{H^{1}} by {A_{1}, …, A_{n}} |∼_{H^{1}} B iff for some A_{i}, B ⊢_{H} A_{i}. We show that |∼_{H^{1}} is a consequence relation. It is obvious that it satifies Identity. We check the Surgical Cut.

Assume Δ, A |∼_{H^{1}} B and Γ |∼_{H^{1}} A. We must show that Δ, Γ |∼_{H^{1}} B. From our assumptions, B ⊢_{H} X, for some X ∈ Δ∪{A} and A ⊢_{H} Y for some Y ∈ Γ. We need to show that B ⊢_{H} Z for some Z ∈ Δ ∪ Γ. Such Z exists because: If X ∈ Δ let Z = X If X = A let Z = Y.

Clearly for all A, B, A ⊢_{H} B iff B |∼_{H^{1}} A.

Example 7.1.5 (Context Free Grammar) Consider a context free grammar, with rules of the form

y ↦ x_{1} … x_{n}

where x_{i} are either variables or terminals. Regard the rules as basic consequence relation axioms in the form

x_{1} … x_{n} ⊢ y

Let a_{1} … a_{m} |∼ b hold if b can be reduced in the grammar to a_{1} … a_{m}.

|∼ certainly satisfies Identity and Surgical Cut (for the obvious substitutions), that is:

a_{1} … a_{m} |∼ b
c_{1} … b … c_{n} |∼ c
c_{1} … a_{1} … a_{m} … c_{n} |∼ c

This should not be surprising because Horn clause logic can be viewed as context free grammar.

7.2 A general notion of an unlabelled logical system

We have seen that the general notion of a database is a configuration of formulas. In a previous chapter we introduced the logic CL (concatenation logic), and the configurations for they were linear orderings of formulas. The proof discipline from such databases would rely on the ordering in defining the allowable proof moves. In the case of CL we allowed modus ponens only if the minor premise was supported by a later part of the database than the implication. In the general case, other restrictions may come into play.

This section develops the general notions needed for S-consequence relation. We begin with definitions and examples.

Definition 7.2.1 1. Let L be a langauge for well formed formulas. L will contain atomic propositions and connectives and the notion of a wff is defined inductively in the traditional way.

2. let L be a theory in first or higher order logic and let M be a class of classical models of L. We assume that the structure with one point and empty relations is in M. Assume that two model theoretic operations are defined on M and assume that M is closed under these operations. The operations are the following:

(a) If τ_{1} and τ_{2} are two structures in M then an operation + is available for constructing the structure τ = τ_{1} + τ_{2}. “+” usually satisfies associativity, but not necessarily in the general case. If ∅ is the empty set then + is defined and ∅ + τ = τ + ∅ = τ.

(b) Let τ_{1} and τ_{2} be two disjoint structures in M and let x ∈ τ_{1} be a point in τ_{1}. Then a substitution operation Sub_{τ_{2}}^{x}τ_{1}(x) is defined which yields the result of substituting τ_{2} in τ_{1}(x) for x (ie λxτ_{1}(x)[τ_{2}] is well defined). The result of the substitution is also in M. Sub is associative, and behaves like substitution if done properly (no clash of variables).

(c) For some purposes (see section on structural connectives) we need to allow for the notion of deletion. That is we must know how to delete the point x from τ(x). We can regard deletion as substituting the empty structure ∅ for x, ie λxτ(x)[∅].

3. A database is any pair (τ, δ) where τ ∈ M and δ is a function assigning for each x ∈ τ a wff δ(x).

4. A consequence relation for the pair (M, L) is any relation |∼ between databases Δ = (τ, δ) and single wffs A, written in the form Δ |∼ A, satisfying the following:

(a) Identity

(A) |∼ A

(b) Surgical Cut for M

If

Δ = (τ_{1}, δ_{1}), Γ = (τ_{2}, δ_{2}), τ_{1} ∩ τ_{2} = ∅, x ∈ τ_{2} and δ_{2}(x) = A

and if further

\begin{matrix}Δ |∼ A \\ Γ |∼ B \end{matrix}

then

Γ[A] = (τ_{3}, δ_{3}) |∼ B

where

τ_{3} = Sub_{τ_{1}}^{x}τ_{2}(x)

and

δ_{3}(y) = \{ \begin{matrix}δ_{1}(y) if y ∈ τ_{1} \\ δ_{2}(y) if y ∈ τ_{2}. \end{matrix}

Example 7.2.2 1. Let (T, <_{T}) be an ordering, and let t ∈ T. Let (S, <_{S}) be another ordering with T ∩ S = ∅. We define the substitution [(T, <_{T}) | t | (S, <_{S})] to be the ordering with T ∪ S − {t} as the set of points and order < defined by

x < y if x, y ∈ T and x <_{T} y
or x, y ∈ S and x <_{S} y
or x ∈ T and y ∈ S and x < t
or x ∈ S and y ∈ T and t < y.

The idea of the definition is to take the ordering (T, <_{T}) and to take a point t ∈ T and take another ordering (S, <_{S}) and to replace t by the entire set S. We now have an ordering with S in the middle. Thus all points of T which were before (after) t are now before (after) all the points of S. Inside S the ordering is the same as before, ie <_{S}.

2. Define (T, <_{T}) + (S, <_{S}) to be the ordering with all elements of T coming before all elements of S.

3. Let L be a language. Assume that part of the definition of L is the definition of allowable databases of the form {t : A_{t} | t ∈ T }, where (T, <_{T}) is an order configuration. Assume that the order configurations of L are closed under the substitutions defined in the above. Let ⊩ be a relation defined in L between data structures and formulas. Then the Cut Rule for ⊩ is defined to be the following:

Surgical Cut Rule If {t : A_{t} | t ∈ T } ⊢ B and {s : B_{s} | s ∈ S} ⊢ C and x ∈ S and B_{x} = B then {r : A_{r} | r ∈ S ∪ T − {x}} ⊢ y : C where the configuration on S ∪ T − {x} is [(S, <_{S}) | x | (T, <_{T})] defined above.

[figure: ⊢ t_{1} : B; t_{1} : A_{1}; t_{3} : A_{3}; t_{2} : A_{2}] Figure 7.1:

⊢ y : C ; y ; s : D ; t_{1} : B Figure 7.2:

Example 7.2.3 Consider modal logic. A configuration is an ordered set of possible worlds. Thus if for example we have the configurations in figures 7.1 and 7.2 then the application of the cut rule will yield the configuration of figure 7.3

We now want to propose a form for the deduction theorem. The discipline must tell us how a database Δ can prove an implicational formula of the form A → B.

Let us understand A → B as a sort of deductive “functor” which “given” A can “yield” us B. Thus Δ ⊢CL A → B means that if we “add” A to Δ ie “give” A to Δ, we can “get” or “yield” B from Δ “and” A.

In general application areas, Δ is a structured database; some configuration of formulas. Thus the notion of adding A to Δ needs to be defined. We need to specify where to fit A in the configuration of Δ. In the general case precise definitions must be given. Since there may be more than one way of “adding” A to Δ, we may have several possible versions of the deduction theorem as well as several possible implications.

Example 7.2.4 Consider CL and its data structures of lists of wffs (see sections 2.4 and 10.1 for details). Let Δ = (A_{1}, …, A_{n}) and consider A. This new data item can be “added” to Δ in several ways:

[figure: ⊢ y : C; y; s : D; t_{1} : A_{1}; t_{3} : A_{3}; t_{2} : A_{2}] Figure 7.3:

1. Add A to the end of the sequence to form

(A_{1}, …, A_{n}, A)

2. Add A to the beginning of the sequence to form

(A, A_{1}, …, A_{n})

3. Add A to the middle of the sequence to form

(A_{1}, …, A_{k}, A, A_{k+1}, …, A_{n})

4. Of course we can have combinations, for example, add A to the middle or the beginning, etc

The CL deduction theorem allows for A to be added to the end of the sequence. We can thus write A →_{e} B for the CL implication to indicate that given A it can give B provided A is added to the end of the data sequence. The next connective to consider is the implication A →_{b} B where “b” means “beginning”. Here we expect a deduction theorem of the form

(A, A_{1}, …, A_{n}) ⊢ B,

iff

(A_{1}, …, A_{n}) ⊢ A →_{b} B

For example, since

A →_{b} B ⊢ A →_{b} B

we will get in this logic

A, A →_{b} B ⊢ B.

In concatenation logic the implication must come earlier than the minor premise. In this logic, the minor premise comes first. The set of theorems of this logic, with →_{b} , is unchanged; we get CL again, except that in the semantics we now concatenate to the left. A different system is obtained if we have both implications (see [Wansing, 1990]). This is actually the Lambek Calculus. The Lambek Calculus can be defined as the smallest S-consequence relation with two implications →_{e} and →_{b} satisfying the appropriate Deduction Theorems for the list data structures.

For example, since

A →_{e} B, A ⊢ B

we get that

A ⊢ (A →_{e} B) →_{b} B

The stipulation that

A →_{e} B iff A →_{b} B

gives us linear logic, with → being either of →_{b} or →_{e}.

Both →_{e} and →_{b} satisfy a Deduction Theorem.

Having illustrated our concepts, we can now generalise the notion of the deduction theorem to arbitrary data constellations. To achieve that we also need to generalise the notion of implication.

Definition 7.2.5 1. Let M = {τ_{i}} be a class of structures τ_{i}, as in definition 7.2.1. Let φ be a wff in some language L capable of expressing properties of the structures in M.

Assume that for every τ in M, φ defines a unique element (or possibly a unique set of elements) in τ.

The formula φ defines a contraction mapping on structures τ. Let τ′ be the structure obtained from τ by taking out the points identified by φ. Thus, for example, for lists structures τ, if φ identifies the last element in the list then τ′ is the list without its last element. We can denote the contraction mapping function by “∥ φ” and write τ′ = τ ∥ φ.

Thus, given two structures τ_{1}, τ_{2} we may say that τ_{2} = τ_{1}∥φ iff τ_{2} is obtained by dropping out of τ_{1} the elements identified by φ. We write τ[∥φ]^{n} to mean τ∥φ … ∥φ, n times. For example, for lists τ and φ which identifies the last element of the list, we have (t_{1}, …, t_{n}) = (t_{1}, …, t_{n}, x)∥φ and ∅ = (t_{1}, …, t_{n})[∥φ]^{n}.

2. Let a database discipline be given, involving a family of structures M. A database Δ in this discipline is any pair (τ, δ) where τ is a finite element of M (eg a list) and δ associates with each t ∈ τ a formula δ(t) = A_{t}. We also write Δ = Δ′∥φ, just in case Δ = (τ, δ), Δ′ = (τ′, δ′) and τ = τ′∥φ and δ = δ′ ↾ τ, ie δ is the restriction of δ′ to τ.

Example 7.2.6 Let M be the class of all finite lists including the empty list. Define + as concatenation. Let L be a language with “+” and “<”. φ can be a formula in L which defines uniquely the last element of any finite list. Thus for τ = (a_{1}, …, a_{n}, b), we have τ∥φ = (a_{1}, …, a_{n}). These lists are the data structures of CL.

Definition 7.2.7 (The Notion of the Deduction Theorem) Let Δ, Δ′ be two databases and assume that τ = τ′∥φ. Assume further that we have

Δ∥φ |∼ A → B iff Δ′ |∼ B

Consider a special connective denoted by →_{φ}. We say that →_{φ} satisfies the Deduction Theorem with respect to φ iff whenever Δ |∼ B and Δ = (τ, δ) and τ has n elements then

Δ[∥φ]^{n} |∼ ∅ : δ(t_{1}) →_{φ} (… →_{φ} (δ(t_{n}) →_{φ} B) …)

where {t_{i}} = τ[∥φ]^{i} − τ[∥φ]^{i+1} i.e. t_{i} is the element identified by φ in τ[∥φ]^{i}.

Our discussions so far presented the consequence relation in the form of Δ |∼ A, where A is a single formula on the right hand side. This is a Tarski type consequence relation. The general form of the consequence relation should be Δ |∼ Γ, where both Δ and Γ are structured databases. This is a Scott type consequence relation. In fact, there is no reason at all to assume that the same structures can serve on both sides of the turnstile. If we refer to the left hand side as the data and the right hand side as the goal, then the general Scott type S-consequence relation has the form Δ |∼ Γ, where Δ is a data structure and Γ is a goal structure. For example, Δ may be a set of formulas while Γ may be a list of formulas. This is indeed the case, for example, in Logic Programming, where we have

Δ |∼ (A_{1}, …, A_{n}) iff Δ |∼ A_{1} and … and Δ |∼ A_{n}

If Δ is a sequence, as in the case of CL, or a multiset, as in the case of linear logic, then we can have

Δ |∼ (A_{1}, …, A_{n}) iff for some Δ_{i}, Δ = Δ_{1} + … + Δ_{n} and Δ_{i} |∼ A_{i}, i = 1, …, n

where + is concatenation or multiset union, respectively.

Another example is the case of Gentzen systems for classical logic, where both Δ and Γ are sets and where we have Δ |∼ {A_{1}, …, A_{n}} iff Δ |∼ A_{1} ∨ … ∨ A_{n}.

In the above cases the Scott consequence relation Δ |∼ Γ, for Γ a complex structure, can be reduced to its Tarski part Δ |∼ A, where A a single formula. It is not clear whether we should insist on this property to hold in the general case.

To get an idea of our options, let our starting point be two structured Tarski type consequence relations |∼_{1} and |∼_{2} on the same language L with L_{1}, L_{2} and M_{1} and M_{2} the two structural languages satisfying the conditions of definition 7.2.1. We want to “extend” |∼_{1} and |∼_{2} to a Scott type consequence relation ∥∼, allowing for Δ∥∼Γ where Δ is an M_{1} structured database and Γ is an M_{2} structured goal. Thus the allowable structures for ∥∼ are M_{1} for the data and M_{2} for goals. Clearly it must satisfy the rules of Identity and Surgical Cut in the following form:

A∥∼A

and

Δ[A]∥∼Γ, Δ′∥∼A
.
Δ[Δ′]∥∼Γ

We may wish to rename the Cut Rule as Left hand side Surgical Cut, to stress that cut is done on the left.

A Right hand side Surgical Cut would be

\frac{Δ∥∼Δ[B] B∥∼Γ′}{Δ∥∼Γ[Γ′]}

The question is, what other requirements do we have for ∥∼?

We obviously want to make use of both |∼_{1} and |∼_{2}. The new consequence ∥∼ should extend them both in some sense. Since both consequence relations are general, the only structures they share for certain are the unit formulae structures A. Given Δ, Γ and A, we know what Δ |∼_{1} A is and what Γ |∼_{2} A is, but no more.

The next two definitions tell us what is the general notion of a Scott type S-consequence relation and how to form a Scott type ∥∼ out of |∼_{1} and |∼_{2}.

Definition 7.2.8 Let L be a language for wffs and let (M_{1}, L_{1}) and (M_{2}, L_{2}) be two languages for data and for goal structures respectively. Note that L_{1} and L_{2} come with their own respective notions of structrual substitutions and structural additions +_{1} and +_{2} respectively.

A relation Δ∥∼Γ is said to be a (Scott type) S-consequence relation on the data and goal structures iff it satisfies the following two conditions:

Identity

A∥∼A

Surgical Cut

Δ[A]∥∼Γ[B] Δ′∥∼A B∥∼Γ′
Δ[Δ′]∥∼Γ[Γ′].

Note that some of the traditional formulations of the Cut Rule may not hold, for example

Internal Cut

{Δ + A |∼ Γ Δ |∼ A + Γ \atop Δ |∼ Γ}

Transitivity

{Δ |∼ A Δ + A |∼ B \atop Δ |∼ B}

may not hold.

Further note that Identity can hold only for single formulas. I do not know whether the rule of identity formulated for single formulas A would imply the rule of identity for all common structures Δ.

Definition 7.2.9 Let |∼_{1} and |∼_{2} be two Tarski type S-consequence relations on structured databases with structures M_{1} and M_{2} respectively, based on the same language L, as in definition 7.2.1. Assume that |∼_{1} and |∼_{2} are compatible, namely they satisfy for all A, B.

A |∼_{1} B iff B |∼_{2} A

Define |∼_{1,2} to be the following Scott type S-consequence relation, called the Minimal Amalgmation of |∼_{1} and |∼_{2}:

1. The data structures of |∼_{1,2} are those of M_{1}. The goal structures of |∼_{1,2} are those of M_{2}

2. Let Δ |∼_{1,2} Γ hold iff (definition) for some wff A we have that both Δ |∼_{1} A and Γ |∼_{2} A hold.

Lemma 7.2.10 Let |∼_{1} and |∼_{2} be two compatible Tarski type consequence relations. Let ∥∼ be their minimal amalgamation. Then ∥∼ is a Scott type consequence relation.

Proof. It is clear that Identity holds. We check the rule of Surgical Cut.

Assume

Δ[A]∥∼Γ[B], Δ′∥∼A and B∥∼Γ′,

We show

Δ[Δ′]∥∼Γ[Γ′].

By definition there exist C_{1}, C_{2}, C_{3} such that

Δ[A]|∼_{1}C_{1}, Γ[B]|∼_{2}C_{1}, Δ′|∼_{1}C_{2}, A|∼_{2}C_{2}, B |∼_{1}C_{3}, Γ′ |∼_{2} C_{3}

all hold. From compatibility we get

C_{2} |∼_{1} A and C_{3} |∼_{2} B.

By Surgical Cut we get

Δ′ |∼_{1} A and Γ′ |∼_{2} B.

Hence by Surgical Cut again we get

Δ[Δ′] |∼_{1} C_{1} and Γ[Γ′] |∼_{2} C_{1}.

Hence by definition we get

Δ[Δ′∥∼Γ[Γ′].
■

Example 7.2.11 Let Δ ⊢_{H} A be the classical (for H = C) or intuitionistic (for H = I) consequence relation, for the data structures of single formulas. Let |∼_{H^{0}} be the consequence relation of example 7.1.4(1). Form |∼_{H,H^{0}} as in the preceding definition. We show that what we get is classical (or intuitionistic) Scott type relation ⊩_{H} for sets as structures on both sides of the turnstile.

We have Δ |∼_{H,H^{0}} Γ iff for some A, Δ ⊢_{H} A and Γ |∼_{H^{0}} A. But Γ |∼_{H^{0}} A iff A ⊢_{H} ⋁ Γ. Hence Δ |∼_{H,H^{0}} Γ iff for some A, Δ ⊢_{H} A and A ⊢_{H} ⋁ Γ and in classical or intuitionistic logic we can continue, iff ⋀ Δ ⊢_{H} ⋁ Γ, because we can take A = ⋁ Γ.

Example 7.2.12 Let L be the language of intutionistic implication → and conjunciton ∧. Let Δ ⊢_{I} A be the intuitionistic consequence relation for this language, with the goal structure of single formulas on the right. Let |∼_{H^{1}} be the consequence relation for L, defined in example 7.1.4(2).

Then |∼_{I,H^{1}} is the amalgamated consequence relation satisfying

Δ ⊢_{I,H^{1}} Γ iff for some A ∈ Γ we have Δ ⊢_{I} A.

In my book [Gabbay, 1981, Ch. 1] it was shown that |∼_{I,H^{1}} is the consequence relation arising from the Beth Semantics for intuitionsitic logic. It was further shown that there are two Scott type consequene relations which agree (extend) the Tarski type Δ |∼_{I} A, for A a single wff. The maximal one, arising from the Kripke semantics, defined as Δ ⊢_{I} A_{1} ∨ … ∨ A_{n}, and the minimal one, defined as in this example.

Definition 7.2.13 Let L be a language and let (M_{1}, L_{1}) and (M_{2}, L_{2}) be structures for the data and goal respectively. Let |∼_{i} i = 1, 2 be Tarski type S-consequence relations on the data structures M_{i} respectively with the goal structure being single wffs and let ∥∼ be a Scott type S-consequence on both data structures M_{1} and goal structures M_{2}.

(a) We say that ∥∼ agrees with |∼_{1} in the data (respectively ∥∼ agrees with |∼_{2} in the goal) iff for all Δ, Γ, A, (1) holds (respectively (2) holds).

1. Δ∥∼A iff Δ |∼_{1} A

2. A∥∼Γ iff Γ |∼_{2} A.

(b) We say that ∥∼ agrees with (|∼_{1}, |∼_{2}) iff ∥∼ agrees with |∼_{1} in the data and with |∼_{2} in the goal.

Theorem 7.2.14 Let |∼_{1} and |∼_{2} be two compatible Tarski type S-consequence relations, ie satifying for all A, B, A |∼_{1} B iff B |∼_{2} A. Then there exist two Scott-type consequence relations, a maximal ∥∼^{+} and a minimal ∥∼^{−} which agree with (|∼_{1}, |∼_{2}). In other words, for any ∥∼ which agrees with (|∼_{1}, |∼_{2}) we have

1. for all Δ, Γ Δ∥∼^{−}Γ implies Δ∥∼Γ

2. For all Δ, Γ Δ∥∼Γ implies Δ∥∼^{+}Γ

Proof. Let ∥∼^{−} be the minimal amalgamation of |∼_{1} and |∼_{2} of definition 7.2.9.

We show that ∥∼^{−} agrees with (|∼_{1}, |∼_{2}). Assume Δ∥∼^{−}A, then by definition for some B, Δ |∼_{1} B and A |∼_{1} B. Hence by compatibility B |∼_{2} A and by the Cut Rule, Δ |∼_{1} A.

Similarly assume A∥∼^{−}Γ. Then for some B A |∼_{1} B and Γ |∼_{2} B. By compatibility B |∼_{2} A and by Cut, Γ |∼_{2} A.

We now show minimality. Assume that ∥∼ agrees with (|∼_{1}, |∼_{2}). Assume that Δ∥∼^{−}Γ, we show that Δ∥∼Γ.

From our assumption we have that for some A

Δ |∼_{1} A and Γ |∼_{2} A

Hence from agreement Δ∥∼A and A∥∼Γ and hence by Cut, Δ∥∼Γ.

We now have to prove the existence of ∥∼^{+}. To this end we show that for any finite set {∥∼_{i}} of consequence relations which agree with |∼_{1} and |∼_{2} one can define a consequence relation ∥∼ agreeing with (|∼_{1}, |∼_{2}), with the property that for all i ∥∼_{i} ⊆ ∥∼.

An application of Zorn’s Lemma will now yield the existence of ∥∼^{+}.

Let ∥∼_{i} be give for i = 1, …, m. We define the desired ∥∼. Define Δ∥∼Γ to hold iff there exists a sequence of pairs (Δ_{n}, Γ_{n}), n = 1, …, k such that Δ_{k} = Δ, Γ_{k} = Γ and each element (Δ_{n}, Γ_{n}) in the seqeunce satisfies one of the following conditions:

1. For some ∥∼_{i}, Δ_{n}∥∼_{i}Γ_{n} (ie (Δ_{n}, Γ_{n}) is an “axiom”).

2. There exist earlier n_{1}, n_{2}, n_{3} in the sequence such that:

• (Δ_{n_{1}}, Γ_{n_{1}}) = (Δ′, A), A a wff.

• (Δ_{n_{2}}, Γ_{n_{2}}) = (B, Γ′), B a wff.

• (Δ_{n_{3}}, Γ_{n_{3}}) has the form (Δ_{n_{3}}[A], Γ_{n_{3}}[B]) and (Δ_{n}, Γ_{n}) = (Δ_{n_{3}}[A/Δ′], Γ_{n_{3}}[B/Γ′]).

Intuitively ∥∼ is essentially the sequent system with Δ∥∼_{i}Γ as axioms, for i = 1, …, m and where the surgical cut is the inference rule.

It is clear from the definition of ∥∼ that Identity and Surgical Cut are satisfied and that ∥∼_{i} ⊆ ∥∼.

We now have to show that ∥∼ agrees with (|∼_{1}, |∼_{2}). ie we have to show that for any Δ, Γ, A (1) and (2) hold:

1. Δ∥∼A iff Δ |∼_{1} A

2. A∥∼Γ iff Γ|∼_{2}A

We prove this by induction on the length of the sequence defining ∥∼, and on the assumption that ∥∼_{i}, i = 1, …, m all agree with (|∼_{1}, |∼_{2}).

For sequences of length 1 the claim follows form the assumption.

Consider a sequence of length k which justifies Δ∥∼A. Then we have the following situation from earlier members of the sequence:

• Δ′∥∼A′ and hence by the induction hypothesis Δ′ |∼_{1} A′

• B∥∼A and hence by the induction hypothesis A |∼_{2} B.

• Δ[A′]∥∼B and hence Δ(A′) |∼_{1} B

We also know that Δ[Δ′]∥∼A and we want to show that it also agrees with (|∼_{1}, |∼_{2}), ie that Δ[Δ′] |∼_{1} A. From compatibility we get B |∼_{1} A and from Cut we get Δ[Δ′] |∼_{1} A.

Similarly consider a seqeunce of length k which justifies A∥∼Γ. This means that earlier elements in the sequence are

• A′∥∼Γ′ hence Γ′ |∼_{2} A′

• A∥∼B hence A |∼_{1} B

• B∥∼Γ[A′] and hence Γ[A′] |∼_{2} B

We also know that A∥∼Γ[Γ′] and we want to show that Γ[[Γ′] |∼_{1} A. By compatibility B |∼_{2} A and by Cut, Γ[Γ′] |∼_{2} A. ■

Example 7.2.15 (Symmetric Amalgamation) Given a Scott type S-consequence relation |∼, the two Tarski consequence relations derived from it, namely

Δ |∼_{1} A iff Δ |∼ A
Γ |∼_{2} A iff A |∼ Γ

may not be identical or isomorphic, even in the case where Δ and Γ are based on the same data structures. We say that the Scott type |∼ is a symmetrical amalgamation of the Tarski type |∼_{0} iff the two derived consequence relations |∼_{1} and |∼_{2} are the same and equal to |∼_{0}. For a given |∼_{0}, it is always possible to construct the symmetrical amalgamation. We cannot take the naive identity |∼_{1}=|∼_{2}=|∼_{0} because then the definition of amalgamation will yield Δ |∼ Γ iff for some A, Δ |∼_{1} A and Γ |∼_{2} A iff for some A, Δ |∼_{0} A and Γ |∼_{0} A. If we let A = truth we get Δ |∼ Γ for all Δ, Γ.

What is needed is an isomorphism function ∗ such that

Γ |∼_{2} A iff Γ^{∗} |∼_{1} A^{∗}.

We thus get

Δ |∼ Γ iff for some A, Δ |∼_{1} A and Γ^{∗} |∼_{1} A^{∗}

now since we also have

A |∼_{1} B iff B |∼_{2} A

we get that ∗ must satisfy

A |∼_{1} B iff B^{∗} |∼_{1} A^{∗}.

In case of classical logic the mapping ∗ is negation

A ⊢ B iff ¬B ⊢ ¬A.

This notion is developed in the section on structural connectives.

The above examples have shown how to extend S-consequence relations to ones with a more complex goal structure by minimal amalgamation. When the original consequence relation |∼ satisfies the Deduction Theorem, it is possible to extend |∼ by making use of this fact. The Deduction Theorem is a left to right shift operator (studied in a later section). Thus by using shift operators we can give meaning to Δ |∼ Γ for Γ more complex, in terms of shifting Γ to the left and reducing the problem to a known one.

Thus for example one may write Δ |∼ Γ iff some boolean combination Δ_{i} |∼ Γ_{i} holds, where each Γ_{i} has less elements than Γ.

Classical logic can be viewed to be a special case of reducing {A_{i}} ⊢_{C} {B_{j}, C} to {A_{i}, ¬C} ⊢_{C} {B_{j}}.

The Intuitionistic consequence, (see 2.2.2), cannot be viewed in this manner. We have no means of shifting wffs from the right hand side to the left hand side.

Let |∼′ be a consequence relation with M′_{1} and M′_{2} being the structures for the data and goals respectively. Let |∼′′ be another consequence relation with structures M′′_{1} and M′′_{2} respectively. We want to define the composition |∼^{∗} of |∼′ and |∼′′. The data structures (goal structures) of M_{1}^{∗}(M_{2}^{∗}) are obtained from M′_{1} and M′′_{1} (respectively M′_{2} and M′′_{2}) by the repeated substitution of one data strucrure inside the other.

If the structures in M′_{1} are lists of points (x_{1}, …, x_{n}) and the strucures in M′′_{1} are sets then the structures in M_{1}^{∗} are hereditary lists of non-empty sets of points (X_{1}, …, X_{n}). If M′_{1} contains multisets of points then M_{1}^{∗} is a hereditary set of multisets of non-empty sets of points.

Definition 7.2.16 (Composition of two S-consequence relations) Let |∼′ and |∼′′ be two consequence relations with structures (M′_{1}, M′_{2}) and (M′′_{1}, M′′_{2}) respectively. We assume further that we have available a notion of substitution of a τ′ structure inside a τ′′ structure and vice versae as needed below. We define the composition |∼^{∗} of |∼′ and |∼′′ as follows:

1. The structures of M_{i}^{∗} of |∼^{∗}, i = 1, 2 are defined by induction.

(a) Let M_{i}^{∗}(0) = M′_{i} ∪ M′′_{i}.

(b) Assume M_{i}^{∗}(k), for k < n are all defined. Let τ ∈ M_{i}^{∗}(k) for some k < n and τ′(x) (respectively τ′′(x) ) is in M′_{i} (respectively M′′_{i}). Then τ′(τ) (resp τ′′(τ)) is in M_{i}^{∗}(n).

(c) Let M_{i}^{∗} = ⋃_{n} M_{i}^{∗}(n).

Note: It is easy to show that if τ_{1}(x) ∈ M_{i}^{∗} and τ_{2} ∈ M_{i}^{∗} then τ_{1}(τ_{2}) ∈ M_{i}^{∗}.

2. Let Δ = (τ_{1}, δ_{1}) and Γ = (τ_{2}, δ_{2}) be two databses for |∼^{∗}.

We can assume by definition that for some α_{1}, β_{1}, α_{2}, β_{2}, ε, η:

τ_{1} = β_{1}(α_{1}) hence Δ = Δ_{0}(ε)
τ_{2} = β_{2}(α_{2}) hence Γ = Γ_{0}(η), where
Δ_{0}(x) = (β_{1}(x), δ_{1}), Γ_{0}(x) = (β_{2}(x), δ_{2})
ϵ_{0} = (α_{1}, δ_{1}), η_{0} = (α_{2}, δ_{2}).

where β_{1}, β_{2} are either in M′_{1} or in M′′_{i} for i = 1, 2 respectively.

Note that δ_{i} do not give a value to x.

We say that Δ |∼^{∗} Γ iff for some C, D

ε = (α_{1}, δ_{1}) |∼^{∗} C
η = (α_{2}, δ_{2}) |∼^{∗} D and
Δ_{0}[C] |∼^{∗} Γ_{0}[D]

Let us summarise our current view:

• A consequence relation is defined by stating a family of data structures and defining the notions of substitution on the data structure, and of adding (combining) data structures.

• Minimal conditions for a relation to be a consequence relation are those of Identity and Surgical Cut.

• The basic structured consequence relation can be extended either in the direction of nonmonotonic consequence relations or in the direction of Resource Logics or both.

• We need structured semantics with structured family of worlds with structured preference relation to be an adequate semantics for S in the spirit of [Kraus et al., 1990].

7.3 Structural connectives

Let |∼ be a Scott type consequence relation on a language L. The consequence relation involves structures for the data and structures for goal. The purpose of this section is to show that given these structures, there are some natural connectives, called structural connectives, which one may wish to add into the language L, with porperties dictated by the structure. In fact, the entire consequence relation may be in some cases (eg linear logic, see next section) no more and no less than a reflection (via the structural connectives) of the properties of the data structures involved.

Let |∼ be any Scott type consequence relation. Let M_{1} be structures for the data and let M_{2} be the structures for the goals. Let +_{1} be structural addition for the data and +_{2} for the goal. We can thus write

Δ +_{1} A |∼ B +_{2} Γ

which may or may not hold.

We assume nothing special about |∼, only that it satisfies the mimimal properties of Identity and Surgical Cut. We do not assume any special connectives in the language L of |∼, and we aim to introduce several structural connectives.

It might be useful to think in terms of two examples, namely concatenation logic, where the structures are lists, and linear logic, where the structures are multisets. Both cases would have → in the language L. To be even more specific, think of the Tarski type consequence relations to be the relations ⊢CL and ⊢LL for CL and for LL of definitions 10.1.1 and 9.2.5 and 9.2.6 respectively, and assume that |∼ is some Scott extension of one of them which agrees with it, the goal structures being the same as the data structures. Note further that there may be more than one such |∼ agreeing with the Tarski type ⊢CL or ⊢LL of definitions 10.1.1 and 9.2.5 and 9.2.6, and that in the sequel we may choose one such |∼ with special symmetry conditions.

Let us begin with a general Scott type consequence |∼.

The first thing to bear in mind is that in the general case, the structural operators “+_{1}” and “+_{2}”which come with |∼ are in the metalevel, on the structures of M_{1} and M_{2} respectively, and not in the langauge L of |∼ itself. For the special case of CL, “+_{i}” is concatenation and for the case of LL, “+_{i}” is multiset union. Let us now add another metalevel operator, a sort of notational shift operator “o”, having the following properties:

• Δ +_{1} A^{o} |∼ Γ means the same as Δ |∼ A +_{2} Γ and

• Δ |∼ B^{o} +_{2} Γ means the same as Δ +_{1} B |∼ Γ In fact, Δ +_{1} A^{o} |∼ B^{o} +_{2} Γ should be the same as Δ +_{1} B |∼ A +_{2} Γ.

Thus the operator “o” in “A^{o}” is used to indicate, in the metalevel, where the formula A should be. It has the status of a metalevel annotation, indicating that although the formula A appears in one place in the structure, it should be in another place. Thus Δ +_{1} A^{o} |∼ Γ really says through the annotation “o” on A, that A is really on the right hand side, namely Δ ⊢ A +_{2} Γ. For general structures the annotation may be problematic. If Δ[x] indicates that x stands somewhere in the structure Δ, then we know what Δ[A] means. We also have to say what Δ[A^{o}] means. We have to specify the following:

1. Since A^{o} in Δ[A^{o}] means that although A^{o} shows up in Δ[x] at the place x (ie we have Δ[A^{o}/x]), A should really be somewhere else, we need to specify where A should be.

2. If A^{o} is not at place x in Δ[x], then there is nothing at x. Hence our notion of substitution should also allow for empty substitution Δ[∅/x], which is really deletion.

If both Δ and Γ are multisets, as in the case of linear logic, then we have no such problem, otherwise a precise definition is required. Even in the case of CL, this is not simple, and requires care.

In CL, the data structures are lists (A_{1}, …, A_{n}). Of course (A_{1}, …, A_{n}, B) is generally not the same data structure as (B, A_{1}, …, A_{n}). We can mark B as B^{o} to mean that B should be shifted to the other end of the list. Thus

\begin{matrix}(A_{1}, …, A_{n}, B^{o}) = def (B, A_{1}, …, A_{n}) \\ (B^{o}, A_{1}, …, A_{n}) = def (A_{1}, …, A_{n}, B). \end{matrix}

Note that Δ_{1} +_{2} Δ_{2} (and similarly Γ_{1} +_{1} Γ_{2}) is not meaningful, since +_{2} (resp +_{1}) is a goal (data) structural addition and cannot be applied to the data (goal).

So far we have introduced several meta operations. We now want to put them in the object level. We have seen in connection with the Deduction Theorem in the previous section that it is possible to take a meta operation and add a connective for it in the object language. We now do just that for “+_{1}”, “+_{2}” and “o” of the metalevel. We denote the object level connectives by “⊕_{1}”, “⊕_{2}” and “⊙”, respectively.

Our purpose is to study their obvious properties. The connection between {A+B} and {A⊕B} is that they must be declaratively identical. This means that A ⊕ B should behave essentially like A + B in all |∼ contexts. We thus have the following rules: Identity A +_{1} B |∼ A ⊕_{1} B A ⊕_{2} B |∼ A +_{2} B

The other direction of the identity of A ⊕_{i} B with A +_{i} B, cannot be written directly but can be characterised by a Cut rule: Surgical Cut

Δ_{1} +_{1} (A +_{1} B) +_{1} Δ_{2} |∼ Γ_{1} +_{2} (C +_{2} D) +_{2} Γ_{2}
Δ_{1} +_{1} (A ⊕_{1} B) +_{1} Δ_{2} |∼ Γ_{1} +_{2} (C ⊕_{2} D) +_{2} Γ_{2}

Example 7.3.1 In the case of CL, if we add the structural connective ⊕ to the language, we get the following system CL(⊕), with the following two rules:

(A, B) |∼ A ⊕ B

which we get from Identity, and we should also have the following from the Cut Rule

{(A_{1}, …, A_{n}, A, B, B_{1}, …, B_{m}) |∼ C \atop (A_{1}, …, A_{n}, A ⊕ B, B_{1}, …, B_{m}) |∼ C}

These we call Structural Rules for the structural connective ⊕, because they arise from the fact that ⊕ is no more than an object level reflection of the structured database operation +.

In classical logic the data structures are sets and conjunction “∧” serves as the structural connective.

In case of CL we also have a Right hand side Deduction Theorem, which, when combined with the structural connective ⊕ will yield rules like

A ⊕ B |∼ C iff A |∼ B → C

and

∅ |∼ A → (B → A ⊕ B).

We now have to check which rules for ⊙ follow from the properties of shift. We know that Δ +_{1} A^{⊙} |∼ B^{⊙} +_{2} Γ should hold iff Δ +_{1} B |∼ A +_{2} Γ. We immediately get

• A^{⊙⊙} |∼ A

• A |∼ A^{⊙⊙}

Consider

Δ +_{1} C^{o} +_{1} D^{o} |∼ Γ

This is the same as

Δ |∼ (C +_{2} D) +_{2} Γ

which is the same as

Δ +_{1} (C +_{2} D)^{o} |∼ Γ

We can thus have that (C +_{2} D)^{o} must be the same as C^{o} +_{1} D^{o}. Similarly (C +_{1} D)^{o} must behave the same as C^{o} +_{2} D^{o}. We thus get

• (C ⊕_{2} D)^{⊙} |∼ C^{⊙} ⊕_{1} D^{⊙}

• (C ⊕_{1} D)^{⊙} |∼ C^{⊙} ⊕_{2} D^{⊙}

We still have a problem of what to do (what meaning we can prove or have) to A ⊕_{1} B when it appears on the right hand side and C ⊕_{2} D when it appears on the left hand side. The typical expression is:

C ⊕_{2} D |∼ A ⊕_{1} B

clearly it should be the same as

(A ⊕_{1} B)^{⊙} |∼ (C ⊕_{2} D)^{⊙}

which is the same as

A^{⊙} ⊕_{2} B^{⊙} |∼ C^{⊙} ⊕_{1} D^{⊙}

which does not help, as again we get the wrong “⊕” on the wrong side.

In general, there is nothing to be done. However, if we have the object level “→_{r}” with the Deduction Theorem holding, a few more equivalences can be derived.

Consider

A +_{1} B |∼ C

this holds iff

A |∼ B →_{r} C

but also iff

A |∼ B^{o} +_{2} C

Hence B →_{r} C is equivalent to B^{o} ⊕_{2} C.

The difference between the shift and the Deduction theorem is that the connective “→_{r}” is in the object language L, while our “+_{2}” and “o” are in the metalevel. Δ |∼ B^{o} +_{2} C is just another way of writing, in the metalevel, Δ +_{1} B |∼ C.

However, if we do have the object level connectives, “⊕_{1}”, and “⊕_{2}”, we can write down equivalences. We therefore get that

• A ⊕_{2} B is equivalent to A^{⊙} →_{r} B

• A ⊕_{1} B is equivalent to (A →_{r} B^{⊙})^{⊙}.

Thus “⊕_{1}”, “⊕_{2}” are reducible, in a system containing “→_{r}”, to the connectives “→_{r}” and “⊙”.

Let us now pause and summarise what we have learnt so far.

Suppose we start with a consequence relation |∼ with +_{1} for data and +_{2} for goals. Suppose we introduce a shift operation which shifts from the right hand side of the data to the left hand side of the goals and vice versae, and suppose that we have an object level connectives ⊙ for the shift and →_{r} satisfying right hand side Deduction Theorem. Then we can define in the object level the two operators “⊕_{1}” and “⊕_{2}” using “→_{r}” and the object level “⊙” as follows:

\begin{matrix}A ⊕_{2} B = def A^{⊙} →_{r} B \\ A ⊕_{1} B = def (A →_{r} B^{⊙})^{⊙}. \end{matrix}

The above discussion showed how to add a structural connective ⊕ to reflect the notion +, which is part of the defintion of any consequence relation. Any specific consequence relation , allows for a family M of structures. Any of these structures τ ∈ M can be reflected in the object level by a special connective ◯ τ. The way it is done is described in the next definition.

Definition 7.3.2 (Left Structural Connectives and Left Structural Rules) Let M be a classs of structures and let |∼ be a consequence relation structured on M, as defined in 3.1. Let τ be a fixed structure in M and assume τ has n elements a_{1}, …, a_{n}. Indicate this fact by writing τ(a_{1}, …, a_{n}). Enrich the language of |∼ with an additional n-place connective ◯ τ(A_{1}, …, A_{n}) with the following Left Structural Rules for ◯ τ.

◯ τ Identity

(τ(a_{1}, …, a_{n}), δ) |∼ ◯ τ(δ(a_{1}), …, δ(a_{n})).

◯ τ Surgical Cut

Let Δ_{1} = (τ_{1}, δ_{1}) and Δ = (τ, δ). Let x ∈ τ_{1} and let δ_{1}(x) = B. Let Δ_{2} = (τ_{2}, δ_{2}) be the result of structural substitution of Δ in Δ_{1}, ie Δ_{2} = Δ_{1}[B/Δ].

This means that τ_{2} = λxτ_{1}(x)[τ].

Consider Δ′_{1} = (τ_{1}(x), δ′_{1}) which is just like Δ_{1} except that Δ′_{1}(x) = ◯ τ(δ(a_{1}), …, δ(a_{n})). Thus Δ′_{1} = Δ_{1}[B/◯ τ(δ(a_{1}), …, δ(a_{n})).

The Surgical Cut Rule is therefore

{Δ_{1}[B/Δ] |∼ A \atop Δ_{1}[B/◯ τ(δ(a_{1}), …, δ(a_{n})] |∼ A}

or if formulated with a slight abuse of notation:

{λxτ_{1}(x)[τ] |∼ A \atop λxτ_{1}(x)[◯ τ(δ(a_{1}), …, δ(a_{n}))] |∼ A}

The cut rule really ensures the other direction of the identity, by forcing ◯ τ to behave properly.

We are now ready to explain what a Structural Shift Connective is and what Structural Shift Rules are.

Definition 7.3.3 (Structural Shift Connectives) Let |∼ be a Scott type S-consequence relation and let M_{i} and L_{i} be as in definition 7.2.8. Let φ_{i} and be the wff of L_{i} each identifying a unique point in each τ_{i} ∈ M_{i}. Further assume that for each τ(a_{1}, …, a_{n}) there exist a unique τ_{2}(a_{1}, …, a_{n}, z) such that τ = τ_{2}∥φ_{2}. Assume τ′ = τ_{1}∥φ_{1}. We can write τ′ = f_{1}(τ_{1}), and τ_{2} = f_{2}(τ) where f_{i} are function symbols for the functional dependence which exists.

Let ⊙_{φ_{2}}^{φ_{1}} be a new unary connective to the language of |∼. Enrich |∼ with this connective and the following structural shift rule:

(φ_{1}, φ_{2}) Structural Shift Rule Let Δ_{1} = (τ_{1}(x), δ_{1}) be the data structure with x the point identified in τ_{1} by φ_{1}, and let Δ_{2} = (τ_{2}(y), δ_{2}) be the goal structure with y the point identified by φ_{2}. Assume that δ_{1}(x) and δ_{2}(y) satisfy that either δ_{1}(x) = ⊙_{φ_{2}}^{φ_{1}}A and δ_{2}(y) = A or δ_{1}(x) = A and δ_{2}(y) = ⊙_{φ_{2}}^{φ_{1}}A. For each of the above the following holds:

Δ_{1} |∼ Δ_{2} ∥ φ_{2} iff Δ_{1} ∥ φ_{1} |∼ Δ_{2}

The functions induced by φ_{1}, φ_{2} define the two places, and the shift rule tells us that ⊙_{φ_{2}}^{φ_{1}}A shifts A from one place to the other place.

It is worth noting that with a bit of abuse of notation, that the shift operation can be written as

1. Δ_{1}[⊙A] |∼ Δ_{2}[∅] iff Δ_{1}[∅] |∼ Δ_{2}[A]

2. Δ_{1}[A] |∼ Δ_{2}[∅] iff Δ_{1}[∅] |∼ Δ_{2}[⊙A]

where ∅ is the empty set and its substitution at point x in Δ[x] means deletion.

Example 7.3.4 Consider CL with its list structures. Let φ_{1} define the last element of a list and let φ_{2} define the second element of a list. Then if ⊙ denotes ⊙_{φ_{2}}^{φ_{1}} we get to the following two shift rules:

1. (A_{1}, …, A_{m}, ⊙B) |∼ (C_{1} … C_{n}) iff (A_{1} …, A_{m}) |∼ (C_{1}, B, C_{2}, …, C_{n})

2. (A_{1}, …, A_{n}) |∼ (C_{1}, ⊙B, C_{2}, …, C_{n}) iff (A_{1}, …, A_{n}, B) |∼ (C_{1}, …, C_{n}).

The shift operation suggest a new structural connective ◯ ! A. Its meaning can be motivated by the following observation. Given Δ_{1}(x) and Δ_{2}(y) the shift rule, stated intuitively, says for example that:

\begin{matrix}Δ_{1}[A] |∼ Δ_{2}(∅) \\ iff Δ_{1}[∅] |∼ Δ_{2}[⊙A]. \end{matrix}

We understand the operation as shifting A from Δ_{1} into Δ_{2}. After the shift, A is no longer present in Δ_{1} but is recorded in Δ_{2}. That is why we write Δ_{1}[∅]. If we do not take A out Δ_{1}, we get a different rule namely

\begin{matrix}Δ_{1}[◯ ! A] |∼ Δ_{2}[∅] \\ iff Δ_{1}[◯ ! A] |∼ Δ_{2}[⊙A]. \end{matrix}

This means that although A is supposed to “shift” to the right hand side, it stays while “duplicating” itself. The connective “◯ ! ” indicates the duplications property.

Example 7.3.5 Consider the previous example where we had

\begin{matrix}(A_{1} … A_{m}, B) |∼ (C_{1}, …, C_{n}) \\ iff (A_{1}, …, A_{n}) |∼ (C_{1}^{⊙}, B, C_{2}, …, C_{n}) \end{matrix}

If the formula B does not delete itslef when shifting, but duplicates itself we indicate this by writing ◯ ! B instead of B.

\begin{matrix}(A_{1}, …, A_{n}◯ ! B) |∼ (C_{1}, …, C_{n}) \\ iff (A_{1}, …, A_{m}, ◯ ! B) |∼ (C_{1} ⊙ B, C_{2}, …, C_{n}) \end{matrix}

Thus ◯ ! B at the last place on the left simply indicates an infinite number of B’s. Of course we can shift the entire ◯ ! B to the right and get

\begin{matrix}(A_{1}, …, A_{m}, ◯ ! B) |∼ (C_{1}, …, C_{n}) \\ iff (A_{1}, …, A_{m}) |∼ (C_{1} ⊙ ◯ ! B, C_{2}, …, C_{n}) \end{matrix}

Some properties of ◯ ! and ⊙ can be obtained from the above meaning, especially if other connectives are presnt, for example

◯ ! B + B ≡ ◯ ! B

Another structural connective is the proof-net like connective, which identifies copies. Consider again Δ_{1}[x] and Δ_{2}[y]. Using a shift connective, we can either put x = A and y = ∅ or put x = ∅ and y = ⊙A. In either case we get A on the left (Δ_{1}[A]) and nothing on the right.

Another possibility is to put A on the right and nothing on the left, ie Δ_{1}[∅], Δ_{2}[A]. We can write this possibility also as Δ_{1}[⊙A], Δ_{2}[∅].

What we should not write is

Δ_{1}[⊙A] |∼ Δ_{2}[A]

because here we are duplicating A twice on the right. We could of course add an additional marker say ††, to indicate that these two copies of A should really be one copy. So we can write:

Δ_{1}[⊙ †_{A} †] |∼ Δ_{2}[†_{A}†]

where †† marks the fact that there is only one copy. Thus (⊙†_{A}†, †_{A}†) is not the same as (†_{A}†, ⊙†_{A}†) becuase the first corresponds to A on thge right and the second corresponds to A on the left.

Example 7.3.6 To continue the previous example,

(A_{1}, …, A_{n}, ⊙ †_{A} †) |∼ (C_{1}, †_{A}†, C_{2}, …, C_{n})

is the same as

(A_{1}, …, A_{m}) |∼ C_{1}, A, C_{2}, …, C_{n})

while

(A_{1}, …, A_{m}, †_{A}†) |∼ (C_{1}, ⊙ †_{A} †, C_{2}, …, C_{m})

is the same as

(A_{1}, …, A_{m}, A) |∼ (C_{1}, …, C_{n}).^{1}

We now turn out attention to the so called “additive” connectives. As before, we start with a general consequence relation |∼.

Consider now the case where we have that both Δ |∼ Γ[A_{1}] and Δ |∼ Γ[A_{2}] hold. We can abbreviate the above situation by writing in the metalevel Δ |∼ λxΓ(x)[A_{1} ∧ A_{2}] or just Δ |∼ Γ[A_{1} ∧ A_{2}] where “∧” is a metaleval symbol, just like “+_{1}”, “+_{2}” and “o”. Similarly if we have Δ[A_{1}] |∼ Γ and Δ[A_{2}] |∼ Γ we can abbreviate it using “∨” and write Δ[A_{1} ∨ A_{2}] |∼ Γ. Note that “∧” and “∨” only abbreviate other notation and are not operations on the data. We could modify the data structures if we want to accommodate the respective operations but that is not necessary.

Note that Δ[A_{1} ∧ A_{2}] |∼ Γ is not meaningful, as we have not said what it means when “∧” appears on the left. Similarly for Δ |∼ Γ[A_{1} ∨ A_{2}].

The following hold by definition

Δ |∼ A ∧ B iff Δ |∼ A and Δ |∼ B
A ∨ B |∼ Γ iff A |∼ Γ and B |∼ Γ.

Example 7.3.7 Suppose we add the structural connectives ◯ ∨ and ◯ ∧ to the language; what are the obvious properties it must satisfy? In the general case we cannot say much beyond the obvious, so let us see what we get in the special case of linear logic. Here the Deduction Theorem comes into play:

1The perceptive reader may ask why we are doing all of this shifting. Instead of writing plainly (C, A) |∼ B, for example, we code it as C |∼ (B, ⊙A), putting A on the right and then marking it by ⊙ to indicate that it should really be on the left. Then to confuse matters even further, we write A on the left anyway and mark it so that the duplication is cancelled, ie (C, †_{A} † |∼(B, ⊙ †_{A} †).

Why do we need this geometry of illusion? The answer can be found in understanding the annotation as indicating resource. A structured database presents formulas to be used in the deduction in a way compatible with their structured layout. For linear logic the layout is a multiset and so each formula is to be used exactly once. In the course of the proof the formulas may be scattered about and/or duplicated. We need annotations to keep track of what is happening. This is why these connectives are useful.

1. Δ |∼ A → B ◯ ∧ C iff Δ, A |∼ B ◯ ∧ C iff Δ, A |∼ B and Δ, A |∼ C iff Δ |∼ A → B and Δ |∼ A → C iff Δ |∼ (A → B) ◯ ∧ (A → C).

2. Δ |∼ A ◯ ∨ B → C iff Δ, A ◯ ∨B |∼ C iff Δ, A |∼ C and Δ, B |∼ C iff Δ |∼ A → C and Δ |∼ B → C iff Δ |∼ (A → C) ◯ ∧ (B → C).

3. From the Identity Rule we get, since A ◯ ∨ B |∼ A ◯ ∨ B that A |∼ A ◯ ∨ B B |∼ A ◯ ∨ B

4. Similarly since by the Identity Rule A ◯ ∧ B |∼ A ◯ ∧ B we get that:

A ◯ ∧ B |∼ A A ◯ ∧ B |∼ B

5. Since A |∼ A ◯ ∨ B we get (A ◯ ∨ B)^{⊙} |∼ A^{⊙} and similarly (A ◯ ∨ B)^{⊙}|∼B^{⊙}. Hence we get (A ◯ ∨ B)^{⊙} |∼ A^{⊙} ∧ B^{⊙}.

6. Since A ◯ ∧ B |∼ A we get A^{⊙} |∼ (A ◯ ∧ B)^{⊙}. Similarly B^{⊙} |∼ (A ◯ ∧ B)^{⊙} and therefore A^{⊙} ◯ ∨ B^{⊙} |∼ (A ◯ ∧ B)^{⊙}.

7. Since (A → C) ◯ ∧ (B → C) |∼ A → C and A ⊕_{1} (A → C) |∼ C we get by Surgical Cut that A ⊕_{1} ((A → C) ◯ ∧ (B → C)) |∼ C and similarly B ⊕_{1} ((A → C) ◯ ∧ (B → C)) |∼ C hence (A ◯ ∨ B) ⊕_{1} ((A → C) ◯ ∧ (B → C)) |∼ C and therefore (A → C) ◯ ∧(B → C) |∼ A ◯ ∨ B → C.

So far our study of structural connectives and shift connectives used no special properties of |∼ beyond the existence of →_{r} in the object language. We shall see that we are going to need some symmetry assumptions on |∼. Suppose we start with the Tarski |∼LL of definition 10.1.1 and 9.2.5 and 9.2.6 and assume that |∼_{1} and |∼_{2} are both Scott type and are compatible with |∼LL. Everything we have said and done so far would apply to both |∼_{1} and |∼_{2} equally. We can thus add the structural connective “⊙” and get all the equivalences mentioned earlier to hold. However there might be a difference between the case of |∼_{1} and that of |∼_{2}, depending on their properties.

Example 7.3.8 Consider the consequence relation |∼LL^{1} defined by Δ |∼LL^{1} A iff for some B ∈ Δ, A |∼LL B, where Δ is a multiset.

This is a consequence relation as can be shown easily..

Let |∼_{1} be the amalgamation of |∼LL and |∼LL^{1}. Clearly Δ |∼_{1} Γ iff for some A ∈ Γ, Δ |∼LL A holds. This means that |∼_{1} is monotonic in Γ.

Let us add to the |∼_{1} the shift “⊙” and consider the following: A |∼_{1} B, C iff A |∼_{1} B^{⊙} → C iff A, B^{⊙} |∼_{1} C. If we continue the chain using the fact that |∼_{1} agrees with |∼LL we get that the above holds iff A, B^{⊙} |∼LL C. We can now get that |∼LL is monotonic in B^{⊙}, ie Δ |∼LL C implies Δ, B^{⊙} |∼LL C. This is so because Δ |∼LL C implies Δ |∼_{1} B, C and hence Δ, B^{⊙} |∼LL C from the equivalence chain. Although |∼LL itself is not monotonic, there is nothing wrong with monotonicity in B^{⊙}, because we know that Δ, B^{⊙} |∼LL C really means Δ |∼_{1} B, C. However, it does force us syntactically to note which wff is of the form B and which is of the form B^{⊙}, and excludes writing B^{⊙⊙} instead of B. Clearly this is not desirable. We therefore need to assume further properties on the |∼ which agrees with |∼LL, namely the property that it is symmetrical, namely A |∼ Γ iff Γ^{⊙} |∼LL A^{⊙}.

In terms of definition 7.2.9 we want |∼ to be the amalgamation of |∼LL with itself.

We now proceed with a series of definitions leading to the notion of self amalgamation.

Definition 7.3.9 (The dual of a consequence relation) Let |∼ be a consequence relation in language L. Consider a dual language L^{∗} defined as follows:

1. The atoms of L^{∗} are all atoms of the form q^{∗}, where q is an atom of L^{∗}.

2. The connectives of L^{∗} are all connectives of the form ♯^{∗}, where ♯ is a connective of L. Let ∗ be a maping from L to L^{∗} defined by

3. (q)^{∗} = q^{∗}, for q atomic

4. (♯(A_{1}, …, A_{n}))^{∗} = ♯^{∗}(A_{1}^{∗}, …, A_{n}^{∗}), for a connective ♯.

5. Define Δ^{∗} |∼^{∗} A^{∗} iff def Δ |∼ A.

Examples 7.3.10 In classical logic let ∧ and ∨ be duals and let A^{∗} = ¬A.

7.4 A Case study: What is the logic of linear logic

A lot has been said about linear logic. From our point of view, the system is very simple; it is the logic based on the data structures of multisets, satisfying the Deduction Theorem and fortified with additional structural and shift connectives.

It is our purpose in this section to present linear logic from this point of view.^{2}

We start with the data structures of multisets for both the data and goal. Consider the language with → only and consider the smallest Scott type consequence relation |∼ satisfying the deduction theorem for →.

We know that the smallest Tarski type consequence relation |∼_{1} for multisets satisfying the deduction theorem does characterise linear logic. Thus it is clear that

Δ |∼_{1} A iff Δ |∼ {A}.

What is not clear is the nature of the consequence Δ |∼_{2} A defined by

Δ |∼_{2} A iff {A} |∼ Δ.

We shall address this problem later.

Given |∼, let us add to the language the structural connectives ⊕_{1}, ⊕_{2} and the shift connective ⊙, as we did in the previous section, when we were discussing such connectives for an arbitrary consequence relation. We get for our case that the following holds, where X ≡ Y means both X |∼ Y and Y |∼ X:

1. A^{⊙⊙} ≡ A

2. A ⊕_{2} B ≡ A^{⊙} → B

3. A ⊕_{1} B ≡ (A → B^{⊙})^{⊙}

4. (A ⊕_{1} B)^{⊙} ≡ A^{⊙} ⊕_{2} B^{⊙}

5. (A ⊕_{2} B)^{⊙} ≡ A^{⊙} ⊕_{1} B^{⊙}

We can also add the “of course” connective ◯ ! and proof net markers. Let us agree that †_{n}† is the corresponding connective on the right. We thus have:

2The reader is cautioned that the phrase “from our point of view” is important. Intuitionistic logic, from our point of view, is essentially the smallest monotonic consequence relation with the Deduction Theorem for →, with sets as structures and the structural and shift connectives. However, intuitionistic logic arose in a context of far greater importance and motivation in the historical development of logic. Similarly, linear logic has its own historical context and to understand its role one has to go back as early as 1976 [Girard, 1976]. For these reasons, Avron [Avron, 1988b] should be viewed in context. I cannot make up my mind at the moment whether the excitement, generated in computer science circles by intuitionistic and by linear logic, is indeed justified. A clear case should be made for each logic whether it is best suited for its proposed computer science applications and the indiscriminate application of these logics may obscure their intrinsic logical value.

6. A ⊕_{1} ◯ ! _{1} ≡ ◯ ! _{1}A

7. A ⊕_{2} ◯ ! _{2}A ≡ ◯ ! _{2}A

8. A ⊕_{1} B^{†_{n}†} |∼ C ⊕_{2} (B^{⊙})^{†_{n}†} is the same as A ⊕_{1} B |∼ C

9. A ⊕_{1} B^{⊙†_{n}†} |∼ C ⊕_{2} B^{†_{n}†} is the same as A ⊕_{1} B^{⊙} |∼ C.

The moral of the story is that the properties of all of these connectives are determined by the structure and their geometric meaning.

The additives ◯ ∧ and ◯ ∨ can be added to linear logic as in the example 7.3.7. When added to the language alongside ⊕_{1} and ⊕_{2}, one can form formulas with arbitrary nestings of ◯ ∧, ◯ ∨, ⊕_{1}, ⊕_{2} within themselves. Given the meaning of these connectives, the corresponding meatalevel structures are the composition of two consequence relations, one for the additives over sets and one for the multiplicatives over multisets, as in 7.2.16.

In the case of the additives of linear logic, the structures τ^{∗} were multisets of sets (not hereditary). These can be regarded as a family of structures {τ} of M′ (ie multisets) obtained by choosing all possible points from the sets of points in τ^{∗}. For example if τ^{∗} is ({a, b}, {c, d}, {e}) then the following set of τ’s are associted.

(a, c, e), (a, d, e), (b, c, e) and (b, d, e).

We write formally τ ∈ τ^{∗} to indicate the connection. We can define the function δ^{∗} to give values (wff) to each point. Thus databases and goals become lists of sets of formulas or multisets of sets of formulas.

For example, if Δ^{∗} is ({A, B}, {C, D}, {E}) we get the following associated databases

(A, C, E), (A, D, E), (B, C, E) and (B, D, E).

We write again Δ ∈ Δ^{∗} to indicate the association.

Our goal is to define a consequence relation Δ^{∗} |∼^{∗} Γ^{∗} by stipulating: Δ^{∗} |∼^{∗} Γ^{∗} iff def. for all Δ ∈ Δ^{∗}, Γ ∈ Γ^{∗}, Δ |∼ Γ.

We need to show that we get an S-consequence relation and for that we need to define the Surgical Cut Rule; we need to define substitution of one structure in another. We refer back to a general definition of the composition of two S-consequence relations.

We now present a theorem about the Hilbert formulation of linear logic with → and ¬ which shows that ⊙ can be taken as ¬ and that ¬ can be mapped into the implicational fragment.

Theorem 7.4.1 Let LL(¬) be the extension of LL of 10.1.1 and 9.2.5 and 9.2.6 with the unary symbol ¬ and the following axioms:

¬¬A ↔ A
(¬(A → ¬B) → C) ↔ (A → (B → C))
(A → B) → (¬B → ¬A)

Let ⊥ be an arbitrary atom of LL. Let φ^{⊥}(A) be a translation from LL(¬) into LL(⊥) defined as follows:

φ^{⊥}(q) = (q → ⊥) → ⊥, q atomic
φ^{⊥}(A → B) = φ^{⊥}(A) → φ^{⊥}(B)
φ^{⊥}(¬A) = φ^{⊥}(A) → ⊥

Then the following holds:

LL(¬) ⊢ A iff LL ⊢ φ^{⊥}(A).

Proof. In Section 10.7. ■

Remark 7.4.2 The previous theorem yields the following:

1. Semantics for LL(¬), through the semantics for LL.

2. It shows that ¬, ⊕_{1} and ⊕_{2} (ie all the structural connectives of linear logic) are already definable from the impliction →, via the “internal” translation φ^{⊥}, for a fixed atom ⊥.

3. It shows that ¬ can also be regarded as a negation, and not merely as a shift operator.

Example 7.4.3 (Cut Free Formulation of Linear Logic) In this section, we started with a consequence relation ⊢LL for multisets as data, added the obvious structural and shift connectives together with the additives, defined the symmetric amalgamation and got a conseqeunce relation |∼. Certain properties of |∼ were listed in the previous example. It is possible to list enough properties of |∼ to enable one to derive the Cut Rule. When this is done one gets a cut free formulation of the sytem |∼. Although we have been referring to |∼ as linear logic, we have not proved that |∼ is indeed the system known in the literature as linear logic. To show that, all we need to do is to take a known formulation of linear logic, say ⊢_{1}, see e.g. [Girard, 1987], and prove that all ⊢_{1} rules are valid in |∼. This will show that ⊢_{1}⊆|∼. If we prove the Cut Elimination for ⊢_{1} this will show that |∼⊆⊢_{1}. Thus essentially Cut Elimination for ⊢_{1} establishes that |∼ is indeed linear logic.

7.5 Case study: What is negation

The notion of negation is basic to any formal or informal logical system. When any such system is presented to us, it is presented either as a system without negation or as a system with some form of negation. In both cases we are supposed to know intuitively whether there is no negation in the system or whether the form of negation presented in the system is indeed as claimed Yet the notion of what is negation in a formal system is not clear. When we see a unary connecive ∗A, (A a wff) together with some other axioms for some additional connectives, how can we tell whether ∗A is indeed a form of negation of A? Are there some axioms which ∗ must satisfy in order to qualify A as a negation?

Let L be any propositional logical system and let ⊢_{L} be its provability relation. We do not specify how L is presented to us, it can be as a Hilbert style system with axioms and rules, or as a ntural deduction system or by semantics etc. The main point is that we have the provability relation of L, namely:

A_{1}, …, A_{k} ⊢_{L} B

between a finite set Δ of A_{j} and a signle B satisfying the following three conditiosn:

1. Δ ⊢ A for A in Δ (reflexivity).

2. If Δ ⊢ A and Δ ⊇ Δ then Δ′ ⊢ A (monotonicity).

3. If Δ ⊢ A and Δ ∪ {A} ⊢ B then Δ ⊢ B. (Transivity or cut).

In fact any relation ⊢ on wffs satisfying 1, 2 and 3 can be regarded as a logical system.

Our strategy is to give several candidate definitions of what should constitute a negation in a system and test them against rou intuitions and against known examples. The examples we look at are as follows:

Example 7.5.1 (a) Let us consider the following system in a language with ¬ and →.

1. A → (B → A)

2. [A → (B → C)] → (A → B) → (A → C)]

3. ¬¬A → A

4. A → ¬¬A Rules

5. Modus Ponens

{A, A → B \atop B}

Question: Is ¬ a form of negation in this system?

(b) Let us make life more difficult by adding more axioms to our system. To get the idea of what to add, first we need disjunctions and conjunctions (the sytem has only ¬ and →). So let us see what can be taken as disjunction.

(a → b) → b = ¬(a → b) ∨ b = (a ∧ ¬b) ∨ b = a ∨ b

so let a ∨ b = def.(a → b) → b. This is in fact a well known definition of ∨ in terms of →. Also let a ∧ b = def.¬(¬a ∨ ¬b) = ¬((¬a → ¬b) → ¬b). Take the following rule:

6.

{⊢ A → B \atop ⊢ ¬B → ¬A}

and the further axioms:

7. ¬(A ∨ B) ↔ ¬A ∧ ¬B

8. ¬(A ∧ B) ↔ ¬A ∨ ¬B

9. ((A → ¬¬B) → A) → A. (This axiom says (A → B) ∨ A).

Is ¬ a negation in this system?

(c) We can ask further:

If we also add the axiom

10. A → (¬A → B).

does this make ¬ a negation? (we shall see that Answer is no for cases (a) and (b) and yes for case (c).)

It seems from the above example that this question does not have an immediate simple answer. Remember that we cannot just write a set of axioms for negation and say that anything satifying these axioms is a negation. f we write too many axioms we may only get classical negation, and even that is not guaranteed because maybe we do not know how the negation axioms are supposed to interact with other connectives e.g. →.

Let us look at more examples:

Example 7.5.2 Consider the system L3 below of Wajsberg. It axiomatises the 3 valued logic of Łukasiewicz with → and ¬. Axioms:

W1 A → (B → A)

W2 (A → B) → ((B → C) → (A → C))

W3 (¬B → ¬A) → (A → B)

W4 ((A → ¬A) → A) → A

The inference rule is modus ponens. Question: Can one determine on the basis of ⊢L3 whether ¬A is a negation in L3?

Example 7.5.3 Consider a third system denoted by LS3. Its language contains an additonal connective Θ besides ¬ and →. It is obtained from L3 by adding the axioms:

Θ1 ΘA → ¬ΘA

Θ2 ¬ΘA → ΘA.

Questions:

1. Is ¬ a negation in this system? Is Θ a negation?

2. If ¬ is considered a negation in L3, does it have to be considered a negation in the extension LS3?

Armed with this stock of examples we now move to a formulation and some possible solutions of our problem. Problem P: Given a consequence relation ⊢ (satisfying 1, 2, and 3), and a connective ∗A in the language of ⊢, are there any criteria on the relationsihip between ⊢ and ∗ which will agree with our intuitions regarding the qustion of when * is to be considered a form of negation?

Carnap and Church discussed whether a syntactical characterisation of negation was possible. Carnap thought it was possible, Church thought not.

A basic intution regarding the meaning of ¬A is that A does not hold or A is not wanted or A is excluded or even A is not confirmed. Thus if L is a system with a candiate ∗A for negation, we cannot hope to have A, ∗A considtent together. This leads us to our first attempt in answering problem P.

We must specify a set Θ of unwanted wffs. the wffs of Θ are not allowed to be true. This is normal and natural for any database. For example we do not want two lecturers to be assigned to the same classroom at the same time. In a formal system L, one can take Θ = falsity or one can take Θ to be certain conjunctions of atoms etc. So to get negation into a system we must have a set of unwanted wffs Θ. This set may be different for differnt negations. The connective (*1) may be a negation because of Θ1 and (*2) may be a negation because of Θ2 and so on.

We are thus led to the following defintion:

Definition 7.5.4 (Negation as syntactical inconsistency: 1st attempt) Let ⊢ be the provability relation of a system and ∗A be a connective. We say * is a form of negation if there is a fixed non-empty set of wffs Θ^{∗} which is not provably equivalent to the set of all wffs, such that for any · : and any A the following holds:

Δ ⊢ ∗A iff ∃y ∈ Θ^{∗}(Δ, A ⊢ y).

i.e. A is negated by Δ becasue A leads to some unwanted y in Θ^{∗}.

Lemma 7.5.5 Let ∗ be a negation in the logical system ⊢. Then the set {x : ∅ ⊢ ∗x} is non-empty.

Proof. Since * is a negation, let q ∈ Θ^{∗}, then ∅ ⊢^{∗} q, since q ⊢ q.

The above is purely syntactic (in terms of ⊢) definition. So to check whether ∗A of an axiom system is a negation, look for a Θ^{∗} and try to prove the above equivalence. Note that the equivalence must hold for any Δ and A.

We may ask ourselves, how do we find a Θ^{∗}? The answer is that if such a Θ exists, (i.e. * is a negation according to the above definition) then it follows from lemma 7.5.5 that Θ^{∗} can be taken as:

Θ^{∗} = {C | ∅ ⊢^{∗} C}

where ∅ is the empty set. ■

Lemma 7.5.6 Assume * is a negation with a Θ^{∗} according to definition 7.5.4, then for any Δ and any A, (a) is equivalent to (b): a. Δ, A ⊢ C for some C such that ∅ ⊢^{∗} C.

b. Δ, A ⊢ B for some B ∈ Θ^{∗}.

Proof. Let B ∈ Θ^{∗} then since B ⊢ B we get by definition 7.5.4 that ∅ ⊢^{∗} B. This shows that (b) implies (a).

Assume for some C such that ∅ ⊢^{∗} C, we have Δ, A ⊢ C. Since ∅ ⊢^{∗} C, we have that for some B ∈ Θ^{∗},

C ⊢ B.

By monotonicity of ⊢

Δ, A, C ⊢ B

and by cut using Δ, A ⊢ C we get

Δ, A ⊢ B,

This proves the lemma. ■

We can thus modify definition 7.5.4 as follows:

Definition 7.5.7 (Negation as syntactical inconsistency: modified first attempt) Let ⊢ be a logical system and ¬A be a connective. We say that ¬ is a form of negation in ⊢ iff for any Δ and any A the following holds.

Δ ⊢ ¬A iff for some C such that ∅ ⊢ ¬C we have Δ, A ⊢ C.

The above definition seems theoretically sound and acceptable. All we have to see now is whether it takes care of all the currently known and agreed upon negations. We will see later that further modifications are necessary. For this reason we continue to use Θ^{∗} itslef and not {C | ∅ ⊢^{∗} C}. Note that Θ^{∗} may contain wffs containing * itself. We do not nee dto exclude this possibility. In fact for classical logic we can take Θ^{∗} = {q_{0} ∧ ¬q_{0}} for some atom q_{0} and we all know that in classical logic Δ ⊢ ¬A iff Δ, A ⊢ q_{0} ∧ ¬q_{0} holds, and so classical negation is a negation. So is intuitionistic negation because the same equivalence holds.

According to 7.5.4, the ¬ defined in example 7.5.1 axioms 1-9 is not a negation. One can see this by taking the following interpreation and verifying that all axioms 1-9 of example 7.5.1 are valid. In this interpretation there are two worlds h and e (heaven for h and earth for e). ¬A is true in one if A is false in the other. → is the usual truth functional implication. All axioms and rules are valid; i.e. we have ¬A iff A is true in e and h under any assignment to the atoms. Now we can see that ¬A is not a negation of A, since it just says that A is false in the other world. A ∧ ¬A is not a negation of A, since it just says that A is false in the other world. A ∧ ¬A can be consistent, as A could be true in this world (e.g. e) and false in the other world (e.g. h). the rule of definition 7.5.4 for negation does not apply here. If ¬ were a negation, then for some Θ, and for all Δ, A we would have:

Δ ⊢ A ⇔ Δ, A ⊢ y, for some y ∈ Θ.

In particular for any y ∈ Θ we get ⊢ ¬y. Let p be atomic then since

¬p ⊢ ¬p

we get ¬p, p ⊢ y for some y ∈ Θ, and therefore:

¬p ∧ p ⊢ y for some y ∈ Θ, and hence by definition ⊢ ¬(p ∧ ¬p).

Since p is an atom we cannot have the above since p ∧ ¬p is consistent, i.e. since ⊬ A ∧ ¬A. Thus the ¬ above is not a negation.

If we add axiom 10 (of example 7.5.1) i.e. A → (¬A → B) we get e = h and ¬ becomes classical negation. We can take Θ = (¬q_{0} ∧ q_{0}) and derive from the axioms that

⊢ ¬A ↔ (A → (¬q_{0} ∧ q_{0})).

In fact the above additional axiom says simply ⊢ ¬(A ∧ ¬A).

Let us check now whether ¬ in the system L3 of example 7.5.2 is indeed a form of negation. This system axiomatises Łukasiewicz 3 valued logic. There are 3 truth values, 1 (truth), 1/2, and 0 (falsity). The truth tables for ¬ and → are as follows:

¬x = 1 and x → y = Min (1, 1 + y − x).

The idea of the definition for x → y is that if x ≤ y then x → y is true. (Like 0 → 1 in classical logic). If x > y then x−y is the measure of falsity of x → y and so the value of x → y is 1−(x−y). ¬x = 1 − x is just the mirror image of the truth value.

Conjunction x ∧ y and disjunction x ∨ y have the definition below. They are definable from → by:

x ∨ y = def. (x → y) → y = Min(x, y).
x ∧ y = def. ¬(¬x ∨ ¬y) = Max (x, y).

there is no doubt that ¬x is a form of negation in this system, because ¬x = 1 − x. The farther x is from the truth the nearer ¬x is to the truth.

Let us write A_{1}, …, A_{n} ⊨ B in this system to mean that under any assignment:

Min( value A_{j}) ≤ value B, and ⊨ B to mean that under any assignment value B = 1.

Notice that the relation ⊨ defined semantically above, fulfils the criteria for a logical system. The deduction theorem, however, is not valid for ⊨.

The Wajsberg axiom system is complete in the sense that the following holds:

A_{1}, …, A_{n} ⊨ B iff ⋀ A_{j} → B

If we define A_{1}, …, A_{n} ⊢ B to mean that ⊢ ⋀ A_{j} → B it then follows that ⊢ B iff value B = 1 under all assignment.

Our definition 7.5.4 of what a negationis should give us that ¬ is a negation. Suppose ¬ is indeed a negation according to definition 7.5.4. Then there exists a fixed Θ such that for any Δ and any A of the logic L3, we have:

Δ ⊢ ¬A iff Δ, A ⊢ B( for some B ∈ Θ). Necessarily Θ ≠ ∅.

Take any B ∈ Θ and Δ = ∅ then ⊢ ¬B iff B ⊢ y for some y ∈ Θ; but since y = B ∈ Θ and B ⊢ B we get ⊢ ¬B for all B ∈ Θ.

One can verify by looking at the axioms the following lemma:

Lemma 7.5.8 If ⊢ A then value (A) = 1 under all assignments.

Proof. The above is true for the axioms and is preserved under modus ponens and substitution. Thus we conclude that for any B ∈ Θ, value B = 0 under all assignments. Now consider an atom q, certainly

¬q ⊢ ¬q

hence for some B ∈ Θ

¬q, q ⊢ B

hence under all assignments Min (value ¬q, value q) ≤ value B. In particular for any assignment h with h(q) = 1/2 we get h(B) ≥ 1/2. This contradicts the previous conclusion that value B = 0 always. We therefore need to improve our definition 7.5.4 of negation. ■

Our basic idea in defining negation was that A ⊢ ¬B holds iff A, B togetehr lead to some undesirable result Θ.

i.e. A, B ⊢ Θ.

However the way the above is written is that A and B are ‘combined’ together via conjunction, i.e. A ∧ B. It is quite possible that A, BB can be combined together via a different connective e.g. some connective C(A, B). Thus A ⊢ ¬B holds if C(A, B) ⊢ Θ. C is a connective which ‘brings out’ the effect A and B can have together. Of course C(x, y) is not an arbitrary connective. It must be monotonic and satisfy some obvious properites. C(x, y) must say more than just x ∧ y, and satisfy the conditions listed in definition 7.5.9 for it.

Definition 7.5.9 (Negation as a potential syntactic inconsistency: first attempt) Let L be a system with a provability relation ⊢ and let * be a unary connective of L. We say * is a form of negation in L iff there exist a non empty set of wffs Θ which is not provably equivalent to the set of all wffs, and a binary connective C(x, y) s.t. the following holds for any D and A.

D ⊢^{∗} A iff C(D, A) ⊢ y for some y ∈ Θ.

C must satisfy the following: (truth is any provable such formula; such formulae exist if * is a negation. See lemma 7.5.5.)

1. C(x, y) ⊢ x

2. C(x, y) ⊢ y

3. C(⊤, y) = C(y, ⊤) = y

4.

{x ⊢ x′ \atop C(x, y) ⊢ C(x′, y)} {y ⊢ y′ \atop C(x, y) ⊢ C(x, y′)}

where A = B abbreviates A ⊢ B and B ⊢ A.

Remark 7.5.10 1. We get from the above that (in case that a falsity can be defined in the logic): C( ⊥, y) = C( x, ⊥) = ⊥.

2. Definition 7.5.9 was given D for a single formula, if L has conjunction then we can take Δ ⊢^{∗} A.

For our negation in the system L3 let C(x, y) = ¬(x → ¬y), and let Θ = {falsity} = {¬(y_{0} → y_{0})}. Clearly, by the definition of ⊢, x ⊢ ¬y iff ⊢ x → ¬y iff value (x → ¬y) = 1 in all assignments, iff value ¬(x → ¬y) = 0 in all assignments, iff ¬(x → ¬y ⊢ falsity. The truth table for C(x, y) = ¬(x → ¬y) is Max (0, value x + value y − 1). As can be seen, since the truth function of C(x, y) is Max(0, x + y − 1) we get:

a. C(x, y) ≤ x

b. C(x, y) ≤ y

c. C(1, y) = y = C(y, 2)

d1. x ≤ x′ ⇒ C(x, y) ≤ C(x′, y)

d2. y ≤ y′ ⇒ C(x, y) ≤ C(x, y′)

These correspond to the conditions of definition 7.5.9 and hence ¬ in the 3 valued logic is a negation. In fact the above definitions of ¬, → and C(x, y) as ¬(x → ¬y) show that ¬ is a negation in all Łukasiewicz many valued logics.

Now that we have changed the definition of negation in a formal system we have to check whether the ¬ of example 7.5.1 is still not considered a negation. So assume that ¬ is a negation in the system of example 7.5.1, the system with axioms 1-9. Then for some Θ and C the condition of definition 7.5.9 holds, namely for all D, A.

D ⊢ ¬A iff C(D, A) ⊢ B for some B ∈ Θ

We shall show that

(£) A → ¬(x → x) ⊢ ¬A

using C and Θ, and this is impossible because in our two world model (£) says that if A is false in one world, A is false in the other world also. Thus if we prove (£) then this shows that no C, Θ can exist and ¬ is not a form of negation.

We now proceed to prove (£):

Since C(y, z) ⊢ y ∧ z we get
C(A → ¬(x → x), A) ⊢ ¬(x → x)

Hence by definition of ¬

C(C(A → ¬(x → x), A), x → x) ⊢ B, for some B ∈ Θ.

Since x → x is truth and C(y, truth ) = y, we get

C(A → ¬(x → x), A) ⊢ B, for some B in Θ

and hence by definition of ¬ we get:

(£) A → ¬(x → x) ⊢ ¬A

Example 7.5.11 (The system of relevant logic R) Consider a language with → only and the following set of axioms and rules defining the system R →. Rule

modus ponens  {⊢ A, ⊢ A → B \atop ⊢ B}

Axioms

R1. A → A

R1. (A → B) → ((C → A) → (C → B))

R3. (A → (B → C)) → (B → (A → C))

R4. (A → (A → B)) → (A → B)

The above system was introduced by Church and Moh (1950, 1951). Church called it ‘weak positive implicational calculus’. They proved the following deduction theorem for the system.

1. Deduction Theorem for R → If there exists a proof of B from A_{1}, …, A_{n} in which all A_{1}, …, A_{n} are used in arriving at B then there exists a proof of A_{n} → B from A_{1}, …, A_{n−1} satisfying the same conditions. The above calls for the following definition of ⊢_{R→}.

2. Definition of ⊢_{R→}

\begin{matrix}A_{1}, …, A_{n} ⊢_{R→} B iff \\ ⊢_{R→} A_{1} → (A_{2} → … → (A_{n} → B) …) \end{matrix}

One can see by axiom R3 that the above is independent of the order of {A_{j}}. The above system is identical with the implicational relevance logic of Anderson and Belnap. It satifies the conditions of a logical system. Negation ¬ is introduced into R → to obtain R(→, ¬) via the Ackermann negation axioms. These axioms are used to introduce negation not only into R → but also into all neighbouring systems.

Ackermann axioms for negation

AN1 (A → ¬B(→ (B → ¬A)

AN2 (A → ¬A) → ¬A

AN3 ¬¬A → A The following can be proved

AN4 A → ¬¬A

AN5 (A → B) → (¬B → ¬A)

See [Anderson and Belnap, 1975, pp. 20–21, 107–109] for details.

The above definition of negation is indeed negation according to our definition 7.5.9 of negation. Meyer 1966 has shown that if we add to R → a symbol ⊥ (falsity) with the additional axiom

R5 ((A → ⊥) → ⊥) → A

we get a system equivalent to R(→, ¬),with ¬ via the interpretation

1. ¬A = def. A → ⊥.

The following must be proved.

2. D ⊢ ¬A iff D, A ⊢ ⊥ i.e. D ⊢ A → ⊥ iff D, A ⊢ ⊥ or equivalently by definition of ⊢_{R→}:

⊢ D → (A → ⊥) iff D → (A → ⊥), which is correct.

Remark 7.5.12 Technically,if the system R(→, ¬) is formulated with ¬ and without ⊥, can we find an ⊥ such that ¬A = A → ⊥? In classical logic one can take ⊥ = q_{0} ∧ ¬q_{0} or if conjunction is not available, one takes ⊥ = ¬(a_{0} → q_{0}) for some fixed q. We cannot do the same for R(→ , ¬),because if we take ⊥ = ¬(q_{0} → q_{0}) for some fixed atom q_{0}, we will not have anough axioms on → to be able to use ⊥ as needed. We will have to add axiom R4 for this new ⊥ = ¬(q_{0} → q_{0}) and then show that no new theorems can be proved for any wffs not containing q_{0}. Thus we see that definition 7.5.9 is not quite right in the sense that the system considered may be too weak to show that it has a negation. In other words a connective * may indeed be a negation in the system ⊢, but ⊢ , may be too weak to prove the definition 7.5.9. In fact, a connective C(x, y) required by definition 7.5.9 may not be definable in the language of the system, but only in an extension. Intuitively if

* is a negation in a conservative extension, then we can and should regard it a negation in the system itself. We are thus led to the following definition:

Definition 7.5.13 (Negation as a potential syntactic inconsistency modified attempt) 1.

Let L1 and L2 be logical systems such that the language of L2 extends the language of L1.

We say L2 is a conservative extension of L1 iff the following holds for any Δ, A in the language of L1.

Δ ⊢_{L1} A iff Δ ⊢_{L2} A

2. We say that * is a negation in L1 iff for some conservative extension L2 and some Θ and C in L2 satisfying the conditions of definition 7.5.9, we have that for any D, A of L1 the following holds:

D ⊢_{L1} ∗A iff C(D, A) ⊢_{L2} B, for some B ∈ Θ

We have now to check whether this new definition of negation turns the connective ¬ of example 7.5.1 axioms 1-9 into a negation. (Recall that we found that ¬ is not a negation). The answer is no; ¬ is still not a negation. The reason is that for any conservative extension of the system in example 7.5.1 the two world interpretation (with the e world and the h world) is still valid. So the argument for showing that no C and Θ can make ¬ into a negation still goes through.

Example 7.5.14 We now give another example illustrating the need for definition 7.5.13. Consider the language of classical propositional logic and its conseqeunce relation ⊢. Let ⊢_{1} be defined as

Δ ⊢_{1} iff Δ ≠ ∅ and Δ ⊢ A.

⊢_{1} is a consequence relation. However, ¬ is not a negation in ⊢_{1}, according to definition 7.5.4, since for any non-empty Θ that we choose we would have to have for B ∈ Θ that ∅ ⊢_{1} ¬B since certainly B ⊢_{1} B contrary to definition of ⊢_{1}. But this is counter intuitive since certainly Θ = {q ∧ ¬q} should be acceptable.

The example is certainly pathological and definition 7.5.13 handles it nicely. However, in our view a more satisfactory solution to this particular problem is to require the following additional property to be fulfilled by a consequence relation.

4. Δ ⊢ A iff ∀x(Δ, x ⊢ A). (Coherence).

We now investigate the possibility that there might be negations for which Θ depends on D. This is quite intuitive, since it says that what we do not want, Θ depends on the data, D, which we have. In fact it turns out that we cannot have a notion of Θ dependent on D, for a coherent consequence relation. (See example 7.5.14 above).

Proposition 7.5.15 Let ⊢ be a monotonic logical system with conjunction ∧, and negation ¬ satisfying the following conditions:

1. For any D thre exists Θ(D), dependent on D, such that for any A the following hold:

2. D ⊢ ¬A iff ∃y ∈ Θ(D)(D, A ⊢ y)

3. Δ ⊢ A iff ∀x(Δ, x ⊢ A).

Then there exists an N (independent of D) such that (1) holds, i.e. N = Θ(D)).

Proof. We prove the proposition by means of two lemmas.

Lemma 7.5.16 Let ⊢, ¬ and Θ(D) be as in proposition 7.5.15. Let N(D) be the set

N(D) = {y | D ⊢ ¬y}

then ¬ is a negation satisfying equation 7.5.15 (2) with N(D) as a set of unwanted sentences.

Proof. Very much as in Lemma 7.5.6, we show that, for any D and A:

(*) ∃y ∈ Θ(D)(D, A ⊢ y) iff ∃z ∈ N(D)(D, A ⊢ z)

(a) Assume D, A ⊢ y for some y ∈ Θ(d).

By 7.5.15(2) we get that D ⊢ ¬A and hence A ∈ N(D) and therefore there exists a z ∈ N(D), namely z = A such that D, A ⊢ z.

(b) Assume D, A ⊢ z, for some z ∈ N(D).

Since z ∈ N(D) we therefore have that D ⊢ ¬z. Hence by 7.5.15(2) again there exists a y ∈ Θ(D) such taht D, z ⊢ y. We now have

D, A ⊢ z and D, z ⊢ y

by monotonicity we get:

D, A, z ⊢ y

and by the cut rule we get

D, A ⊢ y.

This completes the proof of lemma 7.5.16. Note that the proof in part (2) above can be modified to show that D, a ⊢ B and D, A ⊢ ¬B implies D ⊢ ¬A. ■

Remark 7.5.17 We draw several conclusions from lemma 7.5.16.

1. First that if ¬ is indeed a negation dependent on D (via Θ(D)) then equation 7.5.15 (2) is really an uniformative tautology. By lemma 7.5.16, Θ(D) can be taken as N(D) = {y | D ⊢ ¬y} and equation 7.5.15 (3) becomes:

D ⊢ ¬A iff (D ⊢ ¬y and D, A ⊢ y)

which is trivially true for y = A.

Note that for the case where Θ was fixed (independent of D) we got that D ⊢ ¬A iff ∃y (⊢ ¬y and D, A ⊢ y) which is more informative.

2. The second conclusion is that Θ is dependent on D in a special way.

As D gets stronger, Θ incrases. This is not intuitive! Why should (a priori) what we do not want increase with the database?

This property follows since we have:

{D′ ⊢ D, D ⊢ ¬A \atop D′ ⊢ ¬A}

We thus get that

D′ ⊢ D ⇒ N(D′) ⊇ N(D).

3. The third conclusion follows from the proof of lemma 7.5.16 and the assumption 7.5.15 (3). We get the following for ¬:

(c1) {D, A ⊢ B; D, A ⊢ ¬B \atop D ⊢ ¬A}

Furthermore, sicne we saw in (b) that D′ ⊢ D ⇒ N(D′) ⊇ N(D), we can get that

(c2) {D ⊢ ¬A \atop D ⊢ ¬(A ∧ B)}

The reason is that if D, A ⊢ y, y ∈ N(D), then certainly DB, A ⊢ y and since D, B ⊢ D, we have y ∈ N(D, B) and hence D ⊢ ¬(A ∧ B).

We now proceed to use lemma 7.5.16 to prove proposition 7.5.15 namely that ¬ can be taken to be a negation with a fixed Θ (independent of D). We assumed that the language contains conjunction ∧. ∧ satisfies the three axioms:

A ∧ B ⊢ A
A ∧ B ⊢ B
A, B ⊢ A ∧ B.

Lemma 7.5.18 Let ⊢ be a system with negation ¬, satisfying the rule:

1.

{D, A ⊢ B; D, A ⊢ ¬B \atop D ⊢ ¬A}

Then for N = {B ∧ C | B ⊢ ¬C} we have for any D, A.

2. D ⊢ ¬A iff ∃y ∈ N(D, A ⊢ y).

Proof.

1. Assume D ⊢ ¬A. We are looking for a y such tat y ∈ N and D, A ⊢ y. Let y = D ∧ A. Certainly D, A ⊢ D ∧ A and D ∧ A ∈ N since D ⊢ ¬A.

2. Assume that for some y ∈ N, we have D, A ⊢ y. y is then equal to some B ∧ C with B ⊢ ¬C. Since D, A ⊢ B ∧ C we get D, A ⊢ C. Since B ⊢ ¬C we get D, A ⊢ ¬C and hence by rule 1, D ⊢ ¬A.

Proof of Proposition 7.5.15 Assume the conditions of proposition 7.5.15 for ⊢ and ¬ hold. By conclusion (c1) of remark 7.5.17 the conditions of lemma 7.5.18 hold and hence ¬ is a negation with a fixed Θ = N.

The above considerations show that there is no hope for a formulation of a negation ¬ with a Θ dependent on the database, within the framework of monotonic logics. The assumption that ∧ is available does not restrict generality since ∧ can always be added to the language and definition 7.5.13 for negation be used. ■

7.6 Negation and structured consequence relations

In the previous section we addressed the problem of what is negation in the context of a monotonic consequence relation. By this we mean a relation between formulas of the form Δ ⊢ A, where Δ is a finite set of formulas satisfying reflexivity, monotonicity and cut.

The basic idea was that a connective ∗ is to be considered a negation if there exists a theory Θ_{∗} such that for any Δ and any A we have:

Δ ⊢ ∗A  iff  Δ, A ⊢ B for some B ∈ Θ_{∗}

Θ_{∗} is considered the set of unwanted sentences and any A is negated by Δ (i.e. Δ ⊢ ∗A) if it leads, “together with” Δ, to an unwanted B in Θ_{∗}. We refinef this definition by imposing conditions on Θ_{∗} and refining the notion of “together with”.

The LDS notion of a database (or theory) is no longer a set formulas, but can be a multiset or a list, or even an arbitrary structure. Monotonicity no longer holds and we need to extend the basic notions involved in deciding whether a connective ‘∗’ is a negation.

Our first step should be to set up the scene in which the concept of negation is to be characterized, namely, introduce the new notion of a non-monotonic consequence relation, which we call S-consequence relation (Structured Consequence Relation). A precise definition is given in an earlier chapter. Recall that we need three auxiliary notions for our definition:

1. We have already indicated that we need to deal with structured databases. We thus have to specify precisely what structures are allowed as databases, for the consequence relation to be defined. These must include the one formula database (A) and the empty database ∅.

2. The notion of a structured database must also include the concept of structured addition of data. By this we mean the notion of how to combine two databases together. The traditional way is to take their union, but when the databases are already structured, the union has to be structured as well. We denote the structured addition of the databases Δ and Γ by Δ + Γ. This binary operation, “+”, has to be defined as part of the concepts underlying the consequence relation. It will usually satisfy associativity:

Δ_{1} + (Δ_{2} + Δ_{3}) = (Δ_{1} + Δ_{2}) + Δ_{3}

and the empty database must satisfy:

∅ + Δ = Δ + ∅ = Δ

Commutativity is not required to hold.

3. We also need a concept of substitution of one structured database Δ inside another, Γ, achieved by replacing one formula A in Γ by Δ. Formally, we need to make sense of the symbol Γ[A], reading Γ is a structured database which contains A somewhere inside, and the symbol Γ[Δ], which denotes the database resulting from substituting Δ for A inside Γ. These notions are needed to formulate the Cut Rule.

We can now define the three rules which we call Identity, Surgical Cut (or Substitutional Cut) and Directional Monotonicity as follows:

Identity

(A) |∼ A

Surgical (Substitutional) Cut

\frac{Δ |∼ A Γ[A] |∼ B}{Γ[Δ] |∼ B}

Directional Monotonicity (right hand side)

\frac{Δ |∼ A}{Δ + Γ |∼ A}

Directional Monotonicity (left hand side)

\frac{Δ |∼ A}{Γ + Δ |∼ A}

Since + need not be commutative, we may distinguish between directional data additions +^{r}, +^{l} defined by Δ +^{r} Γ = Δ + Γ, Δ +^{l} Γ = Γ + Δ.

Definition 7.6.1 (Tentative Definition of Structured Consequence Relation) Let L be a language. Let L be a family of order types of the form (τ, ≤). Assume that the empty set and one element set types are in L. Assume that the notion of substitution of one order type τ for a point x in another order type τ′(x) is well defined (as in (3) above). We say that a relation Δ |∼ A (between ordered multisets Δ of wffs of an order type τ and a single wff A) is an S-consequence relation iff it satisfies Identity and Surgical Cut.

Definition 7.6.2 (Negation Relative to Data Addition) Let |∼ be a structured consequence relation. Let + denote addition of data. Let ∗ be a unary connective. We say ∗ is a negation relative to +^{r} (resp. +^{l}) iff there exists a set of wffs Θ_{∗} such that for all Δ and A

Δ |∼ ∗A  iff  for some B ∈ Θ_{∗} Δ + A |∼ B (resp. A + Δ |∼ B)

We require that Θ_{∗} is not the set of all wffs, nor does it contain theorems (i.e. any B ∈ Θ_{∗} which satisfies ∅ |∼ B). We say that ∗ is a negation relative to + iff it is a negation relative to +^{r} or +^{l}.

This definition is parallel to Definition 7.5.4 of the previous section. As remarked in that section, there may be systems containing negation ∗ which are not expressive enough to find a corresponding Θ_{∗}. We need a slight modification of the above definition which involves conservative extensions.

Definition 7.6.3 Let |∼ be a consequence relation, + addition of data and ∗ a unary connective. We say that ∗ is a negation in |∼ relative to +^{r} (resp. +^{l}) iff in some conservative extension |∼_{1}⊇|∼, there exists a Θ_{∗} such that for all Δ, A of the language of |∼ we have

1. Δ |∼ ∗A  iff  for some B ∈ Θ_{∗} Δ + A |∼_{1} B (resp. A + Δ |∼_{1} B)

2. In every conservative extension of |∼, ∗ is a negation relative to +^{r} (resp. +^{l}) in the sense of Definition the previous definition.

We assume Θ_{∗} is not the set of all wffs and does not contain theorems.

Example 7.6.4 Consider Łukasiewicz’ many-valued logic.

1. Consider the consequence relation |∼ as defined by:

A_{0}, …, A_{n} |∼ B iff for all assignments h of truthvalues to the atoms we have

max(0, ∑_{i=0}^{n} h(A_{i}) − n) ≤ h(B)

2. Let ⊢ be the consequence relation defined by:

A_{0}, …, A_{n} |∼ B iff min(h(A_{i})) ≤ h(B)

then clearly if

C(X, Y) =^{def} ¬(X → ¬Y)

then

A_{1}, A_{2} |∼ B iff C(A_{1}, A_{2}) ⊢ B

The consideration in Remark 7.5.10 of the previous section, shows that ¬ is a negation in |∼ relative to ‘+_{1}’ being union and is also a negation in ⊢ relative to ‘+_{2}’ being ‘C’.

With condition 2 in the previous definition, being a negation relative to +^{r} resp. +^{l} is preserved under conservative extensions.

Lemma 7.6.5 Let |∼ be a consequence relation with negation ∗ relative to data addition +^{r} (resp. +^{l}). Then ∗ is a negation relative to +^{r} (resp. +^{l}) in every conservative extension |∼_{2}.

Proof. Since ∗ is a negation in |∼, there is a conservative extension |∼_{1} that satisfies the conditions of Definition 7.6.2. Suppose |∼_{2} is a conservative extension of |∼. Let |∼_{3} be the composition of |∼_{1} and |∼_{2}, defined as follows:

1. Δ |∼_{3}^{0} A if Δ |∼_{i} A for i = 1, 2

2. Δ |∼_{3}^{n+1} A if for some C, Γ_{1}[C] and Γ_{2} we have Γ_{1}(C) |∼_{3}^{m} A and Γ_{2} |∼_{i} C and m ≤ n and i = 1, 2 and Δ = Γ_{1}[Γ_{2}]. In other words we require closure under the Surgical Cut Rule.

3. Let Δ |∼_{3} A iff for some n, Δ |∼_{3}^{n} A.

Then clearly |∼_{3} is a conservative extension of both |∼_{2} and |∼_{1}. Assume without loss of generality that ∗ is a negation relative to +^{r} in |∼_{3} in the sense of definition 7.6.1. Thus, in the language of |∼_{3} there is a set Θ_{∗} such that for all Δ and A:

Δ |∼_{3} ∗A  iff  Δ + A |∼_{3} B for some B ∈ Θ_{∗}.

Hence, in particular, for all Δ and A in the language of |∼_{2}:

Δ |∼_{2} ∗A  iff  Δ + A |∼_{3} B for some B ∈ Θ_{∗}.
■

Definition 7.6.6 If the consequence |∼ has several +_{i} available, we can let ∗ be an ∨-negation (resp. ∧-negation) relative to {+_{i}} iff for some Θ_{∗} we have for all Δ and A:

Δ |∼ ∗A iff for some i (resp. for all i) and some B ∈ Θ_{∗}
(Δ +_{i} A |∼ B or A +_{i} Δ |∼ B)

So far, we assumed Θ_{∗} is given to us as a set of unwanted wffs. We did not specify how Θ_{∗} is given. It may be the case that Θ_{∗} is generated by another consequence relation |∼_{∗}. Thus we may have

B ∈ Θ_{∗} iff ∅ |∼_{∗} B

Clearly, if Θ_{∗} is given as a set, then the relation |∼_{∗} can be taken as the membership relation, i.e.

Γ |∼_{∗} B iff B ∈ Γ ∪ Θ_{∗}

This membership relation is reflexive, monotonic and satisfies cut.

Definition 7.6.7 Let |∼ be a consequence relation in a language L. Let |∼_{1} be a conservative extension of |∼ in language L_{1} ⊇ L. Let ∗ be a unary connective of L and + be data addition in L. We say that ∗ is a negation in |∼ relative to +^{r} (resp. +^{l}) iff for some consequence relation |∼_{∗} of L_{1} the following holds:

1. The theorems of |∼_{∗} do not contain all wffs of L and do not contain any theorem of |∼ in L.

2. For all Δ and A, Δ |∼ ∗A iff for some B of L_{1} such that ∅ |∼_{∗} B, we have Δ + A |∼_{1} B (resp. A + Δ |∼_{1} B).

3. In every conservative extension of |∼, ∗ is a negation relative to +^{r} (resp. +^{l}) in the sense of Definition 7.6.1.

The following lemma says that Θ_{∗} can be taken as {B | ∅ |∼ ∗B}.

Lemma 7.6.8 Let |∼ be a consequence relation and let ∗ be a negation relative to +, through a Θ_{∗} in some conservative extention |∼_{1}. Suppose without loss of generality that ∗ is a negation relative to +^{r}. Then (1) is equivalent to (2):

(1) Δ + A |∼_{1} B for some B ∈ Θ_{∗}

(2) Δ + A |∼_{1} C for some C such that ∅ |∼_{1} ∗C.

Proof.

(1) ⇒ (2): If Δ + A |∼_{1} B and B ∈ Θ_{∗}, then since ∅ + B = B |∼_{1} B we get ∅ |∼_{1} ∗B and (2) holds.

(2) ⇒ (1): If Δ + A |∼_{1} C and ∅ |∼_{1} ∗C, then for some C_{1} ∈ Θ_{∗}, C |∼_{1} C_{1} and hence by Cut, Δ + A |∼_{1} C_{1}. This yields (1).

■

Definition 7.6.9 Let |∼ be a consequence relation with addition + and ∗ a unary connective. We say ∗ is a context dependent negation relative to + if for every Δ, A there exists a Θ_{∗}(Δ, A) (dependent on Δ and A) such that we have:

Δ |∼ ∗A iff for some B ∈ Θ_{∗}(Δ, A)
(Δ + A |∼ B or A + Δ |∼ B)

Remark 7.6.10 The preceding definition should be compared with the parallel definition of the previous section for the monotonic case. There, for every Δ, Θ_{∗} depended on Δ only, i.e. for all Δ and A

Δ |∼ ∗A iff ∃B ∈ Θ_{∗}(Δ), Δ, A |∼ B

In our definition, Θ_{∗} depends on A as well. For the monotonic case, since Δ+A+A is equivalent to Δ + A, this is only a slight difference.

Further note that because of Cut, we have C |∼ ∗A and C′ |∼ C imply C′ |∼ ∗A. It is reasonable to assume that C′ |∼ C implies Θ_{∗}(C′) ⊇ Θ_{∗}(C).

Example 7.6.11 Consider positive intuitionistic logic (for the language of →, ∧). To add intuitionistic negation we need the axioms

\begin{matrix}A → (¬A → B) \\ (A → ¬B) → (B → ¬A) \end{matrix}

With these axioms we can let ⊥ =^{def} ¬(q → q) and interpret ¬A as A → ⊥. The axiom for ⊥ that we get is

⊥ → B

Here Θ_{∗} = {⊥} and

Δ ⊢ ¬A  iff  Δ, A ⊢ ⊥

The above are the well known results for obtaining ¬ from a falsity constant ⊥. What can we do in order to add ¬ which is a context dependent negation?, i.e. for any A we add ⊥_{A} with

\begin{matrix}¬A ↔ (A → ⊥_{A}) \\ A ⊢ ¬B & iff & A, B ⊢ ⊥_{B} \end{matrix}

Consider the axiom

(B → ¬B) → ¬B

It was shown by R. Valerius [Valerius, 1989] that positive intuitionistic logic with →, ∧ and the above axiom allows for a conservative extension with falsities ⊥_{B}, for each B and the equivalence

¬B ↔ (B → ⊥_{B})

Theorem 7.6.12 Let |∼ be a consequence relation, + addition and ∗ a unary connective, being a context dependent negation relative to +. Assume that ⊕ is a structural connective corresponding to +, i.e. we have

1. A + B |∼ A ⊕ B

2. \frac{Δ + A + B + Δ′ |∼ D}{Δ + A ⊕ B + Δ′ |∼ D}

Assume ∗ is a negation relative to +^{r} which is context dependent with Θ_{∗}(Δ, A). Let

N_{∗}(Δ, A) = {∗B ⊕ B | Δ |∼ ∗B and A |∼ B}

Then (1) iff (2).

(1) For some Y ∈ Θ_{∗}(Δ, A), Δ + A |∼ Y

(2) For some Y ∈ N_{∗}(Δ, A), Δ + A |∼ Y

Proof. To show (1) ⇒ (2):

Δ + A |∼ Y  iff  Δ |∼ ∗A

Since ∗A + A ⊢ ∗A ⊕ A we get by Cut

Δ + A |∼ ∗A ⊕ A

which yields (2). To show (2) ⇒ (1): Assume Δ + A |∼ ∗B ⊕ B for some B such that Δ |∼ ∗B and A |∼ B. Since Δ |∼ ∗B, there exists a Y ∈ Θ(Δ, A) such that Δ + B |∼ Y.Since A |∼ B, we get by Cut, Δ + A |∼ Y, which is condition (1). ■

If a negation ∗ is context dependent with Δ and A, its being a negation does not depend on Θ_{∗}(Δ, A).

Theorem 7.6.13 Let |∼ be a consequence relation, + addition and ∗ a negation relative to + which is context dependent with Δ and A. Let |∼_{1} be |∼ conservatively extended by ⊕. Suppose without loss of generality that ∗ is a negation relative to +^{r} in |∼_{1}. Assume that C′ |∼ C ⇒ Θ_{∗}(C′) ⊇ Θ_{∗}(C). Then there is a set N_{∗} of wffs in the language of |∼_{1} such that N_{∗} is independent of Δ and A and

Δ |∼_{1} ∗A  iff  Δ + A |∼_{1} B for some B ∈ N_{∗}

Proof. Set N_{∗} = {(B ⊕ C) | B |∼_{1} ∗C}. If Δ = A_{1} + … + A_{n}, then ⊕Δ denotes A_{1} ⊕ … ⊕ A_{n}. ⇒: If Δ |∼_{1} ∗A, then for B = ⊕Δ ⊕ A we have Δ + A |∼_{1} B and B ∈ N_{∗}. ⇐: Assume B ∈ N_{∗} and Δ + A |∼_{1} B. Then for some (B_{1} ⊕ C_{1}), B = (B_{1} ⊕ C_{1}) and B_{1} |∼_{1} ∗C_{1}. Since ∗ is a negation in |∼_{1} in the sense of Definition7.6.1, there is a set Θ_{∗} in the language of |∼_{1} and C_{2} ∈ Θ_{∗}(B) such that B_{1} + C_{1} |∼_{1} C_{2}. Hence B_{1} ⊕ C_{1} |∼ C_{2}. Applying Cut to this and Δ + A |∼_{1} (B_{1} ⊕ C_{1}) yields Δ + A |∼_{1} C_{2}. HenceΔ |∼ ∗A. ■

Remark 7.6.14 Let |∼ be a consequence relation, + addition of data and ∗ a negation relative to +. Assume ∗ is a negation relative to +^{r}. Then for every A, ∅ |∼ ∗(∗A ⊕ A):

∗A |∼ ∗A
iff ∗A +^{r} A |∼ B
iff (∗A ⊕ A) |∼ B
iff ∅ |∼ ∗(∗A ⊕ A)

for some set Θ_{∗} and some B ∈ Θ_{∗}. Thus, ∗ cannot be negation relative to data addition +, if for some A, neither ∅ |∼ ∗(∗A ⊕ A) nor ∅ |∼ ∗(A ⊕ ∗A).

Example 7.6.15 (Strong negation) Consider the following construction. Let L be a language with some connectives {♯_{1}, …, ♯_{m}}. Let ρ be a new unary logical connective. For each connective ♯(q_{1}, …, q_{n}) of L let ψ_{♯}(q_{1}, …, q_{n}, ρq_{1}, …, ρq_{n}) be a wff of the language L + ρ (usually not containing ♯). Further assume that some complexity measure can be defined on L + ρ such that for all A_{1}, …, A_{n}, the complexity of ψ_{♯}(A_{1}, …, A_{n}, ρA_{1}, …, ρA_{n}) is strictly less than that of ρ♯(A_{1}, …, A_{n}). Let H be any logical system in the language L. We call H_{ρ} a rewrite extension of H in L + ρ iff (intuitively) H_{ρ} is the smallest extension of H satisfying the following axioms for all connectives ♯, and for k fixed:

(ρ_{♯}) ρ♯(A_{1}, …, A_{n}) ↔ ψ_{♯}(A_{1}, …, A_{n}, ρA_{1}, …, ρA_{n})

(ρ_{k}) ρ^{k}A ↔ A

For example, let H be the intuitionistic positive propositional calculus with ∧, ∨, →. Let “ρ” be “∼” (∼ is intended to be Nelson’s strong negation). Let N be the system with:

\begin{matrix}∼ (A → B) & ↔ & A∧ ∼ B \\ ∼ (A ∨ B) & ↔ & ∼ A∧ ∼ B \\ ∼ (A ∧ B) & ↔ & ∼ A∨ ∼ B \\ ∼∼ A & ↔ & A \end{matrix}

The complexity is lexicographic in the nestings of ∧, ∨, → within ∼, where “→” is stronger than “∧”, “∨”. Given such an extension, we can add negation ∗ to the system by letting Θ_{∗} = {∧_{i=1}^{k−1}ρ^{i}B}.

Δ |∼ ∗A iff for some B, Δ + A |∼ ρ^{i}B, for all i = 1, …, k − 1.

In the case of ∼, we get

Δ ⊢ ∗A iff for some B, Δ |∼ B∧ ∼ B.

If we want a single atomic falsity ⊥_{∗} for ∗ (i.e. Θ_{∗} = {⊥_{∗}}), we can stipulate the additional axiom:

A, ρA, …, ρ^{k−1}A |∼ B

for any A and B. This will allow us to identify the left hand side with some constant ⊥_{∗}. Denote this system by H_{k}^{+}. In the case of ∼, we need

A∧ ∼ A ⊢ B

and thus since all A∧ ∼ A are equivalent, they can be identified as ⊥_{∼}. In the case of ⊥_{∼}, the negation ∗ becomes intuitionistic negation. The only reason for that is the fact that ⊥_{∗} ⊢ B holds for any B. It has nothing to do with the axioms on ∼. We know that intuitionistic negation ¬ can be defined from any fixed propositional constant ⊥ provided we have the additional rule:

⊥ ⊢ B, B arbitrary.

In the case of N_{2}^{+}, ⊥_{∼} can serve as the ⊥. If the intuitonistic system already contains falsity ⊥ we can add:

\begin{matrix}∼ ⊥ = ⊤ \\ ∼ ⊤ = ⊥ \end{matrix}

In this case we will have two falsities ⊥ and ⊥_{∼}.

It is interesting to note that it so happens that for any wff A, there exist atoms q_{j} such that in N we have ∼ A ∧ A ⊢ ∨_{j} ∼ q_{j} ∧ q_{j}. This can be proved by induction on A. Thus the additional axiom ∼ A ∧ A ⊢ B, for B arbitrary, can be restricted to A atomic. This has ramifications to the semantics for strong negation.

194CHAPTER 7. A GENERAL THEORY OF STRUCTURED CONSEQUENCE RELATIONS

Metalevel Features in LDS

8.1 Introduction

In Chapter 1 we claimed that in LDS, the metalevel features are done by the labels while the object level features are done by the formulas of the logic. The meaning of the above statement, as well as notions of metalevel have to be clarified and formalised. This is the task of this Chapter.

We clarify the fundamental concepts involved in the relationship between meta-language and object language features. We will also study in more detail a meta-language HFP, presented in a later section, and examine the claim that it can function as a general purpose meta-language. Our conceptual framework will revolve around two pure notions. The notions of a proper meta-language and that of an object language L_{1} implementing meta-language features for a language L_{2}.

Given a language L, we understand by a proper meta-language M to the language L, any language which is able to name every well formed symbol of L and to describe all the logical operations of L. Thus formulas φ of L become terms t_{φ} of M and logical relations of L become predicates in M. M must have axioms to ensure that every interpretation of M gives rise, through the embedding of L in M, to an interpretation of L. For a given L, M is not unique. Many languages can serve as a meta-language for L, provided they are strong enough. In computer language terms, any strong enough language, e.g. basic, can be used to write an interpreter for any other language. In such a case one simulates one language in another. The other pure notion of one language, L_{1}, serving as an object language, L_{2}, is more difficult to explain. Consider the relationship between L and M. L is a sublanguage of M in a very strong sense. M has names for everything in L and axioms about L. Imagine a more equal relationship between two languages. Suppose L_{1} and L_{2} are both sublanguages of a language L_{1,2}. L_{1,2} is not a meta-language to L_{1}. It is just a richer language. For example, classical predicate logic, L_{1}, augmented with additional dummy predicates being the language L_{2} gives us L_{1,2} which is certainly not a meta-language. Consider L_{1,2} and consider some mixed axioms Δ_{1,2} in L_{1,2} affecting both L_{1} and L_{2}. Any interpretation of L_{1,2} satisfying the mixed axioms, will induce an interpretation on L_{1} alone. Similarly, we can consider a proper meta-language M_{1} of L_{1}, with names for L_{1} symbols, etc. as discussed before. In the language M_{1} we can write axioms ΔM_{1} about L_{1}, restricting its possible interpretations. It may be the case that the family of possible pure interpretations of L_{1} allowed by Δ_{1,2} (as induced from interpretations of L_{1,2} satisfying Δ_{1,2}) are the same as the possible interpretations of L_{1} allowed by ΔM_{1} (as induced from interpretations of M satisfying ΔM_{1}). In this case we say that L_{1,2} and Δ_{1,2} is an object language implementation of ΔM_{1}. The justification for ‘object language’ is that L_{1,2} is not meta to L_{1}, it is just an extension. Consider for example two interpreters L_{1} and L_{2} which are linked in some way. Thus each interpreter has its allowable options of how to run. However, since they are linked, not all of these individual options can be realized. L_{2} can choose to run in certain ways which will limit the options of L_{1} because they are linked. Suppose we use a proper meta-language M_{1} to talk and describe the options of L_{1} and suppose further that we express, through a wff φ_{1} of M_{1}, our wish to have L_{1} run only in certain ways. So φ_{1} (if true) limits the runs (or options) of L_{1}. There is another way of limiting the runs of L_{1}, through its linkage with L_{2}.

It may be that L_{2} can be restricted by condition δ_{1} so that L_{1} (when linked with L_{2} satisfying δ_{1}) can run exactly in a way which satisfies φ_{1}. If this is the case, then we say that L_{2}, through its object language restriction δ_{1} and its linkage with L_{1}, can implement φ_{1}, i.e. implement the meta-statement φ_{1}. It may be that for each φ_{n} of M_{1}, there exists a way of restricting L_{2} by δ_{n} which through the link with L_{1}, allows L_{1} to run only in a way which satisfies φ_{n}. In that case we have object language implementation of the set {φ_{n}} of the language M_{1}.

To make these concepts more concrete, think of an LDS system. The logic L of the formulas is L_{2} and the algebra A of labels is L_{1}. When linked together they form an LDS system. The meta-language M is a language capable of talking about the proof theory of the logic L. Here is a concrete example: let L be intuitionistic implicational logic. Let the proof theory for L be given using modus ponens (A, A → B ⊢ B) and → Introduction (to show A → B, assume A and show B). M will be a meta-level language capable of talking about proofs of L, containing predicates which can describe how many times an assumption A was used in a given proof of B. Let φ be a formula of M saying that each assumption is used at most once. Some proofs satisfy φ, some do not. We can add a labelling algebra (A, ∪) where A is a set of atomic labels and ∪ is a multiset union of atomic labels and use the labels to keep trace exactly which assumptions are used in the proof. The system becomes:

• Label all assumptions by different atomic labels.

• Formulate modus ponens as

α : A; β : A → B and α ∩ β = ∅
.
α ∪ β : B

• Formulate → introduction as the following:

to show α : A → B assume x : A with a new atomic label x and show α ∪ {x} : B.

• Say Δ ⊢ B if we label all wffs of Δ with different atomic labels we can prove α : B with α a subset of the set of these labels.

This LDS system implements the meta-level condition φ on the proofs.

Another example is from resolution in classical logic. Suppose we have a classical language L_{1} and a set Δ of clauses which is inconsistent. The resolution machinery may derive the empty clause but may not be equipped to give a set of substitutions into the clauses of Δ which can yield propositional inconsistency. Let M_{1} be a meta-language in which we demand this set. This demand can be implemented by adding a dummy predicate Q(x_{1}, x_{2}, …) with the appropriate variables (language L_{2}) as a disjunct to all clauses of Δ. The resolution machine can stop when unable to eliminate Q and from the various instantiations of Q the substitutions can be obtained.

The value of metalanguage features and of the study of object level implementations of metalanguage features lies in developing computational implementations of LDS. There are many theorem provers for classical logic. There are also other implementations of logical languages. If we can express in a generic way the general LDS discipline in one of these logics we will immediately have a computational system for LDS. Since many non-monotonic logics can be expressed nicely in LDS, we will get a computational capability for non-monotonic logics, an area highly famous for its computationally intractable systems.

It is best that we see some examples:

We begin with modal logic. We consider Example 2.2.3. The language contains propositional variables p, q, r, …, the classical connectives ∧, ∨, →, ⊥ and the modalities □ and ♢. The labels are atomic labels from a set {t_{1}, s_{1}, t_{2}, s_{2}, …} and we have the configuration relation < on labels. A database has the form of a set of labelled formulas called assumptions and a configuration on the labels involved in the assumptions. In Example 2.2.3 the database was:

Assumptions Configuration
(1) t : □□B t < s
(2) s : ♢(B → C)

The deduction rules allowed us to move from one database and configuration to another, obtained by adding assumptions and labels and extending the configuratin according to certain rules. The rules used are the rules of the particular LDS system for the above language.

We shall use the above language (above LDS) as our example of an object language. We will develop a metalanguage for it. We will do the construction in detail. We will then give another example of language metalanguage, for relevance logic (2.2.1). After seeing these two examples in detail we will be ready for general definitions of language metalanguage concepts and the main body of this section. We aim at the central concept of “object level implementation of a metalevel feature”. This will take time to develop and define. We first define the usual metalevel concepts, then try to simplify them, then try to do them in the object level and then explain how it is done in principle.

So, let us begin.

We want a metalanguage of the modal language, ie for the LDS of 2.2.3. A metalanguage should be strong and rich enough to talk about all the natural movements we make in the object language. Let us choose two sorted classical predicate logic as our metalanguage. This is a wise choice. The logic is well known, well understood and has many theorem provers available. If we can find it suitable it will be advantageous for us. How can it ever be unsuitable? There may be two possible reasons, one – it may not be mathematically expressive enough and two – its natural structure may not be intuitively compatible with the natural structure of the object language. Fortunately for our case, for the modal logic we are considering, classical logic is very suitable.

First order classical logic, however, is not general enough to serve as a metalanguage. We need the higher order language of Hereditarily Finite Predicates (HFP). This language will be formally defined later in this section. Meanwhile, we mention that it has the feature of allowing atomic predicates to have formulas as part of the predicate. For example, the metapredicate Hold(φ, t) reading “φ is true at t” is such a predicate. Another predicate is Derive(φ, ψ), reading “ψ is derivable (in some logic) from φ”

We start by assigning formal predicate symbols and terms (names) to denote the properties and constants of the object language. Let us denote the label t by “t” and < by “<”. For each formula A let “A” be a term naming A. We let Data(x, y) be a two sorted binary predicate of classical HFP intended to formalise the relation “t : A is in the database”, written as Data(t, A). Let Derive(Δ, x, y) be another relation intended to capture the notion of “t : A is derived using the LDS rules from the database Δ”.

Note that formally if t, A are considered the ground type 0 (level 0) then Data is if level 1 while Derive is of level 2, where generally level n + 1 can name and talk about all formulas of levels m ≤ n.

The database of 2.2.4 can be described in the metalanguage by the wff φ.

φ = Data(t, □□B) ∧ Data(s, ♢(B → C)) ∧ (t < s)

To the above sentence, we have to add a set of axioms (in HFP logic) describing the relation of derivation and the naming relation. These are:

(D1) Derive(φ, t, A ∧ B) ↔ Derive(φ, t, A)∧ Derive(φ, t, B)

(D2) Derive(φ, t, A ∨ B) ↔ Derive(φ, t, A)∨ Derive(φ, t, B)

(D3) Derive(φ, t, A → B) ↔ Derive(ψ, t, B) where ψ = φ∧ Data (t, A)

(D4) Derive(φ, t, ⊥) → Derive (φ, x, Y)

(D5) Derive(φ, t, □A) → Derive(φ, s, A) whenever φ ⊢ t < s.

(D6) Derive(φ, s, B) → Derive(φ, t, ♢B) whenever φ ⊢ t < s

(D7) Derive(φ, t, ♢A) → ∃s Derive(φ ∧ (t < s), s, A)))

(D8) Derive(φ∧ Data(t, A), t, A).

Note that the above gives us intuitionistic derivability. Note the clause for deriving a disjunction. We do not include disjunctions in the data. To obtain classical derivability we need to add:

(D9) Derive(φ, t, A), where A is a substitution instance of a truth functional tautology.

Let Δ be the (infinite) theory containing the universal closure of the D axioms. We would hope that for any labelled wff, r : A, eg t : ♢♢B we would have:

Δ ⊢ Derive (φ, r, A) in classical HFP iff t : A is derivable in the system of 2.2.4.

Our difficulty at the moment is that HFP is not mathematically well defined. However, let us continue despite that. The mathematics will come later in this chapter.

8.2 Classical logic as a metalanguage

What we now want to do is to define the meta features formalised by Data and Derive, in first-order classical logic, which serves as an object language.

To achieve that we associate it with every atomic formula A of the LDS (without the label) a unary formula A^{∗}(t) of first order predicate logic, with one free variable t. We now translate the metapredicate Data(t, A) for arbitrary A as follows: (∗ is the translation):

1. Data(t, A)^{∗} = A^{∗}(t) for A atomic.

2. Data(t, A ∧ B)^{∗} = A^{∗}(t) ∧ B^{∗}(t).

3. Data(t, A → B)^{∗} = A^{∗}(t) → B^{∗}(t).

4. Data(t, ⊥)^{∗} = ⊥.

5. Data(t, □A)^{∗} = ∀s(t < s → A^{∗}(s)).

6. Data(t, ♢A)^{∗} = ∃s(t < s ∧ A^{∗}(s)).

7. (t < s)^{∗} = t < s

We can now translate Derive(φ, t, A) as follows: (♯ is the translation).

8. Derive(φ, t, A)^{♯} = φ^{∗} → A^{∗}(t).

It is easy to verify that properties (D1)-(D5), (D7)-(D8) of the Derive predicate hold for the translation. We check property (D6):

We have to show that Derive(φ, t, ♢A)^{♯} → ∃s Derive(φ ∧ t < s, s, A)^{♯} After translation we get φ^{∗} → ∃s(t < s ∧ A^{∗}(s)) → ∃s(φ^{∗} ∧ t < s → A^{∗}(s))

Obviously this holds.

Let us summarise our steps. We started with a metalanguage HFP in which we represented our logic LDS.

HFP is a proper metalanguage, it names and describes the object language.

Our next step was to take another object language, in our case predicate logic, (call it the second object language) and connect it via translations ∗ and ♯ to the first object language LDS. Data was translated directly via the ∗ translation and Derive was basically translated as classical implication “→”.

The properties of Data and Derive are mirrored in the 2nd object language. In a sense the 2nd object language implements some meta properties of LDS as expressed in the metalanguage.

The reader should think, for example, of a debugger to a program. The debugger is another object program which implements some metaproperties of the program (via interrupts). The following diagrams and tables illustrate our ideas (See figs 8.1, 8.2 and 8.3):

We now proceed to express relevance logic in the object language of classical logic in the same way we did for modal logic. Consider a first order predicate logic with the monadic predicates

Object Language LDS Metalanguage HFP

t : A  Data(t, A)

LDS proof steps  Properties of the Derive

meta predicate.

additional metaconditions Axioms written in HFP

yielding other logics eg transitivity of the accessibility relation.

Figure 8.1:

Object Language LDS 2nd Object Language

Predicate Logic

t : A  A^{∗}(t)

LDS Proof steps  Predicate logic proof steps

Additional meta conditions Additional formulas of
on the logic  predicate logic or restrictions

on the proof steps of predicate logic. It is quite possible that the LDS conditions cannot be expressed in predicate logic, in which case our capabilities are limited

Figure 8.2:

LDS vs Predicate Logic  Program vs Debugger
Properties to be studied:  Properties to be studied:
Data and Derive  contents of global variables registers

Means are the translations  Means are the interrupts

∗ and ♯

Exact meaning of what we see Exact meaning to be expressed
can be expressed in HFP  in a proper metalanguage which

can express the program semantics. of the form A^{∗}(x), the predicate atom(x) and the binary function “⊗”. We allow for a finite set of constants C_{m} = {c_{0} = ∅, c_{1}, … c_{m}}, and equality “=”. Let A(x, y_{1}, …, y_{n}) be a formula of predicate logic with x, y_{i} free.

Let ∀^{∗}, ∃^{∗} be the quantifiers defined as follows:

∀^{∗}xA(x) iff (def) ∀x(⋀_{i=1}^{m} x ≠ y_{i} ∧ atom (x) ∧ x ≠ ∅ → A(x)) ∃^{∗}xA(x) iff (def) ∃x(⋀_{i=1}^{m} x ≠ y_{i} ∧ atom (x) ∧ x ≠ ∅ ∧ A(x)).

Notice that the meaning of ∀^{∗}, ∃^{∗} is context dependent on the free variables of A.

It is intended that C_{m} represents the set of atomic lables and that more complex labels are generated by the function symbol “⊗”. If t_{1} : A and t_{2} : A → B are labelled formulas then by applying modus ponens we get the labelled formula (t_{2} ⊗ t_{1}) : B. This was represented informally as t_{2}t_{1} : B. “⊗” is a general binary operation and different axioms on ⊗ can give it properties of different logics. Associativity of “⊗” seems to correspond to the logic CL of 9.2.5 and 10.3.9. For the case of relevance logic the labels are sets of atomic labels. In this case the binary operation “⊗” is set union on labels. Thus if t_{1} and t_{2} are labels so is t_{1} and t_{2}. we continue to use “⊗” rather than “∪” because for a weaker logic than relevance “⊗” could mean other operations. We need to use equality “=” as well, since we have function symbols.

We can now translate from any propositional resource logic (such as CL) into the monadic predicate logic as follows:

With each atomic proposition A of the resource logic we associate a unary predicate A^{∗}(t) of classical logic. A^{∗}(t) will represent “t : A”. The intuitive reading of A^{∗}(t) is that “A is labelled t”. The ∗ translation can be extended to any wff of relevance logic as follows:

[t : (A → B)]^{∗} = ∀^{∗}x(A^{∗}(x) → B^{∗}(t ⊗ x))

Recall that ∀^{∗} ranges over atomic labels, and is context dependent.

We need axioms on ⊗ to give it the correct meaning (of union in the case of relevance logic and just associativity in the case of CL).

Let L be a resource logic, eg CL. Let φL be a classical logic formula representing the labelling discipline of L. Such a formula must be shown to exist and be supplied by us. For example, φCL is:

∀xyz(atom (x) ∧ atom (y) ∧ atom (z) → (x ⊗ y) ⊗ z = x ⊗ (y ⊗ z)) ∧ ∧
∀x(atom (x) → (x ⊗ ∅ = ∅ ⊗ x = x))

Let B be a formula of the resource logic L. Assume n is the number of all subformulas of B. Then we have:

L ⊢ B iff in classical logic φL ⊢ B_{∅}^{∗}.

For the case of relevance logic R, φR also says that ⊗ is commutative and idempotent (ie φR gives all axioms true of set union).

Let us now try the left transitivity axiom of CL, namely

∅ : (B → C) → ((A → B) → (A → C))

the ∗ translation is

∀^{∗}x((B → C)_{x}^{∗} → ((A → B) → (A → C))_{∅⊗x}^{∗}
= ∀^{∗}x(∀^{∗}y(B(y) → C(x ⊗ y)) → ∀^{∗}z((A → B)_{x}^{∗} → (A → C)_{x⊗z}^{∗}))
= ∀^{∗}x(∀^{∗}y(B(y) → C(x ⊗ y)) → ∀^{∗}z(∀^{∗}u(A(u) → B(z ⊗ u)) →
∀^{∗}s(A(s) → C((x ⊗ z) ⊗ s))))

This sentence should follow from φCL.

To prove the formula in classical logic from φCL, we skolemise and get that the following assumptions must entail the conclusion.

1. atom (x_{0})

2. ∀^{∗}y(B(y) → C(x_{0} ⊗ y))

3. atom (z_{0})

4. ∀^{∗}u(A(u) → B(z_{0} ⊗ u))

5. atom (s_{0})

6. A(s_{0})

The conclusion is

C((x_{0} ⊗ z_{0}) ⊗ s_{0})

To prove this we substitute s_{0} in (4) and get from (4) and (6) B(z_{0} ⊗ s_{0}). We then substitute (z_{0}⊗s_{0}) in (2) and get C(x_{0}⊗(z_{0}⊗s_{0})). φCL ensures associativity and thus the desired conclusion is obtained.

We now try to prove left transitivity, namely try to prove

∅ : (A → B) → ((B → C) → (A → C))

We translate in stages. The ∗ translation is:

∀^{∗}x ((A → B)_{x}^{∗} → ((B → C) → (A → C))_{∅⊗x}^{∗})
= ∀^{∗}x[∀^{∗}y(A(y) → B(x ⊗ y)) → ∀^{∗}z((B → C)_{z}^{∗} → (A → C)_{x⊗z}^{∗}))
= ∀^{∗}x(∀^{∗}y(A(y) → B(x ⊗ y)) →
∀^{∗}z(∀^{∗}u(B(u) → C(z ⊗ u)) → ∀^{∗}s(A(s) → C((x ⊗ z) ⊗ s))))

This sentence does not follow from φCL. However, the sentence should be a theorem of classical logic, given the boolean axioms on ⊗ as a set union, ie φR proves this sentence.

The importance of the above translation into classical logic is twofold. First it allows us to have as a metalanguage for LDS a very familiar and comfortable logic, namely classical logic. Second it allows us to develop automated dedution capability for the new logics via existing automated deduction machines and techniques in classical logic. We may have to modify existing machines but in many cases this is worthwhile. Of course there will always be the need to do automated deduction directly on the new logic and not through translation. The translation however adds another dimension to our understanding of the new logics.

8.3 Linked predicate languages: classical logic as a metalanguage

So far we have discussed, to various degrees of detail, three seemingly independent families of concepts:

• We discussed the proposed LDS discipline.

• We discussed at the beginning of this chapter the possibility of two languages L_{1} and L_{2} being linked in some way and through that link one can implement some meta-level features of the other. This was shown to be a way of looking at LDS, namely that we are linking the labels of the algebra with the formulas.

This linkage of A and L can be done for any two predicate systems within predicate logic.

• We also saw how an LDS system say (A, L) can be translated into two sorted classical logic, with two sorts, one for the labels and one for formulas. We thus have t : A(x) is translated into A^{∗}(t, x). t is a term in A, A a wff in L. The sort t is from the algebra and so has an algebraic language for manipulating it. A^{∗} is a predicate of two sorts.

There is a more general way of looking at what we are doing, which is quite independent of the above particular examples. It has to do with linking two languages via the sharing of variables. The task of this section is to develop this theme.

We show how to prepare (separate, present) classical logic as a two sorted system so that it can serve as a target for translation. For this we need to ‘link’ predicate languages, which we denote by G and L to emphasize the complete generality.

Obviously a lot depends on the mechanism of ‘linking’. We are going to clarify this notion for the case of two predicate logic theories. This will suffice for the handling of reduction of LDS or temporal logic into classical logic. G acts as object level language implementing meta-level restrictions on L.

Consider the first order language G with a binary relation < and variables {t, s, …}. Think of it as a theory of the flow of time. Consider the predicate language L, with variables {x_{1}, x_{2}, …} and predicates A(x_{1}, …, x_{n}), B(y_{1}, …, y_{m}). The formal operation of what we have done was to ‘combine’ these two languages by replacing L by L^{∗}, where L^{∗} is a two sorted language, with variables {t, s, …} and {x_{1}, x_{2}, …} and taking as atomic predicates the two sorted predicates A^{∗}(t, x_{1}, …, x_{n}), B^{∗}(s, y_{1}, …, y_{n}), etc.

We allow for common quantification and mixed wffs. Thus we can write for example the mixed formula φ(t)

φ(t) = ∀s(t < s → A^{∗}(t, x_{1}, …, x_{n}))

which you will recognize as the truth table for ‘GA(x_{1}, …, x_{n}) holds at t’.

Formally φ is just a formula in the mixed language. Let us give a quick definition to clarify our concepts before we continue our discussion.

Definition 8.3.1 (the two sorted language L_{k}^{∗}(G)) Let L and G be the two languages. Both L and G have atomic predicates. Let L_{k}^{∗} be obtained from L by replacing each atomic predicate R(x_{1}, …, x_{n}) of L by R^{∗}(t_{1}, …, t_{k}, x_{1}, … x_{n}) where t_{i} are variables of a new sort. Thus the resulting L_{k}^{∗} is a two sorted language, with the new sort for t-variables. We allow quantification over t-variables. The intention is that the t-variables will be from the language G.

1. The atomic wffs of L_{k}^{∗}(G) are of the form R^{∗}(t_{1}, …, t_{k}, x_{1}, …, x_{n}), where R(x_{1}, …, x_{n}) is an atomic wff of L and t_{1}, … t_{k} are terms of G, or of the form Q(t_{1}, …, t_{m}), where Q(t_{1}, …, t_{m}) is an atomic wff of G.

2. If φ and ψ are wffs of the language with t free in φ and x free in φ then φ ∧ ψ, φ ∨ ψ, φ → ψ, ∼ φ, ∀tφ, ∀xφ, ∃tφ, ∃xφ are wffs of the language.

Example 8.3.2 1. Let G be the language of order < and let L be classical predicate logic. L_{1}^{∗}(G) gives a language with atoms R^{∗}(t, x_{1}, … x_{n}), which we used in the previous example to mean ‘R is true at t’.

2. The language G can be a meta-language. Consider a propositional language, e.g. the propositional language with ¬, ∧, ∨ and →. For each wff A of the propositional language introduce a constant τ_{A}. Introduce the operations f_{∼}(τ_{A}) = τ_{∼A} f_{∧}(τ_{A}, τ_{B}) = τ_{A∧B} and similarly f_{∨} and f_{→}. Let G be the language with τ_{A} as terms and {f_{∼}, …} as functions. The language L_{1}^{∗}(G) talks about the formulas of the propositional language as labels R^{∗}(τ_{A}, x_{1}, … x_{n}) represents A : R(x_{1}, … x_{n}), where A acts as a label.

The above linkage is still not the most general case. To get an idea of what we need, consider the following set-up. Consider a distributed system of stations s_{1}, s_{2}, s_{3}, … related in some manner. Each station has its own internal structure and language L. Assume they all use the same language and logic. We also need a global configuration language to describe how these stations are related. This language denoted by G (for global) need not be the same logic as L. For example G can be based on intuitionistic logic, while L is based on classical logic. L may be a Horn clause logic programming language while G could be a form of Petri net langauge. The stations s_{i} need to communicate, so they would have output and input ports which can be accessed by the other stations. For simplicty assume that there are some variables x_{1}, …, x_{k} which can be accessed by the stations. This means that the language G can talk about x_{i}.

If we want to link these two languages into one, we can form the syntactic combination L_{k}^{∗}(G) of the previous definition. The additional feature to worry about is that the logic of G and L may not be the same. Consider the following cases: (A^{∗}(t, x) could mean ‘at station t mailbox x is down’, and B^{∗}(t, x) can mean ‘at station t printer x is down’.)

1. A^{∗}(t, x) → B^{∗}(s, y).

2. A^{∗}(t, x) → B^{∗}(t, y).

3. A^{∗}(t, x) → B^{∗}(s, x).

4. A^{∗}(t, x) → B^{∗}(t, x).

In cases 2 and 4 we can say that this is an internal statement of station t and hence the implication follows the logic of L. In case 3 we can use the logic of G as this is a relation between stations.

What do we do in case 1?

The simplest course of action is to understand it as a relationship between stations and hence use the logic of G. We thus have a simple rule. Any formula with different station constants in it is to be manipulated logically according to G but if the constants are equal, it is to be manipulated according to L. In fact once we agree to that, different stations can have different logics, L_{t}. They must all be based on the same language.

We have one restriction on the system, that is the configuration logic must be sound with respect to the station logics. In symbols, Δ ⊢G A in the configuration logic implies Δ ⊢L A in the station logic. The reason for that is unification. We must be able to reason about two possibly different stations in G and if we identify them our reasoning (now in L) must still be valid.

We now consider the Horn clause fragment of L_{k}^{∗}(G). The modal and temporal logics of the case studies used the language G with <, the linking of classical predicate logic with the theory of order <. In fact, we were operating in the Horn clause fragment of L_{1}^{∗}(<). We should therefore define the Horn clause fragment of L_{k}^{∗}(G) in general.

Definition 8.3.3 (The Horn clause fragment of L_{k}^{∗}(G)) 1. Any atom of the form R^{∗}(t_{1}, …, t_{k}, x_{1}, …, x_{n}) of L_{k}^{∗} and Q(t_{1}, …, t_{m}) of G is in the Horn clause fragment and in the generated body fragment.

2. If A and B are in the Horn clause fragment or in the generated body fragment then so are A ∧ B, ∀xA, ∃xA, ∀tA, ∃tA.

3. If A is in the generated body fragment and B is in the Horn clause fragment then A → B is in the Horn clause fragment.

Example 8.3.4 1. If A(t, x), B(s, y) are atomic, then A′ = ∀t∃xA is in the atomic fragment and C = A′ → ∃s∀yB is in the Horn clause fragment. In classical logic, one can write C as:

∃t∀x∃s∀y(A → B)

because we can pull the quantifiers to the front and hence the previous definition can be simplified. In intuitionistic logic this is not possible and so we need clause 3 of the previous definition and the notion of atomic fragment, in order not to be committed to classical logic.

2. Notice that for k = 1 and G the theory of order <, the Horn clause fragment of L_{1}^{∗}(<) gives us the Horn fragment for temporal logic.

The above discussion about linking two languages L and G is a general discussion of how a language G can be linked to a language L and ‘influence it’ by forming L_{k}^{∗}(G). We gave no particular meaning to this operation beyond the ‘meta-level’ one. We did see that this linkage did generalize the special construction of PC in the previous section. G corresponded to the time order relation < and L corresponded to the predicate logic. The linkage formulated in Definition 8.3.1 allows for linking arbitrary G and L.

Can we give modal or temporal meaning to L_{k}^{∗}(G) for arbitrary G and L?

Furthermore, we have the following diagram, which we want to generalize:

[figure: semantics with <; Possible world; G(with <); First order language; where L= predicate logic; PC = L_{1}^{∗}(<); logic TL; Temporal]

We want to complete the following diagram:

[figure: predicate logic; G an arbitrary; L= predicate logic; L_{m}^{∗}(G); to G; semantics corresponding; Is it Modal_{m}(L, G); What language?; Possible world]

What would be the counterpart of TL for arbitrary G and L?

Obviously we must generalize the notion of a temporal connective based on time ordering < to some general modal connective based on some language G.

We are now ready to define a modal logic Modal(L, G) of L and G. To explain our options, let us reconsider the basic temporal connectives F and P. The truth table for F A(x) is: F A(x) is true at t iff for some s > t, A(x) is true at s.

If A(x) is atomic, we translate it into A^{∗}(t, x), understanding A^{∗}(t, x) as ‘A(x) is true at t’ and thus we get:

F A(x) is true at t iff ∃s(t < s ∧ A^{∗}(s, x))

or

(F A(x))_{t}^{∗} = ∃s(t < s ∧ A^{∗}(s, x)).

In L_{1}^{∗}(<), < is the atomic relation of the order. A^{∗}(t, x) is an atomic relation of L_{1}^{∗}. ‘F ’ represents the existential quantifier on the variable s in t < s ∧ A^{∗}(s, x) and it is denoted by ‘F ’. The existential quantifier on t would be ∃t(t < s ∧ A^{∗}(t, x)) and that would correspond to ‘P ’.

Let us generalize this situation to L_{1}^{∗}(G). Here the atoms A^{∗}(t, x) are still the same, but the atoms of G could be any Q(t_{1}, …, t_{m}). The parallel construction would be:

∃t_{i}(Q(t_{1}, …, t_{i}, …, t_{m}) ∧ A^{∗}(t_{i}, x)).

We could introduce for each atom Q(t_{1}, …, t_{m}) of G and each 1 ≤ i ≤ m the existential connective ♢_{Q,i}A(x) to mean

(♢_{Q,i}A)_{t}^{∗} = (def) ∃t_{i}[Q(⋯ t_{i} ⋯) ∧ A^{∗}(t_{i}, x)].

Similarly we can define □_{Q,i}A

(□_{Q,i}A)_{t}^{∗} = (def) ∀t_{i}[Q(⋯ t_{i} ⋯) → A^{∗}(t_{i}, x)].

These correspond to ‘G’ and ‘H’ of temporal logic. To summarize we have:

\begin{aligned}□_{<,2} & = G \\ □_{<,1} & = H \\ ♢_{<,2} & = F \\ ♢_{<,1} & = P \end{aligned}

Let us consider what Since(A, B) does in this context.

S(A, B) is true at t iff ∃s < t[A is true at s and ∀y(s < y ∧ y < t implies B is true at y)].

Let ψ_{S} be the following formula in a language with < and the two new monadic predicates Q_{1} and Q_{2}:

ψ_{S}(t, Q_{1}, Q_{2}) = (def) ∃s < t[Q_{1}(s) ∧ ∀y(s < y ∧ y < t → Q_{2}(y))].

Then we have S(A, B) is true at t iff ψ_{S}(t, A^{∗}, B^{∗}), where A^{∗}, B^{∗} are considered monadic predicates in the G sort.

To generalize the above, let G_{1}^{+} be the extension of the language of G with new monadic predicates {Q_{1}, Q_{2}, …}. Let ψ(t, Q_{1}, …, Q_{n}) be a formula of G_{1}^{+} with 1 free variable t and the n new monadic predicates. Let A_{1}^{∗}, …, A_{n}^{∗} be n formulas of L_{1}^{∗}, which can be considered monadic in the sort t. We can introduce the n place connective ♯(A_{1}, …, A_{n}) with the truth table

♯(A_{1}, …, A_{n}) true at t iff ψ(t, A_{1}^{∗}, …, A_{n}^{∗}).

We will now give the general definition and an example.

Definition 8.3.5 Let G, L be two languages. We construct the modal language Modal_{m}(L, G) as follows:

1. Let G_{m}^{+} be the language G supplemented with an infinite sequence of new m place atomic predicates {R_{1}, R_{2}, …}.

2. Let L_{m}^{∗}(G) be the language obtained from L as in Definition 8.3.1. We can regard each atomic formula A^{∗}(t_{1}, …, t_{m}, x_{1}, …, x_{n}) as m-place atomic in the variables t_{1}, …, t_{m}.

3. Let G be any model of G. We regard G as a model of possible worlds. With each t_{1}, …, t_{m} ∈ G, associate a model L_{(t_{1},...,t_{m})} of L. Assume all the L_{(t_{1},...,t_{m})} models have the same domain D (constant domain semantics). We refer to (G, L_{(t_{1},...,t_{m})}) as a modal model.

4. For each wff ψ(t_{1}, …, t_{m}, R_{1}, …, R_{n}) of G_{m}^{+} with t_{i} free and R_{i} new atomic predicates, associate a n place connective ♯_{ψ}. The full modal language Modal_{m}(L, G) is L ∪ {♯_{ψ} | ψ ∈ G_{m}^{+}}.

Definition 8.3.6 Given a modal model (G, L_{(t_{1},...,t_{m})}) and an assignment h of L into D, a model G^{h} of G_{m}^{+} is induced on G as follows.

Let A^{∗}(t_{1}, …, t_{m}, x_{1}, …, x_{n}) be an atom of L_{k}^{∗}. It can be viewed, for x_{1}, …, x_{n} fixed, as an atomic predicate of G_{m}^{+}. Let the extension of this predicate in G be {(t_{1}, …, t_{m}) | L_{(t_{1},...,t_{m})} ⊨ A(h(x_{1}), …, h(x_{n}))}.

We define the notion of a formula A(x_{1}, …, x_{n}) of Modal_{m}(L, G) holding at the indices (t_{1}, …, t_{m}), notation ∥A∥_{t_{1},...,t_{m}}^{h} = 1, as follows:

1. ∥A∥_{(t_{1},...,t_{m})}^{h} = 1 iff (def) L_{t_{1},...,t_{m}} ⊨ A(h(x_{1}), …, h(x_{n})).

∥A∥_{t_{1},...,t_{m}}^{h} = 0 otherwise.

2. ∥A ∧ B∥^{h} = 1 iff ∥A∥^{h} = ∥B∥^{h} = 1.

3. ∥ ∼ A∥^{h} = 1 iff ∥A∥ = 0.

4. ∥∃xA(x)∥^{h} = 1 iff for some d ∈ D, and h_{1}, such that h_{1}(x) = d and h_{1} agrees with h on all other variables we have ∥A(x)∥^{h_{1}} = 1.

5. ∥♯_{ψ}(A_{1}, …, A_{n})∥_{t_{1},...,t_{n}}^{h} = 1 iff G_{m}^{+} ⊨ ψ(t_{1}, …, t_{m}, Q_{1}, …, Q_{n})

where G_{m}^{+} is the extension of G to a model of the language G_{m}^{+} by the assignment Q_{i} = {(t_{1}, …, t_{m}) | ∥A∥_{t_{1},...,t_{m}}^{h} = 1}.

6. Let K be a class of G models (G, (s_{1}, …, s_{m})) with a distinguised seqeunce of s_{i} ∈ G. Let φ be a formula of Modal_{m}(L, G). We say K ⊨ φ iff for all models (G, L_{(t_{1},...,t_{m})}) and all h, ∥A∥_{s_{1},...,s_{m}}^{h} = 1.

Example 8.3.7 To show the generality of the previous definition, we give an example from resource logics. Let G be a commutative semigroup with multiplication ∗ and a unit e. That is, we have the axioms:

1. ∀xyz((x ∗ y) ∗ z = x ∗ (y ∗ z)).

2. ∀xy(x ∗ y = y ∗ x).

3. ∀x(e ∗ x = x).

Let L be classical propositional logic. Consider the formulas ψ(t, Q_{1}, Q_{2}) and φ(t, Q_{1}, Q_{2}) where:

ψ(t, Q_{1}, Q_{2}) = def ∀y[Q_{1}(y) → Q_{2}(t ∗ y)]
φ(t, Q_{1}, Q_{2}) = def ∃xy[Q_{1}(x) ∧ Q_{2}(y) ∧ t = (x ∗ y)].

Then the logic with the connectives ♯_{ψ}(A, B) and ♯_{φ}(A, B) is linear logic with linear implication and external conjunction.

♯_{ψ}(A, B) = A ⊸ B
♯_{φ}(A, B) = A ⊗ B.

The semantics induced on these connectives by the general definition can be directly defined as follows.

The set of possible worlds is a semigroup G. The propositional assignment h gives a truth value to every atom at a point i.e. h(t, q) ∈ {0, 1} for t ∈ G, q atomic. The truth conditions for ⊸ and ⊗ are as follows:

∥A ⊸ B∥_{t}^{h} = 1 iff ∀y(∥A∥_{y}^{h} = 1 implies ∥B∥_{t∗y}^{h} = 1)

∥A ⊗ B∥_{t}^{h} = 1 iff for some x, y we have ∥A∥_{x}^{h} = 1 and ∥B∥_{y}^{h} = 1 and t = x ∗ y.

We have ⊨ A iff for all G and all h, ∥A∥_{1}^{h} = 1.

8.4 The meta-language HFP: computational classical logic

The previous two sections studied first the possiblity of classical logic serving as a meta-language, and second the general mechanism of linking two languages G and L, so that the linkage can implement meta-language features of the modal system based on G. In both cases our examples used classical logic for L. Since different languages G seem to serve as the object language which implements the meta features involved turning classical logic L into different new logics L_{1}^{∗}(G), we ask ourselves, is there a convenient general purpose language M which is specially suited for expressing meta language features, and which will contain all the L_{1}^{∗}(G)?

The answer is yes. The language we have in mind is the language HFP.^{1}

The relevance of the existence of HFP to the Debate is as follows. We claim that classical logic or its variants are universal languages at least from the point of view of automated deduction. So given for example an arbitrary logic N we can translate it into L_{k}^{∗}(G), for some suitable G (usually obtained from the semantics or equivalent LDS proof theory of N), an appropriate dimension k and classical logic L. This method suffers from some disadvantages. The target system is many sorted and may be computationally inconvenient. We also get for different N_{1}, N_{2}, … different target many sorted languages L_{k(i)}^{∗}(G_{i}), i = 1, 2, . . .. We would like one very nice language which is convenient and can serve any logic N. We propose the language HFP and we will show at the end of this section how any logic N and any L_{k}^{∗}(G) can be nicely translated into HFP.

1In fact, the Logic Programming Community, when working in extensions of logic programming, are actually working in HFP, more specifically in Horn clause HFP which, you will be surprised to learn, is essentially Microprolog. Unfortunately, no one uses Micro-prolog anymore.

We begin by describing the intuition behind the language HFP. Consider first propositional temporal logic, formalized in the usual way, via the addition of extra connectives to classical propositional logic. Assume the connectives are F A and P A, ‘A will be true’ and ‘A was true’ respectively.

In symbols:

∥F A∥_{t} = 1 iff ∃s > t ∥A∥_{s} = 1
∥P A∥_{t} = 1iff ∃s < t ∥A∥_{s} = 1.

Suppose we want to choose the first moment s_{0} such that s_{0} > t and ∥A∥_{s_{0}} = 1, assume such a moment exists. This moment is a function of t and A. Let us denote it by s_{0} = f_{1}^{1}(A, t). Here f_{1}^{1} is a two place function, taking a formula and a point and yielding a point.

Consider now the connective F itself, this connectives takes a formula A yields a formula F A, thus its function is R_{0}^{1}(A).

The functionality of f_{1}^{1} and R_{0}^{1} can be described set theoretically. If X is the set of all points in which A is true, we get

f_{1}^{1}(X, t) = min (X ∩ {s | s > t})
R_{0}^{1}(X) = {s | ∃t ∈ X(s < t)}.

In general we can have general connectives and functions of the form f_{n}^{m}, R_{n}^{m}, taking m formulas and n points and yielding a point or a formula respectively.

To give another example, consider the connective S(A, B). Its meaning is that since a point in the past where A was true, B has been true all the time. We can now form a new connective S_{y}^{x}(A, B) reading since a point t in the past which is different from x in which A is true, B has been continuously true at all points since which are greater than y. This connective has the form S(A, B, x, y).

The language HFP is a general language in which tables and connectives can be described. It allows for predicates R_{n}^{m} and function symbols f_{n}^{m} to take both formulas and terms as arguments.

The use of HFP is not restricted to the meta-level of modal and temporal languages. It is also the meta-language of actual prolog programs. Although officially logic programming deals with the Horn clause fragment of classical logic (possibly with negation by failure), namely with clauses of the form

⋀ A_{i} → B

where A_{i} and B are atoms, in practice the prolog programmer uses HFP as the language. (Negation by failure can be incorporated using a meta-level failure predicate).

Expressions like Hold(A, B), Demo(A(x), B(y)) are written in prolog. The above are expressions of HFP. It may be thought that Demo and Hold are metapredicates. This is partially correct. They have special properites. The variables x and y in Demo(A(x), B(y)) can be quantified and unified. Thus Demo is not like the general metapredicates of a pure meta-language M but rather special and we claim it is like in HFP. (We shall see later in this section how to quantify on seemingly object level variables occurring in a meta-level predicate.)

We see in Definiton 8.4.3 below that HFP is given modal semantics. So the question is whether this semantics is adequate for the way prolog uses the language. We will be in a better position to answer in the next section. The answer in general is no, prolog predicates are not in general modal connectives, but under certain restrictions they can be viewed as such though this is not the most convenient way of looking at them.

We are now ready to define the general meta-language HFP, of Hereditarily Finite Predicates.

208 CHAPTER 8. METALEVEL FEATURES IN LDS

Definition 8.4.1 (The Language HFP) The language contains the classical connectives ∼, ∧, ∨, → and the variables {x, y, z, …} for terms and variables {X, Y, Z, …} for formulas, and the quantifiers ∀ and ∃. There is a list of atomic predicates R_{n}^{m} allowing us to form R_{n}^{m}(ψ_{1}, …, ψ_{m}, x_{1}, …, x_{n}), where ψ_{i} are formula variables or formulas and x_{j} are term variables or terms . There are function symbols f_{n}^{m} allowing us to form f_{n}^{m}(ψ_{1}, …, ψ_{m}, x_{1}, … x_{n}), where ψ_{i} are formula variables and x_{j} are term variables. We define now the notions of a wff and a term of the language HFP.

1. ⊤ is a formula with no free variables.

2. x is a term with x free. Y is a formula with Y free.

3. If ψ_{i}(x_{1}^{i}, … x_{k(i)}^{i}), i = 1, …, m, are formulas with free variables \{x_{1}^{i}, …, x_{k(i)}^{i}\} and F_{j}(\overline{x}_{1}, …, \overline{x}_{r(j)}), j = 1, …, n, are terms with \{\overline{x}_{1}^{j}, …, \overline{x}_{r(j)}^{j}\} as free variables and R_{n}^{m} is a predicate symbol with (m, n) places and f_{n}^{m} is a function symbol with (m, n) places then:

(a) R_{n}^{m}(ψ_{1}, …, ψ_{m}, F_{1}, …, F_{n}) is a formula with the above free variables, namely (\overline{x}_{j}^{i}, x_{s}^{t}), i =

1, …, m, j = 1, …, k(i), t = 1, …, n, s = 1, …, r(t)}.

(b) f_{n}^{m}(ψ_{1}, …, ψ_{m}, F_{1}, …, F_{n}) is a term with the same free variables as in (a).

The free variables mentioned can be either term or formula variables.

4. If ψ_{1}, ψ_{2} are wffs, then so are ∼ ψ_{1}, ψ_{1} ∧ ψ_{2}, ψ_{1} → ψ_{2}, ψ_{1} ∨ ψ_{2}. ∼ ψ_{1} has the same free variables as ψ_{1}, and ψ_{1} ∧ ψ_{2}, ψ_{2} ∨ ψ_{2} and ψ_{1} → ψ_{2} have a set of free variables which is the union of the sets of free variables of ψ_{1} and ψ_{2}.

5. If ψ(x, y_{i}) is a formula with free variables {x, y_{i}} being either term or formula variables then

∀xψ, ∃xψ are formulas with the free variables {y_{i}}. Example 8.4.2 (Hold predicate) To give some examples consider the Hold predicate. This has the form Hold (ψ, t) = ‘ψ is true at time t’.

We can now write Hold(Hold(ψ, t), s)

‘At time s it was true that ψ was true at t’;

compare this sentence with Thought(Thought(ψ, 0), 5)

‘At time 5 people thought that at time 0 it was thought that ψ was true’;

consider Thought-F(ψ, t) which reads:

‘At time t, ψ was considered true in the future’.

Thus we can write a rule: If at any time you expect to get a budget for a Research Assistant, then hire one. (It may be that you never get the budget!).

∀t[Thought-F(budget, t) → Hire(t)].

We now define several types of models for this language. Definition 8.4.3 (modal semantics) Let D be a nonempty set. A function h is an assignment for HFP iff the following holds:

1. If x is an individual term variable then h(x) ∈ D. If x is a formula variable then h(x) ⊆ D.

2. If R_{n}^{m} is a predicate symbol then h(R_{n}^{m}) is a function with domain (2^{D})^{m} × D^{n} and range 2^{D}.

3. If f_{n}^{m} is a function symbol then h(f_{n}^{m}) is a function with domain (2^{D})^{m} × D^{n} and range D.

4. Given a formula ψ(x_{1}, …, x_{n}) with free variables x_{1}, … x_{n} and a term F (x_{1}, …, x_{n}) with free variables x_{1}, …, x_{n} we define the value h^{∗}(F) ∈ D and h^{∗}(ψ) ⊆ D as follows:

(a) h^{∗}(x) = h(x).

(b) h^{∗}(⊤) = D.

(c) h^{∗}(R_{n}^{m})(ψ_{1}, …, ψ_{m}, F_{1}, …, F_{n}) = h(R_{n}^{m})(h^{∗}(ψ_{1}), …, h^{∗}(ψ_{m}), h^{∗}(F_{1}), …, h^{∗}(F_{n})).

(d) h^{∗}(f_{n}^{m}(ψ_{1}, …, ψ_{m}), F_{1}, …, F_{n}) = h(f_{n}^{m})(h^{∗}(ψ_{1}), …, h^{∗}(ψ_{m}), h^{∗}(F_{1}), …, h^{∗}(F_{n})).

(e) h^{∗}(∼ φ) = D − h^{∗}(φ)

h^{∗}(φ ∧ ψ) = h^{∗}(φ) ∩ h^{∗}(ψ).

(f) h^{∗}(∀xψ(x)) = ⋂_{d∈D} h_{x/d}^{∗}(ψ(x)) where h_{x/d} is the function which differs from h only by having h_{x/d}(x) = d i.e. h_{x/d}(y) = h(y) for y ≠ x h_{x/d}(y) = d for y = x. Similarly h^{∗}(∃xψ(x)) = ⋃_{d∈D} h_{x/d}^{∗}(ψ(x)).

5. (a) A model is a domain and an assignment, (D, h).

(b) A formula ψ holds in a model if h^{∗}(ψ) = D.

(c) A formula ψ is valid if it holds in all models.

Example 8.4.4 1. Consider classical propositional temporal logic. We can associate with any atomic proposition q a 0-place predicate Q of HFP. The domain D is time and assume an order < on D. Q is a (0, 0) predicate. Let F be the (1, 0) predicate F(Q). Let h_{<}(F)(Y), for Y ⊆ D be the set Y^{+} = {s | ∃y ∈ Y s < y}. Then if h_{<}(Q) is the set where q is true then h_{<}^{∗}(F Q) is the set of points where F q is true.

2. Consider the example in (a) above and consider the connective (predicate) F(Q, x). F is a (1, 1) predicate. It corresponds in the propositional temporal logic to a labelled connective F^{x}q. We may have for example F^{x}q true at t iff t < x and q true at x. In HFP the assignment would be:

h_{<}(F)(Y, x) = {t | t < x and x ∈ Y }.

3. Notice that the Hold predicate of Example 8.4.2 should be of type Hold_{0}^{1}, i.e. Hold(A) if the modal semantics associates a set with it. Thus Hold(A) ≡ A, i.e. h(Hold) ≡ identity.

The above discussion gave to HFP modal semantics. This semantics is adequate for describing the modal and temporal applications of HFP, as it talks about truth conditions of connectives. However, it does not seem satisfactory in explaining the way HFP predicates are used in practical prolog programs. Whenever we write in prolog a clause of the form

Hold(Demo(A(x), B(y)) ∧ A(z)) → B(z).

We are using HFP expressions involving predicates of predicates. Sometimes we even write clauses of the form

X → P (X)

which play an important role in metaprogramming.

For example the clause

Hold(φ) if φ

may look more familiar to the reader.

The logical status of these phrases and their semantics have to be explained. The main characteristic feature of such use is that the variables in the clauses can unify and change value. Thus it is not immediately obvious whether one can say that in the expression φ(A(x), x), A(x) is a name of a formula. If A(x) represents the wff A(x) (i.e. what we really have is φ(‘A(x)’, x), then the ‘x’ in A(x) cannot change or unify, certainly not in uniformity with the other x. In practice of course when ‘x’ is unified to be ‘a’, we get φ(A(a), a) and not φ(‘A(x)’, a).)

We thus need to explain the above for the case of HFP, because like in prolog, HFP allows for x to be free in φ(A(x), x) in both places.

Notice that in the modal semantics the above are interpreted as connectives. So for example φ(B, y) can be interpreted as the connective saying: B will always be true but not later than time y, and A(x) can be interpreted as saying: Time x is in the future (of now). Together we form φ(A(x), x) to mean: Time x will always be in the future but not later than time x, which is really a temporal tautology.

We now proceed to give the meta-level semantics for HFP, as opposed to the modal semantics. Our strategy is to begin with ordinary predicate logic, describe a meta-language M for it and identify HFP as part of the meta-level description of predicate logic in M.

Definition 8.4.5 (Term translation) Let L be predicate logic with predicate symbols {P_{i}, i = 1, 2, 3, …} which are n_{i} place; variables {x_{i}, y_{i}, …} and constants {a_{i}, b_{i}, …}. The language L may contain the classical connectives and in general a stock of m-place connectives of the general form ♯(A_{1}, …, A_{m}). We refer to L as the object language. A language M is said to be a metalanguage for L if it is capable of naming the symbols of L and contains the following representing terms (this translation is referred to as term translation):

1. For each symbol of L there exists a possibly unique name which is a term of M. The naming function is denoted by quotation marks.

• variables x_{i} are named ‘x_{i}’

• constants a_{i} are named ‘a_{i}’

• predicate symbols P_{i} are named ‘P_{i}’.

2. For each P_{i}, which is n_{i} place predicate, there exists a function f_{i} of the meta-language M, satisfying the following: f_{i}(‘P_{i}’,‘t_{1}’, …, ‘t_{n_{i}}’) = ‘P_{i}(t_{1}, … t_{n_{i}})’. In fact, we can take the above as a definition of the name of P_{i}(t_{1}, …, t_{n_{i}}).

3. There exist functions f_{∧}, f_{∨}, f_{→}, f_{∼}, f_{∀} and f_{∃} and f_{♯} for each m-place connective, satisfying equations as follows:

• f_{∧} ( ‘A’, ‘B’ ) = ‘A ∧ B’

• f_{∨} ( ‘A’, ‘B’ ) = ‘A ∨ B’

• f_{→} ( ‘A’, ‘B’ ) = ‘A → B’

• f_{∼} (‘A’) = ‘∼ A’

• f_{∀} (‘A’, ‘x’) = ‘∀xA(x)’

• f_{∃}(‘A’, ‘x’) = ‘∃xA(x)’

• f_{♯} (‘A_{1}’, …, ‘A_{m}’) = ‘♯(A_{1}, …, A_{m})’.

4. There are functions Sub, s and n satisfying the following, for terms t:

n(t) = ‘t’ s(‘t’) = t Sub (‘A(x)’, ‘x’, n(t)) = ‘A(t)’ where t is any term and ‘t’ is its name.

Note that Sub is a substitution function. We can assume that f_{♯}, f_{i}, f_{∧}, f_{∨}, f_{∼}, f_{∃} and f_{∀} are actual function symbols of M and thus actually define the terms which name the formulas. Sub cannot be assumed as a function symbol because then a formula might have several names. In general meta-level language with functions representing substitution, the names will not be unique. Several function symbols including the substitution function symbol can combine to yield names for a formula in several different ways. If we choose a unique name via our formula construction functions as we did, the substitution function may not be representable.

So we have to assume that Sub is somehow definable in M. An alternative is to take Sub as a function symbol and add axioms to M to make things right.

Lemma 8.4.6 Let φ(x_{1}, …, x_{n}) be a formula, then there exists a term f_{φ}(x_{1}, …, x_{n}) of M with free variables x_{1}, …, x_{n} (ranging over names) such that

f_{φ} (‘a_{1}’, …, ‘a_{n}’) = ‘φ(a_{1}, …, a_{n})’.

Proof. By induction on the structure of φ. For atomic φ = P_{i}(x_{1}, … x_{n_{i}}), we have

f_{φ} = (def) f_{i}(‘P_{i}’, x_{1}, …, x_{n_{i}}).

If there exist terms f_{A} and f_{B} for A and B then f_{A♯B} = f_{♯}(f_{A}, f_{B}) for ♯ standing for ∧, ∨, → and similarly for ∼ and for a general m-place ♯.

Let φ = ∀xψ(x). Let f_{ψ} be given. Then f_{φ} = f_{∀}(f_{ψ}, ‘x’). Similarly for φ = ∃xψ(x). ■

Definition 8.4.7 (meta-level semantics) Let M be a model of M. Let Hold be a unary predicate of M. We can derive from M and Hold a model A of L by defining

A ⊨ P (a_{1}, …, a_{n}) iff (def) M ⊨ Hold(‘P (a_{1}, …, a_{n})’).

We called Hold a Hold predicate because we expect that for any φ(a_{1}, …, a_{n}) we have:

A ⊨ φ(a_{1}, …, a_{n}) iff M ⊨ Hold(‘φ(a_{1}, …, a_{n})’).

This will not be the case unless we require axiomatically in M that Hold satisfies some axioms for example:

Hold(‘A’) ∧ Hold(‘B’) ↔ Hold(f_{∧}(‘A’, ‘B’))

and similarly for the other connectives and quantifiers.

Note the quantifier axioms are:

∀xHold(f_{φ(x)}(x)) ↔ Hold(f_{∀xφ(x)})
∃xHold(f_{φ(x)}(x)) ↔ Hold(f_{∃xφ(x)}).

Remark 8.4.8 Note that if we have Sub then we can define the diagonal function by:

Diag (‘A(x), ‘x’) = def Sub (‘A(x)’, ‘x’, f_{∼} (‘A(x)’)).

Recall that using the Diag function one can prove Tarski’s inconsistency theorem, that there exists no truth predicate for M in M. Thus we cannot have a Hold predicate satisfying the axiom

Hold (‘A’) ↔ A

and allow Diag to apply to Hold as well, because these conditions yield Tarski’s inconsistency theorem. We need not worry however about this aspect. First, our aim is to provide semantics for HFP and prolog practice in order to do our ‘computational classical logic’, rather than construct self reflective languages which have their own truth predicates. So we do not mind to have the Hold predicate not to apply to itself. See the Perlis papers [Perlis, 1985, Perlis, 1988] for a good coverage of the subject. Second, in the Horn clause fragment of HFP negation is not available and it is possible to have a truth predicate in the object level for the object language itself, without leading to contradiction. The worst we can get are loops, if we use negation as failure. We cannot diagonalize with A(‘¬A’), with ¬ being negation as failure because its meaning is procedural. Even when it is given a declarative semantics, say sem(A), we will get the formula A(∼ sem(‘A’)) which is not a direct diagonalization. More directly we can define a fail connective via a program Δ, then we can only have fail_{Δ} as a connective and we get A(‘fail_{Δ}A’) for the diagonal function. In this case we get stratification of fail and we do not have a universal object level diagonalization.

We shall not pursue this topic any further, and will continue with the business at hand.

We are now in a position to explain what a formula of HFP stands for. We refer to the interpretation presented in the sequel as the term interpretation for HFP. Compare with Definition 8.4.5. The object language L of that definition is HFP and the meta-language M of the definition is classical logic. Note that since HFP extends classical logic we can say we are translating it into itself.

Suppose we name each letter x, P_{i}, a by itself. This can technically mean that we identify L as part of M. Thus P_{i}, x_{i} and a_{i} are already terms of M. We let ‘a_{i}’= a_{i}, ‘P_{i}’ = P_{i} and ‘x’ = x in M, for these particular symbols. We can define predicates Pred(t), Term(t), Var(t), wff(t) and Free of M with the axioms:

• Term (a_{i}), i = 1, …

• Var (x_{i}), i = 1, …

• Pred (P_{i}), …

• wff (f_{i}(P_{i}, a_{1}, …, a_{n_{i}})

• wff (f_{i}(P_{i}, x_{1}, …, x_{n_{i}}))

• wff (f_{i}(P_{i}, α_{1}, …, α_{n_{i}}), where α_{i} are metalinguistic variables representing a choice of either a variable x or a term a of L. So for each such choice we get an axiom of M.

• Free (f_{i}(P_{i}, α_{1}, …, x_{j}, …, α_{n_{i}}), x_{j})

• wff (A) ∧ wff(B) → wff(f_{♯}(A, B))

• wff (A) ∧ Free(A, x) → Free(f_{♯}(A, y), x)

where y is a metavariable and ♯ is one of ∧, ∨, →, ∼.

• wff (A) ∧ Free(A, x) → wff(f_{∀}(A, x))

• wff(A) ∧ Free(A, x) → wff(f_{∃}(A, x))

• wff(A) ∧ Free(A, y) ∧ x ≠ y → Free(f_{∀}(A, x)), y)

where y is a metavariable, i.e. a variable of M.

Having named formulas by themselves we can essentially regard the functions f_{i}(P_{i}, x_{1}, … x_{n_{i}}), f_{∧}, f_{→} etc. to be the connectives themselves, taken as functions. So f_{φ}(‘x_{1}’, … ‘x_{n}’) will be ‘φ(x_{1}, …, x_{n})’ which is φ(x_{1}, …, x_{n}).

If we consider f_{φ}(x_{1}, …, x_{n}) with x_{i} metavariables ranging over names, then in the convention of expressions of L naming themselves we get that it is equal to

φ(x_{1}, …, x_{n}).

Thus we can unify and change x_{i} since they are metavariables.

Consider φ(x, y). This is really a term of M. We can certainly substitute in it the term A(y). We thus get φ(A(y), y) which is an expression of HFP. It really stands for the term f_{φ}(f_{A}(y), y) of the meta-language.

Satisfaction in a model A of φ(A(y), y) means according to the meta-level semantics the satisfaction in a model M of:

Hold(f_{φ}(f_{A}(y), y)).

Since the meta-language is classical logic, the above term will look more familiar if we write it as f_{1}(f_{2}(y), y)), using two unary Skolem functions, f_{1} = f_{φ} and f_{2} = f_{A}. Clearly in classical logic we can have unary predicates such as Q(x). We can consider the formulas Q(f_{2}(y)) and Q(f_{1}(f_{2}(y), y)). These are two non-equivalent formulas of classical logic. In an arbitrary model, one formula may be true while the other may be false, unless we have the equality axiom f_{2}(y) = f_{1}(f_{2}(y), y).

We need one more definition to clarify our meta-level concepts. Let Q be a classical unary predicate and let g(x_{1}, …, x_{n}) be an n-place function. Let M be a model of classical logic with domain D. Define the Q denotation of g in M to be {(d_{1}, …, d_{n}) | d_{i} ∈ D and M ⊨ Q(g(d_{1}, …, d_{n})}.

For the case where Q = Hold, and f_{2}, f_{2} are as above we can examine more closely the connection between the satisfaction of A(d) and φ(A(d), d). The model A has as its domain D terms of the meta-language M which are names of wffs of L. A(d) holds in A iff Hold(A(d)) holds in M.

The set {d ∈ D | M ⊨ Hold(A(d))} is the denotation of ‘A’ (i.e. of f_{A}) and is a subset of the domain D. The denotation of ‘φ’ (i.e. f_{φ}) is similarly a subset of D×D. For d_{0} ∈ D, f_{A}(d_{0}) = A(d_{0}) ‘A(d_{0})’ is a term in D. A ⊨ A(‘A(d_{0})’) may or may not hold, i.e. M ⊨ Hold(A(A(d_{0}))) may or may not hold. There is no connection in general between the denotation of ‘A’ and the term ‘A(d_{0})’. We do not necessarily have f_{A}(d_{0}) ∈ {d ∈ D | M ⊨ Hold(f_{A}(d))}.

Thus in the model M and consequently in A the predicate ‘A’ has three ‘manifestations’ or ‘footprints’, one as {d ∈ D | M ⊨ Hold(A(d))} one as a function symbol f_{A} and one as a term ‘A’ in D (i.e. the name of f_{A}). Hold (‘A’) also has a value in M, so does Hold(‘A( ‘A’)’) etc. These values are all independent. An HFP axiom of the form X → B(X) for X formula variable can be taken to mean in M the axiom Hold (X) → Hold(B(X)), which is a connection axiom of the Hold in M. For example the axiom Hold(A(y)) → Hold(A(A(y))), means Hold(f_{A}(y)) → Hold(f_{A}(f_{A}(y))).

We can in M read ‘A’ as representing the set {y | A ⊢ A(y)}. Terms of the form f_{φ}(‘A’, y) can be written in the meta-language and we can understand them in the object language as φ(λxA(x), y).

Example 8.4.9 The modal and temporal semantics provides us with examples of the above situation. A formula may be true at points of the interval t = [1, 2] of time but whether it is true at the interval itself is another matter. For example, it is not true that one crossed the Atlantic at any moment at the interval [1, 2] but one may crossed the Atlantic at [1, 2]. Connections between values at intervals and values at points are usually given as persistence criteria. For example, the criterion if φ holds at an interval it holds at all subintervals, can be expressed using our language, through axioms like:

φ(‘A’, y) → ∀x ⊆ y φ(‘A’, y)

or

∀x(A(x) → B(x)) → [φ(‘B’, y) → φ(‘A’, y)]

where ‘A’ is the name of the predicate ‘cross the Atlantic’ and ‘B’ is the name of ‘sail a boat’ and φ is some metapredicate, for example φ =Hold.

The above freedom we still have with terms allows us to extend the expressive power of HFP. First let us take any binary atomic predicate of HFP, let us call it P (X, Y) where X and Y are formula variables.

Form the formulas

P^{2}(A_{1}, A_{2}) = (def) P (A_{1}, A_{2})
P^{n+1}(A_{1}, …, A_{n+1}) = (def) P (P^{n}(A_{1}, …, A_{n}), A_{n+1}).

In the language M, there are no axioms connecting Hold(P (X, Y)) with Hold(P (P (X, Y), Z)) and so in M, Hold(P^{n}(X_{1}, …, X_{n})) has no connection with Hold(P^{m}(X_{1}, …, X_{m})) for m ≠ n. However, this trick allows us to regard ‘P ’ as a sequence predicate (i.e. without a fixed number of places) with P (X_{1}, …, X_{n}) holding in A, iff Hold(P^{n}(X_{1}, …, X_{n})) holds in M.

We can thus write our predicate as a set of sequences (P, X_{1}, …, X_{n}), where n is arbitrary.

We can similarly treat function symbols f and write (f, x_{1}, …, x_{n}). If we do the above for any pure formula predicate of the language HFP, we can identify the following Lisp-like fragment of HFP.

Definition 8.4.10 (the sublanguage HFP_{Lisp}) The sublanguage contains formula variables X_{1}, X_{2}, …, term variables and Lisp-predicate letters P_{1}, P_{2}, P_{3}, . . ..

The general notion of a wff of HFPLisp, with free variables is defined in the same way as in the case of Definition 8.4.1 of HFP, except that we replace the formation rule for atoms 8.4.1(3) by the following formation rule (3Lisp): If n is arbitrary and φ_{1}, …, φ_{n} are formulas, or predicate letters or formula variables and P is a predicate letter then (P, φ_{1}, …, φ_{n}) is a formula. We allow the case n = 0 in which case (P) is a formula.

The reader should note the translation ∗ from HFPLisp into HFP. Each P of HFPLisp is read in HFP as a binary predicate.

(P)^{∗} = P (truth, truth) (P, φ)^{∗} = P (truth, φ^{∗}) and

(P, φ_{1}, …, φ_{n})^{∗} = P^{n}(φ_{1}^{∗}, …, φ_{n}^{∗}).

HFP can be translated into a fragment of HFPLisp, via the translation ♯:

P (φ_{1}, …, φ_{n})^{♯} = (P, φ_{1}^{♯}, …, φ_{n}^{♯}).

We are now interested in defining the Horn-clause fragment of HFP and of HFPLisp.

Definition 8.4.11 (Horn Clause fragment of HFP) We follow closely the defining clauses of 8.4.1 and of 8.4.10. Read ‘wff’ as ‘wff in the the Horn fragment’:

1. Same as in 8.4.1

2. Same as in 8.4.1

3. or 3Lisp. Same as in 8.4.1 and 8.4.10 with the restriction that the formulas involved (i.e. φ_{1}, …, φ_{n}, ψ_{1}, …, ψ_{m}, F_{1}, …, F_{n}) are all taken from the Horn fragment.

4. 1. If ψ_{1} and ψ_{2} are in the Horn fragment, so is ψ_{1} ∧ ψ_{2}.

2. If ψ_{i}, φ are atomic i.e. the result of applying clause (3) or (3Lisp) respectively, then ∧ψ_{i} → φ is in the Horn fragment.

5. Same as in 8.4.1 and 8.4.10

The next question to ask is:

Do we have an implementation of the Horn fragment?

The answer is surprisingly yes, we do have in fact an old implementation, as the next remark shows.

Remark 8.4.12 The reader is referred to K. Clark and F. McCabe’s book [Clark and McCabe, 1984] on Micro-prolog. Chapter 9 describes exactly the Micro-prolog system language which is the Horn clause fragment of HFPLisp. Thus there exists implementations of the Horn clause fragment of this language. Micro-prolog on the IBM PC gives access to this language. Later versions of LPA-prolog concentrated on supporting Edinburgh syntax and therefore the original Microprolog syntax has been suppressed in these later versions. Another implementation for the full HFP is essentially the rewrite language PLL of E. Babb [Babb, 1990].

The discussion of the section so far showed that if we name in M elements of HFP by themselves, we get that all formulas of HFP are terms in M. The term functions f_{i}, f_{∧}, f_{∨}, f_{→}, f_{∀}, f_{∼}, f_{∃}, and Sub of Definition 8.4.5 all become familiar operations:

1. The naming function λx‘x’ is the identity.

2. f_{i}(P_{i}, t_{1}, …, t_{n_{i}}) = P_{i}(t_{1}, …, t_{n})

Thus f_{i} is the P_{i} application function.

3. f_{∧} is conjunction ∧ f_{∨} is disjunction ∨ f_{→} is implication → f_{∼} is negation ∼ f_{∀} is universal quantification f_{∃} is existential quantification.

4. Sub is the substitution function s, n are the identity function f_{φ} for a formula φ becomes an application function for φ (just like f_{i} is for P_{i}).

The above functions however are functions in M and can therefore take any term of M. Assume P and Q are two unary predicates of L. Their names in M are also ‘P ’ and ‘Q’. Given a term a of L its name is also ‘a’. The application functions f_{P} and f_{Q} of M allow us to form:

f_{P} (‘P ’, ‘a’)

and we are assured that:

f_{P} (‘P ’, ‘a’) = ‘P (a)’ = P (a) = f_{P} (P, a).

We can, however, formally obtain the following terms of M.

1. f_{P} (‘Q’, ‘a’).

2. f_{P} (‘P ’, ‘Q’).

We have no axioms in M to tell us what the above should mean. The Hold predicate of M would be true or false of the above terms without any restrictions. We do have axioms on Hold to assure us that e.g.

Hold(‘P (a)’ ∧ ‘Q(a)’) ↔ Hold(‘P (a)’) ∧ Hold(‘Q(a)’)

but nothing more, except for some general properties of Hold.

To extend our semantic meaning to terms of the form (1) and (2) above, we can first say that f_{P} , f_{Q} should be the same, namely Application Functions. We can thus replace the n_{i} place function f_{i} by App_{i} and get

App_{n_{i}}(‘P_{i}’, t_{1}, …, t_{n_{i}}) = ‘P_{i}(t_{1}, …, t_{n_{i}})’.

Thus all we need are the functions App_{1}, App_{2}, . . .. So both f_{Q} and f_{P} are App_{1}. This view allows us to ‘compare’ with general λ-abstraction languages.

Furthermore, one can code App_{3}(x, y, z) as App_{2}(App_{2}(x, y), z) and thus all one needs is a binary App function. Further, there is no reason why we cannot take application to be concatenation. Thus f_{i} can be read as concatenation function. This also allows us to regard all predicates as unary predicates. R(x, y) is understood either as R(x)(y) or as R((x, y)). Probably the former is more convenient.

The above syntactical moves do not necessarily involve new semantical commitments. They can be handled as just a matter of notation. We are still left with the problem of the semantical meaning of P (Q) or P (P). If we understand Q to name the set {x | Q(x)}, then we can understand P (Q) as expressing a property of this set. We can now express persistence conditions like

P (Q) → ∀x(Q(x) → P (x)).

In general, P (Q) is independent of P (t_{i}), for t_{i} such that Q(t_{i}) holds. We can see however, that we are touching on the problem of λ-calculus models.

We can still go on and ask what is the meaning of App(‘a’, ‘Q’). This question has now more than one option, since we have already agreed to read ‘Q’ as a name for {x | Q(x)}. We can thus read ‘a’ as a higher predicate on sets Q. It is true of Q iff it is an element of Q:

Hold(a(Q)) iff Hold(Q(a)).

‘a’ can thus be identified with the set of all its properties. This is similar to the Montague semantics.

It is now up to us whether to allow in HFP (say in an extension which we can call HFP^{+}) formulas of the form P (Q) or not. If we do, we can still use the functions of the meta-language M but we would need a semantical interpretation, possibly some sort of λ-calculus model. We will not pursue this line of research in this Chapter. prolog practice, which uses HFP formulas, does not frequently write expressions like:

Demo (Demo, Demo).

Let Δ be an HFP theory. Formally extend Δ to a saturated theory Δ′. Thus whenever Δ′ ⊢ ∃xA(x) then for some terms t, Δ′ ⊢ A(t) and whenever Δ′ ⊢ A ∨ B then either Δ′ ⊢ A or Δ′ ⊢ B. We can now define Hold_{Δ′}(A) iff A ∈ Δ′ and get a model for the Hold predicate of M as applied to the wffs of HFP regarded as M terms.

The term interpretation of HFP can be understood in another way, as notation for generating predicates. To illustrate our view, consider conjunction. It can generate predicates by letting [P ∧ Q](x) mean P (x) ∧ Q(x). This is done in the same way that [∼ A](x) is ∼ A(x) and [□A](x) = □A(x).

If we push this point of view further we can regard any formula φ(x, y) of HFP as a functional λxyφ which takes formulas A, B to form a new formula φ(A, B). This view, although mathematically compatible with the term semantics, is not conceputally compatible with the intuitive way we read prolog. For example, we read Demo(A, B) as B can succeed from A and regard Demo (Demo, x) as meaningless.

Example 8.4.13 We can now show how an arbitrary LDS can be translated into the Horn clause fragment of HFP. Assume the languages G and L of LDS are distinct. Consider a version of HFP based on the union of the languages of G and L together with the additional predicate Label(x, y). we translate α : A as Label(α, A) and all axioms and rules are translated as is. For example

{α : A, β : A ⇒ B \atop β ∗ α : B}

is translated as Label(α : A)∧ Label (β, A ⇒ B) → Label (β ∗ α, B).

8.5 How to give an LDS formulation for a logic

Previous sections discussed LDS formulations of various logics. To widely apply the LDS discipline we must be able to give an LDS formulation to an arbitrary logic. It seems that many logics can be naturally presented through their algebraic semantics. A typical example is many valued logics, where the algebraic presentation is the most natural. Thus if we want to claim that a general logic can be presented as an LDS in a nice way, we must investigate suitable methods of using the algebraic semantics of a logic to turn it into an LDS. We are restricting ourselves to propositional algebraic semantics for two reasons. First because almost all known and useful non-classical logics use the usual quantifiers ∀ and ∃ and differ in their propositional part. Second we find it too difficult and complex to handle general non-standard quantifiers.

We begin by describing what we mean by algebraic semantics for a logic. We want a very general definition that would equally apply to many systems, whether they are monotonic or nonmonotonic. There are many systems which have none of the classical connectives and which satisfy only some very restricted proof theory. There is no agreed standard definition of what is algebraic logic or semantics. Our primary concern in this Chapter is translation into classical logic, so any good definition will do. As it turns out our definitions are of independent interest. The new notion of algebraic logics for general consequence relations will be studied in [Gabbay, 1992b].

Logics can be identified via a general consequence relation Δ |∼ A. This consequence relation will in general be non-monotonic. So we may not know, or have much to say about their consequence relation. We need minimal conditions on |∼ to enable us to define a reasonable algebraic semantics for the logics which will allow us to define good translations into other logics.

Experience leads us to the following definition (which should be compared with more traditional definitions).

Definition 8.5.1 Let L be a language with atomic propositions and connectives.

1. A unitary consequence relation is a relation |∼ between finite (including empty ∅) sets of wffs Δ and single wffs A, which satisfies the following:

• Identity

A |∼ A

• Unitary cut

{Δ |∼ A; A |∼ B \atop Δ |∼ B} .

Note that we do not require reflexivity (Δ, A |∼ A) nor do we require any full version of cut such as:

{Δ |∼ A; Γ, A |∼ B \atop Γ, Δ |∼ B} .

Also note that we need not have substitutivity of equivalents, namely A |∼ B and B |∼ A need not imply φ(A) |∼ φ(B), for arbitrary wff φ(q). Many modal systems fail to have this property, as well as intuitionistic systems with Nelson’s strong negation.

We call the consequence relation unitary because we allow for unitary cut, the ‘unit’ being the single A in the rule A |∼ B, Δ |∼ A implies Δ |∼ B. Also Δ being a set of single, unannotated formulas which is unstructured, as opposed to Δ being a list of wffs or a network of wffs etc.

2. A Hilbert consequence relation is a relation defined only for ∅ |∼ A. A singleton consequence relation is a relation defined only for Δ |∼ A, where Δ = {B} or Δ = ∅.

3. Logical systems are usually formulated either as a Hilbert consequence, in which case we have only the notion of ∅|∼A but not A|∼B, or as a singleton or unitary consequence. When a Hilbert |∼_{1} is given, there exists the smallest and biggest singleton |∼_{2} which agrees with it (i.e. ∅|∼_{1}A iff ∅|∼_{2}A, for all A). This will be proved later.

Many nonmonotonic logics do not satisfy transitivity and unitary cut. We need to weaken these notions. Here is an example of a more general consequence relation in a language with → which satisfies the following rule in addition to identity but is not required to satisfy unitary cut or transitivity:

\begin{matrix}A |∼ B → C \\ X |∼ B \\ A |∼ X → C \end{matrix} .

Definition 8.5.2 1. A logic algebra is any algebra of the form a = (A, f_{i}, ≤, T), where A is a non-empty set (corresponding to the formulas of the logic) and f_{i}, i = 1, …, k, are functions on A, with arity n_{i} (corresponding to the connectives of the logic) and ≤ is a reflexive and transitive relation on A (corresponding to the converse of the consequence relation of the logic) and T ⊆ A, T ≠ ∅ is a subset of distinguished elements (corresponding to the theorems of the logic) satisfying:

(∗) ∀x, y ∈ A [y ∈ T and x ≤ y implies x ∈ T].

2. A subset F ⊆ A is a filter if F ≠ ∅ and for all x, y (x ∈ F and x ≤ y implies y ∈ F).

3. A function f(x_{1}, …, x_{n}) in a logic algebra is extensional iff

x_{i} ≤ y_{i} ∧ y_{i} ≤ x_{i}, i = 1, …, n imply f(x_{1}, …, x_{n}) ≤ f(y_{1}, …, y_{n}).

4. A function f(x_{1}, …, x_{n}) in a logic algebra is directional if it is either monotonic up or down in each of its variables.

5. An algebra is directional if all of its functions are directional.

Definition 8.5.3 1. A connective ♯(A_{1}, …, A_{n}) is extensional iff the following holds:

{x_{i} |∼ y_{i}, y_{i} |∼ x_{i}, i = 1 … n \atop ♯(x_{1}, …, x_{n}) |∼ ♯(y_{1}, …, y_{n})} .

2. A connective ♯(A_{1}, …, A_{n}) is directional in A_{1} iff either

(a) Upward monotonicity

{p |∼ q \atop ♯(p, A_{2}, …) |∼ ♯(q, A_{2}, …)} .

(b) Downward monotonicity

{p |∼ q \atop ♯(q, A_{2} …) |∼ ♯(p, A_{2} …)} .

3. A logic is extensional (directional) iff all of its connectives are extensional (directional, resp.) in all their variables.

Example 8.5.4 1. Intuitionistic logic is directional. A → B is directional up in B and down in A. So are all known substructural implications such as relevant, linear and Lambek implications.

2. Extensionality allows us to give neighbourhood semantics for the logic or to give it a Lindebaum– Tarski algebraic semantics. In the case of a language with one modal operator □, and the classical propositional connectives ¬, ∧, ∨ and →, extensionality of □ means we can give □ the usual neighbourhood semantics. Both □ and ♢ are monotonic upwards but satisfy different algebraic conditions.

3. Let ♯(x) be a connective and suppose it is both directional up and down in x. Then essentially ♯(x) does not depend on x.

To see this, assume we have either truth ⊤ or falsity ⊥ in the language. Then for any x we have

⊥ |∼ x |∼ ⊤.

Hence we get ♯(⊥) |∼ ♯(x) |∼ ♯(⊤) and ♯(⊤) |∼ ♯(x) |∼ ♯(⊥).

This means ♯(x) is independent of x.

In case neither ⊤ nor ⊥ are in the language, we can prove ‘equivalence’, namely ♯(y) |∼ ♯(x) and ♯(x) |∼ ♯(y), only for x, y that are R-connected, where R is the transtive closure of ≤ and its converse. This is enough to allow us for Definition 8.5.8, (1) to go through.

We now describe algebraic semantics for a logic L, with consequence relation |∼. The semantics will be considerably simplified for the case of directional logics.

Definition 8.5.5 1. Let L be a logic with consequence |∼ and connectives ♯_{1}, …, ♯_{k} with arities r_{1}, …, r_{k} respectively. Let a = (A, f_{1}, …, f_{k}, ≤, T) be an algebra with functions f_{i} with arities r_{i} resp.

(a) An algebraic assignment for L into a is a function ha assigning for each atomic q an element ha(q) ∈ A.

(b) ha can be extended to arbitrary wffs of L by

ha(♯_{i}(A_{1}, …, A_{r_{i}})) = f_{i}(ha(A_{1}), …, ha(A_{r_{i}})).

(c) We write (a, ha) ⊨ A iff ha(A) ∈ T. We write A ⊨_{a,ha} B iff ha(B) ≤ ha(A). In future we omit the ‘a’.

2. An algebra is connected if any two elements are connected by the transitive closure of R = (≤ ∪ ≥) (i.e. of ≤ and its converse). This condition relates to the connectivity mentioned in Example 8.5.4 (3).

Theorem 8.5.6 (Completeness for general logics) Let |∼ be a consequence relation then A|∼B iff for all directional algebras a and all assignments ha, we have A ⊨_{ha} B.

Proof.

1. Soundness is immediate from the reflexivity and transitivity of ≤.

2. Completeness is obtained by taking the canonical algebra with A = set of all wffs and defining x ≤ y iff y |∼ x. We let T = {B | ∅ |∼ B}. Let f_{♯}(A_{1}, …, A_{n}) = ♯(A_{1}, … A_{n}) and let h be the assignment giving h(q) = q.

One can prove by induction on A that h(A) = A. ■

Theorem 8.5.7 Let |∼ be an extensional consequence relation. Then it is complete for the class of all extensional algebras.

Proof. Immediate from the definitions and the canonical model of the previous theorem. ■

Definition 8.5.8 1. Let L be a directional logic with consequence |∼ and connectives ♯_{1}, …, ♯_{k} with arities r_{1}, …, r_{k}. Let a = (A, f_{i}, ≤, T) be a connected logic algebra with function symbols f_{i}, i = 1, 2, … with arities r_{1}, r_{2}, … resp (same as the connectives). Let ha be a function (assignment) assigning for each atom q of L a filter F_{q} ⊆ A. Assume f_{i} are directional in the same way as ♯_{i}. We can extend ha to all wffs of L inductively as follows. Let ♯_{j}(A_{1} …, A_{n_{j}}, B_{1}, …, B_{m_{j}}) be a connective monotonic down in A_{i} and monotonic up in B_{i}. We let ha(♯_{j}(A_{1}, …, A_{n_{j}}, B_{1}, …, B_{m_{j}})) = {y | for all x_{1}, …, x_{n_{j}} such that x_{i} ∈ ha(A_{i}) there exist y_{k} such that y_{k} ∈ ha(B_{k}), i = 1, …, n_{j} and k = 1, …, m_{j}, we have f_{j}(x_{1}, … x_{n_{j}}, y_{1}, …, y_{m_{j}}) ≤ y}.

If a connective is monotonic both up and down in a slot we regard it as monotonic down. (We could regard it as montonic up—it does not matter.)

We show that the definition given here leads to the same assignment filter set no matter what we choose.

Let ♯(A, B, C) be a connective where the B slot is directional both ways, up and down.

We have two options.

(a) Taking B as directional up:

S_{1} = h(♯(A, B, C) = {y | for all x_{1}, x_{2} such that x_{1} ∈ h(A), x_{2} ∈ h(B), there exists a x_{3} ∈ h(C) such that f_{♯}(x_{1}, x_{2}, x_{3}) ≤ y}.

(b) Taking B as directional down: S_{2} = h(♯(A, B, C)) = {y | for all x_{1} such that x_{1} ∈ h(A), there exists x_{2}, x_{3} such that x_{2} ∈ h(B), x_{3} ∈ h(C) such that f_{♯}(x_{1}, x_{2}, x_{3}) ≤ y}.

We want to show that S_{1} = S_{2} under the assumption that the algebra is connected (as in Definition 8.5.5).

First note that clearly if y ∈ S_{1} then y ∈ S_{2}. Assume y ∈ S_{2}. Show y ∈ S_{1}. Since y ∈ S_{2} then for every x_{1} ∈ h(A), there are x_{2} = α(x_{1}) ∈ h(B) and x_{3} = β(x_{1}) ∈ h(C) such that f_{♯}(x_{1}, α(x_{1}), β(x_{1}) ≤ y. We want to show that for every x_{1}, x_{2}, x_{1} ∈ h(A), x_{1} ∈ h(B) there exists a γ(x_{1}, x_{2}) ∈ h(C) such that f_{♯}(x_{1}, x_{2}, γ(x_{1}, x_{2})) ≤ y. We let γ(x_{1}, x_{2}) = β(x_{1}). we must show that for all x_{1} ∈ h(A), x_{2} ∈ h(B), f_{♯}(x_{1}, x_{2}, β(x_{1})) ≤ y.

Since the second slot (x_{2} slot in f_{♯}) is directional both up and down and since we assumed the algebra is connected, we get in view of the discussion in Example 8.5.4 (3) that

f_{♯}(x_{1}, x_{2}, β(x_{1})) ≤ f_{♯}(x_{1}, α(x_{1}), β(x_{1})) ≤ y.

Thus we have shown that S_{1} = S_{2}.

2. An algebraic model for |∼ is a pair (a, ha), as in 1. above. An algebraic semantics is a class of algebraic models.

3. Let m = (a, ha) be an algebraic model and let A, B, Δ be wffs, we write:

A |∼m B iff ha(A) ⊆ ha(B)
|∼ B iff ha(B) ⊆ T
Δ |∼m B iff ⋂_{A∈Δ} ha(A) ⊆ ha(B)

4. Let K be a class of algebraic models. We say

• A |∼_{K} B iff A |∼m B for all m ∈ K.

• |∼_{K} B iff |∼m B for all m ∈ K.

• Δ |∼_{K} B iff Δ |∼m B for all m ∈ K.

5. Let L be a language and |∼ a directional consequence relation. We define the canonical algebra a_{|∼} as follows:

• A_{|∼} = the set of all wffs of L.

• f_{♯} for each connective ♯ of L is defined by

f_{♯}(A_{1}, …, A_{n}) = ♯(A_{1}, …, A_{n}).

• A ≤ B is defined as B |∼ A.

T is {B | ∅ |∼ B}.

• Let ha(q) = {A | A |∼ q}. ha(q) is a filter because if A ∈ ha(q) (i.e. A |∼ q) and A ≤ B (i.e. B |∼ A) then certainly B ∈ ha(q). Also ha(q) is non empty (since q |∼ q).

Definition 8.5.9 (Term translation for a consequence relation) Let L and |∼ be as in the previous Definition. Let A be a wff of L with atoms q_{1}, …, q_{n}. Let z_{1}, …, z_{n} be variables of classical logic associated with q_{1}, …, q_{n}. In fact, let q^{∗} be the variable associated with q. With each connective ♯ of L associate a function symbol f_{♯} of the same arity. We associate with any formula A a term of classical logic A^{∗} by structural induction as follows:

• (q_{i})^{∗} = z_{i}

• (♯(A_{1}, …, A_{n}))^{∗} = f_{♯}(A_{1}^{∗}, …, A_{n}^{∗}).

Consider the classical language with the function symbols {f_{♯}}, the binary relation symbol ≤ and the unary predicate symbol T. Then the translation ∗ : A ↦ A^{∗}, translates each formula A into a term in this language. The consequence assertion A|∼B is translated into B^{∗} ≤ A^{∗} and the assertion ∅|∼A is transated into A^{∗} ∈ T.

The consequence relation rules of the form

{A_{i} |∼ B_{i}, i = 1, …, k \atop ♯_{1}(C_{1}, …, C_{n_{1}}) |∼ ♯_{2}(D_{1}, …, D_{n_{2}})}

are transated into classical logic Horn clauses of the form

⋀_{i=1}^{k}(B_{i}^{∗} ≤ A_{i}^{∗}) → f_{♯_{2}}(D_{j}^{∗}) ≤ f_{♯_{1}}(C_{j}^{∗})

where ‘→’ is classical implication.

For example, axioms schema such as A ⇒ (B ⇒ A) become expressions like

f_{⇒}(x, f_{⇒}(y, x)) ∈ T.

Modus ponens becomes

x ∈ T ∧ f_{⇒}(x, y) ∈ T → y ∈ T.

Lemma 8.5.10 (Completeness) In the canonical model,

ha(B) = {A | A |∼ B}.

Proof. By induction.

1. The lemma holds for atomic B.

2. Assume the lemma holds for A_{1}, …, A_{n}, B_{1}, …, B_{m} we show the lemma holds for

B = ♯(A_{1}, …, A_{n}, B_{1}, …, B_{m})

We assume ♯ is monotonic down in A_{i} and up in B_{k}.

ha(B) = {y | for all X_{1}, …, X_{n}, such that X_{i} |∼ A_{i}
there are Y_{1} … Y_{m}, such that Y_{k} |∼ B_{k}
we have y |∼ ♯(X_{1}, …, X_{n}, Y_{1}, …, Y_{m})}.

We want to show

ha(B) = {y | y |∼ ♯(A_{1}, …, B_{m})}.

Assume that y ∈ ha(B) and show that y |∼ B. From the assumptions we see that for X_{i} = A_{i}, there are Y_{i} |∼ B_{i} such that

y |∼ ♯(A_{i}, Y_{i}).

Since ♯ is monotonic up in Y_{i} we get y |∼ B.

Assume y |∼ B, we show y ∈ ha(B). Let X_{i} be such X_{i} |∼ A_{i}, we need to find Y_{k} such that y |∼ ♯(X_{i}, Y_{k}). Take Y_{k} = B_{k}. We need to show y |∼ ♯(X_{i}, B_{k}). Since |∼ is monotonic down in A_{i}, we get that X_{i} |∼ A_{i} yield ♯(A_{i}, B_{k}) |∼ ♯(X_{i}, B_{k}) and hence y |∼ ♯(X_{i}, B_{k}), by transitivity

This completes the proof of the lemma. Note that we proved that each filter is generated by a minimal element. ■

Example 8.5.11 Let X ↠ Y be a binary connective. Let |∼ be the smallest consequence relation which makes ↠ directional down in X and up in Y,

{X |∼ X′ \atop X′ ↠ Y |∼ X ↠ Y}  {Y |∼ Y′ \atop X ↠ Y |∼ X ↠ Y′}

and satisfies the two standard conditions

A |∼ A and {A |∼ B; B |∼ C \atop A |∼ C} .

The semantics for this system involve algebras of the form a = (A, f_{↠}(x, y), ≤, T, h) with the truth condition on ↠ being:

t ⊨ A ↠ B iff for all x ⊨ A there exists a y ⊨ B such that f_{↠}(x, y) ≤ t.

We have A |∼ B iff for all a and all t ∈ Aa, t ⊨ A implies t ⊨ B.

This semantics should be compared with the more traditional semigroup semantics for substructural implications. A model has the form (A, ∗, ≤, h) where (A, ∗) is a semigroup (associative?) and ≤ an ordering. The clause for ↠ is

t ⊨ A ↠ B iff ∀x ⊨ A, t ∗ x ⊨ B.

The two semantics will coincide if we take ≤ as identity and let

f_{↠}(x, y) = (The z such that)(z ∗ x = y).

The previous definition of canonical model and the completeness theorem allow us to give a semi-algebraic possible world semantics for directional logics. The following definition establishes the connection.

Remark 8.5.12 (A more general completeness theorem) The completeness theorem for Kripkelike semantics can be generalized. We need not assume the consequence relation be transitive. The following conditions are sufficient:

• A |∼ A identity

• Directionality of all connectives (as in Definition 8.5.3)

• Downward strengthening: Let ♯(q, …) be any connective which is downward monotonic in q, then for any A and B

{A |∼ ♯(q, …); B |∼ q \atop A |∼ ♯(B, …)} .

Let a be any algebra satisfying reflexivity, directionality and downward strengthening. Let t ∈ Aa, define a semi-filter I_{t} to be the largest set Y satisfying (∗) below:

(∗) ∀s ∈ A[s ≤ t iff ∀x ∈ Y (s ≤ x)].

Clearly I_{t}^{0} = {t} is such a set and the family of such sets is closed under union.

Let h be an assignment. Require h to satisfy:

(∗∗) h(t, q) = 1 iff (∀s ∈ I_{t})h(s, q) = 1.

Then in the canonical model, we have for such h and any A

t ⊨ A iff t |∼ A.

The proof is similar to that of Lemma 8.5.10. Downward strengthening plays the role of transitivity in the proof. In fact, if |∼ is transitive then downward strengthening follows and each semifilter I_{t} is equal to {s | t ≤ s}.

Definition 8.5.13 (semi-algebraic possible world semantics) Let L be a language with connectives ♯_{1}, …, ♯_{k} with arities r_{1}, …, r_{k} respectively. A semi-algebraic model for L has the form (A, R_{1}, …, R_{k}, ≤, T, h) where A is a set of possible worlds, T ⊆ A, T ≠ ∅ and each R is a relation on A of arity 1 + r_{i}. h is an assignment from the atoms of the language into subsets of A. The following must hold.

1. x ≤ y and y ∈ T imply x ∈ T.

2. t ∈ h(q) and t ≤ s imply s ∈ h(q).

3. Each R_{i} is directional in all its variables, in the same way as ♯_{i}, respectively, and R_{i} is directional up in its first variable.

Note that for a connective ♯(X_{1}, …, X_{n}, Y_{1}, …, Y_{m}) there corresponds a relation R_{♯}(t, x_{1}, …, x_{n}, y_{1}, …, y_{m}). The meaning of R_{♯} in terms of the algebraic function f_{♯}(x_{1}, …, x_{n}, y_{1}, …, y_{m}) and ≤ is

R_{♯}(t, x_{1}, …, x_{n}, y_{1}, …, y_{m}) iff f_{♯}(x_{1}, …, x_{n}, y_{1}, …, y_{m}) ≤ t.

Note that R_{♯} satisfies that for each (x_{1}, …, x_{n}, y_{1}, …, y_{m}) there exists a minimal t such that R_{♯}(t, x_{1}, …, x_{n}, y_{1}, …, y_{m}) holds. Conversely, the function f_{♯} can be retrieved from such an R_{♯} in the presence of ≤.

Thus if f_{♯} is monotonic up in y_{j} and monotonic down in x_{i}, then R_{♯} will be monotonic up in x_{i} and t and monotonic down for y_{j} (inverse direction for x_{i} and y_{j}).

Define the following first truth table for the connectives ♯(X_{1}, …, X_{n}, Y_{1}, …, Y_{m}) as follows: (♯ is directional down in X_{i} and up in Y_{i}):

t ⊨ ♯(X_{1}, …, X_{n}, Y_{1}, …, Y_{m}) iff for all t_{i} such that t_{i} ⊨ X_{i} there exist s_{j} such that s_{j} ⊨ Y_{j} such that R_{i}(t, x_{1}, …, x_{n}, y_{1}, …, y_{m}) holds.

We say A |∼ B holds in the model if whenever t ⊨ A then t ⊨ B.

We say ⊨ A in the model if whenever t ⊨ A then t ∈ T.

Note that we can also assume that R_{♯} satisfies that for every t, x_{1}, …, x_{n} there exist unique y_{1}, … y_{m} such that R_{♯}(t, x_{1}, …, x_{n}, y_{1}, …, y_{m}). The reason being that the filters {y | y ⊨ Y } have a minimal element and R_{♯} is monotonic down in y_{i}. So R_{♯} holds for some y iff it holds for the minimal y. This last statement entails that we can get completeness for R_{♯} and the following truth table:

t ⊨ ♯(X_{1}, …, X_{n}, Y_{1}, … Y_{m}) iff for all t_{i} such that t_{i} ⊨ X_{i} and all s_{j} such that R_{♯}(t_{1}, … t_{n}, s_{1}, …, s_{m}) we have for all j, s_{j} ⊨ Y_{j}.

Theorem 8.5.14 Let |∼ be the smallest directional consequence relation, then |∼ is complete for the semi algebraic semantics.

Proof. Use the canonical model. ■

So far we have been mainly concerned with algebraic theorems preparing an almost arbitrary logic for translation into classical logic, not with the theory of partially ordered algebraic logics (cf. [Gabbay, 1993a, Gabbay, 1992b, Blok and Pigozzi, 1989]). We need the algebras as tools in order to translate any general logic, about which we do not know much. We found it convenient to apply our algebraic methods to singleton consequence relations |∼, i.e. the kind defined for A|∼B and ∅|∼B, which give rise to the ordering relation ≤ in the logic algebra. Many logics, however, are presented as Hilbert systems, and so we cannot apply our methods as we have only the relation ∅|∼_{1}A, for A wff. Suppose we are given a Hilbert presentation of a logic L_{1}. This means that we are defining only the notion of ∅ |∼_{1} A (or just |∼_{1} A). We need to investigate a means of deriving from |∼_{1} a consequence relation |∼_{2} such that A|∼_{2}B is always defined and |∼_{2} is a conservative extension, i.e. ∅|∼_{2}A iff ∅|∼_{1}A holds. In algebraic terms, given (A, f_{i}, T) can we define a suitable ≤ on A? In implicational logics with ⇒ satisfying the deduction theorem this can be easily done: A|∼_{2}B iff ∅|∼_{1}A ⇒ B.

Lemma 8.5.15 Let |∼_{1} be a Hilbert conseuence relation (i.e. defined for ∅|∼_{1}A, A wff). Then there exists the minimal |∼_{−} and maximal |∼_{+} singleton consequence relations which agree with it.

Proof.

1. Let Δ|∼_{−}B be defined by

Δ|∼_{−}B iff (1)Δ = ∅ and ∅|∼B
or (2)Δ = {B}.

We show |∼_{−} is a consequence relation:

• clearly A|∼_{−}A holds

• assume Δ|∼_{−}A and A|∼_{−}B. By definition A = B and so Δ|∼_{−}B.

We show |∼_{−} is minimal. Suppose |∼_{1} agrees with |∼. We show Δ|∼_{−}A implies Δ|∼_{1}A. If Δ = {A}, then clearly A|∼_{1}A. If Δ = ∅, again by agreement ∅|∼_{1}A.

2. From (1) it is clear that the set of all singleton consequence relations agreeing with |∼ is nonempty. Define |∼_{+} as follows.

A|∼_{+}B iff there exist |∼_{0}, … |∼_{k} agreeing with |∼ and A_{1}, …, A_{k} such that

A|∼_{0}A_{1}, A_{1}|∼_{1}A_{2}, …, A_{k}|∼_{k}B.

We show that |∼_{+} is a consequence relation:

• clearly A|∼_{+}A because A|∼_{−}A holds.

• assume Δ|∼_{+}B and B|∼_{+}C we show Δ|∼_{+}C. Then for some |∼_{0}, …, |∼_{k} and |∼_{k+1}, …, |∼_{m+1} and A_{1}, …, A_{k}, A_{k+1}, …, A_{m} we have

Δ|∼_{0}A_{1}, …, A_{k}|∼_{k}B, B|∼_{k+1}A_{k+1}, …, A_{m}|∼_{m+1}C.

But then by definition Δ|∼_{+}C.

We now show |∼_{+} agrees with |∼

• Clearly ∅|∼B implies ∅|∼_{+}B.

• assume ∅|∼_{+}B and show ∅|∼B.

Since ∅|∼_{+}B, there exist A_{1}, …, A_{k} and |∼_{0}, …, |∼_{k} such that ∅|∼_{0}A_{1}, …, A_{k}|∼_{k}B hold. We prove ∅|∼B by induction on k.

Case k = 0 In this case ∅|∼_{0}B and since |∼_{0} agrees with |∼ we get ∅|∼B. Case k > 0 Consider the initial sequence

∅|∼_{0}A_{1} and A_{1}|∼_{1}A_{2}.

Since |∼_{0} agrees with |∼ which agrees with |∼_{1}, we get ∅|∼_{1}A_{1} and hence by transitivity, we get ∅|∼_{1}A_{2}.

We now have a shorter sequence

∅|∼_{1}A_{2}, A_{1}|∼_{2}A_{3}, …, A_{k}|∼_{k}B.

Hence, by the induction hypothesis ∅|∼B.

This completes the induction. Clearly |∼_{+} is maximal. Hence, the Lemma is proved. ■

The above considerations do not give us an algorithm for finding for a given Hilbert system |∼_{1} a singleton consequence relation |∼_{2} which agrees with it. Of course, we can always take the minimal one |∼_{1}^{−}, but the minimal one is not particularly infomative. The stronger the consequence relation the better. One can try to find one using a theorem prover as the next example shows.

Example 8.5.16 Let L be a propositional language with some connectives and let H be a Hilbert system for L with schematic rules of the form ρ_{i}, (i = 1, …, m):

ρ_{i} : {|∼φ_{1}^{i}; …; |∼φ_{k_{i}}^{i} \atop ⊢ φ_{i}} .

For example, Łukasiewicz formulation of the implicational fragment of classical logic (using the binary connective ⇒) is formulated by the schemas

ρ_{i} : {|∼P; |∼P ⇒ Q \atop |∼Q}

ρ_{2} : {∅ \atop |∼((P ⇒ Q) ⇒ R) ⇒ ((R ⇒ P) ⇒ (S ⇒ P))} .

We can systematically look (by complexity) for a formula Ψ(X, Y) (binary) and try and prove using the term translation of Definition 8.5.9 and a classical theorem prover, that the following holds:

• |∼_{1}Ψ(X, X)

• |∼_{1}Ψ(X, Y) and |∼_{1}Ψ(Y, Z) imply |∼_{1}Ψ(X, Z)

• |∼_{1}X and |∼_{1}Ψ(X, Y) imply |∼_{1}Y.

For a Ψ satisfying the above we can let

A|∼_{2}B iff (definition) |∼_{1}Ψ(A, B)
∅|∼_{2}B iff |∼_{1}B.

In fact, since singleton consequence relations are closed under intersection, if we have several such Ψ_{i} we can let A|∼_{2}B be ⋀_{i} |∼_{1}Ψ(A, B).

We now ask how do we find such a Ψ automatically? We can let Ψ range over all wffs of the language in order of increasing complexity and then for this Ψ, using the term translation of Definition 8.5.9 and a classical theorem prover see if each Ψ satisfies the required condition.

A good heuristic is to look at the Hilbert rules of the form

{|∼_{1}φ_{1}; …; |∼_{1}φ_{k} \atop |∼_{1}φ}

and try and substitute into φ_{i} and φ some formula that will turn the above rule into the form

{|∼_{1}A; |∼_{1}Ψ_{1}(A, B); … |∼_{1}Ψ_{m}(A, B) \atop |∼_{1}B} .

We can now check whether the metapredicate

⋀_{i=1}^{m}[|∼_{1}Ψ_{1}(X, Y]

is transitive, in which case, we define

A|∼_{2}B iff ⋀_{i=1}^{m} |∼_{1}Ψ_{i}(A, B)

∅|∼_{2}B iff |∼_{1}B.

Applying the above procedure to Łukasiewicz logic, we immediately find that Ψ(A) = (def)A ⇒ B is a candidate. We need to check whether • |∼_{1}A ⇒ B and |∼_{1}B ⇒ C imply |∼_{1}A ⇒ C

• |∼_{1}A ⇒ A.

These can be checked using the term translation.

Example 8.5.17 The previous example dealt with the problem of finding a singleton consequence relation Δ|∼_{2}B (Δ = {B} or Δ = ∅} agreeing with a Hilbert consequence ∅|∼_{1}B. We can continue this line of thought and try to extend a singleton consquence Δ|∼_{2}B to a unitary consequence Δ|∼_{3}B, Δ, arbitrary which agrees with it.

Assume now that a proper |∼ is given, where A|∼B and ∅|∼B are defined for arbitrary A and B. The second concept we define is that of a theory. We defined a theory Δ as a set of wffs and gave the notion Δ |∼ A the semantic meaning:

Δ |∼ A iff for all a and for all t ∈ Aa, if t ⊨ B, for all B ∈ Δ then t ⊨ A.

There is a more general notion of a theory. Let Ψ(X, Y) be formulas defined using the connectives of the logic. Assume Ψ is monotonic down in X and up in Y. Using Ψ we can define the following notion of a theory Δ.

• A theory Δ is a sequence of formulas (A_{1}, …, A_{n})

• (A_{1}, …, A_{n}) |∼ A = def ∅ |∼ Ψ(A_{1}, Ψ(A_{2}, …, Ψ(A_{n}, A) …)).

This definition gives the deduction theorem for |∼:

A_{1}, …, A_{n} |∼ Ψ(A, B) iff A_{1}, …, A_{n}, A |∼ B.

Consider for example the connective ↠ of example 8.5.11. We have

A_{1}, …, A_{n} |∼ B iff ∅ |∼ A_{1} ↠ (…, ↠ (A_{n} ↠ B) …).

The notion of a theory can be generalized. Let τ = {♯_{1}, …, ♯_{k}} be a set of monotonic upwards connectives of the language. Close τ under substitution. Let φ(x_{1}, …, x_{n}) be a wff generated from τ with n-places. Then the formula expression [φ(A_{1}, …, A_{n})] is a φ-theory of (A_{1}, …, A_{n}) with φ[A_{1}, …, A_{n}] |∼ B iff ∅ |∼ Ψ(φ(A_{1}, …, A_{n}), B).

Other definitions of algebraic logics and theories existing in the literature do not use the partial order but only the set of designated elements. One example is (a an algebraic model): Δ ⊨a A iff for every assignment h, if h(B) ∈ T for all B ∈ Δ then h(A) ∈ T.

We can now formulate, through the semantics, any directional logic as an LDS. This is the task of the rest of this section.

Dov to Continue ...

8.6 Labelling the metalevel (nested labelling systems)

This book adopts the view that the basic unit of logical information is the labelled formula t : A.

We futher adopted the view that a labelled deduction system is mathematically just like an ordinary deductive system except that all formulas are labelled and the proof rules tell us how to manipulate the labels as well as the formulas.

If we accept ths point of view and its consequences, we must allow for the following:

1. Well formed formulas of the form (t : A) → (s : B).

2. Labelling disciplines for such formulas, for example: t : (s : A) t : ((s_{1} : A) → (s_{2} : B)

3. Allow for arbitrary iterations of nested → labelling.

4. Study reduction rules for reducing nestings of labels.

In order to have a meaningful interpretation for nested labelling systems, we need to have a creative point of view of labelled formulas. Let us think of t : A as an algebraic resource annotation. Imagine we have a proof system ⊢_{0} with a syntactical algorithmic notion of how A_{1}, …, A_{n} ⊢_{0} B holds. We take an algebra A and label the assumptions as t_{1} : A_{1}, …, t_{n} : A_{n} and execute the proof to obtain B with a label s = t(t_{1}, …, t_{n}), where t is a function symbol of the labelling algebra dependent on the proof path of B from A_{1}, …, A_{n}. Thus we write

t_{1} : A_{1}, …, t_{n} : A_{n} ⊢_{A} s : B.

We can have double labelling, from two different algebras, A_{1} and A_{2} to get

(t_{i}^{1}, t_{i}^{2}) : A_{i} ⊢_{A_{1}⊗A_{2}} (t^{1}(t_{1}^{1}, …, t_{n}^{1}), t^{2}(y_{1}^{2}, …, t_{n}^{2})) : B

We can now decide whether we accept B as proved by looking at the labels. This use of the labels filters proofs according to algebraic resource considerations.

What would the wff (t : A) → (s : B) mean in this context? We can understand it as a metastatement saying that if A can be obtained with reousrce t, then B can be obtained with resource s. Thus we have:

Δ ⊢_{A} (t : A) → (s : B) iff Δ; t : A ⊢_{A} s : B.

If Δ is aan LDS database, then the above is meaningful.

To understand the mechanisms involved in nested labelling, we can begin with a consequence relation ⊢_{0} between formulas, written A_{i} ⊢_{0} B. We can turn it into an LDS by adding labels and a labelling discipline, thus defining a consequence relation ⊢_{1} on labelled formulas of the form t_{i} : A_{i} ⊢_{1} s : B.

There does not necessarily have to be any obvious relationship between ⊢_{1} and ⊢_{0}, though there may indeed be a connection, depending on the nature of the labelling discipline of ⊢_{1}. We may have a connection, for example, of the form

A ⊢_{0} B iff ∅ : A ⊢_{1} ∅ : B

or of the form:

A ⊢_{0} B iff ∅ : A ⊢ s : B, for some s.

Now that we have ⊢_{1} we can again add a labelling discipline to get a system ⊢_{2}. ⊢_{2} again may not be connected in any way with ⊢_{1}. In fact, the set of labels of ⊢_{2} may be different from the labels of ⊢_{1}.

Let us see what happens when the labelling discipline and the labels used in moving form ⊢_{0} to ⊢_{1} is used again to move from ⊢_{1} to ⊢_{2}. Do we get ⊢_{2}=⊢_{1}? To consider the question meaningfully let us start with a familiar ⊢_{0} discipline. Let ⊢_{0} be linear logic.

This means that we start with the unlabelled version of linear logic, then pass on to a labelled version and then label again. Let us see what happens.

The axioms of linear logic are:

A → A
(A → B) → ((C → A) → (C → B))
(A → (B → C)) → (B → (A → C))

and the rules are MP and RT namely

{A, A → B \atop B}

and A → B

.
(B → C) → (A → C)

The rule RT can be derived from the other axioms and rules. The notion of ⊢ A is defined in the usual way for the logic, namely ⊢ A iff there exists a sequence A_{0}, …, A_{n} = A such that each element in the sequence is either a substitution instance of an axiom or is obtained from two previous elements by the use of a rule, in this case modus ponens.

A theorem of the logic is any A such that ⊢ A.

Note that we still have to define the notion A ⊢ B, as we defined only what a theorem is, ie ∅ ⊢ B.

We say A_{1}, …, A_{n} ⊢_{0} B iff there exists a sequence of formulas D_{1}, …, D_{m} = B such that each element of the sequence is either a theorem or an assumption A_{i} or is obtained from previous elements of the sequence using modus ponens.

We now impose a labelling discipline on this system. Label each theorem by ∅ and label each assumption by a new atomic label. Propagate the labels the usual way,

\begin{matrix}α : A \\ β : A → B \\ βα : B \end{matrix}

In this manner, whenever

A_{1}, …, A_{n} ⊢_{0} B

We have

a_{1} : A_{1}, …, a_{n} : A_{n} ⊢_{1} α : B

where α is a sequence of x_{i} ∈ {a_{i}} indicating which assumptions were used in the derivation.

Let us now use ⊢_{1} together with the same labelling system to get ⊢_{2}. The assumptions have the form α_{i} : (β_{i} : A_{i}) (we are labelling an already labelled formula). We agree as before that assumptions get new atomic labels. Label propagation through modus ponens should follow the same pattern.

α_{1} : (α_{0} : A) β_{1} : (β_{0} : A → B) β_{1}α_{1} : (β_{0}α_{0} : B) We similarly have that whenever α_{1} : A_{1}, …, α_{n}A_{n} ⊢_{1} α : B then for some β and atoms x_{i}

x_{1} : (α_{1} : A_{1}), …, x_{n} : (α_{n} : A_{n}) ⊢_{2} β : (α : B).

β indicates from which assumptions x_{i} : (α_{i} : A_{i}) was α : B derived.

Our problem is how to interpret α_{1} : (α_{0} : A). Can we meaningfuly collapse it to some γ : A? ie, reduce ⊢_{2} to ⊢_{1}?

Let us examine in more detail what can happen. Consider the assumptions:

\begin{matrix}a_{0} : A_{0} \\ b_{0} : A_{0} → B_{0} \\ c_{0} : B_{0} → C_{0} \end{matrix}

Using modus ponens we get that the above proves in ⊢_{1} c_{0}b_{0}a_{0} : C_{0}.

If we were to label again, we would get

a_{1} : (a_{0} : A_{0})
b_{1} : (b_{0} : A_{0} → B_{0})
c_{1} : (c_{0} : B_{0} → C_{0})

We use modus ponens to get

c_{1}b_{1}a_{1} : (c_{0}b_{0}a_{0} : C_{0}).

The two labels are practically identical. Thus labelling again with the same labelling discipline gives us nothing. In fact the example shows that α : (β : A) can really be taken as (α, β) : A and the two labelling manipulations can be done side by side, on each co-ordinate.

However, if we use a different labelling discipline on the α label we get composition of the metaleval meaning of each label. For example the β label may record relevance and the α label may record possible worlds. This way we get modal relevance logic, as presented in example 2.2.4.

8.6. LABELLING THE METALEVEL (NESTED LABELLING SYSTEMS) 229 1. Bring in internalisation of consequence

2. Temporalising 230 CHAPTER 8. METALEVEL FEATURES IN LDS

Part III

Labelled Resource Logics Resource Logics

9.1 Introduction

This chapter will illustrate the use of the Metabox to define some known logics and a new class of logics called Resource Logics. We understand the term to cover all logics where it is important to know exactly from which assumptions and using which inference rules and at what order a conclusion is drawn. In this case the labels function as names to the assumptions (data) and the deductive process propagates the labels to the conclusion through an agreed labelling discipline. Thus Δ ⊢ t : A means that A can be proved from Δ using those assumptions and rules in Δ as indicated by the label t. In a more sophisticated labelling discipline the labels can be used to control the deductive process and thus function as a metalevel device. The label propagation mechanism will depend on what the labels denote. It could be probabilities, it could be priorities, it could be an indication of the origins or update version of the data. Well known among such logics are relevance and linear logics. In relevance logic Δ ⊢ A requires A to be proved using all the assumptions in Δ and in linear logic it is further required that the assumptions in Δ are used not more than once.

Derivation can be controlled in two pure ways (and of course in a mixed way). One can control the use of assumptions. For example, one may have two assumptions in the database, A_{1} and A_{2}, and the control allows the algorithmic proof procedure to use exactly one of them.

Another example is when we require all assumptions to be used exactly once. This resource restriction gives rise to Linear Logic. In general, the subclass of Resource Logics, which restricts only the number of assumptions used (as compared with how they are used) are known as substructural logics. Thus Linear Logic, Relevance Logic and their neighbours are Resource Logics in our sense.

Another important subclass of Resource Logics are the Prioritised Logics, where the main restrictions are on how to use the inference rules. The reader may question whether such a distinction makes sense, after all, all inference rules come with conditions on how to use them, and why can’t we regard the so called “controlled inference” as part of the rules. The answer is that the control is on the global use of the rules and cannot be attached to any single rule. An extreme example of controlled inference logics are Defeasible Logics (see the appropriate chapter) and the logics known as Ordered Logics. These logics arise naturally in non-monotonic systems handling several distributed knowledge bases and having to reconcile possibly conflicting information.

Natural priorities among rules give rise to prioritised logics. In general resource -logics are a mixture of both, resource restrictions and inference control.

A simple example of a mixture is when we do not allow for any formula A → B to be used both as a ticket and as a minor premiss of a modus ponens. With this restiction,

(A → (A → B)) → (A → B)

is still a theorem (though not a theorem of linear logic) but

((C → A) → C) → ((C → A) → A)

is not a theorem.

In general Resource Logics use the labels to observe and record the use of the assumptions, while prioritised -logics use the lables to observe and control the use of rules.

The whole way of thinking involved in Resource-logics is different from the traditional ones. One can no longer apply logical rules or even use assumptions in any order or as often as one wants. Certain sequnces are allowed and certain are not, according to some controlling mechanism. Some logicians strive, in fact, for complete symmetries in derivations and would therefore reject the idea of prioritised-Logics. Perhaps a theorem can be proved that every prioritised-Logic can be turned into a symmetrical logic with more connectives. We shall address this problem later. Girard’s [Girard, 1987] linear logic is an example of a Resource (bounded) logic for which there exists a symmetrical proof (net) theory.

The general form of the Resource-logic is most naturally cast as a form of Labelled Deductive system (LDS). If we are going to have control over the use of resource or inference then we must be able to keep the accounting right of what we used and how we used it. If the accounting is to be complete then special notational systems must be employed and this is LDS. We do have, in a Gentzen formulation, the possibility of labelling formulas by placing them to the left or to the right of the turnstile “⊢”, and also by allowing multisets, for example we can write: A, A ⊢ B, B, C. One can go further and allow sequences to the right or left of ⊢ or even more complex structures. This is nothing but geometrical labelling and one may as well take on the general case and say that we have a system of labels, symbolised in the form (L, ∗, <) and that what we are dealing with are labelled wffs of the form α : A, α the label, A the wff.

Another example of rule restriction is not to use rule R_{1} after rule R_{2} has been used. In default logic for example we may allow the use of a default rule to get a conclusion A to generate more conclusions via modus ponens (ie A, A → B ⊢ B) only if A was not obtained by default and we may not allow A to generate more defaults. This is inference control. The most general case is in defeasible reasoning and in ordered logic where the rules are classified according to strength and rules can defeat others, for example the database:

1. Birds fly

2. Big birds do not fly

3. Tweety is a big bird

allows us to deduce both Tweety flies and Tweety does not fly. One way to get the right answer is to say that rules are stronger if their antecedants are logically stronger and we must use the stronger rule to decide between any contradictory pair of derivable atoms of the form {p, ∼ p}. This is definitely a prioritised-logic.

The remainder of this Chapter will study relevance implication logic and its related family of logics. The basic labelling and metabox mechanism for these logics is designed to record which of the assumptions were used in the deductive process, how many times and how. This should be compared with other resource logics which record priority or reliability of assumptions. For this reason all new assumptions are labelled by new atomic labels. The inference mechanism is the → introduction (metabox) rule (this is the goal Rule for →) and the → elimination (modus ponens) rules (the Data Rule for →) which can be used with various restrictions.

Schematically, these are:

Data Rule for → (→ E)

\begin{matrix}α : A \\ β : A → B \\ (β ∗ α) : B \end{matrix}

provided ψ_{MP} (α, β) holds

α is the label of the minor assumption. β is the label of the ticket. β ∗ α is the label of the resulting formula. ∗ is a convenient binary function for generateing new labels. In most cases ∗ is concatenation of sequences and α and β are sequences. In some cases α, β are multisets or sets and ∗ is union ∪. For any individual logic, ∗ will be specified. ψ_{MP} is a side condiiton on α and β such as α ∩ β = ∅ or such as α ≠ ∅, ψ_{MP} is a formula in some metalanguage suitable for describing these conditions.

Goal Rule for → (→ I)

To show γ : A → B use a box

α : A assumption

⋮  Reasoning using
⋮  local box rules

β : B exit γ : A → B provided ψ_{I}(α, β, γ)

α is a new atomic label, in whatever is considered atomic in the labelling discipline. ψ_{I}(α, β, γ) is the exit condition, telling us how α, β, γ are related. The most general is the requirement β = γ ∗ α. In case ∗ is set union we may have for example α ⊆ β and γ = β − α.

There are two more parameters involved here which are not mentioned explictly. These are:

1. Properties of ∗, eg commutativity, associativity, etc. These properties may help us satisfy side conditions such as ψ_{I}(α, β, γ),

2. Deductive rules in the box itself, like what can be reiterated from outer boxes, how can the reiteration be used etc.

In general there is a trade-off between the properties of ∗ and the deductive conditions. For example the condition α ∩ β = ∅ in ψ_{MP} corresponds to the deductive condition of not using an assumption more than once. Details of the possible trade-offs will become evident in the sequel.

We begin with a list of Hilbert type axioms for future use. Some of the axiomatisation results are already available in Anderson and Belnap’s book. However it is necessary for us to present the metabox discipline in detail. The reader should also note that the metabox presentation and axiomatisation of a logic (eg W) yields the logic as a “module” ready to be combined with other metabox logics (e.g. relevance and modality) without any cost.

Definition 9.1.1 (Resource Axioms) First define (A^{k} → B) to be:

A^{0} → B = defB
(A^{n+1} → B) = defA → (A^{n} → B)

Consider the following stock of axioms and rules:

1. Identity A → A

2. Right Transitivity (A → B) → ((B → C) → (A → C))

2a. Right Transitivity Rule, (RT-Rule):

\frac{A → B}{(B → C) → (A → C)}

3. left transitivity (A → B) → ((C → A) → (C → B))

4. Distribution

a. (A → B) → ((A → (B → C)) → (A → C))

b. (A → (B → C)) → ((A → B) → (A → C))

4m, n (m, n) distribution (A^{m} → B) → ((A^{n} → (B → C)) → (A^{m+n} → C))

5m, n (m, n) contraction (A^{m} → B) → (A^{n} → B)

6β β-deduction β → (α → β) Provided α, β satisfy the condition below: α, β-condition possibilities:

(a) β(∅): no condition on α or β.

(b) β(→) : β = C → D, β has an implicational form, α arbitrary.

(c) (H): ⊢H α in the logic H, β arbitrary.

7γ γ-Permutation (A → (γ → C)) → (γ → (A → C)) Provided γ satisfies the condition below. Possibilities for γ:

(a) γ(∅): no condition on γ

(b) γ(→) : γ has the form of an implicational C → D.

(c) γ(H): A ⊬H γ.

8. Restart (Peirce’s Rule) ((A → B) → A) → A

9_{k} k-mingle A^{k} → (A → A)

10. Modus Ponens:

\frac{A, A → B}{B}

11. Ackerman Type Rules

a. \frac{B, A → (B → C)}{A → C}

b. \frac{B, (B → A) → C}{A → C}

12. LC-Axiom ((A → B) → C) → (((B → A) → C) → C)

13. MV-Axiom ((A → B) → B) → ((B → A) → A)

14. Rose’s Axiom R_{k} ((A^{k} → B) → A) → A)

The following explains the metabox and labelling meaning of the axioms. Axioms (1) and (3) (identity and left transitivity), and rule 2a correspond to the labelling system where + is associative and can therefore be regarded as concatentation. When we perform modus ponens of α : A with β : A → B, we get the label βα : B in this order. When we open a box, assume a : A we must be able to prove γa : B in order to exit with γ : A → B. See 9.2.6.

The corresponding metabox deductive rules are that only implications can be reiterated and that they must be used in the deductive process as tickets only and in the same order as the order of nesting (reiteration from an inner box must be used earlier than from outer box). See 10.3.9.

Axiom 2 allows for reiterations to be used in any order. See 10.3.4. 9.2.6(b) gives the corresponding labelling restrictions for W.

Axioms (4) and (5) both have to do with how many times an assumption can be used in a box. In labelling terms this means the question whether the labels are sets and + is taken as a set union or the labels are multiset and + is taken as multiset union. The two axioms (4) an (5) are not equivalent unless axiom (7) is present.

Axiom (7) is commutativity of +. In metabox terms (7) allows us to use reiterations as minor premisses and not only as tickets.

Axiom 6 has to do with the question of whether the assumption α : A opening a box has to be used at all in the proof of β : B (ie can we exit with γ : A → B without the proof of B using A). In labelling terms it means α ⊆ β.

Axiom 8 has to do with the restart rule. If we have a box within a box (see fig 9.1),

1  Shows B
2 A

\begin{matrix}3 & & Show D \\ 4 & C \end{matrix}

5

Figure 9.1:

can we show B in the inner box instead of D? In other words, do we read the above as equivalent to (see fig 9.2)

1  Shows B
2 A

\begin{matrix}3 & & Shows D ∨ B \\ 4 & C \end{matrix}

5

Figure 9.2:

Usually Peirce’s rule yields classical logic. We show that it can be added to these weaker logics without turning them into classical logic.

Axiom 9 is a labelling axiom. It has to do with how we label several occurrences of A. Do we identify them as one occurrence and give them the same label?

Rule 11 has to do with the reasoning process. Is A → ((B → B) → A) a theorem? Can we reason inside a box and get (B → B) from nowhere? In labelling terms this is the condition α ≠ ∅, restricting the modus ponens rule.

Axiom 12 is the axiom for Dummett’s LC. When added to intuitionistic logic and when added to many valued logics it gives linearity of the truth values.

Axioms 13 and 14 are axioms added to obtain Lukasiewicz’s many valued logic. Rose’s axiom R_{k} helps axiomatise Lukasiewicz k + 1 valued logic. Notice that for k = 1 we get Peirce’s rule. Detailed discussions will be given in the appropriate chapters.

Definition 9.1.2 Using the axioms of 9.1.1, the table below defines some new and some known Hilbert type systems. All systems allow for substitution and modus ponens.

System Name  Axioms  Comments
CL  (1), (3), (2a)  Concatenation logic
W  (1), (2), (3)  Considered the weakest

logic for which a reasonable deduction theorem exists.

TE  (1), (2), (3), (4) Ticket entailment. (4b)

can be proved from

(1)-(3) (4a).

(4a) is equivalent in TE to 5_{(2,1)}.

Linear Logic LL  (1), (2), (3),  (7 γ(∅))
Relevance R  (1)-(4),  (7 γ(∅))
Entailment E  (1)-(4),  (7 γ(→))
Strict Implication  (1)-(4),  (7 γ(∅))

(6 β(→))

Intuitionistic Logic  (1)-(4),  (7 γ(∅))

(6 β(∅))

Classical Logic  (1)-(4), (8)  (7 γ(∅))

(6 β(∅))

Linear Classical  Linear Logic  A new logic

with (8)

Relevance Classical  R with (8)  A new logic
H Relevance  (1)-(4),  (7 γ (H)) A new logic
LE Linear Entailment (1)-(3),  (7 γ(→)) A new logic
WC  (1)-(3), (8)  A new logic
B Left Transitivity  (1), (3) and (11) A new logic

9.2 Basic resource logics

Definition 9.2.1 (The Logic W) Consider the system W of metabox discipline of → with the following rules:

1. The basic forward rule is modus ponens. The labels are sets of atomic labels and label propagation is done according to the rule MP1 (modus ponens for linearity).

α : A β : A → B

α ∪ β : B  provided α ∩ β = ∅ and α ≠ ∅

This is really the resource condition for linearity. If α ∩ β ≠ ∅ then both A and A → B used the same resource (eg C) and hence B cannot be derived because it would be using C more than once. The condition α ≠ ∅ ensures we do not use logical theorems in boxes. The meaning will become clearer later. In terms of Definitions 3.4.2 and 3.4.9, we have that ψ_{MP} (α, β, γ) is: α ≠ ∅ ∧ (α ∩ β = ∅) ∧ γ = α ∪ β.

2. Box Goal Rule:

Assume we are in a box named b. In line k of this box we want to show A → B. To show A → B open a box and name it a. Assume A with a new atomic label {a} : A, also written a : A. Show B with label β. The box is successful if a ∈ β. Exit the box with γ : A → B, where γ = β − {a}.

This is the condition of relevance logic. To show A → B we must assume A and prove B in a way which uses A.

In the proof of B we can use some reiterations. The next rule tells us what reiterations we can use.

3. Metabox Reiteration Rule:

Given an outer box and an inner box as in the diagram (fig 9.3):

1  Show A → B

Line k : 2

3  Show B
4 A  Assumption
5 B
6

Figure 9.3:

The candidates for the allowed reiteration from the outer box into the inner box are all formulas which are assumptions, earlier reiterations or proved (in lines m ≤ k−1) and which have the form C → D. We allow to bring in as reiteration any C → D. The reiteration C → D can be used in the inner box, however, only as a ticket ie in a deduction of the form

C
C → D reiteration
D

and not in a deduction of the form

(C → D) → X

C → D  reiteration

X In terms of Definition 3.4.2 we have defined R′ of 2.5.1 and the way modus ponens works in the inner box.

Note that in the Box Goal Rule of the previous definition we name the boxes with completely new names and use completely new labels on new assumptions. We will have b < a, ie a is subordinate to b. In fact, since in the logic W, each new box arises only in order to show some implication A → B and it has one assumption a : A, we can achieve more economy of notation if we name the box as “a” as well. Thus the relation < can be extended to labels. Call the original (most external box) as box 0. Let the assumption be numbered and named

Line1 : n_{1} : A_{1}
Line2 : n_{2} : A_{2}
⋮
etc

For the inner boxes, whenever we start a new box to show A → B, we name it eg Box a and name the assumption a : A thus (fig 9.4)

Line k : A → B from Box a

\begin{matrix}Box a  1 & & Show B \\ (k, 1) :  2 & a : A \end{matrix}

Figure 9.4:

Each formula in any box has a label α. If α = {a_{1} … a_{n}} one can tell exactly which boxes it “used”. The relation ≤ can be extended to labels as follows:

1. x > n_{i}, for all i since n_{i} are labels of the outer box.

2. a > b if a names a subordinate box to b (remember that labels ≠ n_{i} are also names of boxes).

3. Let α ≤ β if max α ≤ max β

Thus when α : A, β : B are compared then α ≤ β means that B was proved in a more inner box than A. Note that the metabox condition (3) of definition 9.2.1 is equivalent to the requirement that whenever we perform modus ponens

\begin{matrix}α; A \\ β : A → B \\ βα : B \end{matrix}

we have max β < max α.

Definition 9.2.2 Let Δ be a labelled database.

(a) Let Δ ⊢W α : Q mean that there is a box proof of Q from Δ with label α : Q.

(b) Let Δ ⊢_{MP 1} α : Q mean that Q can be proved from Δ with label α using only the rule of linear modus ponens MP1.

Example 9.2.3 Let us check the deduction of (A → (B → C)) → ((B → (A → C)) (see fig 9.4)

Note that if we relinquish the requirement that reiterations must be used only as tickets the box proof above will go through for B = B_{1} → B_{2}. That is we can prove in that case that

∅ ⊢ (A → ((B_{1} → B_{2}) → C)) → (((B_{1} → B_{2}) → (A → C)).

We shall see that the new condition gives rise to the system LE of Linear Entailment.

Box a_{1}  1  Show B → (A → C)
2 a_{1} : A → (B → C)  Assumption
3 a_{1} : B → (A → B)  from Box a_{2}
Box a_{2}  4  Show A → C
5 a_{2} : B  Assumption
6 a_{2}a_{3} : A → C  from Box a_{3}
Boxa_{3}  7  Show C
8 a_{3} : A  Assumption
9 a_{1} : A → (B → C)  reiteration
10 a_{1}a_{3} : B → C  modus ponens
11 To obtain C we must bring in B.
12 We can do that only if B has the
13 form B_{1} → B_{2}. Even if B has
14 this form we cannot use it with
15 B → C because whatever reiterations
16 we bring in must be used as tickets.

Figure 9.5:

Box a_{1}  1  show (B → C) → (A → C)
2 a_{1} : A → B  assumption
3 a_{2} : (B → C) → (A → C)  from Box a_{2}
Box a_{2}  4  show A → C
5 a_{2} : B → C  assumption
6 a_{2}a_{1} : A → C  from Box a_{3}
Box a_{3}  7  show C
8 a_{3} : A  assumption
9 a_{1} : A → B  reiteration
10 a_{1}a_{3} : B  modus ponens
11 a_{2} : B → C  reiteration
12 a_{2}a_{1}a_{3} : C  modus ponens
exit 13 a_{2}a_{1} : A → C
exit 14 a_{1} : (B → C) → (A → C)
exit 15 ∅ : (A → B) → ((B → C) → (A → C))

Example 9.2.4 Consider:

∅ ⊢ (A → B) → ((B → C) → (A → C)).

Try the following box (fig 9.6):

The logic W can be weakened, to obtain the logic CL, concatenation logic, the most basic logic of resource, defined below. Both logics are further studied in sections 4 and 5 of this chapter.

Definition 9.2.5 Consider the following logics, defined by varying the restrictions of 9.2.1.

1. The logic CL obtained by strengthening the modus ponens rule of (1) of 9.2.1 and requiring that a modus ponens on A and A → B is allowed only if the reiteration A → B comes from an earlier box than the earliest of the reiterations used in proving A. In the notation of (2) of 9.2.1, this means that if a is the name of the current box then max β ≤ min α − {a}.

2. The logic TE is obtained by abandoning the restriction α ∩ β = ϕ in the modus ponens.

3. Linear logic LL is obtained by abandoning restriction (3) of definition 9.2.1 and allowing for any formula to be reiterated and be used in any way, either as a ticket or as a minor. The only remaining restriction in the box discipline of linear logic is that formulas be used exactly once. See example 9.2.3

4. The logic LE of linear entailment allows for reiteratins to be used as minors but the reiterations themselves can be only of implicational form.

Remark 9.2.6 (a) Consider a refinement on the labelling and Modus Ponens which yields the logic CL (of 9.2.5 above) in a different way. Consider the following discipline. Labels are sequences of atomic labels. Propagation of labels follows the rule:

\begin{matrix}α : A \\ β : A → B \\ βα : B \end{matrix}

where “βα” is the result of concatentation of the sequences and provided α ≠ ∅.

To show γ : A → B, we open a box with assumption a : A, “a” a new atomic label. If we get B in the box with label γa, then we can exit with γ : A → B. Notice that B must be obtained with “a” appended to the right hand side of the sequence.

Here are the boxes proving the proposed axioms of CL.

Show (A → B) → ((C → A) → (C → B)). See fig 9.7.

Compare the proof of the axiom (A → B) → ((B → C) → (A → C)) as given in 9.2.4. The label propagation does follow our rules, however, the proof cannot go through because the exit from box a_{2} is not legal in our discipline. The label a_{2} is not the right hand most one. Similarly 9.2.3 cannot go through. (A → (B → C)) → (B → (A → C)) is blocked. We can bring in B in Box a_{3} of the above example and get a_{1}a_{3}a_{2} : C but we cannot exit box a_{3} again because the label a_{3} is not the right and most one. Compare with 2.2.8.

Remark 9.2.7 The purpose of this remark is to show that there is a trade-off between label propagation rules and metabox reiteration rules. In the logic W, we can reiterate only implications. However, we can modify the labeling system to achieve the same effect. To see this, we now give a different labelling discipline for W. A label has the form of a pair α, a where α is a multiset and a is an atomic label. Essentially α, a is nothing but a multiset with one designated element. New assumptions are labelled ∅, a. We allow for the designated element not to exist. We adopt the following two rules:

Box a_{1}  1  Show (C → A) → (C → B)
2 a_{1} : A → B  Assumption
3 a_{1} : (C → A) → (C → B)  from Box a_{2}
Box a_{2}  4  C → B
5 a_{2} : C → A  Assumption
6 a_{2}a_{3} : C → B  from Box a_{3}
Box a_{3}  7  Show B
8 a_{3} : C  Assumption
9 a_{2} : C → A  reiteration
10 a_{2}a_{3} : A  modus ponens
11 a_{1} : A → B  reiteration
12 a_{1}a_{2}a_{3} : B  modus ponens
exit 13 a_{1}a_{2} : C → B
exit 14 a_{1} : (C → A) → (C → B)
exit 15 ∅ : (A → B) → ((C → A) → (C → B))

Figure 9.7:

1. \begin{matrix}α, a : A \\ β, b : A → B \\ α ∪ β ∪ \{b\}, a \end{matrix}

provided (β ∪ {b}) ∩ (α ∪ {a}) = ∅;

and the box rule:

2. \begin{matrix}∅, a : A \\ γ, b : B \end{matrix}

exit γ′ : A → B, provided (1) γ′ = γ and a = b or (2) γ′ = γ − {a} and b = ∅ and a ∈ γ.

In the box rule a must be the designated element of the label of the conclusion. If the assumption is labelled ∅, a and the conclusion is γ, ∅ then we can still exit with γ − {a}, ∅ provided a ∈ γ.

The proof of (A → B) → ((B → C) → (A → C)) will go through. See fig 9.8.

The proof of (A → (B → C)) → (B → (A → C)) will not go through. See fig 9.9 and compare with fig 9.5.

If we drop the side condition on b in the box rule (b) above and read the labels as sets, we get the logic TE. Consider for example (A → (B → C)) → ((A → B) → (A → C)). See fig 9.10.

Remark 9.2.8 [The logic BR1] This logic is what we consider the logic of basic resource. The intuition behind it is that each assumption can be used at most once but it is allowed that assumptions are not used at all. It can be defined as a Hilbert system with modus ponens and the axioms

1 ∅, a_{1}; A → B  Assumption
2 ∅, a_{2} : B → C  Assumption
3 ∅, a_{1} : A → B  reiteration
4 {a_{1}}, a_{3} : B  MP1
5 ∅, a_{2} : B → C  reiteration
6 {a_{1}, a_{2}}, a_{3} : C  MP1
exit  7 {a_{1}, a_{2}}, ∅ : A → C
exit  8 {a_{1}}, ∅ : (B → C) → (A → C)
exit  9 ∅, ∅ : (A → B) → ((B → C) → (A → C))

Figure 9.8:

1 ∅, a_{1} : A → (B → C)  Assumption
2 ∅, a_{2} : B  Assumption
3 ∅, a_{3} : A  Assumption
4 ∅, a_{1} : A → (B → C)  reiteration
5 {a_{1}}, a_{3} : B → C  MP1
6 ∅, a_{2} : B  reiteration
7 {a_{1}, a_{2}}, a_{2} : C  MP1
8 We cannot exit because a_{3} is not
9 the rightmost element in the sequence
10 of the label of C

11

12

1 ∅, a_{1} : A → (B → C)  assumption
2 ∅, a_{2} : A → B  assumption
3 ∅, a_{3} : A  assumption
4 ∅, a_{2} : A → B  reiteration
5 {a_{2}}, a_{3} : B  MP
6 ∅, a_{1} : A → (B → C)  reiteration
7 {a_{1}}, a_{3} : B → C  MP
8 {a_{1}, a_{2}, a_{3}}, a_{3} : C  MP
exit  9 {a_{1}, a_{2}}, ∅ : A → C
exit 10 {a_{1}}, ∅ : (A → B) → (A → C)
exit 11 ∅, ∅ : (A → (B → C)) → ((A → B) → (A → C))

Figure 9.10:

(1)-(3), 6_{β(∅)}, 7_{γ(∅)} of 9.1.1. It is essentially intuitionistic logic without the distribution axiom. If we drop 6_{β(∅)} from BR1, we get linear logic.

The labelling discipline for BR1 is as follows: Labels are multisets of atomic labels. Assumptions always get new atomic labels. Modus ponens propagates labels in the usual way with the following side condition:

α : A β : A → B

β ∪ α : B provided α ∩ β = ∅.

To show γ : A → B we open a box, assume {a} : A, with a new atomic label a and show β : B. It is not required that A be used in the proof (ie a ∈ β). We exit with γ = β − {a}.

Example 9.2.9 We show that in the system CL, the following rule holds: RT-Rule (right transitivity rules):

\frac{⊢ A → B}{⊢ (B → C) → (A → C)}

where ⊢ D means ∅ ⊢ ∅ : D.

We show that by looking at the CL metabox discipline. Since we assume ⊢ A → B, we assume that there exists a box of the form (see fig 9.11)

Box a_{2} 1

l_{1}  2 a_{2} : A  assumption
3  ⋮
4  ⋮
l_{k}  5 a_{2} : B
exit  6 ∅ : A → B

Figure 9.11:

We want to show (B → C) → (A → C). Fig 9.12 below gives the successful box.

1  Show A → C
2 a_{1} : B → C  Assumption
3 a_{1} : A → C  from box
l_{1}  4 a_{2} : A  Assumption
5 continue with proof lines
6 l_{2}, …, l_{k} as in box a_{2} of F igure 9.11
l_{k}  7 a_{2} : B
m_{1}  8 a_{1} : B → C  reiteration
m_{2}  9 a_{1}a_{2} : C  modus ponens
exit 10 a_{1} : A → C
exit 11 ∅ : (B → C) → (A → C)

Figure 9.12:

9.3 Peirce’s axiom and the restart rule

Definition 9.3.1 (The Logic WC) We now show the box conditions corresponding to the additional axiom (Peirce’s Axiom)

((A → B) → A) → A.

We modify condition 2 of the box rules of 9.2.1 by allowing a box to show A → B to be successful if either B is proved or some earlier goal of an external box is proved. This rule I call the Restart Rule.

Restart Rule As in Fig 9.13:

1  Show previous goals B_{1}, …, B_{n}
2  Show B
3 a_{1} : A  Assumption
4 ⋮
5 ⋮
6 α : B_{i},  a_{1} ∈ α, for some i such that i ∈ {1, …, n}
exit  7 α − {a_{1}} : A → B

Figure 9.13:

Note that we exit with:

A → B with label α − {a_{1}}

This is best explained by example.

Example 9.3.2 From the assumptions (A → B) → A show A. See fig 9.14.

Note that although this axiom, Peirce’s Axiom, usually gives us classical logic, it does not give us that much more in this case. (A → (B → C)) → (B → (A → C)) still cannot be proved.

1  Show A
2 a_{1} : ((A → B) → A)  assumption
3 ∅ : A → B  from box
4  show B, previous goal A
5 a_{2} : A  Assumption
6 a_{2} : A  repetition of previous line
7 success by restart
8 a_{2} : A
9 Success of box because we showed an earlier goal.
exit 10 ∅ : (A → B)
11 a_{1} : A  modus ponens with (3) and (2)

Figure 9.14:

Example 9.3.3 Let us re-examine 9.2.3 in the logic WC (see fig 9.15).

Example 9.3.4 Let us check whether we can prove A → ((A → B) → A). (See fig 9.16)

We now show the correspondence between Peirce’s axiom and the Restart Rule. Suppose we have a box of the form (see fig 9.17):

The external box wants to show A → B. In the course of the proof we want to show C → D. We open a box to show C and succeed in the box to show B. We really need to show D. How do we proceed? The Restart Rule says, since B was a previous goal of an external box we can succeed (accept B instead of D).

To justify the Restart Rule, imagine for a moment that we had the extra assumption a_{2} : (B → D) in the external box. Then everything is alright. We bring it in (reiteration) and use it as a ticket with the α : B which we already have and get α, a_{2} : D. Since a_{1} ∈ A already, we can exit with (α − {a_{1}}), a_{2} : C → D.

You may say that this is fine, but the problem which we have solved is not the original problem, but the following one (see fig 9.18):

or equivalently (see fig 9.19):

This is not the original problem. However, if we have all instances of the Peirce’s Axiom, as further assumptions, we can use ((B → D) → B) → B) and modus ponens and get B.

Theorem 9.3.5 Let Δ be a labelled database and assume Δ ⊢WC α : Q (using the Restart Rule). Then there exist another box proof of α : Q from Δ ∪ Δ′, where Δ′ is a finite set of substitutions of Peirce’s axiom all labelled ∅.

Proof. By induction on the number n of nested boxes which use Restart. Case n = 0 There is nothing to prove. Case n ≥ 1 Assume that Restart is used in m inner boxes. We eliminate the use of Restart systematically. Choose an inner box, say Box 2. We have the situation (see fig 9.20):

If in the inner box Restart is not used (ie D is proved) then we do nothing. Consider a box where B is proved, and an appeal to Restart is made. We want to prove B from A in W with the use of the extra assumption ((B → D) → B) → B and without Restart.

Replace box 1 by the following proof

Box a_{1}  1  Show B → (A → C)
2 a_{1} : A → (B → C)  Assumption
3 a_{1} : B → (A → C)  from Box a_{2}
Box a_{2}  4  Show A → C, previous goal B → (A → C)
5 a_{2} : B  Assumption
6 a_{1}a_{2} : A → C  from Box a_{3}
Box a_{3}  7  Show C, Previous goals B → (A → C), A → C
8  Show C
9 a_{3} : A
10 a_{1} : A → (B → C)
11 a_{1}a_{3} : B → C
12 B cannot be brought in.
13 The previous goals are of no use here.
14
15

Figure 9.15:

1  Show (A → B) → A
2 a_{1} : A  Assumption
3 a_{1} : A → (B → A)  from Box
4  Show A
5 a_{2} : A → B  Assumption
6 We cannot bring A in here. Even if we could,
7 A → B will not have been used in the proof.

8

1  Show B
2 a_{1} : A  Assumption
line(l, l′)  3 C → D  from Box
4  Show D, previous goal B
5 b_{1} : C  Assumption
6 ⋮
7 α : B
8

Figure 9.17:

1  Show B
2 a_{1} : A  Assumption
3 a_{2} : B → D  Assumption
4  Show D
5 C  Assumption
6 ⋮
7 D

8

Figure 9.18:

1  Show (B → D) → B
2 a_{1} : A  Assumption
3 a_{1} : (B → D) → D  from Box a_{2}
Box a_{2}  4  Show B
5 a_{2} : B → D  Assumption
6 a_{1}a_{3} : B  from Box a_{3}
Box a_{3}  7  Show D
8 a_{3} : C  Assumption
9 ⋮
10 a_{1}a_{3} : D
11 a_{1}a_{3} : B
12 a_{1} : (B → D) → B

Box 1  1  Show B
2 a_{1} : A  Assumption
3 a_{2} : B → D  Assumption
4 Proof lines
5 leading to Box 2
6 below
7 some label:C → D  from Box 2
Box 2  8  Show D
9 b_{1} : C  Assumption
10 ⋮
11 B
12

Figure 9.20:

line -1 ∅: ((B → D) → B) → B (assumption)

(or reiteration if we put all instances of Peirce’s Axiom at the very beginning of the entire deduction.)

Line 0: show A → B from box 1* (see fig 9.21)

The above modification can be done for every inner box of the form (see fig 9.22)

We can thus not use Restart, but we need extra instances of Peirce’s axiom as axioms.

This completes the induction step and the proof of 9.3.5. ■

Remark 9.3.6 We now consider the metabox discipline for Rose’s axiom R_{n}, namely:

((A^{n} → B) → A) → A).

We modify the Restart Rule essentially as follows. Suppose we are at an inner box and the box goal is to show B with some label. The goal A was a goal of some outer box. The Restart rule for R_{n} allows one to prove, in the inner box, the goal A n-times, possibly with different labels α_{1}, …, α_{n}. These n proofs of A then count as a proof of B with label α_{1}α_{2} … α_{n}. Note that for n = 1 this is the old restart rule for Peirce’s axiom. To show B we show α : A and thus get α : B, with the same label α.

The reader may ask what does it mean to show A n times? If A can be shown at least once, with label α, then one can count that n times and say we shown B with label αα … αn times.

Example 9.3.7 Show ((A → (A → B)) → A) → A in the logic with R_{2}. Use the following box: (see fig 9.23)

Notice that in the inner box we could have also chosen to show A twice with label a_{3}. This would have given us a_{3}a_{3} : B which would have not allowed us to exit from the a_{2} box.

Theorem 9.3.8 The R_{n}-restart rule characterises the axiom R_{n}.

Proof. We show soundness. Suppose in the inner box we want to show A. Since ∅ : ((A^{n} → B) → A) → A is a theorem of the logic R_{n}, if we show α : (A^{n} → B) → A we can deduce by modus ponens α : A.

So let us try to show α : (A^{n} → B) → A. How do we do that? We open a box a_{1} (see fig 9.24): Note that a_{1} will not be discharged until the exit of box a_{1}. The restart rule allows us not to

write box a_{1} explicitly. Completeness follows from the fact that axiom R_{n} can be proved using the restart rule R_{n}. ■

Box 1∗  1  Show B
2 a_{1} : A  Assumption
3 (B → D) → B.  from box 1 ∗ ∗
Box 1 ∗ ∗  4  Show B
5 ∅ : B → D  Assumption
6 ⋮ proceed as in proof
7 ⋮ lines leading to
8 ⋮ Box 1 in figure 9.20
9 some label: C → D  from Box 2∗
Box 2∗ 10  Show D
11 b_{1} : C  Assumption
12 ⋮
13 proceed as in box 1, figure 9.20
14 ⋮
15 B
16 proof of box 1 stops here.
17 We continue:
18 B → D  reiteration
19 D  MP1
exit 20 with C → D
21 ⋮
22 ⋮ proceed as in outer box 1 of figure 9.20
23 α : B
exit 24 (B → D) → B
25 ∅ : ((B → D) → B) → B  reiteration of axiom
26 a_{1} : B  MP1
exit 27 A → B

Figure 9.21:

1 show C_{i} → D_{i}_{\begin{matrix}2 \\ 3 \\ 4 \end{matrix}}

1  Show a_{1} : A
2 a_{1} : A → (A → B)) → A  Assumption
3 ∅ : A → (A → B),  from box 1
4 ⋮
Box 1  5  Show a_{2} : A → B
6 a_{2} : A  Assumption
7 a_{2} : A → B  from Box 2
Box 2  8  Show a_{3} : B
9 a_{3} : A  Assumption
10 a_{2}a_{3} : B  we use the restart rule, since we have A twice,
11  once with a_{3} and once with a_{2}
exit 12 a_{2} : A → B
exit 13 ∅ : A → (A → B)
14 a_{1} : A  modus ponens
exit 15 ∅ : ((A → (A → B)) → A) → A

Figure 9.23:

Box a_{1}  1  Show A
2 a_{1} : A → (A → … (A → B) …)  Assumption
3 We try and get A in this box.
4 Suppose at some inner box we want to show B
5  Show B
6 show α_{1} : A, α_{2} : A … α_{n} : A,
7 i.e. show A n times and do modus
8 ponens with a_{1} : A → (… A → B)
9 and get a_{1}α_{1} … α_{n} : B
10 continue to argue and get a_{1}α : A
exit 11 α : A → (A → … (A → B) → A

254 CHAPTER 9. RESOURCE LOGICS

Proof Theory for Resource Logics

10.1 Concatenation logic and linear logic

This section will present in detail one basic system which we call concatenation logic CL. It is intimately connected with associative concatenation and is as basic to the family of various resource logical systems, as concatenation is basic to functions and categories. The best way to present it is in the traditional manner, as a Hilbert system and study its properties again in a conservative way. We have the following objectives for CL:

• present a basic logic for resource which is weaker than linear logic and the well known Lambek calculus from categorical grammar.

• illustrate on this logic our ideas of LDS, metalangauge features, and control derivation properties.

• give semantics for this logic and extend this semantics to linear logic.

• give semantical meaning to some of the puzzles of linear logic.

• show that CD-logics involve three orthogonal features which can be mixed. These are:

1. Control derivation and resource considerations.

2. Hilbert simulation (via connectives) of meta-level features.

3. Symmetrical simulation of control features (parallel to the proof nets of linear logic).

Definition 10.1.1 (Hilbert formulation of CL and LL) The Hilbert system CL is defined by the following: Axioms

1. A → A

2. (A → B) → ((C → A) → (C → B))

Rules

A, A → B ; MP ; B

A → B

RT
(B → C) → (A → C)

Notice that this logic is very weak. We cannot prove (as will be seen from the semantics) that:

3. (A → (B → C)) → (B → (A → C)), Adding axiom (3) gives us the Hilbert system LL of linear implication. This system is still relatively weak. It cannot prove (4) nor (5) below:

4. A → ((A → B) → B), nor

5. (A → B) → ((B → C) → (A → C))

Remark 10.1.2 In categorical terms axiom 2 is Geach’s principle:

(A, B) ⇒ ((C, A), (C, B)).

Lambek calculus allows for 3., eg Lambek allows both:

A, (A, B) ⇒ B
(A, B), A ⇒ B

while we allow only the second

CL ⊢ (A → B) → (A → B)

while

CL ⊬ A → ((A → B) → B)

Definition 10.1.3 (Proof from assumptions in the Hilbert System CL) 1. A database Δ is a sequence of formulas A_{1}, … A_{n}. A database can be presented either as a seqeunce (A_{1}, …, A_{n}) or as a set of labelled formulas of the form t_{1} : A_{1}, … t_{n} : A_{n}, with the additional configuration t_{1} < … < t_{n}. t_{1} … t_{n} are atomic labels.

2. We say ⊢CL B iff there is an annotated sequence of formulas of the form α_{1}, …, α_{m} = B (the annotation may not be explicitly exhibited) such that each element is annotated either as an axiom (in which case it is indeed an instance of an axiom) or is annotated as (and is indeed) obtained from previous elements using MP or RT.

3. Let Δ = {t_{i} : A_{i}}, t_{1} <, …, < t_{n} be a database. We say Δ ⊢CL B iff there exists an annotated sequence β_{0}, C_{0}, …, β_{m} : C_{m} with C_{m} = B such that each element of the sequence is either in Δ or is a theorem (ie ⊢CL β_{i}) or is obtained from previous elements using modus ponens.

4. If C_{j} is obtained from C_{i} and C_{k} = C_{i} → C_{j} by modus ponens then max(β_{k}) < min(β_{i}) and β_{j} = β_{k}β_{i}, where ‘αβ’ denotes concetenation of α then β.

5. If β_{i} = ∅ then CL ⊢ B_{i}.

Remark 10.1.4 1. Note that in the previous definition the label β_{m} of B must be

β_{m} = (t_{1}, …, t_{n})

2. If t_{1} : A → A appars in the database, then β : A → A can appear in the proof either as an assumption, with β = t_{1} or as an instance of a theorem, in which case β = ∅.

Later, we shall prove the deduction theorem for CL. The above distinction then becomes important. We do not have A → ((A → A) → A) as a CL theorem. By the deduction theorem, we need to show for t_{1} < t_{2}

t_{1} : A, t_{2} : A → A ⊢ A

and A → A has to be used in the proof. However, since t_{2} > t_{1}, we canot apply modus ponens, as the next example discusses.

Example 10.1.5 Consider the two databases: Δ_{1} is:

1. A → B

2. A

Δ_{2} is:

1. A

2. A → B

Δ_{1} ⊢ B because we have A → B, A, B as proof. Notice the assumptions appear in the proof in the same order as they appear in the database. Each assumption appears once exactly and tickets appear to the left of minor premisses. The above proof will not do for Δ_{2} ⊢ B since the order of the assumptions in the proof is not the same as in Δ_{2}.

Example 10.1.6 Consider Δ_{3}:

1. A → (A → B)

2. A

Consider the “proof” A → (A → B), A, A → B, B. This “proof” is not acceptable, because to get B we use MP with A as minor which is to the left of the ticket. If we add A → (A → B), A, A → B, B we have used A twice. The proof is valid for the database Δ_{4}:

1. A → (A → B)

2. A

3. A

Notice that if we do not require that the minor comes after the ticket in MP then we need to count uses of assumptions in MP, if we want to control how many times an assumption is used.

The notion Δ ⊢ B was defined using the notion of ⊢CL A. In the proof of B from Δ, we “landed” theorems. Can we suggest a direct discipline for proving Δ to B using only Δ?

The answer is ‘yes’ within the framework of labelled deducitve systems.

Definition 10.1.7 (LDS Discipline for CL) We assume our assumptions are labelled as a sequence a_{1} : A_{1}, …, a_{n} : A_{n}, a, < … < a_{n}. Our proof procedures use metaboxes. We use the following rules:

1. Definition of Metabox Level 0 A proof is a sequence of lines. Each line contains a labelled formula and a justification. The following three cases can be used:

(a) The line contains an assumption a_{i} : A_{i} and the justification says “assumption”.

(b) The line contains αβ : B and the justification says “from two previous lines by MP” and there are two previous lines, one with α : A → B and one with β : A, and A is not justified as a “reiteration”. Notice the order of concatenation of the labels. We have further condition that max(α) < min(β).

(c) The line is γ : A and it is justified as “reiteration”.

2. Example

a_{1} :  C → (A → B) assumption
a_{2} :  C  assumption
a_{3} :  D → A  assumption
a_{4} :  D  assumption
a_{1}a_{2} :  A → B  MP
a_{3}a_{4} :  A  MP
a_{1}a_{2}a_{3}a_{4} : B  MP

3. Metabox of Level n + 1 A proof is a sequence of lines. Each line contains a labelled formula and a justification. The following four cases can be used:

(a) The line contains an assumption a_{i} : A_{i} and the justification says “assumption”.

(b) The line contains αβ : B and the justification says “from two previous lines by MP” and there are two previous lines one with α : A → B and one with β : A and the following holds:

i. A is not justified as “reiteration”.

ii. max(α) < min(β)

Notice the order of concatenation of the labels. The reader should note that (i) above follows from (ii).

(c) The line is γ : A and it is justified as “reiteration”.

(d) The line is γ : A → B and the justification is “from the metabox of level m ≤ n” where line 1 of the metabox is a : A where a is a new atomic label and its ordering is stipulated to be bigger than any atomic label in any assumption or reiteration in previous lines of the metabox of level n + 1. The reiterations of the metabox of level m are all implicational formulas proved in previous lines of the metabox of level n + 1. These can be enumerated as the next lines 2, 3, 4, … of the metabox of level m. (In practice one can leave pointers or bring them in as needed.) The last line of the metabox of level m is γa : B and appropriate justification is present.

Example 10.1.8 Show ∅ ⊢ (A → B) → ((C → A) → (C → B)).

Proof. Line 1 : ∅ : (A → B) → ((C → A) → (C → B)) “from box a”, see Fig 10.1.

In practice, one does not bring in reiterations nor does one use excessive indices. Thus one can write the previous proof of Figure 10.1 as in Figure 10.2. ■

Example 10.1.9 Another example is in Figure 10.3.

Definition 10.1.10 1. a_{1} : A_{1}, …, a_{n} : A_{n}, a_{1} < … < a_{n} ⊩_{m} B if and only if (def) there exists a metabox proof of level ≤ m with assumptions exactly a_{1} : A_{1}, …, a_{n} : A_{n} with the last line with a_{1} … a_{n} : B.

2. Δ ⊩CL B iff Δ ⊩_{m} B for some m

Remark 10.1.11 The previous definition actually gave a natural deduction formulation for CL. The two rules are → Introduction and → Elimination. The complete definition is as follows: D̄ata structure for assumptions The assumptions are ordered in a sequence a_{1} : A_{1}, …, a_{n} : A_{n} with a_{1} < a_{2} < … < a_{n}. → Elimination Rule

\begin{matrix}α : A \\ β : A → B \\ βα : B \end{matrix}

Box a  1
2 a : A → B  Assumption
3 a : (C → A) → (C → B)  From Box b
Box b  4  Show C → B
5 b : C → A  Assumption
6 a : A → B  Reiteration
7 ab : C → B  From Box c
Box c  8  Show B
9 c : C  Assumption
10 b : C → A  Reiteration
11 a : A → B  Reiteration
12 bc : A  From 9, 10
13 abc : B  From 11, 12

14

15

Figure 10.1:

1 Show (A → B) → [(C → A) → (C → B)]
Box a  2  Show (C → A) → (C → B)
3 a : A → B  Assumption
4 a : (C → A) → (C → B)  From Box b
Box b  5  Show C → B
6 b : C → A  Assumption
7 ab : C → B  From Box c
Box c  8  Show B
9 c : C  Assumption
10 bc : A
11 abc : B

12

13

1 Show ∅ : (C → (A → B)) → (C → ((D → A) → (D → B)))
2 a_{1} : C → (A → B)  Assumption
3 a_{1} : C → ((D → A) → (D → B))  from Box
4 a_{2} : C  Assumption
5 a_{1} : C → (A → B)  Reiteration
6 a_{1}a_{2} : A → B  from 4 and 5
7 a_{1}a_{2} : (D → A) → (D → B)  from Box
8 a_{3} : D → A  Assumption
9 a_{1}a_{2}a_{3} : D → B  from Box
10 a_{4} : D  Assumption
11 a_{3}a_{4} : A  from 8, 10
12 a_{1}a_{2} : A → B  Reiteration
13 a_{1}a_{2}a_{3}a_{4} : B  11, 12

14

15

16

17

max(β) < min(α). → Introduction Rule To show γ : A → B, open a new box and get a new label a and temporarily append a : A to the current sequence of assumptions. Proceed to prove B with label exactly γa. When successful exit the box and continue the main proof (with a : A deleted from the current sequence of assumptions).

We now want to prove a deduction theorem for Δ ⊢CL B.

Theorem 10.1.12 (Deduction theorem for CL)

(A_{1}, …, A_{n}) ⊢CL B iff ⊢CL A_{1} → (A_{2} → … → (A_{n} → B) …).

Proof.

1. Assume ⊢CL A_{1} → … → (A_{n} → B) …).

We show (A_{1}, …, A_{n}) ⊢CL B. The following is a proof:

A_{1} → (… → (A_{n} → B) …)  theorem
A_{1}  assumption
A_{2} → (A_{3} → … (A_{n} → B) …) MP
A_{2}  assumption

⋮

A_{n} → B  MP
A_{n}  assumption
B  MP

Note that our conditions about the support for each line of the proof are satisfied.

2. Assume (A_{1}, …, A_{n}) ⊢CL B. We want to show that

⊢CL A_{1} → (A_{2} → … → (A_{n} → B) …)

We prove this by induction on the length k of the proof of t_{1}, …, t_{n} : B from t_{1} : A_{1}; …; t_{n} : A_{n}; t_{1} < …, < t_{n}. Let β_{1} : C_{1}, …, β_{k} : C_{k} be the proof with C_{k} = B.

Case k = 1 Subcase 1 We have ⊢CL B and (A_{1}, …, A_{n}) = ∅, the empty sequence. Then clearly the theorem holds.

Subcase 2 We have B = A_{1}, n = 1 and clearly ⊢CL A_{1} → B is a theorem.

Case k + 1 Subcase 1 B is a theorem. Since β_{k} = ∅ again (t_{1}, …, t_{n}) = ∅ and we have here a direct proof of B from some other theorems.

Subcase 2 B is an assumption. Then A_{1} = B as β_{k} = (t_{1}, …, t_{n}) and ⊢CL A_{1} → B.

Subcase 3 B is obtained from two previous lines using modus ponens. Let the two lines be β_{i} : C_{i} and β_{j} : C_{i} → B. Then we have maxβ_{i} < minβ_{i} and β_{j}β_{i} = t_{1} … t_{n}. These are the conditions of a successful proof.

So for some 1 ≤ m < n β_{j} = t_{1} … t_{n} β_{i} = t_{m+1} … t_{n}

This implies by definition that

(A_{1}, …, A_{m}) ⊢CL A → B

and

(A_{m+1}, …, A_{n}) ⊢CL A.

By the induction hypothesis:

⊢CL A_{1} → … → (A_{m} → (A → B) …)
⊢CL A_{m+1} → (… → (A_{n} → A) …).

We need to show that

⊢CL A_{1} → (A_{2} → … (A_{m} → … → (A_{n} → B) …)

This follows from lemma 10.1.13 below.

■

Lemma 10.1.13 (Cut for CL) If L is an extension of CL then (1) and (2) below imply (3) below:

1. ⊢L (A_{1} → … → (A_{n} → (A → B)) …)

2. ⊢L D_{1} → … → (D_{m} → A) …)

3. ⊢L A_{1} → … → (A_{n} → (D_{1} → … → (D_{m} → B) …)

Proof. By induction on m and n. Case m = n = 1 We have to show that (1) and (2) imply (3):

1. ⊢L A_{1} → (A → B)

2. ⊢L (D_{1} → A)

3. ⊢L A_{1} → (D_{1} → B)

From the RT-rule, we get using (2) that

4. ⊢L (A → B) → (D_{1} → B)

and using left transitivity we get

5. (A_{1} → (A → B)) → (A_{1} → (D_{1} → B)) we get (3) by modus ponens of (1) and (5).

Case m = 1, n arbitrary From ⊢L D_{1} → A we get ⊢L (A → B) → (D_{1} → B) and by induction on n we prove:

⊢L (A_{1} → … → (A_{n} → (A → B) …) → (A_{1} → … → A_{n} → (D_{1} → B) …)

For n = 1 this follows from the left transitivity axiom. Assume the above for n and get it for n + 1 by another application of the left transitivity axiom.

Case m + 1, n arbitrary We have

⊢L (A → B) → ((D_{m+1} → A) → (D_{m+1} → B))

hence

⊢L A_{1} → … → (A_{n} → (A → B)) …) → ((A_{1} → … →
(A_{n} → ((D_{m+1} → A) → (D_{m+1} → B)) …)

and therefore

⊢L A_{1} → … → (A_{n} → (D_{m+1} → A) → (D_{m+1} → B) …)

on the other hand, we have

⊢L D_{1} → … (D_{m} → (D_{m+1} → A) …)

hence by the induction hypothesis we get

⊢L A_{1} → … → (A_{n} → (D_{1} → … (D_{m} → (D_{m+1} → B) …)

This completes the proof of lemma 10.1.13.

■

Remark 10.1.14 Note that in CL the rule of lemma 10.1.13 is equivalent to the left transitivity axiom.

Let X = A → B, Y_{1} = C → A, Y_{2} = C, U = A, V = B, then

⊢ X → (U → V)

is

⊢ (A → B) → (A → B)

and

⊢ Y_{1} → (Y_{2} → U)

is

⊢ (C → A) → (C → A)

by the rule we get

⊢ X → (Y_{1} → (Y_{2} → V))

which is

⊢ (A → B) → ((C → A) → (C → B)).

Theorem 10.1.15 (Cut Rule for ⊢CL) (A_{1}, …, A_{n}, B, C_{1}, …, C_{m}) ⊢CL X and (B_{1}, …, B_{k} ⊢ B imply

(A_{1}, …, A_{n}, B_{1}, …, B_{k}, C_{1}, …, C_{m}) ⊢CL X

Proof. Follows from lemma 10.1.13, because by theorem 10.1.12 we have:

⊢CL A_{1} → … → (A_{n} → (B → (C_{1} → … → (C_{m} → X) …)

and

⊢CL B_{1} → … → (B_{k} → B) …)
■

Theorem 10.1.16 (Cut rule for ⊩CL) (1) and (2) imply (3).

1. a_{1} : A_{1}, …, a_{n} : A_{n}, b : B ⊩CL a_{1} … a_{n}b : X a_{1} < a_{2} < … < a_{n} < b a_{i}, b atomic.

2. b_{1} : B_{1}, …, b_{k} : B_{k} ⊩CL b_{1} … b_{k} : B b_{1} < b_{2} < … < b_{n}, b_{i} atomic.

3. a_{1} : A_{1}, …, a_{n} : A_{n}, b_{1} : B_{1}, …, b_{k} : B_{k} ⊩CL a_{1} … a_{n}b_{1} … b_{k} : X a_{1} < a_{2} < … < a_{n} < b_{1} < b_{2} < … < b_{k}.

Proof. Assume (1) and (2) hold with metaboxes M_{1} of level m_{1} and M_{2} of level m_{2}. We would like to exhibit a metabox M which proves (3).

The assumptions of this new metabox are

a_{1} : A_{1}
⋮
a_{n} : A_{n}
b_{1} : B_{1}
⋮
b_{k} : B_{k}

We can continue the proof of the new metabox by bringing in metabox M_{2}. This metabox will prove B with label b_{1} … b_{k}. We now have the following situation:

a_{1} : A_{1}  assumption
⋮
b_{k} : B_{k}  assumption

lines as in M_{2} b_{1} … b_{k} : B

We would like now to continue with Metabox M_{1} using the assumptions A_{1} … A_{n} and the B we have just proved. The problem may be that metabox M_{1} is using B with label b : B, a_{1} < a_{2} < … < a_{n} < b while the available B in our new metabox has label b_{1} … b_{k}. Suppose we call the sequence b^{∗} = b_{1} … b_{k}. Certainly a_{n} < min(b^{∗}) < max(b^{∗}). The metabox operations on labels are concatenations of b (or b^{∗}) with other labels, in which case we do not care if b or b^{∗} is used and also, when we use modus ponens

\begin{matrix}α : C \\ β : C → D \end{matrix}

we require

maxβ < minα. When b is replaced by b^{∗}, we get α^{∗}, β^{∗}. Since both b^{∗} and b are greater than a_{n}, we have that maxγ = maxγ^{∗} minγ = minγ^{∗}

Let M_{1}^{∗} be the box which is like M_{1} except that B is labelled b^{∗}.

The steps in M_{1}^{∗} will still be correct. We can thus continue and get a_{1} … a_{n}b^{∗} : X in box M_{1}^{∗}. The complete proof of a_{1} … a_{n}b_{1} … b_{k} : X is therefore:

a_{1} : A_{1}
⋮
a_{n} : A_{n}
b_{1} : B_{1}
⋮
b_{k} : B_{k}
M_{2}
M_{1}^{∗}
■

Theorem 10.1.17 (Equivalence of Hilbert and LDS formulations) ⊢CL B iff ∅ ⊩CL B.

Proof.

1. We show that ⊢CL B implies ∅ ⊢CL B.

First we show that the CL Hilbert Axioms are Box provable, ie that ∅, ⊩CL A → A and ∅ ⊩CL (A → B) → ((C → A) → (C → B)). These are done in the examples. We have to check the RT rule, ie

∅ ⊩CL A → B
.
∅ ⊩CL (B → C) → (A → C)

Assume we have a metabox M for ∅ ⊩CL A → B:

\begin{aligned}& b : A \\ M = & ⋮ \\ & b : B \end{aligned}

We show a metabox for ∅ ⊩CL (B → C) → (A → C) (figure 10-4).

1 a : B → C  Assumption
2 a : A → C  From Box
3 b : A  Assumption
Box M  4
5 Proof lines
6 of Box M
7 b : B
8 a : B → C  Reiteration
9 ab : C  MP
exit 10 a : A → C

Figure 10.4:

Second we show that ⊩ is closed under modus ponens, namely that ∅ ⊩CL A → B and ∅ ⊩CL A imply ∅ ⊩CL B. This we get by the cut rule on ⊩CL. This completes the proof of (1).

2. We now show that if ∅ ⊩CL B then ⊢CL B.

This we prove by the following lemma.

Lemma 10.1.18 Let M be a CL metabox proof of b : B from a_{1} : A_{1}, …, a_{n} : A_{n}, a_{1} < a_{2} < … < a_{n}. Here we assume that each new assumption is labelled by a unique new atomic label.

Then for each line of the form d_{1} … d_{k} : D in the box M where d_{i} are atomic, we have

⊢CL D_{1} → (D_{2} → … → (D_{k} → D) …)

where D_{i} is the formula whose label is d_{i}.

Proof. Each line appears uniquely in the nested box in M and has a line number. We use induction. Each line in the metabox M is one of the following cases:

1. d : D assumption, in which case ⊢CL D → D,

2. d_{1} … d_{k}, e_{1} … e_{m} : D obtained from d_{1} … d_{k} : E → D and e_{1} … e_{m} : E by modus ponens and max(d_{i}) < min(e_{i}). By the induction hypothesis on earlier lines we have

⊢CL E_{1} → … → (E_{m} → E) …)

and

⊢CL D_{1} → … → (D_{k} → (E → D) …).

Hence by a previous lemma

⊢ D_{1} → … → (D_{k} → (E_{1} → … (E_{m} → D) …)

3. d_{1} … d_{k} : E → D is obtained from a box (figure 10.5)

e : E assumption d_{1} … d_{k} e : D ⋮⋮⋮

Figure 10.5:

Since ⊢CL E → E and all reiterations inside the box satisfy the lemma, by the induction hypothesis, we get

⊢CL D_{1} → (D_{2} → … (D_{k} → (E → D) …).
■

This completes the proof of Theorem 10.1.17. ■

Theorem 10.1.19

Δ ⊢CL B iff Δ ⊩CL B.

Proof. Assume Δ = (a_{1} : A_{1}, …, a_{n} : A_{n}), then (A_{1}, … A_{n}) ⊢CL B iff

⊢CL A_{1} → (A_{2} → … → (A_{n} → B) …)

iff ∅ ⊩CL A_{1} → (A_{2} → … → (A_{n} → B) …) iff Δ ⊩CL B. ■

Lemma 10.1.20 In CL, (1) is equivalent to (2), where ⊢ is as in 10.1.3

1. ⊢ (A → B) → (D_{1} → (D_{2} → … → D_{n}) …)

2. There exists a k such that ⊢ D_{1} → (… → (D_{k} → A) …) ⊢ B → (D_{k+1} → (… → D_{n}) …).

Proof. Assume (1), then by 10.1.12

t : A → B, d_{1} : D_{1}, …, d_{n−1} : D_{n−1} ⊢ td_{1} … d_{n−1} : D_{n}.
t < d_{1} < d_{2} < … < d_{n−1}

By the CL proof discipline, there is a sequence

α_{1} : E_{1}, …, α_{m} : E_{m},

where each α_{k} : E_{k} is either a theorem of the logic with α_{i} = ∅ or is obtained from previous two lines by modus ponens, namely we have:

α_{i} : E_{i}, α_{j} : E_{i} → E_{k}

with j < i, max(α_{j}) < min(α_{i}) and α_{k} = α_{j}α_{i}.

A → B can be used only as a ticket because it is the first in the sequence. Thus for some α_{i} : A and α_{j} : B, we have α_{j} = tα_{i} and min(α_{i}) > t. We claim that for some k, α_{i} = d_{1} … d_{k}. This claim follows from Remark 10.1.4 because supports cannot have gaps in them. It now follows that there is a proof of td_{1}, …, d_{n−1} : D_{n} from the data

b : B, d_{k+1} : D_{k+1}, …, d_{n−1} : D_{n−1}

with b < d_{k+1} < … < d_{n−1}, where we have renamed td_{1} … d_{k} = b. Similarly, there is a proof of A from the data d_{1} : D_{1}, …, , d_{k} : D_{k}. Thus we have shown

⊢ D_{1} → … → (D_{k} → A) …)

and

⊢ B → (D_{k+1} → … → D_{n}) …).

Assume (2), show (1). Again using the deduction theorem assume

\begin{matrix}t : A → B \\ d_{i} : D_{i}, i = 1, … n − 1 \end{matrix}

we want to show td_{1} … d_{n−1} : D_{n}.

From the first assumption we get d_{1} … d_{k} : A, then using t : A → B we get td_{1} … d_{k} : B, then by modus ponens we get td_{1} … d_{k} : D_{k+1} → (… → D_{n}) …). We continue to get td_{1} … d_{n−1} : D_{n}.

■

Definition 10.1.21 In CL, let (A_{1}, …, A_{n}), (B_{1}, …, B_{m}) be two sequences of formulas, with m ≤ n. Define A_{1}, …, A_{n}) ⊢CL (B_{1}, …, B_{m}) iff when we label the data a_{1} : A_{1}, …, a_{n} : A_{n}, with a_{1} < a_{2} < … < a_{n} there exist 1 ≤ k_{1} < k_{2} < … < k_{m} ≤ n such that for each 1 ≤ i ≤ m

a_{1} : A_{1}, …, a_{k_{1}−1} : A_{k_{1}−1} ⊢CL a_{1} … a_{k_{1}−1} : B_{1}
⋮
a_{k_{m}+1} : A_{k_{m}+1}, …, a_{n} : A_{n} ⊢CL a_{k_{m}+1} … a_{n} : B_{m}

Example 10.1.22 We have

(A → B, A, C → D, C) ⊢CL (B, D).

268 CHAPTER 10. PROOF THEORY FOR RESOURCE LOGICS

10.2 Concatenation logic with additional connectives

We will progressively add in this section various connectives to the basic CL implication. Definition 10.2.1 Let L be any extension of CL. We define several extensions of L with new connectives and axioms as follows:

1. Let L(⊗) be the extension of L with the binary connective ⊗. Add the following axioms to those of L of definition 10.1.1

(a) A → (B → (A ⊗ B))

(b) ((A → (B → C)) → ((A ⊗ B) → C))

2. Let L(¬) be the extension of L with a unary connective ¬ and the following axioms. (a) ¬¬A ↔ A

(b) (¬(A → ¬B) → C] ↔ (A → (B → C))

(c) The rule {⊢ A → B \atop ⊢ ¬B → ¬A}

3. Let L(∪∣ ) be the extension with the additional binary ∪∣ and the axioms:

(a) ((A → B)∪∣ C) ↔ (A → (B∪∣ C))

(b) {⊢ A → A′, ⊢ B → B′ \atop ⊢ A∪∣ B → A′∪∣ B′}

4. Let L(!) be the system with the additional modality ! and the axioms:

(a) !A → A

(b) !A → (B →!A)

(c)

⊢ C → (q → A)

, q atomic not in C or A

⊢ C → A

Remark 10.2.2 1. Note that ⊢ ((A ⊗ B) → C) → (A → (B → C)) holds in L(⊗).

2. Also notice that ⊗ is associative. Using axiom (a) we get

⊢ A → ((B ⊗ C) → (A ⊗ (B ⊗ C)))

hence

⊢ A → (B → (C → A ⊗ (B ⊗ C)))

hence

⊢ (A ⊗ B) → (C → A ⊗ (B ⊗ C))

hence

⊢ ((A ⊗ B) ⊗ C) → (A ⊗ (B ⊗ C))

3. Note that in CL(¬), the following is provable:

⊢ A → (B → ¬(A → ¬B))

4. Note that in LL(¬) the following is provable:

⊢ (A → B) → (¬B → ¬A)

To show that begin with

⊢_{LL(¬)} A → ((A → B) → B)

hence

⊢_{LL(¬)} ¬(A → ¬(A → B)) → B

hence

⊢_{LL(¬)} ¬B → (A → ¬(A → B))

hence

⊢_{LL(¬)} ¬(¬B → ¬A) → ¬(A → B)

hence

⊢_{LL(¬)} (A → B) → (¬B → ¬A).

5. Note that in LL(¬) the following holds:

⊢_{LL(¬)} ¬B ↔ (B → ¬(B → B))

To show that observe that

⊢ (B → B) → (B → B)

hence

⊢ B → ((B → B) → B)

hence

⊢ ¬(B → ¬(B → B)) → B

hence

⊢ ¬B → (B → ¬(B → B)).

Further observe that

⊢ B → ((B → ¬(B → B)) → ¬(B → B))

hence

⊢ ¬((B → ¬(B → B)) → ¬(B → B)) → ¬B

hence

⊢ (B → ¬(B → B)) → ((B → B) → ¬B)

hence

⊢ (B → B) → (B → ¬(B → B) → ¬B)

hence

⊢ (B → ¬(B → B)) → ¬B.

Theorem 10.2.3 In CL(⊗) and in LL(⊗) the following holds:

⊢ A ⊗ B iff ⊢ A and ⊢ B.

Proof.

1. Assume ⊢ A and ⊢ B. Since by axiom (a) ⊢ A → (B → A ⊗ B), we get ⊢ A ⊗ B.

2. Assume ⊢ A ⊗ B. Let A_{1}, …, A_{n} = A ⊗ B be a proof sequence of A ⊗ B. We show that there exists another proof of A ⊗ B of length n′ ≤ n, of the form A′_{1}, …, A′_{n′} with A′_{n′} = A ⊗ B such that for some j, k < n′, A′_{j} = A and A′_{k} = B and such that every substitution instance of an axiom in the proof is already in A_{1}, …, A_{n}. The proof is by induction on the length n of the proof of A ⊗ B.

Length 1: A ⊗ B is a substitution instance of an axiom. This case does not arise, as axioms do not have this form. Length n + 1 A⊗B is obtained from previous elements of the sequence using MP or RT. The use of RT does not arise because it does not yield the form A⊗B. Thus A⊗B is obtained from two previous elements in the sequence, A_{r} = C_{1} and A_{s} = C_{1} → A ⊗ B by modus ponens. Let m be the maximal number such that there are C_{m}, …, C_{1} and C_{m} → (C_{m−1} → … → C_{1} → (A ⊗ B) …) earlier in the proof such that A ⊗ B is obtained from them by modus ponens. We examine the cases m = 1, m = 2 and m ≥ 3. Case m = 1 Consider the ticket A_{s} = C_{1} → A ⊗ B.

1. It is either an instance of an axiom, in which case it must be an instance of the identity axiom X → X. In this case C_{1} = A ⊗ B and since C_{1} is an earlier element A_{r} of the sequence, by the induction hypothesis, we have for some j, k < r′, A′_{j} = A and A′_{k} = B.

2. It is obtained from earlier elements using RT. Again C_{1} → A ⊗ B is the wrong form for a result of RT, so this case does not arise.

Case m = 2 C_{1} → (A ⊗ B) is obtained by modus ponens from two earlier elements A_{i} = C_{2} and A_{t} = C_{2} → (C_{1} → A ⊗ B). Again there are several possiblilities.

1. C_{2} → (C_{1} → A ⊗ B) is an instance of an axiom X → X, in which case C_{2} = C_{1} → (A ⊗ B) and we have a shorter proof of A ⊗ B and we use the induction hypothesis.

2. C_{2} → (C_{1} → A ⊗ B) is an instance of the axiom

(α → (β → γ)) → (α ⊗ β → γ).

In this case

\begin{aligned}C_{1} & = α ⊗ β \\ γ & = A ⊗ B \\ C_{2} & = α → (β → γ) \end{aligned}

and we get that we have:

C_{1} = (α ⊗ β) = A_{r}
C_{2} = (α → (β → γ)) = A_{i}
(α → (β → A ⊗ B)) → ((α ⊗ β) → (A ⊗ B)) = A_{t}

The current proof contains the steps

A_{r} = C_{1} = α ⊗ β
A_{t} = (α → (β → A ⊗ B)) → ((α ⊗ β) → (A ⊗ B)), an instance of an axiom
A_{i} = C_{2} = α → (β → A ⊗ B)
A_{s} = α ⊗ β → (A ⊗ B) by modus ponens from A_{i} and A_{t}.
A_{n} = A ⊗ B by modus ponens from A_{r} and A_{s}.

By the induction hypothesis on r, there exist a proof A′_{1}, …, A′_{r′} = α ⊗ β with r′ ≤ r and there exist j, k < r′ such that A′_{j} = α and A′_{k} = β. Further every substitution instance of an axiom in the A′_{r} proof already appears in the A proof. We can thus produce a shorter proof of A ⊗ B by taking out lines A_{r}, A_{t} and A_{s} and leaving the following:

A_{i} = C_{2} = α → (β → A ⊗ B)

s : β → (A ⊗ B) modus ponens of A_{i} with A_{j}

A_{m} = A ⊗ B modus ponens with previous line and A_{k}.

By renumbering we get a shorter proof of A ⊗ B. We replaced the original proof containing A_{r}A_{t}A_{i}A_{s}A_{m} with a proof containing A_{i}, line s and A_{m}. Note that the new proof is built up from the old lines of the old proof except for one new line β → A ⊗ B.

Now we can use the induction hypothesis on the shorter proof and conclude that there exists another proof A′′_{1}, …, A′′_{n′′} = A ⊗ B such that for some earlier lines in the proof A′′_{k′′} and A′′_{m′′} are equal to A and B respectively. The A′′ proof uses some and no more of the substitution instances of axioms which the original proof uses.

3. C_{2} → (C_{1} → (A ⊗ B)) is an instance of

⊢ α → (β → (α ⊗ β)).

In this case C_{1} = B, C_{2} = A or in the case of LL(⊗) we may also have C_{1} = A, C_{2} = B and obviously our condition holds.

4. Now assume that we used the rule RT, in which case for some y, C_{1} → y is an earlier element and C_{2} = y → A ⊗ B is an earlier element. In this case we can cut out the case of RT and obtain A ⊗ B directly by MP with C_{1}, C_{1} → y and C_{2}. Again we use the induction hypothesis.

Case m ≥ 3: We now examine the general case. A⊗B is obtained by modus ponens from earlier C_{m}, C_{m−1}, …, C_{1} and

C = ((C_{m} → … → (C_{1} → (A ⊗ B)) …).

Assume m was maximal for the use of modus ponens.

We now examine the possibilities for how C was obtained.

1. C is an instance of an axiom of the form

(a) X → X

(b) (X → Y) → [(Z → X) → (Z → Y)]

(c) ((X → (Y → Z)) → ((X ⊗ Y) → Z))

(d) (X → (Y → (X ⊗ Y)))

In the case of LL(⊗) also

(d′) Y → (X → (X ⊗ Y))

2. C is obtained by using RT.

3. The case that C was obtained by modus ponens does not arise because we assumed m is maximal.

We examine each case. Case 1a In this case C_{m} = C_{m−1} → (… C_{1} → (A ⊗ B) …). We can cut C out of the proof and get A ⊗ B with a shorter proof. Case 1b In this case

C_{m} = X → Y
C_{m−1} = Z → X
C_{m−2} = Z
C_{m−3} → … → (C_{1} → A ⊗ B) …) = Y

The current proof has in it the following lines:

r_{1}: C_{m} = X → (C_{m−3} → (… (C_{1} → (A ⊗ B) …). r_{2}: C_{m−1} = C_{m−2} → X

r_{3}: C_{m−2}

r_{4}: C = C_{m} → (C_{m−1} → C_{m−2} → (C_{m−3} … → (C_{1} → (A ⊗ B) …)

r_{5}: C_{m−1} → (C_{m−2} → … → (C_{1} → (A ⊗ B) …)

r_{6}: C_{m−2} → (… → (C_{1} → (A ⊗ B) …)

r_{7}: C_{m−3} → (… → (C_{1} → (A ⊗ B) …)

Lines r_{1}r_{2}r_{3} are obtained in an earlier part of the proof. Line r_{4} is an instance of the axiom and r_{5}r_{6} and r_{7} are obtained by MP.

We can shorten the proof by letting r_{2} and r_{3} give us X by MP and using X we get r_{7} from r_{1}. Thus we cut out r_{4} and shorten the proof by one substitution instance of an axiom. Case 1c In this case

C = (α → (β → γ)) → ((α ⊗ β) → γ)
C_{m} = (α → (β → γ))
C_{m−1} = α ⊗ β
C_{m−2} → … → (C_{1} → (A ⊗ B)) …) = γ

This case is the same as case m = 2 subcase (3). By the induction hypothesis, ⊢ α and ⊢ β with shorter proofs. Thus we can get γ using C_{m} directly. Case 1d In this case

C_{m} = X
C_{m−1} = Y
(C_{m−2} → (C_{m−3} → … → (C_{1} → (A ⊗ B)) …) = X ⊗ Y.

We must have in this case m = 2, X = A and Y = B and the desired result follows. Case 1d′ Similar to case 1d. Case 2 In this case C is obtained by using RT. This means that for some X, Y, Z

⊢ X → Y

and

C = (Y → Z) → (X → Z)

hence

C_{m} = (Y → Z)
C_{m−1} = X
C_{m−2} → (… → (C_{1} → (A ⊗ B) …) = Z

we thus have:

⊢ C_{m−1} → Y
⊢ C_{m−1}
⊢ Y → Z
C = (Y → Z) → (C_{m−1} → Z)

The existing proof, using C is

⊢ C_{m−1} → Y  existing subproof
⊢ C = (Y → Z) → (C_{m−1} → Z) use RT
⊢ C_{m} = Y → Z  existing subproof
⊢ C_{m−1}  existing subproof
⊢ C_{m−1} → Z  MP
⊢ Z  MP

We get Z using RT and two MP.

We can simplify by cutting out RT as follows:

⊢ C_{m−1} → Y  existing
⊢ C_{m−1}  existing
⊢ Y  MP
⊢ C_{m} = Y → Z existing
⊢ Z  MP

By the induction hypothesis for the overall shorter eventual proof of A ⊗ B we get the theorem. Case 3 C is obtained by modus ponens. This case cannot arise because we assumed m was maximal.

This completes the proof of the theorem. ■

The language of CL and that of CL(⊗) contains only atomic propositions and the implication or concatenation symbols → and ⊗. We want to enrich the language with a unary propositional function ⊙, associating with each atomic q another atom q^{⊙}. We shall eventually stipulate that q^{⊙⊙} = q, but at this stage this is not needed.

Example 10.2.4 We are now looking for a labelled discipline for CL(⊗). We have some problems. Suppose we use the discipline of CL of 10.1.3. Since ⊢ (A → (B → C)) ↔ ((A ⊗ B) → C) we must have the following successful derivations:

1. t_{1} : A → (B → C), t_{2} : A ⊗ B ⊢ t_{1}t_{2} : C, t_{1} < t_{2}

2. a_{1} : (A ⊗ B) → C, a_{2} : A, a_{3} : B ⊢ a_{1}a_{2}a_{3} : C, a_{1} < a_{2} < a_{3}

3. t_{1} : A → (B → C), t_{2} : D → (A ⊗ B), t_{3} : D ⊢ t_{1}t_{2}t_{3} : C, t_{1} < t_{2} < t_{3}.

The present CL discipline for ⊢ cannot achieve the above. The problem can be seen immediately when we consider modus ponens. From t_{1} : C → (A ⊗ B) and t_{2} : C we get t_{1}t_{2} : A ⊗ B but we have no labels a_{1} : A and a_{2} : B to continue the deduction and use with A → (B → D) to get D, even though A → (B → D) is equivalent to (A ⊗ B) → D. We must therefore be able to split the label t_{1}t_{2} of (A ⊗ B) into two labels a_{1} and a_{2}, one for A_{1} and one for B. Can we present a consistent discipline for doing that? The answer is yes.

To develop a labelling discipline for CL(⊗), we get our ideas from the problems discussed in the previous example and from the exact nature of the labelling propagation of CL, as studied in Remark 10.1.4. CL labels (of 10.1.3) are atomic points. A database is a linearly ordered set of formulas, whose labels are linearly ordered.

For example

a_{1} : A_{1}, …, a_{n} : A_{n}, a_{1} < a_{2} <, …, < a_{n}

is a database. We can think of a_{i} geometrically as points on the rational line, ie as rational numbers increasing in order.

When we proceed forward using modus ponens, proving conclusions from the data, as described in 10.1.3 and Remark 10.1.4, the support of any formula α : B proved, ie its label α, is a continuous interval [a_{i} … a_{k}], with no gaps.

Our idea is to label the assumption by disjoint intervals on the rationals and regard α as the end extension union.

Thus our labels are

[_{a_{1}}] : A_{1}, …, [_{a_{n}}] : A_{n}

with a_{1} < a_{2} < … < a_{n} on the rational line. An interval is smaller than another iff all of its points come before the other. Thus any α : B, where α = a_{i}, …, a_{k} proved from the database, becomes the interval [a_{i} … a_{k}] : B.

It is now easy to split any [t_{1} … t_{k}] : A ⊗ B into two labels a_{1} ⊗ a_{2}. We regard a_{1}, a_{2} as two intervals and stipulate

a_{1} : A, a_{2} : B a_{1} ⊗ a_{2} = [t_{1} … t_{k}].

Mathematically the operation is simple and obvious, but the interval view gives it an easy geometrical meaning.

We have to allow for the creation of intervals (labels) during proofs and for carrying along systems of equalities of interval unions. Before we give the formal definitions, we consider example 10.2.5.

Example 10.2.5 1. Prove from the database

t_{1} : A → (B → C), t_{2} : A ⊗ B, t_{1} < t_{2}

The conclusion

t_{1}t_{2} : C

Here is the proof:

Proof Line  Configuration
1 t_{2} : A ⊗ B assumption  t_{1} < t_{2}
2 create a_{1} : A, a_{2} : B  t_{1} < a_{1} < a_{2}
a_{1} < a_{2}, t_{2} = a_{1}a_{2}  a_{1}a_{2} = t_{2}
3 t_{1}a_{1} : B → C modus ponens same
4 t_{1}a_{1}a_{2} : C modus ponens  same

Since the configuration logically proves the rational interval (in the algebra t_{1}a_{1}a_{2} = t_{1}t_{2}), we succeeded in our proof.

2. Prove from the database

a_{1} : (A ⊗ B) → C, a_{2} : A, a_{3} : B, a_{1} < a_{2} < a_{3}

the conclusion

a_{1}a_{2}a_{3} : C.

Here is the proof

Proof Line  Configuration
1 a_{2} : A assumption  a_{1} < a_{2} < a_{3}
2 a_{3} : B assumption  same
3 Since the labels of lines (1) and (2)

are adjacent in the configuration

and a_{1} < a_{2}, we get: a_{2}a_{3} : A ⊗ B same
4 a_{1}a_{2}a_{3} : C modus ponens

Notice we used the rule

x : A, y : B, x < y provided the configuration proves that x, y are adjacent xy : A ⊗ B.

Definition 10.2.6 1. A CL(⊗) database is a sequence of formulas of the form a_{1} : A_{1}, …, a_{n} : A_{n} and a configuration a_{1} < a_{2} < … < a_{n}.

2. A proof from the database is a sequence of lines, each line comprises of a labelled formula α : B, a justification and a configuration. The initial configuration is the original database configuration, namely a_{1} <, …, < a_{n}. The justification for the line α : B can be either that B is a theorem of CL(⊗), in which case α = ∅, and there is no change in configuration or that B is an assumption a_{i} : A_{i} from the database, in which case α = (a_{i}) and there is no change in configuration or that α : B is obtained from previous lines by a rule, in which case α is the label givn by the rule and the configuration changes according to the stipulation of the rule. The rule can be one of the following:

(a) Modus Ponens α : A β : A → B max(β) < min (α) βα : B, no change in configuration.

(b) ⊗ Elimination Rule

{a_{i}, …, a_{k} : A ⊗ B \atop x : A, y : B,}

where x, y are new labels. We stipulate in the configuration that xy = a_{i}, …, a_{k} and that a_{1} < … < a_{i−1} < x < y < a_{k−1} < … a_{n}, and that x is adjacent to y. The new configuration is obtained from the old one by adding the above stipulations.

(c) ⊗ Introduction rule

x : A, y : B, x < y, x adjacent to y
x ⊗ y : A ⊗ B

3. We say a_{1} : A_{1}, …, a_{n} : A_{n} ⊢ α : B a_{1} < … < a_{n} iff there exists a proof with last line β : B and the configuration associated with the last line can prove β = α.

10.3 Axiomatisation of W

The previous chapter on Resource-logics discussed LDS conditions for resource restrictions. The concatenation logic CL was introduced and studied in some depth, including a Hilbert axiomatisation for it. This chapter will study the connections between metabox disciplines, Hilbert axiomatisations and semantical interpretation for various resource logics in a systematic and detailed way. The metabox and labelling discipline is much richer in its ability of characterising consequence relations than the Hilbert type system discipline, which generates only theorems. The reader may thus wonder why we should bother with Hilbert type axiomatisations at all. They are about the crudest tool for characterising consequence one can have. One reason is that Hilbert axiom systems are good for comparison. Here is one system; add an axiom and you get another; take out an axiom and you get a third. Whereas in any other algorithmic proof system, where the rules are richer, it is more difficult to digest the meaning of relative changes. Hilbert systems are simple and therefore differences between systems are crude and obvious, they take the form of axioms.

There is another reason for studying Hilbert formulations. Hilbert systems are not crude. We shall see in the metalevel chapter that a Hilbert system can be used as a metalanguage for LDS. Thus with additional connective ♯, the pair α : A can be represented as ♯(α, A), a binary connective formula, and Hilbert type axioms can be put forward on ♯ which forces upon it the meaning of α is a label for A, and further axioms can be tailored to relfect any labelling discipline. (See the metaleval chapter for details). It is therefore important for LDS to study and understand equivalent Hilbert type formulation of LDS systems.

We saw in the previous chapter how one can axiomatise Hilbert style, all wffs A of the LDS system CL which can be proved with the empty label, ie ⊩CL ∅ : A. We now systematically generalise the method to neighbouring logics and do the logic W in detail.

The logic W, initially presented in 7.2.1, extends the logic CL by adopting a weaker restriction on the → Elimination rule of CL, as given in 10.1.3. Assumptions a_{1} : A_{1}, …, a_{n} : A_{n} are ordered in a sequence. a_{1} < a_{2} < … a_{n}, just like in the case of CL.

The modus ponens

\begin{matrix}α : A \\ β : A → B \\ βα : B \end{matrix}

is allowed when max(β) < max(α). Recall that in the case of CL we had max(β) < min(α). The → introduction rule is the same.

The above restriction allows us to prove in W the right transitivity axiom.

⊢ (A → B) → ((B → C) → (A → C))

but we cannot prove in W the commutativity axiom:

(A → (B → C)) → (B → (A → C)).

Let us give a formal definition.

Definition 10.3.1 1. Hilbert Formulation of W.

Axioms

(a) A → A

(b) (A → B) → ((C → A) → (C → B))

(c) A → B) → ((B → C) → (A → C))

Rules

MP. {A, A → B \atop B}

2. Proof from assumptions for W. To define the notion Δ ⊢W B we use a variant of definition 10.1.3. For the case of W, we replace in condition (4) of definition 10.1.3 by the condition max(β_{k}) < max(β_{i}).

Definition 10.3.2 (LDS Discipline for W) We adopt a similar definition to 10.1.7, with the following change:

• Replace the condition max(α) < min(β) appearing in the definitions of metabox of level 0 and of level n + 1 by the condition max(α) < max(β).

• The notion of Δ ⊩W B can now be defined as in 10.1.10.

We just note that to obtain the Hilbert system corresponding to W, we extend CL with the right transitivity axiom.

We now proceed to prove the equivalence of the metabox discipline for W and the Hilbert axiomatisation. We begin with an example.

Example 10.3.3 Consider the following

Assumptions ; a_{1} : A → B ; a_{2} : C → A ; Show ; C → B

This can be done by a box (fig 10.6):

Box a_{3}  1  Show B
2 a_{3} : C  Assumption
3 a_{2} : C → A  reiteration
4 a_{2}a_{3} : A  MP
5 a_{1} : A → B  reiteration
6 a_{1}a_{2}a_{3} : B  MP
exit  7 a_{1}a_{2} : C → B

Figure 10.6:

We proved C → B from the assumptions using the box device.

Suppose we have further assumptions. Can we prove (C → B) by using modus ponens only, without a box? That depends on the assumptions. Let us take the following:

\begin{matrix}b_{1} : & C → C \\ b_{2} : & (C → C) → ((C → A) → (C → A)) \\ b_{3} : & (C → A) → ((A → B) → (C → B)). \end{matrix}

We can now prove (C → B) without the box. Using MP only:

\begin{matrix}b_{1}b_{2} : & (C → A) → (C → A) \\ b_{1}b_{2}a_{2} : & C → A \\ b_{1}b_{2}a_{2}b_{3} : & (A → B) → (C → B) \\ b_{1}b_{2}a_{2}b_{3}a_{1} : & C → B \end{matrix}

Notice that b_{1} is a valid (successful) box deduction and both b_{2} and b_{3} are instances of the successful schema

(A → B) → ((B → C) → (A → C))

discussed in example 9.2.4.

The following theorem is essentially in Anderson and Belnap’s book [Anderson and Belnap, 1975]. We give the details here because we want to use the method for several other new logics.

Theorem 10.3.4 Let Δ be a set of labelled assumptions and Q a goal. Assume that Δ ⊩W α : Q (Q can be proved from Δ with label α using box deduction of definition 10.3.2), then Δ ⊢W Q in the sense of definition 10.3.1. More specifically, we show that there are instances

∅ : A_{1} ; ⋮ ; ∅ : A_{k}

of the schemas

1. C → C

2. (A → B) → ((B → C) → (A → C))

3. (B → C) → ((A → B) → (A → C))

such that Δ ∪ {∅ : A_{i}} ⊩_{MP 1} α : Q

where ⊩_{MP 1} denotes a proof using linear modus ponens only (no use of boxes), and this will mean of course that Δ ⊢W Q.

Proof. By induction on the complexity of the boxes involved in the deduction of Δ ⊢W Q.

Case n=0 Here only modus ponens is used, so there is nothing to prove.

Case n > 0 Discussion of strategy The outer box may include nested inner boxes. Consider an innermost box of complexity 0. Let us take a typical line which justifies (proves) A → B using a box of complexity 0. We will eliminate this box and thus reduce the complexity of the outermost box. We will have to provide a new justification for A → B with the same label. We will assume a metabox of complexity n > 0. We assume that the inner boxes are all differently named and that ≤ is the subordination relation (see 3.4.2). In fact, since we start with a box named a_{1} to show an implication of the form A → B, we can identify the name of the box with the label of a_{1} : A. We can recognise from the label α : C, exactly in which outer box C was obtained; this box is in fact maxα. We know that C is a reiteration from the box maxα if maxα is less than the name of the current box.

The existing proof lines for the box for A → B look as follows (see fig 10.7):

line l  1 γ : (A → B), from Box a_{1}
Box a_{1}  2  Show B
line (l, 1)  3 a_{1} : A  Assumption
line (l, k)  4 β_{k} : X
line (l, k + 1)  5 β_{k_{1}} : X → Y
line (l, k + 2)  6 β_{k_{2}} = β_{k} ∪ β_{k_{1}} : Y
line (l, k′)  7 α : B
exit  8 γ : A → B with γ = α − {a_{1}}

Figure 10.7:

line l in the external proof is justified by Box a_{1}.

Inside the box the proof proceeds by MP1 only. A typical instance (use) of the rule is:

\begin{matrix}(l, k) : & β_{k} : & X \\ (l, k_{1}) : & β_{k_{1}} & X → Y \\ (l, k_{2}) : & β_{k_{2}} = β_{k} ∪ β_{k_{1}} : & Y \end{matrix}

The idea is to eliminate the box. Let us consider the following sequence of lines, which we refer to as external sequence.

E(l, 1) = A → A, label ∅; corresponding to a_{1} : A in the box. … E(l, k) = A^{m} → X, label β_{k} − {a_{1}^{m}}; corresponding to β_{k} : X in the box and where m is the number of times a_{1} ∈ β_{k}. … E(l, k′) = A → B, label α − {a_{1}}, corresponding to the last line in the box.

Note that m = 1 or 0 depending whether X used a_{1} : A or not. If m = 0, A^{0} → X is X. If m = 1 then we have A → X.

The above sequence is not a proof. For each line E(l, r) with label β_{r} − {a_{1}} : C_{r} we add new assumptions and proof links to the box with name max(β_{r} − {a_{1}}) so that β_{r} − {a_{1}} : C_{r} is derivable in the box max(β_{r} − {a_{1}}).

In particular the last line, namely

E(l, k′) = α − {a_{1}} : A → B

will be derivable in box max(α−{a_{1}}). Thus the justification for line l of the external box namely:

line l : α − {a_{1}} : A → B

can be taken as “reiteration from box max(α − {a_{1}})” and this justification will replace the earlier justification “from Box a_{1}” and Box a_{1} can be deleted.

Let us now proceed to modify all the boxes step by step, driven by the sequence E(l, r). To do that we examine the possibilities arising in this sequence: There are several possibilities for a MP1 sequence in Box a_{1}. These have the form

\begin{matrix}β_{k} : & X \\ β_{k_{1}} : & X → Y \\ β_{k_{2}} : & Y \end{matrix}

These are the following (m, n ≥ 1) (see figure 10.8):

case (0, 0):  X  a_{1}∉β_{k}
X → Y  a_{1}∉β_{k_{1}}
Y
case (1,0):  A^{m} → X  a_{1} ∈ β_{k}, m times
X → Y  a_{1}∉β_{k_{1}}
A^{m} → Y
case(0,1):  X  a_{1}∉β_{k}
A^{m} → (X → Y) a_{1} ∈ β_{k_{1}}, m times
A^{m} → Y
case(1,1):  A^{m} → X  a_{1} ∈ β_{k}, m times
A^{n} → (X → Y) a_{1} ∈ β_{k_{1}}, n times
A^{m+n} → Y

Figure 10.8: Case Diagram

For our particular logic, the following cases arise:

case (0,0): no problem. Both X and X → Y are reiterations. Note that we do not allow β_{k} = ∅. This case does not arise anyway because the reiteration X cannot be used as a minor premiss. Neither can X be proved within the box because β_{k} ≠ ∅. To understand this possibility, consider ((A → A) → A) → A. We can justify this formula from Box a below (see fig 10.9):

Here line 2 is ∅ : X and line 1 is a : X → Y, the modus ponens is not allowed.

case (1,0): can arise with m = 1.X → Y is a reiteration used as a ticket.

case (0,1): This case cannot happen since β_{k} ≠ ∅. X is a reiteration and cannot be used as a minor premise.

case(1,1): This case cannot arise because both X and X → Y use A and so modus ponens is not allowed.

We therefore have to add assumptions and labels to justify the deduction

E(l, k) = A → X E(l, k_{1}) = X → Y E(l, k_{2}) = A → Y and we have to justify the first line, namely E(l, 1) = A → A.

Boxa  1  Show A
2 a : (A → A) → A  Assumption
3 A → A  From Box b :
Boxb  4  Show A
5 b : A  Assumption
6 A
exit  7 ∅ : A → A
8 a : A  MP 1

Figure 10.9:

We want to take the instances of A → A and of (A → X) → ((X → Y) → (A → Y)) and of (X → Y) → ((A → X) → (A → Y)) and use the them to prove the theorem for the case of box deduction of complexity n > 0.

We have two axioms we can use (1) or (2):

1. (A → X) → ((X → Y) → (A → Y))

2. (X → Y) → ((A → X) → (A → Y))

Which one do we use? That depends on β_{k} − {a_{1}} and β_{k_{1}}. β_{k} is the label of X, it contains a_{1}. This means that X was proved using a_{1} : A and some reiterations, say Z_{i} → U_{i}. β_{k_{1}} : X → Y is also a reiteration. Which of the two sets of reiterations is from a more outer box?

If X → Y is outermost to some of the Z_{i} → U_{i}, ie if maxβ_{k_{1}} ≤ max(β_{k} − {a_{1}}), then we use (2). Otherwise we use (1). The rule is to use the instance of the axiom beginning with the outermost reiteration. It has to be done this way because of the following (see fig 10.10):

A → X X → Y  outermost box inner box

Figure 10.10:

X → Y is the outermost reiteration. If we choose (1), then (X → Y) → (A → Y) will appear in the inner box. X → Y will be reiterated but will not be allowed to be used as a minor premiss and thus we will not be able to get A → Y in the inner box. If, however we choose (2), then (A → X) → (A → Y) will be obtained in the outer box and reiterated into the inner box.

Case n > 0, proof replacement for the box

Consider E(l, r) : β_{r} − {a_{1}} : C_{r} in the external sequence.

1. Subcase n1 for r = 1, C = A → A Add ∅ : A → A as an initial assumption to the outermost box.

2. Subcase n2 Assume for each k < r that new assumptions were added to the boxes so that C_{k} is derived at box max (β_{k} − {a_{1}}) with label β_{k} − {a_{1}}. Consider case r. If a_{1} ∉ β_{r}, then C_{r} is a reiteration X → Y and the condition is satisfied.

If C_{r} is A → Y, and a_{1} ∈ β_{r}, then we have for some earlier lines

E(l, k) : β_{k} − {a_{1}} : A → X E(l, k_{1}) : β_{k_{1}} : X → Y E(l, r) : β_{r} − {a_{1}} : A → Y with β_{r} = β_{k} ∪ β_{k_{1}}

We first consider E(l, k). A → X is derivable in the outer box a = max (β_{k} − {a_{1}}). We distinguish two cases here. The case of k = 1 and the other cases.

If k = 1, then X = A and β_{k} − {a_{1}} = ∅. In this case A → A is obtained from the outermost box because it was added there at the very first step. Box a will be ∅, the outermost box. Case 2 below will be applicable. We add the axiom ∅ : (A → A) → [(A → X) → (A → X)] and by modus ponens get (A → X) → (A → X). Note that in fact we could have added (A → X) → (A → X) directly as this is an axiom too.

We now consider E(l, k_{1}): X → Y is reiterated from the outer box b = max β_{k_{1}}

Note that a and b are new boxes already modified by earlier stages of the process. We distinguish two cases.

1. subcase n2.1 b ≤ a In this case add a new instance of the axiom

∅ : (X → Y) → ((A → X) → (A → Y))

to the outermost box. In box a we have a line Line n: β_{k_{1}} : X → Y extend box a by inserting two more lines line (n,1): ∅ : (X → Y) → ((A → X) → (A → Y))

reiteration from outer box

Line (n, 2): β_{k_{1}} : (A → X) → (A → Y) Box a is more inner than box b. In box a we have the line line n′: β_{k} − {a_{1}} : A → X we add the lines: line (n′, 1): β_{k_{1}} : (A → X) → (A → Y)

reiteration from box b (or repetition if a= b)

line (n′, 2): β_{k_{1}} ∪ β_{k} − {a_{1}} : A → Y by modus ponens.

Now with the new boxes a′, b′ and the new outer box our inductive assertion holds.

2. subcase n2.2 a < b In this case β_{k} : A → X is in the more outer box b. In this case we add ∅ : (A → X) → ((X → Y) → (A → Y)) to the outer box. We add the following two lines to box a.

line (n′, 1): ∅ : (A → X) → ((X → Y) → (A → Y))

reiteration from outer box b.

line (n′, 2): β_{k} − {a_{1}} : (X → Y) → (A → Y)

modus ponens.

In box b we add the following two lines after line n : β_{k_{1}} : X → Y line (n, 1): β_{k} − {a_{1}} : (X → Y) → (A → Y)

reiteration from box a.

line (n, 2): β_{k_{1}} ∪ β_{k} − {a_{1}} : A → Y by modus ponens.

Again our inductive assertion is satisfied by the new boxes. For the case of E(l, k′), the last line of the sequence, we get a justification of α − {a_{1}} : A → B

from the new box system. We thus do not need box a_{1} which originally justified α − {a_{1}} : A → B because the line is now justified by reiteration. The outer box, of course, now has many instances of the axioms.

This completes the induction step for case n > 0. The induction step completes the proof. Note that the new additional assumptions were needed to be used only once! ■

Corollary 10.3.5 The logic obtained from the notion ∅ ⊩W A can be axiomatised using modus ponens and the following three schemas:

1. C → C

2. (A → B) → ((B → C) → (A → C)).

3. (B → C) → ((A → B) → (A → C))

Proof. Follows from 10.3.4.

1. Assume ∅ ⊩W A. Then by 10.3.4 there exist instances A_{1}, …, A_{k} of the axioms of W such that ∅ : A_{1}, …, ∅ : A_{k} ⊩_{MP 1} A. Since no boxes are used in this proof, it is an acceptable proof of ⊢W A.

2. Assume ⊢W A, we want to show that ∅ ⊩W A. We prove this by induction on the proof steps in ⊢W. First show that ∅ ⊩W A, for any instance of an axiom of W. This has been done in the various examples. Then show that ∅ ⊩W A and ∅ ⊩W A → B imply ∅ ⊩W B. This we show now. Clearly neither A nor B can be atomic (since all theorems of W are classical tautologies). We therefore have A = A_{1} → A_{2}, B = B_{1} → B_{2} for suitable formulas.

Since ∅ ⊩W A_{1} → A_{2}, there exists a box M_{1} of the form Figure 10.11:

Box M_{1}  1  Show A_{2}
2 t_{1} : A_{1}  Assumption
3 ⋮
4 t_{1} : A_{2}
exit  5 ∅ : A_{1} → A_{2}

Figure 10.11:

Since ∅ ⊩W (A_{1} → A_{2}) → (B_{1} → B_{2}) there exists a box M_{2} of the form (see fig 10.12)

The following is a box for ∅ ⊩W B_{1} → B_{2}, fig 10.13

where box M_{2}^{∗} is like box M_{2} except that we substitute t = ∅

■

Lemma 10.3.6 In the logic W, ⊢W (1) and ⊢W (2) imply ⊢W (3), where:

Box M_{2}  1  Show t : B_{1} → B_{2}
2 t : A_{1} → A_{2}  Assumption
3 t : B_{1} → B_{2}  from Box
4  Show B_{2}
5 s : B_{1}  Assumption
6 ts : B_{2}
exit  7 t : B_{1} → B_{2}
exit  8 ∅ : (A_{1} → A_{2}) → (B_{1} → B_{2})

Figure 10.12:

1. A_{1} → … → (A_{n} → (A → B) …)

2. D_{1} → … → (D_{m} → (D → A)) …)

3. C_{1} → … → (C_{m+n} → (D → B) …)

where C_{1}, …, C_{m+n} is any order preserving merge of the sequences A_{1}, …, A_{n} and D_{1}, …, D_{m}.

Proof. We need some notation. We shall use the previous theorem to show that, under the assumptions (1) and (2) we have that

∅ ⊩ (3)

Let a_{i} be an atomic name for A_{i} and d_{j} be an atomic name for D_{j}, i = 1, …, n and j = 1, …, m. Let t_{k} be an atomic name for C_{k}, k = 1, …, m + n. Then by definition {t_{1}, …, t_{m+n}} = {a_{1}, …, a_{n}, d_{1}, …, d_{m}}, and if C_{k} = D_{j} then t_{k} = d_{j} and if C_{k} = A_{i} then t_{k} = a_{i}.

The {t_{k}} are therefore just another enumeration of the {a_{i}, b_{j}}.

For each k, let r_{k} : E_{k} be the labelled formula:

r_{k} : E_{k} = a_{1} … a_{i} : A_{i+1} → … → (A_{n} → (A → B)) if C_{k} = A_{i}

or

d_{1} … d_{j} : D_{j+1} → … → (D_{m} → (D → A) …) if C_{k} = D_{j}.

We now produce a box (see fig 10.14) showing

⊩W C_{1} → … → (C_{m+n} → (D → B)) …).
■

The example below (figure 10.15) presents a particular case for illustration:

Example 10.3.7

∅ : A_{1} → (A_{2} → (A → B) …)
∅ : D_{1} → (D_{2} → (D_{3} → (D → A) …)

Show

∅ : A_{1} → (D_{1} → (D_{2} → (A_{2} → (D_{3} → (D → B) …)

Example 10.3.8 The statement of lemma 10.3.6 was not symmetrical. If we are given

⊢W X_{1} → … → (X_{n} → (A → B) …)
⊢W X_{1} → … (Y_{m} → A) …)

Then we get

⊢W Z_{1} → … → (Z_{m+n} → B) …)

only when Z_{1}, …, Z_{m} is a right order preserving merge of X_{1}, …, X_{m} and Y_{1}, …, Y_{m}. By right merge we mean the additional requirement Z_{m+n} = Y_{m}, ie the last element of the emerged resulting sequence is the last element of the second sequence being merged.

The following shows why we need this restriction for W.

Assume

⊢W X_{1} → (X_{2} → (A → B) …)
⊢W Y → A

We cannot show that

⊢W Y → (X_{1} → (X_{2} → B))

because the obvious box (figure 10.16)

Of course the above only shows that the obvious attempt to prove the assertion does not work. We shall see that the assertion is false when we give merge semantics for W. Note however that using the assertion we get that

⊢ (A → (B → C)) → (A → (B → C))
⊢ B → B

imply

⊢ (A → (B → C)) → (B → (A → C))

ie we get the commutativity axiom of linear logic.

Theorem 10.3.9 The logic obtained from the notion ∅ ⊩TE A of 10.2.6 can be axiomatised by

the schemas (1)-(4) of ticket entailment of 10.1.2, namely:.

1. C → C

2. (A → B) → ((C → A) → (C → B))

3. (A → B) → ((B → C) → (A → C))

4. (A → (B → C)) → ((A → B) → (A → C)) and (A → B) → ((A → (B → C)) → (A → C))

Proof. We consider the proof given for the case of W, in theorem 10.3.4. The case analysis, for this logic allows in the innermost box also for the case of

β_{k1} − {a_{1}} : A → X
β_{k2} − {a_{1}} : A → (X → Y)
(β_{k1} − {a_{1}}) ∪ (β_{k2} − {a_{1}}) : A → Y

We have to argue for this case separately. By the induction hypothesis A → X is proved in Box a. a = max(β_{k_{1}} − {a_{1}}) and A → (X → Y) is proved in box b, b= max(β_{k_{2}} − {a_{1}}). We have two axioms to add to the outermost box. These are:

(A → X) → ((A → (X → Y) → (A → Y))

and

(A → (X → Y)) → ((A → X) → (A → Y))

If a ≤ b we use the first axiom. Otherwise we use the second axiom. ■

Theorem 10.3.10 Linear logic L, with the metabox discipline as defined in 9.2.6 can be axiomatised as a Hilbert system by adding the following axiom to the axioms of W:

(A → (B → C)) → (B → (A → C)).

Proof. We consider the proof given for the case of W, in theorem 10.3.4. The case analysis for linear logic also allows for case (0, 1) of figure 10.8, to occur in the innermost box. Namely we have

X
A → (A → Y)
A → Y

In this case we use the instance of the axiom

∅ : (A → (X → Y)) → (X → (A → Y))

and use modus ponens twice. ■

10.4 The logic of H-relevance

This section is purely technical. It shows how a new logic can be created by allowing formulas to label themselves and by using a known logic (intutionistic) on the labels together with the labelling discipline of relevance logic on formulas. This logic is then axiomatised. The main message of this section is that LDS can generate new logics. This example, thought, does have some intutive meaning. If A is proved from the part of the database denoted by Δ_{0}, then Δ_{0} is the label of A. Intutionistic logic is used on the labels to decide which other parts of the database are “relevant” to Δ_{0}, namely all Δ′ such that Δ_{0} ⊢ Δ′.

Definition 10.4.1 The defining conditions on the metaboxes of this logic are as follows:

1. Formulas are labelled by themselves. It is convenient to give atomic labels a : A and use a labelling function h(a) = A.

2. To show A → B, start a box. Assume a : A and show α : B. Use modus ponens (unrestricted). The box is successful if a ∈ α. Exit the box with α − {a} : A → B.

3. Reiterations are allowed only either through condition 3 of 9.2.1 (ie the reiteration condition of W) or through the following additional condition: γ : C is allowed into the box provided h(A) ⊬H h(γ) where H is a labelling logic on the formulas. We further assume that within the box we do not use modus ponens on reiterations. This can be done externally ie we do not use

\begin{matrix}β_{k} : & X \\ β_{k1} : & X → Y \\ β_{k2} & Y \end{matrix}

where both X and X → Y come from an external box. The modus ponens can be done externally and then the Y reiterated. Formally the restriction within a box with assumption a : A to show B is that either a ∈ β_{k} or a ∈ β_{k1}.

Example 10.4.2 (a) Let H be intuitionistic logic. To show A → (B → A) (see fig 10.17)

This box is not successful because the label of A does not contain b.

(b) Show A → (X → B) → (X → (A → B)) for A ⊬ X. (See fig 10.18)

Example 10.4.3 Let H be intuitionistic logic.

Show (B → A) → ((A → B) → (A → B)) (see fig 10.19)

Theorem 10.4.4 The set of wffs such that ∅ ⊢ H-Relevance A can be axiomatised by:

1. A → A

2. (A → B) → ((B → C) → (A → C))

3. (A → B) → ((C → A) → (C → B))

4a. (A → B) → ((A → (B → C)) → (A → C))

4b. (A → (B → C)) → ((A → B) → (A → C))

7. (A → (B → C)) → (B → (A → C)), provided A ⊬H B.

Proof. We proceed like in the proof of 10.3.4 and we eliminate all uses of boxes. Let there be given a box for A → B. We prefix with A rather with A^{m}, ie we ignore multiple uses of A. If we check the case studies, two more cases are possible.

A → (X → Y)

A → X A → Y which can be taken care of by axiom 4 and A → (X → Y) X A → Y In this case X is a reiteration and therefore A ⊬H X. Hence we can use axiom 7 to get

X → (A → Y) and then by modus ponens we get A → Y.

We have to address the possibility that X may not be a reiteration itself but be provable from reiterations. Thus we have

\begin{matrix}X_{1} \\ X_{1} → X \\ X \end{matrix}

This possibility does not arise because of our restrictions on reiterations. ■

Theorem 10.4.5 The following table (fig 10.20) gives the correspondences between axioms and metabox conditions in the sense of 10.3.4.

Proof. Along the lines of previous proofs. ■

10.5 Introducing deductive relevance

This section introduces a new logic, the logic of deductive relevance. We start by motivating it. Consider a database with some information in it. Assume that from time to time the database is updated. The reason for the updating is that there seems to be a change of mind of whether certain formula should be in the database. For example A could be “John paid the invoice” and at different times there is a change of view of whether A is true or not. We can play it safe and insert in the database all the updates, with the appropriate labels indicating when they were received. Thus the formulas A and ∼ A may both appear in the database with different time labels

\begin{matrix}t_{i} : A & i = 1 … k \\ s_{i} :∼ A & i = 1 … m \end{matrix}

with t_{i}, s_{i} different time labels.

In general, a database of this sort will have the form Δ = {t_{i} : A_{i}} where t_{i} are labels and A_{i} are formulas. This database looks just like any other labelled database we have considered so far in this paper. When we prove a formula B from the database, we want to keep track of exactly what labelled formulas were used. If we do that, we can know which version of the data was used in the derivation. The labelled deduction process is the same as in the case of relevance logic. In relevance logic we are interested in resource considerations, we want to make sure that all assumptions are used. In our case we are interested in making sure the most recent updates were used. Consider the example below:

Example 10.5.1 Data: t_{1} : A t_{2} :∼ A s_{1} : A → B s_{2} : B →∼ A s_{3} :∼ A → (C → B)

Query: C → B

We can understand the above data as t-labelled updates of the data and s-labelled updates of the rule.

We assume t_{1} < t_{2} and s_{1} < s_{2} < s_{3}. We would like a derivation of C → B using the most recent data. We use the box below (see fig 10.21):

This proof is acceptable because it used the most recent data.

We can pretend in 10.5.1 that we are operating in relevant logic, if we agree that we are dealing with relevance classes of data, namely {t_{1}, t_{2}} and {s_{1}, s_{2}, s_{3}}. Whenever a label x is used in a class, this “use” of the label is considered as using all lower (“past”) labels. Thus in the above proof, C → B can be considered as a relevant derivation, because all labels were used. t_{2} and s_{3} were directly used, while t_{1}, s_{1} and s_{2} were “used” because a more recent update of that class was consulted.

The above example suggests that we can divide the labels into classes according to some agreed “Labelling Logic”, LL. LL helps us organise the classes of labels. When we prove any α : B from the database with label α, the logic LL will tell us whether α is considered as a relevant use of the database labels. In fact, LL may come as part of a package deal together with a labelling scheme. We label the data in some agreed manner, compatible with the application area (Δ a knowledge representation database for the application area) and LL is a suitable logic for the labels of the application area.

The next example shows how the labels can be used as degrees of certainty.

Example 10.5.2 Consider the assumptions:

1. a ∧ b → d

2. a → d′

3. a ∧ b ∧ c → d′

4. a

5. b

6. c

Let P(n) give the degree of certainty we attach to clause n. 0 ≤ P(n) ≤ 1.

To deduce d′ we can follows two paths: we can use clauses 3,4,5,6 and get d′_{{3,4,5,6}} or we can use 4 and 2 and get d′_{{2,4}}. In each case we can get the degree of certainty using P.

The label indicates which clauses were used. In the second case we can use the relevance deduction theorem and get

{clauses1, 3, 4, 5, 6} ⊢ (a → d′) → d′_{{4}}

but the proof of d′_{{2,4}} does not justify:

{clauses1, 2, 3, 4, 5} ⊢ c → d′.

The latter does hold, however, because of the existence of the other proof of d′_{{3,4,5,6}}.

Note therefore that we do not require that the assumption (for the use of the deduction theorem) be used in all proofs but only in at least one.

In each case the degree of certainty is obtained from the labels. Obviously what we need is a general system of deductive relevance which depends generally on a labelling scheme and on a labelling logic LL, which can be specialised to the various familiar systems (such as relevance logic, fuzzy logic etc) by a suitable choice of the labels and the logic LL. The system in its full generality need not necessarily have an intrinsic intuitive meaning, beyond that of having some logic on the labels. Each choice of labels and logic LL will, however, model some known system and intuitions.

As a first step, let us examine what logic LL would correspond to relevance logic itself. Let us recall the essential principle of the relevance labelling.

The relevance labelling follows the following principles:

1. All assumptions are named (labelled) using different atomic names. The same wff A may be

put in with more than one name: e.g.

n_{1} : A
n_{2} : A

This can arise, for example, when trying to prove ⊢ A → (A → A), which fails.

2. If A is labelled α and A → B is labelled β then using modus ponens we emerge with B labelled α ∪ β (because B uses in its proof both A and A → B).

3. If we want to show A → B, we assume A with name α (usually α = {a}, with “a” a new name). We prove forward B, which ends up, at the end of the proof with label β. Then if α ⊆ β, we can conclude A → B with label β − α:

Thus in diagram

{a} : A

…
…
β = {a, b, c, …} : B

allows us to deduce A → B with label {b, c …} = β − {a}.

We now make the following observation. We can regard a ∈ α as α ⊢ a in the boolean logic of the atomic labels a, b, c, . . .. Since all labels involved are atoms, or sets of atoms, the set theoretic relation α ⊆ β is identical with the logical relation β ⊢ α, in any logic, eg classical logic.

We can generalise the relevance logic procedure by allowing a logic LL (Labelled Logic) on the labels of the formulas. Imagine each formula assumption gets an label a. When we use modus ponens we get:

α : A
β : A → B
α ∧ β : B in the logic LL.

To prove A → B with label γ we assume:

\begin{matrix}α : A \\ … \\ … \\ β : B \\ γ : A → B \end{matrix}

We argue from A to B and want to exit with A → B with label γ. For A to be used in the proof of B we need

β ⊢_{LL} α.

γ would then be

γ = ∧ {names of assumptions x | β ⊢_{LL} x and α ⊬_{LL} x}

Thus to be able to get γ effectively we need LL to be computable, and of course that the number of assumptions finite.

In the case of ordinary relevance logic, the general definition reduces to the old definition. To see this note that if:

α = {a_{1}, ..., a_{n}}  old definition
α^{∗} = a_{1} ∧ … ∧ a_{n} new definition.

Thus

(α ∪ β)^{∗} = α^{∗} ∧ β^{∗}

Since a_{i}, b_{j} are atoms then if α ⊆ β

β − α = {a | β ⊢ a and α ⊬ a}

in the logic LL of classical conjunctions and classical truth tables.

Let us call the logic obtained from labelling on LL by “DR( LL)”. In words: “Deductive relevance based on the labelling logic LL”.

It may be convenient to name a formula A by the symbol “a”. If A is syntacticaly different from B then “a” and “b” are considered different atomic names. If A is put in the database twice, then we obviously have to use different atomic names and not just put “a” in twice. Eg “a_{1}” and “a_{2}”.

Important Remark

Note that there is no reason why the labelling logic LL should be monotonic. It can be any non-monotonic system which allows for conjunctions, ie allows us to form

\frac{α : A, β : A → B}{α ∧ β : B}

and which is decidable. We need decidability in order to form γ as shown: α : A … β |∼ α … β : B ————– γ : A → B, γ = ∧{x | β |∼ x and α |̸∼ x}

|∼ is the non monotonic LL

Example 10.5.3 We recall 2.2.1 of Chapter 2. Show that ⊢ (B → A) → ((A → B) → (A → B)) in relevance logic.

To show that, we show that the assumptions a_{1}:B → A a_{2}:A → B a_{3}:A prove B with label (a_{1}, a_{2}, a_{3})

This was done in 2.2.1. To illustrate our labelling logic ideas, let us use relevance logic itself as the labelling logic. Thus R is relevance logic and D = DR(R) is the resulting logic when relevance logic is used on the labels. We use the formulas themselves as their names: We thus want to show:

B → A, A → B, A ⊢_{D} B with label (B → A) ∧ (A → B) ∧ A.

Since (B → A) ∧ (A → B) ∧ A ⊢_{R} A, we use the dedution theorem in D = DR(R) and get:

B → A, A → B ⊢_{D} A → B with label γ, where:

γ = {x | x is a name and (B → A) ∧ (A → B) ∧ A ⊢_{R} x and A ⊬_{R} x}

We have 3 names. A ⊬_{R} A → B and A ⊬_{R} B → A, hence γ = (A → B) ∧ (B → A). We can use the deduction theorem again and get:

B → A ⊢_{D} (A → B) → (A → B) with label B → A

and again

⊢_{D} (B → A) → ((A → B) → (A → B)).

Example 10.5.4 DR(R) is not the same as R. Consider the formula:

(A → A) → ((A → A) → (A → A))

This is a theorem of R, because A → A, A → A, A ⊢_{R} A with label (A → A, A → A, A). (We use modus ponens twice). We also have by the deduction theorem

A → A, A → A ⊢_{R} A → A with label (A → A, A → A)
A → A ⊢_{R} (A → A) → (A → A) with label (A → A)

However in D = DR(R) the exit label is computed differently and hence we get

A → A ⊢_{D} (A → A) → (A → A) with label ∅

In fact, any theorem of R of the form ⊢_{R} A → (B → C) such that ⊢_{R} B → A will not be a theorem of D.

Example 10.5.5 Now let us use intuitionistic logic Int as the labelling logic in 10.5.3, and abbreviate D = DR(Int) We get:

B → A, A → B, A ⊢_{D} B with label (B → A) ∧ A ∧ (A → B)

Use the deduction theorem

B → A, A → B ⊢_{D} A → B with label γ. γ = {x | (B → A) ∧ A ∧ (A → B) ⊢_{Int} x but A ⊬_{Int} x}

Clearly γ = {A → B}. In intuitionistic logic A ⊢_{Int} B → A, which is not true in relevance logic. Thus we get B → A ⊢_{D} (A → B) → (A → B) with label γ γ = ∧{x | A → B ⊢_{Int} x and A → B ⊬_{Int} x} = truth.

We cannot continue and use the deduction theorem any further. Thus for the logic DR(Int), where the labelling logic is intuitionistic logic, we do not have:

1. ⊢_{DR(Int)} (B → A) → ((A → B) → (A → B)).

On the other hand we do have

2. ⊢_{DR(Int)} A → ((A′ → A′) → A)

(1) is a theorem of relevance logic while (2) is not. We can see that we are getting something new. We have not proved yet that what we get is a logic. In fact we must show that for any monotonic logic LL, the logic DR(LL) is indeed a consequence relation. At the moment I have proof only for the case of DR(Int). The difficult part to prove being the cut:

Δ ⊢_{DR(Int)} A and Δ, A ⊢_{DR(Int)} B ⇒ Δ ⊢_{DR(Int)} B.

10.6 The cut rule for deductive relevance

To investigate the relationship between a logic X and its deductive relevance counterpart DR(X) in general and DR(int) in particular we need to proceed to do through a series of definitions and lemmas.

Definition 10.6.1 1. Define for a Hilbert system H, the notion ⊢H A as follows: ⊢H A iff there exists a sequence B_{1}, B_{2}, … B_{n} = A such that each member of the sequence is either an instance of an axiom or is obtained from the two previous formulas of the sequence by modus ponens.

2. Define A_{1}, …, A_{n} ⊢H B as

⊢H A_{1} → (A_{2} → … → (A_{n} → B) …).

Note that this definition is independent of the order of A_{i} because of the axiom

⊢ (A → (B → C)) → (B → (A → C)).

Also note that ⊢H is non monotonic, ie A ⊢H A may hold, but A, B ⊢H A may not hold because its meaning is ⊢H A → (B → A).

3. To define a monotonic consequence relation based on H, let A_{1}, …, A_{n}, ⊩H B be defined to hold iff there exists a sequence of formulas B_{1}, …, B_{n} = B such that each member B_{i} is either an assumption A_{j} or a theroem, ⊢H B_{i}, or is obtained from two previous elements of the sequence by modus ponens. Note that in this case we will have a monotonic consequence relation A, B ⊩H A will hold. We do have however:

∅ ⊩H B iff ∅ ⊢H B iff ⊢H B.

Definition 10.6.2 (a) A set of assumptions has the form Δ = {a_{i} : A_{i}}, where A_{i} are formulas and a_{i} are all different atomic labels.

(b) We define by induction the notion of a proof tree of Δ ⊢ t : B, where t is a label.

(1) τ = {Δ ⊢ t : B} is a one node tree if t : B ∈ Δ. This node is the bottom node of the tree.

(2) If τ_{1} is a proof tree with bottom node Δ ⊢ t : A and τ_{2} is a proof tree with bottom node Δ ⊢ s : A → B then

is a tree with bottom node Δ ⊢ st : B.

(3) If τ is a tree with bottom node Δ ∪ {a : A} ⊢ t : B and a appears in the string t then:

is a tree with bottom node Δ ⊢ t − a : A → B.

(c) We say A_{1} … A_{n} ⊢ B if for some distinct atomic labelling a_{i} : A_{i} we have a proof tree for {a_{i} : A_{i}} ⊢ a_{1} … a_{n} : B

Theorem 10.6.3 ([Anderson and Belnap, 1975]) A_{1}, …, A_{n} ⊢ B in the sense of (c) of 10.6.2 iff A_{1}, …, A_{n} ⊢H B, for H being relevance logic in the sense of 10.6.1.

Definition 10.6.4 1. Let ⊢ be a non monotonic consequence relation. ⊢ is said to be a labelling logic if it satisfies the following conditions:

(a) \frac{Δ ⊢ B ; Δ′ ⊢ B → C}{Δ, Δ′ ⊢ C}
(b) \frac{Δ, Δ′ ⊢ D_{2} ; D_{1} ⊢ ∧Δ′}{Δ, D_{1} ⊢ D_{2}}
(c) \frac{Δ, D_{1} ⊢ D_{2}}{Δ ⊢ D_{1} → D_{2}}

2. A Hilbert System I is said to be a labelling logic if ⊢_{I} is a labelling logic. A labelling logic I (or ⊢) is said to be monotonic if ⊢_{I} (resp. ⊢) is monotonic. Note that for H= Relevance logic whose axioms are mentioned in 2.2.1, ⊢H is a labelling logic. ⊩H is a monotonic labelling logic.

3. A database is a set of pairs of the form:

\begin{matrix}a_{1} & : & A_{1} \\ … \\ … \\ a_{n} & : & A_{n} \end{matrix}

where a_{i} are all different atomic labels.

4. Let I be a labelling logic, on the same language as the data. A function h on {a_{i} | a_{i} : A_{i} ∈ Δ} is a logical support function if h(a_{i}) is a set of wff and h(a_{i}) ⊢_{I} A_{i}.

Definition 10.6.5 Let Δ be a database and h a support function and B a wff. We define the provability ⊢_{nDR(I)}^{h} by induction of n. The basic notion we are defining is

Δ ⊢_{n}^{h} B, α, π

where Δ is a database with labelled wffs. B is the proved wff. α is a set of labels used in the proof and π is a set of wff of I, the logical support of B; n = 0, 1, 2, . . .. Case n = 0 Δ ⊢_{0}^{h} B, α, π iff there exists a sequence (B_{i}, α_{i}, π_{i})i = 1, …, k with (B_{k}, α_{k}, π_{k}) = (B, α, π) and each element in the sequence satisfies the following: Condition 1:

a_{i} : B_{i} ∈ Δ and π_{i} = h(a_{i}) and α_{i} = {a_{i}}.

Condition 2: There exist B_{j}, B_{m}, j, m, < i such that B_{m} = B_{j} → B_{i} and α_{i} = α_{m} ∪ α_{j} and π_{i} = π_{m} ∪ π_{j}.

Case n+1 We now define Δ ⊢_{n+1}^{h} B, α, π.

The above holds if there is a sequence satisfying any of the above conditions (1) and (2) or the following additional Condition (3): Condition 3: B_{k} = D_{1} → D_{2} and Δ′ = Δ ∪ {d : D_{1} | d a new label } ∪ {b_{j} : B_{j} | b_{j} new labels and j < k}, h′ = h ∪ {(d, D_{1})} ∪ {(b_{j}, π_{j})} and Δ′ ⊢_{m}^{h′} D_{2}, γ, π_{0}, for some m ≤ n and π_{0} ⊢_{I} D_{1} and α_{k} = γ − {d} and π_{k} = {x ∈ π_{0} | D_{1} ⊬_{I} x}. Case n=∞: Let Δ ⊢^{h} B, α, π if for some n, Δ ⊢_{n}^{h} B, α, π.

Lemma 10.6.6 Let Δ be a labelled database and let h be a support function. Let U = U(Δ, h) be U = ∪_{(a:A)∈Δ}h(a). For any α let U_{α} = ∪_{a∈α}h(a). Then if Δ ⊢_{n}^{h} B, α, π we have π ⊆ U and π_{⊢_{I}} B. (In fact π ⊆ ∪_{a∈α}h(a) = U_{α}).

Proof. The proof is by induction on the definition of ⊢_{n}^{h}. Case n=0: Assume Δ ⊢_{0}^{h} B, α, π. Then there is a sequence as in the definition. If a_{k} : B_{k} ∈ Δ then α_{k} = {a_{k}} and π_{k} = h(a_{k}) and π_{k} ⊢_{I} B_{k} and π_{k} ⊆ U_{α_{k}}. If B_{m} = B_{j} → B_{k} then α_{k} = α_{m} ∪ α_{j} and π_{k} = π_{m} ∪ π_{j} and since by the induction hypothesis U_{α_{m}} ⊇ π_{m} ⊢_{I} B_{m} and U_{α_{j}} ⊇ π_{j} ⊢_{I} B_{j} we get U_{α_{k}} ⊇ π_{k} ⊢_{I} B_{k}. Case n+1: Assume Δ ⊢_{n+1}^{h} B, α, π. We check the case of B = B_{k} = D_{1} → D_{2}. We have Δ′ = Δ ∪ {(d : D_{1})} ∪ {(b_{j} : B_{j}) | j < k}, h′ = h ∪ {(d, D_{1})} ∪ {(b_{j}, π_{j}) | j < k} and Δ′ ⊢_{m}^{h′} D_{2}, γ, π_{0} for m ≤ n, and U_{γ} ⊇ π_{0} ⊢_{I} D_{1} and α_{k} = γ − {d} and π_{k} = {x ∈ π_{0} | D_{1} ⊬_{I} x} and U_{α_{j}} ⊇ π_{j} ⊢_{I} B_{j}, for j < k. We have to show that U_{α_{k}} ⊇ π and π ⊢_{I} D_{1} → D_{2}.

Consider all wffs in π_{0}. Classify them into two sets {x_{i}}, {y_{j}}, where D_{1} ⊢_{I} y_{j} and D_{1} ⊬ x_{i}. hence π = {x_{i}}. Clearly π ⊆ U_{α_{k}} since D_{1}∉π. We know that by the induction hypothesis we have:

π_{0} = ∧_{i}x_{i} ∧ ∧_{j}y_{j} ⊢_{I} D_{2}.

Also since D_{1} ⊢_{I} ∧y_{j} we get ∧x_{i} ∧ D_{1} ⊢_{I} D_{2} and hence ∧x_{i} ⊢_{I} (D_{1} → D_{2}). ■

Lemma 10.6.7 Assume I is a monotonic labelling logic. Let \underline{h} ⊇ h mean that for any label a, \underline{h}(a) ⊇ h(a). Assume Δ ⊢\underline{h} ; n B, α, π then Δ ⊢_{n}^{h} B, α, \underline{π}, where \underline{π} satisfies (π ∪ U^{∗}) ⊇ \underline{π} ⊇ π and U = ∪_{a}\underline{h}(a) and U^{∗} = ∪_{a}(\underline{h}(a) − h(a)).

Proof. By induction on the proof of Δ ⊢_{n}^{h} B, α_{π}. Case n=0: Δ ⊢_{n}^{h} B, α, π_{i}. Then there exists a sequence as in the definition. Replace h by \underline{h} and use the same sequence. We get a sequence with \underline{π} satisfying the lemma. Case n+1: To show the lemma for Δ ⊢_{n+1}^{h} B, α, π_{i} we use the second half of the definition. We need to consider the case B = B + k = D_{1} → D_{2}, with

Δ′ = Δ ∪ {(d : D_{1})} ∪ {(b_{j} : B_{j}) | j < k},
h′ = h ∪ {(d, D_{1})} ∪ {(b_{j}, π_{j}) | j < k}.

and the following holds:

Δ′ ⊢_{m}^{h′} D_{2}, γ, π_{0},
π_{0} ⊢_{I} D_{1}, α_{k} = γ − {d},
π = {x ∈ π_{0} | D_{1} ⊬_{I} x}.

By a previous lemma π_{o} ⊢_{I} D_{2}. By the induction hypothesis the same proof sequence will give:

\underline{h}′ = \underline{h} ∪ \{(d, D_{1})\} ∪ \{(b_{j}, \underline{π}_{j}) | j < k\}.

Since B_{j} has a shorter proof we get:

π_{j} ∪ U^{∗} ⊇ \underline{π}_{j} ⊇ π_{j}

Again by the induction hypothesis:

Δ′ ⊢_{m}^{\underline{h}′} D_{2}, γ, \underline{π}_{0}
(π_{0} ∪ U^{∗}) ⊇ π_{0} ⊇ π_{)}.

Since π_{0} ⊢_{I} D_{1} we get \underline{π}_{0} ⊢_{I} D_{1}. Since by the previous lemma π_{0} ⊢_{I} D_{2}, we get \underline{π}_{0} ⊢_{I} D_{2}.

Define \underline{π} = \{x ∈ \underline{π}_{0} | D_{1} ⊬_{I} x\}. Clearly then Δ ⊢\underline{h} ; n+1 B, γ, \underline{π}. Clearly (π ∪ U^{∗}) ⊇ \underline{π} ⊇ π. ■

Lemma 10.6.8 For a monotonic labelling logic, the following holds: If Δ ⊢^{h} A and Δ, A ⊢^{h} B then for some h1 ⊇ h Δ ⊢^{h1} B.

Proof. Assume Δ_{n}^{h} ⊢ A, α, π_{1} and Δ, A ⊢_{m}^{h} B, β, π_{2}. Let h1 be defined by h1(x) = h(x) ∪ π_{1}. By the previous lemma, since U^{∗} ⊆ π_{1} we get Δ ⊢_{n}^{h1} A, α, \underline{π}_{1} with π_{1} ⊆ \underline{π}_{1} ⊆ (π_{1} ∪ U^{∗}) ⊆ π ∪ π_{1}. We also have Δ, A ⊢_{m}^{h1} B, β, \underline{π}_{2}.

We can now string the two proofs together:

Δ …

proof as in Δ ⊢^{h1} A

… A …

proof as in Δ, A ⊢^{h1} B.

… B

The crucial reason that we can indeed string the proofs together is that the label \underline{π}_{1} of A at the end of the proof of Δ ⊢^{h1} A is the same as the label h1 gives to A as an item of data in the proof of Δ, A ⊢^{h1} B. The construction of h1 from h by adding \underline{π}_{1} to all labels was designed to ensure this. ■

Lemma 10.6.9 1. If a : A ∈ Δ then Δ ⊢^{h} A.

2. If Δ ⊢^{h} A then Δ, B ⊢^{h} A.

Proof. By definition. ■

Theorem 10.6.10 Let I be a monotonic logic and Δ ⊆ J be a set of wffs. Let Δ ⊢_{DR(I)}^{J} A iff

for some h (with U(h) ⊆ J)Δ ⊢_{DR(I)}^{h} A. Then ⊢_{DR(I)}^{J} is a consequence relation.

Proof.From previous lemmas. ■

Example 10.6.11 Relevance Logic Let Δ = {a_{i} : A_{i}} with a_{i} new and different atoms. Let h_{R}(a_{i}) = a_{i} ∧ (∧_{j}A_{j}). then, provided h(a_{i}) ⊢ h(a_{j}) iff i = j, we get:

Lemma 10.6.12 ⊢_{R}^{h} is relevance logic.

Proof. Show by induction that Δ ⊢_{R}^{h} A, α, π iff π = ∧α ∧ Δ. ■

Theorem 10.6.13 Let I = Relevance logic and let h(a : A) = A. Then DR(R) = R.

Proof. Show that if Δ ⊢^{h} A, α, π then π = {A | a ∈ α and a : A ∈ Δ}. ■

10.7 Negation

This section studies properties of negation in concatenation and linear logics. We begin with the idea of adding an arbitrary unary connective ⊙ to the language and studying its properties. We begin with CL(⊗). The language of CL(⊗) contains only atomic propositions and the implication and concatenation symbols → and ⊗. We want to enrich the language with a unary propositional function ⊙, associating with each atomic q another atom q^{⊙}. We shall eventually stipulate that q^{⊙⊙} = q, but at this stage this is not needed. For a general theroy of negation see Gabbay-Wansing [12].

Definition 10.7.1 1. Let CL(⊗, ⊙) be the extension of CL(⊗) with a unary propositional function symbol ⊙. Extend the notion of a formula and a literal to to be the following:

(a) Any atom q is a formula and a literal.

(b) If A and B are formulas so are A → B and A ⊗ B.

(c) If A is a literal (a formula without → and ⊗) then A^{⊙} is a formula and a literal.

Essentially ⊙ is not a connective but a function symbol generating more literals (atoms) from literals (atoms). We shall later deal with function symbols ⊙ satisfying q^{⊙⊙} = q. Such functions are indexed by “2”.

Thus when we write CL_{2}(⊗, ⊙), we mean that ⊙ satisfies q^{⊙⊙} = q.

2. We can, of course, extend the language of CL(⊗) with a new proper unary connective ρ to obtain CL(⊗, ρ). For example in 3.1 we added to CL(⊗) the negation symbol ¬ and obtained CL(⊗, ¬). The formulas of CL(⊗, ρ) are defined as follows:

(a) Any atomic q is a formula and a literal.

(b) If A and B are formulas so are A → B, A ⊗ B and ρA.

(c) If A is a literal so is ρA.

The difference between CL(⊗, ⊙) and CL(⊗, ρ) is that ⊙ is allowed to apply only to literals. We are not allowed to form ⊙(A → B).

The proof theory of CL(⊗, ⊙)) is the same as that of CL(⊗). For all purposes CL(⊗, ⊙) is just CL(⊗) with several types of atoms. We have the following

CL(⊗, ⊙) ⊢ A iff CL(⊗) ⊢ A′

where A′ is obtained from A by replacing each atom q^{⊙...⊙} (with n times ⊙) by a completely new atom q_{n}.

Even the case of CL(⊗, ⊙) is no different. We may think that perhaps an additional axiom q^{⊙⊙} = q is needed but this is not the case. Take CL(⊗) and divide its atoms into pairs, q and q^{⊙}. Then any formula A of CL(⊗, ⊙) can be translated into a formula A′ of CL(⊗) by letting (q^{⊙...⊙})′ = q iff the number of ⊙ is even, q^{⊙} if the number is odd.

We have

CL(⊗, ⊙) ⊢ A iff CL(⊗) ⊢ A′

We can take the above as the definition of provability in CL(⊗, ⊙).

We can do the above translation only because q^{⊙} is completely independent of q.

Definition 10.7.2 1. Let CL(⊗, ρ) be the extension of CL(⊗) with an additional connective ρ. We say that ρ is a rewrite extension of CL(⊗), provided it satisfies axioms of the form:

• ρ(A → B) ↔ Ψ_{→}(A, ρA, B, ρB)

• ρ(A ⊗ B) ↔ Ψ_{⊗}(A, ρA, B, ρB) where ψ_{→}, Ψ_{⊗} are formulas of CL(⊗, ρ) of lower complexity than ρ(A → B) and ρ(A ⊗ B) respectively, according to some well defined complexity measure.

2. Let CL(⊗, ⊙) be the extension of CL(⊗) with the function symbol ⊙. Let Ψ(⊙, q, ⊥_{1}, …, ⊥_{n}) be a formula with one atom q, the symbol ⊙, and n atoms ⊥_{1}, …, ⊥_{n} considered as parameters. Let CL_{Ψ}(⊗, ⊙) be the extension of CL(⊗, ⊙) with the additional axiom:

Ψ(q, ⊥_{1}, …, ⊥_{n}).

The above axiom puts down conditions on the functionality of ⊙ on the atoms. For example, we may have

⊙q ↔ (q → ⊥)

for a fixed atom ⊥. This says that the function ⊙q is definable in terms of → and ⊥. Another possibility is

⊙ ⊙ q ↔ q.

This says ⊙ is idempotent.

Example 10.7.3 Let “ρ” be “¬”, a negation symbol and consider the rewrite

¬(A → B) ↔ (A ⊗ ¬B)
¬(A ⊗ B) ↔ (A → ¬B)
¬¬A ↔ A

Then we obtain the extension CL(⊗, ¬).

Our purpose is to explain the negation in LL(⊗, ¬) in terms of rewrite extensions and functionality of a unary connective. In fact, we are going to show that ¬ is the rewrite of example 5.3 which has the additional functionality of

¬A ↔ (A → ⊥)

for a fixed ⊥.

The next sequence of definitions and lemmas will establish these claims.

Lemma 10.7.4 Let ⊥ be an arbitrary atom in LL, then the following holds:

1. ⊢LL ((A → ⊥) → ⊥) ↔ ((((A → ⊥) → ⊥) → ⊥) → ⊥)

2. Let LL^{⊥} be the fragment of LL built up using → inductively as follows:

(a) ⊥ is a wff of LL^{⊥}. If q is any atom then (q → ⊥) → ⊥ is a wff of LL^{⊥}

(b) If A and B are wffs of LL^{⊥} so is A → B.

Then for any A of LL^{⊥} we have

⊢LL A ↔ ((A → ⊥) → ⊥)

3. Let A, B and C be formulas of LL^{⊥} then

⊢LL (((A → (B → ⊥)) → ⊥) → C) ↔ (A → (B → C)).

Proof.

10.7. NEGATION 297

1. First observe that

⊢LL A → ((A → ⊥) → ⊥),

because

⊢LL (A → ⊥) → (A → ⊥).

Second, observe that since

⊢LL (A → B) → [(B → C) → (A → C)]

we get for C = ⊥ that

⊢ (A → B) → [(B → ⊥) → (A → ⊥)]

Hence by using our first and second observations we get since

⊢LL ((A → ⊥) → (((A → ⊥) → ⊥) → ⊥

that

⊢ ((((A → ⊥) → ⊥) → ⊥) → ⊥) → ((A → ⊥) → ⊥)

which proves (1).

2. Let A be a wff of LL^{⊥}. We show

⊢LL ((A → ⊥) → ⊥) → A.

We prove this by induction on the structure of A. for A of the form (q → ⊥) → ⊥, this is proved in (1). Assume

⊢ A ↔ ((A → ⊥) → ⊥)
⊢ B ↔ ((A → ⊥) → ⊥)

we shall show

(a) ⊢ (((A → B) → ⊥) → ⊥) → (A → B) We can show instead

(a′) ⊢ (((A → B) → ⊥) → ⊥) → (A → ((B → ⊥) → ⊥))

we have

⊢ (A → B) → ((B → ⊥) → (A → ⊥))

hence

(b) ⊢ A → ((B → ⊥) → ((A → B) → ⊥))

since

⊢ (p → (q → r)) → ((r → s) → (p → (q → s)))

we get for p = A, q = B → ⊥, r = (A → B) → ⊥ and s = ⊥ the formula

⊢ (b) → (a′)

and by modus ponens we get ⊢ (a′).

3. Since ⊢ A → (B → ((A → (B → ⊥)) → ⊥)) we get

⊢ (((A → (B → ⊥)) → ⊥) → C) → (A → (B → C)).

For the other direction, in order to show ⊢ (A → (B → C)) → (((A → (B → ⊥)) → ⊥) → C).

We show instead that

⊢ (A → (B → C)) → ((A → (B → ⊥)) → ⊥) → ((C → ⊥) → ⊥)))

using the fact that

⊢ ((C → ⊥) → ⊥) → C.

The above follows from

⊢ (A → (B → C) → ((C → ⊥) → (A → (B → ⊥)))

which is indeed provable.

■

Lemma 10.7.5 Let ⊥ be an arbitrary atom. Let τ^{⊥} be a translation from LL(¬) of definition 10.3.1 into LL defined as follows

1. τ^{⊥}(q) = def (q → ⊥) → ⊥, for atomic q.

2. τ^{⊥}(A → B) = τ^{⊥}(A) → τ^{⊥}(B).

3. τ^{⊥}(¬A) = τ^{⊥}(A) → ⊥.

Then the following holds:

LL(¬) ⊢ A iff LL ⊢ τ^{⊥}(A).

Proof.

1. Assume LL(¬) ⊢ A. Consider τ^{⊥}(A). This formula is in the fragment LL^{⊥} of LL as defined in lemma 10.7.4. By that same lemma, the τ^{⊥} translations of the axioms of LL(¬) are theorems of LL. The translation of modus ponens itself and the translation of (A → B) → (¬B → ¬A) is a theorem of LL. Therefore any LL(¬) proof of A will be translated into an LL proof of τ^{⊥}(A) and hence LL ⊢ τ^{⊥}(A).

2. Assume that LL(¬) ⊬ A. We will show that LL ⊬ τ^{⊥}(A). We show that by constructing a countermodel. We begin with LL(¬). We can consider LL(¬) as a version of LL without ¬, by viewing any wff of the form ¬B as atomic. Thus we pretend that ¬ is a symbol generating new atoms. We construct the canonical LL structure (X, h) of this language, as in 10.8.10. In this canonical structure, the elements are all multisets of LL(¬) formulas {A_{1}, …, A_{n}}. For atomic q (and also for negated ¬B, which we consider as atomic), we have:

h({A_{1}, …, A_{n}}, q) = 1 iff ⊢_{LL(¬)} A_{1} → … → (A_{n} → q) …)

and

h({A_{1}, …, A_{n}}, ¬B) = 1 iff ⊢_{LL(¬)} A_{1} → … → (A_{n} → ¬B) …).

We can prove by induction on → that for any wff C built up from these “atoms” we have:

h({A_{1}, …, A_{n}}, C) = 1 iff ⊢_{LL(¬)} A_{1} → (A_{2} → … → (A_{n} → C) …).

What we do not have in this structure is an inductive condition for the value h(t, ¬B). Our next step is to obtain such an inductive clause.

The language LL(¬) has real atoms {q_{1}, q_{2}, …}. We pretended that any negated formula of the form ¬B is also an “atom” and got the canonical structure (X, h) for the language with “atoms” {q_{i}} and {¬B}. We now want to create a new atom ⊥ and reduce ¬B to B → ⊥.

We begin by taking a new atomic letter ⊥ and defining a new assignment h′ on the atoms {q_{i}} ∪ {⊥}. h′ is defined using the following clauses:

• h′({A_{1}, …, A_{n}}, q) = h({A_{1}, …, A_{n}}, q) for atomic q ≠ ⊥.

• h′({A_{1}, …, A_{n}}, ⊥) = 1iff ⊢_{LL(¬)} A_{1} → … → (A_{n−1} → ¬A_{n}) …).

Notice that in LL(¬) the second condition is equivalent to the following:

⊢_{LL(¬)} A_{1} → … A_{i−1} → (A_{i+1} → … → (A_{n} → ¬A_{i}) …)

We now have a structure for the language LL^{⊥}, ie LL with ⊥. Consider a formula A of the language LL(¬). It gets a truth value h({A_{1}, …, A_{n}}, A) at the point {A_{1}, …, A_{n}} under h by considering as “atoms” in it any real atom q_{i} and any subformula of the form ¬B. In parallel we can consider h′({A_{1}, …, A_{n}}, τ^{⊥}(A)). This function also gives a value because τ^{⊥}(A) is a formula built up from real atoms q_{i} and ⊥ and h′ is an assignment for this language. How are these two values related? We claim that for any A we have:

(*) h({A_{1}, …, A_{n}}, A) = 1 iff h′({A_{1}, …, A_{n}}, τ^{⊥}(A)) = 1. To show (*) we need to show (**) below:

(**) For any B of LL(¬) we have:

h({A_{1}, …, A_{n}}, ¬B) = 1 iff h′({A_{1}, …, A_{n}}, τ^{⊥}(B) → ⊥) = 1.

Case of atomic q ≠ ⊥ First note that for q atomic, τ^{⊥}(q) → ⊥ is ((q → ⊥) → ⊥)) → ⊥ which is equivalent to q → ⊥ in LL. Thus to prove (**) in the atomic case it is sufficient to show that h(t, ¬q) = h′(t, q → ⊥). Using that we prove (*) namely that h(t, q) = h′(t, (q → ⊥) → ⊥).

1. First we prove (**). Note that:

(a) h({A_{1}, …, A_{n}}, ¬q) = 1 iff by definition ⊢_{LL(¬)} A_{1} → … → (A_{n} → ¬q) …). On the other hand we also have

(b) h′({A_{1} …, A_{n}}, q → ⊥) = 1 iff for any {B_{1}, …, B_{m}} if h′({B_{1}, …, B_{m}}, q) = 1 then h′({A_{1}, …, A_{n}, B_{1}, …, B_{m}}, ⊥) = 1. The above holds iff whenever ⊢_{LL(¬)} B_{1} → … → (B_{m} → q) …) then ⊢_{LL(¬)} A_{1} → … → (A_{n} → (B_{1} → … → B_{m−1} → ¬B_{n}) …).

Assume (a) and show (b): If ⊢_{LL(¬)} B_{1} → … → (B_{m} → q) …) then ⊢_{LL(¬)} B_{1} → … → (¬q → ¬B_{m}) …) or equivalently ⊢_{LL(¬)} ¬q → (B_{1} → (… → (B_{m−1} → ¬B_{m}) …) and hence from (a) we get

⊢ A_{1} → … A_{n} → (B_{1} → … (B_{m−1} → ¬B_{m})) …)

Assume (b) and show (a). From (b) we get by taking m = 1 and B_{m} = q that ⊢_{LL(¬)} A_{1} → … → (A_{n} → ¬q) …), which is (a).

2. We now prove (*):

Assume that h({A_{1}, …, A_{n}}, q) = 1. Then ⊢_{LL(¬)} A_{1} → … → (A_{n} → q) …).

To show h′({A_{1}, …, A_{n}, τ^{⊥}(q))) = 1, observe that since τ^{⊥}(q) is (q → ⊥) → ⊥ we need to show that h′({A_{1}, …, A_{n}}, (q → ⊥) → ⊥)) = 1. Let {B_{1}, …, B_{m}} be such that h′({B_{1}, … B_{m}}, q → ⊥) = 1. We want to show h′({A_{1}, …, A_{n}, B_{1}, …, B_{m}}, ⊥) = 1

By (**) which we have already proved for atomic q, we deduce that

⊢_{LL(¬)} B_{1} → … (B_{m} → ¬q) …)

hence

⊢_{LL(¬)} q → (B_{1} → … → (B_{m−1} → ¬B_{m}) …)

hence

⊢_{LL(¬)} A_{1} → … → (A_{n} → … → (B_{m−1} → ¬B_{m}) …)

hence by definition

h′({A_{1}, …, A_{n}, B_{1}, …, B_{m}}, ⊥) = 1.

For the other direction, assume h′({A_{1}, …, A_{n}}, (q → ⊥) → ⊥) = 1. We show that ⊢_{LL(¬)} A_{1} → … → (A_{n} → q) …).

From (**) we get that h′({¬q}, q → ⊥) = 1 and hence

h′({A_{1}, …, A_{n}, ¬q}, ⊥) = 1

and hence

⊢_{LL(¬)} A_{1} → … → (A_{n} → q) …)

and hence

h({A_{1}, …, A_{n}}, q) = 1.

This concludes the proof of both (*) and (**) for the case of atomic q. Note that we also got the following

(***) h′(t, q) = h′(t, (q → ⊥) → ⊥), for q atomic.

The non atomic case We first prove (**): Assume

h({A_{1}, …, A_{n}}, ¬B) = 1

Then

⊢_{LL(¬)} A_{1} → … → (A_{n} → ¬B) …).

We show

h′({A_{1}, …, A_{n}}, τ^{⊥}(B) → ⊥) = 1

Assume

h′({B_{1}, …, B_{m}}, τ^{⊥}(B)) = 1

Then by the induction hypothesis, from (*) we get

⊢_{LL(¬)} B_{1} → … → (B_{m} → B)

or

⊢_{LL(¬)} ¬B → (B_{1} → … (B_{m−1} → ¬B_{m}) …)

Therefore

⊢_{LL(¬)} A_{1} → … → (A_{n} → B_{1} → … (B_{m−1} → ¬B_{m}) …)

and so by definition

h′({A_{1}, …, A_{n}, B_{1}, …, B_{m}}, ⊥) = 1

Assume

h′({A_{1}, …, A_{n}}, τ^{⊥}(B) → ⊥) = 1,

we show

h({A_{1}, …, A_{n}}, ¬B) = 1.

By the induction hypothesis h′({B}, τ^{⊥}(B)) = 1 and so h′({A_{1}, …, A_{n}, B}, ⊥) = 1 and so by definition

⊢_{LL(¬)} A_{1} → … → (A_{n} → ¬B) …)

hence

h({A_{1}, …, A_{n}}, ¬B) = 1.

It is now possible to prove (*) for the non atomic case. For the case = ¬B, note that τ^{⊥}(¬B) is τ^{⊥}(B) → ⊥. For B atomic the result follows from (***) and for other B the result follows from (**). The case of B = C → D is also immediate because τ^{⊥} commutes with → and both h and h′ follow the same truth table for →.

We now concluded the proofs of (*) and (**) and we can resume the main line of the proof. Let A be such that LL(¬) ⊬ A. Consider the structure (X, h). We have h(∅, A) = 0. Consider

the structure (X, h′). We have h′(∅, τ^{⊥}(A) = 0. It therefore follows that LL ⊬ τ^{⊥}(A). This concludes the proof of lemma 10.7.5. ■

10.8 Concatenation semantics

This section will provide Kripke like possible world semantics for some of the Resource Logics. We continue with the system CL, defined in 9.2.5 and axiomatised in 10.1.1. Our starting point is a general implicational system, with no axioms or rules at all. Thus we

have a language with → only and possibly the classical connectives ∧ and ∨. We know nothing about →. So we have to give it the most general semantics available and that would be a form of neighbourhood semantics.

Definition 10.8.1 (SNS Semantics) 1. A (binary) selection neighbourhood propositional structure SNS has the form (s, S, R, h), where S is a set of possible worlds, or states, s is a selection function, giving for each Q ⊆ S a subset s(Q) the subset of preferred worlds; and R is the three place neighbourhood relation R ⊆ S × 2^{S} × 2^{S}. We require s to be monotonic decreasing, namely Q_{1} ⊆ Q_{2} ⇒ s(Q_{2}) ⊆ s(Q_{1}).

h is an assignment giving truth values to each atom and world h(t, q) ∈ {0, 1}.

2. The truth value of a formula A at a world t under h is denoted by ∥A∥_{t}^{h} and is defined as follows

2.1. ∥A∥_{t}^{h} = 1 iff h(t, A) = 1 for A atomic.

2.2. ∥A → B∥_{t}^{h} = 1 iff (t, ∥A∥, ∥B||) ∈ R where ∥Q∥ = {t | ∥Q∥_{t}^{h} = 1}.

2.3. ∥A ∧ B∥_{t}^{h} = 1 iff ∥A∥_{t}^{h} = ∥B∥_{t}^{h} = 1

2.4. ∥A ∨ B∥_{t}^{h} = 1 iff ∥A∥_{t}^{h} = 1 or ∥B∥_{t}^{h} = 1.

3. We say A holds in the structure if ∥A∥_{t}^{h} = 1 for all t ∈ s(S).

4. We say A is valid in the semantics iff A holds in all structures

5. We say A |∼ B iff for all structures ∥A∥∩s(∥A∥) ⊆ ∥B∥, |∼ is a notion of consequence between wffs. In the presence of conjunction we can let A_{1}, …, A_{n} |∼ B be A_{1} ∧ … ∧ A_{n} |∼ B.

We shall proceed with the pure implicational fragment or possibly with the {→, ∧} fragment for a while, without disjunciton because disjunction can be problematic and requires special attention. Our interest focusses on implication. We defined a consequence relation A |∼ B between formulas. In order for |∼ to be a logical sysem it must satisfy

Reflexivity:  A |∼ A
Monotonicity: A_{1}, … A_{n} |∼ A
implies A_{1}, …, A_{n}, B |∼ A
Cut:  A_{1}, …, A_{n}, B |∼ A
and B_{1}, …, B_{m} |∼ B
imply A_{1}, …, A_{n}, B_{1}, …, B_{m} |∼ A

Cut and monotonicity do not necessarily hold. Whether or not they hold depends on the semantics. Thus we have the capability of dealing with non-monotonic systems.

For example, to satisfy the Cut Rule we need s to satisfy the following:

Q_{1} ∩ Q_{2} ∩ s(Q_{1} ∩ Q_{2}) ⊆ Q and Q_{3} ∩ s(Q_{3}) ⊆ Q_{2}

imply

Q_{1} ∩ Q_{3} ∩ s(Q_{1} ∩ Q_{3}) ⊆ Q

or better:

Q′ ∩ s(Q′) ⊆ Q and Q′′ ∩ s(Q′′) ⊆ Q′

imply

Q′′ ∩ s(Q′′) ⊆ Q

Remark 10.8.2 (Semantical Conditions) We can offer various natural conditions on our SNS semantics, leading to some well-known interpretations.

1. We can assume that for some S_{0} ⊆ S, we have s(S) = S_{0}, and that, in fact, s(Q) = S_{0} for all Q ⊆ S. Thus our structures now have the form (S_{0}, S, R, h).

Obvious choices for S_{0} are S_{0} = S or S_{0} = {s_{0}} for some fixed s_{0} ∈ S.

This new semantics is neighbourhood semantics without selection function. If S_{0} = S is chosen, then the rule:

{⊢ A ↔ A′, ⊢ B ↔ B′ \atop ⊢ (A → B) ↔ (A′ → B′)}

is valid.

This rule is not valid if we choose S_{0} = {s_{0}}. This choice gives validity in the actual world as opposed to validity in the frame.

2. We can assume that R(t, Q_{1}, Q_{2}) and s(Q) are derived from some first order formulas

ΨR(t, Q_{1}, Q_{2}, P_{1}, …, P_{m}), Ψs(t, Q, P_{1}, …, P_{2})

where P_{i} are some fixed predicates on S. Namely we have:

• R(t, Q_{1}, Q_{2}) iff (S, P_{1}, …, P_{m}) ⊨ ΨR.

• t ∈ s(Q) iff (S, P_{1}, …, P_{m}) ⊨ Ψs.

For example we may have a preferential order ≤ on S and s(Q) is the set of minimal points relative to Q, defined using the order

Ψs(t, Q) = def ∼ ∃s ∈ Q(s ≨ t).

Examples of such semantics is the Kraus Lehman Magidor preferential semantics for non monotonic consequence relations. See the section below on Cumulative Concatenation Logic CCL.

3. We can alternatively assume that R(t, Q_{1}, Q_{2}) is derived from a pointwise ternary relation R(x, y, z) through the definition:

• R(t, Q_{1}, Q_{2}) iff ∀y∀z[y ∈ Q_{1} ∧ R(t, y, z) → z ∈ Q_{2}]. or possibly:

• R(t, Q_{1}, Q_{2}) iff ∀y∃z[y ∈ Q_{1} → R(t, y, z) ∧ z ∈ Q_{2}].

Examples of such systems are Site Logic SL, (see example below) and the merge sematnics of definition 10.8.4 below.

4. We can further assume that R is functional, i.e. ∀t, y∃!zR(t, y, z), we can let z = t + y.

An example of such a system is concatenation logic.

Example 10.8.3 Consider the rule of modus ponens

{⊢ A ⊢ A → B \atop ⊢ B}

in the seamantics with (S_{0}, S, R, h). We need a condition on R which will ensure that:

1. (∀x ∈ S_{0})(∥A∥_{x} = 1)

2. (∀x ∈ S_{0})R(x, ∥A∥, ∥B∥) imply

3. ∀x ∈ S_{0}(∥B∥_{x} = 1).

Obviously we need a condition to ensure that

∀x ∈ S_{0}R(s, Q_{1}, Q_{2})

and

S_{0} ⊆ Q_{1}

imply

S_{0} ⊆ Q_{2}.

For the semantics for which S_{0} = S, we get the condition

(*) ∀xR(x, S, Q) ⇒ S = Q

For the semantics for which S_{0} = {s_{0}},we get the condition

(**) R(s_{0}, Q_{1}, Q_{2}) ∧ s_{0} ∈ Q_{1} ⇒ s_{0} ∈ Q_{2}

If in addition we assume that R is obtained from a pointwise ternary relation R, namely:

R(t, Q_{1}, Q_{2}) iff ∀yz[y ∈ Q_{1} ∧ R(t, y, z) → z ∈ Q_{2}]

then the conditions become:

• ∀x[∀z∀y[R(x, y, z) → z ∈ Q] → S = Q] and

• [∀z∀y[R(s_{0}, y, z) ∧ y ∈ Q_{1} → z ∈ Q_{2}] → Q_{2} = {s_{0}}]

Example 10.8.4 (Site Logic) We introduce the logic SL, Site Logic, see Barwise-Gabbay [11]. The language of SL contains atomic propositions and the binary connective →. The logic is defined semantically through applicative structures of the form (S, W, o, h) where S is a set of states, o ∈ S and W are application functions associating with each t ∈ S a function W (t) : S → 2^{S}. We write W (t, s) ⊆ S, for W (t)(s) or, when convenient, t(s) ⊆ S, h is an assignment, for atomic q and t ∈ S, h(t, q) ∈ {0, 1}.

Let (t_{1}, …, t_{n}) be a sequence. Define W_{(t_{1},...,t_{n})} to be the function W (t_{1}) ∘ W (t_{2}) ∘ … ∘ W (t_{n}) (or t_{1} ∘ t_{2} ∘ … ∘ t_{n}), where “∘” is functional composition defined as follows:

W (t) ∘ W (s)(x) = {y | ∃z[z ∈ W (s)(x) ∧ y ∈ W (t)(z)]}

Given a structure (S, W, o, h), extend h to h^{∗} defined on all formulas as follows: h^{∗}(t, A → B) = 1 iff for all s such that h^{∗}(s, A) = 1 we have that for all y ∈ W (t, s), h^{∗}(y, B) = 1.

We can assume the identity function id is available, with id (t) = {t}.

We let (S, W, o, h) ⊨ A iff def h^{∗}(o, A) = 1.

We say ⊨ A iff A holds in all structures.

Note that in this logic, not even A → A is a theorem. If we insist that o = id, then A → A is a theorem.

The following is an axiom system for SL. Axioms: none. Inference Rules:

{B ⊢ C \atop A → B ⊢ A → C}

Functional application is not necessarily associative. Given t, s and u, we can either consider the set:

t[s(u)] = {y | ∃z ∈ s(u)(y = t(z))}

or the set

[t(s)](u) = {y | ∃z ∈ t(s)(y = z(u))}.

These two sets need not be equal. If we stipulate that they are, then

h^{∗}(id, (A → B) → ((C → A) → (C → B))) = 1.

The relation z ∈ x(y) is a three place relation R(x, y, z) and shows the connection between the site sematnics and the ternary possible worlds semantics.

There is another way of looking at the functional x(y). For each z_{i} ∈ x(y), we can imagine a point binary function +_{i} giving z_{i} = x +_{i} y, so that x(y) = {x +_{i} y | z_{i} ∈ x(y)}. This way we replace the set function by a family of binary functions. In case we have only one such function, ie x(y) = {z} and + is associative, we get concatenation logic, studied in the next section.

Definition 10.8.5 1. A CL structure is a pair (X, h) where X is a set of atomic letters and h is a function assigning to each atomic proposition q and each finite sequence α ∈ X^{∗} a truth value h(α, q) ∈ {0, 1}, where X^{∗} is the set of all finite (or empty) sequences of elements of X. The function h is called an assignment. The function h can be extended to a function h^{∗} on arbitrary formulas via the following recursive equation:

\begin{aligned}(∗) & h^{∗}(α, A → B) = 1 iff \\ & ∀β[h^{∗}(β, A) = 1 and (α = ∅ ∨ β ≠ ∅) ⇒ h^{∗}(α ⊗ β, B) = 1] \end{aligned}

where α ⊗ β is result of concatenating the sequence β to α from the right. + is assumed to be associative, ie

(a ⊗ b) ⊗ c = a ⊗ (b ⊗ c) = (a ⊗ b ⊗ c)

2. We say that a formula A is valid in the semantics if for all structures (X, h), we have h^{∗}(∅, A) = 1.

Theorem 10.8.6 For the Hilbert system CL of 10.1.1 we have ⊢CL A iff A is valid in the CL semantics.

Proof.

1. It is easy to verify that the axioms and rules of CL are valid in the proposed semantics.

2. To show completeness we assume ⊬CL A and produce a counter model.

The construction is given below in 10.8.10 with the key lemma being 10.8.11. ■

We now define the semantics for logics stronger than CL. The logics we consider are linear logic LL, relevance logic R, and intuitionistic logic of 9.1.2 as well as for the logic BR1 of 9.2.8.

Definition 10.8.7 An LL (linear) structure is a pair (X, h), where X is a nonempty set and h is an assignment giving a truth value h(Y, q) ∈ {0, 1} to each atomic q and each multiset Y built out of elements of X. If we assume that h is monotonic in Y, ie

Y_{1} ⊆ Y_{2} ⇒ h(Y_{1}, q) ≥ h(Y_{2}, q)

we get BR1 structures. If we assume the multisets Y are sets we get R relevance structures and if we assume both that we are dealing with subsets Y of X and that h(Y, q) is monotonic, we get intuitionistic structures. In each one of these cases, the function h can be extended to a function h^{∗} on arbitrary formulas by letting

h^{∗}(Y, A → B) = 1 iff ∀Y′[h^{∗}(Y′, A) = 1 ⇒ h^{∗}(Y ∪ Y′, B) = 1]

Theorem 10.8.8 A is a theorem of BR1 (respectively, linear, relevance,intuitionistic logic) iff for any corresponding respective structure (X, h), h^{∗}(∅, A) = 1.

Proof. Soundness can be verified directly. For completeness see the construction below and Lemma 10.8.11. ■

Exercise 10.8.9 What are the corresponding conditions for strict implication and for entailment?

Construction 10.8.10 (Formula Sequences Canonical Structures) Let X be the set of all formulas of the language. Let α be a sequence of formulas, (A_{1}, …, A_{n}). Define a canonical assignment hL for any logic L stronger than CL by:

(∗) hL((A_{1}, …, A_{n}), q) = 1 iff ⊢L A_{1} → (A_{2} → … → (A_{n} → q) …).

We prove the following.

Lemma 10.8.11 For any A,

1. hL((A_{1}, …, A_{n}), A = 1 iff ⊢L A_{1} → (… (A_{n} → A) …)

2. hL(∅, A) = 1 iff ⊢L A.

Proof. By induction on A

1. For A atomic the lemma hold by definition.

2. Assume hL((A_{1}, …, A_{n}), A → B) = 1 and show that ⊢L A_{1} → … (A_{n} → (A → B) …). Take α = (A). Since ⊢L A → A, by the induction hypothesis we get hL(A, A) = 1, and hence

hL((A_{1}, …, A_{n}, A), B) = 1

and hence by the induction hypothesis,

⊢L A_{1} → (A_{1} → … → (A → B) …).

3. Assume ⊢L A_{1} → … → (A_{n} → (A → B) …). We want to show that

hL((A_{1}, …, A_{n}), A → B) = 1.

To show that, let (D_{1}, …, D_{m}) be any point such that

hL((D_{1}, …, D_{m}), A) = 1

and we will show that

hL((A_{1}, …, A_{n}, D_{1}, …, D_{m}), B) = 1.

By the induction hypothesis, it is sufficient to show that in L the following holds: From:

⊢L A_{1} → (A_{1} → … → (A_{n} → (A → B) …))

and

⊢L D_{1} → … (→ (D_{m} → A) …)

it follows that

⊢L A_{1} → … (A_{n} → (D_{1} → … → (D_{m} → B) …))

This follows from Lemma 10.1.13. Thus Lemma 10.8.11 is proved.

■

Lemma 10.8.12 In the canonical structure of the previous construction, we have the following correspondence between axioms and properties..

1. hL((A_{1}, …, A_{n}), B) = hL((A′_{1}, …, A′_{n}), B) provided the multisets {A_{1}, …, A_{n}} and {A′_{1}, …, A′_{n}} are equal.

2. hL((A_{1}, …, A_{n}), B) = 1 implies hL((A_{1}, …, A_{n}, A), B) = 1.

Property (1) corresponds to the commutativity axiom

⊢ (A_{1} → … → (A_{n} → B) …) → (A′_{1} → … → (A′_{n} → B) …)

whenever {A_{i}} = {A′_{i}} as multisets. The relevance axiom

(A → (B → C)) → ((A → B) → (A → C))

allows us to regard the multisets as sets. Similarly, Property (2) corresponds to the axiom ⊢ B → (A → B) which entails

⊢ (A_{1} → … → (A_{n} → B) …) → (A_{1} … → (A_{n} → (A → B) …))

Proof. Easy. ■

We continue and give semantics for the logic W. We need to define several concepts.

Definition 10.8.13 1. Let α, β be two sequences, we say that γ is a right merge of α, β if γ is an order preserving merge of α, β and the last element of γ is the last element of β. We write γ ∈ RMerge (α, β). We can similarly define left merge LMerge(α, β).

We can also define the right merge of any sequence of sequences, α_{1}, …, α_{m} to be any sequence γ which is an order preserving merge of α_{1}, …, α_{m} and which satisfies the condition that the last element of α_{i} precedes the last element of α_{j} whenever i < j.

2. Let (X, h) be a model in the sense of 10.8.1. We can extend h to an h^{†} on arbitrary formulas through the following recursive equation:

(†)h^{†}(α, A → B) = 1 iff
∀β, γ[γ ∈ LMerge (α, β) and
h^{†}(β, A) = 1 imply h^{†}(γ, B) = 1].

We call this semantics the left merge semantics and say a formula A is valid in the semantics if for all models (X, h) we have h^{†}(∅, A) = 1.

3. We can similarly define the notion of merge semantics where in the recursive condition (†) of (2) above, we require that γ ∈ Merge (α, β).

Lemma 10.8.14 The logic W is characterised by the right merge semantics, ie we have for all A, ⊢W A iff A is valid in the right merge semantics.

Proof.

1. Soundness First we show that for any instance of an axiom and any h^{†}, we have h^{†}(∅, A) = 1.

We check the left and right transitivity axioms.

(a) Assume h^{†}(α, A → B) = 1. We want to show h^{†}(α, (C → A) → (C → B)) = 1. Let γ ∈ RMerge (α, β) and assume h^{†}(β, C → A) = 1. We want to show h^{†}(γ, C → B). Let η ∈ RMerge (γ, δ) and assume h^{†}(δ, C) = 1. We want to show h^{†}(η, B) = 1. η is a right merge of α, β, δ and it therefore induces a right merge δ_{1} of β and δ. We therefore deduce that h^{†}(δ_{1}, A) = 1 and since h^{†}(α, A → B) = 1 again we get h^{†}(η, B) = 1 since η is a right merge of α and δ_{1}.

(b) We now assume that we have h^{†}(α, A → B) = 1 and want to show that h^{†}(α, (B → C) → (A → C)) = 1. Let γ ∈ RMerge (α, β) and assume h^{†}(β, B → C) = 1. We want to show h^{†}(γ, A → C) = 1. Let η ∈ RMerge (γ, δ) and assume h^{†}(δ, A) = 1. We must show h^{†}(η, C) = 1. η induces a right merge η_{1} of α and γ. Hence we get h^{†}(η_{1}, B) = 1. Since h^{†}(β, B → C) = 1 and η is a right merge of β and η_{1} we get again that h^{†}(η, C) = 1. Second we show that validity in the right merge semantics is closed under modus ponens. Assume that A and A → B are valid in all models. We show that B is valid in all models. Let (X, h) be any model and consider h^{†}(∅, B). Since h^{†}(∅, A) = 1 and h^{†}(∅, A → B) = 1 and ∅ ∈ RMerge (∅, ∅) we get h^{†}(∅, B) = 1.

2. Completeness Assume ⊬W A, we want to exhibit a model (X, h) with h^{†}(∅, A) = 0. We take the canonical model of sequences of formulas constructed in 10.8.10. We want to prove the analog of lemma 10.8.11 for it. We need to examine case 3 of the proof of 10.8.11, namely that we have

⊢W A_{1} → … → (A_{n} → (A → B) …)

and we want to show that hW((A_{1}, …, A_{n}), A → B) = 1. To prove that we assume that hW((D_{1}, …, D_{m}, D), A) = 1 and want to show that hW((C_{1}, …, C_{m+n}), B) = 1, where (C_{1}, …, C_{m+n}, D) is any right merge of (A_{1}, …, A_{n}) and (D_{1}, …, D_{m}, D). By the induction hypothesis, we know that

⊢W D_{1} → … → (D_{m} → (D → A) …)

and we want to show that

⊢W C_{1} → … → (C_{m+n} → (D → B) …).

However, this is exactly what lemma 10.8.11 proved.

■

Example 10.8.15 The previous semantics suggests a natural semantic definition of a new logic, which we call Merge logic. Its theorems are all wffs valid in the merge semantics. It is an extension of W and is indeed linear logic (which is complete for multiset semantics). It is complete for the following rule:

⊢ A_{1} → … → (A_{n} → (A → B) …)

and

⊢ D_{1} → … (→ (D_{m} → A) …)

imply

⊢ C_{1} → … → (C_{m+n} → B) …

where C_{1}, …, C_{m+n} is a merge of A_{1}, …, A_{n}, D_{1}, …, D_{m}.

We can easily believe that the above rule can be proved from the commutativity axiom

(A → (B → C)) → (B → (A → C))

We thus have two semantics for linear logic, the multiset semantics and the Merge semantics.

Example 10.8.16 We can define the destructive Merge semantics, (the DMerge semantics) to be the following:

When we merge two sequences and in the process of merging the element y is about to be put next to the element x, if x = y we can destroy y and not put it in. Thus the usual merge function allows for the following non-deterministic rules: Merge(at, bs) ≈ abMerge(t, s) Merge(at, bs) ≈ baMerge(t, s)

In particular the usual merge function will give Merge(at, as) = aamerge(t, s)

The DMerge rewrites are the following: DMerge(at, bs) ≈ abDMerge(t, s), a ≠ b. DMerge(at, bs) ≈ baDMerge(t, s), a ≠ b. DMerge(at, as) = aDMerge(t, s).

We can show that the axiom

(A → (A → B)) → (A → B)

is validated in the DMerge semantics. This axiom when added to linear logic characterises relevance logic.

Definition 10.8.17 (Concatenation semantics for CL(⊗)) Let (X, h) be a CL structure as in definition 10.8.1. Define satisfaction in the structure as in (*) of 10.8.1 for the case of A → B and add the following clause (**) for the case of A ⊗ B:

(**) h^{∗}(α, A ⊗ B) = 1 iff ∃β, γ(α = β + γ and h^{∗}(β, A) = 1 and h^{∗}(γ, B) = 1).

Open Problem 10.8.18 (Completeness theorem of CL(⊗) for the concatenation semantics.) For any A, CL(⊗) ⊢ A iff A holds in all CL(⊗) concatenation structures.

Proof. the above theorem is open. However, we can obtain completeness if the following additional axiom is available.

(C → A ⊗ B) → A ⊗ (C → B).

1. Soundness can easily be verified. The additional axioms of CL(⊗) are indeed valid.

2. Completeness is a bit more complicated. The canonical structure of construction in 10.8.10 is not suitable for our purpose. In that canonical structure the nodes are sequences of formulas (A_{1}, …, A_{n}) and the canonical assignment is such that B holds at (A_{1}, …, A_{n}) if and only if ⊢ A_{1} → (… → (A_{n} → B)).

This canonical model works well for → but not for ⊗. Consider the sequences (C → (A ⊗ B), C). Clearly ⊢ ((C → (A ⊗ B)) → (C → (A ⊗ B)) hence, if our induction is to go through, we must have that A ⊗ B gets value 1 at (C → A ⊗ B, C). We must therefore be able to split the sequence into two sequences, one which proves A and one which proves B. This is not possible.

We therefore have to construct a new canonical structure, one which is more finely tuned for our purpose. This is done in construction 10.8.19 below, where completeness of the semantics is proved for a new proof theory Δ ⊢canonical B.

This allows us to conclude the completeness proof. We observe that for the empty database ∅, we have by theorem 10.2.3 that ∅ ⊢_{CL(⊗)} A iff ∅ ⊢canonical A.

Hence if CL(⊗) ⊬ A then h^{∗}(∅, A) = 0. ■

Construction 10.8.19 (Proof sequences canonical structure) 1. A labelled sequence of CL(⊗) formulas τ = (α_{1} : A_{1}, …, α_{r} : A_{r}) is a canonical CL(⊗) proof sequence (with repetitions) from a database Δ_{τ} = {t_{i} : B_{i}}, t_{1} < … < t_{n}, iff each labelled formula in the sequence satisfies one of the following conditions:

(a) A_{i} is a CL(⊗) theorem and α_{i} = ∅.

(b) A_{i} is either atomic or an implication and is obtained from two previous elements α_{j} : A_{k} → A_{i} and α_{k} : A_{k}, j, k < i by modus ponens and α_{i} = α_{j} ⊗ α_{k} and max(α_{j}) < min(α_{k}).

(c) A_{i} is a repetition of A_{j}, j < i, and A_{i} = A_{j}, α_{i} = α_{j}.

(d) A_{i} is of the form A_{j} ⊗ A_{i−1} with j < i and for some m < k < n, we have that (α_{1} : A_{1}, …, α_{j} : A_{j}) is a canonical proof sequence from {t_{1} : B_{1}, …, t_{m} : B_{m}} and (α_{j+1} : A_{j+1}, …, α_{i−1} : A_{i−1}) is a canonical proof sequence from {t_{m+1} : B_{m+1}, …, t_{k} : B_{k}} and α_{i} = α_{j} ⊗ α_{i−1}.

(e) The label t_{i} of (t_{i} : A_{i}) is atomic, corresponding to an assumption, t_{j} : B_{j} and A_{i} = B_{j} and t_{i} = t_{j}.

(f) α_{r} = (t_{1}, …, t_{n})

2. Let Δ = (A_{1}, …, A_{n}) be a sequence of wffs of CL(⊗). We say Δ ⊢canonical B if when labelling Δ as Δ = {t_{1} : A_{1}, …, t_{n} : A_{n}}, t_{1} < … < t_{n}, then there exists a canonical proof sequence with last element (t_{1}, …, t_{n}) : B.

3. Let X be the set of all sequences of the form Δ. Define an assignment h on X by

h(Δ, q) = 1 iff Δ ⊢canonical q.

4. We claim the following holds in the canonical structure (X, h).

(♯) : h^{∗}((A_{1}, …, A_{r}), B) = 1 iff (A_{1}, …, A_{r}) ⊢canonical B

To show (♯) we proceed by induction.

(a) Case of →:

Assume h^{∗}((A_{1}, …, A_{r}), C → D) = 1. Then for any sequence (C_{1}, …, C_{k}) in which C holds, we have that D holds at (A_{1}, …, A_{r}, C_{1}, …, C_{k}). Consider the database Δ′ = {x : C} where x is a new atomic label and the canoncial prof sequence (x : C) based on Δ′. By the induction hypothesis, since for β = x, (x : C, x : C) is also a canonical proof sequence based on Δ′, we have that C holds at (x : C). Hence D holds at (A_{1}, …, A_{n}, C). Therefore by the induction hypothesis (A_{1}, …, A_{n}, C) ⊢canonical D. Thus there exists a label δ such that

(α_{1} : A_{1}, …, α_{r} : A_{r}, x : C, δ : D)

is a canonical proof sequence based on t_{1} : A_{1}, …, t_{n} : A_{n}, x : C t_{1} < … < t_{n} < x. By condition (2f), δ = (t_{1}, …, t_{n}, x). We want to show that there exists a label β such that (α_{1} : A_{1}, …, α_{r} : A_{r}, β : C → D) is a canonical proof sequence based on t_{1} : A_{1}, …, t_{n} : A_{n}. This is obvious, since δ = (t_{1}, …, t_{n}, x), we must have A_{n} = C → D and α_{r} = (t_{1}, …, t_{n}) by the proof discipline defined in (1). Hence (α_{1} : A_{1}, …, α_{r} : A_{r}, α_{r} : C → D) is a canonical proof sequence for C → D. The last element in the sequence is a repetition. Assume now that there exists a β such that (α_{1} : A_{1}, …, α_{r} : A_{r}), A_{r} = C → D) a canonical proof sequence. We want to show that h^{∗}((A_{1}, …, A_{r}), C → D) = 1. By the induction hypothesis we should show that whenever (γ : C_{1}, …, γ_{k} : C_{k}), C_{k} = C is a canonical proof sequence for C from {s_{1} : C_{1}, …, s_{m} : C_{m}} then there exists a canonical proof sequence of D from (A_{1}, …, A_{n}, C_{1}, …, C_{k}). It is easy to find such a sequence.

In fact, (α_{1} : A_{1}, …, α_{r} : A_{r}, γ_{1} : C_{1}, …, γ_{k} : C_{k}, δ : D) is a canonical proof sequence from t_{1} : A_{1}, …, t_{r} : A_{r}, {s_{1} : C_{1}, …, s_{m} : C_{m}} with t_{1} < … < t_{r} < s_{1} < … < s_{m} and with δ = (t_{1}, …, t_{r}, s_{1}, …, s_{m}).

(b) Case of ⊗

Let h^{∗}((A_{1}, …, A_{r}), C⊗D) = 1. Then for some m, C holds at (A_{1}, …, A_{m}) and D holds at (A_{m+1}, …, A_{r}). By the induction hypothesis, there are canonical proof sequences for C from {t_{1} : A_{1}, …, t_{m} : A_{m}} and for D from {t_{m+1} : A_{m+1}, …, t_{r} : A_{r}}. Let τ, τ′ be the two sequences, then

τ ⊗ τ′ ⊗ ((t_{1}, …, t_{r}) : C ⊗ D)

is a canonical proof sequence for C ⊗ D.

Assume there exists a canonical proof sequence

α_{1} : C_{1}, …, α_{k} : C_{k}, (t_{1}, …, t_{r}) : C ⊗ D

for C ⊗ D from {t_{1} : A_{1}, …, t_{r} : A_{r}}. Then by definition, there exists an m and an n such that α : C_{1}, …, α_{n} : C_{n} is a canonical proof sequence for C_{n} = C from t_{1} : A_{1}, …, t_{m} : A_{m} and α_{n+1} : C_{n+1}, …, α_{k} : C_{k} is a canonical proof sequence for D from t_{m+1} : A_{m+1}, …, t_{r} : A_{r}. By the induction hypothesis C holds at (A_{1}, …, A_{m}) and D holds at (A_{m+1}, …, A_{r}).

This concludes the proof of (♯). Thus the construction is concluded.

Definition 10.8.20 (Semantics for LL(¬)) An LL(¬) structure has the form (X, h, X_{⊥}), where (X, h) is an LL structure in the sense of definition 10.8.7 and X_{⊥} ⊆ X^{∗}. Further assume that h satisfies the following for each atomic q.

1. There exists a ⊥ such that for all t, h(t, ⊥) = 1 iff t ∈ X_{⊥}.

2. For ⊥ of (1), and all q, h(t, q) = h(t, ((q → ⊥) → ⊥)).

3. h(t, ¬A) = h(t, A → ⊥), for any A.

Lemma 10.8.21 LL(¬) is sound and complete for the semantics of the previous definition.

Proof. Follows from 10.8.19. ■

Remark 10.8.22 We would like to find a way of constructing structures of the form (X, h, X_{⊥}) of definition 10.8.20, so that the semantics is not defined by stipulation. At the moment what we do is take any structure (X, h′) as in 10.8.10. Choose an arbitrary atom ⊥ and let X_{⊥} = {t | h′(t, ⊥) = 1} and define a new h by letting

h(t, q) = h′(t, (q → ⊥) → ⊥).

Then we know by previous lemmas that (X, h, X_{⊥}) satisfies our requirements. We would like to choose X with some additional internal structure on X and use the additional internal structure to define X_{⊥} and h and be able to prove directly that all the required properties hold.

To give an idea of what our difficulties are, consider the canonical structure of sequences of formulas (A_{1}, …, A_{n}). Clearly ⊥ holds at (A_{1}, …, A_{n}) iff ⊢ A_{1} → (… (A_{n−1} → ¬A_{n}) …).

However this condition uses the proof theory of the langauge and not the pattern list structure of (A_{1}, …, A_{n}). For example ⊥ should hold at (p → ¬q, p, q) but in the canonical model this is just a sequence of formulas. We can bring the pattern out by writing ((p, ¬q), p, q). To be acceptable, X must allow for sequences of sequences, etc. If we follow this approach we will need the families of hereditarily finite sequences, multisets and sets.

Remark 10.8.23 (Semantics for Negation in Relevance Logic) The semantics of the previous remark can be modified to be a sematnics for relevance logic with negation (LL(¬) with the additional axiom (A → (A → B)) → (A → B)). All we need to do is to let X^{∗} be the family of all finite subsets of X. This new semantics for ¬ solves an old problem for the semantics of negation of relevance logic, namely to have a semantical condition on ¬ which at the same time allows for ¬¬A ↔ A and ¬A = defA → ⊥, for a constant ⊥.

10.9 Semi algebraic semantics for resource logics

Definition 10.9.1 (Semi-algebraic semantics for CL(⊗)) 1. Let (T, ≤, ⊗, 0) be a partially ordered set with a binary associative operation ⊗ on it.

We require that it satisfies the conditions:

(a) 0 ⊗ x = x

(b) (x ⊗ y) ⊗ z = x ⊗ (y ⊗ z).

(c) x ≤ x′ and y ≤ y′ ⇒ x ⊗ y ≤ y ⊗ y′.

2. A CL(⊗) semi-algebraic structure has the form (T, ≤, ⊗, 0, h) where (T, ≤, ⊗, 0) is as in (1) and h is an assignment, giving for each t ∈ T and atomic q a truth value. h should satisfy the following condition:

(a) h(t, q) = 1 and t′ ≤ t imply h(t′, q) = 1

3. We define by induction the truth values ∥A∥_{t}^{h} and ∥A∥_{t}^{g},for any formula A and any t ∈ T according to the following clauses

(a) ∥A∥_{t}^{h} = 1 iff h(t, A) = 1, for A atomic.

(b) ∥A → B∥_{t}^{h} = 1 iff for all x ∈ T, if ∥A∥_{x}^{h} = 1 then ∥B∥_{t⊗x}^{h} = 1 ∥A ⊗ B∥_{t}^{h} = 1 iff ∃x, y, t ≤ x ⊗ y and ∥A∥_{x}^{h} = 1 and ∥B∥_{y}^{h} = 1

4. We say that A holds in the structure iff ∥A∥_{0}^{h} = 1.

Lemma 10.9.2 In any structure, for any A, t and t′ we have ∥A∥_{t}^{h} = 1 and t′ ≤ t imply ∥A∥_{t′}^{h} = 1.

Proof. By induction on A.

1. For A atomic this is as required.

2. ∥A ⊗ B∥_{t}^{h} = 1 and t′ ≤ t imply ∥A ⊗ B∥_{t′}^{h} = 1 by definition.

3. Assume ∥A → B∥_{t}^{h} = 1 and assume t′ ≤ t. We want to show ∥A → B∥_{t′}^{h} = 1.

Let x be any point such that ∥A∥_{x}^{h} = 1. We show ∥B∥_{t′⊗x}^{h} = 1. We know that ∥B∥_{t⊗x}^{h} = 1 (since ∥A → B∥_{t}^{h} = 1), and hence by the induction hypotheis, since t′ ⊗ x ≤ t ⊗ x we get ∥B∥_{t′⊗x}^{h} = 1. This concludes the proof of the lemma. ■

Theorem 10.9.3 (Completeness theorem for CL(⊗).) CL(⊗) ⊢ A iff A holds in all semi-algebraic structures.

Proof.

1. Soundness We show that all instances of the axioms hold and that there is a closure under the inference rules. It is easy to verify that the axioms involving → hold. We check the ⊗ axiom. We have to show that for any t, ∥(A ⊗ B) → C∥_{t}^{h} = ∥A → (B → C)∥_{t}^{h}.

Assume ∥A → (B → C)∥_{t}^{h} = 1. Let x be such ∥A ⊗ B∥_{t}^{h} = 1. Thus for some u, v, x ≤ u ⊗ v and ∥A∥_{u}^{h} = 1 and ∥B∥_{v}^{h} = 1. We want to show ∥C∥_{t⊗x}^{h} = 1. From the assumptions we get ∥C∥_{t⊗u⊗v}^{h}. Since t ⊗ x ≤ t ⊗ u ⊗ v, we get ∥C∥_{t⊗x}^{h} = 1. Thus ∥(A ⊗ B) → C∥_{t}^{h} = 1.

Assume ∥(A ⊗ B) → C∥_{t}^{h} = 1. We show ∥A → (B → C)∥_{t}^{h} = 1. Let x, y be such ∥A∥_{x}^{h} = 1 and ∥B∥_{y}^{h} = 1. Then certainly ∥A ⊗ B∥_{x⊗y}^{h} = 1 and hence ∥C∥_{t⊗x⊗y}^{h} = 1. Thus by definition since x, y were arbitrary we get ∥A → (B → C)∥_{t}^{h} = 1.

2. Completeness Let T_{0} be the set of all wffs of CL(⊗). Let T = T_{0} ∪ {∅}. Define

(a) t ≤ t′ iff ⊢ t → t′, for t ≠ ∅.

(b) ∅ ≤ t′ iff t′ = ∅ or ⊢ t′

(c) h(t, q) = 1 iff ⊢ t → q, for t ≠ ∅.

(d) h(∅, q) = 0.

Let ⊗ be the connective ⊗. Clearly ⊢ t → t′, ⊢ s → s′ imply ⊢ (t ⊗ s) → (t′ ⊗ s′).

We thus have a structure. We prove by induction on A that for any t:

∥A∥_{t}^{h} = 1 iff ⊢ t → A, for t ≠ ∅
∥A∥_{∅}^{h} = 1 iff ⊢ A

(a) This certainly holds for atomic A.

(b) Assume ∥A ⊗ B∥_{t}^{h} = 1. Then for some x, y such that ⊢ t → (x ⊗ y) we have by the

induction hypothesis:

⊢ x → A and ⊢ y → B.

Clearly then ⊢ t → (A ⊗ B). If t = ∅ then we have ⊢ x ⊗ y and this implies ⊢ A ⊗ B. Assume ⊢ t → (A ⊗ B). then certainly t ≤ A ⊗ B and by the induction hypothesis ∥A∥_{A}^{h} = 1 and ∥B∥_{B}^{h} = 1.

(c) Assume ∥A → B∥_{t}^{h} = 1. Then for all x, if ⊢ x → A then ⊢ (t ⊗ x) → B. Let x = A. We get ⊢ (t ⊗ A) → B, ie ⊢ t → (A → B). If t ≠ ∅, we get ⊢ A → B. Assume ⊢ t → (A → B). then certainly for any x, if ⊢ x → A then ⊢ t ⊗ x → B. If t = ∅, we are given ⊢ A → B, then certainly if ⊢ x → A then ⊢ x → B.

To complete the proof observe that if ⊬ A then by construction ∥A∥_{∅}^{h} = 0.

■

Remark 10.9.4 First note that in view of the completeness theorem in 10.8.11, we can assume that the semialgebraic semantics has the form (T, ⊗, 0), with ≤ taken as equality. T can be taken as the set of all finite sequences of construction 10.8.10, ⊗ is concatenation and 0 is ∅.

The previous semi-algebraic semantics should be compared with the algebraic semantics given by Girard [Girard, 1987] and Avron [Avron, 1988b, pp. 174–175]. We stress that we are not giving algebraic semantics here but essentially a possible worlds semantics based on algebra. The Kripke semantics for intuitionistic logic also has order ≤ involved and if strong negation and some temporal operators are also present, we get some successor or other functions involved.

The difference comes out clearly when we define the semantics for the modality !

We can take the Kripke like clause

∥!A∥_{t}^{h} = 1 iff ∀x∥A∥_{t⊗x}^{h} = 1

We do not need an algebraic operation for ! See 10.9.9 below. Compare with Avron [Avron, 1988b, pp. 181–182]. The classical conjunction and disjunction can also be given their traditional truth tables, namely

∥A ∧ B∥_{t}^{h} = 1 iff ∥A∥_{t}^{h} = ∥B∥_{t}^{h} = 1

10.9. SEMI ALGEBRAIC SEMANTICS FOR RESOURCE LOGICS 313

and similarly for ∨. The algebraic interpretation with given ∧ and ∨ the lattice theoretic join and meet. The distributive law will hold in our interpretation, however, without the option of not having it. We shall give an even more interesting possible world semantics in the next section.

We can similarly give semi-algebraic semantics for CL(¬) as follows: Definition 10.9.5 1. Let (T, ≤, ⊗, ⊥, 0) be a partially ordered set with a binary associative

operation ⊗ on it and an involution ⊥ on it satisfying the following conditions.

(a) 0 ⊗ x = x

(b) x ⊗ (y ⊗ z) = (x ⊗ y) ⊗ z

(c) x ≤ x′ and y ≤ y′ ⇒ x ⊗ y ≤ x′ ⊗ y′

(d) x^{⊥⊥} = x

(e) x ≤ y ⇒ y^{⊥} ≤ x^{⊥}.

2. CL(¬) structure has the form (T, ≤, ⊗, ⊥, 0, h, g), where (T, ≤, ⊗, ⊥, 0) are as in (1) and h and g are two assignments satisfying:

(a) h(t, q) = 1 and t′ ≤ t imply h(t′, q) = 1

(b) g(t, q) = 1 and t ≤ t′ imply g(t′, q) = 1.

3. We define by induction the truth values ∥A∥_{t}^{h} and ∥A∥_{t}^{g} for any wff A and any t ∈ T as follows:

(a) For q atomic, let

\begin{matrix}∥q∥_{t}^{h} = h(t, q) \\ ∥q∥_{t}^{g} = g(t, q) \end{matrix}

(b) ∥A → B∥_{t}^{h} = 1 iff for al x ∈ T, if ∥A∥_{x}^{h} = 1 then ∥A∥_{t⊗x}^{h} = 1 ∥A → B∥_{t}^{g} = 1 iff ∃x, y(t^{⊥} ≤ x ⊗ y and ∥A∥_{x}^{h} = 1 and ∥B∥_{y^{⊥}}^{g} = 1).

(c) ∥¬A∥_{t}^{h} = ∥A∥_{t^{⊥}}^{g}

∥¬A∥_{t}^{g} = ∥A∥_{t^{⊥}}^{h}.

4. We say A holds in the structure iff ∥A∥_{0}^{h} = 1 . We say A is valid if A holds in all structures. Lemma 10.9.6 For any A, t and t′

1. ∥A∥_{t}^{h} = 1 and t′ ≤ t imply ∥A∥_{t′}^{h} = 1

2. ∥A∥_{t}^{g} = 1 and t ≤ t′ imply ∥A∥_{t′}^{g} = 1. Proof. By induction on A.

1. For atomic A this holds by definition.

2. Let ∥A → B∥_{t}^{h} = 1 and let ∥A∥_{x}^{h} = 1, for x arbitrary. Then ∥B∥_{t⊗x}^{h} = 1. Now assume t′ ≤ t, then t′ ⊗x ≤ t⊗x and hence by the induction hypothesis ∥B∥_{t′⊗x}^{h} = 1. Since x was arbitrary we get ∥A → B∥_{t}^{h} = 1.

3. Let ∥A → B∥_{t}^{g} = 1. Then for some x, y, t^{⊥} ≤ x ⊗ y and ∥A∥_{x}^{h} = 1 and ∥B∥_{y^{⊥}}^{g} = 1. Assume t ≤ t′, then t^{′⊥} ≤ t^{⊥} and so by definition ∥A → B∥_{t′}^{g} = 1 because the same x, y will do.

4. ∥¬A∥_{t}^{h} = 1 and t′ ≤ t imply ∥¬A∥_{t^{⊥}}^{g} = 1 and t^{⊥} ≤ t^{′⊥}, which imply by the induction hypothesis ∥A∥_{t^{′⊥}}^{g}, which implies ∥¬A∥_{t′}^{h} = 1 ∥¬A∥_{t}^{g} = 1 and t ≤ t′ imply ∥A∥_{t^{⊥}}^{h} = 1 and t^{′⊥} ≤ t^{⊥}, which imply by the induction hypothesis ∥A∥_{t^{′⊥}}^{h} = 1, which implies ∥¬A∥_{t′}^{g} = 1.

This completes the proof of the lemma. ■

Theorem 10.9.7 (Completeness theorem of CL(¬) for the semi-algebraic semantics) CL(¬) ⊢ A iff A holds in all semi-algebraic structures.

Proof. Soundness The axioms and rules can be checked to be valid in the semantics. Completeness Let T_{0} be the set of all formulas of the language. Let T = T_{0} ∪ {∅}. Understand ∅ → A to be A and A → ∅ to be ¬A. Let A ≤ B hold iff ⊢ A → B and let A ⊗ B be ¬(A → ¬B), and A^{⊥} be ¬A. Clearly ∅ ⊗ B = ¬(∅ → ¬B) = ¬¬B = B, and from the axioms one can show that (T, ≤, ⊗, ⊥, ∅) is a semi-algebraic structure.

Define

\begin{matrix}h(A, q) = 1 iff ⊢ A → q \\ g(A, q) = 1 iff ⊢ q → A. \end{matrix}

Completeness follows from the following lemma below ■

Lemma 10.9.8 For any B, A

\begin{matrix}∥A∥_{B}^{h} = 1 iff ⊢ B → A \\ ∥A∥_{B}^{g} iff ⊢ A → B. \end{matrix}

Proof. By induction on A.

1. For atomic A this holds by definition.

2. Assume ∥C → D∥_{B}^{h} = 1 then by the induction hypothesis since ∥C∥_{C}^{h} = 1 we have, ∥D∥_{B⊗C}^{h} = 1 therefore ⊢ B ⊗ C → D ie ⊢ B → (C → D).

Assume ⊢ B → (C → D). Then ⊢ (B ⊗ C) → D, then by the induction hypothesis ∥D∥_{B⊗C}^{h} = 1. Let x be such that ∥C∥_{x}^{h} = 1. Then by the induction hypothesis ⊢ x → C. Hence ⊢ (B ⊗ x) → (B ⊗ C) and so ∥D∥_{B⊗x}^{h} = 1.

3. Assume ∥C → D∥_{B}^{g} = 1 then for some x, y ⊢ ¬B → (x ⊗ y) and ∥C∥_{x}^{h} = 1 and ∥D∥_{¬y}^{g} = 1

iff for some x, y

⊢ (x → ¬y) → B
⊢ x → C
⊢ D → ¬y.

We need to show

⊢ (C → D) → B

however the last two assumptions imply

⊢ (C → D) → (x → ¬y)

which yields ⊢ (C → D) → B).

Assume ⊢ (C → D) → B. Let x = C, y = ¬D. Then ¬B ≤ x ⊗ y and ⊢ x → C and ⊢ D → ¬y which yields by the induction hypothesis

∥C → D∥_{B}^{g} = 1.

4. The case of ¬ follows from the rule

⊢ A → ¬B iff ⊢ B → ¬A.
■

Theorem 10.9.9 Let CL(⊗,!) be the system with both ⊗ and !, with both groups of axioms for ⊗ and for !, as given in 10.2.1. Then CL(⊗,!) is complete for the CL(⊗) semi-algebraic structures, with the added semantic condition for ! given below

∥!A∥_{t}^{h} = 1 iff for all x, ∥A∥_{t⊗x}^{h} = 1.

Proof. One can verify that lemma 10.9.2 still holds. Soundness Easy to check the axioms for ! are valid. Completeness Construct the canonical model as in the completeness proof of CL(⊗). We show that ∥A∥_{t}^{h} = 1 iff ⊢ t → A, for any t, A by induction. We have to verify the case of !, as follows:

Assume ⊢ t →!A

We want to show ∥!A∥_{t}^{h} = 1.

We have to show ∥A∥_{t⊗x}^{h} = 1 for any x. Thus by the induction hypothesis ⊢ t ⊗ x → A or ⊢ t → (x → A).

However, ⊢!A → A and ⊢!A → (x →!A) hence ⊢!A → (x → A) and since ⊢ t →!A we get ⊢ t → (x → A).

Assume ∥!A∥_{t}^{h} = 1. Hence for all x, ⊢ t → (x → A). Especially for atomic x not appearing in t or A. We thus conclude ⊢ t →!A. This completes the proof. ■

10.10 Metalevel features via connectives

This section describes how one can implement metalevel features of a logical system via special additional connectives. Consider the resource logic BR1 of 9.2.8. The system is based on → only. Its basic characterising feature as a resource logic is that assumptions cannot be used in proofs more than once. The inference rule is modus ponens. Its labelling system proposes a discipline for propagating the labels through modus ponens. Let us write the two rules:

Modus Ponens

\begin{matrix}α : A \\ β : A → B \\ β ⊗ α : B \end{matrix}

→ Introduction

To show t : A → B, assume x : A and show t ⊗ x : B.

Let us now adopt the policy that a wff is labelled (named) by other wffs. We want to do the labelling from within the logic itself. To achieve this we add a binary connective ⊗ to the language and understand (A_{1} ⊗ A_{2}) as the formula indicating that the label of A_{2} is A_{1}.

According to this reading the two rules above become:

Modus Ponens for ⊗

\begin{matrix}α ⊗ A \\ β ⊗ (A → B) \\ (β ⊗ α) ⊗ B \end{matrix}

→ Introduction for ⊗

[t ⊗ (A → B)] ↔ [(A ⊗ A) → ((t ⊗ A) ⊗ B)]

Here we used A to label itself.

We can define a Hilbert type logic L_{⊗,→} with the above connectives and the above two rules taken as axioms with modus ponens as the inference rule. This logic has the same standing as any other logic (eg intuitionistic logic with → and ∨). The difference is in the axioms we adopt for ⊗. It is hoped that for any labelling discipline for a logic LDS with →, there exist the corresponding axioms for the logic L with {→, ⊗} and a translation T such that the following theorem holds for all A:

LDS ⊢ A iff L ⊢ TA

We should make it clear that → of L is classical or intuitionistic. It is not the same as the → of the LDS, which could be relevant, linear or any other weak system. The weakening effect on the (classical or intuitionistic) → of L is achieved via the presence of the ⊗ connective. Axioms on the ⊗ serve to fine tune the restrictions on the → of L.

To see an example, consider the formula A → A. We know A → A is a theorem of any LDS system. We also know that in LDS a theorem must be derived with label ∅. Let us allow the constant ∅ in the language L_{⊗,→}, and extend L with the axioms

((∅ ⊗ A) ⊗ B) ↔ ((A ⊗ ∅) ⊗ B) ↔ (A ⊗ B)

Define the mapping T from LDS into L by

TA = (∅ ⊗ A)

This means that we expect that

LDS ⊢ A iff L ⊢ ∅ ⊗ A

We therefore try:

Example 10.10.1 Let us check whether L ⊢ (∅ ⊗ (A → A)). The proof is as follows:

1. (A ⊗ A) → (A ⊗ A)

(Can be assumed as an axiom of L.)

2. (A ⊗ A) → ((∅ ⊗ A) ⊗ A)

From (1) and the fact that ⊢ ((∅ ⊗ A) ⊗ A) ↔ (∅ ⊗ A)

3. (∅ ⊗ (A → A))

By the rule → Introduction for ⊗.

Example 10.10.2 Let us check the provability of A → (B → A). We will try to find out what axioms to add to L to allow for a successful derivation of ∅ ⊗ (A → (B → A)).

Try the axiom L ⊢ (A ⊗ B) → (A ⊗ X) ⊗ B

1. (A ⊗ A) → (A ⊗ B) ⊗ A axiom

2. (A ⊗ A) → [(B ⊗ B) → (A ⊗ B) ⊗ A] from 1

3. A ⊗ A) → (A ⊗ (B → A)) from 2

4. ∅ ⊗ (A → (B → A)) from 3.

Lemma 10.10.3

t ⊗ (A_{1} → … → (A_{n} → B) …)

is equivalent in L to:

= (⋀_{i=1}^{n}(A_{i} ⊗ A_{i}) → (… (t ⊗ A_{1}) ⊗ … ⊗ A_{n}) ⊗ B)

Proof. By induction on n. Case n = 1

t ⊗ (A → B) ↔ [A ⊗ A → (t ⊗ A) ⊗ B]

by an axiom Case n ⊗ 1

t ⊗ (A_{1} → … → (A_{n} → (A_{n⊗1} → B) …)

↔ ⋀_{i=1}^{n}(A_{i} ⊗ A_{i}) → (… (t ⊗ A_{1}) ⊗ … ⊗ A_{n}) ⊗ (A_{n} → B))

Let y = (… (t ⊗ A_{1}) ⊗ … ⊗ A_{n}) then

y ⊗ (A_{n} → B) ↔ (A_{n} ⊗ A_{n}) → ((y ⊗ A_{n}) ⊗ B)

hence we get by substitution that the original formula is equivalent to

⋀_{i=1}^{n}(A_{i} ⊗ A_{i}) → ((y ⊗ A_{n}) ⊗ B)

which is the desired result. ■

Example 10.10.4 Let us check the axiom (A → B) → ((C → A) → (C → B)). Consider:

∅ ⊗ ((A → B) → ((C → A) → (C → B))

by the lemma is equivalent in L to:

((A → B) ⊗ (A → B)) ∧ ((C → A) ⊗ (C → A)) ∧ (C ⊗ C) → (((A → B) ⊗ C → A)) ⊗ C) ⊗ B

Let us prove this formula in L. Assume the antecedent and show the consquent. We thus assume

1. (A → B) ⊗ (A → B)

2. (C → A) ⊗ (C → A)

3. C ⊗ C

and want to prove

(((A → B) ⊗ (C → A)) ⊗ C) ⊗ B

4. 2 is equivalent to:

(C ⊗ C) → ((C → A) ⊗ C) ⊗ A

5. From 3 and 4 we get:

((C → A) ⊗ C) ⊗ A

6. From 1 and 5, by modus ponens for ⊗ we get ((A → B) ⊗ ((C → A) ⊗ C)) ⊗ B To obtain the desired result, we need an axiom of associativity, namely:

((A ⊗ B) ⊗ C) ⊗ D ↔ (A ⊗ (B ⊗ C)) ⊗ D

Example 10.10.5 Try the axiom (A → (B → C)) → (B → (A → C)). We claim the correspoiding ⊗ axiom for it is a form of semi-commutativity (mixed with associativity), namely:

((A ⊗ B) ⊗ C) ⊗ D ↔ ((A ⊗ C) ⊗ B) ⊗ D.

We want to show:

L ⊢ ∅ ⊗ [(A → (B → C)) → (B → (A → C))]

By Lemma 10.10.3 it is sufficient to show:

L ⊢ ((A → (B → C)) ⊗ (A → (B → C)) ∧ (B ⊗ B) ∧ (A ⊗ A) →
(((A → (B → C)) ⊗ B) ⊗ A) ⊗ C.

We assume the antecedent and show the consequent:

We also have that:

(A → (B → C)) ⊗ (A → (B → C))

is equivalent to:

(A ⊗ A) ∧ (B ⊗ B) → (((A → (B → C)) ⊗ A) ⊗ B) ⊗ C.

Since (A ⊗ A) ∧ (B ⊗ B) are part of the antecedent which we have assumed, we get the following:

(((A → (B → C)) ⊗ A) ⊗ B) ⊗ C.

By semi-commutativity we get the desired consequent:

Example 10.10.6 Consider

(A → (A → B)) → (A → B)

Let us check what is needed to have

L ⊢ ∅ ⊗ ((A → (A → B)) → (A → B))

To show that it is sufficient to assume

((A → (A → B)) ⊗ (A → (A → B))) ∧ (A ⊗ A)

and prove in L:

((A → (A → B)) ⊗ A) ⊗ B

However,

(A → (A → B)) ⊗ (A → (A → B))

is equivalent to:

(A ⊗ A) ∧ (A ⊗ A) → (((A → (A → B)) ⊗ A) ⊗ A) ⊗ B

We can prove the consequent provided we have the axiom

((A ⊗ A) ⊗ X) ↔ (A ⊗ X)

To illustrate the correspondence between LDS and the Hilbert system with teh additional ⊗, we formulate and prove the following theorem:

Theorem 10.10.7 Consider the resource concatenation logic CL with the axioms

1. A → A 10.10. METALEVEL FEATURES VIA CONNECTIVES 319

2. (A → B) → ((C → A) → (C → B)) and the rules of modus ponens and right transitivity, namely

\frac{A, A → B}{B}

and

\frac{A → B}{(B → C) → (A → C)}

Consider the logic L1 in the language of ⊗, ∅, and → and the following axioms for ⊗, besides all classical tautologies for →:

1. ((∅ ⊗ A) ⊗ B) ↔ (A ⊗ B) ↔ ((A ⊗ ∅) ⊗ B)

2. (A ⊗ D) ∧ (B ⊗ (D → C)) → ((B ⊗ A) ⊗ C)

3. (t ⊗ (A → B)) ↔ ((A ⊗ A) → ((t ⊗ A) ⊗ B))

4. (((A ⊗ B) ⊗ C) ⊗ D) ↔ ((A ⊗ (B ⊗ C)) ⊗ D) Then the following holds for any wff A.

CL ⊢ A iff L_{1} ⊢ (∅ ⊗ A).

Proof.

1. Assume CL ⊢ A. We want to show L_{1} ⊢ ∅ ⊗ A we follow the ususal method of showing that the translations of the axioms and rules of CL are all provable in L_{1}. The axioms (1) and (2) were checked in examples 10.10.1 and 10.10.4. Let us check the rule of modus ponens: We assume

\begin{matrix}L_{1} ⊢ ∅ ⊗ A \\ L_{1} ⊢ ∅ ⊗ (A → B) \end{matrix}

therefore by axiom (2) we get

L_{1} ⊢ (∅ ⊗ ∅) ⊗ B

which is the desired result since ∅ ⊗ ∅ ↔ ∅. We now check the right transitivity rule. We assume

(a) L_{1} ⊢ ∅ ⊗ (A → B) and show

(b) L_{1} ⊢ ∅ ⊗ ((B → C) → (A → C)).

(1) is equivalent to

L_{1} ⊢ (A ⊗ A) → (A ⊗ B)

and (2) is equivalent to

L_{1} ⊢ ((B → C) ⊗ (B → C)) → ((B → C) ⊗ (A → C))

which is equivalent to L_{1} ⊢ ((B → C) ⊗ (B → C)) ∧ (A ⊗ A) → ((B → C) ⊗ A) ⊗ C

We now show the last formula. Assume 2.1. (B → C) ⊗ (B → C)

2.2. A ⊗ A show

2.3. ((B → C) ⊗ A) ⊗ C

From (1) we get

2.4. A ⊗ B

From axiom (2) and (2.1) and (2.4) we get the desired (2.3).

2. Assume now that CL ⊬ A, we want to show that L_{1} ⊬ ∅ ⊗ A. We use the semantical interpretation of CL, given in definition 10.8.5 and theorem 10.8.6. Since CL ⊬ A, there exists a model (X, h), such that h(∅, A) = 0.

We use this model to define an assignment g on the language L_{1} such that all instances of axioms of L_{1} get value 1, while the wff ∅ ⊗ A gets value 0. The language L_{1} has the classical connectives and the additional connective ⊗ and ∅. ⊗ is not truth functional and so even if we know the truth values of A and B, we do not know the value of A ⊗ B. We can regard anything of the form A ⊗ B as atomic and give it values arbitrarily. Of course if we do that we might not get all instances of the axioms of L_{1} getting value 1. We thus need a way of assigning vlaues to all wffs of the form A ⊗ B in such a way that all axioms of L_{1} get value 1. We can use h for that purpose, except that h relates only to a fragment of the language of L_{1} and not to all of it. This is not surprising because the ⊗ language is a metalanguage and can say a lot more. At this stage we have to consider the sublangauge L^{∗} of the langauge of {⊗, ∅, →} defined as the set of all formulas of the form (A_{1} ⊗ … ⊗ A_{n}) ⊗ B, where A_{i} is a wff without ⊗ or ∅. Note that since we have associativity, this is a good definition. For this fragment L^{∗}, we can define for any B, g((A_{1} ⊗ … ⊗ A_{n}) ⊗ B) = 1 iff h((A_{1}, …, A_{n}), B) = 1 in the model (X, h). By the completeness theorem, we know that for any B, h((A_{1}, …, A_{n}), B) = 1 iff CL ⊢ A_{1} → (… → (A_{n} → B) …).

We now have to verify that all axioms of L_{1} get value 1. To do that we use the translation into CL, as follows:

(a) g((∅ ⊗ A) ⊗ B) = h(A, B) = g(A ⊗ B).

(b) g((A⊗D)∧(B ⊗(D → C)) → ((B ⊗A)⊗C)) = 1 iff h(A, D) = 1 and h(B, D → C) = 1 imply h((B, A), C) = 1 iff ⊢CL A → D and ⊢CL B → (D → C) imply ⊢CL B → (A → C) which indeed holds by lemma 10.1.13.

(c) g(t ⊗ (A → B)) = h(t, A → B) g(A ⊗ A) = h(A, A) = 1 g((t ⊗ A) ⊗ B) = h((t, A), B) we thus get that g(t ⊗ (A → B) = 1 iff ⊢CL t → (A → B) iff g(t ⊗ A, B) = 1 iff g(A ⊗ A → (t ⊗ A) ⊗ B) = 1.

(d) g(((A ⊗ B) ⊗ C ⊗ D) = g((A ⊗ (B ⊗ C)) ⊗ D)

by definition, as we relied on associativity and defined g((A_{1} ⊗ … ⊗ A_{n}) ⊗ B).

We can now prove the other direction of our theorem. If CL ⊬ A, then in the canonical model (X, h), h(∅, A) = 0 and hence g(∅ ⊗ A) = 0 and hence L_{1} ⊬ ∅ ⊗ A.

The assignment g in the proof of 10.9.7 was defined for only the fragment L^{∗} of the language L_{1} with ⊗. It would be nice to be able to extend it to the whole language. The extension also depends on what meaning we want to give to the other wffs, the ones not in the fragment, eg formulas like (A ⊗ B) → C and A → (B ⊗ C). Such an extension is given in example 10.10.10 below.

The best way to approach the problem is to consider the model (⊗(X, h) we have been dealing with. This model gives values to formulas with → only. If we can give a semantic condition to

h((A_{1}, …, A_{n}), B ⊗ C),

then ⊗ will have a meaning. The only role for B ⊗ C we have so far is in the context of (B ⊗ C) ⊗ D, were we read it as (B ⊗ C) is the label of D and semantically translate it into the model (X, h) as h((B, C), D) = 1.

Thus B ⊗ C is supposed to be a label. We therefore try the following definition.

■

Definition 10.10.8 h((A_{1}, …, A_{n}), B⊗C) = 1 iff def for some 1 ≤ k ≤ n, h((A_{1}, …, A_{k}), B) = 1 and h((A_{k+1}, …, A_{n}), C) = 1.

We thus read B ⊗ C as saying “I am the local label (A_{1}, …, A_{n})”.

Thus the axiom for ⊗ would be the following (written informally in a “metalanguage”):

t ⊗ (A ⊗ B) ⇔ ∃s_{1}, s_{2}[s_{1} ⊗ s_{2} = t and (s_{1} ⊗ A) and (s_{2} ⊗ B)]

Lemma 10.10.9 For ⊗ defined semantically:

h(t, A ⊗ B) = 1 iff def ∃x∃y[x ⊗ y = t and h(x, A) = 1 and h(y, B) = 1]

The following holds:

1. h(∅, A ⊗ B) → C) = h(∅, A → (B → C))

2. h(∅, A → (B → A ⊗ B)) = 1

Proof.

1. To show (1), we proceed as follows: h(∅, (A ⊗ B) → C) = 1 iff ∀x[h(x, A ⊗ B) = 1 ⇒ h(x, C) = 1 iff ∀x[∃x_{1}x_{2}(h(x_{1}, A) = 1 and h(x_{2}, B) = 1 and x = x_{1} ⊗ x_{2}) ⇒ h(x, C) = 1] iff ∀x∀x_{1}∀x_{2}[h(x_{1}, A) = 1 and h(x_{2}, B) = 1 and x = x_{1} ⊗ x_{2} ⇒ h(x, C) = 1] iff ∀x_{1}x_{2}[h(x_{1}, A) = 1 ⇒ [h(x_{2}, B) = 1 ⇒ h(x_{1} ⊗ x_{2}, C) = 1]] iff ∀x_{1}[h(x_{1}, A) = 1 ⇒ ∀x_{2}[h(x_{2}, B) = 1 ⇒ h(x_{2} ⊗ x_{2}, C) = 1]] iff ∀x_{1}[h(x_{1}, A) = 1 ⇒ h(x_{1}, B → C) = 1] iff h(∅, A → (B → C)) = 1

2. To show (2) we check h(∅, A → (B → (A ⊗ B))) = 1 iff ∀x∀y[h(x, A) = 1 and h(y, B) = 1 ⇒ h(x ⊗ y, A ⊗ B) = 1 iff ∃x∃y[h(x, A) = 1 and h(y, B) = 1 ⇒ h(x ⊗ y, A ⊗ B) = 1 iff truth because of the definition of h(t, A ⊗ B).

■

We are now in a position to semantically define a logic CL⊗, which is the extension of the logic CL to the language with → and ⊗. The truth table for ⊗ is given as in the preceding lemma. The theorems of CL⊗ are all wffs A such that for all models (X, h), h(∅, A) = 1. Clearly CL⊗ is a conservative extension of CL, since they are both complete for the same semantics.

Example 10.10.10 We are now ready to extend the assignment g of the metalanguage L_{{∅,⊗,→}} from the fragment suggested in the proof of 10.9.7 to the entire language.

g^{∗}(A ⊗ B) = 1 iff CL⊗ ⊢ A → B.

For wffs inthe fragement, namely of the form (A_{1} ⊗ … ⊗ A_{n}) ⊗ B, where A_{i}, B contain no ⊗, we have CL⊗ ⊢ (A_{1} ⊗ … ⊗ A_{n}) → B iff CL⊗ ⊢ A_{1} → … (A_{n} → B) …) iff h((A_{1}, …, A_{n}), B) = 1 iff g(A ⊗ B) = 1.

We still do not have a Hilbert axiomatisation for CL⊗. This is our next task.

Box M_{2} Box M_{1}

Figure 10.13:

1 ∅ : (1)
2 ∅ : (2)
3 t_{1} : C_{1}  Assumption
4 r_{1} : E_{1}  MP from reiteration
5 t_{2} : C_{2}  Assumption
6 r_{2} : E_{2}  MP from reiteration
7 t_{m+n} : C_{m_{+}n}  Assumption
8 r_{m+n} : E_{m+n}  MP
9  Show B
10 t : D  Assumption
11 d_{1} … d_{m} : D → A  Reiteration
12 a_{1} … a_{n} : A → B  Reiteration
13 d_{2} … d_{m_{t}} : A
14 a_{1} … a_{n}d_{1} … d_{m_{t}} : B

15

16

17

18

19

1 t_{1} : A_{1}  Assumption
2 t_{1} : A_{2} → (A → B)  MP
3 t_{2} : D_{1}  Assumption
4 t_{2} : D_{2} → (D_{3} → (D → A) …)
5 t_{3} : D_{2}  Assumption
6 t_{2}t_{3} : D_{3} → (D → A)
7 Assumption
8 t_{2}t_{3} : D_{3} → (D → A)
9 t_{4} : A_{2}  Assumption
10 t_{1}t_{4} : A → B
11 t_{5} : D_{3}  Assumption
12 t_{2}t_{3}t_{5} : D → A
13 t : D  Assumption
14 t_{2}t_{3}t_{5}t : A
15 t_{1}t_{4}t_{2}t_{3}t_{5}t : B

16

17

18

19

20

21

Figure 10.15:

t_{1} : A t_{1} : Y t_{2} : X_{2} → (A → B) t_{2} : X_{1} premiss which is not allowed here and use it as a minor We have to reiterate A t_{2}t_{3} : (A → B) t_{3} : X_{2}

1  show B → A
2 a : A  Assumption
3 B → A  from Box
4  show A
5 b : B  Assumption
6 a : A  reiteration

7

Figure 10.17:

1  show X → (A → B)
2 a : A → (X → B)  Assumption
3 a : X → (A → B)  from Box
4  show A → B
5 b : X  Assumption
6 ab : A → B  from Box
7  Show B
8 c : A  Assumption
9 b : X  reiteration
10 a : A → (X → B)  reiteration
11 ac : X → B  MP
12 acb : B  MP
exit 13 ab : A → B
exit 14 a : X → (A → B)
exit 15 ∅ : (A → (X → B)) → (X → (A → B))

1  show (A → B) → (A → B)
2 a : B → A  Assumption
3 a : (A → B) → (A → B)  from Box
4  show A → B
5 b : A → B  Assumption
6 ab : A → B  from Box
7  show B
8 c : A  Assumption
9 b : A → B  reiteration
10 bc : B  MP
11 B → A cannot be reiterated
12 because in H, A ⊬ B → A
exit 13 b : A → B
exit 14 ∅ : (A → B) → (A → B)

Axioms  Condition

W  as in theorem 10.3.4

(4)  allow the use of assumptions more than once.

(Replace MP1 by MP)

C(axiom 8)  allow Restart

6β  allow for a box for β → B of the form
Show B

a : β Assumption

α : B

exit β → B even though the label a is not in α provided β satisfies the corresponding condition of 6β

7γ  allow to reiterate a γ provided it satisfies condition 7γ

4m,n  use any assumption at most k times (ie MPk)
for m + n ≤k  α : A
together with \frac{β : A → B}{α ∪ β : B}

5k,1 provided α ∪ β does not contain any X, …, X, k times, α, β multisets

Figure 10.20:

1  Show B
2 a : C  assumption
3 t_{2}s_{3} : C → B
4 t_{2}s_{3}a : B
exit  5 t_{2}s_{3} : C → B

328 CHAPTER 10. PROOF THEORY FOR RESOURCE LOGICS

[figure: Δ ⊢ st : B; τ_{2}; τ_{1}] Figure 10.22: Δ ⊢ t − a : A → B τ Figure 10.23:

Many Valued Logics

11.1 Introduction

This Chapter shows that many valued logics fit comfortably within the Labelled Deductive Systems framework. The basic idea of LDS is that formulas come labelled in the form t : A. A database is a set of such labelled formulas and the basic consequence relation has the form:

{t_{i} : A_{i}} ⊢ s : B

In the implicational fragment, to show

t : A → B

we open a box, assume x : A, prove using our metabox discipline y : B and we are able to exit with the conclusion t : A → B provided t, x, y satisfy a suitable relationship ψ characteristic to the logic in question.

If we write the box condition in a semi formalised form, it would be the following:

A → B can be derived with label t iff for all labels x ranging over a certain set L_{1} there exists a label y such that x : A can prove y : B and t, x, y satisfy the required conditions.

In symbols

t : A → B iff ∀x ∈ L_{i}∃y(x : A “proves” y : B and φ(t, x, y) holds)

What is important here is the combination of quantifiers “∀x∃y”.

In the case of resource logics ∀x ranged over new atomic labels and y was requried to satisfy y = t + x. In practice we skolemised and chose an arbitrary label x for x : A and showed t + x : B.

Thus we can see now the familiar form from previous chapters:

In modal logic we had the same universal quantifier on labels. To show t : □A we show s : A for every s such that tRs. The precise definition depends on the exact labelling discipline. For

1 x : A  Assumption
2 ⋮  x a new label
3 ⋮
4 ⋮
5 tx : B
exit  6 t : A → B

Figure 11.1: modal K to show □A in the middle of a proof one could take an arbitrary label x, assume tRx, open a box, bring into the box the appropriate set of reiterations, namely {x : B | t : □B has already been proved}, and show x : A.

It turns out that the quantifier combination for showing A → B in many valued logics is exactly the same as in the case of resource or modal logics. In many valued logics atomic formulas get truth values from some set. The more complex formulas get their value according to a prescribed truth table. Some values are considered designated and the theorems of logic are those formulas which get designated values under all assignments of values to the atoms.

Example 11.1.1 (Łukasiewicz Infinite Valued Logic Ł_{∞}) The truth values are all rationals (or equivalently one can take all reals) in the interval [0, 1]. 1 is the designated value. The truth table for ¬ and → are as follows:

\begin{matrix}A & B & ¬A & A → B \\ x & y & 1 − x & min(1, 1 − x + y) \end{matrix}

Łukasiewicz n + 1 valued logic Łn has values \{0, \frac{1}{n}, \frac{2}{n}, …, 1\} with the same truth table as the infinte case.

The following formulas are many valued tautologies in the logic Ł_{∞} (ie they get the value 1 under all assignments of values to the atoms).

\begin{matrix}L_{0} & A → A \\ L_{1} & A → (B → A) \\ L_{2.1} & (A → B) → ((B → C) → (A → C)) \\ L_{2.2} & (A → B) → ((C → A) → (C → B)) \\ L_{3} & (A → (B → C) → (B → (A → C)) \\ L_{4} & ((A → B) → B) → ((B → A) → A) \\ L_{5} & ((A → B) → (B → A)) → (B → A) \\ L_{6} & (¬B → ¬A) → (A → B) \end{matrix}

The rule of modus ponens is also valid.

If A is a tautology and A → B ia a tautology, then B is a tautology.

Further new tautologies arise when we look at Łukasiewicz n-valued logics. For example:

M_{2} : ((((A → B) → A) → A) → (B → C)) → (B → C)

is a tautology of Ł_{2}.

It is known that axioms L_{0} − L_{6} together with modus ponens axiomatise all the tautologies of Ł_{∞} (Rose-Rosser 1957). In fact, the subset of {L_{1}, L_{2.1}, L_{4}, L_{6}} proves the other axioms. Axiom M_{2} was put forward by A Avron 88 as an addition to the axioms of Ł_{∞} to axiomatise Ł_{2}. Ł_{2} was originally axiomatised by M Wajsberg 1931. A Rose 1956a put foward the following axiom R_{n} to be added to the axioms of Ł_{∞} to axiomatise Ł_{n}.

R_{n} : ((A^{n} → B) → A) → A

The above example will be used to show how may valued logics can be perceived as a labelled deductive system. The label t of t : A → B will be the truth value of A → B.

Thus we want to have: Show t : A → B if box

We must therefore propose a proof discipline for the box.

The idea of regarding truth values as labels is similar to an idea of Scott 1974, also occurring to Urquhart 1974, where truth values were converted into valuations. Our approach is a bit different as will be seen from the sequel.

We are now faced with the problem of how to characterise many valued logics in general and Łukasiewicz Ł_{∞} and Łn in particular as a metabox system. We have the advantage that the set of tautologies is already axiomatised and we have a (many valued) semantics for the logic which we

1 x : A  Assumption
2 ⋮
3 proof steps
4 ⋮
5 y : B  provided a condition essentially saying
6  t = min(1, 1 − x + y)
exit  7 t : A → B

Figure 11.2:

can use. The disadvantage is that our labelling systems for → are all based on some form of the dedution theorem (to show t : A → B assume x : A and prove y : B) while in Łukasiewicz logics the deduction theorem is known to fail!

My answer is that the deduction theorem does not fail. In fact everything fits beautifuly. We will give the intuitive explanations in this section and give the mathematics in the next section.

Let us observe the axiom system for the implicational fragment of Ł_{∞} in 11.1.1. Axioms L_{0}−L_{3} are nothing but the axioms of the resource logic BR1. Recall from an earlier Chapter that its labelling discipline is known:

1. Labels are multisets. Assumptions get different atomic labels.

2. Modus ponens propagates labels as follows:

α : A β : A → B

α ∪ β : B provided α ∩ β = ∅

The condition α ∩ β = ∅ stops one from using the same assumption more than once.

3. To show γ : A → B assume x : A, x a new label and show β : B provided γ = β − {x}. We do not require x ∈ β, ie there is no need to use the assumption A.

Another way of looking at BR1 is that it is like linear logic, where assumptions can be used at most once but where we do not require that all assumptions be used.

Further recall that the system BR1 is complete for the semantics of the form (S, h) where S is a multiset and h is an assignment giving truth values h(X, q) ∈ {0, 1} for atoms q and multisets X ⊆ S. We assume X ⊆ Y → h(X, q) ≤ h(Y, q). The truth condition for → is:

h(X, A → B) = 1 iff ∀Y (h(Y, A)) = 1 → h(X ∪ Y, B) = 1

we have BR1 ⊢ A iff ∀h(h(∅, A) = 1).

To get the implicational Łukasiewicz logic Ł_{∞} we need to add to BR1 axioms L_{4} and L_{5}. In fact, Rose has shown that the axiom R_{n} : ((A^{n} → B) → A) → A the implicational fragment of Łn−1 when added to L_{0}, …, L_{5}.

This was proved by Rose, [Rose, 1956b, Rose, 1956a]. It was not known at the time whether L_{5} is redundant and whether it can be proved from the other axioms in the pure implicational fragment (ie without the use of L_{6}). J Barkley Rosser [Barkley-Rosser, 1960] reports a communication from A R Turquette that L_{5} is independent. I have not seen a published proof, however, the following example shows that L_{5} does not follow from the other implicational axioms even in Łukasiewicz 3 valued logic.

Example 11.1.2 Consider the following matrix for → with values {1, X, a, b} with 1 designated as follows (see figure 11.3):

[figure: b; a; X; 1] Figure 11.3:

Table for →:

A  B  A → B
1  1  1
X  1  1
a  1  1
b  1  1
1  X  X
X  X  1
a  X  1
b  X  1
1  a  a
X  a  X
a  a  1
b  a  X
1  b  b
X  b  X
a  b  X
b  b  1

Axioms L_{0} to L_{4} and R_{n} always get value 1 in this table. Also if A always gets 1 and A → B always gets value 1 so does B.

Axiom L_{5} gets value X if A is assigned a and B is assigned b.

These matrices, called non-linear MV-matrices, are studies in 11.3 below:

We thus have to figure out the metabox discipline conditions which correspond to axioms L_{5} and L_{6}. These are not difficult to find. The formula (A → B) → B corresponds in classical logic to disjunction A ∨ B. Thus axiom L_{5} says (A ∨ B) → (B ∨ A). Suppose we treat (A → B) → B as disjunction in our metabox discipline, would that be equivalent to adding axiom L_{5} to the corresponding Hilbert system?

The answer is yes.

The rule for disjunction is well known.

1. A → C 2. B → C

3. \frac{A ∨ B}{C}

Thus our metabox rule would be:

To show α : C: we show (for some wisely chosen A and B) the following:

1. α_{1} : A → C

2. α_{2} : A → C

3. α_{3} : (A → B) → B (or α_{3} : (B → A) → A)

and conclude α : C provided

α = α_{1} ∪ α_{2} ∪ α_{3}.

A more practical form of the rule is: To show α : A → B Show instead both α_{1} : A → (A → B) and α_{2} : (A → B) → B provided α = α_{1} ∪ α_{2}.

Example 11.1.3 Show ∅ : ((A → B) → B) → ((B → A) → A) (fig 11.4)

1  Show a_{1} : (B → A) → A
2 a_{1} : (A → B) → B  assumption
3 a_{1} : (B → A) → A  from Box
4  Show a_{1}a_{2} : A
5 a_{2} : B → A  assumption
6 use disjunction rule
7 ∅ : A → A
8 a_{2} : B → A
9 a_{1} : (A → B) → B
10 a_{1}a_{2} : A
exit 11 a_{1} : (B → A) → A
exit 12 ((A → B) → B) → ((B → A) → A)

Figure 11.4:

Negation can be added the usual way, by adding a symbol ⊥ with the understanding that ⊥ implies anything, ie ∅ : ⊥ → A is always available.

Example 11.1.4 To show (¬A → ¬B) → (B → A), (fig 11.5)

The reader may wonder about our notion of A_{1} …, A_{n} ⊢ B and what does it mean in terms of the many valued truth tables.

In Scott 1974, the truth value meaning of A_{1}, … A_{n} ⊢_{Scott} B for Łukasiewicz logic is “For any many valued assignments h if all h(A_{i}) = 1 then also h(B) = 1.”

Our metabox notion of ⊢_{LDS} corresponds to the following:

“For any assignment h we have Σ_{i}h(A_{i}) ≤ h(B).”

Thus we can have the deduction theorem holding in some form. It also makes sense in terms of Ł_{∞} being a resource logic because the “numerical resource weights” h(A_{i}) we give to the assumption A_{i} are added and they should not “exceed” the “allocation” h(B) given to the proposed conclusion B.

1  show a_{1} : B → A
2 a_{1} : (A → ⊥) → (B → ⊥)  assumption
3 a_{1} : B → A  from Box

\begin{matrix}4 & & Show a_{1}a_{2} : A \\ 5 & a_{2} : B \\ 6 & ∅ : ((A → ⊥) → (B → ⊥)) → (B → ((A → ⊥) → ⊥) \\ 7 & a_{1} : B → ((A → ⊥) → ⊥) \\ 8 & a_{1}a_{2} : (A → ⊥) → ⊥ \\ 9 & ∅ : ((A → ⊥) → ⊥) → ((⊥ → A) → A) \\ 10 & a_{1}a_{2} : (⊥ → A) → A \\ 11 & ∅ : ⊥ → A \\ 12 & a_{1}a_{2} : A \end{matrix}

exit 13 a_{1} : B → A
exit 14 ∅ : ((A → ⊥) → (B → ⊥)) → (B → A)

Figure 11.5:

11.2 Introducing Łukasiewicz many valued logics

Our starting point is the basic resource logic W of Chapter 3. Its axioms are:

A → A (A → B) → ((B → C) → (A → C)) (B → C) → ((A → B) → (A → C))

Given any logic L, we are interested in self reflection for this logic. Let φ(x, q_{i}) be an implicational formula with propositional variables x and q_{i} (q_{i} are regarded as parameters). Let us assume that φ(x_{1}, q_{i}) is monotonic in x in classical logic, either monotonic increasing or monotonic decreasing. This means that in classical loigc we have either

1. ⊢ (x → y) → (φ(x, q) → φ(y, q)) or we have

2. ⊢ (x → y) → (φ(y, q) → φ(x, q))

We are interested in the smallest extension L_{φ} of L such that the above monotonicity condition (increasing or decreasing) holds in L_{φ}. Depending on what φ is, L_{φ} may be stronger or equal to L.

The above equation makes sense if we understand A → B functionally, as a type taking objects of type A into objects of type B. For example, the Curry-Howard functional interpretation for intuitionistic logic reads → in this way. We get ⊢ A → B iff the type A → B is non empty. A monotonic φ can then be understood as another functional from types to types and the axiom

⊢ (A → B) → (φ(A) → φ(B))

can be understood as the requirement of the commutativity of the diagram below: for increasing φ (see fig 11.6)

for decreasing φ we have the diagram fig 11.7

The axioms of prefixing and suffixing can be understood as φ extensions L_{φ} of the logical system L with reflexivity (⊢ A → A) as the only axiom where φ is any one of the formulas:

[figure: B; A; φ(B); φ(A)] Figure 11.6:

[figure: B; A; φ(B); φ(A)] Figure 11.7:

\begin{aligned}φ_{1}(A, q) & = & A → q \\ φ_{2}(A, q) & = & q → A \end{aligned}

L_{φ_{1}} yields the axiom

(A → B) → ((B → q) → (A → q))

and L_{φ_{2}} yields the axiom

(A → B) → ((q → A) → (q → B))

We now turn to BR1 and consider the formula φ(A, q) = (q → A) → A and consider L_{φ}. We have the following axiom for L_{φ}

⊢ (A → B) → (((q → A) → A) → ((q → B) → B))

hence by commutativity

⊢ (q → B) → (((q → A) → A) → ((A → B) → B))

substitute q = B and get

⊢ ((B → A) → A) → ((A → B) → B)

which is axiom L_{4} of Ł_{∞}.

Conversely, from L_{4} we can get L_{φ} as follows:

⊢ (A → B) → ((B → q) → ((A → q)))
⊢ ((B → q) → ((A → q)) → ((A → q) → q) → ((B → q) → q))

hence

⊢ (A → B) → (((A → q) → q) → ((B → q) → q))

and from L_{4} we get

⊢ (A → B) → (((q → A) → A) → ((q → B) → B)).

To be continued 336 CHAPTER 11. MANY VALUED LOGICS

11.3 Non linear Łukasiewicz many valued logics 11.4 Finite many valued logics

Extending the Curry-Howard Interpretation to LDS Systems

12.1 Introduction

This chapter extends the Curry-Howard interpretation to logics weaker and stronger than intuitionistic logic. The idea of the Curry-Howard interpretation is very simple. A formula of the implicational fragment of logic is regarded as a type. The atoms are the basic types and any formula A → B is read as the type of functions from A to B (ie B^{A}). If we allow ourselves the machinery of λ-calculus in defining terms via λ-abstraction, then some types will have definable terms in them; for example, the identity function λx^{A}.x^{A} is a definable element of the type A → A. It turns out that the set of formulas A for which it can be demonstrated that there exists a definable function of type A is exactly the set of all intuitionistic theorems. The set of definable terms is closed under modus ponens because if t^{A} ∈ A and t^{A→B}(t^{A}) ∈ B. Clearly, if we label every formula A by a term t^{A} of type A, ie write t^{A} : A, then the usual modus ponens propagation of labels namely

\begin{matrix}α : A \\ β : A → B \\ β + α : B \end{matrix}

corresponds to the natural application of the functional terms.

Conversely, the label of A → B is t iff ∀x[if x is the label of A then there is a derivation of B with label t + x].

If we are regarding A as a type and x as a term of that type and a derivation propagates terms via functional applications, then t + x would be t(x), where t is a functional built up during the proof of B from A. t is definable now as t = λxt(x).

Thus we see that exiting a metabox in LDS terminology corresponds to λ-abstraction in the Curry Howard methodology. The next step to take is to realise that since restrictions on exiting a box and on the derivations within the box give rise to weaker logics, such as linear or relevance logics or other resource logics, we must also be able to obtain weaker logics via restricting λabstraction. We can thus hope to give a Curry-Howard like interpretation to other resource logics, weaker than intuitionistic logic.

What are our options in restricting λ-abstraction? The restrictions must be natural. The λcalculus is a powerful language and can be used to simulate or characterise any recursive logic. We do not want to hack a λ-term for any given logic and artifically restrict λ-abstraction by means of that term, to yield that logic. We want natural conditions. so let us see what we have when we write λxt(x_{1}, …, x_{n})

1. x may not be free in t. Do we allow abstraction in this case?

2. x may have more than one occurrence in t. eg t(x, x). Do we abstract λxt(x, x) (ie get rid of all occurrences or do we abstract one?).

338CHAPTER 12. EXTENDING THE CURRY-HOWARD INTERPRETATION TO LDS SYSTEMS

One occurrence only, ie rename and abstract

λx′t(x′, x)

Another dimension is the order of abstraction. The varaibles x_{i} are typed. Some are typed higher than others. Do we say abstract the lower types first and then the higher types? What is the order we use?

The reader will note that these are natural questions to ask and therefore give rise to natural restrictions.

We shall see that such natural restrictions give rise to the same resource logics of previous chapters. Furthermore, we should see a correspondence between λ-restrictions and axioms.

The above discussion motivated restrictions on λ abstraction, restricting the supply of definable terms and thus getting less types A demonstrably non-empty. Less non-empty types means less theorems which means a weaker logic. How about stronger logics, intermediate logics between intutionistic and classical logic?

What mechanism do we have for characterising them? Obviously we need to increase the stock of definable (or existing) terms so that more types can be shown non-empty, ie more theorems are available. We do not want to just throw in (stipulate) existence of functionals, in an ad-hoc manner just to obtain the intermediate logic we want. We should put forward some reasonable principles, the kind natural to λ-calculus functional environment, and show that adopting them yields corresponding logics.

We chose one simple principle, that of completing a functional diagram. If φ is a monotonic increasing functional on types, then one can ask the question can we complete the following diagram

[figure: φ(A); ?; φ(B); A; B] Figure 12.1:

being able to complete such diagrams requires existence of terms. Our mechanism for getting more terms (in order to get more logics) is to postulate the completions of diagrams.

Take for example

φ(x) = (C → x) → x.

C is a parameter. Postulating the existence functionals completing the diagram above yields classical logic.

The two methods may be combined. We can restrict λ-abstraction and at the same time postulate the completion of some diagrams. This will give us new logics, which are neither weaker nor stronger than intuitionistic logic. The following figure summarises the situation (se fig 12.2):

12.2 Formulas as types

The idea of reading a formula as a type originates with Curry [Curry, 1934] and is used to give a λ-calculus interpretation of an intuitionistic theorem. A formula of intuitionistic implicational logic is a theorem if and only if, when read as a type, it can be shown to be non-empty using the rules of term-construction, namely abstraction and application. By varying the natural abstraction principles available in the λ-calculus, we are able to extend the point of view of formulae-as-types to some weak systems of implication (relevance, linear, etc.) as well as to systems which are stronger than intuitionistic.

[figure: restrict λ-abstraction; allow φ-diagrams; intuitionistic logic; basic resource logic; classical logics; some φ-diagrams; some λ-restrictions; mixed logic]

Figure 12.2:

Let us then take a standard definition of the terms and operators needed to obtain a λ-calculus, and let us examine the abstraction rule more closely.

Definition 12.2.1 1. Lambda terms are words over the following alphabet:

v_{0}, v_{1}, … variables,
λ  abstractor,
(,)  parentheses.

2. The set of λ-terms is defined inductively as follows:

(a) x ∈ Λ;

(b) M ∈ Λ → (λx.M) ∈ Λ;

(c) M, N ∈ Λ → (MN) ∈ Λ;

where x in (a) or (b) is an arbitrary variable.

Note that there are many hidden assumptions in the case (2) of the definition of λ-terms, in particular λ-abstraction terms, eg:

1. M may have no free occurrence of x:

(a) M is an open term, but contains no free occurrence of x;

(b) M is a closed term, thus contains no free variable at all;

2. M may have one free occurrence of x:

(a) M may be of the form ‘(T x)’ (or ‘APPLY(T, x)’);

(b) M may be of the form ‘(xT)’ (or ‘APPLY(x, T)’);

3. M may have more than one free occurrence of x:

(a) the λ-abstraction may cancel exactly one of the free occurrences of x;

(b) the λ-abstraction may cancel all free occurrences of x;

Moreover, in (3), where application is being defined (which can be done by juxtaposition as in ‘(MN)’, or by an explicit non-canonical operator ‘APPLY(M, N)’ in the terminology used here in this paper), ‘M’ is assumed to be of ‘higher’ level than ‘N’: ‘M’ is supposed to be the ‘course-of-value’ of a function, while ‘N’ is assumed to be the argument.

Now, by working with some of these hidden assumptions one can use the simple typed λcalculus together with the Curry-Howard-Tait interpretation to formalise a number of systems of implication, as we shall demonstrate below.

We read the first rule of →-introduction, namely:

\frac{{[x ∈ A] \atop b(x) ∈ B}}{λx.b(x) ∈ A → B}

as follows: having made the assumption ‘x ∈ A’, and arriving at the conclusion ‘b(x) ∈ B’ by means of one of the rules available, then we can discharge the assumption by making a λ-abstraction of the assumption-term (‘x’) over the conclusion-term (‘b(x)’). In other words, when constructing a prooftree one can discharge an assumption if there is at least one proof step between the assumption and the conclusion where the assumption is discharged. So, in the construction of a proof of ‘λx.x ∈ A → A’, as we shall see below, we need at least reflexivity in order to arrive at a conclusion of the form ‘x ∈ A’ from the assumption ‘[x ∈ A]’.

Example 12.2.2 A → A (reflexivity)

\frac{\frac{\frac{[x ∈ A]}{x = x ∈ A}}{x ∈ A}}{λx.x ∈ A → A}

and we have the ‘identity’ construction, which corresponds to combinator ‘I’ ≡ λx.x [Curry and Feys, 1958, Hindley and Seldin, 1986].

Example 12.2.3 (A → B) → ((C → A) → (C → B)) (left transitivity)

\frac{\frac{\frac{\frac{\frac{[z ∈ C]  [y ∈ C → A]}{APPLY(y, z) ∈ A}  [x ∈ A → B]}{APPLY(x, APPLY(y, z)) ∈ B}}{λz.APPLY(x, APPLY(y, z)) ∈ C → B}}{λy.λz.APPLY(x, APPLY(y, z)) ∈ (C → A) → (C → B)}}{λx.λy.λz.APPLY(x, APPLY(y, z)) ∈ (A → B) → ((C → A) → (C → B))}

whose resulting closed term corresponds to combinator ‘B’ ≡ λx.λy.λz.APPLY(x, APPLY(y, z)) [Curry and Feys, 1958, Hindley and Seldin, 1986].

Example 12.2.4 (A → B) → ((B → C) → (A → C)) (right transitivity)

\frac{\frac{\frac{\frac{\frac{[z ∈ A]  [x ∈ A → B]}{APPLY(x, z) ∈ B}  [y ∈ B → C]}{APPLY(y, APPLY(x, z)) ∈ C}}{λz.APPLY(y, APPLY(x, z)) ∈ A → C}}{λy.λz.APPLY(y, APPLY(x, z)) ∈ (B → C) → (A → C)}}{λx.λy.λz.APPLY(y, APPLY(x, z)) ∈ (A → B) → ((B → C) → (A → C))}

whose resulting closed term corresponds to a combinator which results from applying combinator ‘C’ to combinator ‘B’, or what Curry has called combinator ‘B′’ in [Curry and Feys, 1958], and in [Curry, 1963]: ‘B′’ ≡ λx.λy.λz.APPLY(y, APPLY(x, z)) (‘CB’ in [Hindley and Seldin, 1986]).

In order to invalidate the derivation above one would have to impose the restriction on the λ-abstraction rule such that the abstractions have to occur in the order ‘from higher to lower subterms’.

Example 12.2.5 (A → (B → C)) → (B → (A → C)) (permutation)

\frac{\frac{\frac{\frac{[y ∈ B]  \frac{[z ∈ A]  [x ∈ A → (B → C)]}{APPLY(x, z) ∈ B → C}}{APPLY(APPLY(x, z), y) ∈ C}}{λz.APPLY(APPLY(x, z), y) ∈ A → C}}{λy.λz.APPLY(APPLY(x, z), y) ∈ B → (A → C)}}{λx.λy.λz.APPLY(APPLY(x, z), y) ∈ (A → (B → C)) → (B → (A → C))}

whose resulting closed term corresponds to combinator ‘C’ ≡ λx.λy.λz.APPLY(APPLY(x, z), y) ([Curry and Feys, 1958, Hindley and Seldin, 1986]).

In order to invalidate the derivation above one would have to impose the restriction on the λ-abstraction rule such that the abstractions have to occur in the order ‘from higher to lower subterms’ within the order ‘from inner to outer subterms’.

Example 12.2.6 (A → (A → B)) → (A → B) (contraction)

\frac{\frac{\frac{[y ∈ A]  \frac{[y ∈ A]  [x ∈ A → (A → B)]}{APPLY(x, y) ∈ A → B}}{APPLY(APPLY(x, y), y) ∈ B}}{λy. APPLY(APPLY(x, y), y) ∈ A → B}}{λx.λy.APPLY(APPLY(x, y), y) ∈ (A → (A → B)) → (A → B)}

whose resulting closed term corresponds to combinator ‘W’ ≡ λx.λy.APPLY(APPLY(x, y), y) ([Curry and Feys, 1958, Hindley and Seldin, 1986]).

The assumption ‘ [y ∈ A] ’ is used twice and in a nested way. So, the restriction one has to impose here is rather obvious: a λ-abstraction will cancel one free occurrence of the variable at a time.

Example 12.2.7 (A → (B → C)) → ((A → B) → (A → C)) (distribution)

\frac{\frac{\frac{\frac{\frac{[z ∈ A]  [x ∈ A → (B → C)]}{APPLY(x, z) ∈ B → C}  \frac{[z ∈ A]  [y ∈ A → B]}{APPLY(y, z) ∈ B}}{APPLY(APPLY(x, z), APPLY(y, z)) ∈ C}}{λz. APPLY(APPLY(x, z), APPLY(y, z)) ∈ A → C}}{λy.λz.APPLY(APPLY(x, z), APPLY(y, z)) ∈ (A → B) → (A → C)}}{λx.λy.λz.APPLY(APPLY(x, z), APPLY(y, z)) ∈ (A → (B → C)) → ((A → B) → (A → C))}

whose resulting closed term corresponds to combinator ‘S’ ≡ λx.λy.λz.APPLY(APPLY(x, z), APPLY(y, z)) ([Curry and Feys, 1958, Hindley and Seldin, 1986]).

Note that the assumption ‘ z ∈ A ’ is used twice, and both occurrences are discharged in one single abstraction ‘ λz. ’. To obtain a linear implication one has to restrict the discharging abstraction to one occurrence of the assumption only. In other words, each discharge affects only one (linear) path in the proof-tree, instead of affecting all branching occurrences like in the proof above.

Example 12.2.8 (A → B) → ((A → (B → C)) → (A → C)) (distribution on the minor)

\frac{\frac{\frac{\frac{\frac{[z ∈ A]  [x ∈ A → B]}{APPLY(x, z) ∈ B}  \frac{[z ∈ A]  [y ∈ A → (B → C)]}{APPLY(y, z) ∈ B → C}}{APPLY(APPLY(y, z), APPLY(x, z)) ∈ C}}{λz. APPLY(APPLY(y, z), APPLY(x, z)) ∈ A → C}}{λy.λz.APPLY(APPLY(y, z), APPLY(x, z)) ∈ (A → (B → C)) → (A → C)}}{λx.λy.λz.APPLY(APPLY(y, z), APPLY(x, z)) ∈ (A → B) → ((A → (B → C)) → (A → C))}

whose resulting closed term corresponds to a variation of the ‘S’, precisely: ‘SC’ ≡ λx.λy.λz.APPLY(APPLY(y, z), APPLY(x, z)).

Observe that the same remarks as to the ‘non-linearity’ of the discharge/abstraction made for the previous case also applies for the case here.

Example 12.2.9 A → (B → A)

Now we want to build a derivation of the above axiom and show where it can be invalidated by the appropriate side condition. By imposing the condition that the abstraction can only be made when there is indeed at least one free occurrence of the variable being abstracted from the expression (‘b(x)’ in the case below), one can obtain a ‘relevant’ abstraction: →-introduction

\frac{{[x ∈ A] \atop b(x) ∈ B}}{λx.b(x) ∈ A → B}

The proof-tree is constructed as follows:

\frac{\frac{\frac{[y ∈ B]}{[x ∈ A]}}{λy.x ∈ B → A}}{λx.λy.x ∈ A → (B → A)}

whose resulting closed term corresponds to combinator ‘K’ ≡ λx.λy.x (Curry & Feys 1958, p. 153; Hindley & Seldin 1986, p. 191).

Note that the discharge/abstraction of the assumption ‘ [y ∈ B] ’ is made over the expression

‘x’ in ‘ λy.x ’, which prevents it from being considered ‘relevant’, given that the expression ‘x’ does not contain any free occurrence of ‘y’. Such a ‘non-relevant’ discharge/abstraction is called ‘vacuous discharge’ in [Hindley and Seldin, 1986].

So, the restricted λ-abstraction to be adopted in order to invalidate the derivation above is exactly the relevant abstraction, i.e., there must be at least one free occurrence of the variable in the term on which the abstraction is operating. In logical terms, what the relevant abstraction does is to allow us to ensure that within the Curry-Howard-Tait interpretation we can have a “systematic handle on relevance in the sense of logical dependence” ([Anderson and Belnap, 1975]). The idea is that for ‘A’ to be relevant to ‘B’ it must be necessary to use ‘A’ in the deduction of ‘B’ from ‘A’. At first sight it may look as though the restriction on λ-abstraction is not by itself sufficient, given that a proof of ‘(A → B) → ((B → A) → (A → B))’ can be constructed using relevant λ-abstractions only, as in eg:

\frac{\frac{\frac{\frac{\frac{\frac{[z ∈ A]  [x ∈ A → B]}{APPLY(x, z) ∈ B}  [y ∈ B → A]}{APPLY(y, APPLY(x, z)) ∈ A} (∗)  [x ∈ A → B]}{APPLY(x, APPLY(y, APPLY(x, z))) ∈ B} (∗)}{λz.APPLY(x, APPLY(y, APPLY(x, z))) ∈ A → B}}{λy.λz.APPLY(x, APPLY(y, APPLY(x, z))) ∈ (B → A) → (A → B)}}{λx.λy.λz.APPLY(x, APPLY(y, APPLY(x, z))) ∈ (A → B) → ((B → A) → (A → B))}

However, it is easy to show that the steps marked with ‘(∗)’ were unnecessary and could be eliminated, and the ‘λy.’-abstraction would have to be made over the term obtained prior to those steps, namely ‘APPLY(x, z)’. A ‘minimal’ proof of ‘(A → B) → ((B → A) → (A → B))’ would have to involve at least one non-relevant abstraction, such as e.g. in:

\frac{\frac{\frac{\frac{[z ∈ A] \frac{[y ∈ B → A]}{[x ∈ A → B]}}{APPLY(x, z) ∈ B}}{λz.APPLY(x, z) ∈ A → B}}{λy.λz.APPLY(x, z) ∈ (B → A) → (A → B)}}{λx.λy.λz.APPLY(x, z) ∈ (A → B) → ((B → A) → (A → B))}

where the λy.-abstraction is a non-relevant abstraction.

As pointed out in Lambek [Lambek, 1989, p. 234], in his The Calculi of Lambda-Conversion Church already distinguished the relevant from the non-relevant λ-abstraction. See, e.g.:

“If M does not contain the variable x (as a free variable), then (λxM) might be used to denote a function whose value is constant and equal to (the thing denoted by) M, and whose range of arguments consists of all things. This usage is contemplated below in connection with the calculi of λ-K-conversion, but is excluded from the calculi of λ-conversion and λ-δ-conversion – for technical reasons which will appear.”

(Church 1941, pp. 6–7.)

12.3 Correspondence between terms and proofs

12.4 Curry Howard interpretation for general LDS systems

344CHAPTER 12. EXTENDING THE CURRY-HOWARD INTERPRETATION TO LDS SYSTEMS

Part IV

Labelled Modal and Temporal Systems Labelled Modal and Temporal Logics

13.1 Introduction

In resource logics, the labelling was essentially for the purpose of resource management. To prove α : A meant that A was obtained or assumed using the assumptions named in α. This chapter deals with logics where the label has a different meaning. To prove α : A means A is true or is associated with the possible world α. A database is, as before, a set of labelled formulas. A database Δ can prove a labelled formula t : A. To understand the intuitive meaning behind these concepts take the following example:

Example 13.1.1 There is signal trouble in the Camden Town underground station. Liverpool Street underground station is flooded. Is this going to disrupt the schedule at Kings Cross station? Here the database is labelled: Data c: Signal Trouble l: Flooded Query k: Delays in schedule

Technically this is no different from:

Data

a :  A
b :  A → B

Query

ab :  B

In our case the labels signify location, not resource management.

We need to present a view of modal and temporal logics, in which the labels make intrinsic sense. The reaser may try and guess that since modal and temporal logics have a natural possible worlds semantics, we are viewing the worlds as labels and writing α : A to mean A holds in the world α. This is technically correct, but has the conceptual standing of a mere mathematical device, desgined to conform modal and temporal logics into our LDS framework. I should like to claim more. I should like to put forward that the primary conceputal framework for modal (and temporal) logics is LDS. The possible world semantics for these logics just happens to be compatible with the LDS approach, through the device of taking the worlds as labels. To be successful in putting forward this point of view, we have to motivate and identify modal and temporal logic from within the LDS framework, using considerations that are intrinsically natural to the LDS point of view. This we now proceed to achieve.

Our starting point is the notion of a logical system presented in Chapter 1. Recall that a logical system to us is a pair, (⊢, S_{⊢}), where ⊢ is a consequence relation and S_{⊢} is an algorithmic system (recursively enumerable) for generating the pairs (Δ, Q) such that Δ ⊢ Q holds, where Δ is a finite set of wffs and Q is a wff. We refer to Δ as the database, Q as the query and S_{⊢} is referred to as the algorithmic system for ⊢. Thus for example according to our view, the classical logic consequence relation ⊢ with S_{1} being a resolution based automated system and S_{2} being a Gentzen or a Hilbert system give rise to two different logics, (⊢, S_{1}) and (⊢, S_{2}).

⊢ can be presented mathematically in some manner. It is just a set of pairs {(Δ, Q)} satisfying the axioms of consequence relation, namely, Revlexivity, Monotonicity and Cut.

We regard the problem of whether Δ ⊢ Q, denoted by Δ ⊢?Q, as a problem of querying a set of data. Suppose we are given a set of assumptions Δ written in some formal language L. This set represents our data concerning some aspect of an application. We may have queries from the data, represented in (probably the same) language L′. The basic (non-temporal) logical problem associated with this situation is: Does the query follow from the data, or in symbols: Δ ⊢?Q. A logical system (⊢, S_{⊢}) gives us the pairs (Δ, Q) such that the answer is yes. There are two mainstream types of logics involved. The monotonic ones and the non-monotonic ones. The difference has to do with the properties of the consequence relation ⊢. A monotonic logic would satisfy the three rules of consequence relation given above. The non-monotonic logics do not necessarily satisfy monotonicity or cut.

The conceptual difference between the two is that in the monotonic case Δ ⊢ A means that A gets an answer yes from a part of Δ and it does not matter what the rest of Δ is.

Thus Δ ⊢ A iff for some minimal Δ_{0} ⊆ Δ, Δ_{0} ⊢ A and so we also have Δ ∪ Δ′ ⊢ A, because the answer really depends only on Δ_{0}.

In the non-monotonic case the answer depends on the entire set Δ. Equivalently in the non monotonic case the answer may be obtained from some Δ_{0} ⊆ Δ, but it does matter what else is in Δ besides Δ_{0}. Thus if more data is added eg we have a new set, Δ ∪ Δ′, the answer may not continue to be yes.

Example 13.1.2 1. Consider the database Δ

(a → b) → a
c

and the query ?a

Whether or not Δ ⊢ a depends on the underlying logic. If it is classical logic the answer is yes. For intuitionistic logic the answer is no.

2. Consider the same database with the query ?¬b. In classsical and intuitionistic logic we do not get the answer yes. If the logic is non-monotonic with the closed world assumption the answer would be yes! (The closed world assumption is the understanding that any atom which is not a head of a clause is negated by the database.)

Note that so far we have no temporal dimension involved. We have only a database Δ and a logic (a system for getting answers from Δ). The logic may be one of a great variety available in the literature. There is classical logic, intuitionistic logic, relevance logic, inheritance systems, circumscription, Horn Clause logic, etc. We have listed a mixed variety of systems because any one of them will do for getting answers from data.

Each logic has two features, the first is the representation and query language, and the second is the deductive system (possibly non-monotonic) for getting answers from data. In the above list, classical, intuitionistic and relevant logics are all based on the same language but represent different answering mechanisms. Circumscription is still based on the same language but yields answers in a totally different way and an inheritance system is completely different even in its representation.

We now proceed to widen our horizon and consider several related databases. Denote them by {(Δ_{t}, ⊢_{t}) | t ∈ T }. Each database Δ_{t} has its own answering logical system ⊢_{t}. For simplicity let us assume that all the Δ_{t} are based on the same language and employ the same logic ⊢_{t}=⊢. We can thus present the system as {Δ_{t} | t ∈ T } the ⊢ being implicit. The area of Labelled (eg modal and temporal) logics deals with logical connections between such databases. The queries we want to ask are of the form:

“Which databases give answer yes to Q_{i} and how are they related.” Thus the next step is pluralistic. We move from one single set of assumptions and logic to a whole related system of them. The added dimension is the study of connections between the databases. Let us consider for example the simplest connection, namely:

If the answer to Q is yes from one database, the answer is yes from all of them.

We are not able to express such a relationship without a richer possibly external language. The language and logic of Δ_{t} involves Δ_{t} alone and is not able to deal with the above relation which is a meta-relation to {Δ_{t} | t ∈ T }. The problem can be further complicated when T, the label set, has its own structure (eg it may be partially ordered by < or may have a binary function ⊗ on it e.g. whenever t, s are labels so is t ⊗ s).

Thus indexed (modal and temporal) logics as an area of research deals with systems of databases {Δ_{t} | t ∈ T } where the index T has a structure of its own. (We symbolise this fact by writing (T, <, ⊗) as a typical example with one relation symbol and one function symbol.)

The queries either relate to any particular databases Δ_{t}, t ∈ T or to some patterns of relationships between them.

Example 13.1.3 The following are examples of a system of databases (see fig 13.1)

5 4 3 2 1  A(J), B(M) ∼ A(J), B(M) A(J), ∼ B(M) A(J), B(M) ∼ A(J), B(M)  Figure 13.1:

We see a pattern here that whenever A(J) and B(M) are true, ∼ A(J) is true next. This we cannot express without special additional language capability.

The reader may still think our presentation and point of view so far is traditional. However, we have already departed from the traditional view and laid the ground for further generalisations, which can address the variety of systems available in the area of logic and computation.

First, under the present conceptual framework, the structure (eg (T, <, ⊗)) of labels receives more prominence and is allowed to have (logical) life of its own.

Second, we are under no obligation to disallow a system (Δ_{t}, ⊢_{t}) where ⊢_{t} are different logics (though it makes some sense to ask that they be based on the same language). This corresponds naturally to metabox disciplines where different metaboxes allow for different derivation rules. The internal logic of a new box is one of the options of our discipline, as discussed in Chapter 3.

Third, the logics ⊢_{t} need not be monotonic.

Fourth, in the system (Δ_{t}, ⊢_{t}) we may have relationships not only among queries but also among ⊢_{t}. We may have that the logics relate to each other in conformity with the labelling structure (T, <, ⊗). For example, if t represents time, ⊢_{t} may be a logic evolving with time.

Note that in practical computer science problems which use logic we have occasions, and need to call upon, many combinations of the above features of an indexed system. We defined the notion of a logical system to be a pair (⊢, S_{⊢}). We therefore must specify how we see the system {Δ_{t}, ⊢_{t}} as a logical system. There are many ways of defining the composite system. One simple way is to take the formulas of the composite system to be of the form t : A, where A ∈ Δ_{t}. The relation {t_{i} : A_{i}} ⊢ s : B is defined somehow using {⊢_{t}} and the algorithmic system S_{⊢} for the composite consequence relation ⊢ is also defined in some way using {S_{⊢_{t}}}. Thus we do obtain a composite (⊢, S_{⊢}).

Having described the scope of possibilities with systems of databases (Δ_{t}, ⊢_{t}) we yet have to ask what exactly are our options are with regard to a language describing the relationships between the Δ_{t}’s.

Here there are two extreme possibilities. The external and the internal ones, and of course, many combinations of them. The external view is to have a metalanguage M which can describe the notion of Δ_{t} ⊢_{t} A. M is a metalanguage, allowing explicit reference to t and to (T, <, ⊗), having names for the elements of Δ_{t} and, by using its own (ie M’s) connectives and logical means, to describe relationships among the Δ_{t}’s. This approach is studied in its general setting in the metalevel chapter.

The second approach is to enrich the language of each Δ_{t} with special additional connectives and operators allowing it to relate to its “neighbours” in the structure (T, <, ⊗). This involves a slight change of point of view. Δ_{t} is no longer a database of data isolated on its own but it will now contain data (in the enriched language) of how it is related to neighbouring Δ_{s}, s ≠ t. So for example, □A ∈ Δ_{t} may put in the database at t the information that all other neighbouring databases answer the query ?A as yes. A side effect of this change in view is that we cannot any longer take any old family of databases and put them together to form a system.

The experienced modal logician will notice that the system (T, <, ⊗, Δ_{t}, ⊢_{t}, t ∈ T) is a mixture of syntax and semantics. (T, <) can be regarded as a possible world structure, where at each t ∈ T, we do not have the traditional classical model but a theory Δ_{t} in the logic ⊢_{t}. This is in itself an innovation, in the context of possible world semantics. It is especially suited for a computational point of view. To find the value of an atom q at a possible world t, we do not consult a mathematical assignment h(t, q) as in the traditional Kripke seantics, but submit the query ?q to an algorithmic proof procedure Δ_{t} ⊢?q.

The above considerations hsow the place of modal and temporal logics within the framework of LDS. It is the study of systems of databases adn their relationship. The primary intrinsic meaning of a lable α : A is a database α and wff A. The modal connectives talk about how queries from different α_{i} relate to each other. Thus we enrich our language and develop systems of modal and/or temporal logics. How fortunate we are that the natural semantics for these logics is the possible world one which is compatible with the original reasons for introducing the systems.

13.2 H-modal logic

This seciton develops a modal system on a set of labels which is itself a logic. In terms of the discussion of the previous section, we have a labelled system of databases (Δ_{α}, ⊢_{α}), where α are some wffs of some logic H.

This is the most general framework one can consider. H need not be a logt can be a labelling algebra. The temporal and modal connectives give us the connections between the systems (Δ_{α}, ⊢_{α} ).

Definition 13.2.1 Labelled Classical H-Modal Logic.

(a) A labelling logic is any logical system with wffs in some language. We denote these Wffs by α, β, γ (b) Let H be a labelling logic. We define the notions of the H-modal (or temporal) logic M(H)

by defining its Wffs and terms. We initially consider the connectives ¬, ∧, ∨, →, □, ♢ and the quantifiers ∀ and ∃. Other possibilities are ⇒ (strict implication), P, F (the temporal Past, Future connectives) or intuitionistic implication.

For the case of □, ♢ we adopt the following clauses.

1. Let Q be an n-place predicate and x_{1} … x_{n} be variables then Q(x_{1}, …, x_{n}) is an atomic formula of M(H) with the free variables x_{1} … x_{n}.

2. If A(x_{i}), B(y_{i}) are Wffs with the indicated free variables so are A ∧ B, ¬A, A → B, A ∨ B, ♢A, □A, with the corresponding free variables.

3. If A(y, x_{i}) is a Wff with y, x_{i} free then ∀yA, ∃yA is a Wff with x_{i} free.

4. If α is a label and c is a symbol for a constant, then c(α) is a constant term. The intuition behind c(α) is that c is introduced at label α. If α labels a possible world then c was first introduced at world α. c(α) may also appear in another world β.

5. If A(y, x_{1}, ..., x_{n}) is a formula with x_{i}, y free and α is a label then ηy(α, A(y, x_{i})) is a term with x_{i} free and α a parameter. η is an ε-function or a Skolem function. Its meaning is that if α : ∃yA(y, x_{1}, …, x_{n}) holds at label α, then there is a constant c(α, x_{1}, …, x_{n}) such that α : A(c(α, x_{1}, …, x_{n}), x_{1}, …, x_{n}) holds. The constant c depends of course on x_{1}, … x_{n} and is introduced at α, hence dependence on α. We use the η-function to denote c.

6. If A is a wff then “A” is a label (ie atomic Wff of the labelling logic). The intuition behind the name “A” of A is the following: There will be many occasions where we need to introduce a new label because of logical considerations having to do with a Wff A. In that case we want “A”, the name of A, also to be involved. The simplest example is when α : ♢A is true. This means that there exists a possible world β in which β : A is true. We might write β = α∧ “A”

Definition 13.2.2 A database is a set of labelled wffs or terms of the form

α : A
α : t

where A is a Wff and t is a term.

The next definition defines the notion of a logical system for the language of M(H). The idea is to separate the object language (□, ♢) from the metalanguage (H and the labels). Logical rules will give the connection. The labels α, β are the possible worlds for □ and ♢. The ordering and general behaviour of the possible worlds is governed by the logic H. H says which world is relatively possible to which world. We write α <H β to be ⊢H β → α. Of course this forces <H to be transitive and reflexive. This is not a limitation. The very idea of having a logic “controlling” < is a far reaching generalisation. There is scope for H to interact with the logic M(H) itself (H= M(H)?) in various ways. We shall see in the sequel.

Definition 13.2.3 The logic M(H) We need the following conventions:

• H is a labelling logic

• α : t_{i} means the term t_{i} exists in the label α. The existence has to be indicated or inferred.

• α < β is the possible world relation on the labels. It is defined in some way using H, the labelling logic. For example we can have

α < β = definition ⊢H β → α

• There are problems in reading α : ♢A(t); □A(t). Does t have to exist at α? Similarly ?α : □A(t), does that mean t exists in any possible world and A(t) is true there or does it mean A(t) is true in all possible worlds in which t exists?

We adopt the following axioms and rules for the logic M(H).

1. \frac{α : □A, α < β}{β : A}

2. \frac{β : A(t_{i}), α : t_{i}, α < β}{α : ♢A(t_{i})}

3a. \frac{α : ∃yA(y, x_{i})}{α : A(ηy(α, A(y, x_{i})), x_{i})}

3b. \frac{α : ∃yA(y, x_{1}, …, x_{n})}{α : ηy(α, A)}

This axiom says the η Skolem constant exists at α.

4. \frac{α : t, α < β}{β : t}

The domains of the possible worlds increase.

5. \frac{α : ∀xA(x), α : t}{α : A(t)}

6. \frac{α : ♢A}{ξ(α, A) : A}

where ξ(α, A) is a label which depends on α and on A, for example α∧ “A”. Here we adopt the view that if ♢A is true at a world α, then A is true in a possible world ξ(α, A). The value of this world depends on the logic M(H) and is indicated by the definition of ξ.

7a. \frac{∅}{α : A}

for A a truth functional tautology.

7b. \frac{α : A, α : A → B}{α : B}
8. \frac{α : □A; α : □(A → B)}{α : □B}

If the language contains strict implication ⇒ then we can have the rule

9. \frac{α : A ⇒ B, ⊢H β → α, β : A}{β : B}

Strict implication can be defined as □(A → B)

Example 13.2.4 Let H be a classical logic and let {a_{i}} be atomic labels. Consider a propostional modal language with □ and ♢. According to 13.2.1, each a_{i} is a label, and assume that if A is a formula then “A” is an atomic label. We let ξ(α, A) be the label α∧ “A”.

Let us reconsider 2.2.3. We show that the data:

1. α : □□B

2. β : ♢(B → C)

3. α <H β

imply the goal

α : ♢♢C The following are the proof steps:

4. From (2) we get:

β∧ “B → C” : B → C

5. From (1) and (3) and the fact that ⊢H β∧ “B → C” → β we get that β∧ “B → C” : C.

6. From 5 we get α : ♢♢C

The proof is the same as the one in 2.2.4 but it illustrates the notation.

Remark 13.2.5 There are several important points to remember about 13.2.1 - 13.2.3.

a We defined α <H β as ⊢H β → α. This makes <H transitive and reflexive. For a temporal logic, the transitivity is acceptable, but the reflexivity is not. It is no problem to define a new ordering α < β iff ⊢H β → α and ⊬H α → β. This definition will work because in the rule

\frac{α : ♢A}{α ∧ “A” : A}

We do have α < α∧ “A”

b Furthermore, notice that we are not committed to H being a monotonic logic. Thus a variety of H can be used. This aspect of our formalism is new and interesting because it means that the set of possible worlds is a logical space subject to some logical considerations.

c We have more freedom with the choice of ξ(α, A). If we make ξ dependent only on A only we get the logic S5, for example.

We also have freedom with the naming function A ↦ “A”. We assumed “A” was atomic in the previous example. “A” can be taken to be as A itself. If we do that the logic H will make some worlds equal and will thus affect M(H).

Example 13.2.6 Consider a positive intuitionistic predicate language with ∧, →, ⊥, ∀. Let H be intuitionistic logic. Let “A” be A and let ξ(α, A) be α ∧ A. The rules are:

1. \frac{α : A → B, β : A, ⊢ β → α}{β : B}

2. \frac{α : A, ⊢ β → α}{β : A}

3. \frac{α : A ∧ B}{α : A}

and

\frac{α : A, α : B}{α : A ∧ B}

Consider a configuration ρ with α : A ∈ ρ iff ⊢H α → A, for A atomic. One can show, using the rules of intutionistic logic for the labels H and the rules (1)-(4) above, that we get for any A and α:

⊢H α → A iff ρ ⊢M(H) α : A

4. \frac{α : ∀xA(x)}{α : A(y)}

and

\frac{α : A(x), for x not free in α}{α : ∀xA(x)}

Example 13.2.7 Consider the logic CL of 9.1.2 in a language with → and ∀ only. Let H be CL itself and let the labels be finite sequences of wffs of CL. Let * be concatenation of sequences. Let “A” be A and let ξ(α, A) be α ∗ (A).

Consider the following rules:

1. \frac{α : A → B, β : A}{α ∗ β : B}

2. \frac{α : ∀xA(x)}{α : A(y)}

and

\frac{α : A(x), x not free in α}{α : ∀xA(x)}

Consider a configuration of ρ with α : A ∈ ρ iff

⊢CL α_{1} → (α_{2} → … → (α_{n} → A) …)

where A is atomic and where α = (α_{1}, …, α_{n}).

Then one can show using (1) and (2) above that for any wff A of CL we have

⊢CL α_{1} → … → (α_{n} → A) …) iff ρ ⊢M(H) α : A

Remark 13.2.8 Note that Relevance Implication is complete for the semantics of possible worlds {α} with operation ⊗, where

α ⊨ A → B iff ∀β(β ⊨ A ⇒ α ⊗ β ⊨ B)

where α is a subset of a set X and ⊗ is union.

If we take α a multiset subset of X and ⊗ multiset union, we get Linear Logic L.

If we take α any finite sequence of elements from X and ⊗ concatenation, we get the logic CL above. See section 10.1.

13.3 Temporal labelled deduction systems

This section will present the labelled deduction methodology which serves as a framework for developing temporal proof theory. We begin by asking ourselves what is a temporal database? Intuitively, looking at existing real temporal problems, we can say that we have information about things happening in different times and some connections between them. Figure 13.2 is an example of A Temporal Configuration

The figure shows a finite set of points of time and some labelled formulas. These are supposed to hold at the times indicated by the labels. Notice that we have not only labelled assertions but also Horn clauses showing dependencies across times. Thus at time t it may be true that B will be true. We represent that as t : F B. The language we are using has F and P as connectives. It is possible to have more connectives and still remain within the Horn clause framework. Most sueful among them are “t : F^{s}A” and “t : P^{s}A” reading “t < s and s : A” and “s < t and s : A”, in words: “ A will be true at time s > t”.

The temporal configuration comprises of two components.

s : P B(x) t : B(y) → F A(y) t : A(x)  s t  \overline{}Figure 13.2:

1. A (finite) graph (ρ, <) of time points and the temporal relationships between them.

2. With each point of the graph we associate a (finite) set of clauses and assertions, representing what is true at that point.

In Horn clause computational logic, there is an agreement that if a formula of the form A(x) → B(x) appears in the database with x free then it is understood that x is universally quantified. Thus we assume ∀x(A(x) → B(x)) is in the database. The variable x is then called universal (or type 1). In the case of modal and temporal logics, we need another type of variable, called type 2 or a Skolem variable. To explain the reason, consider the item of data

“t : F B(x)”.

This reads, according to our agreement, “∀xF B(x) true at t.”

For example it might be the sentence: t: “Everyone will leave.”

The time in the future in which B(x) is true depends on x. In our example, the time of leaving depends on the person x. Thus, for a given unknown (uninstantiated) u, that is for a given person u which we are not yet specifying, we know there must be a point t_{1} of time (t_{1} is dependent on u) with t_{1} : B(u). This is the time in which u leaves.

This u is by agreement not a type 1 variable. It is a u to be chosen later. Really u is a Skolem constant and we do not want to and cannot read it as t_{1} : ∀uB(u). Thus we need two types of variables. The other alternative is to make the dependency of t_{1} on u explicit and to write

t_{1}(x) : B(x)

with x a universal type 1 variable, but then the object language variable x appears in the world indices as well. The world indices, ie the t’s, are external to the formal clausal temporal language, and it is simpler not to mix the t’s and the x’s. We chose the two type of variable approach. Notice that when we ask for a goal ?G(u), u is a variable to be instantiated, ie a type 2 variable. So we have these variables anyway, and we prefer to develop a systematic way of dealing with them.

To explain the rôle of the two types of variables, consider the following classical Horn clause database and query:

\begin{matrix}A(x, y) → B(x, y) & ?B(u, u) \\ A(a, a) \end{matrix}

This means “Find an instantiation u_{0} of u such that ∀x, y[A(x, y) → B(x, y)] ∧ A(a, a) ⊢ B(u_{0}, u_{0}). there is no reason why we cannot allow for the following

\begin{matrix}A(u, y) → B(x, u) & ?B(u, u) \\ A(a, a) \end{matrix}

In this case we want to find a u_{0} such that

∀x, y[A(u_{0}, y) → B(x, u_{0})] ∧ A(a, a) ⊢ B(u_{0}, u_{0})

or to show

⊢ ∃u{[∀x, y[A(u, y) → B(x, u)] ∧ A(a, a) → B(u, u)]}

u is called type 2 (Skolem) variable and x, y are universal type 1 variables. Given a database and a query of the form Δ(x, y, u)?Q(u), success means ⊢ ∃u[∀x, yΔ(x, y, u) → Q(u)].

[figure: x_{1}; x_{2}; t] Figure 13.3:

The next sequence of definitions will develop the syntax of the Temporal Horn Clause fragment. A lot depends on the flow of time. We will give a general definition, (definition 13.3.3 below), which includes the following connectives:

□ Always

F It will be the case

P It was the case

G It will always be the case (not including now)

H It has always been the case (up to now and not including now)

O Next moment of time (in particular it implies that such a moment of time exists)

⊗ Previous moment of time (in particular it implies that such a moment of time exists).

Later on we will also deal with S (Since) and U (Until).

The flows of time involved are mainly three.

• General partial orders (T, <).

• Linear orders

• The integers or the natural numbers.

The logic and theorem provers involved, even for the same connectives, are different for different partial orders. Thus the reader should be careful to note in which flow of time we are operating. Usually the connectives O and ⊗ assume we are working in the flow of time of integers.

Having fixed a flow of time (T, <), the Temporal Fragment will generate finite configurations of points of time according to the information available to it. These are denoted by (ρ, <). We are supposed to have ρ ⊆ T (more precisely ρ will be homomorphic into T), and the ordering on ρ be the same as the ordering on T. The situation gets a bit complicated if we have a new point s and we do not know where it is supposed to be in relation to known points. We will need to consider all possibilities. Which possibilities do arise depend on (T, <), the background flow of time we are working with. Again we should watch for variations in the sequel.

Definition 13.3.1 Let (ρ, <) be a finite partial order. Let t ∈ ρ and let s be a new point. Let ρ′ = ρ ∪ {s}, and let <′ be a partial order on ρ′. Then (ρ′, <, t) is said to be a (one new point) future (respectively past) configuration of (ρ, <, t) iff t <′ s (respectively s <′ t) and ∀xy ∈ ρ(x < y ↔ x <′ y).

Example 13.3.2 Consider a general partial flow (T, <) and consider the subflow (ρ, <): The possible future configurations (relative to T, <)) of one additional point s are in figure 13.4:

For a finite (ρ, <) there is a finite number of future and past non-isomorphic configurations. This finite number is exponential in the size of ρ. So in the general case without simplifying assumptions we will have an intractable exponential computation. A configuration gives all possibilities of putting a point in the future or past.

[figure: x_{2}; x_{1}; s; t; x_{2}; x_{1}; s; t; x_{1}; x_{2}; s; s; t; x_{2}; s; t; x_{1}; x_{1}; s; s; s; t; x_{2}; s; t; x_{2}; x_{1}; s; t; x_{2}; x_{1}; x_{1}; x_{2}; t] Figure 13.4:

In case of an ordering in which a next element or a previous element exists (like t + 1 and t − 1 in the integers) the possiblilities for configurations are different. In this case we must assume that we know the exact distance between the elements of (ρ, <).

For example in the configuration {t < x_{1}, t < x_{2}} of figure 13.3above we may have the further following information (see Fig 13.4) as part of the configuration:

t = ⊗^{18}x_{1}
t = ⊗^{6}x_{2}

so that we have only a finite number of possiblities for putting s in.

Note that although ⊗ operates on propositions, it can also be used to operate on points of time, denoting the predecessor function.

Definition 13.3.3 Consider a Temporal Fragment with the following connectives and predicates:

1. Atomic predicates.

2. Function symbols and constants

3. Two types of variables:

Universal variables (Type 1) V = {x_{1}, y_{1}, z_{1}, x_{2}, y_{2}, z_{2}, …} and Skolem variables (Type 2) U = {u_{1}, v_{1}, u_{2}, v_{2}, …}.

4. The connectives ∧, →, ∨, F, P, O, ⊗, □ and ¬.

F A reads: it will be the case that A.
P A reads: it was the case that A.
OA reads: A is true tomorrow (if a tomorrow exists, if tomorrow does not exist

then it is false).

⊗A reads: A was true yesterday (if yesterday does not exist

then it is false).

¬:  represents negation by failure.

We define now the notions of an Ordinary Clause, an Always Clause, a Body, a Head and a Goal.

1. A Clause is either an always clause or an ordinary clause.

2. An Always Clause has the form □A, where A is an ordinary clause.

3. An Ordinary Clause is a Head or an A → H, where A is a body and H is a Head.

4. A Head is either an atomic formula or an F A or a P A or an OA or an ⊗A where A is a finite conjunction of ordinary clauses.

5. A Body is either an atomic formula or an F A or a P A or an OA or an ⊗A or ¬A or a conjunction of bodies where A is a body.

6. A Goal is a body whose variables are all Skolem variables.

7. A disjunction of goals is also a goal.

Remark 13.3.4 Definition 13.3.3 included all possible temporal connectives. In practice different systems may contain only some of these connectives. For example a modal system may contain only ♢ (corresponding to F) and □. A future discrete system may contain only O and F etc.

Depending on the system and the flow of time, the dependencies between the connectives change. For example we have the equivalence

□(a → Ob) and □(⊗a → b)

whenever both ⊗a and Ob are meaningful.

Definition 13.3.5 Let (T, <) be a flow of time. Let (ρ, <) be a finite partial order. A labelled temporal database is a set of labelled ordinary clauses of the form (t_{i} : A_{i}), t ∈ ρ and always clauses of the form □A_{i}, A_{i} a clause. A labelled goal has the form t : G, where G is a goal.

Δ is said to be a labelled temporal database over (T, <) if (ρ, <) is homomorphic into (T, <).

Definition 13.3.6 We now define the computation procedure for the temporal prolog for the language of definitions 13.3.3 and 13.3.5. We assume a flow of time (T, <). ρ ⊆ T is a finite set of points of time involved so far in the computation. The exact computation steps depend on the flow of time. It is different for branching, discrete linear etc. We will give the definition for linear time, though not necessarily discrete. Thus the meaning of OA in this logic is that there exists a next moment and A is true at this next moment. Similarly for ⊗A. ⊗A reads there exists a previous moment and A was true at that previous moment.

We define the success predicate S(ρ, <, Δ, G, t, G_{0}, t_{0}, Θ) where t ∈ ρ, (ρ, <) is a finite partial order and Δ is a set of labelled clauses (t : A), t ∈ ρ.

S(ρ, <, Δ, G, t, G_{0}, t_{0}, Θ) reads: The labelled goal t : G succeeds from Δ under the substitution Θ to all the type 2 variables of G and Δ in the computation with starting labelled goal t_{0} : G_{0}.

When Θ is known, we write S(ρ, <, Δ, G, t, G_{0}, t_{0}) only.

We define the simultaneous success and the failure of a set Π of metapredicates of the form S(ρ, <, Δ, G, t, G_{0}, t_{0}) under a substitution Θ to type 2 variables. To explain intuitive the meaning of success or failure, assume first that Θ is a substitution which grounds all the Skolem type 2 variables. In this case (Π, Θ) succeeds if by definition all S(ρ, <, Δ, G, t, G_{0}, t_{0}, Θ) ∈ Π succeed and (Π, Θ) fails if at least one of S ∈ Π fails. The success or failure of S for a Θ as above has to be defined recursively. For a general Θ, (Π, Θ) succeeds, if for some Θ′ such that ΘΘ′ grounds all type 2 variables (Π, ΘΘ′) succeeds. (Π, Θ) fails if for all Θ′ such that ΘΘ′ grounds all type 2 variables we have that (Π, ΘΘ′) fails. We need to give recursive procedures for the computation of the success and failure of (Π, Θ). In the case of the recursion, a given (Π, Θ) will be changed to a (Π′, Θ′) by taking S(ρ, <, Δ, G, t, G_{0}, t_{0}) ∈ Π and replacing it by S(ρ′, <′, Δ′, G′, t′, G_{0}, t_{0}). We will have several such changes and thus get several Π′ by replacing several S’s in Π. We write the several possibilities as (Π′_{i}, Θ′_{i}). If we write (Π, Θ) to mean (Π, Θ) succeeds and ∼ (Π, Θ) to read (Π, Θ) fails, then our recursive computation rules have the form: (Π, Θ) succeeds (or fails) if some boolean combination of (Π′_{i}, Θ′_{i}) succeed (or fail). The rules allow us to pick an element in Π, eg S(ρ, <, Δ, G, t, G_{0}, t_{0}) and replace it with one or more elements to obtain the different (Π′_{i}, Θ′_{i}), where Θ′_{i} is obtained from Θ. In case of failure we require that Θ grounds all type 2 variables. We do not define failure for a nongrounding Θ.

To summarise the general structure of the rules is: (Π, Θ) succeeds (or fails) if some boolean combination of the successes and failures of some (Π′_{i}, Θ′_{i}) holds and (Π, Θ) and (Π′_{i}, Θ′_{i}) are related according to one of the following cases:

I If Π = ∅ then (Π, Θ) succeeds, (ie the boolean combination of (Π_{i}, Θ_{i}) is truth.

II (Π, Θ) fails if for some S(ρ, <, Δ, G, t, G_{0}, t_{0}) in Π we have G is atomic and for all □(A → H) ∈ Δ and for all (t : A → H) ∈ Δ, HΘ does not unify with GΘ. Further, for all Ω and s such that t = Ωs and for all s : A → ΩH and all □(A → ΩH) we have HΘ does not unify with GΘ, where Ω is a sequence of O and ⊗.

Remark 13.3.7 We must qualify the conditions of the notion of failure. If we have a goal t : G, with G atomic, we know for sure that t : G finitely fails under a substitution Θ, if GΘ cannot unify with any head of a clause. This is what the condition above says. What are the candidates for unification? These are either clauses of the form t : A → H, with H atomic or □(A → H), with H atomic.

Do we have to consider the case where H is not atomic? The answer depends on the flow of time and on the configuration (ρ, <) we are dealing with. If we have eg t : A → F G then if A → F G is true at t, G would be true (if at all ) in some s, t < s. This s is irrelevant to our query ?t : G. Even if we have t′ < t and t′ : A → F G and A true at t′, we still can ignore this clause because we are not assured that any s such that t′ < s and G true at s would be the desired t (ie t = s).

The only case we have to worry about is when the flow of time and the configuration are such that we have for example t′ : A → O^{5}G and t = O^{5}t′.

In this case we must add the following clause to the notion of failure:

For every s such that t = O^{n}s and every s : A → O^{n}H, GΘ and HΘ do not unify.

We also have to check what happens in the case of always clauses.

Consider an integer flow of time and the clause □(A → O^{5} ⊗^{27} H), This true at the point s = ⊗^{5}O^{27}t and hence for failure we need that GΘ does not unify with HΘ.

The above explains the additional condition on failure.

The following conditions (1) - (10), (12) - (13) relate to the success of (Π, Θ) if (Π′_{i}, Θ′_{i}) succeed. Condition (11) uses the notion of failure, to give the success of negation by failure. Conditions (1)-(10), (12)-(13) give certain alternatives for success. They give failure if each one of these alternatives end up in failure.

1. Success rule for atomic query:

S(ρ, <, Δ, G, t, G_{0}, t_{0}) ∈ Π and G is atomic and for some head H, (t : H) ∈ Δ and for some substitutions Θ_{1} to the universal variables of H and Θ_{2} to the existential variables of H and G we have HΘ_{1}ΘΘ_{2} = GΘΘ_{2} and Π′ = Π − {S(ρ, <, Δ, G, t, G_{0}, t_{o})} and Θ′ = ΘΘ_{2}.

2. Computation rule for atomic query:

S(ρ, <, Δ, G, t, G_{0}, t_{o}) ∈ Π and G is atomic and for some (t : A → H) ∈ Δ or for some □(A → H) ∈ Δ and for some Θ_{1}, Θ_{2}, we have HΘ_{1}ΘΘ_{2} = GΘΘ_{2} and Π′ = (Π − {{S(ρ, <, Δ, G, t, G_{0}, t_{o})}) ∪ {S(ρ, <, Δ, AΘ_{1}, t, G_{0}, t_{o})} and Θ′ = ΘΘ_{2}.

The above rules dealt with the atomic case. Rules (3), (4) and (4*) deal with the case the goal is F G. The meaning of (3), (4) and (4*) is the following: we ask F G at t. How can we be sure that F G is true at t? There are two possibilities, (a) and (b)

(a) We have t < s and at s : G succeeds. This is rule (3). t′ t \overline{}Figure 13.5:

(b) Assume that we have the fact that A → F B is true at t. We ask for A and succeed and hence F B is true at t. Thus there should exist a point s′ in the future of t where B is true. Where can s′ be? We don’t know where s′ is in the future of t. So we consider all future configurations for s′. This gives us all future possibilities where s′ can be. We assume for each of these possibilities that B is true at s′ and check whether either G follows at s′ or F G follows at s′. If we find that for all future constellations of where s′ can be G ∨ F G succeeds in s′ from B, then F G holds at t. Here we use the transitivity of <. (4a) gives the possibilities where s′ is an old point s in the future of t. (4b) gives the possibilities where s′ is a new point forming a new configuration. Success is needed from all possibilities.

3. Immediate rule for F:

S(ρ, <, Δ, F G, t, G_{0}, t_{o}) ∈ Π and for some s ∈ ρ such that t < s we have Π′ = (Π − {S(ρ, < , Δ, F G, t, G_{0}, t_{o})}) ∪ {S(ρ, <, Δ, G, s, G_{0}, t_{o})} and Θ′ = Θ.

4. First configuration rule for F:

S(ρ, <, Δ, F G, t, G_{0}, t_{o}) ∈ Π and some (t : A → F ∧_{j} B_{j}) ∈ Δ and some Θ_{1}, Θ_{2} we have both (a) and (b) below are true. A may not appear in which case we pretend A = truth.

(a) For all s ∈ ρ, such that t < s we have that Π′_{s} = (Π − {S(ρ, <, Δ, F G, t, G_{0}, t_{0})}) ∪ {S(ρ, <, Δ, EΘ_{1}, t, G_{0}, t_{0})} ∪ {S(ρ, <, Δ ∪ {(s : B_{j}Θ_{1}) | j = 1, 2, …}, D, s, G_{0}, t_{0}} succeeds with Θ′_{s} = ΘΘ_{2} and D = G ∨ F G and E = A.

(b) For all future configurations of (ρ, <, t) with a new letter s, denoted by the form (ρ_{s}, <_{s}) we have that Π′_{s} = (Π−{S(ρ, <, Δ, F G, t, G_{0}, t_{o}})∪{S(ρ, <, Δ, EΘ_{1}, t, G_{0}, t_{o})}∪{S(ρ_{s}, <_{s}, Δ∪{(s : B_{j}) | j = 1, 2, …}, D, s, G_{0}, t_{0})} succeeds with Θ′_{s} = ΘΘ_{2} and D = G ∨ F G and E = A.

The reader should note that conditions (3), (4a) and (4b) are needed only when the flow of time has some special properties. To explain by example, assume we have the configuration and Δ = {t : A → F B, t′ : C} as data and our query is ?t : F G.

Then according to rules (3), (4) we have to check and succeed in all the following cases:

1. From rule (3) we check {t′ : C, t : A → F B}?t′ : G

2. From rule (4a) we check{t′ : C, t : A → F B, t′ : B}?t′ : G

3. From rule (4b) we check {t′ : C, t : A → F B, s : B}?s : G

for the three configurations below

If time is linear configuration 3.3 does not arise and we are essentially checking 3.1, 3.2 and the case 4a corresponding to t′ = s.

If we do not have any special properties of time, success in case 3.2 is required. Since we must succeed in all cases and 3.2 is the case with least assumptions, it is enough to check 3.2 alone.

Thus for the case of no special properties of the flow of time, case 4 can be replaced by case 4 general below:

4 general. S(ρ, <, Δ, F G, t, G_{0}, t_{0}) ∈ Π and for the future configuration (ρ_{1}, <_{1}) defined as ρ_{1} = ρ ∪ {s} and <_{1}=< ∪{t < s}, s a new letter we have that: Π′s = (Π − {S(ρ, < , Δ, F G, t, G_{0}, t_{0})}∪{S(ρ, <, Δ, EΘ_{1}, t, G_{0}, t_{0})}∪{S(ρ_{1}, <_{1}, Δ∪{(s : B_{j}) | j = 1, 2, …}, D, s, G_{0}, t_{0})}

succeeds with Θ′_{s} = ΘΘ_{1} and D = G ∨ F G and E = A.

[figure: t′; t; s; t′; t; t′; s; t; s; 3.2; 3.1]Figure 13.6:

4*. 2nd Configuration rule for F:

For some S(ρ, <, Δ, F G, t, G_{0}, t_{0}) and some □(A → F ∧_{j} B_{j}) ∈ Δ and some Θ_{1}Θ_{2} we have both cases 4a and 4b above true with E = A ∨ F A and D = G ∨ F G.

4*general Similar to (4 general) for the case of general flow.

This is the the mirror image of (3) with “P G” replacing “F G” and “s < t” replacing “t < s”.

6; 6* This is the mirror image of (4) and (4*) with “P G” replacing “F G”, “s < t” replacing “t < s” and “past configuration” replacing “future configuration”.

6 general This is the image of (4 general).

We give now the computation rules (7)-(10) for O and ⊗ for orderings in which a next point and/or previous points exist. If t ∈ T has a next point we denote this point by s = Ot. If it has a previous point we denote it by s = ⊗t. For example, if (T, <) is the integers then Ot = t + 1 and +t = t − 1. If (T, <) is a tree then ⊗t always exists, except at the root, but Ot may or may not exist. For the sake of simplicity we must assume that if we have O or ⊗ in the language then Ot or ⊗t always exist. Otherwise we can sneak negation in by putting (t : OA) ∈ Δ when Ot does not exist!

7. Immediate rule for O:

S(ρ, <, Δ, OG, t, G_{0}, t_{o}) ∈ Π and Ot exists and Ot ∈ ρ and Θ′ = Θ and Π′ = (Π − {S(ρ, < , Δ, OG, t, G_{0}, t_{o})} ∪ {S(ρ, <, Δ, G, Ot, G_{0}, t_{o})}

8. Configuration rule for O:

S(ρ, <, Δ, OG, t, G_{0}, t_{o}) ∈ Π and some Θ_{1}, Θ_{2} some (t : A → O ∧_{j} B_{j}) ∈ Δ and Π′ = (Π − {S(ρ, <, Δ, OG, t, G_{0}, t_{o})} ∪ {S(ρ, <, Δ, AΘ_{1}, t, G_{0}, t_{o})} ∪ ∪{S(ρ ∪ {Ot}, <′, Δ ∪ {(Ot : B_{j})}, G, Ot, G_{0}, t_{0})} succeeds with Θ′ = ΘΘ_{2}, and <′ is the appropriate ordering closure of < ∪{(t, Ot)}

Notice that case 8 is parallel to case 4. We do not need 8a and 8b because of Ot ∈ ρ then what would be case (8b) becomes (7).

9. The mirror image of (7) with “⊗” replacing “O”.

10. The mirror image of (8) with “⊗” replacing “O”.

11. Negation as failure rule:

S(ρ, <, Δ, ¬G, t, G_{0}, t_{0}) ∈ Π and Θ grounds every type 2 variable and the computation for success of S(ρ, <, Δ, G, t, Θ) ends up in failure.

12. Disjunction rule:

S(ρ, <, Δ, G_{1} ∨ G_{2}, t, G_{0}, t_{o}) ∈ Π and Π′ = (Π − {S(ρ, <, Δ, G_{1} ∨ G_{2}, t, G_{0}, t_{o})}) ∪ {S(ρ, < , Δ, G_{i}, t, G_{0}, t_{o})} and Θ′ = Θ and i ∈ {1, 2}.

13. Conjunction rule:

S(ρ, <, Δ, G_{1} ∧ G_{2}, t, G_{0}, t_{o}) ∈ Π and Π′ = (Π − {S(ρ, <, Δ, G_{1} ∧ G_{2}, t, G_{0}, t_{o})}) ∪ {S(ρ, < , Δ, G_{i}, t, G_{0}, t_{o}) | i ∈ {1, 2}}

14. Restart Rule S(ρ, <, Δ, G, t, G_{0}, t_{o}) ∈ Π and Π′ = (Π−{S(ρ, <, Δ, G, t, G_{0}, t_{o})})∪{S(ρ, <, Δ, G_{1}, t_{0}, G_{0}, t_{0})} where G_{1} is obtained from G_{0} by substituting completely new type 2 variables u′_{i} for the type 2 variables u_{i} of G_{0}, and where Θ′ extends Θ by giving Θ′(u′_{i}) = u′_{i} for the new variables u′_{i}.

15. To Start the Computation: Given Δ and t_{0} : G_{0} and a flow (T, <), we start the computation with Π = {S(ρ, < , Δ, G_{0}, t_{0}, G_{0}, t_{0})}, where (ρ, <) is the configuratin associated with Δ, over (T, <) (definition D3).

Let us check some examples

Example 13.3.8 Data:

1. t : a → F b

2. □(b → F c)

3. t : a

Query: ?t : F c Configuration: {t} Using rule (4*) we create a future s with t < s and ask the two queries: (the notation A?B

means that we add A to the data (1), (2), (3) and ask ?B).

4. ?t : C ∨ F b and

5. s : c?s : c ∨ F c

(5) succeeds and (4) splits into two queries by rule (4).

6. ?t : a and

7. s′ : b?s′ : b.

The above computation is the same as the one in figure 3 of part 1 of this paper. The only difference is that since our data are labelled we do not have to keep copying the database. More significant differences will show in the next example.

Example 13.3.9 Data:

(1) t : F A

(2) t : F B [figure: t; s_{2}; s_{1}] Figure 13.7:

Query: t : F φ where φ = (A ∧ B) ∨ (A ∧ F B) ∨ (B ∧ F A).

The query will fail in any flow of time in which the future is not linear. The purpose of this example is to examine what happens when time is linear. Using (1) we introduce a point s, with s : A and query from s the following:

?s : φ ∨ F φ

If we do not use the restart rule, the query will fail. Now that we are at a point s there is no way to go back to t. We therefore cannot reason that we also have a point s′ : B and t < s and t < s′ and that because of linearity either s = s′ or s < s′ or s′ < s. However, if we are allowed to restart, we can continue and ask t : F φ and now use the clause t : F B to introduce s′. We now reason using linearity in rule (4) that the configurations are

either t < s < s′
or  t < s′ < s
or  t < s = s′.

and φ succeeds at t for each configuration.

The reader should note the reason for the need to use the restart rule. When time is just a partial order, the two assumptions t : F A and t : F B do not interact. Thus when asking t : F C, we know that there are two points s_{1} : A and s_{2} : B, see figure 13.7.

and C can be true in either one of them. s_{1} : A has no influence on s_{2} : B. When conditions on time (such as linearity) are introduced, s_{1} does influence s_{2} and hence we must introduce both at the same time. When one does forward deduction one can introduce both s_{1} and s_{2} going forward. The backward rules do not allow for that. That is why we need the restart rule. When we restart, we keep all that has been done (with, for example s_{1}) and have the opportunity to restart with s_{2}. The restart rule can be used to solve the linearity problem for classical logic only. Its side effect is that it turns intuitionistic logic into classical logic, see my paper on N-Prolog. In theorem proving based on intuitionistic logic where disjunctions are allowed, forward reasoning cannot be avoided. See next example.

It is instructive to translate the above into Horn Clause logic and see what happens there.

Example 13.3.10 1. t : F A translates into (∃s_{1} > t)A^{∗}(s_{1})

2. t : F B translates into (∃s_{2} > t)A^{∗}(s_{2}). The query translates into the formula ψ(t): ψ = ∃s > t[A^{∗}(s) ∧ B^{∗}(s)] ∨ ∃s_{1} > t[A^{∗}(s_{1}) ∧ ∃s_{2} > s_{1}B^{∗}(s_{2})] ∨ ∃s_{2} > t[B^{∗}(s_{2}) ∧ ∧∃s_{1} > s_{2}A^{∗}(s_{2})] which is equivalent to the disjunction of

(a) [t < s ∧ A^{∗}(s) ∧ B^{∗}(s)]

(b) t < s_{1} ∧ s_{1} < s_{2} ∧ A^{∗}(s_{1}) ∧ B^{∗}(s_{2})

(c) t < s_{1} ∧ s_{2} < s_{1} ∧ A^{∗}(s_{1}) ∧ B^{∗}(s_{2}).

all of (a), (b), (c) fail from the data, unless we add to the data the disjunction

∀xy(x < y ∨ x = y ∨ y < x)

Since this is not a Horn Clause, we are unable to express it in the database.

This means that we can handle properties of time which are not necessarily expressible by an object language formula of the logic. In some cases (finiteness of time) because they are not first order, in other cases (irreflexivity) because there is no corresponding formula (axiom) and in other cases because of syntactical restrictions (linearity).

We can now make clear our classical versus intuitionistic distinction. If the underlying logic is classical then we are checking whether Δ ⊢ ψ in classical logic. If our underlying logic is intuitionistic, then we are checking whether Δ ⊢ ψ in intuitionistic logic where Δ and ψ are defined below:

Δ is the translation of the data together with the axioms for linear ordering namely, the conjunction of:

1. ∃s_{1} > tA^{∗}(s_{1})

2. ∃s_{2} > tB^{∗}(s_{2})

3. ∀xy(x < y ∨ x = y ∨ y < x)

4. ∀x∃y(x < y)

5. ∀x∃y(y < x)

6. ∀xyz(x < y ∧ y < z → x < z)

7. ∀x¬(x < x).

ψ is the translation of the query as given above.

The computation of example 13.3.9, using restart, answers the question Δ ⊢?ψ in classical logic. To answer the question Δ ⊢?ψ in intuitionistic logic we cannot use restart, we must use forward rules as well.

Example 13.3.11 Example 13.3.9 for the case that the underlying logic is intuitionistic. Data and Query as in Example 13.3.9.

Going forward, we get:

(3) s : A from (1)
(4) s′ : B from (2)

By linearity, either

t < s < s′
or t < s′ < s
or t < s = s′

ψ will succeed for each case.

Our language does not allow us to ask queries of the form □G(x), where x are all universal variables (ie ∀x□G(x)). However such queries can be computed from a database Δ. The only way to get always information out of Δ for a general flow of time is via the always clauses in the database. Always clauses are true everywhere, so if we want to know what else is true everywhere, we ask it from the always clauses: Thus to ask:

?□G(x), x a universal variable.

we first skolemise and then ask

{X, □X | □X ∈ Δ}?G(c)

where c is a Skolem constant.

We can add a new rule to definition 13.3.6:

(15) Always Rule S(ρ, <, Δ, □G, t, G_{0}, t_{0}) ∈ Π and Π′ = (Π−{S(ρ, <, Δ, □G, t, G_{0}, t_{0})})∪{S({s}, ∅, Δ′, G′, s, g′, s)} where s is a completely new point and G′ is obtained from G by substituting new Skolem constants for all the universal variables of G and

Δ′ = {B, □B | □B ∈ Δ}.

We can use (15) to add another clause to the computation of Definition D4, namely

(16) S(ρ<, Δ, F (A ∧ B), t, G_{0}, t_{0}) ∈ Π and Π′ = (Π − {S(ρ, <, Δ, F (A ∧ B), t, G_{0}, t_{0})}) ∪ {S(ρ, <, Δ, F A, t, G_{0}, t_{0}), S(ρ, <, Δ, □B, t, G_{0}, t_{0})}

Example 13.3.12

Data  Query  Configuration
□a t : F (a ∧ b) {t}
t : F b

First Computation. Create s, t < s and get

Data Query Configuration
□a s : a ∧ b t < s

t : F b s : b

s : b succeeds from the data. s : a succeeds by rule 2, definition 13.3.6.

Second Computation Use rule 16. Since ?□a succeeds ask for F b and proceed as in the first computation.

13.4 Different flows of time

We now check the effect of different flows of time on our logical deduction (computation). We consider a typical example:

Example 13.4.1

Data Query Configuration
t : F F A ?t : F A {t}

The possible world flow is a general binary relation.

We create by rule (4b) of definition 13.3.6, a future configuration t < s and add to the database s : F A we get:

Data Query Configuration
t : F F A ?t : F A t < s

s : F A Again we apply rule (4a) of definition 13.3.6 and get the new configuration with s < s′ and the

new item of data s′ : A. We get

Data Query Configuration
t : F F A ?t : F A t < s
s : F A  s < s′
s′ : A

whether or not we can proceed from here depends on the flow of time. If < is transitive, then t < s′ holds and we can get t : F A in the data by rule 3.

Actually by rule (4*) we could have proceeded along the following sequence of deduction. Rule (4*) is especially geared for transitivity.

Data Query Configuration
t : F F A t : F A t

using rule (4*) we get

Data Query Configuration
t : F F A s : F A ∨ F F A t < s

s : F A The first disjunct of the query succeeds.

If < is not transitive, rule 3 does not apply, since t < s′ does not hold.

Supose our query were ?t : F F F A.

If < is reflexive then we can succeed with ?t : F F F A because t < t.

If < is dense (ie ∀xy(x < y → ∃z(x < z ∧ z < y)) we should also succeed because we can create a point z with t < z < s.

z : F F A will succeed and hence t : F F F A will also succeed.

Here we encounter a new rule (density rule), whereby points can always be “landed” between existing points in a configuration.

We now address the flow of time of the type natural numbers, {1, 2, 3, 4, …}. This has the special property that it is generated by a function symbol s.

{1, s(1), ss(1) …}.

Example 13.4.2

Data  Query  Configuration
□(q → Oq) 1 : F (p ∧ q) {1}
1 : Oq
1 : F p

If time is the natural numbers, the query should succeed from the data. If time is not the natural numbers but, for example {1, 2, 3, … w, w + 1, w + 2, …} then the query should fail.

How do we represent the fact that time is the natural numbers in our computation rule? What is needed is the ability to do some induction. We can use rule (4b) and introduce a point t with 1 < t into the configuration and even say that t = n, for some n. We thus get:

Data Query Configuration
□(q → Oq) 1 : F (p ∧ q) 1 < n
1 : Oq
1 : F p
n : p

Somehow we want to derive n : q from the first two assumptions. The key reason for the success of F (p ∧ q) is the success of □q from the first two assumptions. We need an induction axiom on the flow of time.

To get a clue as to what to do, let us see what Horn Clause logic would do with the translations of the data and goal.

Translated Data ∀t[1 ≤ t ∧ Q^{∗}(t) → Q^{∗}(t + 1)] Q^{∗}(1) ∃tP^{∗}(t)

Translated Query ∃t(P^{∗}(t) ∧ Q^{∗}(t))

After we skolemise, the database becomes:

1. 1 ≤ t ∧ Q^{∗}(t) → Q^{∗}(t + 1)

2. Q^{∗}(1)

3. P^{∗}(c)

and the query is

P^{∗}(s) ∧ Q^{∗}(s)

We proceed by letting s = c. We ask Q^{∗}(c) and have to ask after a slightly generalised form of unification ?1 ≤ c ∧ Q^{∗}(c − 1).

Obviously this will lead nowhere without an induction axiom. The induction axiom should be that for any predicate P RED P RED(1) ∧ ∀x[1 ≤ x ∧ P RED(x) → P RED(x + 1)] → ∀xP RED(x) written in Horn clause form this becomes:

∃x∀y[P RED(1) ∧ [1 ≤ x ∧ P RED(x) → P RED(x + 1)] → P RED(y)].

Skolemising gives us

4. P RED(1) ∧ (1 ≤ d ∧ P RED(d) → P RED(d + 1)) → P RED(y)

d is a skolem constant.

Let us now ask the query P^{∗}(s)∧Q^{∗}(s) from the database with (1)-(4). We unify with clause (3) and ask Q^{∗}(c). We unify with clause (4) and ask Q^{∗}(1) which succeeds and ask for the implication

?1 ≤ d ∧ Q^{∗}(d) → Q^{∗}(d + 1)

This should succeed since it is a special case of clause (1) for t = d.

The above shows that we need to add an induction axiom of the form

Ox ∧ □(x → Ox) → □x

Imagine that we are at time t, and assume t′ < t. If A is true at t′ and □(A → OA) is true, then A is true at t.

We thus need the following rule:

(18) Induction Rule:

t : F (A ∧ B) succeeds from Δ at a certain configuration if the following conditions all hold.

1. t : F B suceed.

2. For some s < t, s : A succeeds.

3. m : OA succeeds from the database Δ′, where Δ′ = {X, □X | □X ∈ Δ} ∪ {A} and m is a completely new time point and the new configuration is {m}.

The above shows how to compute when time is the natural numbers. This is not the best way of doing it. In fact, the characteristic feature involved here is that the ordering of the flow of time is a Herbrand universe generated by a finite set of function symbols. F A is read as “A is true at a point generated by the function symbols”. This property requires a special study. See our Metatem paper, Barringer 1989.

13.5 A theorem prover for modal and temporal logics

This section will briefly indicate how our temporal Horn clause computation can be extended to be an automated deduction system for full modal and temporal logic. We present computation rules for propositional temporal logic with F, P, O, ⊗, ∧ → and ⊥. We approach predicate logic in a subsequent paper as it is relatively complex. The presentation will be intuitive:

Definition 13.5.1 We define the notions of a Full Clause, a Body and a Head.

(a) A Full Clause is either an atom q or ⊥ or B → H, or H where B is a body and H is a head.

(b) A Body is a conjunction of full clauses.

(c) a Head is either an atom q or ⊥ or F H or P H or OH or ⊗H, where H is a body.

Notice that negation by failure is not allowed. We used the connectives ∧, →, ⊥. The other connectives, ∨ and ∼ are definable in the usual way ∼ A = A → ⊥ and A ∨ B = (A → ⊥) → B. The reader can show that every formula of the language with the connectives {∼, ∧, ∨, F, G, P, H}is equivalent to a conjunction of full clauses. We use the following equivalences:

A → (B ∧ C) = (A → B) ∧ (A → C)

A → (B → C) = A ∧ B → C
GA = F (A → ⊥) → ⊥
HA = P (A → ⊥) → ⊥

Definition 13.5.2 A database is a set of labelled full clauses of the form (Δ, ρ, <), where ρ = {t | t : A ∈ Δ, for some A}. A query is a labelled full clause.

Definition 13.5.3 The following is a definition of the predicate S(ρ, <, Δ, G, t, G_{0}, t_{0}), which reads: The labelled goal t : G succeeds from (Δ, ρ, <) with parameter (initial goal) t_{0}, G_{0}.

1(a) S(ρ, <, Δ, q, t, G_{0}, t_{0}) for q atomic or ⊥ if for some t : A → q, S(ρ, <,Δ, A, t, G_{0}, t_{0}).

(b) If t : q ∈ Δ or s : ⊥ ∈ Δ then S(ρ, <, Δ, q, t, G_{0}, t_{0}).

(c) S(ρ, <, Δ, ⊥, t, G_{0}, t_{0}) if S(ρ, <, Δ, ⊥, s, G_{0}, t_{0}).

This rule says that we can get a contradiction from any label, it would be considered a contradiction of the whole system.

2. S(ρ, <, Δ, G, t, G_{0}, t_{0}) if for some s : A → ⊥, S(ρ, <, Δ, A, s, G_{0}, t_{0}).

3. S(ρ, <, Δ, t, F G, G_{0}, t_{0}) if for some s ∈ ρ, t < s and S(ρ, <, Δ, G, s, G_{0}, t_{0}).

4. S(ρ, <, Δ, F G, t, G_{0}, t_{0}) if for some t : A → F B ∈ Δ we have both (a) and (b) below hold true:

(a) for all s ∈ ρ such that t < s we have S(ρ, <, Δ^{∗}, s, D, G_{0}, t_{0}) and S(ρ, <, Δ, E, t, G_{0}, t_{0}) hold, where Δ^{∗} = Δ ∪ {s : B} and D ∈ {G, F G} and E ∈ {A, F A}. Note: The choice of D and E is made here for the case of transitive time. In modal logic, where < is not necessarily transitive, we take D = G, E = A. Other conditions on < correspond to different choices of D and E.

(b) For all future configurations of (ρ, <, t) with a new letter s, denoted by (ρ_{s}, <_{s}) we have S(ρ_{s}, <_{s}, Δ^{∗}, s, D, G_{0}, t_{0}) and S(ρ_{s}, <_{s}, Δ, E, t, G_{0}, t_{0}) hold, where Δ^{∗}, E, D are as in (a).

5. This is the mirror image of (3).

6. This is the mirror image of (4).

7(a) S(ρ, <, Δ, A_{1} ∧ A_{2}, t, G_{0}, t_{0}) if both S(ρ, <, Δ, A_{i}, t, G_{0}, t_{0}) hold for i = 1, 2

(b) S(ρ, <, Δ, A → B, t, G_{0}, t_{0}) if S(ρ, <, Δ ∪ {t : A}, B, t, G_{0}, t_{0}).

8. Restart Rule S(ρ, <, Δ, G, t, G_{0}, t_{0}) if S(ρ, <, Δ, G_{0}, t_{0}, G_{0}, t_{0})).

If the language contains O and ⊗ then the following are the relevant rules.

9. S(ρ, <, Δ, OG, t, G_{0}, t_{0}) if Ot exists and Ot ∈ ρ and S(ρ, <, Δ, G, Ot, G_{0}, t_{0}).

10. S(ρ, <, Δ, OG, t, G_{0}, t_{0}) if for some t : A → OB ∈ Δ both S(ρ, <, Δ, A, t, G_{0}, t_{0}) and S(ρ ∪ {Ot}, <′, Δ ∪ {Ot : B}, G, Ot, G_{0}, t_{0}) hold where <′ is the appropriate ordering closure of < ∪{t < Ot}

11. This is the mirror image of (9) for ⊗.

12. This is the mirror image of (10) for ⊗.

13.6. MODAL AND TEMPORAL HERBRAND UNIVERSES 369

Example 13.5.4 (Here □ can be either G or H.)

Data Query Configuration
1.  t : □a ?t : □b {t}
2. t : □(a → b)  t is a constant

Translation:

Data Query Configuration
1.  t : F (a → ⊥) → ⊥ t : F (b → ⊥) → ⊥ {t}
2. t : F ((a → b) → ⊥) → ⊥

Computation: The problem becomes

Additional Data  Current Query  Configuration
3.  t : F (b → ⊥)  ?t : ⊥  {t}
from 2  ?t_{0} : F ((a → b) → ⊥)

From (3) using ** create a new point s:

Additional Data Current Query Configuration
4.  s : b → ⊥ ?s : (a → b) → ⊥ t < s
add s : a → b to the database and ask
5. s : (a → b) ?s : ⊥

from (4) and (5) we ask:

?s : a

From computation rule (2) and clause 1 of the data we ask

?t : F (a → ⊥)

From computation rule (2) we ask

?s : a → ⊥

We add s : a to the data and ask:

Additional Data Current Query Configuration
6. s : a ?s : ⊥ t < s

The query succeeds.

13.6 Modal and temporal Herbrand universes

This section deals with the soundness of our computation rules. In conjunction with soundness it is useful to clarify the notion of modal and temporal Herbrand models. For simplicty we deal with temporal logic with P, F only and transitive irreflexive time or with modal logic with one modality ♢ and a general binary accessibliltiy relation <. We get our clues from some examples: Example 13.6.1 Consider the database

1. t : a → ♢b

2. □(b → c)

3. t : a The constellation is {t}.

If we translate the clauses into predicate logic we get:

1. a^{∗}(t) → ∃s > tb^{∗}(s)

2. ∀x[b^{∗}(x) → c^{∗}(x)] 3. a^{∗}(t)

Translated into Horn clauses we get after skolemising:

1.1 a^{∗}(t) → b^{∗}(s)

1.2 a^{∗}(t) → t < s

2 b^{∗}(x) → c^{∗}(x)

3 a^{∗}(t)

t, s are Skolem constants.

From this program, the queries

a^{∗}(t), ¬b^{∗}(t), ¬c^{∗}(t), ¬a(s), b(s), c^{∗}(s)

all succeed. ¬ is negation by failure.

It is easy to recognise that ¬a^{∗}(s) succeeds because there is no head which unifies with a^{∗}(s). The meaning of the query ¬a^{∗}(s) in terms of modalities is the query ♢¬a.

The question is how do we recognise syntactically what fails in the modal language? The heads of clauses can be whole databases and there is no immediate way of syntactically recognising which atoms are not heads of clauses.

Example 13.6.2 We consider a more complex example:

1. t : a → ♢b

2. □(b → c)

3. t : a

4. t : a → ♢d

We have added clause (4) to the database in the previous example. The translation of the first three clauses will proceed as before. We will get

1.1 a^{∗}(t) → c^{∗}(s)

1.2 a^{∗}(t) → t < s

2 b^{∗}(x) → c^{∗}(x)

3 a^{∗}(t)

We are now ready to translate clause 4. This should be translated like clause (1) into

4.1 a^{∗}(t) → d^{∗}(r)

4.2 a^{∗}(t) → t < r.

The above translation is correct if the set of possible world is just an ordering. Suppose we know further that in our modal logic the set of possible worlds is linearly ordered. Since t < s ∧ t < r → s = r ∨ s < r ∨ r < s, this fact must be reflected in the Horn clause database. The only way to do it is to add it as an integrity constraint.

Thus our temporal program translates into a Horn-clause program with integrity constraints. This will be true in the general case. Whether we need integrity constraints or not will depend

on the flow of time.

Let us begin by translating from the modal and temporal language into Horn clauses. The labelled wff t : A will be translated into a set of formulas of predicte logic denoted by Horn (t, A). Horn(t, A) is supposed to be logically equivalent to A. The basic translation of a labelled atomic predicate formula t : A(x_{1} … x_{n}) is A^{∗}(t, x_{1} … x_{n}). A^{∗} is a formula of a two sorted predicate logic where the first sort ranges over labels and the second sort over domain elements (of the world t).

Definition 13.6.3 Consider a temporal predicate language with connectives P and F, and ¬ for negation by failure.

Consider the notion of labelled temporal clauses, as defined in definition 13.3.3.

Let Horn(t, A) be a translation function associating with each labelled clause or goal a set of Horn clauses in the two sorted language described above. The letters t, s which appear in the translation are Skolem constants. They are assumed to be all different.

We assume that we are dealing with a general transitive flow of time. This is to simplify the translation. If time has extra conditions, ie linearity, additional integrity constraints may need to be added. If time is characterised by non-first order conditions, (eg finiteness) then an adequate translation into Horn clause logic may not be possible.

The following are the translation clauses:

1. Horn (t, A(x_{1} … x_{n})) = A^{∗}(t, x_{1} … x_{n}), for A atomic.

2. Horn (t, F A) = {t < s} ∪ Horn(s, A)

Horn (t, P A) = {s < t} ∪ Horn(s, A)

3. Horn (t, A ∧ B) = Horn(t, A) ∪ Horn(t, B)

4. Horn (t, ¬A) = ¬ ⋀ Horn(t, A)

5. Horn (t, A → F ⋀ B_{j}) = {⋀ Horn(t, A) → t < s} ∪ ⋃_{B_{j}}{⋀ Horn(s, A) ∧ C → D | (C → D) ∈ Horn(s, B_{j})}

6. Horn(t, A → P ⋀ B_{j}) = {⋀ Horn(t, A) → s < t} ∪ ⋃_{B_{j}}{⋀ Horn(s, A) ∧ C → D | (C → D) ∈ Horn(s, B_{j})}

7. Horn(t, □A) = Horn(x, A) where x is a universal variable.

Example 13.6.4 To explain the translation of t : A → F (B_{1} ∧ (B_{2} → B_{3})), let us write it in predicate logic. A → F (B_{1} ∧ B_{2} → B_{3})) is true at t if A true at t implies F (B_{1} ∧ (B_{2} → B_{3})) is true at t. F (B_{1} ∧ (B_{2} → B_{3})) true at t if for some s, t < s and B_{1} ∧ (B_{2} → B_{3}) are true at s.

Thus we have the translation

A^{∗}(t) → ∃s(t < s ∧ B_{1}^{∗}(s) ∧ (B_{2}^{∗}(s) → B_{3}^{∗}(s)))

Skolemising on s and writing it in Horn clauses we get the conjunction

A^{∗}(t) → t < s A^{∗}(t) → B_{1}^{∗}(s) A^{∗}(t) ∧ B_{2}^{∗}(s) → B_{3}^{∗}(s).

Let us see what the translation Horn does:

Horn (t, A → F (B_{1}∧(B_{2} → B_{3}))) = {⋀ Horn(t, A) → t < s}∪{⋀ Horn(t, A) → Horn(s, B_{2}}∪ {⋀ Horn(t, A) ∧ ⋀ Horn(s, B_{2}) → ⋀ Horn(s, B_{3})} =

{A^{∗}(t) → t < s, A^{∗}(t) → B_{2}^{∗}(s), A^{∗}(t) ∧ B_{2}^{∗}(s) → B_{3}^{∗}(s)}

We prove soundness of the computation of definition 13.3.6, relative to the Horn clause computation for Horn database in classical logic. In other words if the tranlation Horn(t, A) is accepted as intuitively should and the computation of S(ρ, <, Δ, G, t, G_{0}, t_{0}, Θ) can be translated isomorphically into a Horn clause computation of the form Horn(t, Δ)?Horn(t, G) then the soundness of the classical Horn clause computation would imply the soundness of our computation.

This method of translation will also relate our temporal computation to that of ordinary Horn clause computation.

The basic unit of our temporal computation is S(ρ, < Δ, G, t, G_{0}, t_{0}, Θ). t : G is the curent labelled goal and t_{0} : G_{0} is the original goal. (ρ, <, Δ) is the database and Θ is the current substitution. t_{0} : G_{0} is used in the Restart rule. For temporal flow of time which is ordinary transitive <, we do not need the Restart Rule. Thus we have to translate (ρ, <, Δ) to classical logic and translate t : G and Θ to classical logic and see what each computation step of S of the source translate into the classical logic target.

Definition 13.6.5 Let (ρ, <) be a constellation and let Δ be a labelled database such that

ρ = {t | for some A, t : A ∈ Δ}

Let Horn ((ρ, <), Δ) = {t < s | t, s ∈ ρ and t < s} ∪ ∪_{t:A∈Δ}Horn(t, A).

Theorem 13.6.6 (Soundness) S(ρ, <, Δ, G, t, Θ) succeeds in temporal logic if and only if in the sorted classical logic Horn ((ρ, <), Δ)?Horn(t, G) succeeds with Θ.

Proof. The proof is by induction on the complexity of the computation tree of S(ρ, <, Δ, G, t, Θ).

We follow the inductive steps of Definition 13.3.5. The translation of (Π, Θ) is a conjunction of Horn clause queries, all required to succeed under the same subsitution Θ.

I The empty goal succeeds in both cases.

II (Π, Θ) fails if for some S(ρ, <, Δ, G, t), we have G is atomic and for all □(A → H) ∈ Δ and all t : A → H ∈ Δ, GΘ and HΘ do not unify. The reason they do not unify is because of what Θ substitutes to the variables u_{i}.

The corresponding Horn clause predicate programs are ⋀ Horn(x, A) → H^{∗}(x) and ⋀ Horn(t, A) → H^{∗}(t) and the goal is ?G^{∗}(t)

Clearly since x is a general universal variable, the success of the two sorted unification depends on the other variables and Θ. Thus unification does not succeed in the classical predicate case iff it does not succeed in the temporal case.

Rules (1) and (2) deal with the atomic case: The query is G^{∗}(t) and in the database among the data are

⋀ Horn(t, A) → H^{∗}(t) and ⋀ Horn(x, A) → H^{∗}(x)

for the cases of t : A → H and □(A → H) respectively.

For the Horn clause program to succeed G^{∗}(t) must unify with H^{∗}(t). This will hold if and only if the substitution for the domain variables allows unification, which is exactly the condition of definition 13.3.5.

Rules (3), (4g) and (4*g) deal with the case of a goal of the form ?t : F G. The translation of the goal is t < u ∧ ⋀ Horn(u, G) where u is an existential variable.

Rule (3) gives success when for some s, t < s ∈ Δ and ?s : G succeeds. In this case let u = s, then t < u succeeds and ⋀ Horn(s, G) succeeds by the induction hypothesis.

We now turn to the general rules (4g) and (4*g). These rules yield success when for some clause of the form

t : A → F ⋀ B_{j}

or

□(A → F ⋀ B_{j})

Δ?t : A succeeds and Δ ∪ {(s : B_{j})}?s : G ∨ F G both succeed. s is a new point.

The translation ⋀ Horn(t, A) succeeds by the induction hypothesis.

The translation of

t : A → F ⋀ B_{j}

or

□(A → F ⋀ B_{j})

contains the following database:

1. ⋀ Horn(t, A) → t < s

2. For every B_{j} and every C → D in Horn(s, B_{j}) the clause ⋀ Horn(s, A) ∧ C → D.

Since ⋀ Horn(t, A) succeeds we can assume we have in our database

1* t < s

2* C → D, for C → D ∈ Horn(s, B_{j}) for some j.

(1*), (2*) were obtained by substituting truth in (1) and (2) for ∧Horn(t, A).

The goal to show is t < u ∧ ⋀ Horn(u, G).

Again for u = s, t < u succeeds from (1*) and by the induction hypothesis, since Δ ∪ {s : B_{j}}?s : G ∨ F G is successful, we get ⋃_{j} Horn(s, B_{j})? ⋀ Horn(s, G) ∨ (s < u′ ∧ ⋀ Horn(u′, G) should succeed, with u′ an existential variable.

However, (2*) is exactly ⋃_{j} Horn(s, ⋀ B_{j}). Therefore we have shown that rules (4g) and (4*g) are sound.

Rules (6g) and (6*g) are sound because they are the mirror images of (4g) and (4*g).

The next relevant rules for our soundness cases are (11) - (13). These follow immediately since the rules for ∧, ∨, ¬ are the same in both computations.

Rule 14, the Restart Rule, is definitely sound. If we try to show in general that Δ ⊢ A then since in classical logic ∼ A → A is the same as A (∼ is classical negation) it is equivalent to show Δ, ∼ A ⊢ A.

If ∼ A is now in the data, we can at any time try to show A instead of the current goal G. This will give us A (shown) and ∼ A (in Data) which is a contradiction and this yield any goal including the current goal G.

We have thus completed the soundness proof. ■

13.7 Tractability and persistence

We defined a temporal database Δ essentially as a finite piece of information telling us which temporal formulas are true at what times. In the most general case, for a general flow of time (T, <), all a database can do is to provide a set of the form {t_{i} : A_{i}}, meaning that A_{i} is true at time t_{i} and a configuration ({t_{i}}, <), giving the temporal relationships among {t_{i}}. A query would be of the form ?t : Q, where t is one of the t_{i}. The computation of the query from the data is in the general case exponential, as we found in Section 2, from the case analysis of clause 4 of Definition 13.3.6 and from example 13.3.2. We must therefore analyse the reasons for the complexity and see whether there are simplifying natural assumptions, which will make the computational problem more tractable.

There are three main components which contribute to complexity:

1. The complexity of the temporal formulas allowed in the data and in the query. We allow t : A into the database, with A having temporal operators. So for example, t : F A is allowed and also t : OA. t : F A makes life more difficult because it has in it a hidden Skolem function. It really means ∃s[t < s and (s : A)]. This gives rise to case analysis, as we do not know in general where s is. See examples 13.3.10, 13.6.1 and 13.6.2. In this respect t : OA is a relatively simple item. It says (t + 1) : A. In fact any temporal operator which specifies the time is relatively less complex. In practice, we do need to allow data of the form t : F A. Sometimes we know an event will take place in the future but we do not know when. The mere fact that A is going to be true can affect our present actions. A concrete example where such a case may arise is when some one accepts a new appointment beginning next year, but has not yet resigned from his old position. We know he is going to resign but we do not know when.

2. The flow of time itself gives rise to complexity. The flow of time may be non-Horn clause (eg linear time, which is defined by a disjunctive axiom.

∀xy[x < y ∨ y < x ∨ x = y]

This complicates the case analysis of (1) above.

3. Complexity arises from the behaviour. If atomic predicates get truth values at random moments of time, the database can be complex to describe. A very natural simplifying assumption in the case of temporal logic is persistence. If atomic statements and their negations remain true for a while then they give rise to less complexity. Such examples are abundant. For example, people usually stay at their residences and jobs for a while. So for example, any payroll or local tax system can benefit from persistence as a simplifying assumption. Thus in databases where there is a great deal of persistence, we can use this fact to simplify our representation and querying. In fact, we shall see that a completely different approach to temporal representation can be adopted when one can make use of persistence.

Another simplifying assumption is recurrence. Saturdays, for example, recur every week, so are paydays. This simplifies the representation and querying. Again, a payroll system would benefit from that.

We said at the beginning that a database Δ is a finitely generated piece of temporal information stating what is true and when. If we do not have any simplifying assumptions, we have to represent Δ in the form Δ = {t_{i} : A_{i}} and end up needing the computation rules of Section 2 to answer queries.

Suppose now that we adopt all three simplifying assumptions for our database. We assume that the A_{i} are only atoms and their negations, we further assume that each A_{i} is either persistent or recurrent, and let us assume, to be realistic, that the flow of time is linear. Linearity does not make the computation more complicated in this particular case, because we are not allowing data of the form t : F A, and so complicated case analysis does not arise. In fact, together with persistence and recurrence, linearity becomes an additional simplifying assumption!

Our aim is to check what form should our temporal logic programming machine take in view of our chosen simplifying assumptions.

First note that the most nautral units of data are no longer of the form:

t : A;

reading A is true at t but either of the form:

[t, s] : A, [t < s];

reading A is true in the closed interval [t, s] or the form:

t∥d : A;

reading A is true at t and recurrently at t + d, t + 2d, … that is, every d moments of time.

A is assumed to be a literal (atom or a negation of an atom) and [t, s] is supposed to be a maximal interval where A is true. In t∥d, d is supposed to be the minimal cycle for A to recur. The reasons for adopting the notation [t, s] : A and t∥d : A are not mathematical but simply intuitive and practical. This is the way we think about temporal atomic data when persistence or recurrence are present. In the literature there has been a great debate whether to evaluate temporal statements at points or intervals. Some researchers were so committed to intervals that they tended, unfortunately, to disregard any system which uses points. Our position here is clear and intuitive. First perform all the computations using intervals Evaluation at points is possible and trivial. To evaluate t : A, ie to ask ?t : A as a query from a database, compute the (maximal) intervals at which A is true and see whather t is there. To evaluate [t, s] : A do the same, and check whether [t, s] is a subset.

The query language is left in its full generality. ie we can ask queries of the form t : A where A is unrestricted (eg A = F B, etc). It makes sense also to allow queries fo the form [t, s] : A, though how exactly we are going to find the answer remains to be seen. The reader should be aware that the data representation language and the query language are no longer the same. This is an important factor. There has been a lot of confusion, especially among the AI community, in connection with these matters. We shall see later that as far as computational tractability is

[figure: v_{k}; u_{k}; A_{2}; A_{1}; A_{1}; y_{n+1}; x_{n+1}; y_{n}; x_{n}; ⋮; ]; [; ]; ]; [; [] Figure 13.8:

concerned, the restriction to persistent data allows one to strengthen the query language to full predicate quantification over time points.

At this stage we might consider allowing recurrence within an interval, ie we allow something like

“A is true every d days in the interval [t, s].”

We can denote this by:

[t∥d, s] : A;

meaning A is true at t, t + d, t + 2d, as long as t + nd ≤ s, n = 1, 2, 3, . . ..

We may as well equally have recurrent intervals. An example of that would be taking a two week holiday every year. This we denote by:

[t, s]∥d : A, t < s, (s − t) < d;

reading A is true at the intervals [t, s], [t + d, s + d], [t + 2d, s + 2d], etc.

The reader should note that adopting this notation takes us outside the realm of first order logic. Consider the integer flow of time. We can easily say that q is true at all even numbers by writing [0, 0]∥1 as a truth set for q and [1, 1]∥1 as a truth set for ∼ q. (ie q is true at 0 and recurs every 1 unit and ∼ q is true at 1 and recurs every 1 unit).

The above seem to be the most natural options to consider. We can already see that it makes no sense any more to check how the computation rules of definition 13.3.6 simplify our case. Our case is so specialised that we may as well devise computation rules directly for it. This should not surprise us. It happens in mathematics all the time. The theory of abelian groups for example, is completely different from the theory of semigroups, although abelian groups are a special case of semigroups. The case of abelian groups is so special that it does not relate any more to the general case.

Let us go back to the question of how to answer a query from our newly defined simplified databases. We start with an even more simple case, assuming only persistence and assuming that the flow of time is the integers. This simple assumption will allow us to present our point of view of how to evaluate a formula at a point or at an interval. It will also ensure we are still within what is expressible in first order logic.

Assume that he atom q is true at the maximal intervals [x_{n}, y_{n}], x_{n} ≤ y_{n} < x_{n+1}. Then ∼ q is true at the intervals [y_{n} + 1, x_{n+1} − 1], a sequence of the same form, ie y_{n} + 1 ≤ x_{n+1} − 1 and x_{n+1} − 1 < y_{n+1} + 1.

It is easy to compute the intervals corresponding to the truth values of conjunctions, we take intersection.

If I_{j} = ⋃_{n}[x_{n}^{j}, y_{n}^{j}] then I_{1} ∩ I_{2} = ⋃_{n}[x_{n}, y_{n}] and the points x_{n}, y_{n} can be effectively linearly computed. Also, if I_{j} is the interval set for A_{j}, the interval set for U(A_{1}, A_{2}) can be effectively computed.

In the diagram, U(A_{1}, A_{2}) is true at [u_{k}, y_{n} − 1], [u_{k}, y_{n+1} − 1] which simplifies to the maximal [u_{k}, y_{n+1} − 1].

The importance of the above is that we can regard a query formula of the full language with Until and Since as an operator on the model (database) to give a new database. If the database Δ gives for each atom or its negation the set of intervals where it is true, then a formula A operators on Δ to give the new set of intervals Δ_{A} thus to answer Δ?t : A the question we ask is t ∈ Δ_{A}. The new notion is that the query operates on the model.

This approach was adopted by I Torsun and K Manning [Torsun and Manning, 1990] when implementing the query language USF. The complexity of computation is polynomial (n^{2}). Note that although we have restricted the database formulas to atoms, we discovered that at no additional cost we can increase the query language to include the connectives Since and Until. It is well known that in the case of integers the expressive power of Since and Until is equivalent to quantification over time points, Kamp [Kamp, 1968].

To give the reader another glimpse of what is to come, note that intuitively we have several options:

1. We can assume persistence of atoms and negation of atoms. In this case we can express temporal models in first order logic. The query language can be full Since and Until logic. This option does not allow for recurrence. In practical terms this means that we cannot generate or control easily recurrent events. Note that the database does not need to contain Horn clauses as data. Clauses of the form □(present wff_{1} → present wff_{2}) are redundant and can be eliminated (this has to be properly proved!).

Clauses of the form □ (Past wff_{1} → Present wff_{2}) are not allowed as they correspond to recurrence.

2. This option wants to have recurrence, is not interested in first order expressibility. How do we generate recurrence?

The language USF (which was introduced for completely different reasons) allows one to generate the database using rules of the form □ (Past formula → Present or Future formula).

The above rules together with some initial items of data of the form t : A, A a literal, can generate persistent and recurrent models.

Part V

LDS Metatheory Labelled Analytic Deduction

14.1 Introduction

his chapter develops tableaux methodology for Labelled Deductive Systems. It is based on a paper of D’Agostino and Gabbay.

We generalize the notion of classical analytic deduction (i.e. deduction via elimination rules) by combining the methodology of Labelled Deductive Systems with the classical system KE [D’Agostino and Mondadori, 1994]. LDS is a unifying framework for the study of logics and of their interactions. In the LDS approach the basic units of logical derivation are not just formulae but labelled formulae, where the labels belong to a given “labelling algebra”. The derivation rules act on the labels as well as on the formulae, according to certain fixed rules of propagation. By virtue of the extra power of the labelling algebras, standard (classical or intuitionistic) proof systems can be extended to cover a much wider territory without modifying their structure. The system KE is a new tree method for classical analytic deduction based on “analytic cut”. KE is a refutation system, like analytic tableaux and resolution, but it is essentially more efficient than tableaux and, unlike resolution, does not require any reduction to normal form.

We start our investigation with the family of substructural logics. These are logical systems (such as Lambek’s calculus, Anderson and Belnap’s relevance logic and Girard’s linear logic) which arise from disallowing some or all of the usual structural properties of the notion of logical consequence. This extension of traditional logic yields a subtle analysis of the logical operators which is more in tune with the needs of applications. In section 2 of this Chapter we generalize the classical KE system via the LDS methodology to provide a uniform refutation system for the family of substructural logics.

The main features of this generalized method are the following: (a) each logic in the family is associated with a “labelling algebra”; (b) the tree-expansion rules (for labelled formulae) are the same for all the logics in the family; (c) the difference between one logic and the other is captured by the conditions under which a branch is declared closed; (d) such conditions depend only on the labelling algebra associated with each logic; (e) classical and intuitionistic negations are characterized uniformly, by means of the same tree-expansion rules, and their difference is reduced to a difference in the labelling algebra used in closing a branch. In this first part we lay the theoretical foundations of our method. In the second part we shall continue our investigation of substructural logics and discuss the algorithmic aspects of our approach.

In Section 2 we start our investigation of substructural logics. We deal with the so-called “intensional” (or “multiplicative”) operators and lay down the foundations of our system of Labelled Analytic Deduction. In the second part (forthcoming) we shall:

• Analyse the “extensional” (or “additive”) operators.

• Discuss the general decision problem: given a database Γ, a query ?A and a labelling algebra A, determine whether there exists a tree for Γ?A in which all the branches are closed according to the labelling algebra A. In its full generality the problem is not algorithmically solvable.

However, there are interesting and still quite general subproblems which are solvable and whose solution stems naturally from our approach.

14.2 Tableaux for algebraic LDS

Before embarking on the general study to tableaux in LDS, we develop tableaux for algebraic LDS more specifically for implicational logics.

Our starting point is the general semantics for implicational logics of Definition 4.1.2. To simplify even further, we disregard φ and ⊎ and concentrate only on f. Thus the → elimination rule is:

\begin{matrix}x : & A \\ y : & A → B \\ f(y, x) : & B \end{matrix}

where x, y are elements of an algebra of labels, f is a function (associated with modus ponens) giving the new label after modus ponens has been performed. Different f’s or different labelling algebras yield different rules of modus ponens and, possibly, different logics. For example, if we take an arbitrary semigroup as the algebra of the labels, with ∘ as multiplication and f(x, y) = x∘y, we can have

\begin{matrix}x : & A \\ y : & A → B \\ y ∘ x : & B \end{matrix}

The rule of →-introduction is the inverse of →-elimination.

\begin{matrix}t : & A \\ f(y, t) : & B \\ y : & A → B \end{matrix} with t atomic.

To show y : A → B we assume t : A (with a new atomic label t) and we must prove z : B, for a z such that z = f(y, t). In the semigroup case z = y ∘ t. Clearly, the above rules are a generalization of the traditional rules of natural deduction.

Can labels be used in a similar way to generalize classical analytic deduction? The notion of analytic deduction in classical logic is associated with the idea that all deductive arguments can be modelled by a system of elimination rules which “analyse” complex formulae by specifying the consequences of their truth and falsity in terms of the truth and falsity of their subformulae. It is mantained that this notion is adequately formalized by the method of analytic tableaux which is, in turn, a direct descendant of Gentzen’s (cut-free) sequent calculus. However, it has been shown elsewhere [D’Agostino and Mondadori, 1994] that the theory of classical analytic deduction based on cut-free systems is flawed by several anomalies, both conceptual and technical^{1}, which are responsible for severe inefficiency, as well as lack of elegance and transparence. It turns out that a better theory of analytic deduction can be built “around” the cut rule. The subformula principle — which is what counts both for the theory and the applications — does not require the elimination of cuts, but only their restriction to “analytic” applications, i.e. applications involving exclusively subformulae of the theorem. The extra inferential power generated by analytic cuts can then be exploited to simplify the elimination rules. In [D’Agostino and Mondadori, 1994] these ideas lead to the formulation of a new system of analytic deduction for classical logic, the system KE, which is proved to be essentially more efficient than the tableau method^{2}. The rules of the classical KE system are listed in Table 14.1. Notice that all the operational rules have a linear format and the only branching rule is a rule expressing the classical Principle of Bivalence. Hence, Disjunction Rules

1This anomalous behaviour culminates in the disconcerting fact (shown in [D’Agostino, 1992]) that cut-free systems cannot polynomially simulate the truth-tables.

2The analytic KE system can linearly simulate the tableau method, but the tableau method cannot p-simulate the analytic KE system. Notice that these results apply also to the case in which the the analytic cut rule is restricted to “mechanical” applications which are generated by a systematic refutation procedure. In fact it can be shown that any (deterministic) proof-procedure based on the tableau method can be turned into an essentially more efficient one based on the analytic KE system. On this point see also [D’Agostino, 1994].

\begin{matrix}T A ∨ B \\ F A \\ T B \end{matrix} ET ∨1  \begin{matrix}T A ∨ B \\ F B \\ T A \end{matrix} ET ∨2  \begin{matrix}F A ∨ B \\ F A \\ F B \end{matrix} EF ∨

Conjunction Rules

\begin{matrix}F A ∧ B \\ T A \\ F B \end{matrix} EF ∧1  \begin{matrix}F A ∧ B \\ T B \\ F A \end{matrix} EF ∧2  \begin{matrix}T A ∧ B \\ T A \\ T B \end{matrix} ET ∧

Implication Rules

\begin{matrix}T A → B \\ T A \\ T B \end{matrix} ET →1  \begin{matrix}T A → B \\ F B \\ F A \end{matrix} ET →2  \begin{matrix}F A → B \\ T A \\ F B \end{matrix} EF →

Negation Rules

\frac{T ¬A}{F A} ET ¬  \frac{F ¬A}{T A} EF ¬

Principle of Bivalence

\overline{T (A) F (A)} PB

Table 14.1: The rules of the classical system KE. The applications of the only branching rule can be restricted to subformulae and further controlled by systematic procedures.

all the branches are mutually exclusive, so that the amount of branching is reduced to a minimum. As with the tableau method, derivations are trees of signed formulae and a formula A is proved by a closed tree for F A. For the details see [D’Agostino and Mondadori, 1994].

Can we use the expressive power of this classical system by applying it to a labelled deductive system? Consider the labelled implication rules given above. These followed the “natural deduction” pattern of eliminations and corresponding introductions. The paradigm of analytic deduction, on the other hand, allows for elimination rules only, which specify the consequences of the truth (or falsity) of a complex sentence in terms of the truth (or falsity) of their subformulae. Let us say that a labelled formula x : A holds, if it is provable by means of the above implication rules (plus, possibly, other auxiliary rules; the reader is referred to Chapter 4 for the details). We write T A : x for “x : A holds” and F A : x for “x : A does not hold”. Given this interpretation of the signs T and F, we can easily obtain “analytic rules” for implication which appear as generalizations of the classical KE rules given in Table 14.1:

\begin{matrix}T A → B : x \\ T A : y \\ T B : f(x, y) \end{matrix}  \begin{matrix}F A → B : y \\ T A : t \\ F B : f(y, t) \end{matrix}

where t is a new atomic label.

The general notion of Labelled Analytic Deduction^{3} will be formulated and investigated in a later section, but in this section, we concentrate on implicational logics in order to provide a clear illustration of our methodology. These are proof-theoretically defined logics (including Lambek’s calculus, Girard’s linear logic and Anderson and Belnap’s relevance logic^{4}) which still lack a reasonable algorithmic proof theory. However, they yield a subtle analysis of the logical operators and are receiving considerable attention in various fields, such as linguistics, philosophy and theoretical computer science, as well as in several application areas. In the sequel we shall show how a uniform and transparent system of analytic deduction for all these logics can be obtained via a generalization of the classical KE system via the LDS methodology. There is no claim that our approach should be the most appealing to everybody’s intuition or the most suitable for all needs. However, it will probably be convenient for the fast-growing community of researchers who are involved in the development and implementation of algorithmic proof systems for substructural logics. Moreover, the ideas presented here are not specific to substructural logics. We consider the results in this section as a first step in the development of a general theory of Labelled Analytic Deduction which will be presented in a later chapter.

3Labels have been used occasionally by several researchers in the context of analytic tableaux. Interesting examples are the method of prefixed tableaux for modal logics in [Fitting, 1983] and the tableau method for many-

In our this chpater an algebraic LDS deduction problem is defined by three parameters: a structured database Δ (for implicational logics we only need one-dimensional structures), a query ?A and a labelling algebra A. The problem asks whether or not A follows from Δ given the notion of information specified by the labelling algebra A (corresponding to the allowed structural rules). Our system of Labelled Analytic Deduction provides a uniform method for dealing with such deduction problems, where:

a. the tree-expansion rules are the same for all logical systems in the family;

b. the difference between logical systems is captured by the conditions under which a branch is declared closed;

c. such conditions depend only on the labelling algebra associated with each logical system;

d. classical and intuitionistic negations are characterized uniformly, by means of the same treeexpansion rules, and their difference is reduced to a difference in the labelling algebra used in closing a branch.

In this paper we start our investigation of substructural logics. We deal with the so-called “intensional” (or “multiplicative”) operators and lay down the foundations of our system of Labelled Analytic Deduction. In the second part (forthcoming) we shall:

• Analyse the “extensional” (or “additive”) operators.

• Discuss the general decision problem: given a database Γ, a query ?A and a labelling algebra A, determine whether there exists a tree for Γ?A in which all the branches are closed according to the labelling algebra A. In its full generality the problem is not algorithmically solvable. However, there are interesting and still quite general subproblems which are solvable and whose solution stems naturally from our approach.

14.2.1 Substructural consequence relations

According to the traditional definition a consequence relation is a relation ⊢ between a set of formulae Γ and a formula A. The set Γ represents the data, and A a proposition which follows from the data. In many applications of logic, however, situations arise in which the data is not best represented as a set of formulae, but as a richer structure, e.g. a multiset, a sequence, a diagram, etc. These considerations have led to the study of structured consequence relations as a new area of logical research motivated by computer science needs. In this paper we focus on the case in which the data-structures are mono-dimensional.

valued logics in [Hähnle, 1992]. In his [Wallen, 1990] Wallen also uses labels to capture modal logics in the context of his extension of Bibel’s connection method which he relates to analytic tableaux. See also [Maslov, 1969] for a very early example of the use of labels in a sequent calculus to capture intuitionistic logic. For the use of labels as a book-keeping mechanism in the context of natural deduction systems for relevance logic, the main reference is to [Anderson and Belnap Jr, 1975].

4Related work on tableau-like methods for relevance logics is contained in [Dunn, 1976, McRobbie and Belnap, 1979, Thistlewaite et al., 1988].

We take a consequence relation as a relation ⊢ between sequences of formulae and formulae, satisfying:

Identity A ⊢ A

Surgical Cut  {Γ ⊢ A Δ, A, Λ ⊢ B \atop Δ, Γ, Λ ⊢ B}

Since the Γ, Δ and Λ range over sequences, an application of the cut rule replaces an occurrence of the formula A with the sequence Γ exactly in the position of A.

Besides the general axioms of Identity and Surgical Cut given above, the additional axioms which characterize a specific consequence relation can be divided in two groups:

• axioms describing the general properties of ⊢, called structural conditions or rules;

• axioms describing properties of logical operators, called operational conditions or rules.

Structural rules. Consequence relations may or may not obey any of the following conditions describing their structural properties:

Exchange {Γ, A, B, Δ ⊢ C \atop Γ, B, A, Δ ⊢ C} Contraction {Γ, A, A, Δ ⊢ C \atop Γ, A, Δ ⊢ C}

Expansion {Γ, A, Δ ⊢ C \atop Γ, A, A, Δ ⊢ C} Weakening {Γ, Δ ⊢ C \atop Γ, A, Δ ⊢ C}

We can think of a sequent Γ ⊢ A as stating that the piece of information expressed by A is “contained” in the data structure expressed by Γ. Then different combinations of the above structural rules can be seen as different ways of defining the properties of the “information flow” expressed by the turnstile, depending on the structure of the data and on the allowed ways of manipulating it. For instance, if we disallow the Weakening rule, the consequence relation becomes sensitive to the relevance of the data to the conclusion: all the data has to be used in the derivation process. If also Expansion is disallowed, this notion of relevance extends to the single occurrences of the formulae in the data (as in Anderson and Belnap’s system of Relevance Logic, each occurrence of a formula in the data has to be used). If contraction is disallowed, each item of data can be used only once and has to be replicated if it is used more than once (as in Girard’s Linear Logic and its satellites). In this way the process of deriving a formula becomes more similar to a physical process and the consequence relation becomes sensitive to the resources employed. Finally, if Exchange is disallowed, the “chronology” of this process – i.e. the order in which formulae occur in the data – becomes significant (as in the Lambek calculus).

Notice that if Exchange is allowed, the antecedent of a sequent can be regarded as a multiset^{5}.If Contraction and Expansion are also allowed (of course the Weakening rule implies the Expansion rule) the antecedent of a sequent can be regarded as a set of formulae, as with the standard Gentzen systems, i.e. the number of occurrences of formulae does not count, nor does the order in which they occur.

The operator ⊗. In the classical and intuitionistic sequent calculus the comma occurring in the left-hand side^{6} of a sequent is associated with classical conjunction. This operator represents a particular way of combining pieces of information. Its inferential role depends on two components: the operational rules defining its meaning, and the structural rules defining the meaning of the turnstile. In a general setting, in which the only condition which are required to hold are Identity and Surgical cut, the comma is no longer equivalent to classical conjunction. However, these new consequence relations are still closed under the standard conditions defining classical conjunction. Such condition characterizes a new type of “substructural” conjunction, denoted by ⊗ which is no longer classical (because of the failure of some or all of the structural rules), and yet is defined in the same way as its classical version and therefore, in a sense, has the same “meaning”, namely:

5For multiset-based consequence relations, the reader is referred to [Avron, 1991].

6For the time being we are considering only single-conclusion sequents. Later on we shall consider also multiconclusion sequents in the context of logical systems with classical (involutive) negation.

C_{⊗} Γ, A ⊗ B, Δ ⊢ C ⟺ Γ, A, B, Δ ⊢ C

Clearly, a sequent Γ ⊢ A becomes equivalent to ⊗Γ ⊢ A where ⊗Γ denotes the ⊗-concatenation of the formulae in Γ.

Given Identity and Surgical cut, C_{⊗} can be easily shown to be equivalent to the pair of sequent rules:

{Γ ⊢ A Δ ⊢ B \atop Γ, Δ ⊢ A ⊗ B}  {Γ, A, B, Δ ⊢ C \atop Γ, A ⊗ B, Δ ⊢ C}  (14.1)

It is not difficult to see that C_{⊗} together with Identity and Surgical Cut, implies:

\frac{A ⊢ B C ⊢ D}{A ⊗ C ⊢ B ⊗ D}  (14.2)

Moreover, let us consider the following restricted form of cut:

Transitivity  {A ⊢ B B ⊢ C \atop A ⊢ C}

Then, it is easy to see that Transitivity, together with Identity, C_{⊗} and (14.2), imply Surgical Cut.

The connective →. Implication is usually characterized by the following condition:

C_{→} Γ ⊢ A → B ⟺ Γ, A ⊢ B

which, under the assumption of Identity and Surgical cut is equivalent to the pair of rules:

\begin{matrix}Γ, A ⊢ B \\ Γ ⊢ A → B \end{matrix}  \begin{matrix}Γ ⊢ A & Δ, B ⊢ C \\ Δ, A → B, Γ ⊢ C \end{matrix}  (14.3)

The operator ¬. Negation can be defined á la Johansson, in terms of implication and a constant ⊥. Then the condition C_{→} above immediately yields:

(C_{¬}) Γ, A ⊢ ⊥ ⟺ Γ ⊢ ¬A.

Again, it is easy to see that, given Identity and Surgical cut, the condition C_{¬} is equivalent to the following pair of sequent rules:

\begin{matrix}Γ, A ⊢ ⊥, \\ Γ ⊢ ¬A \end{matrix}  \begin{matrix}Γ ⊢ A \\ ¬A, Γ ⊢ ⊥ \end{matrix}.  (14.4)

Classical negation and the operator ∪ ∣ . Classical negation is characterized by the additional condition expressed by the “double negation law”:

¬¬A ⊢ A  (14.5)

which, given C_{¬} — or equivalently the sequent rules in (14.4) —, Identity and Surgical Cut, is equivalent to the rule:

{Γ, ¬A ⊢ ⊥ \atop Γ ⊢ A}  (14.6)

Let us now define a binary operator ∪∣ as follows:

A∪∣ B =_{def} ¬A → B  (14.7)

If (14.5) holds and Exchange is allowed, ∪∣ is commutative and associative. Moreover the following equivalences also hold:

Γ, A ⊢ B ⟺ Γ ⊢ ¬A∪∣ B  Γ, ¬A ⊢ B ⟺ Γ ⊢ A∪∣ B  (14.8)

Thus, in the logics satisfying the Exchange property and the double negation law (14.5) we can naturally introduce multi-conclusion sequents of the form

Γ ⊢ Δ

where Δ is, like Γ, a list of formulae, with the intended meaning ⊗Γ ⊢ ∪∣ Δ (by ⊗Γ and ∪∣ Δ we denote, respectively, the ⊗-concatenation of the formulae in Γ and the ∪∣ -concatenation of the formulae in Δ). The properties of the (classical) negation operator allow us to translate back and forth from the single-conclusion formulation to the multi-conclusion one. The operator ∪∣ corresponds to the comma in the right-hand side of a multi-conclusion sequent, just as the operator ⊗ corresponds to the comma in the left-hand side. Under these circumstances the following equivalence can also be easily shown:

A ⊗ B ⊣⊢ ¬(A → ¬B)  (14.9)

When all the usual structural rules are allowed, ∪∣ is clearly equivalent to classical disjunction.

Notice that, since in the logics satisfying (14.5) and Exchange both ⊗ and ∪∣ are commutative, the antecedent and the succedent of a sequent can be regarded as multisets rather than just sequences, and Surgical Cut can be replaced by the more familiar (though not necessarely more natural):

Γ ⊢ A, Δ Λ, A ⊢ Π
Γ, Λ ⊢ Δ, Π

The reader can easily derive multi-conclusion versions of C_{⊗}, C_{→} and C_{¬}, and the corresponding sequent rules. Clearly ∪∣ can be defined directly by the following condition:

C∪∣ Γ ⊢ Δ, A, B, Λ ⟺ Γ ⊢ Δ, A∪∣ B, Λ

which, under the given assumptions, is in turn equivalent to the following pair of rules:

Γ, A ⊢ Δ B, Λ ⊢ Π Γ, A∪∣ B, Λ ⊢ Δ, Π  \begin{matrix}Γ ⊢ Δ, A, B, Λ \\ Γ ⊢ Δ, A∪∣ B, Λ \end{matrix}  (14.10)

14.2.2 Information frames

As suggested above a theory of labelled analytic deduction could be developed entirely in prooftheoretical terms. Let us consider, for instance, the analytic rules for implication we obtained from the labelled natural deduction rules. The labels may be interpreted as lists of formulae, the binary operation ∘ as list concatenation, and the signed expressions T A : x and F A : x as, respectively, “A is provable from x” and “A is not provable from x”. So the use of signs does not need to involve any “semantic” consideration. In general the labelling algebra can encode any type of information which we may want to propagate via the derivation rules. Thus, in the general case, signed formulae can be considered as simply connecting formulae from a given logical language and labels from a given labelling algebra. The latter may come from any source, even a specific implementation in some application area. We do not need to commit a priori to any fixed interpretation of the labels.

On the other hand, if we formulate a set of rules for labelled signed formulae, it is often possible to read them as semantic rules for some Kripke-style semantics: the labels are now interpreted as points of a space to which the notion of truth and falsity are relativized. The same labelled signed formulae T A : x and F A : x can be read as “A is true at x” and “A is false at x” respectively. The labelling algebra describes the structure of this valuation space. So, the traditional distinction between “syntax” and “semantics” becomes blurred: what ultimately counts is the algebra of the labels.

We begin by giving an informal description of the structure of our labelling algebras. We shall sometimes use a “semantic” terminology to bring out its relation with other familiar structures which are traditionally studied as part of semantics. However a purely “syntactic” reading is always possible. We stress that our aim is not to provide “another” semantics^{7} for substructural logics, but to develop a system of labelled analytic deduction. “Semantics”, here, is a by-product of algorithmic problems^{8}.

Information tokens. We begin with the notion of resource propositional LDS as defined in Definition 4.2.1. We assume the labels are information tokens. Information tokens may verify sentences. Let us write x∥−A for “x verifies A” or “A is true at x”. We shall also say that “A is false at x” if x∦−A (our semantics is bivalent and “false” is the same as “non-true”). We write x ⊑ y whenever the information token y verifies all the sentences that are verified by x, so that y contains at least the same information as x (possibly more). Hence:

x∥−A and x ⊑ y ⟹ y∥−A  (14.11)

The relation ⊑ is a preorder, i.e. it is reflexive and transitive. We assume that two “indiscernible” information tokens, which verify exactly the same sentences, are identical. Hence ⊑ is a partial order.

Moreover, it is natural to assume that verification is closed under deducibility, that is:

x∥−A and A ⊢ B ⟹ x∥−B  (14.12)

An information token can be considered equivalent to the set of the sentences that it verifies (each set will then be closed under ⊢). Then the partial ordering ⊑ would be set-inclusion, and x∥−A would just mean that A ∈ x. We shall call this interpretation the canonical interpretation. It is important to realize that in a context in which the contraction rule may be disallowed, (i.e. our logic is “resource-sensitive”) an information token may verify each formula in a set Individually), but not all the formulae in the set (collectively). The information token is lost once it has been “spent” to verify a formula, and we need a “fresh” copy of it to verify another formula. This is no longer the case when the contraction rule is allowed and, so to speak, our resources can be multiplied indefinitely. Thus in terms of Definition 4.2.1 ‘≤’ is ‘⊑’, φ is always true, the labelling function f(x, y) will turn out to be x ∘ y defined below and x ⊎ y will turn out to be x ∘ y when used. See also Definition 4.1.2.

Composition of information tokens. Given any two information tokens x and y we can combine them to form a new information token x ∘ y. The operation ∘ is associative but, in general, it is neither commutative nor idempotent. Again, a composition x_{1} ∘ ⋯ ∘ x_{n} of atomic information tokens verifies sentences in a particularly strict, resource-sensitive way: the atomic information tokens have all to be used to verify the sentence in the order in which they occur.

7Algebraic semantics for intuitionistic substructural logics is given by Dôsen in [Dôsen, 1988]. A related semantics for linear logic is given in [Avron, 1988a]. These semantics are ultimately more or less straightforward adaptations of the Lindenbaum-Tarski method to the new consequence relations. In [Dôsen, 1989] Dôsen also gives relational (possibile-world) semantics for subsystems of intuitionistic logic, in the style of the Kripke semantics.

A Kripke-style semantics for linear logic is also given in [Allwein and Dunn, 1993]. These Kripke-style semantics ultimately stem from Urquhart’s semantics for relevant implication described in [Urquhart, 1972]. For related semantic investigations into substructural logics see also [Ono, 1993] and [Sambin, 1993]. Under certain circumstances, semantics for arbitrary consequence relations can be generated in a systematic way. On this point see [Gabbay, 1993b, Gabbay and Ohlbach, 1993a, Gabbay and Ohlbach, 1993b, Gabbay, 1993c].

8We do not exclude, of course, that some readers may find the “semantic” interpretation of the rules more familiar or heuristically useful. From this point of view, we stress that our “semantics” covers all substructural logics weaker than classical logics: classical and intuitionistic negation are characterized in a uniform way, and their difference is reduced to the algebra of the labels (or, if you wish, to the structure of the valuation space).

Thus, in general,

x ∘ y ⋢ y ∘ x
x ⋢ x ∘ x
x ∘ x ⋢ x
x ⋢ x ∘ y

Information frames. So far we have assumed that information tokens form a partially ordered set and are closed under a composition operation ∘. We now make two further assumptions which are both very natural under the canonical interpretation suggested above. First we assume that the partial ordering induces a complete lattice (under the canonical interpretation information tokens form a complete lattice of sets). Secondly, we assume that the operation ∘ is continuous in both arguments. This means that the operation preserves limits:

⨆{a ∘ x|x ∈ S} = a ∘ ⨆ S and ⨆{x ∘ a|x ∈ S} = ⨆ S ∘ a  (14.13)

for all directed^{9} sets S of information tokens. The continuity of ∘ is obvious under the canonical interpretation, if we define x ∘ y =_{def} {A ⊗ B|A ∈ x, B ∈ y}.

Notice that the continuity of ∘ implies that the composition operation ∘ is order-preserving:

x_{1} ⊑ y_{1} and x_{2} ⊑ y_{2} imply x_{1} ∘ x_{2} ⊑ y_{1} ∘ y_{2}  (14.14)

A distinguished information token is the neutral information token denoted by 1. This acts like an identity element (thus ∘ is a monoid operation^{10}), so that its combination with an arbitrary token x is equal to x itself. Notice that this identity element 1 does not coincide, in general, with the bottom element of the lattice, but it is the top element of a distinguished subset of information tokens: the tokens which verify the theorems of the given logical system. (Under the canonical interpretation 1 is the set of all theorems (as opposed to ∅).)

The structure described so far will be called an information frame. The following definition summarizes our previous presentation:

Definition 14.2.1 An information frame is a structure L = (P, ∘, 1, ⊑) such that:

1. P is a non-empty set of elements called information tokens;

2. P is a complete lattice under ⊑;

3. ∘ is a binary operation on P which is

(a) associative: x ∘ (y ∘ z) = (x ∘ y) ∘ z;

(b) continuous in both arguments: for every directed family {z_{i}}, ⨆{z_{i} ∘ x} = ⨆{z_{i}} ∘ x and ⨆{x ∘ z_{i}} = x ∘ ⨆{z_{i}};

4. 1 ∈ P and for every x ∈ P, x ∘ 1 = 1 ∘ x = x;

Recall that the continuity of ∘ implies that this operation is order-preserving: x_{1} ⊑ x_{2} implies x_{1} ∘ y ⊑ x_{2} ∘ y and y ∘ x_{1} ⊑ y ∘ x_{2}. In the sequel we shall often identify an information frame with the set of its elements and use L to refer ambiguously to both. The context will ensure that no confusion arises.

We can define classes of information frames which satisfy additional conditions on the ordering ⊑:

9Recall that a set S is directed when every finite subset of S has un upper bound in S.

10Recall that a monoid is a structure (P, ∘, 1), where P is a non-empty set, ∘ is an associative binary operation on ∘, and 1 is an identity element, i.e. a constant such that 1 ∘ x = x ∘ 1 = x for all x.

1 commutative frames {Γ, A, B, Δ ⊢ C \atop Γ, B, A, Δ ⊢ C}

2 contractive frames  {Γ, A, A, Δ ⊢ C \atop Γ, A, Δ ⊢ C}

3 expansive frames  {Γ, A, Δ ⊢ C \atop Γ, A, A, Δ ⊢ C}

4 monotonic frames  {Γ, Δ ⊢ C \atop Γ, A, Δ ⊢ C}

Table 14.2: Correspondence between classes of frames and structural rules.

Definition 14.2.2 We say that an information frame is:

commutative if x ∘ y ⊑ y ∘ x
contractive  if x ∘ x ⊑ x
expansive  if x ⊑ x ∘ x
monotonic  if x ⊑ x ∘ y

In the sequel different substructural logics will be seen to correspond to different classes of information frames in the expected way, each condition on ⊑ being associated with a structural property of consequence relations. The correspondence is summarized in Table 14.2.

Truth, Falsity and valuations. To complete our analysis we have to make a few remarks on the notions of “truth” and “falsity”. As said before we can think of an information token as a set of formulae (intuitively, the set of formulae which are verified by it). Under this canonical interpretation, that a formula A is verified by a token x simply means that A ∈ x. Hence, it is obvious that truth and falsity are preserved under intersections and unions of tokens.

In the context of abstract information frames it is convenient to decompose this property into the two properties that (a) truth and falsity are preserved under finite joins and meets and (b) that the functions “y is the truth-value of A at point x” (for each given formula A) are continuous. It follows that truth and falsity are preserved under arbitrary joins and meets.

In particular, this implies that if some information token verifies a sentence A, there exists the least information token that verifies A. Intuitively this represents the “information content” of A itself, and it is the set {B|A ⊢ B} under the canonical interpretation. We shall call such an information token A-characteristic.

These properties of the notions of truth and falsity can be expressed in terms of “valuations”. Let L be an information frame. A valuation over L is a function v : F × P ↦ {T, F } where F

is the set of formulae of the language and and P is the set of information tokens in the frame L, satisfying the following conditions:

1. For all formulae A, if v(A, x) = T and x ⊑ y, then v(A, y) = T.

2. For all formulae A, and all information tokens x, y: if v(A, x) = T and v(A, y) = T, then v(A, x ⊓ y) = T.

3. For all formulae A, and all information tokens x, y: if v(A, x) = F and v(A, y) = F, then v(A, x ⊔ y) = F.

4. For each given A, v is a continuous mapping, i.e. ⨆{v(A, x)|x ∈ S} = v(A, ⨆ S) and ⨆ {v(A, x)|x ∈ S} = v(A, ⨆ S) for all directed sets S of information tokens.

As usual, by v(A, x) = T we mean “A is true at x” or “x∥−A”, and by v(A, x) = F we mean “A is false at x” or “x∦−A”.

As we mentioned, it follows from our definitions that truth and falsity are “continuous”, i.e. they are preserved under arbitrary joins and meets. In the next section we shall present specific valuation rules which analyse each logical operator. Note that valuations v are really assignments h in semantical terms. Compare with, for example, Definition 4.1.2.

Remark 14.2.3 The reader is reminded that in this resource-sensitive context, the information token x ⊔ y, which is the lattice join of x and y contains all the information contained in either x or y, but might not contain all the information contained in both x and y. In other words, it is sufficient to to obtain whatever can be obtained from either x or y, but it is not sufficient, in general, to obtain what can be obtained from their composition x ∘ y.

As said before, we can always think of a valuation simply as a relation between formulae and labels. Under this more general interpretation, v(A, x) = T means “A can be derived with label x” and v(A, x) = F means “A cannot be derived with label x” (or, equivalently, it represents goal: “derive A with label x”). A closed tree for F A : x will then be interpreted as a refutation of the assumption “A cannot be derived with label x” (or as a successful derivation of the goal).

As usual, a formula will be valid in a given logic when it is true in all valuations over every information frame belonging to a certain class (associated with the logic). Our labelled system of analytic deduction will prove theorems by showing that a counterexample, i.e. a falsifying valuation, is impossible.

In the next section we shall introduce KE-type elimination rules for labelled signed formulae. These rules will “analyse” the logical operators by specifying the consequences of labelled signed formulae, i.e. expressions of the form T A : x and F A : x.

14.2.3 Labelled analytic deduction

Information frames, described in the previous section, play a key-role in our generalization of classical analytic deduction. In their “semantic” interpretation they provide a space to which the classical notions of truth and falsity are relativized (much as in Kripke’s semantics for intuitionistic logic). In the more general, proof-theoretical, interpretation they provide a space of labels to which the notion of derivability is relativized. The use of labelled signed formulae in our system of analytic deduction brings out the correspondence between the two interpretations.

Different classes of information frames (as in Definition 14.2.2) will be identified by different labelling algebras. In the context of the present paper, a labelling algebra will be described by a finite set of expressions of the form α ⊑ β where α and β contain variables which are intended as universally quantified. (Identities will of course be represented by pairs of such expressions.) For example, the labelling algebra corresponding to the class of commutative and contractive frames is described by the following expressions:

x ∘ (y ∘ z) ⊑ (x ∘ y) ∘ z  x ∘ y ⊑ y ∘ x
(x ∘ y) ∘ z ⊑ x ∘ (y ∘ z)  1 ∘ x ⊑ x
x ∘ x ⊑ x

Our next step consists in generalizing the rules of the classical refutation system KE to the new setting.

Generalized Bivalence and Non-contradiction The classical notions of truth and falsity are governed by two basic principles: the Principle of Bivalence (every proposition is either true or false) and the Principle of Non-Contradiction (no proposition is both true and false). In the KE system these principles are expressed directly as rules. The Principle of Bivalence is expressed by the only branching rule of the system^{11}, the rule PB, and the Principle of Non-Contradiction by the rule for closing a branch (as in the tableau method).

11This fundamental principle of classical semantics is not expressed by the rules of the tableau method if not in a very indirect way. On this point see [D’Agostino, 1992].

These principles still apply to our generalized framework except that we refer them to labelled propositions. Given an arbitrary proposition A and an arbitrary information token x, either it is true that x verifies A or it is false that x verifies A (i.e. x∥−A or x∦−A). So the classical rule of bivalence can be generalized as follows:

\overline{T A : x F A : x}  (14.15)

for every label x.

According to the proof-theoretical reading of signed formulae, the rule PB is a “lemma introduction” rule: if A can be derived with label x (i.e. if the right-hand subtree is closed), this fact can be used as a lemma (in the left-hand subtree).

A similar generalization applies to the Principle of Non-Contradiction: it is impossible that the same formula is verified and not verified by the same information token. Moreover, if a formula is verified by a token x it is also verified by every token y such that x ⊑ y. Hence, the following generalized closure rule is justified:

\begin{matrix}T A : x \\ F A : y \\ × \end{matrix}  (14.16)

provided that x ⊑ y.

Proof-theoretically speaking, if A can be derived with label x and the algebra of the labels is such that whatever can be derived with label x can also be derived with label y, then A can also be derived with label y and the goal expressed by F A : y is achieved.

In fact, to cover all the logics in the family we are investigating, we need an even more general closure rule. Let us consider frames which are expansive but not monotonic. Suppose a formula A is verified by each of the tokens x_{1}, …, x_{n}. By definition of valuation there is the minimum token at which A is true. Let a be such a minimum token. If the frame is expansive we have

a ⊑ \overbrace{a ∘ ⋯ ∘ a}^{n times}

Therefore, since a ⊑ x_{i} for i = 1, …, n, A is verified also by the token x_{1} ∘ ⋯ ∘ x_{n}. Hence, a branch containing all T A : x_{i} and F A : x_{1} ∘ ⋯ x_{n} should be considered closed. This agrees with the fact that in any logic which allows expansion, the following rule can be derived:

{Γ ⊢ A Δ ⊢ A \atop Γ, Δ ⊢ A}

This problem can be overcome by introducing a more general closure rule of which the previous one is a special case:

T A : x_{1} ; ⋮ ; T A : x_{n} ; F A : y ; ×  (14.17)

provided that ⨆ {x_{1}, …, x_{n}} ⊑ y. So, in the previous example, a branch containing all T A : x_{i} for i = 1, …, n and F A : x_{1} ∘ ⋯ x_{n}, is closed by the above rule because, denoting with a the token ⨆ {x_{1}, …, x_{n}}, we have that a ⊑ x_{i} for i = 1, …, n. Moreover, a ⊑ a ∘ ⋯ ∘ a, and thus a ⊑ x_{1} ∘ ⋯ ∘ x_{n}.

However, as we shall see, this more general closure rule is indeed needed only for the logics characterized by frames which are expansive, but not monotonic. Since such frames are characteristic of the version of relevance logic known as “mingle” we shall call them mingle frames. For all the other logics the simple special case (14.16) will suffice.

Elimination rules for →. It is natural to assume that if an information token x verifies a complex sentence of the form A → B, and another information token y verifies A, then the composition of the two will verify B, i.e. :

x∥−A → B ⟹ ∀y, y∦−A or x ∘ y∥−B  (14.18)

This justifies immediately the following generalizations of the KE elimination rules for T A → B:

\begin{matrix}T A → B : x \\ T A : y \\ T B : x ∘ y \end{matrix}  \begin{matrix}T A → B : x \\ F B : x ∘ y \\ F A : y \end{matrix}  (14.19)

If we assume that the converse of (14.18) also holds, namely:

x∥−A → B ⟸ ∀y, y∦−A or x ∘ y∥−B  (14.20)

we can justify also the following generalization of the KE elimination rule for F A → B:

\begin{matrix}F A → B : x \\ T A : a \\ F B : x ∘ a \end{matrix} with a a new atomic label  (14.21)

The new atomic label a stands for an information token which instantiates the y in the existentially quantified expression which is obtained by contraposing (14.20). In the sequel we shall see that a “liberalized” version of this rule can be conveniently adopted, to the effect that the atomic label introduced by the rule does not have to be new.

Again, the rules for implication given above are easily seen to be sound under the prooftheoretical interpretation. The reader can check that the implication rules (together with our PB rule) are equivalent to the if-and-only-if valuation clause resulting from the conjunction of (14.18) and (14.20), namely:

v(A → B, x) = T ⟺ ∀y, v(A, y) = F or v(B, x ∘ y) = T  (14.22)

This condition is formally identical to Urquhart’s semantics of relevant implication [Urquhart, 1972]. However, here ∘ is not a semilattice join, but a monoid operation. Thus the above condition is sufficient to characterize the whole family of substructural implication systems and not just the implication fragment of R.

Labelled KE-trees for implicational logics. The operational rules described above are valid for all the logical systems in the family, no matter which structural rules they satisfy.

The extra-conditions on the ⊑ relation, which characterize a particular class of information frames, might be expressed as structural rules. Such rules are listed in Table 14.3. However we shall see that such structural rules are redundant and can be eliminated in favour of the general closure rule.

Definition 14.2.4

1. A derivation is a tree of labelled signed formulae, or LS-formulae for short, constructed according to the rules of the system starting from a (posibly empty) sequence of LS-formulae called initial or assumption LS-formulae.

2. A branch ϕ is closed for the labelling algebra A if ϕ contains a set of LS-formulae {T A : x_{1}, …, T A : x_{n}, F A : y} such that ⨆ {x_{i}} ⊑ y holds for A. Otherwise, it is open.

3. A tree is closed for the labelling algebra A when all its branches are closed for A.

4. A formula A is a theorem for the labelling algebra A if and only if there is a tree T such that (i) T is generated by applications of the rules starting from F A : 1, where 1 is the identity element (with respect to the operation ∘) of the labelling algebra A and (ii) T is closed for A.

Structural Rules

Permutation  Contraction

\frac{T A : z ∘ x ∘ y ∘ v}{T A : z ∘ y ∘ x ∘ v}  \frac{T A : z ∘ x ∘ x ∘ y}{T A : z ∘ x ∘ y}

Expansion  Weakening

\frac{T A : z ∘ x ∘ y}{T A : z ∘ x ∘ x ∘ y}  \frac{T A : z ∘ x ∘ v}{T A : z ∘ x ∘ y ∘ v}

Table 14.3: Structural rules (to be shown redundant).

5. A formula A is provable for the labelling algebra A from the sequence of assumptions Γ if and only if there is a tree T such that (i) T is generated by applications of the rules starting from a sequence of initial LS-formulae

T B_{1} : b_{1}, …, T B_{n} : b_{n}, F A : b_{1} ∘ ⋯ ∘ b_{n}

where B_{1}, …, B_{n} = Γ; (ii) b_{i} ≠ b_{j} whenever i ≠ j; (iii) T is closed for A.

Redundancy of the structural rules. As mentioned above, the structural rules can be eliminated in favour of the branch closure rule, which allows us to formulate a uniform tree method for all the logics in the family, and reduce the difference between them to the conditions under which a branch is declared closed. In the sequel by “a tree for Γ ⊢ A” we shall mean a tree starting with a sequence

T B_{1} : b_{1}, …, T B_{n} : b_{n}, F A : b_{1} ∘ ⋯ ∘ b_{n}

specified as above.

Proposition 14.2.5 Every closed tree T for Γ ⊢ A can be transformed into an equivalent closed tree such that, in each branch, no application of an operational rule follows an application of a structural rule.

Proof. We define the rank of a node n as follows: rank(n) = 0 if n is a leaf-node and rank(n) = k+1, where k is the maximal rank of the successors of n, for every non-leaf node.

Let us say that an LS-formula is misplaced if it is at the same time the conclusion of a structural rule and a premiss of an operational rule. Given a tree T , let d the number of misplaced formulae of maximal rank, and r be equal to such maximal rank if d > 0 or to 0 if d = 0. We define (r′, d′) < (r, d) if r′ < r or, r′ = r and d′ < d. Let us denote by μ(T ) the pair (r, d) associated with the tree T . Clearly if μ(T ) = (0, 0) no LS-formula in the tree is at the same time the conclusion of a structural rule and the premiss of an operational rule. Although it may be the case that a formula which is the premiss of an operational rule occurs in a branch after a formula which is the conclusion of a structural rule, the former does not depend on the latter. In such a situation, the tree can always be re-arranged so that no application of an operational rule follows an application of a structural rule.

Now, let T be a tree such that μ(T ) > (0, 0). Let T A : x be a misplaced LS-formula of maximal rank. Suppose T A : w, with w ⊑ x, is the premiss of the application of the structural rule from which T A : x results. For every branch ϕ passing through T A : x, let T C_{1} : z_{1}[x], …, T C_{n} : z_{n}[x], where z_{i}[x] means that the label x occurs in z_{i}, be all the LS-formulae in ϕ which result from the

Frames

commutative contractive expansive monotonic Implication systems
x ∘ y = y ∘ x x ∘ x ⊑ x  x ⊑ x ∘ x x ⊑ x ∘ y
no  no  no  no  Lambek’s
yes  no  no  no  Linear
yes  yes  no  no  Relevant
yes  yes  yes  no  Mingle
yes  yes  yes  yes  Intuitionistic

Table 14.4: Correspondence between implication systems and classes of information frames

application of a rule with T A : x as one of the premises. Thus ϕ will have the following form:

T A : w
T A : x
⋮
T C_{1} : z_{1}[x]
⋮
T C_{n} : z_{n}[x]
⋮

Let T′ obtained from T by: (i) deleting T A : x; (ii) replacing each T C_{i} : z_{i} with the pair of LS-formulae T C_{i} : z_{i}(x/w), T C_{i} : z_{i} (one after the other), where z_{i}(x/w) denotes the result of substituting x with w in z_{i}. Then T′ is a sound tree equivalent to T . Moreover, μ(T′) < μ(T ). ■

The above proposition implies that the structural rules can be eliminated in favour of the general closure rule. To see this, consider that the structural rules always yield a formula signed with T as conclusion. Moreover, each structural rule re-labels a labelled signed formula T A : x with a label y such that x ⊑ y in the class of frames associated with the structural rule. So, if a branch is closed by virtue of a set of LS-formulae {T A : x_{1}, …, T A : x_{n}, F A : y with ⨆ {x_{i}} ⊑ y, and T A : x_{i} results from the application of a structural rule to T A : z with z ⊑ x_{i}, then the branch would be closed anyway if T A : x_{i} were replaced by T A : z, by virtue of the general closure rule, without any need for the application of the structural rule. (Notice that F A : y cannot result from the application of a structural rule because all the structural rules involve only formulae signed with T.) So every formula which is the conclusion of a structural rule either is not used at all, and then can be removed, or it is used to close a branch and then can be replaced by an application of the general closure rule.

Thus, the operational rules and the closure rule are all we need. The difference between logical systems is reduced to the difference in the relation x ⊑ y which provides the conditions for the application of the closure rules. The correspondence between some well-known implication systems and the classes of information frames associated with different conditions on the ordering ⊑ is illustrated in Table 14.4. The system of classical implication is obtained, of course, just by ignoring the labels.

Examples. We consider now some examples of derivations based on the implication rules given above. Such derivations solve deduction problems for classes of logics associated with classes of frames. This means that a single closed tree allows us to determine the weakest logic for which it represents a proof. Thus, positive solutions of deduction problems can be obtained for classes of logics simultaneously. In the second part of this paper (forthcoming), where we discuss the decision problem, we shall define a notion of completed tree which allows us to deal with finite trees for some classes of logics. In this way negative solutions of deduction problems for classes of logics can also be read off the same completed tree. In the following examples the labelled KE-rules used in the derivation are indicated on the right column. (For these rules we use the same names used for the classical rules; see Table 14.1 above.)

We shall adopt the following notational device. We shall write just ⊢ to express the fact that the consequence relation ⊢ under consideration is not assumed to be closed under any of the structural rules. We shall write ⊢^{i_{1}...i_{n}} (n ≤ 4), to express the fact that the given consequence relation is closed under the structural rules corresponding to the rows i_{1}, …, i_{n} in Table 14.2. In turn, a substructural consequence relation ⊢^{i_{1}...i_{n}} corresponds to the class of information frames such that their partial ordering ⊑ satisfies all the conditions specified in rows i_{1} … i_{n}. In this way each class of consequence relation is associated with a class of information frames^{12}.

Example 14.2.6 ⊢ (A → B) → ((C → A) → (C → B))

Proof.

(1) F (A → B) → ((C → A) → (C → B)) : 1 (2) T A → B : a  EF →(1) (3) F (C → A) → (C → B) : a  EF →(1) (4) T C → A : b  EF →(3) (5) F C → B : a ∘ b  EF →(3) (6) T C : c  EF →(5) (7) F B : a ∘ b ∘ c  EF →(5) (8) T A : b ∘ c  ET →(4), (6) (9) T B : a ∘ b ∘ c  ET →(2), (8) ×  ■

Example 14.2.7 ⊢^{1} (A → (B → C)) → (B → (A → C))

Proof.

(1) F (A → (B → C)) → (B → (A → C)) : 1 (2) T A → (B → C) : a  EF →(1) (3) F (B → (A → C)) : a  EF →(1) (4) T B : b  EF →(3) (5) F A → C : a ∘ b  EF →(3) (6) T A : c  EF →(5) (7) F C : a ∘ b ∘ c  EF →(5) (8) T B → C : a ∘ c  ET →(2), (6) (9) T C : a ∘ c ∘ b  ET →(4), (8) ×  ■

Notice how the previous derivation fails in every logic characterized by non-commutative frames since a ∘ c ∘ b ⊑ a ∘ b ∘ c does not hold true in general.

Example 14.2.8 ⊢^{12} (A → (A → B)) → (A → B)

(1) F ((A → (A → B)) → (A → B)) : 1
(2) T (A → (A → B)) : a  EF →(1)
(3) F (A → B) : a  EF →(1)
(4) T A : b  EF →(3)
(5) F B : a ∘ b  EF →(3)
(6) T (A → B) : a ∘ b  ET →(2), (4)
(7) T B : a ∘ b ∘ b  ET →(6), (4)

× Notice how the previous derivation fails in every logic characterized by non-contractive frames, since a ∘ b ∘ b ⊑ a ∘ b does not hold true in general.

12We have just considered four structural rules which arise from the Gentzen tradition. It is obvious that the list of structural rules could be extended ad libitum (for a more comprehensive list see [Dôsen, 1988]). However the general pattern which associates with each structural rule a condition on the partial ordering ⊑ is the same. So we shall restrict our discussion to the four structural rules listed above, though it should be clear how it extends to cover any collection of structural rules.

Example 14.2.9 ⊢^{123} A → (A → A)

Proof.

\begin{matrix}(1) & F (A → (A → A)) : 1 \\ (2) & T (A) : a & EF →(1) \\ (3) & F (A → A) : a & EF →(1) \\ (4) & T A : b & EF →(3) \\ (5) & F A : a ∘ b & EF →(3) \\ × \end{matrix} ■

Here the branch is closed because of the general closure rule (14.17). For, let c = ⨆ {a, b}. Since the frame is expansive, c ⊑ c ∘ c. Therefore, since c ⊑ a and c ⊑ b, it follows immediately that c ⊑ a ∘ b and, hence, the branch is closed. Notice how the previous derivation fails in every logic characterized by non-expansive frames, since c ⊑ c ∘ c does not hold true in general. Notice also that this derivation would not have been possible if we had used just the special case of the closure rule as given in (14.16). In semantic terms, this means that the existence of the least information token which verifies a given sentence is crucial for the logical systems characterized by frames which are expansive yet non-monotonic, i.e. what we have called “mingle” frames. This is a point which is often neglected.

Example 14.2.10 ⊢^{1234} A → (B → A)

Proof.

\begin{matrix}(1) & F (A → (B → A)) : 1 \\ (2) & T (A) : a & EF →(1) \\ (3) & F (B → A) : a & EF →(1) \\ (4) & T (B) : b & EF →(3) \\ (5) & F (A) : a ∘ b & EF →(3) \\ × \end{matrix} ■

Notice how the previous derivation fails in every logic characterized by non-monotonic frames, since a ⊑ a ∘ b does not hold true in general.

The reader can easily verify that any attempt to derive Peirce’s law

((A → B) → A) → A

fails in every information frame, except the “degenerate” one consisting of one point only. Finally, Modus Ponens can be easily simulated in all implication systems:

Fact 14.2.11 If ⊢ A and ⊢ A → B, then ⊢ B.

Proof. It follows from the hypothesis that there are closed trees T_{1} and T_{2} for F (A → B) : 1 and F (A) : 1 respectively (recall that 1 is identity element for ∘). Then it is easy to see that the following is the required closed tree for F (B) : 1.

\begin{matrix}F B : 1 \\ \begin{matrix}T A → B : 1 \\ \begin{matrix}T A : 1 \\ T B : 1 \\ × \end{matrix} & \begin{matrix}F A : 1 \\ T_{2} \end{matrix} \end{matrix} & \begin{matrix}F A → B : 1 \\ T_{1} \end{matrix} \end{matrix}

■

Notice that the examples given above can be used to show that our labelled deduction system is complete with respect to the implication logics in Table 14.4, since suitable subsets of the theorems proved provide axiom systems for such logics and the rule of Modus Ponens can be derived in the basic system with no additional conditions on ⊑. However this simulation of the axiomatic systems does not preserve the subformula property, because of the applications of the “cut rule” PB to simulate the Modus Ponens rule. A more informative completeness proof will be given in the sequel.

Elimination rules for ¬ Since we define ¬A as A → ⊥, the elimination rules for ¬ can be immediately derived from the elimination rules for →. So, the rule for eliminating T ¬A : x will be:

\begin{matrix}T ¬A : x \\ T A : y \\ T ⊥ : x ∘ y \end{matrix} .  (14.23)

If we were dealing only with intuitionistic negation, completeness would be achieved by adding the following rule:

\begin{matrix}F ¬A : x \\ T A : a \\ F ⊥ : x ∘ a \end{matrix} with a a new atomic label  (14.24)

However this would not yield a uniform method for dealing with the fragments involving classical negation, satisfying also the double negation law. It turns out that the LDS approach allows us to obtain such a uniform method by exploiting the power of the labelling algebra.

Let us say that an information token x is consistent with an information token y if x ∘ y∦−⊥ or, in terms of valuations, v(⊥, x ∘ y) = F. It follows from our definitions that, given an arbitrary information token x, there exists the greatest information token consistent with it. For, let S be the set of all information tokens consistent with x, i.e. v(⊥, x ∘ y) = F for all y ∈ S. It follows from the definition of valuation above (condition 3) that S is a directed set. Consider now ⨆ S. By the continuity of ∘, x ∘ ⨆ S = ⨆{x ∘ y|y ∈ S}, so v(⊥, x ∘ ⨆ S) = v(⊥, ⨆{x ∘ y|y ∈ S}). By the continuity of the notion of falsity, v(⊥, ⨆{x ∘ y|y ∈ S}) = F. So ⨆ S is the greatest information token consistent with x. Notice that when the set S is empty, ⨆ exists and is equal to the bottom element of the lattice.

Hence we can define:

x^{∗} =_{def} max{y|v(⊥, x ∘ y) = F }.

Given our definition of the operation ^{∗}, we can replace the rule (14.24) with the following:

\frac{F ¬A : x}{T A : x^{∗}}  (14.25)

because if A is verified by a y such that ⊥ is falsified by x ∘ y, then A is verified by x^{∗}, being x^{∗} the greatest z such that ⊥ is falsified by x ∘ z.

This rule is equivalent to the original one provided that the following 0-premise rule is also available:

\overline{F ⊥ : x ∘ x^{∗}}  (14.26)

This rule is clearly sound and the pair of rules (14.25) and (14.26) are equivalent to the rule (14.24). Notice that the 0-premise rule for ⊥ given above is equivalent to the following additional closure rule:

\frac{T ⊥ : y_{1} ; ⋮ ; T ⊥ : y_{n}}{×}  (14.27)

provided that ⨆ {y_{i}} ⊑ x ∘ x^{∗} for some x. The special case:

\frac{T ⊥ : y}{×}  (14.28)

provided that y ⊑ x ∘ x^{∗} for some x, is sufficient for completeness except for the class of logics characterized by mingle frames (those which are expansive but non-monotonic).

Such rules are intuitionistically valid. However, classical negation can be characterized simply by assuming that, in the algebra of the labels, the operation ^{∗} is an involution, i.e. x^{∗∗} = x.

Proposition 14.2.12 For every frame L and every valuation v over L, the following two statements are equivalent:

1. For all information tokens x ∈ L and all sentences A:

v(A, x) = T ⟺ v(A, x^{∗∗}) = T;

2. For all information tokens x ∈ L and all sentences A:

v(¬¬A, x) = T ⟺ v(A, x) = T.

The proposition follows immediately from observing that, according to our definitions:

v(¬A, x) = T ⟺ v(A, x^{∗}) = F

and therefore

v(¬¬A, x) = T ⟺ v(A, x^{∗∗}) = T.

Let us consider two information tokens equivalent if they determine exactly the same propositions. Then, given a frame L, we can clearly restrict our attention to a subframe containing only a representative for each equivalence class of tokens. So we can assume without loss of generality that information frames do not contain distinct equivalent tokens. In this case, if any of the two properties in Proposition 14.2.12 holds, the operation ^{∗} is an involution, i.e. x^{∗∗} = x. We call a valuation classical if the operation ^{∗} is an involution. Examples of derivations exploiting this property of the ^{∗} operation will be given in later in this section.

As we have just mentioned it is easy to check that our elimination rules (together with PB) are equivalent to the following valuation clause:

v(¬A, x) = T ⟺ v(A, x^{∗}) = F  (14.29)

The reader familiar with the literature on relevance logic will be reminded of the ∗-operation used by Routley and Routley in their semantics of first-degree entailment [R. and Routley, 1972] (see also [Routley and Meyer, 1973]). (Similar operations, however, pervade a good deal of work on the semantics of negation in non-classical logics.) Here the ∗-operation is defined — and explained — in terms of our basic structures.

Elimination rules for ⊗. Let us define two operations^{13} / and \ between information tokens as follows:

x/y =_{def} ⨆{z|y ∘ z ⊑ x}
x\y =_{def} ⨆{z|z ∘ y ⊑ x}

It follows, from the continuity of ∘, that x/y (x\y) is the greatest z such that y ∘ z ⊑ x (z ∘ y ⊑ x).

13These operations should not be confused with the left and right implications of the Lambek calculus. We denote the latter by →. Although we do not deal explicitly with the former, which could be denoted by ←, it can be easily accommodated in our approach.

Notice that by definition:

y ∘ (x/y) ⊑ x and (x\y) ∘ y ⊑ x

The operations / and \ are identical in every commutative frame. There is a strong analogy between these operations and algebraic division, as emerges from the following properties :

y ∘ (x/y) ⊑ x  (14.30)
1 ⊑ x/x  (14.31)
(x/y) ∘ z ⊑ (x ∘ z)/y  (14.32)
(x/y)/z ⊑ x/(y ∘ z).  (14.33)

similar properties hold for \.

Let x be an information token that verifies A ⊗ B. Then we consider as part of the meaning of ⊗ that there are tokens y and z such that: (i) y verifies A; (ii) z verifies B and (iii) y ∘ z ⊑ x. Let a be such a token that verifies A, and b such a token that verifies B. Then, of course, a ∘ b verifies A ⊗ B. Moreover, we have that a ∘ b ⊑ x. So x/a verifies B, where x/a is defined as above (i.e. as the greatest information token z such that a ∘ z ⊑ x).

This justifies the following rule:

\begin{matrix}T A ⊗ B : x \\ T A : a \\ T B : x/a \end{matrix} with a a new atomic label  (14.34)

Moreover it is easy to see that following rules are also justified:

\begin{matrix}F A ⊗ B : x \\ T A : y \\ F B : x/y \end{matrix}  \begin{matrix}F A ⊗ B : x \\ T B : y \\ F A : x\y \end{matrix}  (14.35)

The reader can check that our elimination rules (together with PB) are equivalent to the following valuation clause:

v(A ⊗ B, x) = T ⟺ ∃y, v(A, y) = T and v(B, x/y) = T  (14.36)

When a consequence relation is commutative and contains a classical negation, namely it is closed under the Exchange rule and (14.5), then the following equivalence holds true:

A ⊗ B ⊣⊢ ¬(A → ¬B)  (14.37)

It can be easily shown that, under such circumstances, the operators / and \ can be identified and assumed to satisfy the following identity:

x/y = (x^{∗} ∘ y)^{∗}  (14.38)

Elimination rules for ∪ ∣ . As mentioned in Section 14.2.1, the operator ∪∣ arises naturally in logical systems with an involutive negation and closed under Exchange. It can be defined in terms of ¬ and → as follows:

A∪∣ B =_{def} ¬A → B.

So, its elimination rules can be derived from the rules for → and ¬ together with the assumption that possible models are restricted to the classical ones (i.e. those in which the operation ^{∗} is an involution).

It is easy to see that the following rules are valid:

\begin{matrix}T A∪∣ B : x \\ F A : y^{∗} \\ T B : x ∘ y \end{matrix}  \begin{matrix}T A∪∣ B : x \\ F B : x ∘ y \\ T A : y^{∗} \end{matrix}  (14.39)

\begin{matrix}T A → B : x \\ T A : y \\ T B : x ∘ y \end{matrix}  \begin{matrix}T A → B : x \\ F B : x ∘ y \\ F A : y \end{matrix}  \begin{matrix}F A → B : x \\ T A : a \\ F B : x ∘ a \end{matrix} (i)

\begin{matrix}T A ⊗ B : x \\ T A : a \\ T B : x/a \end{matrix} (i)  \begin{matrix}F A ⊗ B : x \\ T A : y \\ F B : x/y \end{matrix}  \begin{matrix}F A ⊗ B : x \\ T B : y \\ F A : x\y \end{matrix}

\begin{matrix}F A∪∣ B : x \\ F A : a^{∗} \\ F B : x ∘ a \end{matrix} (i)  \begin{matrix}T A∪∣ B : x \\ F A : y^{∗} \\ T B : x ∘ y \end{matrix}  \begin{matrix}T A∪∣ B : x \\ F B : x ∘ y \\ T A : y^{∗} \end{matrix}

\begin{matrix}T ¬A : x \\ T A : y \\ T ⊥ : x ∘ y \end{matrix}  \frac{F ¬A : x}{T A : x^{∗}}  \overline{F ⊥ : x ∘ x^{∗}}

\overline{T A : x F A : x}  T A : x_{1} ; ⋮ ; T A : x_{n} ; F A : y ; × (ii)

(i): for some new atomic label a (ii): whenever ⨆ {x_{1}, …, x_{n}} ⊑ y

Table 14.5: The rules of the system LKE_{S} for (basic) substructural logics.

and

\begin{matrix}F A∪∣ B : x \\ F A : a^{∗} \\ F B : x ∘ a \end{matrix} with a a new atomic label  (14.40)

The validity of these rules can be seen by deriving them from the rules for → and ¬.

Again, it is not difficult to check that our rules (together with PB) are equivalent to the following valuation clause:

v(A∪∣ B, x) = T ⟺ ∀y, v(A, y^{∗}) = T or v(B, x ∘ y) = T  (14.41)

The rules introduced in this section (summarized in Table 14.5) provide a labelled generalization of the KE system. We call this generalization LKE_{S}.

Liberalized rules. As we have seen, some of our rules introduce new atomic labels, while eliminating connectives. Let us call such rules generative.

One of the crucial properties of our notion of information frame ensures that whenever there is a token which verifies A there is a minimum (with respect to ⊑) such token. Therefore, we can always assume that the new label a introduced by a generative rule refers to such a minimum token without loss of soundness. Consider, for example, the rule (14.21). The clause (14.20) says that if x does not verify A → B, then there exists a y such that y verifies A and x ∘ y falsifies B. If a is the minimum token that verifies A, a ⊑ y by definition, and therefore x ∘ a falsifies B. Now, suppose that after analysing F A → B : x in this way we come across, in the same branch, a signed formula of the form F A → C : y. If we apply the rule to F A → C : y, we obtain T A : b with a new atomic label b, and F C : y ∘ b. Since both a and b are assumed to refer to the least x which verifies A, we can conclude that a = b. Similar arguments apply to the other generative rules. Therefore:

Fact 14.2.13 If T A : a_{1}, …, T A : a_{n} are labelled signed formulae occuring in the same branch, and all a_{i}’s are atomic labels, then a_{1} = ⋯ = a_{n}.

The above fact ensures that the domain of atomic labels introduced in a branch is not extended unnecessarily. We shall see that this property is crucial for the algorithmic formulation of some logics.

We can formulate the generative rules in a more convenient way so as to incorporate the content of Fact 14.2.13.

Definition 14.2.14 We say that an atomic label a is A-characteristic in a branch ϕ if T A : a occurs in ϕ.

Exploiting this terminology, we can formulate “liberalized” versions of the generative rules. Consider again the rule (14.21). We can reformulate it as follows:

\begin{matrix}F A → B : x \\ T A : a \\ F B : x ∘ a \end{matrix} for some A-characteristic atomic label a  (14.42)

In this formulation the atomic label does not have to be new. For instance, this version of the rule would allow for the following expansion step:

\frac{F A → B : x}{F B : x ∘ a}  (14.43)

whenever a is an atomic label such that T A : a occurs above in the branch. Only if no Acharacteristic atomic label occurs in the branch, does the rule force us to introduce a new atomic label a.

Similar liberalized versions can be formulated for the other generative rules. The justification of this move is somewhat similar to the justification of the “liberalized” δ rule in first-order analytic tableaux (on this point see [Haehnle and Schmitt, 1992]).

Analytic restriction. All the elimination rules of the system LKE_{S} are analytic, i.e. they “analyse” complex formulae by specifying the consequences of their truth and falsity in terms of the truth and falsity of their subformulae. On the other hand the branching rule PB (which is clearly related to the cut rule) can introduce arbitrary formulae and arbitrary labels. So the problem of proof-search in our system depends crucially on two components: the choice of the formulae introduced via PB and the choice of the associated labels.

In the classical KE system — with no labels – the use of the cut rulle PB can be restricted to analytic applications, i.e. applications preserving the subformula property, without loss of completeness. Indeed, the choice of the “cut formulae”, namely the formulae introduced by an application of PB, can be even further restricted so that the resulting refutations follow a regular pattern or canonical form and can be found by means of a simple systematic procedure, along the lines of the usual tableau-completion procedure. Moreover, such canonical refutations are often essentially shorter than the corresponding tableau refutations and never significantly longer (see [D’Agostino and Mondadori, 1994] for the related technical results in terms of polynomial simulations).

As we shall see, this property extends also to the labelled version of KE: we can restrict the applications of PB to subformulae without loss of completeness, and define a refutation procedure which is a labelled generalizzation of the classical one. However, the use of labelled formulae introduces a further degree of freedom in the application of the PB rule: the choice of the label. The semi-decision procedure described in the rest of this section restricts this freedom to some extent, but the space of the labels is still infinite. Of course, full mechanization can be achieved only when the complexity of the labels can be bound in one way or the other. This question will be addressed in the second part of the paper (forthcoming) where we discuss the decision problem. So the semi-decision procedure described below should be taken only as a convenient first step towards the mechanization of proof-search.

14.2. TABLEAUX FOR ALGEBRAIC LDS 401

In order to describe the semi-decision procedure we need to introduce the notion of completed branch. In the classical case, when no labels are present, this notion is straightforward: a branch ϕ is completed whenever for each signed formula X occurring in it one of the following conditions is satisfied:

1. X has the form T P or F P with P atomic.

2. X has the form F A → B and both T A and F B occur in ϕ.

3. X has the form T A → B and either F A or T B occurs in ϕ.

4. X has the form T A ∧ B and both T A and T B occur in ϕ.

5. X has the form F A ∧ B and either F A or F B occurs in ϕ.

6. X has the form F A ∨ B and both F A and F B occur in ϕ.

7. X has the form T A ∨ B and either T A or T B occurs in ϕ.

8. X has the form T ¬A and F A occurs in ϕ.

9. X has the form F ¬A and T A occurs in ϕ. When dealing with labelled signed formulae, this simple notion of a completed branch should be replaced by a more complex one.

Given a branch ϕ, we define the domain of ϕ as follows: Definition 14.2.15 The domain of ϕ, denoted by D_{ϕ} is the smallest set containing all the atomic labels a occurring in ϕ and closed under the operations ∘, ^{∗}, / and \. Definition 14.2.16 We say that a labelled signed formula X is completely analysed in a branch ϕ if one of the following conditions is satisfied:

1. X has the form T A → B : x and, for all y ∈ D_{ϕ}, either F A : y or T B : x ∘ y is in ϕ.

2. X has the form F A → B : x and for some atomic a, T A : a occurs in ϕ and F B : x ∘ a occurs in ϕ.

3. X has the form T ¬A : x and, for all y ∈ D_{ϕ}, either F A : y or T ⊥ : x ∘ y is in ϕ.

4. X has the form F ¬A : x and T A : x^{∗} occurs in ϕ.

5. X has the form T A ⊗ B : x and for some atomic a, both T A : a and T B : x/a occur in ϕ.

6. X has the form F A ⊗ B : x and, for all y ∈ D_{ϕ}, (i) either F A : y or F B : x/y is in ϕ and

(ii) either F B : y or F A : x\y is in ϕ. For the logics containing the operator ∪∣ , the obvious clause for this operator should be added.

We say that a branch ϕ is completed if every LS-formula occurring in ϕ is completely analysed. A tree is said to be completed if all its branches are completed. From our definitions a completed branch must be infinite. In the second part of this paper we shall see when and how we can restrict our attention to a finite portion of a completed branch without loss of generality.

The following is a procedure which expands a branch linearly:

Procedure: linear completion ϕ;

Repeat until a rule is applicable or ϕ is closed 1. if ϕ contains two formulae of the form T A → B : x and T A : y, and does not contain

T B : x ∘ y, then append T B : x ∘ y to ϕ; endif

2. if ϕ contains two formulae of the form T A → B : x and F B : x ∘ y, and does not contain F A : y, then append F A : y to ϕ; endif

3. if ϕ contains a formula of the form F A → B : x, then (i) if ϕ does not contain T A : a for any atomic label a, then append T A : a with a new atomic label a to ϕ; if ϕ contains T A : a for some atomic label a and does not contain F B : x ∘ a, then append F B : x ∘ a to ϕ; endif

4. if ϕ contains two formulae of the form T ¬A : x and T A : y, and does not contain T ⊥ : x ∘ y, then append T ⊥ : x ∘ y to ϕ; endif

5. if ϕ contains a formula of the form F ¬A : x, then if ϕ does not contain T A : x^{∗}, then append T A : x^{∗} ϕ; endif

6. if ϕ contains a formula of the form T A ⊗ B : x, then (i) if ϕ does not contain T A : a for any atomic label a, append T A : a for some new atomic label a to ϕ; (ii) if ϕ contains T A : a with a atomic, and ϕ does not contain T B : x/a, then add T B : x/a to ϕ; endif

7. if ϕ contains two formulae of the form F A⊗B : x and T A : y, and does not contain F B : x/y, then append F B : x/y to ϕ; endif

8. if ϕ contains two formulae of the form F A⊗B : x and T B : y, and does not contain F A : x\y, then append F A : x\y to ϕ; endif

Again, the procedure can be extended to cover the operator ∪∣ in the obvious way.

Let us say that a branch ϕ is linearly completed if the result of applying the above procedure to ϕ is ϕ itself. A branch which is linearly completed, may not be completed in that there may be LS-formulae which are not completely analysed. Notice that such LS-formulae must be of the form T A → B : x or T ¬A : x or F A ⊗ B : x. In the first case this means that for some y ∈ D_{ϕ} neither F A : y nor T B : x ∘ y are in ϕ. Then, we apply the branching rule PB as follows:

\overline{T A : y F A : y} .

and expand the two new branches until they are both linearly completed. It is easy to see that each of these linearly completed branches will contain either F A : y or T B : x∘y. Similar considerations apply to the second case and third case. It is routine to define a systematic procedure which combines the linear completion procedure with applications of the splitting rule PB to the effect that either a closed or a completed (infinite) tree is always obtained.

Given a frame L and a valuation v over L, let us say that v satisfies an LS-formula X if X has the form T A : x and v(A, x) = T, or X has the form F A : x and v(A, x) = F. We say that a set S of LS-formulae has a model if there are a frame L and a valuation v over L which satisfies all the LS-formulae in S. Then, we can show that:

Proposition 14.2.17 Every completed open branch has a model.

Proof.[sketch] Let ϕ be a completed open branch and v a valuation over a frame (including D_{ϕ}) satisfying:

1. v(P, x) = T for all atomic P such that T P : x occurs in ϕ;

2. v(P, x) = F otherwise.

Then v is a valuation which satisfies — via the valuation clauses (14.22), (14.29), (14.36) and (14.41) — all the LS-formulae in ϕ. This can be easily shown by induction on the degree of the LS-formulae in ϕ. ■

Proposition 14.2.17 above implies that the semi-decision procedure does not cause any loss of deductive power with respect to the unrestricted system, i.e. the former is complete with respect to the latter. For, suppose there is a tree T for a set of initial LS-formulae S such that T has a completed open branch ϕ. Then there is a valuation v which satisfies all the LS-formulae in ϕ. Thus no LKE_{S}-tree for the same set of initial LS-formulae (no matter whether the applications of PB are analytic or not) can be closed, otherwise such a valuation v would be impossible.

The procedure described above shows that every closed tree can be recognized in a finite number of steps, while the task of showing that a completed tree has an open branch is infinite. However, the search space for the PB-formulae (as opposed to that for the labels) is finite. We described this as a first step towards mechanization. In the next section we shall make a second step by introducing variables in the labels. Our final final step will consist in showing when and how the complexity of the labels can be bound so as to yield a full decision procedure. This problem will be discussed in the second part of this paper (forthcoming).

14.2.4 Soundness and completeness of LKE_{S}

We have shown that in the system LKE_{S} we can restrict the PB rule (or cut) to analytic applications, i.e. applications involving only subformulae of the formulae occurring above in the branch, without any loss of completeness. We have also described a procedure which generates analytic deductions. We show now that (the unrestricted) LKE_{S} is sound and complete with respect to the family of substructural logics defined in Section 14.2.1. It follows, by the argument in the previous section, that the analytic cut procedure is also complete. For the sake of simplicity in this section we consider the standard rules given in Table 14.5 and not their liberalized version.

To prove the completeness of LKE_{S} we make a crucial use of substitutions of atomic labels in LKE_{S}-trees. Let us say that an atomic label a is critical for a tree T if it is the new atomic label introduced by an application of a generative rule in T . In other words, the only atomic labels which are non-critical are those associated with initial LS-formulae.

Lemma 14.2.18 (Substitution Lemma) Let T be an LKE_{S}-tree, and let T′ be obtained from T by replacing each occurrence of a non-critical atomic label a with a label x such that x does not contain any atomic label which is critical for T . Then T′ is also an LKE_{S}-tree. Moreover, if T is closed, T′ is also closed.

As before, we write Γ ⊢^{i_{1},...,i_{n}} A to indicate that A is a consequence of Γ if the the consequence relation is closed under the structural rules identified by the string i_{1}, …, i_{n} (see Table 14.2) as well as under the general conditions on the logical operators. By Γ ⊢LKE_{S}^{i_{1},...,i_{n}} A we mean that A is LKE_{S}-provable from Γ for the labelling algebra specified by the conditions on ⊑ identified by the string i_{1}, …, i_{n} (in the same table). Then, it is not difficult to show that:

Proposition 14.2.19 Γ ⊢^{i_{1},...,i_{n}} A ⟹ Γ ⊢LKE_{S}^{i_{1},...,i_{n}} A

Proof. The proof is easily obtained by showing that the relation ⊢LKE_{S}^{i_{1},...,i_{n}} is closed under all the relevant conditions, namely (i) the basic conditions of Identity and Surgical cut, (ii) the general conditions on the logical operators C_{⊗}, C_{→}, C_{¬} and (iii) the structural rules identified by the string i_{1}, …, i_{n}. We show only how to prove closure under surgical cut, contraction and expansion and leave the rest to the reader. Suppose Γ ⊢LKE_{S}^{i_{1},...,i_{n}} A and Δ, A, Λ ⊢LKE_{S}^{i_{1},...,i_{n}} B. We want to

show that Δ, Γ, Λ ⊢LKE_{S}^{i_{1},...,i_{n}} B. Let us write T Γ : γ to denote a sequence of LS-formulae obtained by the sequence of formulae Γ by (i) signing them with T and (ii) attaching to each of them a distinct atomic label. We shall also use γ^{∘} to denote the ∘-concatenation of these atomic labels. Similarly, we shall use the abbreviations T Δ : δ, δ^{∘}, T Λ : λ and λ^{∘}. By hypothesis there is a closed LKE_{S}-tree T_{1} with initial LS-formulae T Γ : γ, F A : γ^{∘}, and there is also a closed LKE_{S}-tree T_{2} with initial LS-formulae T Δ : δ, T A : a, T Λ : λ, F B : δ^{∘} ∘ a ∘ λ^{∘}. We can assume, without loss of generality, that the sets of the atomic labels occuring in T_{1} and T_{2} are disjoint.

Then the following tree is closed:

[figure: \begin{matrix}T Δ : δ \\ T Γ : γ \\ T Λ : λ \\ F B : δ^{∘} ∘ γ^{∘} ∘ λ^{∘} \end{matrix}; T A : γ^{∘} T_{2}[a/γ^{∘}]; F A : γ^{∘} T_{1}]

Where T_{2}[a/γ^{∘}] denotes the result of substituting every occurrence of the atomic label a in T_{2} with the label γ^{∘}. By the substitution lemma above T_{2}[a/γ^{∘}] is closed if T_{2} is closed. Hence, the above closed tree is the required LKE_{S}-proof of Δ, Γ, Λ ⊢LKE_{S}^{i_{1},...,i_{n}} B.

To show closure under contraction, assume Γ, A, A, Δ ⊢LKE_{S}^{i_{1},...,i_{n}} B. We want to show Γ, A, Δ ⊢LKE_{S}^{i_{1},...,i_{n}} B provided 2 ∈ (i_{1}, …, i_{n}), i.e. the extra-condition a ∘ a ⊑ a on the frame is satisfied.

By hypothesis there is a closed LKE_{S}-tree T_{1} with initial LS-formulae

T Γ : γ, T A : a, T A : b, T Δ : δ, F B : γ^{∘} ∘ a ∘ b ∘ δ^{∘}

By the substitution lemma stated above we can replace every occurrence of b in this tree with an occurrence of a and the result will be a closed LKE_{S}-tree with initial LS-formulae:

T Γ : γ, T A : a, T Δ : δ, F B : γ^{∘} ∘ a ∘ a ∘ δ^{∘}

So, if the frame is contractive, i.e. a ∘ a ⊑ a, the following tree will also be closed:

[figure: \begin{matrix}T Γ : γ \\ T A : a \\ T Δ : δ \\ F B : γ^{∘} ∘ a ∘ δ^{∘} \end{matrix}; T B : γ^{∘} ∘ a ∘ a ∘ δ^{∘} ×; F B : γ^{∘} ∘ a ∘ a ∘ δ^{∘} T_{1}[b/a]]

To show closure under expansion, assume Γ, A, Δ ⊢LKE_{S}^{i_{1},...,i_{n}} B. We want to show that Γ, A, A, Δ ⊢LKE_{S}^{i_{1},...,i_{n}} B, provided that 3 ∈ (i_{1}, …, i_{n}), i.e. the extra condition a ⊑ a ∘ a on the frame is satisfied.

By hypothesis there is a closed LKE_{S}-tree T_{1} with initial LS-formulae T Γ : γ, T A : a, T Δ : δ, F B : γ^{∘} ∘ a ∘ δ^{∘}. Moreover, by the substitution lemma, the tree T_{1}[a/b] obtained from T_{1} by replacing every occurrence of a with an atomic label b which does not occur in T_{1} is also closed. Then the following tree will also be closed:

\begin{matrix}T Γ : γ \\ T A : a \\ T A : b \\ T Δ : δ \\ F B : γ^{∘} ∘ a ∘ b ∘ δ^{∘} \end{matrix} T B : γ^{∘} ∘ a ∘ δ^{∘} T B : γ^{∘} ∘ b ∘ δ^{∘} × [figure]  [figure] F B : γ^{∘} ∘ b ∘ δ^{∘} T_{1}[a/b] [figure]  [figure] F B : γ^{∘} ∘ a ∘ δ^{∘} T_{1}

The leftmost branch of the tree is closed by virtue of the general closure rule applied to T B : γ^{∘} ∘ a ∘ δ^{∘}, T B : γ^{∘} ∘ b ∘ δ^{∘} and F B : γ^{∘} ∘ a ∘ b ∘ δ^{∘}. For, ⨆ {γ^{∘} ∘ a ∘ δ^{∘}, γ^{∘} ∘ b ∘ δ^{∘}} = γ^{∘} ∘ ⨆ {a, b} ∘ δ^{∘}. So, by denoting ⨆ {a, b} with c, we have γ^{∘} ∘ c ∘ δ^{∘} ⊑ γ^{∘} ∘ c ∘ c ∘ δ^{∘} ⊑ γ^{∘} ∘ a ∘ b ∘ δ^{∘}. ■

Remark 14.2.20 Notice that in the above proof of the closure of ⊢LKE_{S}^{i_{1},...,i_{n}} under expansion the simple special case of the closure rule, as in (14.16), would be sufficient if the frame was assumed to be a monotonic one, i.e. such that a ⊑ a ∘ b. In this case the branch would be closed by virtue of the pair T B : γ^{∘} ∘ a ∘ δ^{∘}, F B : γ^{∘} ∘ a ∘ b ∘ δ^{∘}. Moreover, a simple analysis of the proof of the above proposition shows that the special case is always sufficient for completeness except for the class of mingle frames, i.e. those which are expansive but non-monotonic. The algorithmic problems raised by our use of the labels in the closure rule (both for the general and the special case) will be discussed in the second part of this paper.

It follows from our previous discussion that the semi-decision procedure is also complete and, therefore, the applications of PB can be restricted as indicated in this procedure.

The soundness (or “faithfulness”) of the system LKE_{S} with respect to the substructural consequence relations stems from our discussion in the previous sections and from the consideration of what we have called “the canonical interpretation” of an information frame. According to this interpretation:

• the information tokens in P are sets of formulae closed under ⊢;

• the composition operation ∘ is defined as follows:

x ∘ y =_{def} {A ⊗ B|A ∈ x, B ∈ y};

• the identity 1 is defined as the set of theorems {A| ⊢ A};

• the partial ordering ⊑ is set-inclusion.

Then, P is a complete lattice under ⊑ and all the other conditions in the definition of an information frame (Definition 14.2.1) are satisfied. The canonical valuation v is then defined as follows:

v(A, x) = T iff A ∈ x

It is routine to show that all the LKE_{S}-rules are sound under the canonical interpretation when the LS-formulae T A : x and F A : x are interpreted as A ∈ x and A ∉ x respectively. So, if

A_{1}, …, A_{n} ⊢LKE_{S}^{i_{1},...,i_{n}} B, i.e. there is a closed tree for T A_{1} : a_{1}, …, T A_{n} : a_{n}, F B : a_{1} ∘ ⋯ ∘ a_{n}, this

means that B ∈ a_{1} ∘ ⋯ a_{n} where the a_{i}’s are the sets {C|A_{i} ⊢ C}. Thus, A_{1} ⊗ ⋯ ⊗ A_{n} ⊢ B and, by C_{⊗}, A_{1}, …, A_{n} ⊢ B. This is sufficient to show:

Proposition 14.2.21 Γ ⊢LKE_{S}^{i_{1},...,i_{n}} A ⟹ Γ ⊢^{i_{1},...,i_{n}} A

14.2.5 Free variables in the labels

Each label occurring in a tree is built up from atomic labels and the relevant operations of the labelling algebra. New atomic labels are introduced by applications of the rules for analysing formulae of the form F A → B : x and T A ⊗ B : x, and the propagation of the labels is uniquely determined by the tree rules. By contrast, the rule

\overline{T A : x F A : x}

is sound for every choice of x and we only know that, for every valid sequent Γ ⊢ A, there exists a set of choices for the labels generated by the application of PB which leads to a closed tree. It is therefore convenient in practice to apply the rule PB with a variable label x and postpone the evaluation of this variable until enough information is available. For this purpose we need some new notions.

Definition 14.2.22 We enrich our labelling language with a denumerable set of variables denoted by ν_{1}, ν_{2}, ν_{3} etc. A label-scheme α is a label containing variables. A potential closure set is a set of LS-formulae of the form {T A : α_{1}, …, T A : α_{n}, F A : β}. A potentially closed branch is a branch containing a potential closure set. A tree T is potentially closed if all its branches are potentially closed.

Notice that a potentially closed branch may contain more than one potential closure set. So, every potentially closed branch ϕ determines a finite set I_{ϕ} of inequalities of the form ⨆ {α_{i}} ⊑ β, one for each potential closure set occurring in it. (Recall that, with the exception of the logics characterized by “mingle” frames, i.e. frames which are expansive but not monotonic, a closure set is always a pair {T A : α, F A : β}, so that the inequalities I_{ϕ} have the simpler form α ⊑ β}.) A potentially closed tree represents the set of all trees obtained by replacing the variables in the labels with specific values. Some of these substitutions may yield a closed tree. The criterion for the existence of a closed tree, given a potentially closed one, is simple:

Condition for the existence of closed trees. Let T be a potentially closed tree for Γ ⊢ A with potentially closed branches ϕ_{1}, …, ϕ_{n}. Each potentially closed branch ϕ_{i} is associated with a finite set of inequalities I_{ϕ_{i}}. Let C be the set of all sets of inequalities {i_{1}, …, i_{n}} such that i_{j} ∈ I_{j} for j = 1, …, n. Then, there is a closed tree for Γ ⊢ A if at least one set in C has a simultaneous solution in the labelling algebra under consideration.

In the second part of this paper (forthcoming) we shall discuss the algorithmic problems related to this use of free variables in the labels. We conclude this first part by illustrating our method with some examples.

14.2.6 Further examples

Example 14.2.23 As an example of the use of variables in the labels we show a tree for

⊢ ((A → A) → B) → ((B → C) → C).

We use x, y, z as label-variables.

F ((A → A) → B) → ((B → C) → C : 1 T (A → A) → B : a F (B → C) → C : a T B → C : b F C : a ∘ b T A → A : x T B : a ∘ x T C : b ∘ a ∘ x [figure] [figure] F A → A : x T A : c F A : x ∘ c

This is a potentially closed tree which is turned into a closed tree for all commutative logics under the substitution x = 1.

Example 14.2.24 Consider the formula (¬A → ¬B) → (B → A). This is a theorem of linear and relevance logic (as well as, of course, classical logic) but not a theorem of intuitionistic logic. We show that there are no countermodels for the first two logics while showing at the same time that there is one for the third.

F (¬A → ¬B) → (B → A) : 1 T ¬A → ¬B : a F B → A : 1 ∘ a (= a) T B : b F A : a ∘ b T ¬A : x T ¬B : a ∘ x T ⊥ : a ∘ x ∘ b [figure] [figure] F ¬A : x T A : x^{∗}

In this tree, the lefthand branch is closed for all commutative labelling algebras under the substitution x = (a ∘ b)^{∗}. Under this substitution the righthand branch is closed only for classical models, since (a ∘ b)^{∗∗} = a ∘ b.

Example 14.2.25 The formula ¬¬A → A is a theorem of linear and relevance logic, but not of intuitionistic logic.

F ¬¬A → A : 1 T ¬¬A : a F A : 1 ∘ a (= a) T ¬A : x T ⊥ : a ∘ x [figure] [figure] F ¬A : x T A : x^{∗}

The lefthand branch is closed under the substitution x = a^{∗}. The righthand branch is closed under the same substitution only for classical models, where a^{∗∗} = a.

Example 14.2.26 The formula (A → ¬A) → ¬A is a theorem of relevance and intuitionistic logic but not of linear logic.

F (A → ¬A) → ¬A : 1 T A → ¬A : a F ¬A : a T A : a^{∗} T ¬A : a ∘ a^{∗} T ⊥ : a ∘ a^{∗} ∘ a^{∗}

This one-branch tree is closed for all contractive models, since in all such models a∘a^{∗} ∘a^{∗} ⊑ a∘a^{∗}.

Example 14.2.27 The formula (A ⊗ B → C) → (A → (B → C)) is valid in all frames.

F (A ⊗ B → C) → (A → (B → C)) : 1 T A ⊗ B → C : a F A → (B → C) : a T A : b F B → C : a ∘ b T B : c F C : a ∘ b ∘ c T A ⊗ B : x T C : a ∘ x [figure] [figure] F A ⊗ B : x F B : x/b

The left-hand branch of the above tree is closed under the substitution x = b ∘ c. Since c = 1 ∘ c ⊑ b/b ∘ c ⊑ (b ∘ c)/b (see above, p. 398), the righthand branch is closed under the same substitution.

410 CHAPTER 14. LABELLED ANALYTIC DEDUCTION

Combining Labelled Deductive Systems

15.1 Introduction and motivation

Among the many advantages of working within the LDS framework, there is one of great usefulness. It is the capability of combining any two LDS logics in a very easy and simple way. This allows us to combine any twologics, provided we have an LDS formulation for them. Since we have general methods for finding an LDS formulation for almost arbitrary logics, we should, in principle, be able to develop general methods for combining arbitrary logics.

In many simple cases, such as modal and intuitionistic logics, the methods of fibring and combining them, whcih arise out of LDS considerations can be directly applied without detour through LDS. Other logics may actually require an LDS presentation.

Let us begin by presenting the master problem of combining logics. Master Problem: General Weaving of Logics Problem Let L be a logic with some connectives. Let L_{i}, i ∈ I be a family of logics which are conservative extensions of L. Assume L_{i} ∩ L_{j} = L, for i ≠ j. Assume each L_{i} has, among others, the set C_{i} = {♯_{1}^{i}, …, ♯_{k(i)}^{i}} of additional connectives to those of L. Then the general weaving of logics problem is to characterise the set of all logics {L_{I}^{α} | α is a name for a way of combining L_{i}, i ∈ I} which are built on the connectives of L and ⋃_{i=1}^{n} C_{i} and which are conservative extensions of each L_{i}, i ∈ I.

In particular we seek to characterise the minimal such logic L_{I}^{min}, as well as some distinguished other special logics L_{I}^{δ}, which possibly represent some special ways of combining L_{i}, i ∈ I. We use the notation L_{I}^{δ} = ⊗_{i∈I}^{δ}L_{i}.

The above general problem requires the formulation and solution of several secondary problems. Problem 1: Characterise the notion of a logical system (i.e. define the ‘entities’ (logics) involved in the weaving of logics ‘problem’). Problem 2: Present methodologies for combining any two logics, independent of how they are formulated (e.g. one may be formulated as a Hilbert system, the other through a semantical interpretation, the third may be an algebraic logic, etc.). Problem 3: Investigate transfer properties. If all L_{i}, i ∈ I share some property (decidability, interpolation, etc.) do they transfer to L_{I}? Problem 4: Compare the combined logics thus obtained with existing known combinations of logics, which are abundant in the literature. Problem 5: Study possible natural interactions between the logics L_{i}, i ∈ I during the combination process, possibly leading to non-conservative combinations. Try to identify special ways of non-conservatively combining logics, which are meaningful (e.g. combinations leading to temporal logics, n-dimensional cross products, combining a logic with its ‘metalevel’, etc.).

Some attempts at a methodical solution to some of these problems for the case of normal modal logics can be found in [Kracht and Wolter, 1991, Fine and Schurz, ] and for intuitionistic modal logics in [Amati and Pirri, 199]. In addition there are many papers presenting particular combinations of particular logics to suit particular applications. These range from introducing modality into relevance logic to the fuzzification of an arbitrary logic. It is time to seek a general methodology for combining logics (which we refer to as ‘weaving’ of logics) and attempt to classify existing combinations within such a methodology. This is the task of this series of papers.

Upon reflection, it seems that the easiest way to combine logics is when they are presnted semantically. The semantics characterises each connective individually and so any choice of connectives from a variety of systems can in principle be combined. The only problem might arise is when the semantics are completely different in flavour. Can we do something in this case? Our best bet is to use algebraic methods, as we shall see in a later section.

Our main tool in this chapter is the notion of fibred semantics and fibred labelling. . We combine logics by fibring their semantics or labels.

Example 15.1.1 (Motivating example for fibred semantics) This example introduces the idea of fibred semantics. Imagine we want to form a combined logic with the intuitionistic ⇒ and the K modality □. We know the Kripke semantics for ⇒ and the Kripke semantics for □. We also know the syntax of the combined logic, namely all wffs built up from the atoms using any of {⇒, □} as connectives. What we do not have is any axioms or semantics for the combined system.

Let us proceed nevertheless and take an arbitrary formula of the combined language, say B = (p ⇒ □(q ⇒ r)). We do not have models for the combined language, but we do notice that the main connective of B is ⇒ and that B = (p ⇒ A) with A = □(q ⇒ r). We do have intuitionistic models for ⇒ so let us take such a model of the form m = (S, ≤, a, h). S is the set of possible worlds, ≤ is a reflexive and transitive relation on S, a ∈ S is the actual world and h is the assignment to the atoms, satisfying t ∈ h(q) and t ≤ s imply s ∈ h(q), where h(q) ⊆ S.

We can evaluate, or try to evaluate, B in m, since its main connective is ⇒. For B to hold in m we must have that it holds in the actual world a. Thus we continue: a ⊨m B iff a ⊨m (q ⇒ A) iff for all t such that a ≤ t and t ⊨m p we have t ⊨m A.

We know how to evaluate t ⊨m p, because p is atomic: t ⊨m p iff (def) t ∈ h(p).

The problem is to evaluate t ⊨m A, which is t ⊨m □(q ⇒ r). □ is not in the intuitionistic language and so we do not have a semantic recursive evaluation clause for it. Nor is A atomic so we cannot use the assignment h. So what shall we do?

We notice that in order to complete the evaluation of a ⊨m B all we need is to have an answer, for each t ∈ S such that a ≤ t, to the question of whether t ⊨m A. Any answer will do! It is at this stage that we can introduce the basic idea of fibring! We notice that A = □(q ⇒ r) is a formula beginning with the modality □. So if we take any Kripke model for □ (and we do have a sematnics for □) then we can evaluate A there and get a value, and this value we give to t ⊨m A. So let us associate with each t ∈ S, a modal Kripke model n_{t} = (T^{t}, R^{t}, b^{t}, h^{t}) and agree that t ⊨m A be the value of n_{t} ⊨ A. Note that we also have dependence on m, i.e. we should write n_{m,t} etc, but since m is fixed, we omit that.

Let us now expand on n_{t} ⊨ A. By definition we need to check n_{t} ⊨ A iff b^{t} ⊨n_{t} □(q ⇒ r) iff for all s ∈ T^{t} such that b^{t}R^{t}s we have s ⊨n_{t} (q ⇒ r).

We now have a similar problem as before. We want to evaluate in a modal model an intuitionistic formula. The model cannot give us a value. Again we notice that all we need is to get a value somehow. Let us use the same idea and associate with each s ∈ T^{t} an intutionisitc Kripke model m_{t,s} = (S^{t,s}, ≤^{t,s}, a^{t,s}, h^{t,s}) and evaluate q ⇒ r in this model. We continue: s ⊨n_{t} (q ⇒ r) is the same by agreement as m_{t,s} ⊨ (q ⇒ r) which by definition of intuitionistic satisfaction, is the same as a^{t,s} ⊨ (q ⇒ r), which holds iff for all w, a^{t,s} ≤^{t,s} w and w ⊨m_{t,s} q imply w ⊨m_{t,s} r.

The latter can now be evaluated because q and r are atomic.

To summarize, we needed to have associated (or fibred) with each intuitionistic world a modal model and with each modal world an intuitionistic model. When we were forced to evaluate a formula D in a world belonging to the other semantics, we continued the evaluation in the associated model.

The basic fibring can be done by a two place function F. If m is a model and t is a possible world in m then F(m, t) is a Kripke model of the other semantics. We have t ⊨m A iff F(m, t) ⊨ A, iff a^{F(m,t)} ⊨ A where A is a formula with main connective not in the logic of the model m and a^{F(m,t)} is the actual world of the model F(m, t).

The model F(m, t) can be presented in many forms. If the semantics of the two logics involved are very similar, the model F(m, t) may be a slight modification of the model m itself.

It may even be the case that F(m, t) is m itself with a change in evaluation procedures. For example fibring a classical model to an intuitionistic model can be achieved by a change of the evaluation procedure.

The intuitive idea of the fibred semantics can also be understood in terms of classical model theory. Suppose we are dealing with classical models of a binary relation R and unary relation Q. These models have the form (S, R, Q) where S is a set and R ⊆ S × S and Q ⊆ S. Where do R and Q come from? For the purpose of the model theory of a binary and unary relations, we do not care where R and Q come from. All we need is a subset of S × S and a subset of S. However, we could get R and Q in a more elaborate way. We could, for example, map S onto a group G using f : S → G and let xRy hold in S iff f(x) · f(y) = f(y) · f(x) in G and let x ∈ Q hold if for example f(x)^{2} = 1. Our way of looking at this is to say that we are fibring group structure onto S.

In computer science terms this can be looked upon as opening a window or what is called ‘delegation’ in object oriented programming. To compute whether xRy holds, we open a window and place f(x), f(y) in the window (i.e. go to the associated group) and then compute something in the widnow (e.g. commutativity) and then come back. The group G itslef may be further fibred, for example, into a field F. We need a function g : G → F with some translation of the group operations into field operations. For example x · y = z holds in G iff g(x) · g(y) = g(z) holds in F. (This means that G is viewed as a multiplicative group of a field.)

The above is not exactly fibring, it is more like representation. Fibring occurs when we double back into S. For example we can map G into S using a mapping h : G → S and require that for some formula Ψ(u_{1}, u_{2}, u_{3}) of S the following holds: x · y = z in G iff Ψ(h(x), h(y), h(z)) holds in S.

Let us now do this operation more systematically. Suppose we are given models of a binary relation, say (S_{1}, R_{1}), …, (S_{n}, R_{n}), … and we want to create models of a binary relation and a unary relation. The simplest way of achieving this is to take the models (S_{n}, R_{n}) and to add a subset Q_{n} ⊆ S_{n} to form (S_{n}, R_{n}, Q_{n}). Now let us ask, where does Q_{n} come from? It can be arbitrary, or we can fibre (S_{n+1}, R_{n+1}) into (S_{n}, R_{n}). Let Ψ_{n}(R, Q, x) be a formula with R, Q and one free variable x, let f_{n} : S_{n} → S_{n+1} embed S_{n} in S_{n+1} and let (S_{n}, R_{n}) ⊨ x ∈ Q iff (S_{n+1}, R_{n+1}) ⊨ Ψ_{n}(R, Q, f_{n}(x)). Notice that of course Ψ_{n} depends on x (through f_{n}(x)).

Of course this evaluation may not terminate if each Ψ_{n} contains Q but it will terminate if Ψ_{n} does not contain Q for some n.

We do have fibring here because the value of x ∈ Q at (S_{n}, R_{n}) is determined by going to (S_{n+1}, R_{n+1}).

In programming terms, we have a program π_{1}, relying on a subset Q which can be computed by a program π_{2}. π_{2} also relies on Q but sends the computation to π_{3} etc. The program will terminate if some π_{n} is able to compute Q itself.

Example 15.1.2 (a) Consider any sophisticated word processor. It will allow you, in the middle of a letter, to open a window and access a spreadsheet. This is in order to enable you to do a calculation which arises in the text. In fact the more sophisticated the program is, the more interaction there is between the word processor and the spreadsheet and the more you can import into your letter.

(b) A prolog program may use the predicate prime(x). It may send the predicate to a Pascal program to check whether x is prime. The pascal program may use assembly language.

The next series of definitions will formally present the concept of fibring of this chapter. Compare with section ???.

Definition 15.1.3 (Logics and Semantics) 1. A propositional logical language L is comprised of an infinite set of atoms and a set of connectives {♯_{1}, …, ♯_{k}}. The connective ♯_{j} has n_{j} places.

2. The wffs of L are defined by induction

• An atom q is a wff

• If A_{1}, …, A_{n_{j}} are wffs then ♯_{j}(A_{1}, …, A_{n_{j}}) is a wff with main connective ♯_{j}.

3. A consequence relation |∼ in the language L is a binary relation on wffs of L of the form A|∼B satisfying:

• Identity

A|∼A

• Transitivity

A|∼B and B|∼C ⇒ A|∼C.

4. A classical monadic logic language CL for a possible world semantics for a logic L with connectives {♯_{1}, …, ♯_{k}} has the non logical predicates φ_{1}, …, φ_{k}, R_{1}, …, R_{k} where R_{i} is n_{i}+1 place predicate (corresponding to the n_{i} place connective ♯_{i}) and φ_{i} is m_{i}(m_{i} ≤ n_{i} + 1) place predicate supporting (or connected to) the connective ♯_{i}.

5. An interpretation for the connectives ♯_{i} is a classical first-order formula Ψ_{i}(t, Q_{1}, …, Q_{n_{i}}) of the langauge CL where t is the only free element variable in Ψ_{i} and Q_{j} are monadic variables (subset variables).

6. A possible world structure for the logic L in the langauge CL with interpretation {Ψ_{i}} is any classical structure m = (Sm, φm_{j}, Rm_{j}, em, hm), where e ∈ S, φ_{j} and R_{j}, … are relations as in (4) above, and h is an assignment giving a subset h(q) ⊆ S, to each atom q of L.

7. Given a structure m, the function h can be extended to an arbitrary wff A of L by structural induction as follows

h(♯_{j}(A_{1}, …, A_{n_{j}})) = {t | m ⊨ Ψ_{j}(t, h(A_{1}), …, h(A_{n_{j}}))}

We also write t ⊨_{h} A when t ∈ h(A).

We are abusing notation here. ‘⊨’ is classical satisfiability. Ψ_{j}(t, Q_{1}, …, Q_{n_{j}}) is a formula with free variable t and free subset variables Q_{1}, …, Q_{n_{j}}. By substituting h(A_{i}) for Q_{i} we get a wff which we can evaluate at m as a classical model.

8. m is said to satisfy A, m ⊨ A, if e ∈ h(A).

9. We say that a class of model K characterises a consequence relation |∼ (or |∼ is complete for K) if we have for all A, B:

A|∼B iff for all m ∈ K (if m ⊨ A then m ⊨ B).

Definition 15.1.4 (Fibred semantics) Let L_{i} be logic languages with connectives {♯_{1}^{i}, …, ♯_{k_{i}}^{i}}, each of n_{j}^{i} places and CL_{i} be the corresponding monadic classical logic languages with interpretations Ψ_{j}^{i} for the respective connectives. Let L be a langauge containing (and based on) the disjoint union of the connectives of L_{i}. Let CL be a monadic classical language based on the disjoint union of the predicates of CL_{i}. We define a special class of structures for CL, obtained by ‘fibring’ the structures of CL_{i}.

Let K_{i} be a class of structures for L_{i} of the form m = (Sm, φm_{j}, Rm_{j}, em, hm). We can assume that all sets of possible worlds Sm of all structures in ∪_{i}K_{i} are all pairwise disjoint. We now construct the fibred structures for L.

Let W = ⋃_{m∈∪_{i}K_{i}} Sm. Since all Sm are pairwise disjoint, for each w ∈ W there exists a unique m, i such that w ∈ Sm and m ∈ K_{i}. Let τ(w) be the function giving this unique i. Let a(w) = em, i.e. a gives the actual world of the model m to which w belongs. Let F(i, w) be an arbitrary function giving for each i and each w a value w′ = em, m ∈ K_{i}. The function F is a fibring function, associating with each possible world w and each semantic class K_{i} a structure m ∈ K_{i}. Let h be an assignment into W defined by

w ∈ h(q) iff w ∈ hm(q), for the unique m such that w ∈ Sm.

We call any n = (W, τ, a, F, w_{0}, h) a fibred structure.

Let K be the class of all fibred structures. Let A be a wff of L. We define the notion of satisfaction as follows:

• w ⊨_{h} q iff w ∈ h(q) , for q atomic.

• w ⊨_{h} ♯_{j}^{i}(A_{1}, …, A_{n_{j}^{i}}) iff

1. τ(w) = i and for the unique m ∈ K_{i}, such that w ∈ Sm we have m ⊨ Ψ_{j}^{i}(h(A_{1}) ∩ Sm, …, h(A_{n_{j}^{i}}) ∩ Sm), or

2. τ(w) ≠ i and w′ = F(i, j) and w′ ⊨ ♯_{j}^{i}(A_{1}, …, A_{n_{j}^{i}}).

• we say n ⊨ A iff w_{0} ⊨ A

• Let K be a class of fibred structures. We say K ⊨ A iff for every n in K, n ⊨ A.

Fibring the semantics of a modal logic to itself can be considered as a special case of two dimensional modal logics.

Definition 15.1.5 (Fibred Kripke Semantics) Let S be a nonempty set of possible worlds. Consider T = S^{2}, the set of all 2 dimensional vectors (t_{1}, t_{2}) with t_{i} ∈ S. Consider an accessibility relation R ⊆ T^{2}, of the form (t_{1}, t_{2})R(s_{1}, s_{2}) and an assignment h of the form h(q) ⊆ T. Then (T = S^{2}, R, h) is a Fibred Kripke model.

The above definition seems to be a simple generalisation of the usual Kripke semantics. Instead of taking structures of the form (S, R, h), where S is a set of possible worlds and R is the accessibility relation on S, we are generalsiing and taking T = S^{2} and letting R be an accessibility relation on 2-vectors from S. This is technically correct, however, the way we are going to manipulate the semantics is going to rely heavily on the internal structure of S^{2}. The relation R is between pairs of elements, (w_{1}, t)R(w′, s). If we understand w as naming a Kripke structure with a set of possible worlds S(w) and understand t as a possible world t ∈ S(w), then we can read the relation (w, t)R(w′, s) as meaning that the Kripke structure named w′, with the set of possible world S(w′) containing point s ∈ S(w′), is associtated with t ∈ S(w).

The point s ∈ S(w′) can be interpreted as the actual world of S(w′).

Thus we have:

• w is a model iff ∃t, y, z(w, x)R(y, z).

• t ∈ S(w) iff ∃y, z(w, t)R(y, z)

• y is a model related to (w, t) iff ∃z(w, t)R(y, z)

• z ∈ S(y) iff (w, t)R(y, z).

[figure: with S(w′); associated model; model with S(w); t ∈ S(w); s ∈ S(w′)]

Figure 15.1:

Figure 15.1 illustrates this notion.

Let us now examine how the previous example of sequence of models (S_{n}, R_{n}) fits into Definition 15.1.4. We can assume without loss of generality that all the S_{n} are subsets of a single set.

Denote this set by W and think of it as a set of labels. We can also identify the indices 1, 2, 3, …, n, … as elements of W. We can thus assume that for each w ∈ W, S_{w} ⊆ W is a set of possible worlds and R_{w} ⊆ S_{w}^{2} is a binary relation on S_{w}. Let s(n) = n + 1 be the successor function. Since we identified the indices {n} with a subset of W, the successor function becomes some function * in W ↦ W.

The function f_{w} : S_{w} → S_{w∗} can be realised by a binary function F(w, x) : W × W → W satisfying for s ∈ S_{w} that F(n, x) ∈ S_{w∗}.

The binary relation R of Definition 15.1.5 can be realised as (w, x)R(w∗, f_{w}(x)) or in our new notation (w, x)R(a(w), F(w, x)). where a(w) = w∗.

Example 15.1.6 We show by way of example how the Kripke modal semantics can be viewed as fibred in the sense of previous definitions. Let m = (T, R, a, h) be a Kripke model. For each t ∈ T associate the Kripke model m_{t} = (T^{t}, R^{t}, t, h^{t}), where

T^{t} = {s ∈ T | t = s ∨ tRs}
R^{t} = R ↾ T^{t} × T^{t}
h^{t} = h ↾ T^{t}

clearly for any A

t ⊨m □A iff t ⊨m_{t} □A.

This paper discusses relationships between the consequence relations of L_{i} and the consequence relation of L, for various conditions on F and h. Let δ(F, h) be a condition on the combination (i.e. on F and h). We denote by CL^{δ} the class of fibred structures obtained and by L^{δ} the resulting logic (consequence relation). For some δ’s, L^{δ} is a conservative extension of each L_{i}. For other δ’s, we get a specific combined logic. The general problem to study is given a δ and L_{i}, can we characterise L^{δ}? If we have syntactical axiomatiations of L_{i}, can we put them together to obtain an axiomatization of L^{δ}? Can we identify known combined logics from the literature and present them as the result of some special conditions δ on the fibring?

Our method is to show how we can fibre logics L_{i} into a logic L^{F} through the most general fibring construction. Once we get semantics and axiomatisation for this general logic L^{F}, any combined logic existing in the literature can, in principle, be given a semantics which is an extension of the L^{F} semantics. The situation is similar to that of modal logic K. Any modal logic stronger than K can, in principle, be given semantics by restricting that of K. So, by studying the most general combination L^{F} of logics L_{i}, any existing axiomatic combined logic can, in principle, be given semantics. Converely, we can try and axiomatise any restriction on the L^{F} semantics.

For example, if we restrict our choice of fibred structures and require that for any atomic q and any w an i

w ⊨ q iff F(i, w) ⊨ q

we get a construction which we call dove-tailing. Does this condition correspond to an axiom on L? We shall see that in modal logic this requirement is very natural.

Example 15.1.7 (Sample Problem) Devise a logic with the classical connective ‘∧’, the intutionistic implication ‘⇒’, and the S4 modality ‘□’. In other words, we want a logic L with connectives {∧, ⇒, □} where these connectives behave in L respectively as they behave in their original logics. (Actually ‘∧’ is the same in all three logics.)

To solve the above problem, we adopt an inutitive way of thinking. Given two logics, L_{1} and L_{2}, how do we combine them? Never mind the question of whether we get a (minimal) conservative combination; we just want to put them together in some natural way.

Well, whether we can do anything depends on how the the logics are presented to us and what we know about them. Here are some possibilities:

1. If L_{1} and L_{2} are presented in the same methodology, say proof theoretically as Gentzen systems, or say as Hilbert systems, then we can let L be the union of the languages and axioms and rules and allow substitution in L in both sets of axioms and rules. Thus if L_{1} is a modal K4 for □_{1} and L_{2} is modal K4 for □_{2} and the common language is classical logic then L will have both modalities with K4 axioms and rules for each. There is no interaction between the two modalities. In fact, if we add the interactive axioms

\begin{matrix}A → □_{2}♢_{1}A \\ A → □_{1}♢_{2}A \end{matrix}

we get the temporal logic K_{t} (with □_{1} future and □_{2} past).

2. It may be that L_{1} is presented as a Hilbert system and L_{2} as a Gentzen system, how do we combine them?

3. Worse still, suppose L_{1} is presented proof theoretically and L_{2} semantically, how do we combine them?

4. If both L_{1} and L_{2} are faithfully translatable into a third logic M then we can combine the two logics in M and translate back. Let τ_{1} and τ_{2} translate (respectively) L_{1} and L_{2} into M. Assume that the translation is done by translating each connective ♯ of L_{i} of the form ♯(x_{1}, …, x_{n}) into a formula φ_{♯}(x_{1}, …, x_{n}) = τ_{i}(♯)(x_{1}, …, x_{n}) of M.

Thus any formula of L_{1,2} can be translated into M by applying recursively either τ_{1} or τ_{2} depending on the connective. Let τ be this ‘combined’ translation. Thus

• τ(♯(A_{1}, …, A_{n})) = τ_{i}(♯)(τ(A_{1}), …, τ(A_{n})), ♯ ∈ L_{i}

• τ(x) = x, for x atomic.

Define L_{1,2} by

L_{1,2} ⊢ A iff (def) M ⊢ τ(A).

For example both □_{1} and □_{2} are translatable into classical logic via transitive possible world relations R_{1} and R_{2}. Combining them in M gives a translation into (essentially Kripke semantics) M using both relations. In semantical terms we get Kripke semantics of the form (S, R_{1}, R_{2}). In this semantics t ⊨ □_{i}A iff for all s, tR_{i}s implies s ⊨ A. Do we get the same system as when we combine their Hilbert Style formulation? In this case the answer is yes.

Going back to the example with {∧, □} of modal logic S4 and {⇒} of intuitionistic logic. We note that there are several ways of combining them. Are they identical?

• Combine through the translation into classical logic via their respective Kripke semantics.

• Translate modal logic via the Kripke semantics into classical logic M. Consider the translation as a syntactical translation into M as a Hilbert system. Weaken M into I (intutionistic predicate logic). Let L of {∧, □, ⇒} be defined via the translation into I.

• Combine ∧, □ and ⇒ via the translation of intutionistic logic into modal S4.

• Combine {∧, □} and {⇒} as Hilbert systems. Take the union of languages and all instances of axioms and rules involving the connectives. Alternatively, take a natural deduction or Gentzen formulation of the two systems and combine the two proof theories.

• Combine the two systems by fibring their semantics as proposed in the present paper.

In this chapter we develop several case studies of combining logics:

• Combining two modalities;

• intutitionistic modal logic;

• modal linear logic;

• modal many valued logic;

• intuitionistic many valued logic.

• combining any two LDS’s

The first case study, combining two modalities, is the simplest. This should be straightforward, as we are combining two logics of the same kind which, in general, have no special requirement on the assignments to the atoms.

The second case combines two slightly different logics; namely modal logic and intuitionistic logic. the novelty in this case is that intuitionistic logic has a restriction on the assignment to atoms which has to be satisfied. This slight complication has to be addressed.

The third case study combines two much more different logics, having differnet natural presentations. Modal logic has good semantics while linear logic is primarily proof theoretical. The question to ask is does the combination depend on which semantics we choose for the logic?

The fourth and fifth case studies address the problem where the two logics are really far apart in style. Łukasiewitz many valued logic has an algebraic, truth table presentation, while modal and intuitionistic logics have a possible world semantics. How do we combine them? Do we have several options? Do we need a general definition of fibring algebraic logics?

We will introduce several methods of combining logics. Each method will have its own name. So for example we shall define what it means to ‘fibre’ two logics or to ‘dovetail’ two logics or to ‘fuzzle’ (make fuzzy) a logic by another or to ‘braid’ two logics, etc. Our purpose now is to give an intuitive idea of what these methodologies are. We explain the concepts by taking a simple example. Suppose we want to combine two modal logics L_{1} and L_{2}. Let K_{1}, K_{2} be the respective Kripke semantics of the logic. Let m be a model in K_{1} and let t be a possible world of m. The semantic construction which combines the logics associates a model n with t. The different methodologies of combination differ on the kind of model n that we use.

1. For fibring (type 0 combination) logics, we require that n be any model in K_{2} .

2. For dovetailing (type 1 combination), we require that n be a model of K_{2} such that for any

atomic q

t ⊨ q iff n ⊨ q

(i.e. the fibred model must agree with the values t gives to atom).

3. For braiding (type 2 combination), we do not require that n is a model of K_{2} but that n can be obtained from a model of K_{2} in the same way as the model at t is derived from m. So for example if am is the actual world of m and k is the smallest integer such that a^{m}(Rm)^{k}t. Then we require that for some model n_{2} ∈ K_{2}, with actual world an^{2}, there is an s ∈ Sn^{2} such that an^{2}(Rn^{2})^{k}s and n is the model obtained from n_{2} by changing the actual world to s. n may not be in the semantics K_{2}.

4. For joining (type 3 combination) we form a multi-dimensional system out of the participating logics.

5. For fuzzling (type 4 combination), we simply assign at t values which are elements of the algebraic logic L_{2} instead of just {0, 1} values (e.g. boolean valued models are an example of ‘making fuzzy’ by weakening the ‘crisp’ {0,1} values into boolean values).

Section 2 Fibres modal Logics. Section 3 Fibres modal and intuitionistic logic. Section 4 asks the following general question: given two arbitrary logics, for which we may not have a semantic, how do we combine them? The answer is that since one can always generate algebraic semantics, it is useful to show how to combine or fibre algebraic semantics. By way of application, this section shows how to combine modal logic with many valued logic, and present a general method of making logics fuzzy. Section 5 deals with multi-dimensional logics.

15.2 Case study 1: Combining modal logics

This section deals with combinations of modal logics. The problem in its general form is how to construct a multimodal logic containing several unary modalities, each coming with its own system of specific axioms. For example, how to combine a necessity □A with belief BA and knowledge KA systems, or how to combine necessity □A with temporal connectives GA and HA and the like.

There are many such combined systems in the literature but no methodology for generating them. Each combined system was presented and motivated by a different author for different reasons and different applications.

The method presented in this section for modal logics is as follows. Most known modal systems already have good semantics. Thus each logic L_{i} can be identified via a class of Kripke structures K_{i}, which characterises it. Thus we will give methodology for fibring (combining) classes of Kripke structures and study its properties. We shall then investigate what other modes of syntactical combinations are available. If each L_{i} is axiomatizable and L is the logic of the semantic combination of the semantics of K_{i} of L_{i}, can we axiomatize L by some combination of the individual axiomatizations of L_{i}? We continue to study other features such as decidability, finite-model property, etc.

We begin by combining arbitrary extensions of modal K. It makes no difference to our methodology whether thee extensions are normal or not. We find out how to axiomatise the combination in terms of the theorems (axiomatizations) of the combined components. We see that in certain cases, the combined axiomatization is very simple.

The fibring construction is very simple intuitively but unfortunately very awkward to write on paper.

The rest of the section is structured as follows.

We begin with a short discussion and present a canonical fibring construction. Definition 15.2.1 gives the general definition of fibred Kripke semantics for modal logics. Its idea is essentially to replace the notion of a possible world as a ‘unit’ by another Kripke structure. Armed with this definition, we can fibre arbitrary modal logics through their semantics. We need a completeness theorem for the combined logic, and this is done in Theorem 15.2.3. the proof is involved notationally, though simple conceptually. It does require an intermediate construction for an inductive argument to go through. This is called ‘grafting’ and is defined in Definition 15.2.2. Examples 15.2.4 and 15.2.5 show how two modal logics, which are quite typical and arbitrary, can be combined and axiomatised, using the previous completeness theorem. Theorem 15.2.6 gives more properties of the construction.

The second part of this section is concerned with a more specific construction, called dovetailing. Here the combination of the logics is done in a tighter manner, though the combined logic is still a conservative extension of each of its components. Again, Definitions 15.2.7 and 15.2.8 describe the notion and Theorem 15.2.9 gives the completeness theorem. Properties of dovetailing and some examples are given following the completeness theorem. We especially look for conditions on the logics which make dovetailing the same as the previous notion of fibring.

The next series of definitions and theorems have to do with fibring fragments of modal logics. It is important as a preliminary to introducing modality into other systems such as intuitionistic logic or relevance or linear logics. These other logics do not have all the classical connectives and so they ‘take in’ only the modality. For this reason we must develop techniques of combining pure modalities. We may have both modalities □ and ♢ in modal intuitionistic logic or modal relevance logic and because of lack of negation, one is not reducible to the other, and in fact, one may not have all the dual properties of the other. Thus, for all practical purposes we have here a fragment with combined pure modalities. Example 15.2.18 introduces the problems involved and Theorem 15.2.20 is the completeness theorem for this case.

We conclude the section with Definition 15.2.23 and Theorem 15.2.24 dealing with the question of when is the disjunction property preserved in a combination.

Fibring Modalities

Let us now start the business of this section. Imagine we want to combine two modalities □_{1} and □_{2}. We start with the simple case where both □_{i} are K-modalities, i.e. they each satisfy the axioms below.

1. All truth functional tautologies

2. Modus ponens

{⊢ A; ⊢ A → B \atop ⊢ B}

3. Necessitation

{⊢ A \atop ⊢ □A}

4. Axiom schema

(a) □(A → B) → (□A → □B)

The above is a Hilbert system presentation. Such presentations are standard in modal logics. One may be tempted to take the combined system with both modalities and the K axioms and rules for each of them and let this be, together with substitution, the desired fibred system K_{1,2}. This procedure, however, depends on the proof formulation of the components. K may be formulated, for example, without necessitation, as a system with an infinite number of axioms, namely all Ktheorems. If □_{1} and □_{2} are fibred under this new Hilbert formulation we get a combined system with less theorems because necessitation is not available. We cannot derive □_{1}□_{2}(A → A) for example unless we put in some additional rules. The lesson we learn from the above example is that we should not just formally combine proof systems but that we need some semantical interpretation, an intended meaning, to guide us in doing the fibring. This intuition can also help us with the choice of axioms for the resulting combined system.

Turning now to combining modal logics, we approach the problem semantically. The logic K is complete for the Kripke semantics with possible world structures of the form (S, R, a, h) where R ⊆ S × S, a ∈ S is the actual world and h is the assignment to the atoms (h(q) ⊆ S, q atomic). To distinguish between the semantics for □_{1} and □_{2}, we write (S^{1}, R^{1}, a^{1}, h^{1}) and (S^{2}, R^{2}, a^{2}, h^{2}) respectively. We now study in detail how to fibre several modalities. We begin with the following:

Canonical Fibring Construction: Let K_{i} be the class of all Kripke structures of the modal logics L_{i} with modality □_{i}, for i ∈ I.

We want to create a multi modal logic L_{I}^{F},which is a conservative extension of each L_{i}. We can assume that the sets of possible worlds of each model of each semantics class K_{i} are all disjoint and that therefore each model can be uniquely identified by its actual world. We note that in case of normal modal logics such as K, S4 etc., for any model (S, R, a, h) with actual world a, and any t ∈ S, the structure (S, R, t, h) is also a model of the same logic. Even in the non-normal case, this model will be a model of the basic logic K. We can therefore assume that for each i ∈ I and each (S, R, a, h) ∈ K_{i} and each t ∈ S, there exists a j ∈ I such that (S, R, t, h) ∈ K_{j}.

Let K = ∪_{i∈I}K_{i}. Let W be the set of all worlds in any model in K. We can assume that each w ∈ W identifies a

unique Kripke model (S^{w}, R^{w}, w, h^{w}) in K (i.e. in one of the semantics of K_{i}). With S^{w} its set of possible worlds, R^{w} its accessibility relation and h^{w} its assignment. Let τ(w) ∈ I be the function identifying to which semantics w belongs.

We now need to associate with each w and each t ∈ S^{w} and each j ∈ I such that j ≠ τ(w), a model in the semantics K_{j}. Let this model be w′ ∈ W. In case j = τ(w) let F(j, w, t) = t, i.e. let w′ = t. We thus have a fibring funciton F(j, w, t) = w′. We can also write w′ = F_{j}(w, t) and perceive F_{j} as the fibring function for the logic L_{j}. We require τ(w′) = j. We also require that τ(w) = τ(y) for all y ∈ S^{w}. The above construction shall be referred to as the canonical fibring construction.

Definition 15.2.1 (Fibring of propositional modal logics) 1. Let L_{i}, i ∈ I be a family of modal logics with □_{i}, i ∈ I, respectively. Let K_{i} be a class of models for which L_{i} is complete.

A fibred model for the logic L_{I}^{F} has the form (W, S, R, a, h, F, τ, w_{0}) where W is a set of labels. S is a function giving for each w a set of possible worlds (labels) S^{w} ⊆ W. R is a function giving for each w, a relation R^{w} ⊆ S^{w} × S^{w}. a is a function giving the actual world a^{w} of the model labelled by w. (In our preparatory discussion above, a^{w} was equal to w).

h is the assignment function h^{w}(q) ⊆ S^{w}, for each atomic q. τ is the semantical identifying function τ : W → I. τ(w) = i means that the model (S^{w}, R^{w}, a^{w}, h^{w}) is a model in K_{i}. F is the fibring function, for each w and t ∈ S^{w} and i ∈ I, such that τ(w) ≠ i, w′ = F(i, w, t) ∈ W and τ(w′) = i. w_{0} ∈ W is the ‘actual’ model.

In case τ(w) = i we do not need to fibre. However, we can still define the function F. We can let F(i, w, t) give us the part of the model w truncated at t. In other words, if w is the model (S, R, w, h) ∈ K_{i} and t ∈ S then F(i, w, t) is essentially (s, R, t, h ↾ S_{t}), where S_{t} = {s ∈ S | ∃n ≥ 0tR^{n}s}. Formally we define F(i, w, t) = w′ and a^{w′} = t and S^{w′} = {s ∈ S^{w} | ((∃n ≥ 0)t(R^{w})^{n}s)} and R^{w′} = R^{w} ∩ (S^{w′} × S^{w′}) and h^{w′} = h^{w} ↾ S^{w′}. The model F(i, w, t), for the case τ(w) = i may not be in the semantics K_{i}, for modal logics which are not normal, violating the requirement on the fibring function F. Thus to have a strictly correct definition, we must assume that K_{i} is such that all truncated models obtained from models in K_{i} are also in K_{i}.

2. Satisfaction is defined as follows:

• (w, t) ⊨ q iff t ∈ h^{w}(q), for q atomic and t ∈ S^{w}.

• (w, t) ⊨ □_{i}A iff τ(w) = i and for all s(tR^{w}s → s ⊨ A) or τ(w) = j ≠ i and (w′, t′) ⊨ □_{i}A where w′ = F(i, w, t) and t′ = a^{w′}.

• Note that because of our requirement on F(i, w, t) for the case of τ(w) = i, the second clause above is identical to the first clause for this case.

3. We say A is valid if for all models of L_{I}^{F}, with actual world w_{0} ∈ W we have (w_{0}, a^{w_{0}}) ⊨ A.

Definition 15.2.2 (Fibring and Grafting Models) We would like to define certain constructions with fibred structures.

1. Let L_{i}, i ∈ I be logics. Let m_{0} = (S_{0}, R_{0}, a_{0}, h_{0}) be a model of one of the logics, say L_{i_{0}}. For each t ∈ S_{0} and each i ≠ i_{0} let m_{i,t} = (W^{i,t}, S^{i,t}, R^{i,t}, a^{i,t}, h^{i,t}, F^{i,t}, τ^{i,t}, w_{0}^{i,t}) be fibred structures with τ^{i,t}(w_{0}^{i,t}) = i.

We want to fibre m_{i,t}, i ≠ i_{0}, t ∈ S_{0} onto m_{0} as follows:

First assume S_{0} and W^{i,t} are all pairwise disjoint sets. Also assume that m_{i,t} is named by its actual world w_{0}^{i,t}. We define the fibred model m = (W, S, R, a, h, F, τ, a_{0}) as follows

• Let W = S_{0} ∪ ⋃_{i≠i_{o},t∈S_{0}} W^{i,t}

• Let S^{w}, for w ∈ W be

S^{w} = (S^{i,t})^{w} for w ∈ W^{i,t}
= S_{o,w} for w ∈ S_{0}
where S_{o,w} = {t ∈ S_{0} | (∃n ≥ 0)wR_{0}^{n}t}.

• Let R^{w}, for w ∈ W be

\begin{aligned}R^{w} & = & (R^{i,t})^{w} for w ∈ W^{i,t} \\ R^{w} & = & R_{0} ↾ S_{0,w} for w ∈ S_{0} \end{aligned}

• Let h^{w}, for w ∈ W be

\begin{aligned}h^{w} & = & (h^{i,t})^{w}, for w ∈ W^{i,t} \\ h^{w} & = & h_{0} ↾ S_{0,w} for w ∈ S_{0} \end{aligned}

• Let a be defined as follows

a^{w} = (a^{i,t})^{w}, for w ∈ W^{i,t}
a^{w} = w for w ∈ S_{0}

• Let τ be defined as follows

\begin{aligned}τ(w) & = & τ^{i,t}(w), for w ∈ W^{i,t} \\ τ(w) & = & w for w ∈ S_{0} \end{aligned}

• Let F(j, w, s), for s ∈ S^{w} be:

F(j, w, s) = F^{i,t}(j, w, s) for w ∈ W^{i,t}. F(j, w, s) = w_{0}^{j,s} for w ∈ S_{0} and j ≠ i_{0} F(i_{o}, w, s) = s for w ∈ S_{0}

The following holds at the new fibred model.

• For any formula A of L_{i_{0}} and any w ∈ S_{0} we have w ⊨ A in m_{0} iff w ⊨ A in m.

• For any formula □_{i}B of L_{I}^{F} , i ≠ i_{0} and any w ∈ S_{0} we have w ⊨ □_{i}B in m iff m_{i,w} ⊨ □_{i}B.

2. Let m be a fibred model with actual world w_{0}, with τ(w_{0}) = i_{0}. Let m_{i} for i ≠ i_{0} be fibred models. We want to graft m_{i} onto m at w_{0} by replacing Fm(i, m, w_{0}) by the model m_{i}.

Let m = (W^{0}, S^{0}, R^{0}, a^{0}, h^{0}, F^{0}, τ^{0}, w_{0})
m_{i}  = (W^{i}, S^{i}, R^{i}, a^{i}, h^{i}, F^{i}, τ^{i}, w_{i})

We can assume all w^{i}, W^{0} are pairwise disjoint and that they are named by their actual worlds, i.e. m = w_{0} and m_{i} = w_{i}.

Let m_{i,t}, for t ∈ S^{o,w_{0}}, t ≠ w_{0} be F^{0}(i, w_{0}, t). Let m_{i,w_{0}} = m_{i} = w_{i}.

Then the grafting of m_{i} onto m is defined to be the same as the fibring of m_{i,t} onto (S^{0,w_{0}}, R^{0,w_{0}}, w_{0}, h^{0,w_{0}})

Theorem 15.2.3 (Completeness theorem for the fibred logic L_{I}^{F}) Let L_{i}, i ∈ I be modal logics with semantical classes of structures K_{i} and set of theorems T_{i}. (i.e. T_{i} = {A of L_{i} | A is valid in all K_{i} models }). Let T_{I}^{F} be the following set of wffs of L_{I}^{F}.

1. T_{i} ⊆ T_{I}^{F}

2. Modal Fibring Rule:

If □_{i} is the modality of L_{i} and □_{j} of L_{j}, i, j arbitrary i ≠ j and C = ⋀_{k=1}^{n} □_{i}A_{k} → ⋁_{k=1}^{m} □_{i}B_{k} ∈ T_{I}^{F} then for all d, □_{j}^{d}C ∈ T_{I}^{F}.

3. T_{I}^{F} is the smallest set closed under (1), (2), modus ponens and substitution.

Then T_{I}^{F} is the set of all wffs of L_{I}^{F} valid in all the fibred structures of L_{I}^{F}.

Proof.

1. The case of soundness is easy to verify.

2. To show completeness we use induction on the number of nested different language modalities in the formula.

Case n = 1 B is a formula with only one nested different modalities. This means B is a wff of L_{i} for some i ∈ I. If L_{I}^{F} ⊬∼ B, then L_{i} ⊬∼ B. Hence there is a model in K_{i} which validates B. This model can easily be built up into a fibred model (using the canonical fibring construction) in which B holds.

Case n > 1 We can assume B is obtained from formulas of the form

• B_{i}(\overline{x}^{1}, \overline{x}^{2}, … \overline{x}^{k}, \overline{y}),

• □_{τ(1)}A_{1}^{1}(\overline{y}), …, □_{τ(1)}A_{n(1)}^{1}(\overline{y})

⋮

• □_{τ(k)}A_{1}^{k}(\overline{y}), …, □_{τ(k)}A_{n(k)}^{k}(\overline{y})

Where □_{τ(j)} is the modality of L_{τ(j)} and \overline{x}^{j} is the sequence of variables x_{1}^{j}, …, x_{n(j)}^{j} and B_{i} is a formula of the logic L_{i} and B is obtained from B_{i} by the substitution Θ where Θ(x_{j}^{r}) = □_{τ(r)}A_{j}^{r} and Θ(y_{i}) = y_{i}.

Thus

B = B_{i}(x_{j}^{r}/□_{τ(r)}A_{j}^{r}, \overline{y}).

Subcase a: In B_{i} all of x_{j}^{r} are within the scope of the modality □_{i}.

In this subcase, by the induction hypothesis, each □_{τ(r)}A_{j}^{r} has lower number of nested modalities than B. We assume B is L_{I}^{F} consistent. Hence B_{i} is L_{i} consistent. We want to show that B has a fibred model. Our strategy is to consider all L_{i} models of B_{i} and try to augment at least one of them into a fibred model of B.

Let m = (Sm, Rm, am, hm) be any model of B_{i}. Since B is B_{i}Θ, we might be able to augment m into a fibred model of B if we can realise the assignment hm by fibred models of Θ(x_{r}^{j}). To be more specific, let t ∈ Sm be any possible world in the model m. Consider the assignment hm(t, x_{r}^{j}), for any atomic proposition x_{r}^{j} of B_{i}, of the sequence \overline{x}^{j}. Θ(x_{r}^{j}) is a formula □_{τ(j)}A_{r}^{j} of the logic L_{τ(j)}. In the fibred semantics, any such □_{τ(j)}A_{r}^{j} is evaluated at a fibred model. The question is whether we can realise the truth values hm(t, x_{r}^{j}) in a suitable model n_{j}, for all the atoms of \overline{x}^{j}. If we can do that for all j, then we can build a fibred model for B. Of course we cannot realise the values hm(t, x_{r}^{j}), i.e. if we fibre an arbitary model n′_{t} at the point t, we might change the value of B = B_{1}Θ at am.

We must consider two possibilities

• t is a point such that the values of the atoms x_{r}^{j} at t do not affect the truth value of B_{1}(x_{r}^{j}, \overline{y}) at am. In this case we don’t mind what model n′_{t} we fibre at t, because even though hm(t, x_{r}^{j}) is not the same as the value of Θ(x_{r}^{j}) at n′_{t}, the values of B = B_{1}Θ at am will not change.

• t is a point such that the values of x_{r}^{j} at t do affect the value of B_{1}(x_{r}^{j}, \overline{y}) at am. In this case the model n_{t} must realise these values.

Our first observation is that the points t we need worry about are the points at distance less than d + 1 from am (i.e. am(Rm)^{k}t holds for k ≤ d + 1), where d is the maximal depth of nested modalities in B_{1}. This can be proved by induction. for d = 0 there are no modalities and so am is all that matters. For □E evaluated at am, the values that matter are values of E at points s such that amRms. By the induction hypothesis the value of E at s is not affected by values of atoms at points at distance more than d from s.

We thus conclude that we need realise all values hm(t, x_{r}^{j}), for all points t at a distance less than d + 1 from am.

How can we fail to do that? Let us check! Let

D_{t}^{j} = ⋀_{s=1}^{n(j)}[x_{s}^{j}]^{ε(j,s)}

C_{t}^{j} = ⋀_{s=1}^{n(j)}[□_{τ(j)}A_{s}^{j}]^{ε(j,s)} = D_{t}^{j}Θ.

where ε(j, s) = hm(t, x_{s}^{j}). We use the notation: φ^{ε} = φ if ε = 1 and ∼ φ if ε = 0. If the above C_{t}^{j} is consistent, then by the induction hypothesis a fibred model would exist. If C_{t}^{j} is inconsistent, then no fibred model exists. Assume now that for every model m ∈ K_{i}, there exists a j and a t ∈ Sm at distance d(t) (with d(t) ≤ d + 1) from the actual world am (i.e. am(Rm)^{d(t)}t) such that C_{t}^{j} is inconsistent. Since the number of possible different C_{t}^{j} is finite, this means that for some finite number of wffs D_{1}, …, D_{m} built up as conjunctions of atoms and their negations from among \overline{x}^{j}, we have that \{D_{s}Θ\} covers all the C_{t}^{j} and we have ⊢∼ D_{s}Θ, s = 1, … m. Therefore we have that

⊢L_{i} ( ⋀_{s=1}^{m} □_{i}^{d(s)} ∼ D_{s}) →∼ B_{i}

since in each model m of B_{i} one of the D_{i} is satisfied.

Hence

⊢L{F \atop I} ( ⋀_{s=1}^{m} □_{i}^{d(s)} ∼ D_{s}Θ) →∼ B_{i}Θ

but B_{i}Θ is B and ⊢_{L_{I}} ∼ D_{s}Θ. Hence (by axiom (2) of L_{I})

⊢L_{I} □_{i}^{d(s)} ∼ D_{r}Θ

and hence

⊢L_{I} ∼ B

which contradicts the assumptions.

We therefore conclude that there exists a model m of B_{i} for which all C_{t}^{j}, for all j and all t ∈ S^{m} such that d(t) ≤ d+1 are consistent. By the induction hypothesis there exist fibred models W_{t}^{j} for each C_{t}^{j}. In this fibred model we have for each x_{r}^{j} and t ∈ S^{m}

hm(t, x_{r}^{j}) = value of □_{τ(j)}A_{r}^{j} in W_{t}^{j}.

For points t such that d(t) > d+1, let W_{t}^{j} be an arbitrary fibred models. These models wil not necessarily realise the values of hm(t, x_{r}^{j}) but we know that these values do not affect the value of B_{1} at am. Now that we have W_{t}^{j} for all t ∈ Sm, we can assume that W_{t}^{j} are all pairwise disjoint. We can fibre m with W_{t}^{j} and get a new fibred model for B = B_{i}Θ, as we do in Definition 15.2.2. Subcase b: We now examine the subcase where the conditions of Subcase a are not necessarily satisfied. Let B be an arbitrary formula. Certainly there exists a classical boolean combination Ψ(\overline{x}_{1}, …, \overline{x}_{n}, \overline{y}), where \overline{x}_{i} = (x_{1}^{i}, …, x_{k(i)}^{i}) and \overline{y} = (y_{1}, …, y_{k}) and a substitution Θ such that B = ΨΘ, where Θx_{r}^{j} = □_{τ(j)}A_{r}^{j} and Θy_{i} = y_{i}. Since we are trying to find a model for Ψ, we can assume that Ψ is in a disjunctive normal form Ψ = ⋁_{s} α_{s}.

Let α be such a disjunct.

α_{s} = ⋀_{r,j}[x_{r}^{j}]^{ε(j,r,s)} ∧ ⋀_{r} y^{ε(r,s)}

At least for one such α_{s}, α_{s}Θ must be L_{I} consistent otherwise we will have ⊢L_{I} ∼ ΨΘ.

Let this disjunct be α. (We omit reference to s.) Consider an arbitrary i and consider the formula

E_{τ(i)} = ⋀_{r=1}^{k(i)}[□_{τ(i)}A_{r}^{i}]^{ε(i,r)}

this is a consistent formula which has the form

E_{τ(i)} = B_{τ(i)}(\overline{z}_{1}, …, \overline{z}_{m}, \overline{u})Θ_{1}

with substitution Θ_{1} as in Subcase a above. It therefore has a fibred model W_{i}.

The models W_{i} can now be fibred into a model of αΘ and hence of ΨΘ, as we have done in Definition 15.2.2.

This completes the induction and the proof of the theorem. ■

Example 15.2.4 Consider two logics K_{1} and K_{2} with two K modalities □_{1} and □_{2}. Consider the fibred cobination K_{1,2}^{F}. By the previous theorem it can be axiomatised by taking all theorems of K_{1} and K_{2} together with the following modal fibring rule:

{⊢ ⋀_{k} □_{i}A_{k} → ⋁_{k} □_{i}B_{k} \atop ⊢ □_{j}[⋀_{k} □_{i}A_{k} → ⋁_{k} □_{i}B_{k}]}

where i, j ∈ {1, 2}, i ≠ j.

Note that necessitation is not available. This example investigates under what conditions necessitation is admissible.

The logic K has the following special properties:

1. ⊢ □⊤

2. ⊢ □(A ∧ B) ↔ □A ∧ □B

3. The disjunction property

{⊢ □A → □B ∨ □C \atop ⊢ (□A → □B) or ⊢ (□A → □C)}

The above three properties can be used to prove that the modal fibring rule is equivalent to necessitation.

First the rule can be reduced to

{⊢ □_{i}A → □_{i}B \atop ⊢ □_{j}(□_{i}A → □_{i}B)}

using (2) and (3) above.

Second, since (⊤ → A) ↔ A we get from (1) that (□⊤ → □A) ↔ □A.

This can be used to derive

{⊢ □_{i}A \atop ⊢ □_{j}□_{i}A}

Since necessitation is admissible in each component we get that

{⊢ A \atop ⊢ □_{i}A}

is admissible in the combination K_{1,2}.

The key property which we have used is the disjunction property. This holds for K, K4, and some other system and for all of these systems the above reduction of the modal fibring rule to necessitation stands.

Example 15.2.5 This example deals with non normal logics. The example we give is typical. Consider the following axiomatisation of a modal logic L.

0. all substitution instances of truth functional tautologies.

1. □A if A is a truth functional tautology.

2. □(A ∧ B) ↔ (□A ∧ □B)

3. □(□(A ∧ B) ↔ (□A ∧ □B))

4. □A → □□A

5. □(□A → □□A)

6. □A → A

We allow the rule of modus ponens but not necessitation.

This system can derive all theorems of K4 together with □A → A and all their modus ponens consequences. We cannot derive □(□A → A) because we do not have necessitation. This logic is complete for all frames of the form (S, R, a) where R is transitive and aRa holds. We have:

⊢L A iff a ⊨ A in all (S, R, a, h).

It is interesting to see what happens if we fibre L with itself. We get two L modalities □_{1} and □_{2} together with all L theorems for each □_{1} and □_{2} and the modal fibring rule. Unlike the previous example this rule cannot be simplified.

Theorem 15.2.6 1. Assume L_{i}, i ∈ I has the finite model property then so does L_{I}^{F}.

2. Assume L_{i}, i ∈ I are finitely axiomatizable then so is L_{I}^{F}.

3. Assume L_{i}, i ∈ I have the disjunction property then so does L_{I}^{F}.

4. Assume L_{i}, i ∈ I are decidable, then so is L_{I}^{F}.

Proof. Follows from the completeness proof and (for decidability) the way the theorems are generated. ■

Dove-tailing Modal Logics

Definition 15.2.7 (Dove-tailing of propositional modal logics) 1. Let L_{i}, i ∈ I be modal logics as in the previous definition, with K_{i} the class of models for L_{i}. Let L_{I}^{D} (the dovetailing combination of L_{i}, i ∈ I) be defined semantically through the class of all (dove-tailed) models of the form (W, R, a, h), where W is a set of worlds, a ∈ W, h is an assignment into W and for each i ∈ I, R(i) ⊆ W × W. We require that for each i (W, R(i), a, h) is a model in K_{i}. We further require the following: Let t ∈ W be such that there exists n_{1}, …, n_{k} and i_{1}, …, i_{k} such that aR^{n_{1}}(i_{1}) · R^{n_{2}}(i_{2}) . . . · R^{n_{k}}(i_{k})t holds. Let i ≠ i_{k} and let W^{t} = {y ∈ W | for some n ≥ 0, tR^{n}(i)y} Then the model (W^{t}, R(i) ↾ W^{t} × W^{t}, t, h ↾ W^{t}) is in K_{i}.

2. We define the notion of w ⊨ A by induction.

• w ⊨ q if w ∈ h(q) for q atomic.

• w ⊨ □_{i}A if for all y ∈ W, such that wR(i)y we have y ⊨ A.

• ⊨ A iff for all models and actual worlds a ⊨ A.

Definition 15.2.8 (Dove-tailing Models) Let L_{i}, i ∈ I be logics. Let m_{0} = (S_{0}, R_{0}, a_{0}, h_{0}) be a model in the logic L_{i_{0}}. For each i ≠ i_{0} and t ∈ S_{0}, let

m_{i,t} = (S^{i,t}, R^{i,t}, a^{i,t}, h^{i,t})

be a dove-tailed model. We want to dove-tail the models m_{i,t} onto m_{0}. We can assume that S_{0} and S^{i,t} are all pairwise disjoint. We define a model m = (S, R, a_{0}, h) as follows:

• Let S = S_{0} ∪ ⋃_{t∈S^{0}^{i≠i_{0}}} S^{i,t}

• Let R be defined as follows:

xR(j)y iff x ∈ S^{i,t} and xR^{i,t}(j)y. or x ∈ S_{0} and j ≠ i_{0} and a^{j,x}R^{j,x}(j)y or x ∈ S_{0} and j = i_{0} and xR_{0}y.

• Let h = h_{0} ⋃_{t∈S_{0}^{i≠io}} h^{i,t}.

What we have basically grafted is the situation in the following Figure 15.2.

The following holds at the new dovetailed model

• For any formula A of L_{i_{0}} and any w ∈ S_{0} we have w ⊨ A in m_{0} iff w ⊨ A in m.

• For any formula □_{i}B of L_{I}^{D}, i ≠ i_{0} and any w ∈ S_{0} we have w ⊨ □_{i}B in m iff w ⊨ □_{i}B in m_{i,w}.

[figure: R^{j,x}(j); S^{j,x}; a^{j,x}; y; R(j); x; S_{0}]

Figure 15.2:

Theorem 15.2.9 (Completeness theorem for the Dove-tailed logic L_{I}^{D}) Let L_{i}, i ∈ I be modal logics with semantical classes of structures K_{i} and set of theorems T_{i}. Let T_{I}^{D} be teh following set of wffs of L_{I}^{D}.

1. T_{i} ⊆ T_{I}^{D} 2. Modal Dove-tailing Rule:

If □_{i} is the modality of L_{i} and □_{j} of L_{j}, i, j arbitrary i ≠ j and

C = ⋀_{k=1}^{n} □_{i}A_{k} ∧ ⋀_{k=1}^{m} ♢_{i} ∼ B_{k} → ⋁_{k=1}^{r} q_{r} ∈ T_{I}^{D}

then for all d □_{j}^{d}C ∈ T_{I}^{D}. Where q_{r} are atoms or their negations, and q_{1}, …, q_{k} list all the atoms or their negations appearing in any A_{k} or B_{k}, k = 1, 2, . . ..

3. T_{I}^{D} is the smallest set closed under (1), (2) modus ponens and substitution.

Then T_{I}^{D} is the set of all wffs of L_{I}^{D} valid in all the dove-tailed structures of L_{I}^{D}.

Proof.

1. The case of soundness is easy to verify.

2. To prove completeness we proceed along the lines of the proof of the previous theorem, the completeness theorem for L_{I}^{F}.

The case to examine is subcase a of case n > 1. We have a model m = (Sm, Rm, am, hm) of L_{i} of the formula B_{i} and we want to augment it into a dove-tailed model of B.

For this purpose we have to realise the assignment of hm(t, x_{r}^{j}), for points t such that d(t) ≤ d+1 for all x_{r}^{j} by a fibred model for the substitution Θ(x_{r}^{j}) = □_{τ(j)}A_{r}^{j} and in addition the model must realise all the values hm(t, y_{i}), for the atoms y_{i} because the model will be dove-tailed at t. Thus the formulas C_{t}^{j} and D_{t}^{j} to be considered in our case are the following:

D_{t}^{j} = ⋀_{s=1}^{n(j)}[x_{s}^{i}]^{ε(j,s)} ∧ ⋀_{r}[y_{r}]^{ε(r)}

C_{t}^{j} = ⋀_{s=1}^{n(j)}[□_{τ(j)}A_{s}^{j}]^{ε(j,s)} ∧ ⋀_{r}[y_{r}]^{ε(r)}

where

\begin{matrix}ε(j, s) = hm(t, x_{s}^{j}) \\ ε(r) = hm(t, y_{r}). \end{matrix}

and

C_{t}^{j} = D_{t}^{j}Θ.

Just like the previous proof, if for every m there is a t ∈ Sm and a j for which C_{t}^{j} is inconsistent, then for some finite D_{1}, …, D_{m} we have

⊢L_{i} ( ⋀_{s=1}^{m} □_{i}^{d(s)} ∼ D_{s}) →∼ B_{i}

Hence

⊢L{D \atop I} ( ⋀_{s=1}^{m} □_{i}^{d(s)} ∼ D_{s}Θ) →∼ B

But from the inconsistency of C_{t}^{j} for all j, t we get

⊢∼ D_{s}Θ.

The modal dove-tailing rule allows us to conclude

⊢L{D \atop I} □_{i}^{d(s)} ∼ D_{s}Θ

and so we get

⊢L{D \atop I}∼ B

a contradiction.

We can thus assume that for some model m of B_{i}, all the formulas C_{t}^{j} are realisable by a model m_{t}^{j} = (S^{j,t}, R^{j,t}, a^{j,t}, h^{j,t}).

We can now dove-tail these models with m into a model of B, as done in Definition 15.2.8. Note that for each t and atom y, hm(t, y) = h^{j,t}(a^{j,t}, y).

Subcase b of n > 1 is proved also similarly to the fibred case. We assume there exists a classical boolean combination Ψ(\overline{x}_{1}, …, \overline{x}_{n}, \overline{y}) and a Θ such that B = ΨΘ, where Θ(x_{r}^{j}) = □_{τ(j)}A_{r}^{j}, and Θ(y_{i}) = y_{i}. Write Ψ in a disjuctive normal form and let α be any disjunct. At least one such α must be L_{I}^{D} consistent. Assume α is such a disjunct.

Consider the subformula of α.

E_{τ(i)} = ⋀_{r=1}^{k(i)}[□_{τ(i)}A_{r}^{i}]^{ε(i,r)} ∧ ⋀_{r} y_{r}^{ε(r)}.

This formula is consistent and has the form

E_{τ(i)} = B_{τ(i)}(\overline{z}_{1}, …, \overline{z}_{m}, \overline{u})Θ_{1}

with substitution Θ_{1} falling under subcase a. It therefore has a dove-tailed model m_{i}.

The models all agree on the value to \overline{y} and can all be dove-tailed into a single model of α and hence of B = ΨΘ as in Definition 15.2.8. ■

Theorem 15.2.10 Assume L_{i}, i ∈ I all admit necessitation, then L_{I}^{D} (the dovetailing of L_{i}) can be axiomatised by taking the union of the axioms and rules of L_{i}

Proof. The modal dove-tailing rule can be reduced to necessitation in this case. ■

Theorem 15.2.11 If L_{i}, i ∈ I admit necessitation and satisfy the disjunction property, then L_{I}^{F} = L_{I}^{D}.

Proof. Follows from the considerations of Example 15.2.4 and the previous theorem. ■

Theorem 15.2.12 If L_{i}, i ∈ I all have the finite model property (are finitely axiomatizable, have the disjunction property) so is L_{I}^{D} and L_{I}^{F}.

Proof. From the completeness theorem.

1. If all participating models are finite then the fibred semantics will contain models which may not be finite but are made (fibred) from finite models. Any particular formula A of the fibred logic when evaluated at a fibred model, requires only a finite depth of fibring relative to the actual world and the model can be changed to a finite fibred model.

2. The transfer of finite axiomatizability and disjunction property are immediate from the completeness theorem.

3. The case of decidability is more tricky. If each L_{i} has its own totally different decision procedure, we may not have a decision procedure for L_{I}^{D} or L_{I}^{F}. However, if they are all logics of the same type with the same decision procedure we may be able to transfer decidability. We can transfer dedidability if the procedure is tableaux like. The argument goes as follows. Take any formula A of the mixed language. A is of the form B_{i}(D_{1}, …, D_{k}) where B_{i}(x_{1}, …, x_{k}) is in the logic L_{i} and D_{1}, …, D_{k} are in some other of the fibring logics. Apply the tableaux method characteristic for the logic L_{i}, regarding D_{1}, …, D_{k} as atomic. The tableaux will require assignment of values to the ‘atoms’ D_{1}, …, D_{k}. When such values are needed, apply the tableaux methods of the logic L_{j} of the external connectives of each D_{j}. This can be done because D_{j} itslef is of the form D_{j}^{∗}(C_{j}^{1}, …, C_{j}^{m_{j}}) where D_{j}^{∗}(x_{1}, …, x_{m_{j}}) is in the logic L_{j} and C_{j}^{r} are in some other logic. The process will terminate because the complexity goes down.

The above is not a proper proof. We leave decidability and interpolation to a later part of this series. ■

Problem Find sufficient conditions on L_{i} such that the fibred logic L_{I}^{F} is the same as the dove tailed logic L_{I}^{D}.

To study this problem we examine two typical examples. First we want to know under what conditions fibring is identical with dovetailing. The condition on the semantics is that it be forward looking.

Definition 15.2.13 1. A model (S, R, a) is forward looking iff for any assignment h, any t and any h′ such that h ↾ S_{t} = h′ ↾ S_{t} and any wff A(□B_{1}, …, □B_{k}) we have t ⊨_{h} A iff t ⊨_{h′} A, where S_{t} = {s | ∃n, tR^{n}s, n ≥ 1}.

2. K_{i} is said to be forward looking if all of its structures are forward looking.

3. A logic is forward looking if it is complete for a forward looking semantics.

Example 15.2.14 1. If R is reflexive then it is not forward looking.

2. modal K and K4 are forward looking.

Theorem 15.2.15 Let L_{i}, i ∈ I be logics with semantics K_{i}. Let A be a wff of L_{I}^{F} which has a fibred model. Then A has a dove-tailed like model. The dove-tailed like model may not satisfy the condition that (S, R((i), a, h) ∈ K_{i}). This condition can be guaranteed when each K_{i} is forward looking, in which case we get a proper dove-tailed model.

Proof. We show that any fibred model be (W, S, R, a, h, F, τ) can be turned into an equivalent dovetailed model (S, R(i), a, h^{D}). Note that the dove-tailed model relies on the particular h^{D}, and that (S, R(i), a), for any fixed i may not be in the class K_{i}.

Turning to the definition of (S, R_{i}, a, h^{D}), let S be W. We may assume that for any x ∈ W there exists a unique w such that x ∈ S^{w}. Let x, y ∈ W. We let xR(i)y hold iff either

1. for some w, we have that x, y ∈ S^{w} and τ(w) = i, and xR^{w}y.

2. x ∈ S^{w} and y ∈ S^{w′} and w′ = F(i, w, x) and a^{w′}R^{w′}y. Let h^{D}(q) = ∪_{w∈W} h^{w}(q)

Notice that in clause (2) we took the model (S^{w′}, R^{w′}, a^{w′}) and effectively replaced it by the model (S^{w′}, R^{w′}, x), as we dove-tailed the possible worlds of S^{w′} (except a^{w′}) onto x. When the semantics of the logic of τ(w′) is forward looking, this new model can also be assumed to be in the semantics and hence the dove-tailed model is propert, according to Definition 15.2.7.

Lemma 15.2.16 For any (w, y) and A

(w, y) ⊨_{F} A iff y ⊨_{D} A

where ⊨_{F} is satisfaction in the fibred model and ⊨_{D} is satisfaction in the dovetailed model.

Proof. By induction.

Note that since ∀y∃!w(y ∈ S^{w}) holds, we can write y ⊨_{F} A in place of (w, y) ⊨_{F} A.

The lemma holds for atomic q by definition. y ⊨_{F} □_{i}A iff a^{w′} ⊨_{F} □_{i}A, where w′ = F(i, w, y) iff ∀x[a^{w′}R^{w′}x → x ⊨_{F} A] iff ∀x[yR(i)x → x ⊨_{F} A] iff y ⊨_{D} □_{i}A, by the induction hypothesis. ■

The lemma just proved that (S, R(i), a, h^{D}) is an equivalent model to (W, S, R, a, h, F, τ). This equivalence holds for any semantics. We have not used in the proof of the lemma the

assumption that the semantics we have fibred is forward looking. We need this assumption to show that under any assignment h^{∗} (other than h^{D}) the structure (S, R(i), a, h^{∗}) satisfies only L_{I}^{F} theorems. ■

Example 15.2.17 We fibre a T-modality □_{1} with a K-modality □_{2}, to show the difference between dovetailing and fibring.

Let q be atomic. Consider

□_{2}□_{1}q ∧ ♢_{2} ∼ q.

In the fibred semantics the above formula has a model. We can have a pair (w, y), such that wR^{w}y, (w, y) ⊨∼ q and in the fibred model w′ = F(w, w, y) a^{w′} ⊨ □_{1}q. It is true that in w′ by reflexivity a^{w′} ⊨ q but this leads to no contradiction. In the dovetailed model, however, we will need to have at some y such that wR_{2}y y ⊨∼ q ∧ □_{1}q, which is impossible.

15.2.1 Fibring and Dove-tailing modal fragments

Example 15.2.18 (Fibring modal fragments) The previous theorems dealt with fibring and dove-tailing full modal logics, with modalities □_{i} and all the boolean connectives. We found theorems telling us how to fibre the semantics K_{i} of L_{i} and at the same time how to generate the theorems of L_{i}, i ∈ I. The proof also shows that any semantics K_{i} for L_{i} will do for the purpose of fibring. If L_{i} is complete for K_{i} and for another semantics K′_{i}, then fibring K_{i}, i ∈ I or K′_{i}, i ∈ I yields the same resulting logic and the same set of theorems for L_{I}^{F} or L_{I}^{D} respectively. We refer to this property as sematnical independence of the fibring process.

This independence does not hold if we are dealing with modal fragments . Consider for example two modal fragments L_{1} and L_{2}, where L_{1} is the fragment of modal K with {♢_{1}} only while L_{2} is the fragment of K with {□_{2}, ∧}. Each fragment is complete for the class K of all K Kripke models with arbitrary binary relations R. What do we mean by complete? Here we must use the consequence relation. Let A_{1}, …, A_{n} ⊨_{K} B mean that in every Kripke model (S, R, , a, h) ∈ K. If a ⊨ A_{i}, for all i then a ⊨ B. Completeness for the fragment with ♢_{1} means that for all A_{i}, B in the fragment

{A_{i}} ⊢K B iff {A_{i}} ⊨_{K} B

where ⊢K is provability in some syntactical formualtion of the full K. If we fibre L_{1} and L_{2} according to (i.e. using) the K Kripke semantics, we get what is expected i.e. we get the {♢_{1}, {□_{2}, ∧}} fragment of the full fibring of two full versions of K namely {{♢_{1}, ∧, ∼}, {□_{2}, ∧, ∼}}. However because L_{1} with ♢_{1} is a very weak language, all we can express in it is sequents of the form

♢_{1}^{n_{i}}q_{i} ⊢L_{1} ♢_{1}^{n}q

where q_{i}, q are atomic.

The above will hold in K iff for some i, q_{i} = q and n_{i} = n.

Another semantics for L_{1} is the class of all Kripke models of the form (N , <_{1}, 0, h) where N is the set of natural numbers and x <_{1} y iff y = x + 1. This semantics gives ♢_{1}q the reading ‘q holds the next day’.

If we fibre L_{1} and L_{2} using the natural numbers Kripke sematnics for L_{1} we get the new theorem

(*) ♢_{1}□_{2}q_{1} ∧ ♢_{1}□_{2}q_{2} ⊢L_{1,2} ♢_{1}□_{2}(q_{1} ∧ q_{2})

This theorem does not hold if we fibre L_{1} and L_{2} using the K semantics for L_{1}. The reason that we can get (*) is that conjunction becomes available through the fibring, and ♢_{1} with ∧ is sensitive to the different semantics chosen for L_{1}, while L_{1} on its own is not senstive to the differences.

It is instructive to see why the inductive argument of the fibring completeness theorem works for the full language, in the case of the natural numbers semantics.

Following our strategy we try to show that ♢_{1}□_{2}q_{1}, ♢_{1}□_{2}q_{2} ⊬ ♢_{1}□_{2}(q_{1} ∧ q_{2}) in the fibred semantics.

This form is a substitution instance of the form

♢_{1}x, ♢_{1}y ⊬ ♢_{1}z

using the substitution Θ, with Θ(x) = □_{2}q_{1}, Θ(y) = □_{2}q_{2} and Θ(z) = □_{2}(q_{1} ∧ q_{2}).

A natural numbers counter model (N , <_{1}, 0, h) can be obtained with h(1, x) = h(1, y) = 1 and h(1, z) = 0.

The realisation of h for the substitution Θ will give us a fibred countermodel for the original consequence form. We need to fibre a model yielding

\begin{matrix}h(1, □_{2}q_{1}) = h(1, □_{2}q_{q}) = 1 \\ and h(1, □_{2}(q_{1} ∧ q_{2})) = 0 \end{matrix}

This is not possible because in L_{2}

(**) □_{2}q_{1} ∧ □_{2}q_{2} ⊢L_{2} □_{2}(q_{1} ∧ q_{2}).

We now want to use this fact, (**), to show that (*) must hold.

When the full boolean connectives are available to us in L_{1} we can write the form:

□_{1}(x ∧ y → z), ♢_{1}x, ♢_{1}y ⊢ ♢_{1}z

the addition of Δ_{1} = □_{1}(x ∧ y → z) excludes the above counter model. If we find such a wff D_{r} for each unrealisable model, we get

(***) {D_{r}}, ♢_{1}x, ♢_{1}y ⊢ ♢_{1}, z

and after substitution we get

{D_{r}Θ}, ♢_{1}□_{2}q_{1}, ♢_{1}□_{2}q_{2} ⊢ ♢_{1}□_{2}(q_{1} ∧ q_{2})

Since ⊢L_{1,2} D_{r}Θ, we get ♢_{1}□_{2}q_{1}, ♢_{1}□_{2}q_{2} ⊢L_{1,2} ♢_{1}□_{2}(q_{1} ∧ q_{2}). Thus showing (*) is provable. Without boolean operations in L_{1} we cannot write D_{r}. We may try to wrie the Gentzen Rule:

{x, y ⊢L_{1} z \atop ♢_{1}x, ♢_{1}y ⊢L_{1} ♢_{1}z}

but the meaning of the above as a rule involves validity in all models and is not what we want.

Remark 15.2.19 Given two logics L, M with L complete for several different semantics L_{1}, L_{2}, … and M is complete for several semantics M_{1}, M_{2}, . . .. Then the fibring of the semantics L_{i} and M_{j} might yield different fibred logical systems. If we want to define a reasonable notion of semantically independent fibring of L and M we might wish to take the ‘most general’ semantics for each logic and fibre these. The investigations into this topic is postponed to the section on algebraic fibring. Our strategy would be to consider the algebraic logics (Lindebaum algebra?) of L and M and fibre these.

The above discussion shows that fibring modal fragments may depend on the semantics chosen for the fragments. The reason being that we may have a fragment L which is syntatically too weak to distinguish between two differnt semantics K_{1} and K_{2} but when fibred with another logic M, the fibred result can make the distinction. Thus we will have no way of predicting the set of theorems of the fibred result. simply by looking at the axiomatic formulation of L and M. The question still remains of what happens in cases where all the logics involved, i.e. L and M, are so weak that fibring does not help distinguish between the choice of semantics? Can we get a completeness theorem and thus establishing the semantical independence of the fibring process? The answer is yes under certain conditions.

The weakest (least expressive) modal logic is the pure modality logic with just □ and ♢ and atoms and no other connectives. The wffs of such a logic have the form \overline{M}x, where \overline{M} is a string of modalities and x atomic. Any syntactical fibring of logics with pure modalities, L_{i}, i ∈ I, will yield similar mixed wffs \overline{M}x, where x is atomic and \overline{M} a string of modalities from some L_{i}, i ∈ J, J ⊆ I, J finite. Such fragments are of independent interest because when fibring modalities into other logics such as modal intuitionistic logic, one tends to fibre only the pure modal fragment. A completeness theorem for fibring pure modalities will therefore be very useful.

Theorem 15.2.20 (Completeness theorem for fibring and dovetailing pure modalities) Let L_{i}, i ∈ I be modal logics in a language with connectives □_{i} and/or ♢_{i} together with atomic propositional variables. We assume for convienence that ⊤, ⊥ are available.

Let K_{i} be semantics (class of Kripke models) for which L_{i} is complete. Let L_{I}^{F} be the fibring (resp. Let L_{I}^{D} be the dovetailing) of L_{i}, i ∈ I. Let |∼_{i} be the consequence relation of L_{i}. Let |∼ be the consequence relation of L_{I}^{F} (resp. L_{I}^{D}) defined by the following rules.

1. Any substitution instance of Δ_{i} |∼_{i} Γ_{i}, where Δ_{i} |∼ Γ_{i} is in the language of L_{i}.

2. Pure Modalities fibring (resp. dovetailing) rules

{A_{1}, …, A_{n} |∼ C_{1}, …, C_{m} \atop □A_{1}, …, □A_{n}, ♢B |∼ ♢C_{1}, …, ♢C_{m}}

In case of fibring, A_{i} and C not atomic.

{A_{1}, …, A_{n} |∼ C, B_{1}, …, B_{m} \atop □A_{1}, …, □A_{n}, |∼ □C, ♢B_{1}, …, ♢B_{m}}

In case of fibring, A_{i}, B_{j} and C not atomic.

3. |∼ is the smallest consequence relation (monotonic, reflexive and transitve) closed under the above rules.

The following holds.

Let Δ, Γ be two finite sets of wffs of L_{I}^{F} (resp. L_{I}^{D}). If Δ |̸∼ Γ, then there exists a fibred model m of L_{I}^{F} (resp L_{I}^{D}) such that

• A ∈ Δ implies m ⊨ A

• A ∈ Γ implies m ⊭ A

Proof. The proof is by induction on the modal complexity of wffs in Δ ∪ Γ. Each formula of the language has the form \overline{M}^{i}y_{i}, with \overline{M}^{i} a string of modalities and y_{i} atomic. Let l(i) be the length of the string. The induction is on the number n = max_{i}l(i).

The inductive assumption on finite sets of wffs Δ, Γ of max l(i) ≤ n is: Completeness Δ |̸∼ Γ implies for some fibred model m, m ⊨ all of Δ and m ⊭ any B ∈ Γ. Case n = 0 In this case all wffs of Δ ∪ Γ are atomic. We therefore have that Δ |∼ Γ iff Δ ∩ Γ ≠ ∅ clearly both inductive assumptions hold. Case n ≥ 1 In this case the elements of Δ ∪ Γ have the form α_{i} = N_{i}\overline{M}^{i}y_{i}, where N_{i} is the top front modality, which may not exist if α_{i} is atomic. \overline{M}^{i} is the rest of the string, which may be empty. For a given Δ |̸∼ Γ, we need to show a fibred (resp. dovetailed) model m as desired. We first observe that if q_{1}, …, q_{k} are all the atoms involved in Δ ∪ Γ, then we can assume that they are distributed among Δ ∪ Γ. In fact, if Ω is any set of formulas, we can assume that Ω ⊆ Δ ∪ Γ and Δ |̸∼ Γ. This follows from the cut rule, because if for all partitions of Ω into Ω_{1} and Ω_{2} we have Δ ∪ Ω_{1} |∼ Γ ∪ Ω_{2}, then Δ |∼ Γ by cut.

We second observe that we can assume that all modalities N_{i} for all i belong to the same logic, say L_{□,♢}. The reason we can do that is that we can decompose Δ into Δ_{1} ∪ Δ_{2} ∪ … and Γ into Γ_{1} ∪ Γ_{2} ∪ … such that Δ_{1} |̸∼ Γ_{1}, Δ_{2} |̸∼ Γ_{2} etc, and Δ_{j}, Γ_{j} are maximal in containing all the atoms and all the formulas of the same top modalities N_{i} of the same logic. If we find countermodels m_{j} for Δ_{j} |̸∼ Γ_{j}, then we can put them together as done in Definition 15.2.2. Since Δ_{i}, Γ_{i} contain all atoms, the case of dovetailing is also covered, i.e. the models can be dovetailed.

We therefore assume that all N_{i} are of the same logic, i = 1, 2, . . ..

We therefore need to find a model m of the logic L such that

• m ⊨ A for A ∈ Δ • m ⊭ A for A ∈ Γ

The third step in our analysis is to ask whether we can find a countermodel m in which ♢⊤ holds. If such an m exists then we can assume ♢⊤ ∈ Δ. If such a model does not exist then all fibred Kripke models which satisfy Δ and falsity Γ have only one possible world, the actual world, which is not accessible to anything.

In this latter case Δ |∼ □⊥ and Γ contains only wffs ♢A. We thus found a very special countermodel for Δ |̸∼ Γ.

We have now finished our initial analysis of Δ, Γ.

Let us assume that

Δ = {□D_{1}, …, □D_{r_{1}}, ♢E_{1}, …, ♢E_{r_{2}}} ∪ Ω_{1}

and

Γ = {□D′_{1}, …, □D′_{r′_{1}}, ♢E′_{1}, …, ♢E′_{r′_{2}}} ∪ Ω_{2}

and that E_{1} = ⊤. Ω_{1} ∪ Ω_{2} cover all basic atoms appearing in wffs of Δ ∪ Γ.

We can assume that D_{j}, E_{j}, D′_{j}, E′_{j} are wffs of the form \overline{M}_{1}^{i}y_{i}, where \overline{M}_{1}^{i} are the tails of the strings of modalities in Δ ∪ Γ.

We need a fibred (resp. dovetailed) Kripke model m = (W, S, R, a, h, F, τ, w_{0}) such that τ(w_{0}) = L and (S^{w_{0}}, R^{w_{0}}, w_{0}, h^{w_{0}}) ∈ K such that for all s ∈ S^{w_{0}}, w_{0}R^{w_{0}}s → (s ⊨ D_{j} and s ⊭ E′_{j}) and for some t_{j} and s_{j}, w_{0}R^{w_{0}}t_{j} and w_{0}R^{w_{0}}s_{j} and t ⊨ E_{j} and s_{j} ⊭ D′_{j}.

If for all j we have that both (*1) and (*2) below hold, then by the induction hypothesis we can find appropriate countermodels and take their disjunctive amalgamation, and complete the induction step.

(*1) {D_{1}, …, D_{r_{1}}, E_{j}} |̸∼ {E′_{1}, …, E′_{r′_{2}}}

(*2) {D_{1}, …, D_{r_{1}}} |̸∼ {E′_{1}, …, E′_{r′_{2}}, D′_{j}}

Otherwise either

(1 ∗ ∗) □D_{1}, …, □D_{r_{1}}, ♢E_{j} |∼ ♢E′_{1}, …, ♢D′_{r′_{2}}

or

(2 ∗ ∗) □D_{1}, …, □D_{r_{1}} |∼ ♢E′_{1}, …, ♢E′_{r′_{2}}, □D′_{j}

In either case this contradicts Δ |̸∼ Γ.

This completes the inductive step and the proof of the theorem. ■

15.2.2 The disjunction property

The logics L_{i} may be complete for several possible semantics. We may have that L_{i} is complete for a class of models K_{i} which is disjunctive, (defined below). In such a case the fibred semantics will also be disjunctive.

Definition 15.2.21 (Disjunctive Semantics) Let K be modal or intuitionistic semantics. K is said to be disjunctive iff for any finite number of models (S_{i}, R_{i}, a_{i}, h_{i}) ∈ K there exists a model (S, R, a, h) ∈ K such that the following holds:

S_{i} − {a_{i}} ⊆ S − {a}

• R_{i} ↾ (S_{i} − {a_{i}})^{2} = R ↾ (S_{i} − {a_{i}})^{2}

• h_{i} ↾ (S_{i} − {a_{i}}) = h ↾ (S − {a})

• x ∈ S_{i} and a_{i}R_{i}x imply aRx

• x ∈ S and aRx imply for some i, a_{i}R_{i}x.

The model (S, R, a, h) is called a disjunctive amalgamation of (S_{i}, R_{i}, a_{i}, h_{i}).

Example 15.2.22 There are many logics with disjunctive semantics, e.g. K, K4, T, etc.

Definition 15.2.23 (Disjunctive amalgamation of fibred models) Let L_{i}, i ∈ I be logics with semantics K_{i}. Let L_{I}^{F} be their fibred logic through their semantics. Assume that K is disjunctive. let

m_{i} = (W^{i}, S^{i}, R^{i}, a^{i}, h^{i}, F^{i}, τ^{i}, w_{0}^{i})

i = 1, …, k be k fibred models such that W^{i} are all pairwise disjoint. Assume we identify the name of a fibred model with its actual world. We also assume that τ(w_{0}^{i}) = L_{0}, i.e. n_{i}^{0} = (S^{i,w_{0}^{i}}, R^{i,w_{0}^{i}}, a^{i,w_{0}^{i}}, h^{i,w_{0}^{i}}) are all in the class of models of K_{0} (here we identify each fibred model by its actual world). We want to define a disjunctive amalgamation m of the fibred models m_{i}.

Since K_{0} is disjunctive, there exists a model n^{0} ∈ K_{0} which amalgamates n_{i}^{0}. This means that

n^{0} = (S_{0}, R_{0}, a_{0}, h_{0})
S^{i,w_{0}^{i}} ⊆ S_{0},
a_{0}Rw_{0}^{i}
R^{i,w_{0}^{i}} = R_{0} ↾ S^{i,w_{0}^{i}}
h^{i,w_{0}^{i}} = h_{0} ↾ S^{i,w_{0}^{i}}

The above for i = 1, …, k.

We can now define m.

m = (W, S, R, a, h, F, τ, a_{0})

The idea being that in the model n_{0}, some of the points are from S^{i,w_{0}^{i}} and some are new. For the old points we fibre the models m_{i}. For the new points, we fibre arbitrarily, say m_{1}. The definition is as follows:

W = S_{0} ∪ ⋃_{i} W^{i}
X^{w} = X^{i,w} for w ∈ W^{i}, w ≠ w_{0}^{i}
X^{w^{i_{0}}} = X_{0}
X^{w} = X_{0} otherwise (for w ∈ −S_{0} − ⋃_{i} W^{i}).

The above for X being either S, R, a or h.

τ(w) = τ^{i}(w) for w ∈ W^{i}
τ(w) = L_{0} otherwise
F(j, w, t) = F^{i}(j, w, t) for w ∈ W^{i}, t ∈ S^{w}
F (j, w, t) = F^{1}(j, w_{0}^{1}, t), for w = a_{0} and t ∈ S_{0} − ⋃_{i} W^{i}

Theorem 15.2.24 (Completeness theorem for disjunctive semantics) Let L_{i}, K_{i} be as in Theorem 15.2.20 and assume further that each K_{i} is disjunctive. Then the fibred (resp. dovetailed) logic L_{I}^{F} (resp. L_{I}^{D}) is also disjunctive. It can be axiomatised respectively by the following clauses (1D), (2D), and (3) of 15.2.20. The induction hypothesis also assumes the disjunction property, namely if Δ |∼ \{\overline{M}^{i}y_{i}\} then for some i_{0}, Δ |∼ \overline{M}^{i_{0}}y_{i_{0}}.

(1D) {A_{1}, …, A_{n} |∼ C \atop □A_{1}, …, □A_{n}, ♢B |∼ ♢C}

(2D) {A_{1}, …, A_{n} |∼ C \atop □A_{1}, …, □A_{n} |∼ □C}

where in the case of fibring, A_{i} and C are assumed not atomic.

Proof. The proof follows the same lines as that of 15.2.20.

We reach the stage in the proof where we want to show that (*1) and (*2) hold.

We proceed to use (1D) and (2D).

If (*1) does not hold then by the disjunction property, for some j_{0}

{D_{1}, …, D_{r_{1}}, E_{j}} |∼L E′_{j_{0}}

hence {□D_{i}, ♢E_{j}} ⊢L ♢E′_{j_{0}} hence Δ |∼ Γ.

If (*2) does not hold then either

{D_{1}, …, D_{r_{1}}} |∼L D′_{j}

and hence

{□D_{i}} |∼L □D′_{j}

and hence

Δ |∼ Γ

or

{D_{1}, …, D_{r_{1}}} |∼L E_{j}

and hence (since E_{1} = ⊤)

{□D_{i}, ♢E_{1}} |∼L ♢E′_{j}

and hence Δ |∼ Γ.

This completes the inductive step and the proof of the theorem. ■

15.3 Case study 2: Intuitionistic modal logics

This section studies the combination of pure modality □ and or ♢ into intuitionistic logic. It begins with a general discussion of what is involved leading to definition 15.3.1 — fibred semantics for intuitionistic modal logic. This is the most general combination. The completeness theorem is proved in Theorem 15.3.3. The proof is rather involved, mainly because classical negation is not available, and we need to deal with negative information in a roundabout way. However, the effort is worthwhile, as Example 15.3.7 shows.

Let us now begin. Consider a language with atomic propositions and the connectives ∧, □, ⇒. We want ∧ to be intuitionistic conjunction, □ to be S4 modality and ⇒ to be intuitionistic implication. Thus L_{1} is intuitionistic logic with {∧, ⇒} and L_{2} is S4 modal logic with {□}, both based on the same atoms. We are looking for L_{1,2}. Let us try and find semantics for this logic. Consider a wff in the language. Say q ⇒ □A.

Since the main connective is intutionistic, let us evaluate it at an intuitionistic Kripke model, say m = (S, ≤, 0, h). S is the set of possible worlds. ≤ is the reflexive and transitive accessibility relation. 0 ∈ S is the actual world and h is the assignment to the atoms. h satisfies the assignment restriction

(∗) t ∈ h(q) ∧ t ≤ s → s ∈ h(q)

for all atoms q.

Let us now evaluate our formula in the model.

m ⊨ (q ⇒ □A) iff by definition 0 ⊨ (q ⇒ □A), where 0 is the actual world.

0 ⊨ (q ⇒ □A) iff for all t, if 0 ≤ t and t ⊨ q then t ⊨ □A.

We can check whether t ⊨ q because this holds iff t ∈ h(q). However, we do not know how to evaluate t ⊨ □A. The connective □ is not recognised in m. However to answer whether m ⊨ q ⇒ □A all we need is a value for t ⊨ □A for every t. How we get it is our problem.

Let us then attach to t a modal logic model

n_{t} = F(m, t) = (T^{t}, R^{t}, a^{t}, h^{t})

[figure: …; x; t; m_{x}; n_{t}; 0]

Figure 15.3:

where n_{t} depends on m and on t ∈ S and where T^{t} is the set of possible worlds of n_{t}, R^{t} is the S4 accessibility relation. a^{t} is the actual world and h^{t} is the assignment.

We stipulate:

t ⊨m □A iff (definition) n_{t} ⊨ □A

The latter is the same as a^{t} ⊨n_{t} □A.

Since n_{t} is a modal model, a value can be found.

We continue the evaluation: a^{t} ⊨ □A iff for all x ∈ T^{t}, a^{t}R^{t}x implies x ⊨ A.

If A is in the modal language we can continue to evaluate. If A is atomic we get our value from h^{t}. What if A contains the intuitionistic ⇒? ie A = (p ⇒ r)? Then we need to evaluate x ⊨n_{t} (p ⇒ r).

Since n_{t} is a modal model, we do not know how to evaluate the above. However, all we need is a value. If we associate with x an intuitionistic model

m_{x} = F(n_{t}, x) = (S^{x}, ≤^{x}, 0^{x}, h^{x})

then we can continue our evaluation. m_{x} is functionally dependent on x and n_{t} through the function F. We can represent the dependence as F(t, x).

We stipulate:

x ⊨n_{t} p ⇒ r iff (definition) m_{x} ⊨ (p ⇒ r)

which is evaluated at the actual world of m_{x}.

Thus we continue:

m_{x} ⊨ p ⇒ r iff 0^{x} ⊨ (p ⇒ r) iff for all y ∈ S^{x}; 0^{x} ≤ y and y ⊨ p implies y ⊨ r.

This process can be continued as many times as we need. To carry out the evaluation of arbitrary mixed formulas of L, we need Kripke models of each logic and functions associating models of the other logic to each possible world, and infinitum, as illustrated in Figure 15.3.

These fibred models are not properly defined at the moment but are intuitively defined by the needs of combining logics. Note that we cannot put arbitrary modal models n_{t}, for points t ∈ S, because they must satisfy the intuitionistic compatibility conditions

(∗) t ≤ s and n_{t} ⊨ □A imply n_{s} ⊨ □A

for any □A of the modal language.

We need to secure the above condition (for arbitrary A):

\begin{aligned}Let & n_{t} = (T^{t}, R^{t}, a^{t}, h^{t}) \\ & n_{s} = (T^{s}, R^{s}, a^{s}, h^{s}) \end{aligned}

We can assume without loss of generality that our Kripke models n = (T, R, a, h) satisfy the condition:

x ∈ T iff (∃m ≥ 0)aR^{m}x

where xR^{0}y iff x = y and xR^{m+1}y iff ∃z(xRz ∧ zR^{m}y).

We will argue that we can conservatively ensure that condition (*) holds for arbirary A by asking that we have:

(**) t ≤ s implies T^{t} ⊇ T^{s} and R^{t} ⊇ R^{s}, and h^{s} ⊇ h^{t} ↾ T^{s}.

First note that the modal language L_{2} contains only atoms and modality □. So all wffs of L_{2} have the form □^{n}q, q atomic. Assume a^{t} ⊨ □A. This is equivalent to ∀y(a^{t}R^{t}y → y ⊨ A). Similarly a^{s} ⊨ □A is equivalent to ∀y(a^{s}R^{s}y → y ⊨ A). We thus have that condition (*) reduces to

(∗1) ∀y(a^{t}R^{t}y → y ⊨ A) → ∀y(a^{s}R^{s}y → y ⊨ A)

Since A is arbitrary, it can be taken to be □^{m}q for arbitrary m and atomic q. Thus we get:

(∗2) ∀q∀m[∀y(a^{t}(R^{t})^{m}y → y ∈ h^{t}(q)) → ∀y∀m(a^{s}(R^{s})^{m}y → y ∈ h^{s}(q))]

In particular we cannot have for some atomic q, t and s and y that t ≤ s and a^{t}R^{t}y and a^{s}R^{s}y and y ∈ h^{t}(q) and y ∉ h^{s}(q). Thus the assignments h^{t} are not arbitrary but are increasing in assigning truth.

To ensure that his happens for every q we have two options:

1. Restrict h^{t} and h^{s} by requiring (*2) to hold, in which case we do not have arbitrary truth increasing assignment.

2. Allow for arbritary truth increasing assignments. In which case (*2) would imply that

(∗3) ∀y∀m[a^{s}(R^{s})^{m}y → a^{t}(R^{t})^{m}y] and h^{s}(q) ⊇ h^{t}(q) ↾ T^{s}

which means that

(∗∗) t ≤ s implies T^{s} ⊆ T^{t} and R^{s} ⊆ R^{t}, and h^{s} ⊇ h^{t} ↾ T^{s}.

Condition (**) is consistent with any Kripke model satisfying (*1). In other words, any Kripke model satisfying (*1) can be transformed into a Kripke model satisfying (**) which validates the same formulas. To prove this let

T^{∗t} = T^{t} ∪ ⋃_{t≤s} T^{s}

and let

a^{t}R^{∗t}y iff def a^{t}R^{t}y ∨ ⋁_{t≤s} a^{s}R^{s}y.

Let

h^{∗t}(q) = h^{t}(q) ∪ ⋃_{t≤s} h^{s}(q).

Claim: For any □A

a^{t} ⊨ □A iff a^{t} ⊨^{∗} □A

Proof. Assume a^{t} ⊨ □A, then for all y such that a^{t}R^{t}y y ⊨ A. Hence by (*1) we have for all y such that for some s, t ≤ s and a^{s}R^{s}y we have y ⊨ A, hence for all y such that a^{t}R^{∗t}y we have y ⊨ A and hence a^{t} ⊨ ∗□A. The other direction is easy. ■

We can thus assume that (**) holds in our semantics.

Consider the fibred intuitionistic modal logic with ⇒ and ♢ (instead of ⇒ and □). We need to secure a condition [*] on the fibred semantics, very much like the condition (*) of the previous example, namely

[* ] t ≤ s and n_{t} ⊨ ♢A imply n_{s} ⊨ ♢A.

Very much like the previous example one can show that to secure this condition one can assume condition [**] below.

[** ] t ≤ s implies T^{t} ⊆ T^{s} and R^{t} ⊆ R^{s} and h^{t} = h^{s} ↾ T^{t}.

\begin{aligned}where n_{t} & = & (T^{t}, R^{t}, a^{t}, h^{t}) \\ n_{s} & = & (T^{s}, R^{s}, a^{s}, h^{s}). \end{aligned}

In case the fibred modal logic contains both □ and ♢ we get equality in [**].

Definition 15.3.1 (1) Fibred Semantics for Intuitionistic Modal Logic

Let L_{i}, i ∈ I be a family of logics. Each L_{i} is either a fragment of modal logic with either a modality □_{i} or a modality ♢_{i} or both (we may not have negation in the fragment) or a fragment of some extenstion of intutionistic logic (i.e. an intermediate logic). A fibred model for the logic L_{I}^{F} has the form (W, S, R, a, h, F, τ, w_{0}) as in Definition 2.1. We add the following additional fibring conditions.

If τ(w) = i and L_{i} is an intuitionistic fragment and L_{j} is a modal or another intuitionistic fragment and t, s ∈ S^{w} and tR^{w}s and t′ = F(j, w, t) and s′ = F(j, w, s) (i.e. t′ and s′ are the fibred models at t and s respectively) then (**) and [**] hold whenever □ and/or ♢ are the modalities respectively present at L_{j}, or (**) holds if L_{j} is intuitionistic

(**) S^{t′} ⊇ S^{s′}, R^{t′} ⊇ R^{s′}, h^{s′} = h^{t′} ↾ S′

[** ] S^{t′} ⊆ S^{s′}, R^{t′} ⊆ R^{s′}, h^{t′} = h^{s′} ↾ T′.

(2)Dove-tailed Semantics for Intutionistic Modal Logic Let L_{i} be as before. A dove-tailed model for the logic L_{I}^{D} has the form (W, R, a, h), where W is a set of worlds, a ∈ W, h is an assignment into W and for each i ∈ I, R(i) ⊆ W × W is the accessibility relation. For each i ∈ I, and t ∈ W, (W, R(i), a, h) is a model of the logic L_{i} (modal or intutionistic).

We also require for any intutionistic L_{i} and any L_{j} that

1. If L_{j} is intuitionistic or □ only modal that tR(i)s ∧ sR(j)t′ imply tR(j)t′

2. If L_{j} is ♢ modal then tR(i)s ∧ tR(j)t′ imply sR(j)t′

3. If L_{j} is □, ♢ modal then both (1), (2) hold.

We also require the following: Let t ∈ W be such that there exist n_{1}, …, n_{k} and i_{1} …, i_{k} such that aR^{n_{1}}(i_{1})·R^{n_{2}}(i_{2})·. . .·R^{n_{k}}(i_{k})t holds. Assume i ≠ i_{k} and let

W^{t} = {y ∈ W | tR^{m}(i)y holds}.

Then the model (W^{t}, R(i) ↾ W^{t}, t, h ↾ W^{t}) is in K_{i}.

Lemma 15.3.2 1. Let K_{I} be the fibred semantics of the previous definition and assume that each K_{i} is disjunctive. Let Φ and Ψ be two finite sets of formulas of the form A ⇒_{i} B, where ⇒_{i} is the implication of L_{i}. Assume L_{i} does not contain disjunction. Assume further that there is a fibred countermodel m_{α} for Φ ⊢ α for every α ∈ Ψ, then there is a fibred counter model m for Φ ⊢ Ψ.

2. The same holds if Φ, Ψ are assumed to contain wffs of the form □_{j}A, ♢_{j}A all in some L_{j}.

Proof. A similar construction to that which proves the disjunction property in ordinary modal or intutionistic logic. ■

We are now ready to state a completeness theorem for the fibring and dovetailing of modalities with intuitionistic connectives. We want a general fibring of an intutionistic or intermediate logic connective ⇒ with one or several modalities □_{1} and/or ♢_{2}. Thus for example we would like to fibre the ⇒ of Dummett’s LC with the K modalities □ and ♢. The result of the fibring, as well as the axiomatisation, is very much dependent on the semantics we take for the modalities and on the additional connectives which happen to be present, such as ∧, ∨ and ¬. Thus no general theorem can be easily given. We will therefore choose one type of modality, K modality and only ⇒ and do the fibring and dovetailing for that. The methodology will be clear from the proofs and we shall later indicate what happens if the modalities come from a stronger (possibly non-normal) extension of K.

The reader will notice throughout that the proofs use properties of intuitonistic logic in an essential way and one needs to think what one can do in a general case. This we postpone to a later section.

We now fibre several intermediate logics ⇒_{i} with several K modalities □_{j}, ♢_{j}. Since we might not have ¬, ∧ and ∨, we need to formulate the logics to be fibred using the notion of consequence relation.

Theorem 15.3.3 (Completeness theorem for fibred (resp. dovetailed) intuitionistic modal logics)

1. Let L_{i} be a logic with either an intermediate intutionistic implication ⇒_{i} (and possibly ∧, ∨ and ⊥) or with one or both of the L_{i} modalities □_{i}, ♢_{i}. Let K_{i} be the semantics for L_{i}. We make the following assumptions.

(*) For intuitionistic L_{i}, we assume that either disjunction is available or the semantics K_{i} is disjunctive.

Let |∼_{i} be the consequence relation of L_{i}. Then {A_{j}} |∼_{i} {B_{k}} means that in every Kripke model of L_{i} (modal or intuitionistic) of the form (S, R, a, h) whenever for all j, a ⊨ A_{j} then for some k, a ⊨ B_{k}. We regard the consequence relation as a relation between finite sets of formulas. The completeness theorem characterises the consequence relation of L_{I}^{F} (denoted by |∼) in terms of the consequence relations of L_{i} (denoted by |∼_{i}).

2. Let |∼ be the smallest consequence relation containing |∼_{i} for i ∈ I, closed under substitution (and of course under reflexivity, monotonicity and cut) and closed under the following rules, where ⇒ is a connective of an arbitrary L_{i_{1}} and □, ♢ of an arbitrary L_{i_{2}}.

(a)

{A_{1}, …, A_{n} |∼ C_{1}, …, C_{m} \atop □A_{1}, …, □A_{n}, ♢B |∼ ♢C_{1}, …, ♢C_{m}}

for the case of fibring A_{i} and C must begin with □, ♢ or ⇒.

{A_{1}, …, A_{n} |∼ C, B_{1}, …, B_{m} \atop □A_{1}, …, □A_{n} |∼ □C, ♢B_{1}, …, ♢B_{m}}

for the case of fibring A_{i}, B_{j} and C must begin with □, ♢ or ⇒.

(b) Deduction theorem for each ⇒_{i}. Then |∼ is the consequence relation of all the fibred models of L_{I}^{F} (resp. dovetailed models of L_{I}^{D}).

Proof.

1. Soundness is easy to verify.

2. Completeness can be proved along similar lines to the proof of Theorem 15.2.3.

In the case of modal logics, completeness was proved by induction on the number of nested modalities of different logics. Thus one would expect that we use induction in the modal intuitionistic case on the number of nested different connectives of the different logics. Thus for a formula of the form □_{2}(A ⇒_{1} □_{2}♢_{3}B) ⇒_{4} B one may expect the inductive nesting number to be 4. This does not work, however, because the modal logics with □ and ♢ only do not have enough expressive power to carry the inductive case step. It is more convenient to count only nestings of intuitionistic ⇒, because we can use the expressive power of the ⇒ to carry the induction through. Thus the above formula falls under the inductive case for n = 2. The nestings are A ⇒_{1} □_{2}♢_{3}B and the full □_{2}(A ⇒_{1} □_{2}♢_{3}B) ⇒_{4} B. Modalities do not count and they join the outer ⇒ governing them. The above will be analysed as:

Case n = 1 Substitution into

B_{1}(x, y) = [x ⇒_{1} □_{2}♢_{3}y]

by

Θ_{1}(x) = A, Θ_{2}(y) = B

Case n = 2 Substitution into

B_{2}(x, y) = [□_{2}x ⇒_{4} y]

by

\begin{aligned}Θ_{1}(x) & = & A ⇒_{1} □_{2}♢_{3}B \\ Θ_{2}(y) & = & B. \end{aligned}

Case n is described inductively as composed of wffs B_{n}(\overline{x}, \overline{y}), whose outer connective is some intuitionistic ⇒_{i} of the logic L_{i} and within it some modalities and atoms from L_{j}, j ∈ J (abbreviated L_{J}). A substitution Θ_{n}(x_{i}) gives wffs of case n − 1.

Let Δ ⊬ Γ, Δ, Γ sets of wffs of L_{I}^{F} (resp. L_{I}^{D}). We show by induction on the maximal number n of nested intuitionistic connectives (of different logics) in Δ ∪ Γ that there exists a fibred (resp. dovetailed) model in which all members of Δ hold and all members of Γ do not hold. Case n = 0 This case means that we have only connectives of the form □ and ♢ of various modal logics L_{j}, j ∈ J. Let L_{J} be the logic with modalities of L_{j}, j ∈ J. We need a lemma:

Lemma 15.3.4 Let A_{1} … A_{n} |̸∼ B_{1}, …, B_{k} in L_{J}. Then for some fibred (resp. dovetailed) model m of L_{J}^{F} , m ⊨ A_{i} and m ⊭ B_{j}.

Proof. From the theorem on fibring (resp. dovetailing) pure modalities in the previous section, there exists a fibred modal model. The intuitionistic fibred part can be added arbitrarily. Case n = 1 We prove that every Δ, Γ s.t. Δ |̸∼ Γ has a fibred (resp. dovetailed) countermodel. Our strategy is to regard all modally prefixed atoms in Δ∪Γ as new atoms in a purely intuitionistic form Δ′ |̸∼ Γ′. We can find an intuitionistic countermodel for that form and realise the assignments to the new atoms by fibring (resp. dovetailing) modal models. This would give us a fibred countermodel for Δ |̸∼ Γ. We now go through the details.

Let (S, R, a, h) be any intuitionistic countermodel for Δ′ |̸∼ Γ′ and let {A_{1}, …, A_{m}, B_{m+1}, …, B_{k}} be the new modal atoms. Thus

Δ′ = \{α_{i}(\overline{x}, \overline{y})\}, Γ′ = β_{j}\{(\overline{x}, \overline{y})\}

and

Θ(x_{1}) = A_{1}, …, Θ(x_{m}) = A_{m}, Θ(x_{m+1}) = B_{m+1}, …, Θ(x_{k}) = B_{k}.

m is an arbitrary division to be chosen later. Let t ∈ S and assume h(t, x_{i}) = 1, i ≤ m(t) and h(t, x_{i}) = 0, m(t) < i ≤ k. If we can realise, for arbitrary t (m depends on t) {A_{i}} |̸∼ {B_{j}} then we get a fibred (resp. dovetailed) countermodel for case n = 1. Otherwise {A_{i}} |∼ {B_{j}}. By the property (*) assumed in Theorem 15.3.3, {A_{i}} |∼ B where B is either ⋁ B_{j} or B_{j_{0}} for some j_{0}. Let δ_{t} = x_{1} ⇒_{i} (x_{2} ⇒_{i} …, (x_{m(t)} ⇒_{i} x_{j_{0}}) …). There is only a finite number of possibilities for δ_{t}. Hence

{δ_{t}} ∪ Δ′ ⊢L_{i} Γ′

so

(δ_{t}Θ), Δ′Θ |∼ Γ′Θ.

Since |∼ δ_{t}Θ and Δ = Δ′Θ, Γ = Γ′Θ we get Δ |∼ Γ, a contradiction.

Thus for some intuitionistic countermodel (S, R, a, h) of Δ′ |̸∼ Γ′, all assignments at t are realisable by fibred models, m_{t}. These models can be grafted onto (S, R, a, h) as in Definition 15.2.2. This grafted model can be turned to satisfy the requirements [*] and [**] of Definition 15.3.1 by following the construction at the beginning of the Section.

This completes the proof for case n = 1. Case n > 1 We assume Δ, Γ are obtained from a Δ_{i}, Γ_{i} of a pure intuitionistic modal component logic L_{J} as in case n = 1 via a substitution Θ. In other words

\begin{matrix}Δ_{i} = \{B_{i}^{r} | r = 1, …, k\} \\ Γ_{i} = \{B_{i}^{r} | r = k + 1 … m\} \end{matrix}

and each B_{i}^{r} has the form

B_{i}^{r}(\overline{x}^{r}, \overline{y}^{r})

Let Θ_{0}(x_{r}) = \overline{M}^{r}z_{r}, and let Θ_{1}(z_{r}) = A_{r} ⇒_{j} B_{r}. Let Θ = Θ_{0}Θ_{1} (Θ_{0} first then Θ_{1}). Thus Θ(x_{r}) = \overline{M}^{r}(A_{r} ⇒_{j} B_{r}), where \overline{M}^{r} is a string of modalities from L_{J} and A_{r} ⇒_{j} B_{r} are from a logic L_{j}.

We assume subcase a that each x variable is under the scope of the ⇒_{i} connective. Since Δ_{i}Θ ⊬ Γ_{i}Θ we can assume Δ_{i}Θ_{0} |̸∼L_{J} Γ_{i}Θ_{0} and hence there are L_{J} models m = (Sm, Rm, am, hm) in which Δ_{i}Θ_{0} holds and Γ_{i}Θ_{0} does not hold as shown in case n = 1. Reasoning very much like the case of Theorem 15.2.3 we want to show that there exists at least one m in which we can realise the assignment hm(t, x_{s}^{r,j}) for all t by a fibred model for Θ(x_{s}^{r,j}), of the logic L_{j}. Assume this is not possible. Then by the induction hypothesis for every m, there exists a j and t such that Φ_{j,t}Θ ⊢ Ψ_{j,t}Θ, where

Φ_{j,t} = {x_{s}^{r,j} | hm(t, x_{s}^{r,j}) = 1, r, s varying} ⊢ Ψ_{j,t}
= {x_{s}^{r,j} | hm(t, x_{s}^{r,j}) = 0, r, s varying}.

Our aim is to reach a contradiction by using the fact that for every m there exists a j and t ∈ Sm such that Φ_{j,t} |∼ Ψ_{j,t}. The contradiction is to show that Δ |∼ Γ contrary to assumptions. To achieve this end we need to extract some formulas δ_{1}, δ_{2}, … so that Δ_{i}Θ_{0}, δ_{1}Θ_{0}, δ_{2}Θ_{0}, … |∼ Γ_{i}Θ_{0} and |∼ δ_{1}Θ, |∼ δ_{2}Θ, … and hence by cut, Δ = Δ_{i}Θ |∼ Γ = Γ_{i}Θ. We need a small lemma to the effect that we can assume that Ψ_{j,t} contains (or is equivalent in L_{j} to) only one element β_{j,t}. Using this fact we can write

δ_{j,t} = φ_{1} ⇒_{j} (φ_{2} ⇒_{j} … ⇒ (φ_{k(j,t)} ⇒_{j} β_{j,t} …))

where

Φ_{j,t} = {φ_{1}, …, φ_{k(j,t)}}.

Since there is only a finite number of different possibilities for δ_{j,t}, for different models m, we get by case n = 1 that for some δ_{1}, δ_{2} …, Δ_{i}Θ_{0}, δ_{1}Θ_{0}, δ_{2}Θ_{0}, … |∼ Γ_{i}Θ_{0}.

Hence

Δ_{i}Θ, δ_{1}Θ, …, ⊢ Γ_{i}Θ

and since |∼ δ_{r}Θ we get Δ |∼ Γ a contradiction.

We now prove the lemma.

Lemma 15.3.5 We can assume that Ψ_{j,t} contains only one element.

Proof. Note that all the elements of Φ_{j,t}Θ and Ψ_{j,t}Θ are of the form (A ⇒ B). If L_{j} contains no disjunction in the language we get from 4.4 and the induction hypothesis that for some x ∈ Ψ_{j,t} we have Φ_{j,t}Θ ⊢ Θ(x). If L_{j} does contain disjunction then clearly Φ_{j,t}Θ ⊢ ⋁ Ψ_{j,t}Θ.

In either case we get a wff β_{j,t} such that Φ_{j,t}Θ ⊢ β_{j,t}Θ. We can thus assume that Ψ_{j,t} contains only one element. ■

We have thus concluded the proof of case n > 1 subcase a. Subcase b We now examine the subcase where the conditions of subcase a are not necessarily satisfied. We thus have Δ ⊬ Γ and Δ, Γ are obtained by substitution into Δ_{i} ⊬L_{J} Γ_{i} and the formulas in Δ_{i} ∪ Γ_{i} are of the form B_{i}^{r}(\overline{M}, \overline{x}, \overline{y}) as in subcase a.

We do not have in this case that each variable x is under the scope (in B_{i}^{r}(… x …)) of intutionistic connecitve ⇒_{j}. This means that Δ_{i} ∪ Γ_{i} is comprised of several formulas whose outer connectives are different intuitionistic ones ⇒_{j_{1}}, ⇒_{j_{2}}. Since these formulas are evaluated in different fibred models, we can apply subcase a to them separately. The following lemma explains

Lemma 15.3.6 Let j ≠ j′ and assume

A ⇒_{j} B, A′ ⇒_{j′} B′ ⊢ C ⇒_{j} D, C′ ⇒_{j′} D′

then either

A ⇒_{j} B ⊢ C ⇒_{j} D

or

A′ ⇒_{j′} B′ ⊢ C′ ⇒_{j′} D′.
■

Example 15.3.7 The above theorem allows us to fibre or dovetail the following:

1. The intermediate logic KC obtained by adding the schema ¬A ∨ ¬¬A to intuitionistic logic with S4 modality □, and ♢.

2. Dummetts LC (obtained by adding the schema (A → B) ∨ (B → A) with the K modality ♢.

The axioms of the combined system are obtained from the completeness theorem. For example, dovetailing the systems in (1) yields:

1. KC axioms with Modus Ponens.

2. □A ∧ □(A → B) → □B □(A → B) ∧ ♢A → ♢B ♢♢A → ♢A □A → □□A □A → ♢A ∨ □B ♢¬A ∨ □¬¬A ♢¬¬A ∨ □¬A □A → A A → ♢A

3. {⊢ A \atop ⊢ □A}

In the above examples we assumed the fibring is done by a function F(w, t) = z. Thus the value of a new connective (e.g. □) is evaluated at a single model labelled by z. It is more general to associate with (w, t), not a single model z but a family of such models in which case F becomes a set fucntion or a relation R. We thus get in m:

t ⊨ ♯(A_{i}) iff for all n such that (m, t)Rn, we have n ⊨ ♯(A_{i})

The advantage of such an approach is that it is more general. Imagine some system where classical disjunction is a new connective. Then we do not necessarily want to have

{A |∼ C, B |∼ C \atop A ∨ B |∼ C} .

15.4 Algebraic fibring of logics

Previous sections discussed fibring of modal and intutionistic logic through their possible world semantics. Many logics do not have clear possible world semantics and are best presented through their algebraic semantics. A typical example is many valued logics, where the algebraic presentation is the most natural. Thus for example to fibre modal logic with many valued logic we need to know how to construct a fibred many valued model. We need to define the notion of fibring of two algebraic semantics as well as the notion of fibring of an algebraic semantics with a possible world semantics. Furthermore, since many logics have both a possible world and an algebraic semantics, as for example is the case with modal logics and intuitionistic logic, we need to give careful definitions which would essentially yield the same fibred result no matter how we fibre the logics — algebraically, semantically or mixed. Thus for example the fibring of modal and intuitionistic logic should be indifferent to whether we fibre them through their Kripke semantics or through their algebras or in a mixed way. Another bonus to the algebraic formulation of fibring may come in connection with the problem of the semantical independence of the fibring process. We have seen in the case of fragments of modal logics that some fragments were complete for several different semantics and depending on the choice of semantics, the fibring of the semantics yielded different fibred logics with different sets of theorems. It is hoped that by taking the Lindenbaum algebraic semantics for these fragments and fibring them we would get a unique fibred system which we can regard as the fibring of the logics.

We begin by describing what we mean by algebraic semantics for a logic. We want a very general definition that would equally apply to many systems, whether they are monotonic or nonmonotonic. There are many systems which have none of the classical connectives and which satisfy only some very restricted proof theory. There is no agreed standard definition of what is algebraic logic or semantics. We shall compare our approach to those of others as we go along. Our primary concern in this chapter is the fibring of logics, so any good definition of algebraic semantics will do. As it turns out our definitions are of independent interest. The new notion of algebraic logics for general consequence relations was introduced in Chapter 8, section 5.

This applies algebraic and shows how to fibre, dovetail and fuzzle various logics.

Definition 15.4.1 (Fibring and dovetailing algebraic logics) A fibred algebra has the form (W, A, f_{i}, ≤ T, h, F), where W is the set of labels. For each w ∈ W, A^{w} ⊆ W is the set of elements of the algebra labelled by w. f_{i}^{w} is the i-th function of the algebra of w and ≤^{w}, T^{w} are its order and truth set. F is a fibring function, giving for each w and t ∈ A^{w} and each logic j another algebra indexed by w′ = F(j, w, t). The following must be satisfied

t ≤^{w} t′ implies F(j, w, t) is homomorphic onto F(j, w, t′).

We need an assignment function h^{w}(q) giving each atomic q a filter h^{w}(q) in A^{w}. h^{w} can be extended to arbitrary wffs. We use the fibring function when we want to evaluate h^{w}(♯(q)) for a connective ♯ which is in another logic L_{j}. In this case we look at all w′_{t} = F(j, w, t) for all t ∈ A^{w}. We check at which point t the formula ♯(q) holds at the algebra w′_{t} i.e. we check {t | h^{w′_{t}}(♯(q)) ∈ T^{w′_{t}}}. The set of these points is a filter (because t ≤ s implies w′_{t} is homomorphic onto w′_{s} and hence if ♯ holds at w′_{t} it will hold at w′_{s}). We let h^{w}(♯(q)) be this filter. The case of dovetailing of algebras can be distinguished from that of fibring by the following extra requirement:

For all w and all t ∈ A^{w} and w′_{t} = F(j, w, t) we have for all atomic q that t ∈ h^{w}(q) iff h^{w′_{t}}(q) ∈ T^{w′_{t}}.

Example 15.4.2 Let m be a fibred modal logic. Assume the fibring is done through its Kripke semantics. How would the fibring be done as an algebra?

A Kripke model (S, R) gives rise to an algebra where the elements are subsets X ⊆ S. X ≤ Y means X ⊇ Y. We need to fibre an algebra to each subset X ⊆ S. We do have Kripke models m_{x} fibred for each points x ∈ X. These give rise to algebras a_{x}. Let a_{X} = Π_{x∈X}a_{x}. Clearly X ≤ Y means X ⊇ Y and so a_{Y} is a subalgebra of a_{X}.

Thus we associate with each fibred modal model a fibred algebraic modal model through the above indicated translation. In the case of dovetailing, there is the commitment that the fibred model agrees on atomic values. This means algebraically that X ⊨ q iff a_{X} ⊨ q for all atoms.

Example 15.4.3 (Many valued modal logic) This is an example of fibring semantical models (modal logic) with algebraic models (Łukasiewitz many valued logic). We consider the many valued language with {∧, ∨, →, ¬} with truth values at the real interval [0 1] . The algebraic models are linearly ordered abelian groups which are embeddable in [0 1]. So it is sufficient to consider assignments μ of values and truth table for values in [0 1]. The following are the algebraic functions:

• The domain is [0 1].

• ≤ is numerical ≤.

• T = {0} (0 is truth).

• f_{∧}(x, y) = max(x, y).

• f_{∨}(x, y) = min(x, y).

• f_{¬}(x) = 1 − x

• f_{→}(x, y) = max (0, y − x).

Strictly speaking, the assignments μ into an algebra a = (A, f_{∧}, f_{∨}, f_{→}, f_{¬}, {0}, μ) should be to filters, i.e. sets of points closed under ≤. These filters can be characterised by a single point x ∈ [0 1] either as μ(q) = [x 1] or μ(q) = (x 1] (left open or closed intervals).

We will write μ(q) = x for [x 1] and x− for (x 1].

We now turn to fibring and to dovetailing.

Let m = (S, R, a, h) be a Kripke model for □. The fibring function F associates with each t ∈ S an algebraic model a_{t} = (A_{t}, ≤, f_{∧}, f_{∨}, f_{→}, f_{¬}, {0}, μ_{t}). Since A_{t} = [0 1], fibring algebras a_{t} to t is nothing more than associating with each t an arbitrary many valued assignment μ_{t} to the atoms q of the modal language. In case the semantics is dovetailed, we further require that for atoms q we have μ_{t}(q) = 0 iff t ⊨ q.

We can further fibre to each element x ∈ A_{t} of the algebra a Kripke model n_{x,t} = (S_{x,t}, R_{x,t}, a_{x,t}, h_{x,t}). The requirement is that for x ≤ y, n_{x,t} is homomorphic onto n_{y,t}. This means that the following holds for x ≤ y:

(*) For all □A, n_{x,t} ⊨ □A implies n_{y,t} ⊨ □A.

This can be achieved as in the beginning of Section 3 by requiring that: x ≤ y implies S_{x,t} ⊇ S_{y,t} and R_{x,t} ↾ S_{y,t}^{2} ⊇ R_{y,t} and h_{y,t} = h_{x,t} ↾ S_{y,t}. The reason the assignment cannot be truth increasing but must remain constant is that we have negation in the language. We can write both □q and □ ∼ q and neither can change value.

Let us now evaluate □(q → ♢q), q atomic, at the model m.

• a ⊨ □(q → ♢q) iff for all t ∈ S such that aRt, t ⊨ q → ♢q.

• Since the main connective of q → ♢q is many valued, we have t ⊨ q → ♢q iff a_{t} ⊨ q → ♢q iff μ_{t}(q → ♢q) = 0 iff max(0, μ_{t}(♢q) − μ_{t}(q)) = 0 iff μ_{t}(q) ≤ μ_{t}(♢q).

• μ_{t}(q) is directly given since q is atomic. However μ_{t}(♢q) is not directly given. ♢ is a modal operator and we need to go t the fibred modal models n_{x,t}, x ∈ A_{t} (recall that A_{t} = [0 1]).

We let

Q_{t} = {x | n_{x,t} ⊨ ♢q}

Q_{t} is a filter because of (*) above. It has the form either [α_{t} 1] or (α_{t} 1].

Thus μ_{t}(♢q) = α_{t} (or α_{t}−). Thus we need to check whether μ_{t}(q) ≤ α_{t}.

Example 15.4.4 We would like to highlight a point in the previous example, which will be of importance later. Consider the top level fibring. We start with m = (S, R, a, h). Then with each t ∈ S, we fibre an algebra a_{t}. If all the algebras have the same domain, the fibring reduces to μ_{t}, the assignment. Let us stop at this stage and consider the entity (S, R, a, h, μ) and let us try to evaluate t ⊨ □q. Since □q contains no mnay valued connectives, we get t ⊨ □q holds iff ∀s(tRs implies s ⊨ q). Consider the wff Iq = def (q → q) → q. Really Iq is q but it is formally a many valued wff. So we have to evaluate it at the algebra a_{t}. We have a_{t} ⊨ I(q) iff μ_{t}(q) = 0. t ⊨ □I(q) iff for all s (tRs implies μ_{t}(q) = 0).

We now have the opportunity to make t ⊨ □q fuzzy (i.e. ‘fuzzle’ the satifaction ⊨ or ‘fuzzle’ the modal logic) by extending μ_{t} to □q:

(♯) μ_{t}(□q) = Sup_{{s|tRs}}μ_{s}(q).

Using (♯) we can fuzzle any wff of the modal logic and extend μ_{t} to all wffs. We take the many valued table for ∧, ∨, ¬ and →. We have thus by understable intuitive definition, through (♯), turned (S, R, a, μ) into a sort of modal many valued logic by changing the crisp {0 1} assignment h into a fuzzy μ. Note that what we are getting is not fibring or dovetailing. It is something new.

Example 15.4.5 Let us continue the previous example and try now to fuzzle many valued logic with modal logic. Consider the many valued model a_{t} = ([0 1], …, μ_{t}). To each x ∈ [0 1], a modal model n_{x,t} was fibred. For x ≤ y we had S_{x,t} ⊇ S_{x,y} and R_{x,t} ↾ S_{y,t}^{2} ⊇ R_{y,t} and h_{y,t} = h_{x,t} ↾ S_{y,t}. Clearly n_{0,t} is the largest model. Let q be atomic. The value x ⊨ q in the algebra a_{t} is obtained by looking whether μ_{t}(q) ≤ x. Formally we can write

val_{t}(x, q) = 1 iff μ_{t}(q) ≤ x

val_{t}(x, q) is a ‘crisp’ {0,1} function. We now ‘fuzzle’ it by giving values in the modal algebra. Let val_{t}^{∗} be the new fuzzy function.

val_{t}^{∗}(x, q) = {s ∈ S_{x,t} | s ∈ h_{x,t}(q)}.

Since the modal models n_{x,t} satisfy (**) of the beginning of Section 2, we can assume that they all have the form (S_{t}, R_{x,t}, a_{t}, h_{t}) and that x ≤ y implies R_{x,t} ⊇ R_{y,t}. There is no need to assume that S gets smaller with increasing ≤ because what is not connected by R in the model is practically non existent. We can also assume that h_{x,t}(q) = h_{t}(q) ∩ S_{x,t}.

for α ∈ S_{t} let μ_{t}^{α}(q) be Inf_{x}α ∈ h_{x,t}(q). Clearly in our particular case μ_{t}^{α}(q) is either 0 or 1.

val_{t}^{∗}(x, q) = {s ∈ S_{x,t} | μ_{t}^{s}(q) ≤ x}.

We can also turn R_{x,t} into R_{t}^{∗} a many valued relation by defining

R_{t}^{∗}(α, β) = Inf_{x}[R_{x,t}(α, β) holds]

for α, β ∈ S, and of course

R_{x,t}(α, β) holds iff R_{t}^{∗}(α, β) ≤ x.

We can thus assume that we are dealing with structures of the form (S_{t}, R_{t}^{∗}, a_{t}, h_{t}, μ_{t}^{α}, μ_{t}) where R_{t}^{∗}(α, β) ∈ [0 1].

μ_{t}^{α}(q) ∈ [0 1]

and we define

• R_{x,t}(α, t) = 1 iff R_{t}^{∗}(α, β) ≤ x • α ∈ h_{x,t}(q) iff μ_{t}^{α}(q) ≤ x.

• μ_{t}(q) is the many valued assignment for q, which for the case of dovetailing, equals μ_{t}^{a_{t}}(q). (Note that since μ_{t}^{a_{t}}(q) is {0, 1} valued,dovetailing would collapse μ_{t} to a classical assignment.)

We want to extend μ_{t}^{α}(A) to arbitrary A . We do that by induction. We assume that for A and B, μ_{t}^{α}(A) = x and μ_{t}^{α}(B) = y are defined and we have

val_{t}^{∗}(x, A) = {s ∈ S_{t} | μ_{t}^{s}(A) ≤ x}

Similarly for val_{t}^{∗}(x, B).

The obvious way to extend μ_{t}^{α} is the following

μ_{t}^{α}(□A) = Inf_{x}∀_{β}[R_{x,t}(α, β) = 1 implies β ∈ val_{t}^{∗}(x, A)]
Inf_{x}∀_{β}[R_{x,t}(α, β) ≤ x implies μ_{t}^{β}(A) ≤ x]

Clearly also

μ_{t}^{α}(A ∧ B) = max(μ_{t}^{α}(A), μ_{t}^{α}(B))
μ_{t}^{α}(A ∨ B) = min(μ_{t}^{α}(A), μ_{t}^{α}(B))
μ_{t}^{α}(A → B) = max(0, μ_{t}^{α}(B) − μ_{t}^{α}(A))
μ_{t}^{α}(¬A) = 1 − μ_{t}^{α}(A)

In other words, we are reading the connectives pointwise as should be.

Example 15.4.6 (A ‘fuzzled’ modal logic) The previous two examples show that modal and many valued logic can be put together in two different ways. If we start with a modal model (S, R, a, h) then we can fuzzle (make fuzzy) h by changing it into a many valued assignment μ and extend to the entire modal langauge. If we start with a many valued model μ then we can fuzzle μ by changing it into a function into elements of a modal algebra. This turned out to be equivalent to looking at modal models where the possible world relation is fuzzy but the assignment is crisp. i.e. models of the form (S, R^{∗}, a, μ) where R^{∗}(α, β) ∈ [0 1], while μ is a {0,1} assignmnt. μ can be extended to all wffs, in which case it becomes a [0 1] valued function.

The obvious combination of the two approaches is to make both R^{∗} and μ^{∗} fuzzy. This leads us to the following definition.

Definition 15.4.7 An algebraic fuzzled many valued modal model has the form (S, R^{∗}, a, μ^{∗}), where R^{∗} : S^{2} → [0 1] is a fuzzy possible world relation and for each s ∈ S and atomic q, μ_{s}^{∗}(q) ∈ [0 1].

μ_{s}^{∗} can be extended to arbitrary formulas as follows:

μ_{s}^{∗}(A♯B) = f_{♯}(μ_{s}^{∗}(A), μ_{s}^{∗}(B))

where ♯ ∈ {∧, ∨, →, ¬} and f_{♯} is the many valued truth table for ♯

μ_{s}^{∗}(□A) = Inf_{x}[ for all α, R^{∗}(s, α) ≤ x implies μ_{s}^{∗}(A) ≤ x]

The above definition should be compared with the case of dovetailing.

The above examples indicate how we can define the notion of one logic L being fuzzled (made fuzzy) by another logic Z. In the modal-many valued logic examples above, modal logic was made fuzzy by Łukasiewicz many valued logic. The possible world relation of the modal semantics was replaced by a function to truth filters of the many valued algebra and the assignments h of L was replaced by an algebraic many valued assignment.

15.5 Label dependent connectives

We have alredy introduced the possiblity that certain constants be label dependent. For example when we skolemise the data item

α : ∃x♢A(x)

we introduce a constant

c^{α} and get
α : ♢A(c^{α})

We can thus create a β, α < β and get:

β : A(c^{α})

The above notation ensures that the data item

α♢∃xA(x)

is distinguished from the previous one. We can introduce a β, α < β and get

β : ∃xA(x)

then skolemise and end up with

β : A(c^{β})

This section studies label dependent connectives. If the labels are representing time, then we are dealing with time dependent connectives. It is easier to give examples of the latter.

Example 15.5.1 Consider the temporal connective U(A, B), reading “B until A”. Its classical truth table is:

U(A, B) holds at t iff for some s > t, A holds at s, and for all U between t and s we have that BR holds at U.

We can write the equivalence

t : U(A, B) is equivalent to t : F (A ∧ H^{t}B)

HB reads “B was always true in the past”.

H^{t}B reads “B was always true in the past between now and t”.

H^{t} is a time dependent connective.

Example 15.5.2 The following are examples for making □^{t} label dependent.

1. The basic meaning for □A is “always A”. It is not label dependent. The corresponding LDS rule is:

\frac{s : □A, s < r}{r : A}

2. The basic meaning for □^{t}A is ”always A up to t”.

The corresponding rule is:

\frac{s : □^{t}A, s < r < t}{r : A}

3. The basic meaning of □^{t}A is “always A except at t”

The corresponding rule is:

\frac{s : □^{t}A, t < s, s ≠ t}{s : A}

4. The basic meaning of s : ♢^{t}A is “A is true at t and s < t”. The corresponding rules are:

\frac{s : ♢^{t}A}{s ≦ t}

and

\frac{s : ♢^{t}A}{t : A}

another example is that of joining two logics to form a two-dimensional product.

Example 15.5.3 (Joining modal logics) Let L be the extension of the modal logic K. This logic is complete for the class of all Kripke structures (S, R, a, h).

Let L_{1}, L_{2} be two copies of L with modalities □_{1} and □_{2}. Let L_{1,2} be the langauge with both modalities and consider the following K_{1,2} semantics for L_{1,2}.

The structures have the form (S = S_{1} × S_{2}, R_{1}, R_{2}, (a_{1}, a_{2}), h) where (S_{i}, R_{i}, a_{i}) are L_{i} Kripke structures and h is an assignment into S, i.e. h(q) ⊆ S, for each atomic q.

Satisfaction under h is dfined as follows: (t, s) ⊨_{h} q if (t, s) ∈ h(q). (t, s) ⊨_{h} □_{1}A iff for all t′, tR_{1}t′ ⇒ (t′, s) ⊨_{h} A (t, s) ⊨_{h} □_{2}A iff for all s′, sR_{w}s′ ⇒ (t, s′) ⊨_{h} A. We write ⊨ A if (a_{1}, a_{2}) ⊨_{h} A for all Kripke structures.

To be continued.

450 CHAPTER 15. COMBINING LABELLED DEDUCTIVE SYSTEMS

Abduction in Labelled Deductive Systems

16.1 Intuitive theory of labelled abduction

This section will introduce our intuitive theory of abduction within the framework of Labelled Deductive Systems, and give some simple examples.

The new ideas we shall put forward are:

• abduction depends on proof procedures

• abductive principles can be part of the data. In other words, a declarative item of data can be either a formula or a principle of abduction

The more precise machinery for these concepts will be developed in later sections. This section will discuss the intuitive ideas.

The basic situation we are dealing with can be presented as

Δ  ⊢?!Q
data ?query or ! input

It is a relationship between a database and a formula. The relationship is either declarative (ie ?Q, Q a query) or imperative (!Q, Q is an input or a demand to perform abduction or a demand for explanation etc). In the imperative case there is an interaction between Δ and Q and a new database Δ′ emerges.

We have argued in previous chapters that the most general and useful database is the one where the data is structured and the proof procedures use the structure.

In this set up, the abduction rules are extra moves that help answer the query or help change the database as a result of the query or input.

Thus to do abduction we need more precise proof procedures or update procedures for structured databases and then on top of that we can define the extra abductive rules.

The exact proof procedures can be conviently formalised in the framework of LDS. Meanwhile let us illustrate our ideas through a series of examples. The reader should compare with section 1.7, where a practical system, which includes abduction, is presented.

Example 16.1.1 The database below is a Horn clause database. It is labelled in the sense that each clause is named. The query is D. The query does not follow from the database as it is. We are going to use it to illustrate principles of abduction.

Data  Query
a_{1} I ∧ T → D ? D
a_{2}  L → I
a_{3} L ∧ S → T
a_{4} O ∧ P → T
a_{5}  L

The database literals have no meaning. Let us give them a meaning. In the Stanford University English Department, there are two main ways of getting a PhD title. One can either put forward a thesis, stay in the department for 4-5 years acquiring and displaying an immense breadth of knowledge and pass an interview, or one can write a very good publication and get a job offer from another university in the top ten in the country. The database then becomes:

Data

a_{1} Interview ∧ Thesis → Degree
a_{2} Lecture → Interview
a_{3} Lecture ∧ Scholarly Survey → Thesis
a_{4} (Job) Offer ∧ Publications → Thesis
a_{5} Lecture

Query ? Degree Another interpretation for the same database is a component interpretation. To do the laundry

(D) one needs a washing machine (T) and washing powder (I). For washing powder one can use dishwashing soap (L). For a washing machine one may use a dishwasher (S) and dishwashing soap or one may handwash (P) but then one at least needs a spinner (O).

We thus get in this case Data

a_{1} Washing Powder ∧ Washing Machine → Laundry

a_{2} Dishwashing Soap → Washing Powder

a_{3} Diswashing Soap ∧ Dishwasher → Washing Machine

a_{4} Spinner ∧ Handwash → Washing Machine

a_{5} Diswashing Soap.

Query ? Laundry

We now list several possible abductive principles for the query ?D. The principles depend on the computation, so let us suppose that we compute the query prolog like, where the pointer always starts at the top clause (assume a_{1} > a_{2} > a_{3} > a_{4} > a_{5}.)

We note that in logic programming [Eshghi and Kowalski, 1989] abduction for Horn clause programs is done via a system of the form (Δ, I, A), where Δ is the program, I is a set of integrity constraints and A is a set of literals which are abducible. Whenever an abducible literal is encountered in the computation (eg ?D) it is immediately added to the database provided it does not violate the integrity constraints.

Let us now examine our options:

Example 16.1.2 [Possible principles of Abduction]

1. The first option is to abduce on anything as soon as needed. This corresponds in our case, to no integrity constraints and every literal is abducible. In this case we add D to the database, ie the Abduction principle yields D. In the component example such abduction makes no sense. I want to know which parts are missing so that we can get them and wash our clothes.

2. The second option is to abduce on literals which are not heads of clauses. In this case, we add S. This is because S is the first literal encountered in the top down order of execution. Note that we do not use here a set of abducibles. The structure of the database determines what we add.

3. If our underlying logic is not classical logic but some other resource logic, we will not succeed by adding S to the database because that would require the “use” of L twice. Once to make I succeed in clause a_{2} and once to make T succeed in clause a_{3}. In the component example we need more dishwashing soap if we use a dishwasher, and we have only one lot of it (ie a_{5}).

Note that the database is structured and thus we can add a_{6} L and {a_{1}, …, a_{5}} is not the same database as {a_{1}, …, a_{6}}.

Anyway, if the underlying logic is a resource logic, the result of our abduction will be O ∧ P, unless we are prepared to add another copy of L.

4. If we require the weakest logical assumption (in classical logic) which makes the goal succeed then we must add S ∨ (O ∧ P). This abduction principle is independent of the computation.

5. In co-operative answering, the abduction principle takes the top level clause. In this case the answer is T. To the query “?D” we answer “yes if T ”. Think of the thesis example. If an ordinary student wants to know what is missing to get a PhD, the obvious answer is “a thesis” and not “a paper and a job offer from Harvard”.

6. The power of our labelling mechanism can be easily illustrated by a more refined use of the labels. If atoms are labelled, for example, by cost (laundry example) the abduction principle can aim for minimal cost. One can also “cost” the computation itself and aim to abduce on formulas giving maximal provability with a least number of modus ponens instances.

Example 16.1.3 To show that the abduction depends on the computation let us change the computation to forward chaining or Gentzen like rules. From

Data ⊢?D

we get

I ∧ T → D, I, S → T, O ∧ P → T ⊢?D

which reduces to

T → D, S → T, O ∧ P → T, ⊢?D

which reduces to the following by chaining:

S → D, O ∧ P → D, ⊢?D

As we see, not many abduction possibilities are left!

So far we have discussed the possibilities of abduction principles being added to proof rules. We now come to our second new idea, namely:

• Abduction principles are data!

Example 16.1.4 Consider the following database and query:

a_{1} A

a_{2} A → (B → S)

a_{3} B

. . . . . . . . .

a_{4} X, abduce on structrure to find X. a_{5} B → D

The goal is ?S ⊗ D.

By writing S ⊗ D for the goal we are saying we want to partition the database, which is a list of assumptions, into two parts, the first part must prove S and the second part must prove D. This is done in resource logics, where one pays attention to the question of which part of the database proves what.

Such considerations arise in many areas for example in what is known as parsing as logic. Consider the text:

Mary hit John. He cried.

The way this can be analysed is by assuming that each word is assigned a wff of some resource logic (actually concatenation logic, see [Gabbay and Kempson, 1991]) with a label. This assignement is done at the lexical level. Thus a noun n is assigned n′ : NP. An intranstive verb v_{1} is assigned v′_{1} : NP → S. A transitive verb v_{2} is assigned v′_{2} : NP → (NP → S). The pronoun ‘he’ is assigned an abduction principle. Our problem becomes: Data

1. Mary′: NP

2. hit′: NP → (NP → S)

3. John′: NP

4. he: Abduce on structure. Take the first literal up the list.

5. cried′: NP → S.

Query Prove ?S or S ⊗ S or ?S ⊗ S ⊗ S … etc, in order to show we have a text of sentences.

We are thus saying that Anaphora resolution makes use of structural abduction.

The reader should note that anaphora resolution is a complex area and we are not making any linguistic claims here beyond the intuitive example that abduction principles can be treated as data. We do admit however that logical principles underlying database management do seem to be operative in natural language understanding and we are working full steam ahead in making our case.

Coming back to our view of abduction as data, we are really saying:

• A database can either display data items or give us pointers to where to get them.

Thus a labelled database can appear as below:

n_{1}: data m

⋮  ⋮

n_{k}: get datum from …

⋮  ⋮

Abductive Labelled Database

I would like to give next a combined example of planning and parsing, based on ideas of [Gabbay and Kempson, 1991].

Example 16.1.5 (Planning) Consider the situation described by the diagram below. There are three languages involved

1. The database language containing the predicates On(x, y) and Free(x)

2. The imperative (Input) command language with the predicates Move(x, y).

3. The mixed metalanguage with the connectives “∧” for “and” and “⇒” for “precondition and action imply postcondition”.

a  t_{1}: On(a, b)
b c  t_{1}: On(b, tab) ← Move(a, c)
t_{1}: On(c, tab)
a  t_{2}: On(a, c)  ← Move(a, tab)
b c
b c a t_{3}: On (a, tab).
On(x, y)∧ Free(x)∧ Free(z)∧Move(x, z) ⇒ On(x, z)∧Free(y)∧ Free(x)

The diagram describes the initial layout of the blocks ready to respond to command. t_{1} labels all data true at the initial situation and t_{2} and t_{3} the additional data after each of the actions. We have

t_{1} < t_{2} < t_{3}.

If we query the system with

? On(a, x)

we get three answers, with different labels, indicating where the answer was obtained in the database, namely:

⊢ t_{1} : On(a, b)
⊢ t_{2} : On(a, c)
⊢ t_{3} : On(a, tab)

The reply to the user is determined by the system as the answer proved with the stronger label, namely:

On(a, tab)

Call the deductive system governing the planning consideration LDS_{1}^{1}. This system involves proving where the blocks are after which action. This system accepts commands in logical form Move(x, y). It does not accept commands in English. If the command comes in English, which we can represent as move x onto y, it needs to be parsed into the LDS_{1} language. This is done in a parsing logic LDS_{0}. The following diagram explains the scheme, see Figure 16.1:

The following diagram describes the database-query problem of LDS_{0}:

move′: NP → (NP → S)  ?S + S
a′: NP
c′: NP
move′: NP → (NP → S)
it: use abduction. First use structural abduction to

get the first NP higher in the list, then use inferential abduction to try and get maximal inferential effects in LDS_{1}.

tab′: NP

Notice that the abduction principle in LDS_{0} also uses inferential effect in LDS_{1}. Intuitively we are trying to abduce on who “it” refers to. If we choose “it” to be a block which is already on the table, it makes no sense to move it onto the table. Thus the command when applied to the database will produce no change. The abduction principle gives preference to abduced formulas which give some effect.

1We remark in passing that this approach offers a conceptual (not computational) solution to the frame problem.

Conceputally, given an initial labelled database and a sequence of actions to be performed, we model the sequence by another labelled database; the database obtained by adding the results of the actions to the initial database.

We label the additions appropriately. This idea will be pursued elsewhere. There are several such “non-monotonic”

solutions in the literature. This is probably the most general

English Input: move a onto c. move it onto table

↓

Parsing Logic LDS_{0}

↓

move (a, c); move (a, tab)

Planning Logic LDS_{1}

Figure 16.1:

From the logical point of view we are using the following principle, (see also Example 16.1.9):

• Abduction principles can serve as items of data in one database Δ_{0}, being a pointer to another database Δ_{1} where some computation is carried out jointly involving both databases and the result is the abduced data item in Δ_{0}.

Example 16.1.6 (Logic Programming Abduction) The abductive system in logic programming can be schematically put into our form by making use of the way the Prolog pointer scans the database. An abductive system has the form (Δ, I, A), where Δ = (C_{1}, …, C_{n}) is a sequence of clauses and literals, where I are the integrity constraints and where A is the set of abducible atoms. This system can be translated into the following Horn clause database:

(0) C_{0} = Abduce on the goal by checking whether the goal is in A and whether when added it satisfies the integrity constraints.

(1) C_{1}

⋮ ⋮

(n) C_{n}

We are now ready for our next conceptual step. If an abductive principle is to be considered as a declarative item of data, say Q_{Abduce}, then what would be the meaning of

Δ ?! Q_{Abduce}

For the imperative interaction !Q_{Abduce}, the meaning is obvious, we simply apply the abductive principle to the database and get a new database. However the query meaning of the abductive principle is a bit more difficult to explain in general, and we may need to provide an explanation for each specific case. For example, if the abduction prinicple abduces a formula B, then Δ?Q_{Abduce} would mean Δ?B. This seems all right at first sight, however, the problem here can be that the abduction process by its nature tries to find B’s which are not available in the database and so the answer to the query Δ?Q_{Abduce} will always be no. This is clearly unacceptable. We must seek another meaning for the query.

Let us for the time being, accept only the imperative reading of Δ!Q_{Abduce}. We can immediately allow ourselves to write databases with clauses containing Q_{Abduce} in them. Let us see through a few examples what this means.

Example 16.1.7 Let Δ = {Q_{Abduce} ∧ B → D}. Think of the above as a database, and assume the computation procedure to be Prolog like. We consider the following query

Δ?D

which reduces to

Δ?(Q_{Abduce}, B)

which reduces to

Δ, B?B

which succeeds.

Here we assumed that Q_{Abduce} yields B. Our database is similar, in this case, to the Prolog database:

Assert (B) ∧ B → D

Indeed, asserting is a form of unconditional abduction.

Example 16.1.8 [Abduction and Negation by Failure] From our point of view, negation by failure is abduction. This point has also been made in [Eshghi and Kowalski, 1989]. However, we want to make our position crystal clear to avoid confusion. We believe as stated in Chapter 1, that abduction is a principle of reasoning of equal standing to deduction and that every logical system is comprised of both proof rules and various mechanisms including abductive rules. This view has developed through our interaction with the logics of common sense reasoning and our work in natural language understanding [Gabbay and Kempson, 1991]. Negation by failure is not central to our scheme, though it is an interesting example from our point of view.

We begin with a precisely specified proof system. The query Δ?Q can be algorithmically checked. If the algorithm succeeds, the answer is yes. The algorithm may loop or it may fail. We may be able to prove that for the particular Δ?Q, the algorithm must fail (eg in a case where none of the rules can even be applied). In this case we can say Δ?Q finitely fails (relative to the algorithm). Thus the notion of finite failure can be defined for any proof theoretic system.

Given a system, we can consider the following abduction principles which we call Fail(Q, B):

If Δ?Q finitely fails then abduce (or assert) B.

To make our example specific, let us choose a language and computation procedures. By an atomic literal let us understand either an atom {p, q, r, …} or an abduction principle Fail(a, b) , where a, b are atoms. By clauses let us understand Horn clauses of literals. Goals are conjunctions of literals. Thus we can write the following clauses:

1. q ∧ Fail(a, b) ∧ c → p

2. Fail(q, r)

3. a → Fail(b, b).

To explain the computational meaning, we will translate into Prolog. Ordinary Prolog is not expressive enough for our purpose, so we use N-Prolog [Olivetti and Terracini, 1991, Gabbay and Reyle, 1984, Gabbay, 1985] with negation by failure, mainly because it allows hypothetical reasoning, ie embedded implications.

We translate:

Fail(a, b) ↦ (¬a → b).

After translation, the database becomes:

1. q ∧ (¬a → b) ∧ c → p

2. ¬q → r

3. a ∧ ¬b → b

which is meaningful computationally in goal directed N-Prolog, see also chapter 4, section 3. A Horn clause with negation by failure of the form:

a ∧ ¬b → c

can be translated back into our abductive language as

a → Fail(b, c)

A Prolog goal of the form ¬a an be translated as Fail(a, ∅), ∅ is truth.

N-Prolog is not as expressive as our abductive language. In our abductive language we also have the imperative meaning of

Δ? Fail(a, b)

which means apply the abduction to Δ.

This would correspond to

Assert (¬a → b)

in N-Prolog. N-Prolog does not allow for that. The syntax is defined in such a way that we do not get goals of the form Δ?(¬a → b). The N-Prolog computation rule would require in this case to add ¬a to Δ, which is not meaningful.

The connection between abduction and negation by failure was observed in [Eshghi and Kowalski, 1989]. Since their abductive systems have the restricted form (Δ, I, A) as described in Example 16.1.6, they need to rewrite the Horn clause program into a more convenient form, translating the Prolog ¬a as a^{∗} and adding the integrity constraint:

a ∧ a^{∗} → .

Example 16.1.9 (A Conversation between two Intelligent Databases) We have the logical means to allow for two LDS databases to negotiate and reach an understanding. Imagine two databases S and H exchanging formulas continuously. At time n, the databases have evolved through the sequences

Δ_{1}^{S}, …, Δ_{n}^{S}

and

Δ_{1}^{H}, …, Δ_{n}^{H}.

At time n, database S sends a logical input I_{n}^{S} to database H and conversely, database H sends an input I_{n}^{H} to database S. The two databases use abduction to update themselves. Thus

Δ_{n+1}^{H} = Abduce(Δ_{n}^{H}, I_{n}^{S})

and

Δ_{n+1}^{S} = Abduce(Δ_{n}^{S}, I_{n}^{H}).

To continue and communicate we need action principles for sending the next input. This is also part of our abduction scheme as hinted at in Example 16.1.5

16.2 Labelled abductive mechanisms

The basic deductive apparatus of LDS is a precise system of rules allowing one to show (or fail to show) whether Δ ⊢ Γ, for Δ a data structure and Γ a goal structure. Most useful among the goal structures is the unit structure of the form t : G. Thus for the purpose of explaining what abduction is going to be in our framework, we assume that the notion of

Δ ⊢ t : G

is precisely algorithmically defined, thus yielding a particular LDS system L. We now schematically explain how abduction principles fit into this framework. Consider a database Δ, containing α : X inside it, which we write as Δ[α : X] schematically with t : X. Somewhere in the structure Δ, α is a label variable and X is a propositional variable standing for a wff. For any particular choice of X, and of α say the choice of α = α_{0} and X = A, Δ[α : A] is a proper database.

Suppose we want to prove a goal t : G. Then, for some (maybe none) wffs A_{i} and labels α_{i} we may have

Δ[α_{i} : A_{i}] ⊢ t : G

A principle of abduction

Abduce(α : X)

is a computation (algorithm) that can choose one or more of the α_{i} and A_{i} above.

Of course for different G we get different α_{i}, A_{i}.

The importance of the above point of view is:

1. Databases can take abductive principles as part of their data, slotted at the right places.

2. The abductive principle is relative to the computation procedure and the rest of the database. Thus when new data is put in, the abductive principle changes. We get a strong learning component in the database.

An inductive principle is a special case of abductive principle which learns a rule A → B as opposed to a fact. (atom q). Mathematically there is no difference.

460 CHAPTER 16. ABDUCTION IN LABELLED DEDUCTIVE SYSTEMS

Bibliography

[Alchourrón et al., 1985] C. E. Alchourrón, P. Gärdenfors, and D. Makinson. On the logic of theory change: partial meet contraction and revision functions. The Journal of Symbolic Logic, 50:510–530, 1985.

[Allwein and Dunn, 1993] G. Allwein and J.M. Dunn. Kripke models for linear logic. the Journal of Symbolic Logic, 58:514–545, 1993.

[Amati and Pirri, 199] G. Amati and F. Pirri. Uniform tableaux methods for intuitionistic modal logic I. Studia Logica, 199? To appear.

[Anderson and Belnap Jr, 1975] A. R. Anderson and N.D. Belnap Jr. Entailment: the Logic of Relevance and Necessity, volume 1. Princeton University Press, Princeton, 1975.

[Anderson and Belnap, 1975] A. R. Anderson and N. D. Belnap. Entailment. Princeton University Press, 1975.

[Avron, 1988a] A. Avron. The semantics and proof theory of linear logic. Theoretical Computer Science, 57:161–184, 1988.

[Avron, 1988b] A. Avron. The semantics nd proof theory of linear logic. Theoretical Computer Science, 57:161–184, 1988.

[Avron, 1991] A. Avron. Simple consequence relations. Journal of Information and Computation, 92:105–139, 1991.

[Babb, 1990] E. Babb. An incremental pure logic language with constraints and classical negation. In T. Dodd, R. Owens, and S. Torrance, editors, Logic Programming: Expanding the Horizon. Blackwell, 1990.

[Barkley-Rosser, 1960] J. Barkley-Rosser. Axiomatisation of infinite valued logic. Logique et Analyse, pages 137–153, 1960.

[Blok and Pigozzi, 1989] W. J. Blok and D. Pigozzi. Algebraizable Logics. Memoires of AMS No 396, American Mathematical Society, 1989.

[Brachman et al., 1989] R. J. Brachman, H. J. Levesque, and R. Reiter (eds.). KR ’89: Proceedings of the First International Conference on Principles of Knowledge Representation and Reasoning. Morgan Kaufmann, San Mateo, California, 1989.

[Clark and McCabe, 1984] K. Clark and F. McCabe. Micro-Prolog. Prentice Hall, 1984.

[Console et al., 1991] L. Console, D. T. Dupre, and P. Torasso. On the relationship between deduction and abduction. Journal of Logic and Computation, 1:661–690, 1991.

[Curry and Feys, 1958] H. Curry and R. Feys. Combinatory Logic, Volume 1. North Holland, 1958.

[Curry, 1934] H. Curry. Functionality in combinatory logic. In Proceedings of the National Academy of Sciences of the USA, Vol 20, pages 154–180, 1934.

[Curry, 1963] H. Curry. Foundations of Mathematical Logic. McGraw Hill, 1963.

[D’Agostino and Gabbay, 1994] Marcello D’Agostino and Dov Gabbay. Labelled Tableaux, Journal of Automated Reasoning, to appear.

[D’Agostino and Mondadori, 1994] Marcello D’Agostino and Marco Mondadori. The taming of the cut. To appear in the Journal of Logic and Computation, vol. 4, n.3., 1994.

[D’Agostino, 1992] Marcello D’Agostino. Are tableaux an improvement on truth-tables? Journal of Logic, Language and Information, 1:235–252, 1992.

[D’Agostino, 1994] Marcello D’Agostino. On the efficiency of proof search in classical analytic deduction. Forthcoming. (Preliminary version presented at the Workshop on Theorem Proving with Analytic Tableaux and Related Methods, Marseille, 28–30 April 1993), 1994.

[Dôsen, 1988] Kosta Dôsen. Sequent systems and groupoid models I. Studia Logica, 47:353–385, 1988.

[Dôsen, 1989] Kosta Dôsen. Sequent systems and groupoid models II. Studia Logica, 48:41–65, 1989.

[Dunn, 1976] J. M. Dunn. Intuitive semantics for first-degree entailment and coupled trees. Philosophical Studies, 29:149–168, 1976.

[Eshghi and Kowalski, 1989] K. Eshghi and R. A. Kowalski. Abduction compared with negation by failure. In Proc. 6th ICLP 89, MIT Press, 1989.

[Fine and Schurz, ] K. Fine and G . Schurz. Transfer theorems for stratified multimodal logics, ? To appear.

[Fitting, 1983] M. Fitting. Proof Methods for Modal and Intuitionistic Logics. Reidel, Dordrecht, 1983.

[Sambin, 1993] G. Sambin. The semantics of pretopologies. In K. Dôsen and Peter Schroeder-Heister, editors, Substructural Logics, pages 293–307. Oxford University Press, 1993.

[Gabbay and Kempson, 1991] D. M. Gabbay and R. Kempson. Natural language content: a proof theoretic perspective. In Proceedings of the Eighth Amsterdam Colloquium, pages 173–196, 1991.

[Gabbay and Kempson, 1991] D. M. Gabbay and R. Kempson. Labelled Abduction adn Relevance, unpublished draft, 1991.

[Gabbay and Ohlbach, 1993a] Dov M. Gabbay and Hans J. Ohlbach. An algebraic fine structure for logical systems. In Dov Gabbay and Franz Guenthner, editors, What is a Logical System? Oxford University Press, 1993. To appear.

[Gabbay, 1985] D. M. Gabbay. N-Prolog, Part II, Journal of Logic Programming, 5: 251–283, 1985.

[Gabbay and Ohlbach, 1993b] Dov M. Gabbay and Hans J. Ohlbach. From hilbert calclus to possible-world semantics. In Krysia Broda, editor, Proceedings of ALPUK Logic Programming Conference 1992, pages 218–252. Springer, 1993. Lecture Notes in Computer Science.

[Gabbay and Reyle, 1984] D. M. Gabbay and U. Reyle. N-Prolog, An extension of Prolog with hypothetical implication. Journal of Logic Programming, 4: 319–355, 1984.

[Gabbay and Reyle, to appear] D. M. Gabbay and U. Reyle. Direct deductive computation on discourse represenation structures. Linguistics and Philosophy, to appear.

[Gabbay et al., 1994] D. M. Gabbay, L. Giordano, A. Martelli, and N. Olivetti. Conditional logic programming. In ICLP 94, 1994. to appear.

[Gabbay, 1969] D. Gabbay. The Craig interpolation theorem for intuitionistic logic I and II. In Logic Colloquium ’69, 1969.

[Gabbay, 1976] D. Gabbay. Investigations in Modal and Temporal Logics, D. Reidel, 1976.

[Gabbay, 1985] D. Gabbay. Theoretical foundations for nonmonotonic reasoning in expert systems. In K. Apt, editor, Expert Systems, Logics and Models of Concurrent Systems, pages 439–459. Springer-Verlag, Berlin, 1985.

[Gabbay, 1981] D. M. Gabbay. Semantical Investigations in Heyting’s Intuitionistic Logic. D. Reidel, 1981.

[Gabbay, 1992a] D. Gabbay. Theory of algorithmic proof. In Handbook of Logic in Theoretical Computer Science, Volume 1, pages 307–408. Oxford University Press, 1992.

[Gabbay, 1992b] D. M. Gabbay. Fibred semantics and the combination of logics, August 1992. Lectures given at Logic Colloquium 1992, Veszprém, Hungary.

[Gabbay, 1993a] D. M. Gabbay. Fibred semantics and the weaving of logics, part 1, 1993. manuscript, Imperial College.

[Gabbay, 1993b] Dov Gabbay. Fibred semantics and the weaving of logics, I. Technical Report, University of Stutgart, 1993.

[Gabbay, 1993c] Dov M. Gabbay. Classical versus non-classical logics. In Dov Gabbay, Chris Hogger, and J.H. Robinson, editors, Handbook of Logic in AI and Logic Programming. Oxford University Press, 1993. To appear.

[Gabbay, 1994] D. M. Gabbay. LDS and the traditional fallacies, 1994. In preparation.

[Gärdenfors, 1988] P. Gärdenfors. Knowlege in Flux: Modeling the Dynamics of Epistemic States. MIT Press, Cambridge, MA, 1988.

[Girard, 1976] J.-Y. Girard. Three valued logic and cut elimination: the actual meaning of Takeuti’s conjectures. Dissertationes mat, CXXXVI, 1976.

[Girard, 1987] J.-Y. Girard. Linear logic. Theoretical Computer Science, 50:1–102, 1987.

[Haehnle and Schmitt, 1992] Reiner Haehnle and Peter Schmitt. The liberalized δ-rule in free variable semantic tableaux. Manuscript, 1992.

[Hähnle, 1992] Reiner Hähnle. Tableau-Based Theorem-Proving in Multiple-Valued Logics. PhD thesis, Department of Computer Science, University of Karlsruhe, 1992. To appear with Oxford University Press.

[Hindley and Seldin, 1986] R. Hindley and J. Seldin. Intoduction to combinators and λ-calculus. Cambridge University Press, 1986.

[Kamp, 1968] H. Kamp. Tense Logic and the theory of linear order. PhD thesis, University of California, Los Angeles, 1968.

[Kong and Williams, 1991] Q. Kong and M. H. Williams. Incomplete information in a logic database. In T. Dodd, R. Owens, and S. Torrance, editors, Logic Programming, Expanding the Horizons, pages 124–146. Ablex, 1991.

[König, 1994] E. König. A hypothetical reasoning algorithm for linguistic analysis. Journal of Logic and Computation, 4:1–22, 1994.

[Kowalski, 1979] R. A. Kowalski. Logic for Problem Solving. North Holland, Amsterdam, 1979.

[Kracht and Wolter, 1991] M. Kracht and F. Wolter. Properties of independently axiomatizable bimodal logics. Journal of Symbolic Logic, 56:1469–1485, 1991.

[Kraus et al., 1990] S. Kraus, D. Lehmann, and M. Magidor. Nonmonotonic reasoning, preferential models and cumulative logics. Artificial Intelligence, 44:167–207, 1990. A preliminary version, with authors Kraus and Lehmann only, was presented under the title “Nonmonotonic logics: models and proofs” to JELIA: European Workshop on Logical Methods in Artificial Intelligence, Roscoff France, June 1988. Another preliminary version, with all three authors, appeared under the title “Preferential models and cumulative logics”, Technical Report TR 88-15, Department of Computer Science, Hebrew University of Jerusalem, November 1988.

[Lambek, 1989] J. Lambek. Multicategories revisited. Contempory Mathematics, 92:217–239, 1989.

[Lauritzen and Spiegelhalter, 8] S. L. Lauritzen and D. J. Spiegelhalter. Local computation with probabilities on graphical structures and their application to expert systems (with discussion). The Journal of the Royal Statistical Society B, 50:157–224, 8?

[Lehmann and Magidor, 1992] D. Lehmann and M. Magidor. What does a conditional knowledge base entail? To appear in Artificial Intelligence, 1992. This paper gathers together and extends the material of a paper by Lehmann alone, with the same title, in [Brachman et al., 1989], 212-222, and Technical Report 88-16 by Lehmann and Magidor, Department of Computer Science, Hebrew University of Jerusalem, November 1988.

[Makinson, 1989] D. Makinson. General theory of cumulative inference. In M. Reinfrank et al., editors, Non-Monotonic Reasoning, volume 346 of Lecture Notes on Artificial Intelligence, pages 1–18. Springer-Verlag, Berlin, 1989.

[Makinson, 1993] D. Makinson. General patterns in nonmonotonic reasoning. In D. M. Gabbay, C. J. Hogger, and J. A. Robinson, editors, Handbook of Logic in AI and Logic Programming, Vol 2. Oxford University Press, 1993.

[Maslov, 1969] S. Yu. Maslov. Invertible sequent variant of constructive predicate calculus. Seminar in Mathematics. V.A. Steklov Mathematical Institute, Leningrad, 4:36–42, 1969.

[McRobbie and Belnap, 1979] Michael A. McRobbie and Nuel D. Belnap. Relevant analytic tableaux. Studia Logica, XXXVIII:187–200, 1979.

[Ng and Subrahmanian, 1994] R. Ng and V. Subrahmanian. Dempster-Shafer logic programs and stable semantics. In J. N. Crossley and J. B. Remmel, editors, Logical Methods, pages 654–704. Birkhaüser, 1994.

[Nute, 1986] D. Nute. LDR – A Logic for Default Reasoning. Research Report 01-0013, ACMC, 1986.

[Olivetti, ] N. Olivetti. Circumscription.

[Olivetti and Gabbay, 1993] N. Olivetti and D. M. Gabbay. To restart or not to restart. Technical report, Imperial College, 1993.

[Olivetti and Terracini, 1991] N. Olivetti and L. Terracini. N-Prolog, Part II, Journal of Logic Programming, 5:251–283, 1985.

[Ono, 1993] H. Ono. Semantics for substructural logics. In K. Dôsen and Peter Schroeder-Heister, editors, Substructural Logics, pages 259–291. Oxford University Press, 1993.

[Perlis, 1985] D. Perlis. Languages with self reference I: foundations. Artificial Intelligence, 25:301– 22, 1985.

[Perlis, 1988] D. Perlis. Languages with self reference II: knowledge, belief and modality. Artificial Intelligence, 34:179–212, 1988.

[R. and Routley, 1972] R. and V. Routley. The semantics of first degree entailment. Noûs, VI:335– 359, 1972.

[Rose, 1956a] A. Rose. Formalisation du calcul propositional implicatif a m valuers de lukasiewica. Comptes rendus hebdomadaires des seances de’la’Academie des sScineces, 243:1263–1264, 1956.

[Rose, 1956b] A. Rose. Formalisation du calcul propositional implicatif a x_{0} valuers de lukasiewicz. Comptes rendus hebdomadaires des seances de’la’Academie des Scineces, 243:1182–1185, 1956.

[Routley and Meyer, 1973] R. Routley and R.K. Meyer. The semantics of entailment, I. In H. Leblanc, editor, Truth, Syntax and Semantics. North Holland, 1973.

[Scott, 1974] D. Scott. Completeness and axiomatizability in many valued logics. In Proceedings of the Tarski Symposium, pages 411–436, Providence, Rhode Island, 1974. American Mathematical Society.

[Tarski, 1956] A. Tarski. On the concept of logical consequence, polish 1936. In Translation in:Logic, Semantics, Metamathematics. Oxford University Press, 1956.

[Thistlewaite et al., 1988] P. B. Thistlewaite, M. A. McRobbie, and B. K. Meyer. Automated Theorem Proving in Non Classical Logics. Pitman, 1988.

[Torsun and Manning, 1990] I. Torsun and K. Manning. Execution and application of temporal modal logic. Technical report, University of Bradford, 1990.

[Urquhart, 1972] Alasdair Urquhart. Semantics for relevant logic. The Journal of Symbolic Logic, 37:159–170, 1972.

[Valerius, 1989] R. Valerius. The logic of frame- and stop-rules in Lorenzen Games. PhD thesis, University of Stuttgart, 1989.

[van Benthem, 1992] J. van Benthem. The logic of programming. Fundamenta Informatica, 1992.

[Vermeir and Laenens, 1990] D. Vermeir and E. Laenens. An overview of ordered logic. In Third Logical Biennial, Varga, Bulgaria, 1990.

[Wallen, 1990] L.A. Wallen. Automated Deduction in Non-Classical Logics. The MIT Press, Cambridge, Mass., 1990.

[Wansing, 1990] H. Wansing. Formulas as types for a hierarchy of sublogics of intuitionistic propositional logic. Technical Report 9/90, Free University of Berlin, 1990.

[Wójcicki, 1989] R. Wójcicki. An Axiomatic treatment of nonmonotonic arguments. 1989.

[Wójcicki, to appear] R. Wójcicki. An axiomatic treatment of non monotonic arguments. Studia Logica, to appear.

[figure: I N F O R M A T I K]

Below you find a list of the most recent technical reports of the research group Logic of Programming at the Max-Planck-Institut für Informatik. They are available by anonymous ftp from our ftp server ftp.mpi-sb.mpg.de under the directory pub/papers/reports. If you have any questions concerning ftp access, please contact reports@mpi-sb.mpg.de. Paper copies (which are not necessarily free of charge) can be ordered either by regular mail or by e-mail at the address below.

Max-Planck-Institut für Informatik Library attn. Regina Kraemer Im Stadtwald D-66123 Saarbrücken GERMANY

            e-mail: kraemer@mpi-sb.mpg.de

MPI-I-94-216 P. Barth  Linear 0-1 Inequalities and Extended Clauses
MPI-I-94-209 D. A. Basin, T. Walsh  Termination Orderings for Rippling
MPI-I-94-208 M. Jäger  A probabilistic extension of terminological logics
MPI-I-94-207 A. Bockmayr  Cutting planes in constraint logic programming

MPI-I-94-201 M. Hanus The Integration of Functions into Logic Programming: A Survey

MPI-I-93-267 L. Bachmair, H. Ganzinger  Associative-Commutative Superposition
MPI-I-93-265 W. Charatonik, L. Pacholski  Negativ set constraints: an easy proof of decidability

MPI-I-93-264 Y. Dimopoulos, A. Torres Graph theoretical structures in logic programs and default theories

MPI-I-93-260 D. Cvetković The logic of preference and decision supporting systems

MPI-I-93-257 J. Stuber Computing Stable Models by Program Transformation

MPI-I-93-256 P. Johann, R. Socher  Solving simplifications ordering constraints
MPI-I-93-250 L. Bachmair, H. Ganzinger  Ordered Chaining for Total Orderings
MPI-I-93-249 L. Bachmair, H. Ganzinger  Rewrite Techniques for Transitive Relations
MPI-I-93-243 S. Antoy, R. Echahed, M. Hanus  A needed narrowing strategy
MPI-I-93-237 R. Socher-Ambrosius  A Refined Version of General E-Unification

MPI-I-93-236 L. Bachmair, H. Ganzinger, C. Lynch, W. Snyder

Basic Paramodulation

MPI-I-93-235 D. Basin, S. Matthews A Conservative Extension of First-order Logic and its Application to Theorem Proving

MPI-I-93-234 A. Bockmayr, F. J. Radermacher  Künstliche Intelligenz und Operations Research

MPI-I-93-233 A. Bockmayr, S. Krischer, A. Werner Narrowing Strategies for Arbitrary Canonical Rewrite Systems

MPI-I-93-231 D. Basin, A. Bundy, I. Kraan, S. Matthews A Framework for Program Development Based on Schematic Proof