REASONING WITH CONSTRAINT DIAGRAMS
GEM STAPLETON
A thesis submitted in partial fulfilment of the
requirements of the University of Brighton
for the degree of Doctor of Philosophy
August 2004
The University of Brighton
Abstract
There is a range of visual languages which express logical statements, for example
Euler diagrams. The effective use of such languages relies on knowledge about whether
a diagram is contradictory and whether reasoning can be performed to transform one
diagram into another. It is also desirable to know the expressiveness of such languages.
Knowing what a language can and cannot express is important when deciding whether
that language is suitable for ones needs.
For simple diagrammatic systems, such as Shin’s Venn-II system, these questions
have been answered. In this thesis, these questions are answered for more complex
diagrammatic systems. Specifically, the thesis is concerned with spider diagrams and
constraint diagrams. There are existing sound and complete spider diagram systems
based on Venn diagrams. One of these existing systems is extended in this thesis
to a more flexible spider diagram system, based on Euler diagrams. Soundness and
completeness results are given. It is also shown that this spider diagram system is
equivalent in expressive power to monadic first order logic with equality.
Constraint diagrams extend spider diagrams by adding further syntax. The first
sound and complete constraint diagram system is developed in this thesis. The constraint diagram language formalized here is a decidable fragment of the full constraint
diagram language which was introduced by Kent for use by software engineers as an
alternative to the Object Constraint Language. The theory presented here will provide
a basis for the formalization and development of reasoning systems based on the full,
more expressive, constraint diagram language. Moreover, the research in this thesis
provides the necessary mathematical underpinning for the development of software
tools to aid reasoning with the diagrammatic systems presented here.
ii
Contents
Abstract
ii
Contents
iii
List of Figures
vii
Acknowledgements
xiv
1 Introduction
1.1
1.2
1
Related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.1.1
Euler diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.1.2
Venn diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.1.3
Venn-Peirce diagrams . . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.1.4
Venn-I diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.1.5
Venn-II diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.6
Euler/Venn diagrams
1.1.7
Spider diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.8
The Unified Modelling Language . . . . . . . . . . . . . . . . . . . . 28
1.1.9
Constraint diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
. . . . . . . . . . . . . . . . . . . . . . . . . . 12
Outline of thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2 Spider Diagrams
2.1
37
Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.1.1
Informal concrete syntax . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.1.2
Abstract syntax
2.1.3
Concrete representations of abstract diagrams . . . . . . . . . . . . . 44
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.2
Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3
Satisfiability and the consequence relation . . . . . . . . . . . . . . . . . . . 56
iii
2.4
2.5
2.6
Diagrammatic reasoning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.4.1
Unitary to unitary reasoning rules . . . . . . . . . . . . . . . . . . . 59
2.4.2
Unitary to compound reasoning rules . . . . . . . . . . . . . . . . . . 62
2.4.3
Logic reasoning rules . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.4.4
Derived reasoning rules . . . . . . . . . . . . . . . . . . . . . . . . . 68
Soundness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.5.1
Validity of the unitary to unitary reasoning rules . . . . . . . . . . . 72
2.5.2
Validity of the unitary to compound reasoning rules . . . . . . . . . 78
2.5.3
Validity of the logic reasoning rules and the derived reasoning rules . 90
2.5.4
Validity of combining . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.5.5
Soundness theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.6.1
Completeness for unitary α-diagrams . . . . . . . . . . . . . . . . . . 93
2.6.2
Associated contour diagrams . . . . . . . . . . . . . . . . . . . . . . 97
2.6.3
Associated zone diagrams . . . . . . . . . . . . . . . . . . . . . . . . 98
2.6.4
Associated α-diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2.6.5
Combining α-diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . 102
2.6.6
Extended diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
2.6.7
Completeness theorem . . . . . . . . . . . . . . . . . . . . . . . . . . 107
3 The Expressiveness of Spider Diagrams
111
3.1
The language ESD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
3.2
Structures and Interpretations . . . . . . . . . . . . . . . . . . . . . . . . . . 112
3.3
Mapping from Diagrams to Sentences . . . . . . . . . . . . . . . . . . . . . 113
3.4
Mapping from Sentences to Diagrams . . . . . . . . . . . . . . . . . . . . . 116
4 Constraint Diagrams
4.1
132
Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.1.1
Informal concrete syntax . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.1.2
Abstract syntax
4.1.3
Concrete representations of abstract diagrams . . . . . . . . . . . . . 145
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.2
Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
4.3
Satisfiability and the consequence relation . . . . . . . . . . . . . . . . . . . 152
4.4
Isomorphic diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
iv
4.5
4.6
4.7
Diagrammatic reasoning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
4.5.1
Unitary to unitary reasoning rules . . . . . . . . . . . . . . . . . . . 160
4.5.2
Unitary to compound reasoning rules . . . . . . . . . . . . . . . . . . 169
4.5.3
Compound to compound reasoning rule . . . . . . . . . . . . . . . . 172
4.5.4
Logic reasoning rules . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
4.5.5
Derived reasoning rules . . . . . . . . . . . . . . . . . . . . . . . . . 176
Soundness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
4.6.1
Validity of the unitary to unitary reasoning rules . . . . . . . . . . . 180
4.6.2
Validity of the unitary to compound reasoning rules . . . . . . . . . 185
4.6.3
Validity of the logic reasoning rules and the derived reasoning rules . 190
4.6.4
Validity of the compound to compound reasoning rule . . . . . . . . 190
4.6.5
Soundness theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
4.7.1
Shadeable Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
4.7.2
Potential Arrows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
4.7.3
Maximal forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
4.7.4
Reduced forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
4.7.5
Completeness for unitary β-diagrams . . . . . . . . . . . . . . . . . . 223
4.7.6
Associated contour diagrams . . . . . . . . . . . . . . . . . . . . . . 251
4.7.7
Associated zone diagrams . . . . . . . . . . . . . . . . . . . . . . . . 252
4.7.8
Associated α-diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . 253
4.7.9
Disjunctifying α-diagrams . . . . . . . . . . . . . . . . . . . . . . . . 255
4.7.10 Associated β-diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . 256
4.7.11 Extended diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
4.7.12 Spider extended diagrams . . . . . . . . . . . . . . . . . . . . . . . . 262
4.7.13 Additionally extended diagrams . . . . . . . . . . . . . . . . . . . . . 264
4.7.14 Arrow extended diagrams . . . . . . . . . . . . . . . . . . . . . . . . 265
4.7.15 Completeness theorem . . . . . . . . . . . . . . . . . . . . . . . . . . 267
4.8
Equivalence of the Semantics Predicates . . . . . . . . . . . . . . . . . . . . 278
5 Conclusions and Further Work
280
5.1
Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
5.2
Further work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
5.2.1
Reasoning with the full constraint diagram notation . . . . . . . . . 282
v
5.2.2
The expressiveness of constraint diagrams . . . . . . . . . . . . . . . 285
5.2.3
Adding further syntax . . . . . . . . . . . . . . . . . . . . . . . . . . 289
5.2.4
Heterogeneous reasoning systems . . . . . . . . . . . . . . . . . . . . 291
5.2.5
Second order systems . . . . . . . . . . . . . . . . . . . . . . . . . . 291
5.2.6
Automated diagram layout and theorem proving . . . . . . . . . . . 292
A Statement of the candidates contribution
297
B Glossary
299
Bibliography
310
vi
List of Figures
1.1
Rotating vectors in R2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
A diagrammatic proof of Pythagoras’ theorem. . . . . . . . . . . . . . . . .
2
1.3
A formal specification using a constraint diagram. . . . . . . . . . . . . . .
3
1.4
Reading diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.5
An Euler diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.6
Reasoning in Hammer’s system. . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.7
A Venn diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.8
Constructing Venn diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.9
A Venn-Peirce diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.10 Reasoning with Venn-Peirce diagrams. . . . . . . . . . . . . . . . . . . . . .
8
1.11 A Venn-I diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.12 The semantics of Venn-I diagrams. . . . . . . . . . . . . . . . . . . . . . . . 10
1.13 Reasoning with Venn-I diagrams. . . . . . . . . . . . . . . . . . . . . . . . . 10
1.14 Unifying Venn-I diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.15 A Venn-II diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.16 An Euler/Venn diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.17 Observable formulae: An Euler/Venn diagram. . . . . . . . . . . . . . . . . 13
1.18 Two spider diagrams.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.19 Spider diagrams with given spiders. . . . . . . . . . . . . . . . . . . . . . . . 14
1.20 An SD1 diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.21 A multi-diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.22 An SD2 diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.23 An SD2 diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.24 Deleting a spider. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.25 Erasing a contour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.26 Introducing a contour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.27 Splitting spiders. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
vii
1.28 Applying the excluded middle rule. . . . . . . . . . . . . . . . . . . . . . . . 22
1.29 Connecting a diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.30 Equivalent diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.31 Applying the simplification 1 rule. . . . . . . . . . . . . . . . . . . . . . . . 24
1.32 A simple application of the combining rule. . . . . . . . . . . . . . . . . . . 24
1.33 The false unitary diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.34 A non-trivial application of the combining rule. . . . . . . . . . . . . . . . . 26
1.35 Obtaining a β-diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.36 An ESD2 diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.37 A UML class diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.38 A UML state diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.39 Specifying software systems using constraint diagrams. . . . . . . . . . . . . 30
1.40 The pre-condition for the newCopy operation. . . . . . . . . . . . . . . . . . 30
1.41 The pre-condition and the post-condition for the newCopy operation. . . . 31
1.42 A constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.43 A constraint diagram containing a universal spider. . . . . . . . . . . . . . . 31
1.44 Illustrating ambiguities: the ordering of quantifiers. . . . . . . . . . . . . . . 32
1.45 Illustrating ambiguities: the habitats of spiders. . . . . . . . . . . . . . . . . 33
1.46 A Venn diagram and semantically equivalent Euler diagram. . . . . . . . . . 34
1.47 A constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
1.48 Reasoning with constraint diagrams. . . . . . . . . . . . . . . . . . . . . . . 36
2.1
A concrete spider diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.2
Illustrating abstract descriptions: a spider diagram. . . . . . . . . . . . . . . 39
2.3
Illustrating abstract descriptions: abstract zones. . . . . . . . . . . . . . . . 39
2.4
A compound diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.5
Ill-formed diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.6
The dual graph. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.7
Two concrete diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.8
The box template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.9
Illustrating interpretations: a spider diagram. . . . . . . . . . . . . . . . . . 52
2.10 Illustrating the semantics predicate. . . . . . . . . . . . . . . . . . . . . . . 53
2.11 Satisfiability: mapping zones to sets of spiders. . . . . . . . . . . . . . . . . 56
2.12 A problem with reasoning at the concrete level. . . . . . . . . . . . . . . . . 60
viii
2.13 An application of rule 1, introduction of contour label. . . . . . . . . . . . . 60
2.14 Introducing a shaded zone. . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.15 An application of rule 3, splitting spiders. . . . . . . . . . . . . . . . . . . . 63
2.16 An application of rule 4, excluded middle. . . . . . . . . . . . . . . . . . . . 64
2.17 Combining unitary diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.18 Spiders whose habitats are not zones. . . . . . . . . . . . . . . . . . . . . . . 65
2.19 An unsatisfiable diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.20 An application of rule 12, t–simplification. . . . . . . . . . . . . . . . . . . 67
2.21 An application of rule 14, erasure of shading. . . . . . . . . . . . . . . . . . 69
2.22 An application of rule 15, erasure of a spider. . . . . . . . . . . . . . . . . . 69
2.23 An ‘invalid application’ of rule 15, erasure of a spider. . . . . . . . . . . . . 70
2.24 Introducing a contour label: illustrating properties of the set of greatest
regions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
2.25 Region causing the distinct spiders condition for d1 to fail. . . . . . . . . . . 79
2.26 Region causing the shading condition for d2 to fail. . . . . . . . . . . . . . . 80
2.27 Spiders touching regions r3 and r4 . . . . . . . . . . . . . . . . . . . . . . . . 80
2.28 Spider s inhabiting r3 and touching r4 . . . . . . . . . . . . . . . . . . . . . . 81
2.29 Spider sn (r) in d. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.30 Regions in d. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.31 Regions causing [A] and [B] to be false. . . . . . . . . . . . . . . . . . . . . 85
2.32 The completeness proof strategy. . . . . . . . . . . . . . . . . . . . . . . . . 93
2.33 Two α-diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.34 Two α-diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.35 A diagram with two associated contour diagrams. . . . . . . . . . . . . . . . 97
2.36 A diagram with an associated zone diagram. . . . . . . . . . . . . . . . . . . 99
2.37 Obtaining α-diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2.38 An α-subdiagram of d2 transformed into d2 . . . . . . . . . . . . . . . . . . . 100
2.39 A unitary diagram with a syntactically equivalent α-diagram. . . . . . . . . 101
2.40 An α-diagram and an extended diagram. . . . . . . . . . . . . . . . . . . . . 105
3.1
A model-level relationship between expressively equivalent diagrams and
sentences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3.2
Two α-diagrams: from diagrams to sentences. . . . . . . . . . . . . . . . . . 113
3.3
Illustrating Shin’s algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . 117
ix
3.4
Extending models for a diagram. . . . . . . . . . . . . . . . . . . . . . . . . 118
3.5
Visualizing cones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
3.6
A diagram expressively equivalent to ∀x1 ∀x2 x1 = x2 . . . . . . . . . . . . . . 123
3.7
Constructing diagrams from models. . . . . . . . . . . . . . . . . . . . . . . 128
3.8
Refining the approach. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.1
A constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.2
A constraint diagram with a universal spider. . . . . . . . . . . . . . . . . . 133
4.3
A constraint diagram with a derived contour. . . . . . . . . . . . . . . . . . 133
4.4
Given spiders and Schrödinger spiders. . . . . . . . . . . . . . . . . . . . . . 133
4.5
Strands and ties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.6
The semantics of ties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
4.7
The difficulties of interpreting diagrams with derived contours. . . . . . . . 135
4.8
Determining the satisfiability of constraint diagrams. . . . . . . . . . . . . . 136
4.9
The habitats of universal spiders. . . . . . . . . . . . . . . . . . . . . . . . . 137
4.10 Alternative semantics: incorrectly splitting spiders. . . . . . . . . . . . . . . 137
4.11 An invariant on a video rental company. . . . . . . . . . . . . . . . . . . . . 138
4.12 An invariant on a video rental company. . . . . . . . . . . . . . . . . . . . . 138
4.13 A constraint diagram with a derived contour. . . . . . . . . . . . . . . . . . 140
4.14 A constraint diagram with non-unique abstractions. . . . . . . . . . . . . . 141
4.15 A constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
4.16 The syntax of constraint diagrams. . . . . . . . . . . . . . . . . . . . . . . . 143
4.17 A constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
4.18 A concrete constraint diagram. . . . . . . . . . . . . . . . . . . . . . . . . . 147
4.19 Illustrating interpretations: a constraint diagram. . . . . . . . . . . . . . . . 149
4.20 Two constraint diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
4.21 An unsatisfiable unitary constraint diagram. . . . . . . . . . . . . . . . . . . 153
4.22 A satisfiable unitary constraint diagram. . . . . . . . . . . . . . . . . . . . . 153
4.23 Constructing a model for a constraint diagram. . . . . . . . . . . . . . . . . 154
4.24 Isomorphic diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
4.25 A valid application of rule 2, erasure of an arrow. . . . . . . . . . . . . . . . 160
4.26 A valid application of rule 3, introduction of a contour label. . . . . . . . . 161
4.27 An ‘invalid application’ of rule 3, introduction of a contour label. . . . . . . 161
4.28 A valid application of rule 5, introduction of an arrow: universal equivalence.163
x
4.29 An ‘invalid application’ of rule 5, introduction of an arrow: universal equivalence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
4.30 A valid application of rule 6, introduction of an arrow: universal deduction. 165
4.31 A valid application of rule 7, introduction of an arrow: empty set. . . . . . 166
4.32 A valid application of rule 8, introduction of an arrow: spider to contour. . 166
4.33 A valid application of rule 9, introduction of an arrow:contour to spider. . . 167
4.34 A valid application of rule 10, introduction of an arrow: contour to contour. 168
4.35 A valid application of rule 11, splitting spiders. . . . . . . . . . . . . . . . . 169
4.36 An application of rule 13, excluded middle for arrows. . . . . . . . . . . . . 170
4.37 Combining constraint diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . 172
4.38 Disjuntifying diagrams.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
4.39 Disjunctifying: the number of existential spiders in each zone. . . . . . . . . 173
4.40 An application of rule 24, erasure of an existential spider. . . . . . . . . . . 177
4.41 Introduction of shading. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
4.42 Erasure of a contour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
4.43 Semantically equivalent α-diagrams. . . . . . . . . . . . . . . . . . . . . . . 197
4.44 Illustrating maximal forms. . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
4.45 Identifying a shadeable zone. . . . . . . . . . . . . . . . . . . . . . . . . . . 198
4.46 Introducing semantic potential arrows. . . . . . . . . . . . . . . . . . . . . . 200
4.47 A semantic potential arrow with existential source and target and properties
of the diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
4.48 Introducing a semantic potential arrow with existential source and target. . 205
4.49 A semantic potential arrow with existential source and non-empty hit and
properties of the diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
4.50 Introducing a semantic potential arrow with existential source and a contour
label target. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
4.51 A semantic potential arrow with existential source and an empty hit and
properties of the diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
4.52 Introducing a semantic potential arrow with existential source and an empty
hit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
4.53 A semantic potential arrow with universal source and existential target and
a property of the diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
xi
4.54 Introducing a semantic potential arrow with universal source and existential
target. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
4.55 A semantic potential arrow with universal source and non-empty hit and
properties of the diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
4.56 Introducing a semantic potential arrow with universal source and a nonempty hit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
4.57 A semantic potential arrow and a property of the diagram. . . . . . . . . . 215
4.58 Introducing a semantic potential arrow with universal source and an empty
hit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.59 Semantic entailment: unitary β-diagrams. . . . . . . . . . . . . . . . . . . . 221
4.60 Maximal and reduced forms.
. . . . . . . . . . . . . . . . . . . . . . . . . . 222
4.61 Constructing a spider and arrow embedding.
. . . . . . . . . . . . . . . . . 224
4.62 Introducing the extra existential spiders form. . . . . . . . . . . . . . . . . . 231
4.63 New arrows in de1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
4.64 A diagram with its arrow super diagrams. . . . . . . . . . . . . . . . . . . . 242
4.65 A diagram with an associated arrow diagram. . . . . . . . . . . . . . . . . . 242
4.66 A diagram with its associated maximal arrow diagram. . . . . . . . . . . . . 243
4.67 The completeness proof strategy. . . . . . . . . . . . . . . . . . . . . . . . . 250
4.68 A diagram with two associated contour diagrams. . . . . . . . . . . . . . . . 251
4.69 A diagram with an associated zone diagram. . . . . . . . . . . . . . . . . . . 252
4.70 An α-subdiagram of d1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
4.71 A unitary diagram with its associated α-diagram. . . . . . . . . . . . . . . . 254
4.72 Creating an α-subdiagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
4.73 An α-diagram with an associated β-diagram. . . . . . . . . . . . . . . . . . 258
4.74 A β-diagram and an extended diagram. . . . . . . . . . . . . . . . . . . . . 259
4.75 A β-diagram and its associated spider-extended unitary components. . . . . 263
4.76 A β-diagram and an arrow-extended diagram. . . . . . . . . . . . . . . . . . 265
4.77 The final part of the completeness proof strategy. . . . . . . . . . . . . . . . 268
5.1
Alternative semantics: incorrectly splitting spiders. . . . . . . . . . . . . . . 281
5.2
A constraint diagram with a derived contour that does not represent the
empty set. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
5.3
A constraint diagram with its dependence graph and two reading trees. . . 283
5.4
Two α-diagrams: from diagrams to sentences. . . . . . . . . . . . . . . . . . 286
xii
5.5
Illustrating expressive limitations: for all takes precedence over there exists. 287
5.6
Illustrating expressive limitations: a derived contour that does not represent
the empty set. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
5.7
Illustrating expressive limitations: using a derived contour to ‘target a zone’.288
5.8
Illustrating expressive limitations: a universal spider that does not quantify
over its habitat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
5.9
Two spider diagrams with given spiders. . . . . . . . . . . . . . . . . . . . . 290
5.10 Illustrating projected contours. . . . . . . . . . . . . . . . . . . . . . . . . . 290
5.11 Using derived contours to extend to a second order system. . . . . . . . . . 292
5.12 Automatically generating Euler diagram. . . . . . . . . . . . . . . . . . . . . 293
5.13 Obtaining an optimistic estimate of proof length. . . . . . . . . . . . . . . . 294
xiii
Acknowledgements
I would like to thank my supervisors Professor John Howse, Dr John Taylor and Dr Ali
Hamie. John and John in particular afforded me with ‘beyond the call of duty’ amounts
of time and endless support, advice and enthusiasm. I would also like to express my
gratitude to Simon Thompson for his guidance. Thanks also to the members of the Visual
Modelling Group for providing me with valuable feedback throughout this project.
Thanks to the EPSRC for funding this research.
Thanks to all in W624 for providing such a pleasant working environment.
Finally, thanks to Jean.
xiv
Chapter 1
Introduction
In the mathematical sciences, diagrams are frequently used as a heuristic tool to convey
ideas and to aid intuition. Indeed, visual reasoning is often a major factor in mathematical
discovery [43]. For example, the diagrams in figure 1.1 can be used to help derive an
w = ( w 1,w 2)
q
u = ( u 1,u 2)
x = ( 1 ,0 )
y = ( 0 ,1 )
q
Figure 1.1: Rotating vectors in R2 .
operator that rotates, anticlockwise, each vector in R2 by a fixed, positive, angle θ. Using
the
· diagrams
¸
· it¸is easy to·see, from¸ basic·trigonometry,
¸ that the standard basis vectors,
1
0
cos(θ)
− sin(θ)
and
, map to
and
respectively. It follows from these
0
1
sin(θ)
cos(θ)
· ¸
x
equations that, to rotate each vector
in R2 anticlockwise by angle θ we multiply
y
· ¸
·
¸
x
cos(θ) − sin(θ)
by the matrix
.
y
sin(θ)
cos(θ)
Indeed, many mathematicians draw diagrams to illustrate that theorems are true. As
an example, figure 1.2 shows a diagrammatic ‘proof’ of Pythagoras’ theorem, a2 + b2 = c2 ,
obtained from [37]. The proof starts by taking any right-angled triangle T . Reflect this
triangle along the hypotenuse to create a rectangle. Draw a square using the long side
of this rectangle as one of its sides. Do the same for the short side of the rectangle.
Place a copy of the rectangle next to both squares, resulting in the lefthand big square in
figure 1.2. The four triangles can be rearranged into the positions shown in the righthand
big square, thus showing that a2 + b2 = c2 .
Some mathematicians would argue that this diagrammatic ‘proof’ is not a proof at all
1
because the argument is not based on a well defined set of reasoning methods. However,
the visual proof of Pythagoras’ theorem is just one example where the power of diagrammatic communication is apparent. Given the fact that diagrams play an important role
in discovery and understanding in mathematics, it seems sensible to provide formal, diagrammatic languages and reasoning methods. Such diagrammatic languages may be more
palatable to non-mathematicians who find abstract, symbolic languages (such as first order
predicate logic) hard to use.
c
a
c
b
b
a
a
T
c
b
c
b
a
Figure 1.2: A diagrammatic proof of Pythagoras’ theorem.
The software engineering community will benefit from the development of formal, diagrammatic languages. The Unified Modelling Language (UML), used to model object
oriented software systems, consists mainly of diagrammatic notations. The only textual
notation in the UML is the Object Constraint Language (OCL), which is used for writing formal specifications. In [40], Kent argues that software engineers find mathematical
expressions “unintuitive and off-putting” but that they have little difficulty in using diagrammatic notations:
Engineers have little difficulty in using, for example, instance diagrams to understand
and explain what is happening, and to identify various cases of behaviour to be considered; but formalising these into mathematical notation is often hard for them to
do. However, the process of formalisation can be extremely valuable in that it helps
to uncover gaps in misunderstandings, as well as provide a general characterisation of
behaviour that is simply not possible to achieve through instance diagrams alone.
It would seem important, then, to offer a formal diagrammatic alternatives to the textual, mathematical notations currently available. To this end, Kent introduced constraint
diagrams as an alternative notation to the OCL. The diagram in figure 1.3 is a constraint
diagram. It specifies that for each passenger p, the set of planes allocated to the flights
on which p is booked includes the set of airplanes that p has a seat on. An advantage of
constraint diagrams over the OCL is that they complement the diagrammatic theme of
the UML. However, if constraint diagrams are to be used in a formal setting then their
2
syntax and semantics must be formally defined.
p a sse n g e rs
s e a t_ o n
a ir p la n e s
b o o k e d _ o n
a llo c a te d _ p la n e
flig h ts
Figure 1.3: A formal specification using a constraint diagram.
Indeed, any diagrams that are to be used in a rigorous way require formal specification.
Errors may occur when the syntax and semantics have not been formally specified. For
example, diagrams may have properties that are not related to the intended meaning
but the user may not be aware of this fact. Figure 1.4 is an Euler diagram in which
B
A
Figure 1.4: Reading diagrams.
the contours with labels A and B represent sets. From the diagram, we may wish to
infer that A ∩ B = ∅ (since the interiors of the contours have no points in common) and
|B| > |A| (since the area inside the contour with label B is larger than the area inside
that labelled A). However, the intended meaning of the diagram is only that A ∩ B = ∅.
The area enclosed by the contours does not affect the meaning of the diagram. The only
semantically important feature is the placement of the contours with respect to each other.
In order to provide diagrammatic alternatives to symbolic languages such as first order
predicate logic and the OCL, we must formally define the kinds of diagrams that are
permitted (the syntax). Moreover, we must make precise the information that can be
read from a diagram (the semantics). Once this formalization has been done, we can
specify the ways in which we can make deductions (sound reasoning rules). Using the
3
formal semantics, it is possible to prove that the specified reasoning rules are sound.
Other properties of diagrammatic systems can also be investigated, such as completeness,
expressiveness and decidability.
Ground breaking work on the formalization of diagrammatic languages has been published by Hammer [26] and Shin [49]. Their work shows that diagrammatic reasoning
can be given the formal status of traditional symbolic reasoning. By formalizing diagrammatic systems, we are able to provide a larger choice of formal notations to users.
However, the diagrammatic systems of Hammer and Shin are not sufficiently expressive
for many practical applications. The constraint diagram language is sufficiently expressive to model software systems. If constraint diagrams are to be a viable alternative to
the symbolic languages on offer to software engineers then it is important to be able to
determine whether a constraint diagram is satisfiable and whether one diagram is a logical
consequence of another, but this is only possible for decidable systems. It seems, then,
useful to identify decidable fragments of the constraint diagram language. Furthermore,
software tools to aid modelling and reasoning with constraint diagrams are needed and
their construction requires formal mathematical underpinning.
In this thesis we will develop two sound and complete diagrammatic reasoning systems: a spider diagram system and a constraint diagram system. Spider diagrams can
express cardinality constraints on sets and constraint diagrams extend spider diagrams
by allowing properties of binary relations to be asserted. We will show that our spider
diagram system is equivalent in expressive power to monadic first order logic with equality.
The constraint diagram system we develop is a fragment of the full constraint diagram
language introduced by Kent, and is significantly more expressive than the spider diagram
language. Both systems developed here will be based on Euler diagrams, using additional
syntax to increase expressiveness. Many diagrammatic reasoning systems based on Venn
diagrams and Euler diagrams have already been developed and we will discuss some of
these in section 1.1. We will give an outline of this thesis in section 1.2.
1.1
Related work
We will now outline various reasoning systems that our work will extend.
1.1.1
Euler diagrams
Euler diagrams [11] (sometimes called Euler circles) are a simple visual language for expressing logical statements. They exploit topological properties of enclosure, exclusion and
4
intersection to represent subset, disjoint set and set intersection respectively. The diagram
C a ts
D o g s
T ig e r s
Figure 1.5: An Euler diagram.
in figure 1.5 is an Euler diagram and expresses the fact that ‘all tigers are cats and no dogs
are cats’ since (the contour labelled) T igers is inside Cats and the contours Dogs and
Cats contain regions with no points in common. We will refer to a connected component
of the plane as a zone. A zone can be identified by a containing set of contours and an
excluding set of contours that form a partition of the set of contours in the diagram. For
example, in figure 1.5, the set of points in the plane inside Cats but outside T igers (and,
therefore, outside Dogs) is a zone.
Various semantics have been given for Euler diagrams. Zones in Euler diagrams represent sets and the union of all the sets represented by the zones in a diagram is the universal
set. Some semantic interpretations specify that each zone in a diagram represents a nonempty set [42], whereas others do not impose this restriction [26]. A discussion of the
semantics of Euler diagrams can be found in [28].
A simple sound1 and complete reasoning system based on Euler diagrams is given
by Hammer in [26]. The system has just three reasoning rules: the rule of erasure (of
a contour), the rule of introduction of a new contour and the rule of weakening (which
introduces a zone).
Example 1.1.1 In figure 1.6 we illustrate Hammer’s reasoning rules. Firstly, we erase
the contour labelled Dogs from the diagram d1 . This ‘forgets’ any information that we
had about the set Dogs. Next we introduce the contour labelled M ice. When doing so,
we must ensure that the new contour overlaps a proper part of each zone in the diagram,
thus ensuring that we do not change the meaning of the diagram. Finally, we use the rule
of weakening to introduce a new zone, giving d2 . By introducing the zone that is inside
T igers but outside Cats and M ice, we have ‘forgotten’ that all tigers are cats.
1
Under the semantics that allow zones to represent the empty set.
5
C a ts
C a ts
D o g s
T ig e r s
d
1
C a ts
C a ts
T ig e r s
T ig e r s
T ig e r s
d
M ic e
M ic e
2
Figure 1.6: Reasoning in Hammer’s system.
Hammer’s Euler diagram system is decidable. This follows as a corollary to the completeness proof strategy, which we now outline. Given d1 ² d2 , Hammer constructs a proof
from d1 to d2 (here, by proof we mean a sequence of syntactic operations on d1 to give
d2 ). The first part of this proof is to add contours to d1 until every contour label that
occurs in d2 occurs in d1 . Next, erase contours from d1 until it has the same contour label
set as d2 . Finally use the rule of weakening to give d2 .
Euler diagrams are limited in expressiveness. For example, there is no Euler diagram
that can express A = ∅ and nothing more. They can only express that a set is empty by
using missing zones (a missing zone can be thought of as a zone which could be described
by a partition of the contour label set but is not present in the diagram). Given certain
well-formedness conditions on Euler diagrams (such as contours must be simple, closed,
plane curves), there are less trivial examples of statements that Euler diagrams cannot
express, identified in [41, 60], because there is no drawable diagram with a specified zone
set.
6
1.1.2
Venn diagrams
Venn diagrams [58] are similar to Euler diagrams. However, instead of using missing
zones to express that a set is empty, shading is used. All possible intersections between
contours occur in Venn diagrams. That is, in a Venn diagram, any two way partition of
the contour label set describes a non-empty set of points in the plane. The Venn diagram
D o g s
C a ts
T ig e r s
Figure 1.7: A Venn diagram.
in figure 1.7 expresses the same information as the Euler diagram in figure 1.5. Venn
proposes a constructive method for drawing any Venn diagram on n contours [59] and
More gives a topological proof that the construction process in valid [45].
A
B
1
4
2
1
3
4
4
1
A
2
3
A
A
2
3
4
1
4
1
B
B
B
C
Figure 1.8: Constructing Venn diagrams.
Example 1.1.2 To introduce the curve C to the Venn diagram containing curves A and
B in figure 1.8 we carry out the following steps. We snip B at the ‘blob’ and open out the
contour until it looks like a line. Since B borders each zone, we can add C by weaving
back and forth along the line B. This ensures C cuts each zone in half, giving all possible
intersections between contours. Reforming B into a closed curve then gives us a Venn
diagram on three contours. The new contour introduced by this algorithm is guaranteed
7
to border each of the zones, so we can snip the new contour and follow the same process
to add another contour.
A survey of work on Venn diagrams can be found at [48].
1.1.3
Venn-Peirce diagrams
Venn diagrams cannot assert the existence of elements nor express disjunctive information.
To overcome this, Peirce modified Venn diagrams by introducing symbols into the system
to represent non-emptiness of a set as well as emptiness [49]. The symbols x and o are used
to represent non-emptiness and emptiness respectively. Peirce also uses lines to connect
x’s and o’s, to represent disjunctive information.
N a tu r a l n u m b e r s
R e a l n u m b e rs
x
x
o
Figure 1.9: A Venn-Peirce diagram.
Example 1.1.3 The Venn-Peirce diagram in figure 1.9 expresses that
1. there is at least one real number and
2. all natural numbers are real numbers.
Peirce introduced six reasoning rules for his diagrammatic system [47], for example we
may connect any character to any existing character. That is, we may join an x or o to
any existing x or o using a line.
N a tu r a l n u m b e r s
R e a l n u m b e rs
o
o
x
x
N a tu r a l n u m b e r s
R e a l n u m b e rs
o
x
x
x
x
In te g e r s
In te g e r s
Figure 1.10: Reasoning with Venn-Peirce diagrams.
8
o
o
x
o
Example 1.1.4 In figure 1.10, we can add an x, placed in the zone inside all three
contours, and join it to the x − o sequence outside the contour Real numbers. This rule
is similar to the rule in propositional logic that allows P ∨ Q to be deduced from P .
Peirce suggests an improvement to his notation: instead of using lines within a diagram to represent disjunctive information, draw diagrams containing only conjunctive
information and use a collection of these diagrams to represent disjunctive information,
like a type of disjunctive normal form.
1.1.4
Venn-I diagrams
Shin [49] adapts Venn-Peirce diagrams by reverting back to Venn’s shading to represent the
emptiness of a set (rather than using o-sequences) and she draws a rectangle to represent
the universal set. Because Shin uses shading instead of o-sequences, her language is more
restrictive than the Venn-Peirce language. She also uses the symbol ⊗ in place of x.
C a ts
D o g s
T ig e r s
Figure 1.11: A Venn-I diagram.
Example 1.1.5 The Venn-I diagram in figure 1.11 expresses that
1. no cats are dogs (by the use of shading),
2. all tigers are cats (by the use of shading),
3. there is at least one dog (by the use of an ⊗-sequence) and
4. there is at least one cat (by the use of an ⊗-sequence).
Shin defines well-formed diagrams [50] and gives them formal semantics. She maps basic
regions to subsets of some universal set, calling this mapping a set assignment. A basic
region is an area of the plane completely enclosed by a contour. Once the basic regions
have been interpreted, the set assignment is extended to zones then to regions (a region is
a collection of zones). She defines an ⊗-sequence to be in a region, r, if r is the smallest
region to contain the ⊗-sequence. She also defines a region, r, to be shaded if shading fills
up the whole of r.
9
Similarly to first order predicate logic, a set assignment is called a model for a diagram
if it ‘agrees with the meaning of the diagram’. For Venn-I diagrams, a set assignment is
a model for a diagram if all the regions containing an ⊗-sequence represent a non-empty
set and all the shaded regions represent the empty set.
A
A
B
d
B
d
1
2
Figure 1.12: The semantics of Venn-I diagrams.
Example 1.1.6 The diagram d1 , in figure 1.12, is satisfied by the set assignment
s : {A, B} → P{1}
where s(A) = {1} and s(B) = {1}, since the basic region within B asserts that B is not
empty. That is, s is a model for d1 . However, s is not a model for d2 , since d2 asserts that
s(A) ∩ s(B) is empty but s(A) ∩ s(B) = {1} ∩ {1} = {1}.
Shin defines six sound reasoning rules for Venn-I and proves completeness. We will
illustrate two of these rules (the complete list of rules can be found in [49], page 81). One
of the Venn-I reasoning rules allows the introduction of a contour. The contour must have
a label that is not already present in the diagram and it must obey the partial overlapping
rule: a new closed curve introduced into a given diagram should overlap a proper part of
every zone in that diagram once and only once [49], page 57. Moreover, changes must be
made to the ⊗-sequences, as illustrated in the following example.
d
B
A
B
A
C
1
d
2
Figure 1.13: Reasoning with Venn-I diagrams.
10
Example 1.1.7 We can add a contour with a new label, C, to d1 , in figure 1.13, giving d2 .
When introducing the contour, we must ensure that the shading is preserved. Moreover,
we must ensure that all ⊗-sequences are modified so that each ⊗ is replaced by ⊗ − ⊗,
one part in each new zone.
Another rule, called the rule of unification of diagrams, allows two diagrams to be
replaced by a single diagram. The unify rule captures the conjunction of the semantic
information in the two given diagrams and replaces them by a single diagram, expressing
this conjunctive information.
B
A
d
C
A
d
1
B
A
C
2
d
3
Figure 1.14: Unifying Venn-I diagrams.
Example 1.1.8 We can unify d1 and d2 , in figure 1.14, giving d3 .
1.1.5
Venn-II diagrams
Venn-I is limited in expressiveness and cannot express statements of the form A ⊆ B ∨A *
C. Shin extends Venn-I to a more expressive system, called Venn-II, by allowing Venn-I
diagrams to be connected by straight line segments. Such a connecting line represents
disjunction, like the lines connecting ⊗’s.
B
A
d
1
C
A
d
D
2
Figure 1.15: A Venn-II diagram.
11
Example 1.1.9 The diagram, D, in figure 1.15 is formed by joining d1 and d2 by a
straight line segment. The semantics of D are the disjunction of the semantics of d1 and
d2 .
Shin defines ten reasoning rules for Venn-II and shows that they form a sound and
complete set. The six rules for Venn-I generalize to Venn-II with some modification.
Shin proves that Venn-II is equivalent in expressive power to pure monadic first order
logic (in which there is no equality and all the predicate symbols are one place).
Very recently the Venn-II system has been extended to include constants [4].
1.1.6
Euler/Venn diagrams
Euler/Venn diagrams [52] are similar to Venn-II diagrams but, instead of ⊗-sequences,
constant sequences are used. The interpretation of these symbols differs. An ⊗-sequence
asserts non-emptiness of a set whereas a constant sequence asserts that a particular individual is in a set. Another difference is that Euler/Venn diagrams have underlying Euler
diagrams whereas Venn-II diagrams are more restrictive, only allowing Venn diagrams as
underlying diagrams. The diagram in figure 1.16 is an Euler/Venn diagram and expresses
that no element is both a mammal and an insect and that there is something called ‘tim’
that is either a mammal or an insect.
In s e c ts
M a m m a ls
tim
tim
Figure 1.16: An Euler/Venn diagram.
In [52], Swoboda gives a set of sound reasoning rules for Euler/Venn diagrams. These
rules are slight modifications of those given by Shin and Hammer [26, 27, 49].
In [55], Swoboda and Allwein give an algorithm that determines whether a given
Euler/Venn monadic first order formula is ‘observable’ [56] from a given diagram. If the
formula is observable from the diagram then it may contain weaker information than the
diagram (i.e. the formula is a consequence of the information contained in the diagram).
Example 1.1.10 The formula P (bob) ∨ Q(bob) is observable from the diagram in figure 1.17 but P (chris) ∨ ¬P (chris) is not, since chris does not appear in the diagram.
12
P
b o b
b o b
Q
Figure 1.17: Observable formulae: An Euler/Venn diagram.
The work in [56] on observation allows a recast relation (see [54]) to be defined between
Euler/Venn diagrams and first order logic [53]. Two statements, S and T , (made in
different languages) are related under a recast relation when S, say, can be replaced by
T . In the particular case here, for example, an Euler/Venn diagram, D, can be replaced
by a first order logic sentence, S, when S can be observed from D. So, D is related to S
under a recast relation when S is observable from D.
1.1.7
Spider diagrams
The work by Shin on Venn-I and Venn-II is seminal, and challenges the commonly held
conception among mathematicians that diagrams cannot be used as formal tools, but only
as an aid to understanding en route to formal constructs such as proofs. Whilst the VennII system is not particularly expressive, Shin does show that diagrammatic notations can
be formalized and given sound and complete reasoning rules.
Spider diagrams [22, 35, 32, 36, 44] adapt and extend Venn II diagrams. Instead of
using ⊗-sequences to indicate that regions represent non-empty sets, spiders are used
to represent the existence of elements and, significantly, distinct spiders represent the
existence of distinct elements. Thus spider diagrams allow lower bounds to be placed on
the cardinalities of sets. In a Venn-II diagram, if shading is placed in the same region
as an ⊗-sequence then the diagram is a contradiction. For spider diagrams, if shading is
placed in the same region as a spider then the diagram expresses that all the elements in
the set represented by that region are represented by its spiders. So shading, together with
spiders, allows upper bounds to be placed on the cardinalities of the sets. Furthermore,
like Euler/Venn diagrams, spider diagrams are based on Euler diagrams.
Example 1.1.11 The spider diagram d1 in figure 1.18 expresses that no element is both a
mammal and an insect and there are at least two elements in the set M ammals ∪ Insects.
The spider diagram d2 expresses that there are exactly two insects that are not mammals.
13
In s e c ts
M a m m a ls
d
In s e c ts
M a m m a ls
d
1
2
Figure 1.18: Two spider diagrams.
In the example above, spiders represent the existence of elements and are called existential spiders. Some spider diagram systems instead use given spiders. Given spiders are
always labelled and are analogous to constants in first order logic. We note here that the
semantics of given spiders and the semantics of constant sequences (used in Euler/Venn
diagrams) are different: both represent particular individuals but, within a diagram, constant sequences with distinct labels do not necessarily denote distinct individuals, whereas
given spiders with distinct labels do denote distinct individuals.
C a ts
D o g s
C a ts
M a m m a ls
C a ts
D o g s
w e b
w e b
d
D o g s
d
4
1
C a ts
M a m m a ls
d
d
2
5
w e b
C a ts
D o g s
d
d
3
C a ts
6
Figure 1.19: Spider diagrams with given spiders.
Example 1.1.12 The diagrams d1 , d2 and d3 in figure 1.19 all contain given spiders (a
given spider is a tree with square nodes). The diagram d1 expresses that web is either a
cat or a dog, but not both. The diagram d2 expresses that web is a cat and a mammal
and that all cats are mammals. From the conjunction of d1 and d2 we can deduce that
web is a cat but not a dog, expressed by d3 . By contrast, from d4 and d5 , which contain
existential spiders (an existential spider is a tree with round nodes), we cannot deduce d6 .
There are many spider diagram systems and in [36] a sound, but not complete, spider
diagram system is presented that includes given spiders but not existential spiders.
14
SD1 diagrams
The spider diagram system SD1 was the first to be proved sound and complete [34, 44].
SD1 does not include given spiders but does include existential spiders. In SD1, spiders
(which are trees) cannot have nodes placed in shaded zones. So, SD1 diagrams extend
the Venn-II system by allowing lower bounds to be placed on the cardinality of sets. All
diagrams in the SD1 system are based on Venn diagrams rather than Euler diagrams.
A
B
C
Figure 1.20: An SD1 diagram.
Example 1.1.13 The diagram in figure 1.20 is an SD1 diagram. It expresses that C = ∅,
|U − (A ∪ B ∪ C)| ≥ 2, |A ∩ B| ≥ 1 and |A| ≥ 2, where U is the universal set.
Unlike the previous diagrammatic systems we have looked at, Molina [44] distinguishes
between the abstract syntax and the concrete syntax which are called the type syntax
and token syntax respectively in [30, 31]. The concrete syntax captures the physical
representation of a diagram whereas the abstract syntax is a mathematical description
of a concrete diagram. This has an analogy in graph theory. A graph is defined to be
a set of vertices together with a set of edges, like the abstract syntax. An embedding
of the graph in the plane is like the concrete syntax. Separating out these two levels of
syntax overcomes the problems raised in [7] regarding the well-formedness of diagrams after
applying a reasoning rule. Molina raises other issues that an abstract syntax overcomes,
[44] pages 88-89:
Shin introduces numerous notions, such as the set of all regions of a diagram, that
seem to suggest the need of an abstract syntax to add precision to her diagrammatic
system. ...
The abstract syntax will give precision and will enable formality in different aspects
of the notation. This will be perceived for instance with the formal descriptions of the
reasoning rules where we can safely ignore certain aspects which are not needed for
the intended meaning...
Also a clear benefit of this distinction will be observed when building tools for SD1
or more expressive notations which may extend this system in the near future. For
the design of the graphical user interface ... the concrete syntax will play a central
role whereas the abstract syntax will be the guideline for the implementation of the
symbolic calculus.
15
Indeed, the definitions of the reasoning rules become formal and precise when using
the abstract syntax.
Example 1.1.14 The concrete SD1 diagram in figure 1.20 is called a unitary diagram
and has the following abstract description.
1. C = {c1 , c2 , c3 } is a set of contours. The boundary rectangle is not an element of C.
2. Z = PC is the set of zones.
3. Z ∗ = {{c3 }, {c1 , c3 }, {c2 , c3 }, {c1 , c2 , c3 }} is the set of shaded zones.
4. R = PZ − {∅} is the set of regions.
5. R∗ = PZ ∗ − {∅} is the set of shaded regions.
6. L = {A, B, C} is the set of contour labels.
7. S = {s1 , s2 , s3 , s4 } is a set of spiders.
8. η : S → {r ∈ R : r ∩ Z ∗ = ∅} is a function which returns the habitat of each spider
defined by η(s1 ) = {∅}, η(s2 ) = {∅}, η(s3 ) = {{c1 , c2 }} and η(s4 ) = {{c1 }, {c1 , c2 }}.
9. l : C → L is a function which returns the label of each contour defined by l(c1 ) = A,
l(c2 ) = B and l(c3 ) = C.
Abstract unitary diagrams are defined on pages 63-64 in [44] and form the building
blocks of compound diagrams and multi-diagrams. A compound diagram is a set of unitary
diagrams and a multi-diagram is a set of compound diagrams.
A
d
B
1
B
d
2
d
3
Figure 1.21: A multi-diagram.
Example 1.1.15 In figure 1.21, {d1 , d2 } is a compound diagram and {{d1 , d2 }, {d3 }} is
a multi-diagram.
16
Semantically, distinct spiders represent the existence of distinct elements and shaded
zones represent the empty set. The semantics of a compound diagram, D, are the disjunction of the semantics of the unitary diagrams in D. For a multi-diagram, ∆, the semantics
are the conjunction of the semantics of the compound diagrams in ∆. So, a multi-diagram
is in conjunctive normal form.
Molina also defines ⊥ to be a false unitary diagram. This allows unsatisfiable diagrams
to be replaced by ⊥ when reasoning rules are defined for the system. He defines twelve
sound reasoning rules for SD1 and proves this to be a complete set.
SD2 diagrams
In SD1, spiders are not allowed to have nodes placed in a shaded zones. So, SD1 diagrams
can express lower bounds on the cardinalities of sets and that sets are empty but SD1
lacks facilities to express arbitrary finite upper bounds on the cardinalities of sets. The
SD2 system addresses this issue, extending SD1 by allowing spiders to have nodes placed
in shaded zones.
B
Figure 1.22: An SD2 diagram.
Example 1.1.16 The diagram in figure 1.22 is an SD2 diagram but not an SD1 diagram.
It express that |U | ≥ 2, |U − B| ≥ 1 and |B| ≤ 1.
We will extend the SD2 system in this thesis, so we shall give more details for SD2
than the other systems we have discussed. We will now state the abstract syntax for SD2.
Definition 1.1.1 A unitary SD2 diagram is either ⊥ or a tuple
d = hC, U, Z, Z ∗ , R, R∗ , L, S, η, li
whose components are defined as follows.
1. C = C(d) is a finite set of contours. The boundary rectangle, U, is not a
member of C.
2. Z = Z(d) = PC is the set of zones and Z ∗ (d) ⊆ Z is the set of shaded zones.
17
3. R = R(d) = PZ − {∅} is the set of regions and R∗ = R∗ (d) = PZ ∗ − {∅} is the set
of shaded regions.
4. L = L(d) is a set of contour labels.
5. S = S(d) is a finite set of spiders.
6. The function η : S → R returns the habitat of each spider.
7. The bijection l : C → L returns the label of each contour.
An SD2 compound diagram is a finite set, D, of SD2 unitary diagrams. An SD2 multidiagram is a finite set, ∆, of SD2 compound diagrams [44], page 144.
To formalize the semantics for SD2 unitary diagrams, Molina follows a similar approach
to Shin. The semantics for SD2, which we now give, are obtained from [44] pages 145-146.
Definition 1.1.2 A set assignment to contours for an SD2 unitary diagram d is a
pair (U, Ψ) where U is a set and Ψ : C → PU is a function mapping contours of d to
subsets of U . A model2 for a unitary SD2 diagram is a pair (U, Ψ) where U is a set
and Ψ is the function arising from Ψ : C → PU to include the interpretation of zones and
regions of d which are to denote subsets of U :
1. Boundary. The boundary rectangle, U, denotes the universal set:
Ψ(U) = U.
2. Zones. Ψ : Z → PU where
Ψ(z) =
\
Ψ(c) ∩
c∈z
\
Ψ(c)
c∈C−z
T
and Ψ(c) = U − Ψ(c). We assume that
Ψ(c) =
c∈∅
3. Regions. Ψ : R → PU where
Ψ(r) =
[
T
Ψ(c) = U
c∈∅
Ψ(z).
z∈r
2
Note here that the notion of a model for an SD2 diagram is different from that of a model for a first
order predicate logic sentence: in first order predicate logic a structure is a model for a sentence if the
structure satisfies the sentence. Here a model for a diagram does not necessarily agree with the intended
meaning of the diagram (i.e. a model need not satisfy the diagram).
18
Molina shows that the overloading of Ψ is well behaved by proving properties of Ψ,
such as each pair of distinct zones in unitary diagram map to disjoint sets. He defines, for
a unitary diagram d and region r, S(r) to be the set of spiders whose habitats are subsets
of r (formally S(r) = {s ∈ S(d) : η(s) ⊆ r}) and T (r) to be the set of spiders that have a
node placed in r (formally T (r) = {s ∈ S(d) : η(s) ∩ r 6= ∅}).
Definition 1.1.3 The semantics predicate, Pd (m), of an SD2 unitary diagram d (6=⊥)
is the conjunction of the following two conditions.
1. Distinct Spiders Condition. The cardinality of the set denoted by a region r of
d is greater than, or equal to, the number of complete spiders in r:
^
|Ψ(r)| ≥ |S(r)|.
r∈R(d)
2. Shading Condition. The cardinality of the set denoted by a shaded region r is less
than, or equal to, the number of spiders touching r:
^
|Ψ(r)| ≤ |T (r)|.
r∈R∗ (d)
The semantics predicate of ⊥ is P⊥ (m) = f alse.
B
A
d
1
Figure 1.23: An SD2 diagram.
Example 1.1.17 Consider the diagram d1 in figure 1.23. Suppose C(d1 ) = {c1 , c2 } where
the label of c1 is A and the label of c2 is B. We define Ψ1 : C → PZ+ by
Ψ1 (c1 ) = {n ∈ Z+ : ∃m ∈ N • n = 2m}
and
Ψ1 (c2 ) = {n ∈ Z+ : n ≥ 2}.
Then m1 = (Z+ , Ψ1 ) ensures Pd1 (m1 ) is true.
19
If we define Ψ2 : C → P{1} by Ψ2 (c1 ) = ∅ and Ψ2 (c2 ) = ∅ then m2 = ({1}, Ψ2 ) ensures
Pd1 (m2 ) is false: the distinct spiders condition fails.
The definitions of set assignment to contours, model and semantics predicate are extended to compound diagrams, D, and multi-diagrams, ∆, in the natural way, ensuring
that contours with the same label represent the same set.
Definition 1.1.4 A model, m = (U, Ψ), is said to satisfy a diagram, ∆, if P∆ (m) is
true and ∆ is satisfiable if there exists a model that satisfies ∆.
So, in example 1.1.17, m1 satisfies d1 but m2 does not. All SD2 unitary diagrams
are satisfiable. To prove this, Molina constructs a model that satisfies unitary diagram d,
taking the universal set to be the set of spiders, S, in d. By choosing a function, f , that
maps spiders to zones (ensuring that f (s) is a zone in the habitat of spider s), each region,
r, is mapped to a set of spiders where Ψ(r) = {s ∈ S : f (s) ∈ r}. This mapping of regions
to sets of spiders ensures that the semantics predicate is true.
We now outline the reasoning rules for SD2. Whilst their formal descriptions are at
the abstract level, we will state the informal descriptions given by Molina. The rules can
be found in [44], pages 150-157.
Rule 1 Erasure of a spider. We may erase a spider from any non-shaded region.
A
A
C
B
d
C
B
1
d
2
Figure 1.24: Deleting a spider.
Example 1.1.18 We can erase the spider inhabiting (A ∪ B) − C in d1 , figure 1.24, and
deduce d2 . The diagram d1 asserts (amongst other things) that |(A ∪ B) − C| ≥ 1; deleting
the spider loses this information. Note that it would be incorrect to delete the spider in
(A ∪ C) − B: from d1 we cannot deduce that C = ∅.
Rule 2 Erasure of a contour. Let d1 be a unitary diagram with at least one contour
and let d2 be the diagram obtained from d1 by erasing a contour as follows:
20
1. any shading remaining in only part of a zone is also erased and
2. if a spider has feet in two zones that combine to form a single zone then these feet
are replaced with a single foot connected to the rest of the spider.
Then d1 can be replaced by d2 .
A
A
B
C
C
d
d
1
2
Figure 1.25: Erasing a contour.
Example 1.1.19 We can erase the contour with label B from d1 , figure 1.25, and deduce
d2 .
Rule 3 Introduction of a contour. Let d1 (6=⊥) be a unitary diagram and let d2 be
the diagram obtained from d1 by introducing a contour interior to the boundary rectangle
as follows:
1. each zone splits into two zones and
2. each shaded zone splits into two shaded zones and
3. each foot of a spider is replaced with a connected pair of feet, one foot in each new
zone.
Then d1 can be replaced by d2 .
A
A
C
d
C
B
1
d
2
Figure 1.26: Introducing a contour.
Example 1.1.20 Introducing the contour with label B to d1 , in figure 1.26, gives d2 .
21
Rule 4 Splitting spiders. Let d (6=⊥) be a unitary diagram with a spider s touching
every zone of two disjoint regions, r1 and r2 . Let d1 and d2 be two unitary diagrams that
are copies of d except that neither contains s but each contains an extra spider whose
habitat is r1 in d1 and r2 in d2 . Then d can be replaced by the compound diagram {d1 , d2 }.
The rule is reversible, that is, {d1 , d2 } can be replaced by d.
A
B
C
A
C
d
A
B
C
d
1
B
2
d
3
Figure 1.27: Splitting spiders.
Example 1.1.21 In figure 1.27, the spider in d1 represents the existence of an element
in either A − C or A ∩ C. We can split this spider and replace d1 by {d2 , d3 }.
Rule 5 Excluded middle. Let d (6=⊥) be a unitary diagram with a completely nonshaded region r. Let d1 and d2 be two unitary diagrams that are copies of d except that
r is shaded in d1 and r contains an extra spider touching exactly every zone of r in d2 .
Then d can be replaced by the compound diagram {d1 , d2 }. The rule is reversible, that is,
{d1 , d2 } can be replaced by d.
A
d
B
A
B
d
1
2
A
B
d
3
Figure 1.28: Applying the excluded middle rule.
Example 1.1.22 In figure 1.28, from d1 we can deduce that either |A| = 1 or |A| ≥ 2.
The diagram {d2 , d3 }, obtained from d1 by applying excluded middle, explicitly asserts
this statement.
Rule 6 Connecting a diagram. Let D1 and D2 be two compound diagrams. Then D1
may be replaced by D1 ∪ D2 .
The connecting a diagram rule is analogous to the rule in logic which allows us to deduce
P ∨ Q from P .
22
A
C
d
A
d
1
d
B
1
2
Figure 1.29: Connecting a diagram.
Example 1.1.23 In figure 1.29, we can deduce {d1 , d2 } from d1 .
In [44], Molina gives a syntactic definition of equivalent diagrams. Roughly speaking,
two abstract diagrams are equivalent when they have a common concrete representation.
Rule 7 Equivalence. Let D1 and D2 be any two equivalent diagrams. Then D1 may be
replaced by D2 .
B
A
d
A
d
B
1
2
Figure 1.30: Equivalent diagrams.
Example 1.1.24 The two diagrams in figure 1.30 are equivalent. From d1 we can obtain
d2 .
The next rule also has an analogy in logic. From a false premise we may deduce any
diagram.
Rule 8 Inconsistency. The diagram ⊥ may be replaced by any diagram.
We wish to apply any of the first eight rules to the parts of a compound diagram and
the next rule allows us to do so.
Rule 9 Simplification 1. Let D, D1 and D2 be three compound diagrams. If D1 can be
transformed into D2 by a single application of one of the first eight transformation rules
then the compound diagram D ∪ D1 may be transformed into D ∪ D2 .
23
A
A
d
A
d
1
d
2
d
1
3
Figure 1.31: Applying the simplification 1 rule.
Example 1.1.25 We can delete the contour from d2 in figure 1.31. From {d1 , d2 } we can
deduce {d1 , d3 }.
The simplification 2 rule is similar, but operates on multi-diagrams.
Rule 10 Simplification 2. Let ∆ be a multi-diagram and let D1 and D2 be two compound diagrams. If D1 can be transformed into D2 by a single application of one of the
first nine rules then the compound diagram D ∪ D1 may be transformed into D ∪ D2 .
A multi-diagram that contains the compound diagram {⊥} is unsatisfiable and, therefore, semantically equivalent to {⊥}. The next rule allows any multi-diagram containing
{⊥} to be replaced by {⊥}.
Rule 11 Simplification 3. Let ∆ be a multi-diagram such that {⊥} ∈ ∆. Then ∆ can
be transformed into {⊥}.
There is one final reasoning rule, called the rule of combining diagrams, needed for
completeness in SD2. It is reversible and allows any multi-diagram to be replaced by a
compound diagram. We will not give the informal description of this rule (which can be
found in [44], pages 154-157), but illustrate it by example.
B
A
d
1
B
A
d
B
A
d
2
3
Figure 1.32: A simple application of the combining rule.
Example 1.1.26 In figure 1.32, from the multi-diagram {{d1 }, {d2 }}, we can deduce the
compound diagram {d3 }. The diagram d3 has (essentially) the same zones as d1 and d2 .
24
Moreover, if a zone is shaded in either d1 or d2 then it is shaded in d3 . The number of
spiders in any zone, z, in d3 is the maximum number in that zone in either d1 or d2 .
The previous example shows a simple application of the combining rule in which not all
of the (potentially) required steps are needed. We will now illustrate all the steps involved
when applying the combining rule to a multi-diagram. Firstly, we note that in SD2 the
diagram ⊥ is represented at the concrete level by the diagram shown in figure 1.33.
Figure 1.33: The false unitary diagram.
Example 1.1.27 In figure 1.34, suppose we wish to replace the multi-diagram {{d4 }, {d5 }}
by a compound diagram. In the previous example, this process was straightforward because the diagrams d1 and d2 have (essentially) the same zone sets. We could compare
each of their zones in turn, to deduce how many spiders their combination d3 should contain, and whether the zones should be shaded in d3 . Since the zone sets of d4 and d5 differ,
this is not possible. The first step we take, therefore, is to add a contour labelled B to d4
which will make the zone sets the same. This transforms {{d4 }, {d5 }} into {{d6 }, {d5 }}.
By introducing B to d4 we have created a spider that has two feet. This two footed
spider represents disjunctive information within the diagram d6 . The effect of this is to
prevent us from being able to easily compare, for example, the spiders and shading in
the zone ‘inside A and B’ in d6 and d5 . Consideration must be given to other properties
of d6 and d5 in order to replace {{d6 }, {d5 }} by a compound diagram. To simplify our
task, we apply the splitting spiders rule to d6 (as well as simplification 1 and 2), giving
{{d7 , d8 }, {d5 }}. We can think of the next, and final, step in applying the combining rule
as transforming {{d7 , d8 }, {d5 }} (which is in conjunctive normal form) into disjunctive
normal form and ‘shrinking’ each of the conjuncts to a single unitary part. We note,
though, that in the SD2 system, diagrams can only be unitary diagrams, disjunctions of
unitary diagrams (compound diagrams) or conjunctions of disjunctions of unitary diagrams
(multi-diagrams). Thus this final step must be performed ‘all at once’. If we consider the
conjunction of d7 and d5 , the resulting single unitary part is d9 . Now, d8 and d5 contain
contradictory information, and give rise to the false unitary diagram, ⊥, represented at the
25
A
B
A
d
d
A
A
B
d
B
B
d
d
A
5
6
A
A
B
d
7
5
4
B
d
8
A
5
B
d
9
d
1 0
Figure 1.34: A non-trivial application of the combining rule.
concrete level by d10 . Applying the combining rule to {{d4 }, {d5 }} results in the diagram
{d9 , d10 }. From {d9 , d10 } we can deduce d9 using the inconsistency rule.
Molina proves that with this set of rules the system is sound. The strategy he adopts is
to prove that each rule, r, is valid (that is, applying r to diagram D1 results in a diagram
that is a semantic consequence of D1 ). The soundness theorem then follows by a simple
induction argument.
We will now outline the completeness proof strategy for SD2. Molina uses the idea of
a β-diagram to construct his completeness proof. A β-diagram is a diagram where every
spider has exactly one foot and every zone either contains a spider or is shaded (or both).
Molina proves that every diagram is syntactically equivalent to a β-diagram. Moreover,
using the combining rule and introduction of a contour rule, Molina is able to show that
26
every diagram, D1 , is syntactically equivalent to a β-diagram that is also a compound
diagram (i.e. a disjunction of unitary β-diagrams) in which all the unitary parts have the
same contour label sets, L say. We will denote this special β-diagram by β D1L .
A
B
d
A
A
B
d
1 1
B
d
1 2
1 3
A
d
B
1 4
Figure 1.35: Obtaining a β-diagram.
Example 1.1.28 The diagram {{d4 }, {d5 }} in figure 1.34 is syntactically equivalent to
{d9 } (noting that d10 ` d9 by rule 8, inconsistency). To transform d9 into a β-diagram we
apply rule 5, excluded middle, three times to give {d11 , d12 , d13 , d14 }, shown in figure 1.35.
Thus {{d4 }, {d5 }} ≡` {d11 , d12 , d13 , d14 }.
Given D1 ² D2 , Molina replaces both D1 and D2 by the syntactically equivalent
diagrams β D1L and β D2L respectively. The task of showing that D1 ` D2 has now reduced
to showing that β D1L `
β DL .
2
Since β D1L is a compound diagram (i.e. a disjunction
of unitary diagrams), each unitary part, d1 , of β D1L semantically entails β D2L , that is
d1 ² β D2L . Thus if we can show that d1 ` β D2L then we can deduce β D1L ` β D2L , and thus
D1 ` D2 . Molina shows that it is possible to apply the excluded middle rule to β D1L until
there are sufficient spiders and enough shading to ensure that each unitary part of the
premise can be transformed into a unitary part of β D2L by erasing spiders and shading.
The completeness result then follows.
ESD2 diagrams
The ESD2 systems extends the SD2 system by allowing Euler based diagrams (rather than
restricting to Venn diagrams) and using additional syntax [44].
B
A
Figure 1.36: An ESD2 diagram.
27
Example 1.1.29 The diagram in figure 1.36 is an ESD2 diagram. It contains a tie
between the spider inside A and the spider inhabiting all the zones in the diagram. The
tie allows us to express that if the two elements, x and y, represented by the spiders that
are joined by the tie satisfy x, y ∈ A − B then those spiders represent the existence of
the same element. The diagram also contains a strand, between the spider inside B and
that inhabiting the entire diagram. The strand indicates that if the two elements, x and
y, represented by the spiders joined by the strand satisfy x, y ∈ B − A then they may
represent the same element. The diagram expresses A ∩ B = ∅ and
∃x1 ∃x2 ∃x3 • x1 ∈ U ∧ x2 ∈ A ∧ x3 ∈ B ∧ (x1 ∈ A ⇒ x1 = x2 ).
ESD2 is not more expressive than SD2. The reasoning rules for ESD2 are those for SD2
along with further rules required for completeness. However, the only rule that applies to
Euler based diagrams allows the diagram to be replaced by an equivalent one in Venn form.
The completeness proof for ESD2 is a ‘bolt on’ to the completeness proof for SD2: the
first step is to prove every ESD2 diagram can be converted into a syntactically equivalent
SD2 diagram, then the completeness of ESD2 follows from the completeness theorem for
SD2.
1.1.8
The Unified Modelling Language
Software engineers use diagrams to model software systems. In object oriented software
systems the Unified Modelling Language (UML) [61] is an industry standard modelling
language which consists of around a dozen notations, all of which are diagrammatic except
one, the Object Constraint Language (OCL). The OCL is, essentially, a textual, stylized
version of first order predicate logic. An example of a UML diagram can be seen in
figure 1.37. The diagram is called a class diagram which shows the relationships between
types or classes in a model of a video rental system. The arrows connecting the boxes
represent relations. The arrow from the class Videostore to the class Copy asserts that
every video store can have any number of copies (the star next to the target of the arrow
provides the cardinality information) in its collection and every copy is in exactly one
video store.
In the video store model, we may wish to specify that any copy object can be in one
of two states: on loan or on shelf. To do this we use a state diagram. The state diagram
in figure 1.38 illustrates the two states and the type of behavior that allows a copy object
28
C la s s D ia g r a m
*
+ s to re s
V id e o s to r e
* + s to re
+ s to re
1
+ c a ta lo g
*
+ m e m b e rs
+ s to re
+ title
T itle
1
*
1
1
0 ..1
1
+ c o p ie s
*
+ c o lle c tio n
C o p y
*
*
+ c u rre n tR e n ta l
0 ..1
1
+ c u rre n t
R e n ta l
+ r e n ta ls
+ re tu rn e d A t
+ r e n ta ls
*
+ r e n ta ls
0 ..1
+ c o p y
+ re n te d A t
D a te
M e m b e r
*
*
*
Figure 1.37: A UML class diagram.
to move from one state to the other. The blob and the arrow targeted on the contour
representing the state ‘On shelf’ indicates that a copy object is initially in the state ‘On
shelf’.
C o p y
b o B r ro o r r w o w e d
O n S h e lf
r R e te u t u r nr n e d
O n L o a n
Figure 1.38: A UML state diagram.
We may also wish to constrain the video store model so that every member who is
currently borrowing a video must be a member of a video store. Formally specified system
operations require pre-conditions and post-conditions. To write pre-conditions and postconditions using the UML requires the OCL.
1.1.9
Constraint diagrams
Formal mathematical methods have not been readily taken up by software engineers because they tend to dislike using mathematical notations [40]. There is, however, a prevalent
use of diagrams to model software systems. To write formal constraints on these systems,
29
text based mathematical notations are currently the only viable option.
Introduced by Kent [40], constraint diagrams, which modify and extend spider diagrams, are designed for use by software engineers to specify formal constraints in object
oriented systems. The constraint diagram in figure 1.39 specifies that no members are
videos and for each member, all the past rentals, of which there is at least one, are videos.
V id e o s
M e m b e rs
p a s t_ r e n ta ls
Figure 1.39: Specifying software systems using constraint diagrams.
Constraint diagrams can also be used to specify system operations. For example,
consider the operation with signature newCopy(t : title, vs : V ideostore) which adds a
new copy that has title t to the collection in the video store vs. The pre-condition for
this operation is that the title t is in the video stores catalogue, asserted by the constraint
diagram in figure 1.40. The post condition for this operation is that the new copy, c, is in
the store vs and has title t, asserted by the constraint diagram in figure 1.41.
T itle
c a ta lo g u e
V id e o s to r e
v s
t
Figure 1.40: The pre-condition for the newCopy operation.
Constraint diagrams increase expressiveness over spider diagrams and are able to express the complex constraints that are required by software engineers. Thus, if we are to
make the constraint diagram language formal (that is, provide formal syntax, semantics
and reasoning rules) then constraint diagrams will provide a practical alternative (once
tool support is developed) to the symbolic notations that must currently be employed.
The language of constraint diagrams extends that of spider diagrams by adding further syntactic elements, including arrows, universal spiders (represented by asterisks) and
derived contours (contours that are not labelled). Arrows, together with their source,
30
T itle
c a ta lo g u e
V id e o s to r e
v s
t
title
C o p y
c
s to r e
Figure 1.41: The pre-condition and the post-condition for the newCopy operation.
target and label, represent properties of relations. Universal spiders represent universal
quantification. Derived contours represent the image of a relation when the domain is
restricted to the source.
A
B
f
Figure 1.42: A constraint diagram.
Example 1.1.30 The constraint diagram in figure 1.42 expresses
∃x ∈ A • {x}.f = B ∧ A ∩ B = ∅
where {x}.f is the relational image of x under the relation f , that is
{x}.f = {b : (a, b) ∈ ({x} × U ) ∩ f }.
A
f
Figure 1.43: A constraint diagram containing a universal spider.
31
Example 1.1.31 The constraint diagram in figure 1.43 contains a universal spider and a
derived contour. The diagram expresses
∀x ∈ A • {x}.f ⊆ U − A
The constraint diagrams in the examples above are unambiguous and easy to interpret.
One difficultly that arises when attempting to formalize constraint diagrams relates to the
ordering of quantifiers. The non-linearity of diagrammatic notations gives rise to these
ordering issues: there is often no clear starting point to interpret a diagram and even once
reading has ‘started’ there are often further choices in reading order to be made, giving
rise to ambiguities. Many of these difficulties are raised in [21] and further discussed in
[23].
A
f
Figure 1.44: Illustrating ambiguities: the ordering of quantifiers.
Example 1.1.32 In figure 1.44, the constraint diagram has two possible interpretations:
∀x ∈ A ∃y ∈ U − A • {x}.f = {y}
and
∃y ∈ U − A ∀x ∈ A • {x}.f = {y}.
These are not semantically equivalent. For example, the first interpretation, where the
universal spider is read before the existential spider, has an empty model3 whereas the
second interpretation does not.
Example 1.1.33 The diagram d1 in figure 1.45 has two semantic interpretations, again
depending on the order in which we read the quantifiers:
∀x ∈ A ∃y ∈ U − A • {x}.f ⊆ U − A ∧ y 6∈ {x}.f
(1a)
3
In most treatments of first order logic, the empty model is not permitted but in the application domain
of constraint diagrams (i.e. software engineering) it is important to allow the empty model.
32
A
A
f
d
f
d
1
2
Figure 1.45: Illustrating ambiguities: the habitats of spiders.
and
∃y ∈ U − A ∀x ∈ A • {x}.f ⊆ U − A ∧ y 6∈ {x}.f
(2a).
The diagram d2 has three readings:
∀x ∈ A ∃y ∈ U − A • {x}.f ⊆ U − A (1b),
∃y ∈ U − A ∀x ∈ A • {x}.f ⊆ U − A (2b)
and
∃y ∈ U − A ∧ ∀x ∈ A • {x}.f ⊆ U − A (3b)
although interpretations (2b) and (3b), whilst syntactically different, are semantically
equivalent: the nesting of the quantifiers in (2b) can be removed. It is possible to interpret
the spiders in d2 independently (interpretation (3b)) whereas the spiders in d1 cannot be
interpreted independently: the nesting of the quantifiers in both interpretations (1a) and
(1b) cannot be removed.
1.2
Outline of thesis
We have seen that many sound and complete diagrammatic systems have been developed,
building on the long tradition of using Venn and Euler diagrams. In this thesis we will
focus on spider diagrams and constraint diagrams.
Existing spider diagram systems are restricted to presenting information in conjunctive
normal form. Moreover, whilst the ESD2 system allows Euler based spider diagrams, the
reasoning rules are not the necessarily the ‘natural’ rules that would be defined for ESD2.
Reasoning in ESD2 can be longwinded due to the need to convert first to Venn form,
reason at that level, then convert back to Euler form. Thus proofs in the ESD2 system
(here, by proof, we mean a finite sequence of diagrams where each diagram in the sequence,
other than the first diagram, is obtained by applying a reasoning rule to the preceding
diagram) are less elegant than they ought to be. It is possible to derive a direct proof
33
writing algorithm from the completeness proof for ESD2. If this proof writing algorithm
was implemented then the proofs constructed would be very long, making them unreadable
in practise. Another consideration is that Venn diagrams look cluttered when more than
three contours are present and can be hard to interpret visually. Not only does this
contribute to the difficulty in reading proofs, but the diagrams themselves, independent
of context in a proof, can be hard to interpret. This all suggests the need for a spider
diagram system whose reasoning rules operate at the Euler diagram level.
B
A
C
D
d
B
A
D
C
d
1
2
Figure 1.46: A Venn diagram and semantically equivalent Euler diagram.
Example 1.2.1 The diagram d1 , in figure 1.46, is a Venn diagram with four contours and
expresses
A ∩ B = ∅ ∧ D ∩ (A ∪ B ∪ C) = ∅.
The Euler diagram d2 is semantically equivalent, and easier to interpret.
In chapter 2 we extend the SD2 system, firstly by allowing Euler based diagrams and
secondly by removing the restriction to conjunctive normal form. We define reasoning rules
for this extended system, largely generalizing those for SD2, along with some new rules.
We prove the soundness and completeness of the system, extending and simplifying the
strategy used for SD2. Our spider diagram system will have more syntactically different
ways of expressing the same semantic information than SD2 (because we are allowing Euler
based diagrams), but it does not increase expressiveness over SD2. The abstract syntax
we give for our spider diagrams is more elegant than that for SD2 and the approach we
take is closer to that used when defining first order predicate logic. This elegance permits
simpler formal descriptions of the reasoning rules.
In chapter 3, we establish the exact expressive power of the spider diagram language.
We prove that the spider diagram language is expressively equivalent to monadic first order
predicate logic with equality, which we shall refer to as ESD (for the Expressiveness of
Spider Diagrams). So, spider diagrams provide a visual way of expressing statements that
can be formulated in a well known fragment of first order predicate logic. Shin proved
34
that her Venn-II system was equivalent to monadic first order predicate logic without
equality [49].
Constraint diagrams increase expressiveness over spider diagrams: constraint diagrams
can express statements involving dyadic predicate symbols. An ambition is to develop
formal semantics, along with a set of sound and, ideally, complete reasoning rules for the
constraint diagram language specified in [23]. However, as mentioned in section 1.1.9,
constraint diagrams are ambiguous and giving them formal semantics is difficult. In order
to overcome these difficulties we will develop, in chapter 4, a simpler, restricted form of
the language, both in terms of syntactic and semantic respects. Syntactically, there are
several types of restriction we enforce. We only allow arrows to be sourced on spiders and
targeted on contours and existential spiders. We also restrict the use of derived contours.
They must be entirely shaded inside and contain no spiders.
To avoid the quantifier ordering problems outlined in section 1.1.9, we will restrict
the semantics of constraint diagrams so that ‘there exists’ takes precedence over ‘for all’.
Reasons for this choice become clear when considering reasoning rules and previous completeness proof strategies. The ability to split spiders plays an important role in the
completeness proof strategy for the SD2 system: to obtain β-diagrams, one must split all
the spiders. If we allow ‘for all’ to take precedence over ‘there exists’ we lose the ability
to split spiders. Together, all these restrictions ensure that the task of defining a sound
and complete set of reasoning rules is a tractable one.
A
B
f
Figure 1.47: A constraint diagram.
Example 1.2.2 In the constraint diagram system that we will develop, the diagram in
figure 1.47 has semantic interpretation
∃x ∈ B − A ∧ ∀x ∈ A − B {x}.f = ∅.
With these restrictions in place, we give formal syntax and semantics for this constraint
diagram language. We give a set of sound and complete reasoning rules for this system.
All of the rules for spider diagrams generalize to this system. We develop new rules that
relate to arrows.
35
A
A
B
g
g
B
d
g
d
1
2
Figure 1.48: Reasoning with constraint diagrams.
Example 1.2.3 The diagram d1 in figure 1.48 asserts that
∃x ∈ B ∀y ∈ A • {y}.g = {x} ∧ |B| = 1.
From this we can deduce
∃x ∈ B ∀y ∈ A • {y}.g = B ∧ {y}.g = {x} ∧ |B| = 1,
asserted by d2 . The reasoning rule that we will call introduction of an arrow: spider to
contour allows us to deduce d2 from d1 .
To prove our constraint diagram system is complete, we extend the strategy used
for SD2. The extension is non-trivial. We regard the development of our constraint
diagram system as an important step towards the development of a system based on the
unrestricted, more expressive, language.
All unitary spider diagrams are satisfiable, but this is not the case for constraint diagrams. We identify syntactic conditions that establish when a unitary constraint diagram
is satisfiable, for the special case where all spiders have a single foot. These conditions,
along with the reasoning rules we will define, are sufficient to identify the satisfiability of
any constraint diagram in our system. To determine the satisfiability of any given constraint diagram, the strategy is to split all the spiders and replace each of the conjuncts by
a disjunct (this final part in the process involves applying a rule that is a generalization of
the combining rule) yielding a disjunction of unitary diagrams where all the spiders have
a single foot. The unitary parts in this disjunction can then be examined to determine
their satisfiability. Thus there is a decision procedure for our constraint diagram system.
In chapter 5 we conclude and discuss further work. A glossary of terms can be found
in the appendix.
36
Chapter 2
Spider Diagrams
In this chapter we modify and extend the spider diagram notations given in [44]. The
diagrams we introduce are based on Euler diagrams – previous spider diagram systems
SD1 and SD2 are based on Venn diagrams. Although not more expressive than SD2, our
Euler based spider diagrams provide a more practical basis to work from: Venn diagrams
look cluttered when more than three contours are present.
We wish to express both disjunctive and conjunctive information, achieved by drawing a collection of diagrams. In all previous spider diagram systems this information is
restricted to conjunctive normal form and we remove this restriction. This more flexible
approach should aid diagrammatic modelling and reasoning. We give a set of reasoning
rules, many of which are extensions of those for the SD2 system, and prove soundness and
completeness results. The completeness proof strategy is based on that given for SD2 in
[44].
2.1
Syntax
There are two different levels of syntax in diagrammatic systems: concrete (or token) syntax and abstract (or type) syntax [31]. Concrete syntax captures the physical representation of a diagram. Abstract syntax ‘forgets’ semantically unimportant spatial relations
between syntactic elements in a concrete diagram, for example how close two contours
are. The structure of a concrete diagram is captured by the abstract syntax, for example
whether one contour contains another.
2.1.1
Informal concrete syntax
Here we give an informal description of the components of a concrete (drawn) spider
diagram. The following paragraph is adapted from [33].
37
A contour is a simple closed plane curve. Each contour is labelled. A boundary
rectangle properly contains all contours. The boundary rectangle is not a contour and
is not labelled. A basic region is the maximal, bounded area of the plane enclosed by a
contour or the boundary rectangle. A region is defined recursively as follows: any basic
region is a region; if r1 and r2 are regions then the union, intersection and difference of
r1 and r2 are regions provided these are non-empty. A zone is a region having no other
region contained within it. A region is shaded if each of its component zones are shaded.
A spider is a tree with nodes (called feet) placed in different zones. The connecting edges
(called legs) are straight line segments. A spider touches a zone if one of its feet is placed
in that zone. It follows that a spider can touch a zone at most once. A spider is said to
inhabit the region which is the union of the zones it touches. The habitat of a spider is
the union of the zones it touches.
A concrete unitary spider diagram is a single boundary rectangle together with
a finite collection of contours, shading and spiders. No two contours in the same unitary
diagram can have the same label.
Example 2.1.1 The concrete spider diagram in figure 2.1 contains three contours, each
with a unique label. The maximal area of the plane enclosed by the contour with label
A is a basic region. The region inside the contour with label B but outside that labelled
C is a zone. The shaded component of the plane is a shaded region (and also a zone).
The tree is a spider that touches two zones and its habitat is the basic region inside the
contour with label A.
A
B
C
Figure 2.1: A concrete spider diagram.
2.1.2
Abstract syntax
To motivate the definition of a unitary diagram we include an example, illustrating how
we describe a concrete diagram at the abstract level.
Example 2.1.2 In figure 2.2, zone z1 is inside the contour with label A and outside the
contours with labels B and C. Thus we can identify z1 by an ordered pair, ({A}, {B, C}).
38
A
z
1
s
1
s
B
d
2
s
3
C
Figure 2.2: Illustrating abstract descriptions: a spider diagram.
Since every contour has a unique label, this process can be performed for all zones in the diagram. The habitat of spider s2 can be identified by the set {({C}, {A, B}), (∅, {A, B, C})}.
However, describing s2 as a set of zones is not enough to identify s2 : s3 has the same habitat. To describe the spiders in d it is sufficient to say how many spiders inhabit each
region.
Notice in the above example we only needed the labels of the contours to identify a
zone. At the abstract level we will identify contours and labels. This differs from the SD2
system, where the distinction between contours and labels is preserved at the abstract
level. We define CL to be a countably infinite set of contour labels. The set CL is the
‘set of labels in the system’. Again this differs from the SD2 system and we will discuss
the advantage of this approach when we introduce the semantics of spider diagrams. In
our examples we will take the letters of the alphabet to be contour labels, with subscripts
if necessary.
A zone will be defined to be an ordered pair of sets of contour labels. In any given
concrete unitary diagram we can identify a zone by just those contour labels that contain
it. However, in our system we wish to present disjunctive and conjunctive information
involving more than one unitary diagram and a containing set (or, equally, an excluding
set) of contour labels is not sufficient to distinguish distinct zones.
A
z
B
A
1
d
z
d
2
1
2
Figure 2.3: Illustrating abstract descriptions: abstract zones.
Example 2.1.3 In figure 2.3, zone z1 is inside the contour with label A and outside the
contour with labels B. We can choose to represent this zone by {A}, the including label
39
set. The zone z2 , could also be represented by {A}, since z2 is contained by precisely the
contour with label A. However, the zones z1 and z2 do not necessarily denote the same set
(z1 represents the set A − B whereas z2 represents the set A) and are different zones. Thus
representing both z1 and z2 at the abstract level by {A} is not sufficient to semantically
interpret z1 and z2 simultaneously. Representing z1 by ({A}, {B}) and z2 by ({A}, ∅) is
sufficient to semantically interpret z1 and z2 simultaneously.
Any diagram contains a finite number of contour labels. We will denote the set of all
finite subsets of a set S by PF(S). Any concrete zone in our system will be described by
an element of PF(CL) × PF(CL).
Definition 2.1.1 Define Z to be the set of zones on CL,
Z = {(a, b) ∈ PF(CL) × PF(CL) : a ∩ b = ∅}.
The set a is called the set of contour labels that contain the zone (a, b) and b is the set of
contour labels that exclude (a, b). We define c(a, b) = a and e(a, b) = b. Define R to be
the set of regions on CL, R = PZ.
Definition 2.1.2 An abstract unitary spider diagram, d, (with labels in CL) is a
tuple hL, Z, Z ∗ , SIi whose components are defined as follows.
1. L = L(d) ∈ PF(CL) is a finite set of contour labels.
2. Z = Z(d) ⊆ {(a, L − a) : a ⊆ L} (Z(d) ⊆ Z) is a set of zones such that
(i) for each label, l, in L(d) there is a zone, (a, L − a), in Z(d) such that l is in a
and
(ii) the zone (∅, L(d)) is in Z(d).
We define R = R(d) = PZ − {∅} to be the set of regions.
3. Z ∗ = Z ∗ (d) ⊆ Z is a set of shaded zones. We define R∗ = R∗ (d) = PZ ∗ − {∅} to
be the set of shaded regions.
4. SI = SI(d) ⊂ Z+ × R(d) is a finite set of spider identifiers such that
∀(n1 , r1 ), (n2 , r2 ) ∈ SI • r1 = r2 ⇒ n1 = n2
If (n, r) ∈ SI we say there are n spiders with habitat r.
40
Additionally, the diagram ⊥= h∅, ∅, ∅, ∅i is a unitary spider diagram.
Every contour in a concrete diagram contains at least one zone. Condition 2 (i) ensures
that abstract diagrams preserve this property. In any concrete diagram, the zone inside
the boundary rectangle but outside all the contours is present. We preserve this property
at the abstract level, by condition 2 (ii). Notice at the abstract level we have also ‘lost’
the boundary rectangle. In a drawn diagram the boundary rectangle simply represents
‘where the diagram stops’ and thus is not required at the abstract level. In fact, even the
set of labels, L(d), is redundant from the definition above. We could just state that any
zone in Z(d) forms a partition of the same label set and then deduce L(d). The two sets
of labels used to identify a zone will always partition the set of labels used in the diagram.
In the SD2 system the idea of a spider was captured differently at the abstract level.
A diagram had an arbitrary finite set of spiders, which we shall denote SD2S(d), and a
habitat mapping, η : SD2S(d) → R(d). With the approach taken in our system, we are
stating how many spiders inhabit each region.
With the SD2 definition of an abstract diagram, most concrete unitary diagrams have
(infinitely) many abstractions. Each of these abstractions would be equivalent and effectively we would be working with equivalence classes of diagrams. With the definition
we give this is no longer the case: every concrete unitary diagram has a unique abstraction. Thus we do not need the notion of isomorphism between abstract unitary diagrams:
diagrams we would consider isomorphic are equal.
Example 2.1.4 The concrete diagram in figure 2.2 has abstract description d = hL, Z, Z ∗ , SIi
where L, Z, Z ∗ and SI are as follows.
1. The set of contour labels is L(d) = {A, B, C}.
2. The set of zones is
Z(d) = {(∅, {A, B, C}), ({A}, {B, C}), ({A, B}, {C}), ({C}, {A, B})}
where each of the four ordered pairs corresponds to exactly one of the four zones
present in the concrete diagram.
3. The set of shaded zones is
Z ∗ (d) = {({C}, {A, B})}
corresponding to the shaded zone in the concrete diagram.
41
4. The set of spider identifiers is
SI(d) = {(1, {({A, B}, {C})}), (2, {(∅, {A, B, C}), ({C}, {A, B})})}
since there are three spiders in the concrete diagram – s1 with habitat {({A, B}, {C})},
the others, s2 and s3 , with habitat {(∅, {A, B, C}), ({C}, {A, B})}.
Definition 2.1.3 Let d be a unitary diagram. We define the Venn zone set, denoted
V Z(d), to be
V Z(d) = {(a, L − a) : a ⊆ L}.
The diagram d is said to be in Venn form if Z(d) = V Z(d). If z ∈ V Z(d) − Z(d) we say
z is missing from d.
A diagram in Venn form is one where all possible zones are present, given the labels
in the diagram, and is essentially a unitary SD2 diagram.
It is useful to talk about the number of spiders inhabiting and touching regions. Spiders
represent the existence of elements and regions represent sets – thus we would like to know
how many elements we have represented in each region. Firstly we define the set of spiders
for a unitary diagram.
Definition 2.1.4 A spider is of the form si (r) where i is an integer and r is a region.
We define S(d) to be the set of spiders for unitary diagram d where
S(d) = {si (r) : (n, r) ∈ SI(d) ∧ 1 ≤ i ≤ n}.
We define a mapping,
η : S(d) → R(d)
by
η(si (r)) = r
and say spider si (r) has habitat η(si (r)).
For any region in a unitary diagram d it is the case that, if (n, r) ∈ SI(d) then there
are exactly n elements in S(d) of the form si (r). We note that given the set of spiders for
a diagram we can deduce the set of spider identifiers.
Definition 2.1.5 Let r be a region of unitary diagram d. The set of (complete) spiders
inhabiting r in d is denoted by S(r, d) where
S(r, d) = {s ∈ S(d) : η(s) ⊆ r}.
42
The set of spiders touching r in d is denoted by T (r, d) where
T (r, d) = {s ∈ S(d) : η(s) ∩ r 6= ∅},
adapted from [44]. For any region r0 not in d we define S(r0 , d) = ∅ and T (r0 , d) = ∅.
Let R = {r1 , r2 , ..., rn } be a set of regions. Then we define the set of spiders touching all
regions in R to be
T (R, d) = {s ∈ S(d) : η(s) ∩ r1 6= ∅ ∧ ... ∧ η(s) ∩ rn 6= ∅}.
If R = ∅ then we define T (R, d) = ∅.
Example 2.1.5 In figure 2.2, taking r = {({A, B}, {C}), ({C}, {A, B})} we have
S(r, d) = {s1 ({({A, B}, {C})})}
and
T (r, d) = S(d).
In the SD2 system a set of unitary diagrams is defined to be a compound diagram,
whose semantic information is the disjunction of that given by the unitary diagrams. A
multi-diagram is defined to be a set of compound diagrams. A multi-diagram’s semantic information is the conjunction of that given by the compound diagrams. Thus SD2
diagrams are restricted to presenting information in conjunctive normal form. Here we
present a more flexible system and allow the connection of diagrams using operations
analogous to ∨ and ∧ in logic.
Definition 2.1.6 An (abstract) spider diagram is defined as follows.
1. Any unitary diagram is a spider diagram.
2. If D1 and D2 are finite bags of spider diagrams then t(D1 ] D2 ) (pronounced D1 or
D2 ) and u(D1 ] D2 ) (pronounced D1 and D2 ) are spider diagrams, where D1 ] D2
is the bag union of D1 and D2 .
At the concrete level, some properties come for free, such as commutativity and associativity. These properties are captured at the abstract level. We will adopt the convention
of writing (D1 t D2 ) to mean diagram D1 or D2 and, similarly (D1 u D2 ) . Another convention will be to denote unitary diagrams by d and arbitrary diagrams, which we will
43
refer to as compound diagrams, by D. We will also adopt the standard convention of
omitting brackets where no ambiguity arises. For example, (D1 u D2 ) will be written as
D1 u D2 and D1 t (D2 t D3 ) will be written as D1 t D2 t D3 .
A
B
d
1
A
C
d
A
2
d
B
3
Figure 2.4: A compound diagram.
Example 2.1.6 The diagram in figure 2.4 is a concrete representation of d1 u (d2 t d3 ).
It is useful to define the set of all spider diagrams, D. The approach taken to define D
is the same as that in propositional calculus to define the set of all propositions (see [6]).
Definition 2.1.7 We define D inductively as follows:
1. D0 is the set of all unitary diagrams with labels in CL,
2. Dn+1 = Dn ∪ {(D1 ¤D2 ) : D1 , D2 ∈ Dn ∧ ¤ ∈ {t, u}} and
3. D =
S
Dn .
n∈N
2.1.3
Concrete representations of abstract diagrams
In this section we formalize the concrete syntax for our spider diagram system (although
the concrete syntax can be viewed as an abstract syntax that closely captures drawn
representations of spider diagrams). We note here that no other section in this thesis
depends on this section.
The problem of ‘generating’ an abstract description of a concrete diagram is a relatively
simple one: given a drawn diagram one can easily list the labels, the zones and give
a set of spider identifiers that achieves what is required. However, creating a concrete
diagram from an abstract description is, in general, non-trivial. Flower and Howse begin
to address this issue in [14], developing an algorithm to draw concrete Euler diagrams
from an abstract description. They give some well-formedness rules that prevent some
44
abstract diagrams being drawn. For example, they do not allow contours to meet at triple
points. They implement the algorithm as a Java application. The layout of the diagrams
produced by this implementation can be improved by using layout metrics [18]. In [18] the
authors give a set of metrics for assessing the quality of the appearance of a drawn Euler
diagram. Iterative methods can be used to move the placement of contours to improve the
visual appearance. A Java implementation that utilizes these metrics and hill climbing
techniques to draw visually pleasing Euler diagrams has been developed by the authors in
[18]. The ‘generating Euler diagrams’ work is extended in [46] to include the embedding
of graphs in Euler diagrams, thus automating the drawing of spider diagrams.
We now give a formal definition of concrete spider diagrams.
ˆ (with labels in CL) is a tuple
Definition 2.1.8 A concrete unitary spider diagram, d,
dˆ = hĈ, β̂, Ẑ, Ẑ ∗ , L̂, ˆl, Ŝ, η̂i whose components are defined as follows.
1. Ĉ is a finite set of simple closed plane (Jordon) curves in the plane, R2 , called
contours. The boundary rectangle β̂ is also a simple closed curve, usually in
the form of a rectangle, but is not a member of Ĉ. For any contour ĉ (including
β̂) we denote the interior (bounded) and exterior (unbounded) components of R2 − ĉ
by ι(ĉ) and ²(ĉ) respectively; such components exist by the Jordan Curve Theorem.
Each contour distinct from β̂ lies within, and does not touch, the boundary rectangle:
ĉ ⊂ ι(β̂). The set Ĉ forms an Euler diagram which has the following properties.
(a) Contours meet transversely.
(b) Each contour intersects with every other contour an even number of times. This
can be zero times.
(c) No two contours have a point in common without crossing at that point.
S
(d) Each component of R2 −
ĉ is the intersection of ι(ĉ) for all contours ĉ in
ĉ∈Ĉ
some subset X of Ĉ and ²(ĉ) for all contours ĉ in the complement of X:
\
ι(ĉ) ∩
ĉ∈X
\
²(ĉ).
ĉ∈Ĉ−X
2. A zone is the intersection of a component of R2 −
S
ĉ with ι(β̂); Ẑ is the set of
ĉ∈Ĉ
zones. Ẑ ∗ is the set of shaded zones. Define R̂ = PẐ − {∅} to be the set of
regions and R̂∗ = PẐ ∗ − {∅} to be the set of shaded regions.
45
3. L̂ is the set of contour labels. The bijection ˆl : Ĉ → L̂ returns the label of a contour
and L̂ ⊆ CL.
4. Ŝ is a finite set of plane trees, called spiders, whose nodes, called feet, are represented by filled in circles and lie within Ẑ that satisfy the following properties.
(a) Each spider has at most one foot in each zone.
(b) The edges (called legs) of each spider are straight line segments.
(c) No two spiders have a foot in common.
5. The function η̂ : Ŝ → R̂ returns the habitat of each spider, η̂(ŝ) = {ẑ ∈ Ẑ :
ŝ has a foot in ẑ},
adapted from [30].
With this definition of a concrete unitary diagram not every abstract diagram has a
concrete representation.
Example 2.1.7 The abstract diagram d = hL, Z, Z ∗ , SIi where
1. L(d) = {A, B},
2. Z(d) = {(∅, {A, B}), ({A, B}, ∅)},
3. Z ∗ (d) = ∅ and
4. SI(d) = ∅
is perhaps the simplest example of an abstract diagram that has no well-formed concrete
representation. The contours would need to coincide.
Indeed, the task of classifying which abstract spider diagrams have a concrete representation is challenging. If the underlying Euler diagram of an abstract spider diagram has
a concrete representation then the spider diagram also has a concrete representation and
we say that the diagram is drawable. In [14], the authors classify which Euler diagrams are
drawable subject to strict well-formedness conditions. Figure 2.5 shows three diagrams
that are not permitted as concrete diagrams in [14]. The contours in the first diagram
do not meet transversely. In the second diagram there is a triple point: the point where
the contours A, B and C intersect. The third diagram contains disconnected zones: for
46
A
B
A
B
A
B
C
Figure 2.5: Ill-formed diagrams.
example, the part of the plane that can be described as ‘inside A and outside B’ is not
connected.
Every concrete Euler diagram has a planar dual graph. In the dual graph, each zone
gives rise to a vertex and two vertices are connected by an edge if and only if the corresponding zones are topologically adjacent in the plane. If two vertices are adjacent in the
dual graph then the symmetric difference of the containing label sets for the corresponding
zones contains precisely one element. This element is the label of the contour that borders
the two zones. The edges in the dual graph are labelled by this element.
A
A
B
B
( { A } ,{ B } )
( { A ,B } ,{ } )
d
( { } ,{ A ,B } )
G
Figure 2.6: The dual graph.
Example 2.1.8 The diagram in figure 2.6 has dual graph G. Each zone labels the corresponding vertex of G.
Flower and Howse prove that the dual graph of a concrete diagram satisfies the connectivity conditions (given their well-formedness rules).
Definition 2.1.9 An abstract labelled graph hL(G), V (G), E(G)i satisfies the connectivity conditions if it is connected and, for all labels l ∈ L(G), the subgraphs G+ (l) generated
by vertices whose label (X, Y ) satisfies l ∈ X and G− (l) generated by vertices whose label
(X, Y ) satisfy l ∈ Y , [14].
Definition 2.1.10 An abstract diagram d has superdual G = hL(d), Z(d), E(G)i where
E(G) contains all possible edges ((X, Y ), (P, Q)) where |(X − Y ) ∪ (Y − X)| = 1, [14].
47
In then follows that an abstract diagram d is not drawable if the superdual of d fails
the connectivity conditions. A labelled graph which passes the connectivity conditions
is potentially the dual graph of a concrete diagram, but only if it is planar. If it is not
planar, then it may be possible to remove edges and obtain a planar graph that passes
the connectivity conditions. As an example, edges must be removed from the superdual
of the abstract diagram Venn-4 (the Venn diagram on four contours) to produce a planar
dual graph of any concrete Venn diagram on four contours. The following example of an
undrawable diagram is obtained from [14].
Example 2.1.9 Consider the abstract diagram d with labels {A, B, C, D, E} and fifteen
zones
1. (∅, {A, B, C, D, E}),
2. ({B}, {A, C, D, E}),
3. ({C}, {A, B, D, E}),
4. ({D}, {A, B, C, E}),
5. ({E}, {A, B, C, D}),
6. ({A, B}, {C, D, E}),
7. ({A, C}, {B, D, E}),
8. ({A, D}, {B, C, E}),
9. ({A, E}, {B, C, D}),
10. ({A, B, C}, {D, E}),
11. ({A, B, D}, {C, E}),
12. ({A, B, E}, {C, D}),
13. ({A, C, D}, {B, E}),
14. ({A, C, E}, {B, D}),
15. ({A, D, E}, {B, C}).
The superdual of d is not planar: it is homeomorphic to K5 , the complete graph on 5
vertices. The removal of any edge results in a graph that fails the connectivity conditions.
48
Given a diagram d with a superdual that passes the connectivity conditions, the task
is to remove edges (if necessary), without causing the connectivity conditions to fail (if
possible) until a planar graph is found. This planar graph can then be embedded in the
plane without edges crossing and used to construct a concrete representation of d. To
summarize, an abstract Euler diagram is drawable (given the well-formedness conditions
of Flower and Howse) if and only if there exists a planar subgraph, H, of the superdual,
G, such that V (H) = V (G) and H passes the connectivity conditions. Further research is
needed to classify all drawable diagrams, given weaker well-formedness conditions.
Now we have formal definitions of both abstract and concrete unitary diagrams we give
mappings between these two syntactic levels. The approach taken here is modified from
that taken in [30] to account for differences between the definitions given for an abstract
diagram. Initially we define an equivalence relation, ≡η̂ , on the set of spiders of concrete
unitary diagram dˆ by ŝ1 ≡η̂ ŝ2 if and only if ŝ1 and ŝ2 have the same habitat. The set of
ˆ and we define, for [ŝ] ∈ SI(
ˆ
ˆ = SI(
ˆ d)
ˆ d),
equivalence classes under this relation is denoted SI
η̂([ŝ]) = η̂(ŝ0 ) where ŝ0 ∈ [ŝ]. We will also define a mapping, ab (for abstraction), from the
set of concrete unitary diagrams to the set of abstract unitary diagrams.
Definition 2.1.11 Let dˆ = hĈ, β̂, Ẑ, Ẑ ∗ , L̂, ˆl, Ŝ, η̂i be a concrete diagram. Let d = hL, Z, Z ∗ , SIi
ˆ denoted ab(d)
ˆ = d, if and only if
be an abstract diagram. Then d is an abstraction of d,
the following hold.
1. The contour labels are the same: L̂ = L.
2. There exists a bijection µ1 : Ẑ → Z defined by
µ1 (ẑ) = ({ˆl(ĉ) : ẑ ⊆ ι(ĉ) ∧ ĉ ∈ Ĉ}, {ˆl(ĉ) : ẑ ⊆ ²(ĉ) ∧ ĉ ∈ Ĉ})
such that
(a) each zone ẑ in dˆ is shaded in dˆ if and only if µ1 (ẑ) is shaded in d,
ˆ → SI that satisfies
(b) there exists a bijection, µ2 : SI
¡
¡
¢¢
ˆ • µ2 ([ŝ]) = |[ŝ]|, µ1 η̂([ŝ])
∀ [ŝ] ∈ SI
where µ1 : R̂ → R is the natural extension of µ1 : Ẑ → Z.
If d is an abstraction of dˆ then we say dˆ is an instantiation of d.
49
A
A
B
d
B
d
1
2
Figure 2.7: Two concrete diagrams.
Example 2.1.10 The abstract diagram d = hL, Z, Z ∗ , SIi where
1. L(d) = {A, B},
2. Z(d) = {(∅, {A, B}), ({A}, {B}), ({A, B}, ∅)},
3. Z ∗ (d) = {({A, B}, ∅)} and
4. SI(d) = {(1, {({A, B}, ∅)}), (1, {({A, B}, ∅), (∅, {A, B})})}
is an abstraction of both d1 and d2 in figure 2.7, that is ab(d1 ) = ab(d2 ) = d. Thus the
mapping ab is not injective. We can think of d1 and d2 as being equivalent.
The definition of a concrete diagram and the abstraction mapping extend to compound
diagrams in the obvious way. We use the box notation introduced in [15]. The box is a
bounding box containing two (or more) rectangles and we shall annotate the box with a
label, illustrated in figure 2.8. The labels we use will be either t or u.
Label
Figure 2.8: The box template.
2.2
Semantics
In this section we formalize the semantics of spider diagrams. This formalization is based
on that given for the SD2 system. Regions represent sets. We can express lower, and in the
case of shaded regions, upper bounds on the cardinalities of the sets we are representing
as follows. If region r is inhabited by n spiders in diagram d then d expresses that the set
represented by r contains at least n elements. If r is shaded and touched by m spiders in
50
d then d expresses that there is at most m elements in the set represented by r. Thus,
if d has a shaded, untouched region, r, then d expresses that r represents the empty set.
Additionally to the SD2 system, missing zones represent the empty set, as in the ESD2
system.
In [44] the author defines a set assignment to contours as a mapping from contours for
a given diagram to subsets of some given set, U , and extends this mapping to zones and
regions in a unitary diagram. We modify these definitions to account for the identification
of contours and labels at the abstract level. The mapping from contours to subsets of U in
the SD2 system was defined for unitary diagrams, compound diagrams and multi-diagrams
separately. We adapt the approach, by mapping from CL to subsets of some given set.
The images of the contour labels determine which sets the zones and regions represent.
Thus we assume that no contour labels are zones or regions and no zones are regions.
Definition 2.2.1 An interpretation of contour labels, zones and regions, or simply an interpretation, is a pair m = (U, Ψ) where U is a set and Ψ : CL ∪ Z ∪ R → PU
is a function mapping contour labels to subsets of U such that the images of the zones and
regions are completely determined by the images of the contour labels as follows:
1. for each zone (a, b),
Ψ(a, b) =
\
Ψ(l) ∩
T
Ψ(l) = U =
l∈∅
2. for each region r,
Ψ(r) =
and we define Ψ(∅) =
S
Ψ(l)
l∈b
l∈a
where Ψ(l) = U − Ψ(l) and we define
\
T
Ψ(l) and
l∈∅
[
Ψ(z)
z∈r
Ψ(z) = ∅.
z∈∅
For simplicity, we will write Ψ : R → PU when strictly speaking we mean Ψ : CL∪Z ∪R →
PU .
One advantage of ‘choosing’ our contour labels from the set CL is that we have a set
assignment to contour labels for any diagram we wish to consider and not just those in,
say, a multi-diagram.
Example 2.2.1 Define Ψ : R → PN by Ψ(A) = {1, 2, 3}, Ψ(B) = {3, 4, 10} and for all
l ∈ CL − {A, B}, Ψ(l) = ∅. Then the pair m = (N, Ψ) is an interpretation. In figure 2.9,
zone z1 represents the set {3} since Ψ(z1 ) = Ψ(A) ∩ Ψ(B). The region {z1 , z2 } represents
51
A
z
1
z
B
2
Figure 2.9: Illustrating interpretations: a spider diagram.
{3, 4, 10}. The zone z2 represents {4, 10} and this is disjoint from the set represented by
z1 . It is also the case that Ψ({z1 } ∪ {z2 }) = Ψ({z1 }) ∪ Ψ({z2 }), Ψ({z1 , z2 } ∩ {z1 }) =
Ψ({z1 , z2 }) ∩ Ψ({z1 }) and Ψ({z1 , z2 } − {z1 }) = Ψ({z1 , z2 }) − Ψ({z1 }).
In [44] the author shows that the function Ψ is well behaved with respect to the
intended semantics, by proving the following two lemmas. Whilst the proofs are for the
SD2 system, they readily extend to the more general case here.
Lemma 2.2.1 Let z1 and z2 be zones of unitary diagram d and let m = (U, Ψ) be an
interpretation. Then
z1 6= z2 ⇒ Ψ(z1 ) ∩ Ψ(z2 ) = ∅.
That is distinct zones in the same unitary diagram represent disjoint sets, [44].
Lemma 2.2.2 Let r1 and r2 be regions of unitary diagram d and let m = (U, Ψ) be an
interpretation. Then
1. Ψ(r1 ∪ r2 ) = Ψ(r1 ) ∪ Ψ(r2 ),
2. Ψ(r1 ∩ r2 ) = Ψ(r1 ) ∩ Ψ(r2 ),
3. Ψ(r1 − r2 ) = Ψ(r1 ) − Ψ(r2 ) and
4. r1 ⊆ r2 ⇒ Ψ(r1 ) ⊆ Ψ(r2 ),
[44].
As in previous spider diagram systems we introduce a semantics predicate. The semantics predicate will allow us to establish whether an interpretation satisfies a diagram
(the satisfaction relation is formalized in section 2.3). We combine the semantics predicate
for unitary SD2 diagrams with the plane tiling condition from ESD2, both given in [44].
Definition 2.2.2 Let D be a spider diagram and let m = (U, Ψ) be an interpretation. We
define the semantics predicate, PD (m), of D. If D (6=⊥) is a unitary diagram then
PD (m) is the conjunction of the following three conditions.
52
(i) Distinct Spiders Condition. The cardinality of the set represented by each region
r in d is greater than or equal to the number of complete spiders inhabiting r:
^
|Ψ(r)| ≥ |S(r, d)|.
r∈R(d)
(ii) Shading Condition. The cardinality of the set denoted by each shaded region r in
d is less than or equal to the number of spiders touching r:
^
|Ψ(r)| ≤ |T (r, d)|.
r∈R∗ (d)
(iii) Plane Tiling Condition. All elements are in sets represented by zones:
[
Ψ(z) = U.
z∈Z(d)
If D =⊥ then P⊥ (m), is false. If D = D1 t D2 then PD (m) = PD1 (m) ∨ PD2 (m). If
D = D1 u D2 then PD (m) = PD1 (m) ∧ PD2 (m).
A
d
C
z
B
B
1
z
1
4
A
z
z
2
d
3
2
Figure 2.10: Illustrating the semantics predicate.
Example 2.2.2 Define Ψ : CL → PN by Ψ(A) = {1}, Ψ(B) = {1, 2, 3}, Ψ(C) = {3} and
for all l ∈ CL − {A, B, C}, Ψ(l) = ∅. The pair m1 = (N, Ψ) is an interpretation. In figure
2.10, zone z1 represents the set {2} since Ψ(z1 ) = Ψ(B) ∩ Ψ(A) ∩ Ψ(C). If the semantics
predicate for d1 is to be true it must be that |Ψ(z1 )| ≤ 0. This is false and it follows that
d1 fails the shading condition, so Pd1 (m) is false. It is also the case that d1 fails the plane
S
tiling condition since
Ψ(z) = N − {1}.
z∈Z(d1 )
We now consider the diagram d2 . The zone z2 represents the set {1}. The zone z2
contains, and is touched by, one spider thus z2 does not cause the distinct spiders condition
or the shading condition to be falsified. It is easy to verify that all other regions satisfy
the distinct spiders condition and, since {z2 } is the only shaded region, it follows that the
53
distinct spiders condition and the shading condition hold for d2 . To check the plane tiling
condition we evaluate Ψ({z2 , z3 , z4 }). We see that Ψ(z2 ) = {1}, Ψ(z3 ) = {2, 3} and
Ψ(z4 ) = N ∩ (N − {1, 2, 3}) ∩ (N − {1}) = N − {1, 2, 3}.
Thus Ψ({z2 , z3 , z4 }) = N and the plane tiling condition holds. Hence Pd2 (m) is true.
There are two conditions equivalent to the plane tiling condition: the missing zones
condition [16] and the containment condition.
Missing Zones Condition. Let d be a unitary diagram and let m = (U, Ψ) be an
interpretation. All the zones missing from d represent the empty set:
[
Ψ(z) = ∅.
z∈V Z(d)−Z(d)
Lemma 2.2.3 The plane tiling condition and the missing zones condition are equivalent
[16].
Containment Condition. Let d be a unitary diagram and let m = (U, Ψ) be an interpretation. The set represented by each basic region is the same as that represented by its
containing contour:
^
[
Ψ(l) =
Ψ(a, b).
(a,b)∈Z(d)∧l∈a
l∈L(d)
Lemma 2.2.4 The plane tiling condition and the containment condition are equivalent.
Proof Let d be a unitary diagram and let m = (U, Ψ) be an interpretation. Assume
the plane tiling condition for d. Let l ∈ L(d). Now, for any zone (a, b), l ∈ a implies
Ψ(a, b) ⊆ Ψ(l) by the definition of Ψ. Therefore
[
Ψ(a, b) ⊆ Ψ(l).
(a,b)∈Z(d)∧l∈a
Suppose, for a contradiction,
S
Ψ(a, b) 6= Ψ(l). Then there exists x ∈ Ψ(l)
(a,b)∈Z(d)∧l∈a
such that x 6∈ Ψ(a, b) for all (a, b) ∈ Z(d) such that l ∈ a. By the plane tiling condition,
x ∈ Ψ(a0 , b0 ) for some (a0 , b0 ) ∈ Z(d) where l 6∈ a0 (so l ∈ b0 ). Now x ∈ Ψ(a0 , b0 ) implies
x ∈ Ψ(l) since Ψ(a0 , b0 ) ⊆ Ψ(l), reaching a contradiction. Hence the containment condition
holds for d.
Conversely, assume the containment condition for d. We deduce
[
[
[
Ψ(a, b)
(1).
Ψ(l) =
l∈L(d)
l∈L(d)
(a,b)∈Z(d)∧l∈a
54
Consider (∅, L(d)) ∈ Z(d). This is the only zone in d that is not contained by some contour
label. Thus, it is the only zone in d not included in the union given on the right hand side
of (1). Therefore
[
[
Ψ(l) =
l∈L(d)
Ψ(a, b)
(2).
(a,b)∈Z(d)−{(∅,L(d))}
We now show that (∅, L(d)) represents the set that contains all the elements of U that are
not elements of any set represented by a contour label of d. We have
Ψ(∅, L(d)) =
\
l∈∅
=
\
Ψ(l) ∩
\
Ψ(l)
by the definition of Ψ
l∈L(d)
(U − Ψ(l))
since
l∈L(d)
\
Ψ(l) = U.
l∈∅
Therefore
Ψ(∅, L(d)) = U −
[
Ψ(l).
l∈L(d)
From (2), we deduce
[
Ψ(∅, L(d)) = U −
Ψ(a, b).
(a,b)∈Z(d)−{(∅,L(d))}
It follows that
Ψ(∅, L(d)) ∪
[
Ψ(a, b) =
(a,b)∈Z(d)−{(∅,L(d))}
[
Ψ(z) = U.
z∈Z(d)
Therefore the plane tiling condition holds for d. Hence the plane tiling condition and the
containment condition are equivalent. QED
The semantics predicate for the SD2 system did not include the plane tiling condition. If a unitary diagram is in Venn form then the plane tiling condition holds in any
interpretation. To prove this, we require the following result.
Lemma 2.2.5 Let (a, b) be a zone, l∗ be a contour label not in a ∪ b and let m = (U, Ψ)
be an interpretation. Then Ψ(a, b) = Ψ(a ∪ {l∗ }, b) ∪ Ψ(a, b ∪ {l∗ }).
Proof Follows from the definition of Ψ(a, b). QED
Lemma 2.2.6 Let d (6=⊥) be a unitary diagram and m = (U, Ψ) be an interpretation. If
d is in Venn form then the plane tiling condition for d is true.
Proof The proof follows by induction on the number of contour labels and from lemma 2.2.5.
QED
55
2.3
Satisfiability and the consequence relation
We now formalize the notions of satisfiability and logical consequence for the system.
Definition 2.3.1 Let D be a spider diagram and m = (U, Ψ) be an interpretation. We
say m satisfies D, denoted m |= D, if and only if PD (m) is true. The diagram D is
satisfiable, if and only if there exists an interpretation that satisfies D. Any interpretation
that satisfies D is called a model for D.
Definition 2.3.2 Diagrams d1 and d2 are semantically equivalent, denoted d1 ≡ d2 ,
if and only if d1 and d2 have the same models.
We will show, using a proof strategy adopted from [44], that every unitary diagram (except
⊥) is satisfiable. Not every compound diagram is satisfiable.
Example 2.3.1 In example 2.2.2 we saw that Pd2 (m) was true with the given interpretation, m. Thus m satisfies d2 and m is a model for d2 .
We show that every unitary diagram (except ⊥) has a model by constructing an interpretation that will ensure the semantics predicate is true. Firstly we require a suitable
universal set. If an interpretation is to satisfy a diagram, the universal set must contain
at least as many elements as there are spiders in the diagram. Thus we shall use the set
of spiders, S(d), as the universal set. We will take a choice function, f , from the set of
spiders to the set of zones with the property that f (s) is a zone in the habitat of s. Using
this choice function, we will define an interpretation. The zone that a spider, s, maps to
under f will be the zone that represents a subset of S(d) containing s. We now illustrate
the process of constructing a model by example. Recall that c(z) is the set of contour
labels that contain z.
A
s
s
1
C
s
3
B
2
d
Figure 2.11: Satisfiability: mapping zones to sets of spiders.
56
Example 2.3.2 For the diagram in figure 2.11 we define f (s1 ) = ({A, B}, {C}), f (s2 ) =
({A, B, C}, ∅) and f (s3 ) = ({B, C}, {A}). Given f and taking S(d) as the universal set,
we define Ψ as follows:
½
Ψ(l) =
{s ∈ S(d) : l ∈ c(f (s))} if l ∈ L(d)
∅
otherwise.
Then Ψ(A) = {s ∈ S(d) : A ∈ c(f (s))} = {s1 , s2 }, Ψ(B) = {s ∈ S(d) : B ∈ c(f (s))} =
{s1 , s2 , s3 } and Ψ(C) = {s ∈ S(d) : C ∈ c(f (s))} = {s2 , s3 }. Consider z = ({A, B}, {C}).
By definition,
Ψ(z) =
\
\
Ψ(l) ∩
l∈{A,B}
Ψ(l) = {s1 }.
l∈{C}
It is the case that
\
{s ∈ S(d) : l ∈ c(f (s))} = {s1 , s2 }
l∈{A,B}
= {s ∈ S(d) : c(f (s)) ⊇ c(z)}
It is also the case that
\
S(d) −
{s ∈ S(d) : l ∈ c(f (s))} = {s1 }
l∈{C}
= {s ∈ S(d) : c(f (s)) ⊆ c(z)}
From this we see Ψ(z) = {s ∈ S(d) : f (s) = z}.
Lemma 2.3.1 Let d (6=⊥) be a unitary diagram and let f : S(d) → Z(d) be a function
such that f (s) ∈ η(s). Given f , we define an interpretation m = (S(d), Ψ) where Ψ is
defined as follows:
½
Ψ(l) =
{s ∈ S(d) : l ∈ c(f (s))} if l ∈ L(d)
∅
otherwise.
Then, for any zone, z, in Z(d),
Ψ(z) = {s ∈ S(d) : f (s) = z}.
Proof Let z ∈ Z(d). Then by the definition of Ψ(z) we have
Ψ(z) =
\
{s ∈ S(d) : l ∈ c(f (s))} ∩
l∈c(z)
\
S(d) − {s ∈ S(d) : l ∈ c(f (s))} (1).
l∈L(d)−c(z)
We will show that
\
{s ∈ S(d) : l ∈ c(f (s))} = {s ∈ S(d) : c(f (s)) ⊇ c(z)}.
l∈c(z)
57
Let s1 ∈
T
{s ∈ S(d) : l ∈ c(f (s))}. Then, for each l ∈ c(z), l ∈ c(f (s1 )), that is
l∈c(z)
c(f (s1 )) ⊇ c(z). Therefore
s1 ∈ {s ∈ S(d) : c(f (s)) ⊇ c(z)}
so
\
{s ∈ S(d) : l ∈ c(f (s))} ⊆ {s ∈ S(d) : c(f (s)) ⊇ c(z)}.
l∈c(z)
Let s2 ∈ {s ∈ S(d) : c(f (s)) ⊇ c(z)}. Then c(f (s2 )) ⊇ c(z) and it follows that, for all
l ∈ c(z), s2 ∈ {s ∈ S(d) : l ∈ c(f (s))}. Therefore
s2 ∈
\
{s ∈ S(d) : l ∈ c(f (s))},
l∈c(z)
so
\
{s ∈ S(d) : l ∈ c(f (s))} ⊇ {s ∈ S(d) : c(f (s)) ⊇ c(z)}
l∈c(z)
and we obtain
\
{s ∈ S(d) : l ∈ c(f (s))} = {s ∈ S(d) : c(f (s)) ⊇ c(z)}
(2).
l∈c(z)
A similar argument shows that
\
S(d) − {s ∈ S(d) : l ∈ c(f (s))} = {s ∈ S(d) : c(f (s)) ⊆ c(z)}
(3).
l∈L(d)−c(z)
From (1), (2) and (3) we deduce that
Ψ(z) = {s ∈ S(d) : c(f (s)) ⊇ c(z)} ∩ {s ∈ S(d) : c(f (s)) ⊆ c(z)}
= {s ∈ S(d) : c(f (s)) = c(z)}
= {s ∈ S(d) : f (s) = z}
Hence Ψ(z) = {s ∈ S(d) : f (s) = z}. QED
Corollary 2.3.1 Let d (6=⊥) be a unitary diagram, let f : S(d) → Z(d) be a function such
that f (s) ∈ η(s). Given f , we define m = (S(d), Ψ) as in lemma 2.3.1. Then for any
region, r ∈ R(d),
Ψ(r) = {s ∈ S(d) : f (s) ∈ r}.
Using the above interpretation we are able to show that every unitary diagram has a
model. The approach is similar to that used by Molina in [44] for the SD2 system.
58
Theorem 2.3.1 Every unitary diagram except ⊥ has a model.
Proof Let d (6=⊥) be a unitary diagram. Take any f : S(d) → Z(d) such that f (s) ∈ η(s)
and let m = (S(d), Ψ) be an interpretation where Ψ is defined as follows:
½
{s ∈ S(d) : l ∈ c(f (s))} if l ∈ L(d)
Ψ(l) =
∅
otherwise.
Using corollary 2.3.1, it is straightforward to show m = (S(d), Ψ) is a model for d. QED
To conclude this section we define the logical consequence relation for this spider
diagram system.
Definition 2.3.3 Let D1 and D2 be two spider diagrams. The diagram D2 is a logical
consequence of D1 , denoted D1 ² D2 , if and only if every model for D1 is also a model
for D2 .
2.4
Diagrammatic reasoning
We will now present a collection of reasoning rules for this spider diagram system. Reasoning rules allow us to obtain a diagram from a given diagram. Many of the reasoning
rules we will give are based on those in [44] for the SD2 system. Since we no longer
restrict diagrams to conjunctive normal form there are new rules that have analogies in
logic. There is also a new diagrammatic rule we call introduction of a shaded zone. This
rule is a generalization of the rule in the ESD2 system called the rule of equivalence of
Venn and Euler forms [44], allowing a spider diagram based on an Euler diagram to be
replaced by its equivalent Venn form and vice versa.
In [30] the authors discuss the need to reason at the abstract level, highlighting problems that can occur if reasoning takes place at the concrete level. Moreover, in [7] the
author identifies a flaw in Shin’s Venn-II system, due to reasoning taking place at the concrete level. The problem is this. When erasing a contour from a concrete diagram there
is no guarantee that the resulting diagram is well-formed. For example, in figure 2.12, D
is erased from d1 resulting in d2 which has disconnected zones (violating condition 1(d) in
the definition of a concrete diagram). For each rule we will give an informal description
at the concrete level and a formal description at the abstract level.
2.4.1
Unitary to unitary reasoning rules
We define two rules in this section, both of which are information preserving.
59
C
A
B
d
D
A
B
1
C
d
2
Figure 2.12: A problem with reasoning at the concrete level.
Rule 1 Introduction of a contour label. Let d1 (6= ⊥) be a unitary diagram and let
d2 be the diagram obtained from d1 after introducing a contour label as follows.
(i) The new contour has a label not present in d1 .
(ii) Each zone in d1 splits into two zones and shading is preserved.
(iii) Each foot of a spider is replaced by a connected pair of feet – one in each new zone
of the habitat so that the habitat is ‘preserved’.
Then d1 can be replaced by d2 and vice versa, [44].
B
A
d
B
A
d
1
C
2
Figure 2.13: An application of rule 1, introduction of contour label.
Example 2.4.1 In figure 2.13, the diagrams d1 and d2 are semantically equivalent. Each
zone in d1 splits into two zones in d2 . The spiders feet in diagram d1 bifurcate to become
two feet in diagram d2 .
Formal description. Let d1 (6= ⊥) be a unitary diagram. Let d2 be a unitary diagram
such that
1. L(d2 ) = L(d1 ) ∪ {l∗ } where l∗ 6∈ L(d1 ),
2. there exists a surjection h : Z(d2 ) → Z(d1 ) defined by
h(a, L(d2 ) − a) = (a − {l∗ }, L(d2 ) − (a ∪ {l∗ }))
60
which extends to the function h : R(d2 ) → R(d1 ) where
h(r) =
[
{h(z)} = {h(z) : z ∈ r}
z∈r
and satisfies
(a) each zone in d1 is the image of two zones in d2 :
∀z ∈ Z(d1 ) ∃z1 , z2 ∈ Z(d2 ) • z1 6= z2 ∧ h(z1 ) = h(z2 ) = z,
(b) each zone is shaded in d2 if and only if it has a shaded image:
∀z ∈ Z(d2 ) • z ∈ Z ∗ (d2 ) ⇔ h(z) ∈ Z ∗ (d1 ),
(c) the spiders match and their habitats are ‘preserved’ under h: there exists a
bijection σ : S(d1 ) → S(d2 ) that satisfies
∀s ∈ S(d1 ) • η(σ(s)) = {z ∈ Z(d2 ) : h(z) ∈ η(s)}.
Then d1 can be replaced by d2 and vice versa.
The first condition ensures a new contour label, l∗ , is added. The second ensures that
all zones are split into two new zones by the new contour and all shaded zones split into
two shaded zones and non-shaded zones split into two non-shaded zones. The second
condition also ensures that each spider’s foot is replaced with two new feet – one in each
new zone.
The next rule allows the introduction of a shaded zone to a unitary diagram, d. Spider
diagrams that do not have concrete representations can always be replaced by semantically
equivalent diagrams that do have concrete representations by introducing zones. For
example, the diagram d1 where:
(i) L(d1 ) = {A, B} and
(ii) Z(d1 ) = {(∅, {A, B}), ({A, B}, ∅)}
which has the (not well-formed) concrete representation shown in figure 2.14. By introducing a shaded zone, for example ({A}, {B}), the resulting (well-formed) diagram, d2
presents the same semantic information.
Rule 2 Introduction of a shaded zone. Let d1 be a unitary diagram that is not in
Venn form. If d2 is a copy of d1 except that d2 contains a new, shaded and ‘untouched’
zone then d1 may be replaced by d2 and vice versa.
61
A
B
d
A
d
B
1
2
Figure 2.14: Introducing a shaded zone.
This rule is similar to the rule of weakening given by Hammer in [26]. The rule of
weakening allows a zone to be introduced to an Euler diagram. Hammer’s rule loses
semantic information, since his system does not have any way of expressing that a present
zone represents the empty set.
Formal description. Let d1 be a unitary diagram such that there exists z ∗ ∈ V Z(d) −
Z(d). Let d2 be a unitary diagram such that
1. Z(d1 ) ∪ {z ∗ } = Z(d2 ) and
2. Z ∗ (d1 ) ∪ {z ∗ } = Z ∗ (d2 ) and
3. SI(d1 ) = SI(d2 ).
Then d1 can be replaced by d2 and vice versa.
2.4.2
Unitary to compound reasoning rules
We now specify three further rules, all of which are reversible, that allow a unitary diagram
to be replaced by a compound diagram. The first two of these rules result in a disjunction
of unitary diagrams. We will state the third rule from the perspective of the compound
diagram (which will be two unitary diagrams taken in conjunction). The first of these
rules allows us to split a spider.
Rule 3 Splitting spiders. Let d be a unitary diagram with a spider s∗ touching every
zone of two disjoint regions r1 and r2 . Let d1 and d2 be unitary diagrams that are copies
of d except that neither contains s∗ , but instead each contains an extra spider, s1 and s2
respectively, whose habitats are regions r1 in d1 and r2 in d2 . Then d can be replaced by
the diagram d1 t d2 and vice versa [44].
Example 2.4.2 Figure 2.15 illustrates an application of the splitting spiders rule. Spider
s∗ in d splits into two spiders, one in d1 , the other in d2 . Intuitively, the element represented
by the spider s∗ is either in the set U − (A ∪ B) or the set A ∪ B.
62
B
A
B
A
d
d
B
A
1
d
2
Figure 2.15: An application of rule 3, splitting spiders.
Formal description. Let d be a unitary diagram such that
∃(n, r) ∈ SI(d) ∃r1 , r2 ∈ R(d) • r = r1 ∪ r2 ∧ r1 ∩ r2 = ∅.
Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) = Z ∗ (d2 );
3. there exist spiders s1 ∈ S(d1 ) and s2 ∈ S(d2 ) such that η(s1 ) = r1 , η(s2 ) = r2 and
S(d) − {sn (r)} = S(d1 ) − {s1 } = S(d2 ) − {s2 }.
Then d can be replaced by d1 t d2 and vice versa.
We ensure that d1 and d2 are copies of d ‘modulo spiders’ by conditions one and two.
Condition three ensures that the habitat of (the copy of) sn (r) in d1 is r1 and in d2 is r2
and that all remaining spiders are copied to d1 and d2 .
Rule 4 Excluded middle. Let d be a unitary diagram with a completely non-shaded
region r. Let d1 and d2 be unitary diagrams that are copies of d except that d1 contains
an extra spider whose habitat is r and r is shaded in d2 . Then d can be replaced by the
diagram d1 t d2 and vice versa [44].
Example 2.4.3 The diagram d in figure 2.16 asserts nothing about |B − C|, which is
equivalent to |B − C| ≥ 1 ∨ |B − C| = 0, asserted by d1 t d2 . We can replace d by d1 t d2
and vice versa.
Formal description. Let d be a unitary diagram such that
∃r ∈ R(d) • r ∩ Z ∗ (d) = ∅.
Let d1 and d2 be unitary diagrams such that
63
B
A
B
A
B
A
C
C
d
d
C
d
1
2
Figure 2.16: An application of rule 4, excluded middle.
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) and Z ∗ (d) ∪ r = Z ∗ (d2 )
3. there exists s∗ ∈ S(d1 ) such that η(s∗ ) = r and
S(d) = S(d1 ) − {s∗ } = S(d2 ).
Then d can be replaced by d1 t d2 and vice versa.
Condition two ensures that region r is shaded in d2 . Condition three ensures that all
spiders in d are in d1 and in d2 and the only extra spider is in d1 with habitat r.
The final rule in this section, called combining, replaces two unitary diagrams taken
in conjunction by a single unitary diagram. In SD2 the basic operation of combining was
defined on a multi-diagram (recall that a multi-diagram is in conjunctive normal form).
A
A
d
B
1
C
d
B
A
C
2
B
d *
C
Figure 2.17: Combining unitary diagrams.
Example 2.4.4 In figure 2.17, we illustrate the combining rule. We combine d1 u d2 to
give d∗ . Any shading in either d1 or d2 occurs in d∗ . Moreover, the number of spiders in
any zone in d∗ is the same as the maximum number that occur in that zone in d1 or d2 .
The diagram d1 u d2 is semantically equivalent to d∗ .
As in the SD2 system, we combine unitary diagrams with the same sets of contour
labels and that only contain spiders with single zone habitats. We also stipulate that
64
the zone sets are equal. We now give an example to illustrate why we require spiders to
inhabit zones when combining diagrams.
A
s
B
A
1
C
d
s
B
2
C
d
1
2
Figure 2.18: Spiders whose habitats are not zones.
Example 2.4.5 The diagram d1 u d2 in figure 2.18 contains two spiders whose habitats
are not zones. A combined (unitary) diagram would have the same set of zones as d1 and
d2 . We cannot deduce that spiders s1 and s2 denote distinct elements since they are in
different unitary diagrams and, in many interpretations, their habitats do not represent
disjoint sets. We cannot just place copies of s1 and s2 into a combined diagram.
Also, we cannot deduce s1 and s2 denote the existence of the same element for, in some
interpretations, their habitats denote disjoint sets (informally, when A − (B ∪ C) = ∅).
We cannot replace d1 u d2 by a unitary diagram.
Definition 2.4.1 A spider diagram is an α-diagram if and only if the habitat of every
spider is a single zone, [44].
Example 2.4.6 The diagram d1 u d2 in figure 2.17 is an α-diagram. Each spider has a
habitat which is a single zone.
We now give a further example in a buildup to the definition of combining. In this
example we derive results by working at the semantic level, but we will define the combining
rule at the syntactic level.
A
A
C
B
d
C
B
d
1
2
Figure 2.19: An unsatisfiable diagram.
65
Example 2.4.7 In figure 2.19, d1 and d2 contain contradictory information. The diagram
d1 asserts that |A − (B ∪ C)| = 0 whereas d2 asserts that |A − (B ∪ C)| ≥ 1. Thus no
interpretation satisfies d1 u d2 , so d1 u d2 ≡ ⊥.
Definition 2.4.2 Let d0 and d1 be unitary α-diagrams satisfying Z(d0 ) = Z(d1 ) or d0 =⊥
or d1 =⊥. Then their combination, denoted d∗ = d0 ∗ d1 , is a unitary α-diagram defined
as follows.
1. If d0 =⊥ or d1 =⊥ then d∗ =⊥.
2. If a zone is shaded in one diagram and contains more spiders in the other then d∗ =⊥.
More formally, if there exists z ∈ Z(di ) for some i = 0, 1 such that z ∈ Z ∗ (dj ) and
S({z}, di ) − S({z}, dj ) 6= ∅ where j = 1 − i then d∗ =⊥.
3. Otherwise d∗ is a unitary α-diagram such that
(a) the set of zones of the combined diagram is the same as the zones sets of the
original diagrams: Z(d∗ ) = Z(d0 ),
(b) the shaded zones in the combined diagram are shaded in one (or both) of the
original diagrams: Z ∗ (d∗ ) = Z ∗ (d0 ) ∪ Z ∗ (d1 ) and
(c) the number of spiders in any zone in the combined diagram is the maximum
number of spiders inhabiting that zone in the original diagrams:
∀ z ∈ Z(d∗ ) • S({z}, d∗ ) = S({z}, d0 ) ∪ S({z}, d1 ).
Rule 5 Combining. Let d0 and d1 be unitary α-diagrams satisfying Z(d0 ) = Z(d1 ) or
d0 =⊥ or d1 =⊥. Then d0 u d1 may be replaced by d0 ∗ d1 , and vice versa.
2.4.3
Logic reasoning rules
We now introduce a collection of rules, all of which have (obvious) analogies in logic. The
next rule is analogous to P ` P ∨ Q, for any propositions P, Q.
Rule 6 Connecting a diagram. Let D1 and D2 be spider diagrams. Then D1 can be
replaced by D1 t D2 .
There are diagrams that are unsatisfiable and we can think of those as contradictions.
For our system to be complete, we must be able to replace unsatisfiable diagrams by any
diagram. In logic, we may infer anything from a false premise. The next rule is analogous
to this, from ⊥ we may infer any diagram.
66
Rule 7 Inconsistency. The diagram ⊥ may be replaced by any diagram [44].
Rule 8 t–Idempotency. Any spider diagram D may be replaced by D t D and vice
versa.
Rule 9 u–Idempotency. Any spider diagram D may be replaced by D u D and vice
versa.
Rule 10 t–Distributivity. Let D1 , D2 and D3 be spider diagrams. Then D1 t(D2 uD3 )
may be replaced by (D1 t D2 ) u (D1 t D3 ) and vice versa.
Rule 11 u–Distributivity. Let D1 , D2 and D3 be spider diagrams. Then D1 u(D2 tD3 )
may be replaced by (D1 u D2 ) t (D1 u D3 ) and vice versa.
Rule 12 t–Simplification. Let D1 , D2 and D3 be spider diagrams. If diagram D2 can
be transformed into diagram D3 by one of the first 11 transformation rules then D1 t D2
may be replaced by D1 t D3 .
B
A
C
A
d
B
C
d
1
B
A
C
d
1
2
A
B
C
A
B
C
d
3
d
4
Figure 2.20: An application of rule 12, t–simplification.
Example 2.4.8 The diagram d1 in figure 2.20 can be transformed into d3 t d4 by an
application of rule 3, splitting spiders. Therefore d1 td2 can be transformed into d1 td3 td4 .
Rule 13 u–Simplification. Let D1 , D2 and D3 be spider diagrams. If diagram D2 can
be transformed into diagram D3 by one of the first 11 transformation rules then D1 u D2
may be replaced by D1 u D3 .
67
Rules t-simplification and u-simplification and are similar to rules simplification 1 and
simplification 2 respectively in the SD2 system, presented in [44].
2.4.4
Derived reasoning rules
As with previous spider diagram systems, we introduce derived reasoning rules to aid the
reasoning process. Firstly, we define obtainability.
Definition 2.4.3 Let D1 and D2 be two spider diagrams. Then D1 ° D2 if and only
if D1 can be transformed into D2 by a single application of one of the first 13 rules of
transformation. D2 is obtainable from D1 , denoted D1 ` D2 , if and only there is a
sequence of diagrams hD1 , D2 , ..., Dm i such that D1 = D, Dm = D0 and Dk ° Dk+1 for
each k (where 1 ≤ k < m), adapted from [44].
Definition 2.4.4 Spider diagrams D1 and D2 are syntactically equivalent, denoted
D1 ≡ D2 , if and only if D1 ` D2 and D2 ` D1 , [44].
Definition 2.4.5 Let r be a reasoning rule and let R be a set of reasoning rules that does
not include r. Rule r is derived from R if and only if whenever D1 can be transformed
into D2 by a single application of r, there exists a sequence of diagrams hD1 , D2 , ..., Dm i
yielding D1 ` D2 such that for each k (where 1 ≤ k < m) Dk is transformed into Dk+1
by a single application of any reasoning rule in R.
The first derived rule allows erasure of shading. Applying this rule weakens information.
Rule 14 Erasure of shading. We may erase shading from any region. Let d1 be a
unitary diagram with shaded region r and let d2 be a copy of d1 except that r is not
shaded. Then d1 may be replaced by d2 , [44].
This rule is derived from rule 6 (connecting a diagram), and rule 4 (excluded middle).
The proof strategy to show that the erasure of shading rule is derived is the same as that
given in [44] for SD2 and is illustrated below by example.
Example 2.4.9 To diagram d1 in figure 2.21, we connect diagram d0 using rule 6. Then
rule 4 (excluded middle) is applied, obtaining diagram d2 .
Formal description. Let d1 be a unitary diagram such that there exists a shaded region,
r∗ , of d1 . Let d2 be a unitary diagram such that
68
A
A
d
A
d
1
d '
1
A
d
2
Figure 2.21: An application of rule 14, erasure of shading.
1. Z(d1 ) = Z(d2 )
2. Z ∗ (d1 ) − r∗ = Z ∗ (d2 )
3. SI(d1 ) = SI(d2 ).
Then d1 can be replaced by d2 .
Lemma 2.4.1 Rule 14, erasure of shading, is derived.
Rule 15 Erasure of a spider. We may erase a spider that inhabits a completely nonshaded region. Let d1 be a unitary diagram with a spider s whose habitat is a completely
non-shaded region. Let d2 be a copy of d1 except that s has been removed. We may
replace d1 by d2 , [44].
A
B
s
A
d
C
B
d
C
1
2
Figure 2.22: An application of rule 15, erasure of a spider.
Example 2.4.10 Spider s is erased from d1 , in figure 2.22, obtaining d2 .
Example 2.4.11 Suppose we erase the spider s from d1 in figure 2.23. This would lead
to an invalid deduction: d1 expresses |C| ≤ 1 whereas d2 expresses |C| = 0.
69
A
s
B
d
A
C
B
C
d
1
2
Figure 2.23: An ‘invalid application’ of rule 15, erasure of a spider.
Formal description. Let d1 be a unitary diagram such that there is at least one spider
with a completely non-shaded habitat r, more formally:
∃(n, r) ∈ SI(d1 ) • r ∩ Z ∗ (d1 ) = ∅.
Let d2 be a unitary diagram such that
1. Z(d1 ) = Z(d2 ),
2. Z ∗ (d1 ) = Z ∗ (d2 ) and
3. S(d1 ) − {sn (r)} = S(d2 ).
Then d1 can be replaced by d2 .
In the formal description we have ensured the erased spider does not touch any shaded
zone. Since S(d1 ) − {sn (r)} = S(d2 ) we can deduce immediately that if n ≥ 2
(SI(d1 ) ∪ {(n − 1, r)}) − {(n, r)} = SI(d2 )
and if n = 1,
SI(d1 ) − {(n, r)} = SI(d2 ),
that is, the number of spiders inhabiting region r has reduced by 1.
Lemma 2.4.2 Rule 15, erasure of a spider, is derived.
Proof (Sketch) Rule 15, erasure of a spider, is derived from rules 6 (connecting a diagram)
and 4 (excluded middle). QED
Another derived rule allows us to add feet to a spider. If an element denoted by a
spider belongs to the set represented by that spiders habitat, it must belong to the set
denoted by any super region of that spiders habitat.
Rule 16 Adding feet to a spider. Let d1 be a unitary diagram with a spider s not
touching a zone z in d1 . Let d2 be a copy of d1 except spider s has an extra foot placed
in zone z. Then d1 may be replaced by d2 , [44].
70
Rule 16 is derived from rules 6 (connecting a diagram) and 3 (splitting spiders). The
proof strategy to show that this rule is derived is the same as that for the proof given in
[44].
The next four results have analogies in the SD2 system and therefore some of the proof
strategies are similar to those presented in [44].
Lemma 2.4.3 Let D, D1 and D2 be spider diagrams such that D1 ` D2 . Then D t D1 `
D t D2 .
Proof Since D1 ` D2 and from the definition of obtainability, there is a sequence of
diagrams,
hD1 , D2 , ..., Dn i
such that D1 = D1 , D2 = Dn and Di ° Di+1 where 1 ≤ i ≤ n − 1. By rule 12 (t–
simplification) D t Di ° D t Di+1 where 1 ≤ i ≤ n − 1. Then there is a sequence of
diagrams
hD t D1 , D t D2 , ..., D t Dn i
such that D t D1 = D t D1 , D t Dn = D t D2 and D t Di ° D t Di+1 where 1 ≤ i ≤ n − 1.
Therefore D t D1 ` D t D2 . QED
The analogous result to lemma 2.4.3 in the SD2 system is restricted to diagrams
representing only disjunctive information (sets of unitary diagrams).
Lemma 2.4.4 Let D, D1 and D2 be spider diagrams such that D1 ` D2 . Then D u D1 `
D u D2 .
Proof The proof is similar to that for lemma 2.4.3. QED
The analogous result to lemma 2.4.4 in the SD2 system is restricted to diagrams in
conjunctive normal form (multi-diagrams).
Corollary 2.4.1 Rule of Replacement. Let D1 , D2 , D3 and D4 be spider diagrams
such that D1 ` D2 and D3 ` D4 . Let ¤ ∈ {t, u}. Then D1 ¤D3 ` D2 ¤D4 .
Definition 2.4.6 Let D1 , D2 , ..., Dn be spider diagrams. Then
1≤i≤n
Di = t{D1 , ..., Dn }
is defined to be D1 t D2 t ... t Dn . Also,
1≤i≤n
Di = u{D1 , ..., Dn }
is defined to be D1 u D2 u ... u Dn .
71
Theorem 2.4.1 Rule of Construction. Let D1 , D2 , ..., Dn be spider diagrams and let
D be a spider diagram. If Di ` D for i = 1, ..., n then
Ã
!
1≤i≤n
Di
` D.
Proof The proof is by induction on n, the number of spider diagrams. Assume that
Di ` D for i = 1, ..., n. For n = 1 the result is trivial.
Assume that for any k < n,
^
Ã
(Di ` D) ⇒
1≤i≤k
1≤i≤k
Consider
^
!
Di
` D.
(Di ` D).
1≤i≤k+1
By the rule of replacement (corollary 2.4.1), Dk t Dk+1 ` D t D and D t D ` D by
t-idempotency. Therefore Dk t Dk+1 ` D. Now
^
Di =
^
Di t (Dk t Dk+1 ).
1≤i≤k−1
1≤i≤k+1
Therefore
^
Di ` D
1≤i≤k+1
as required. QED
2.5
Soundness
In this section we prove that the system is sound. This requires us to prove that the
reasoning rules are valid.
Definition 2.5.1 Let r be a reasoning rule. We say r is valid if and only if whenever
diagram D2 is obtained from diagram D1 by a single application of r it is the case that all
the models for D1 are models for D2 .
2.5.1
Validity of the unitary to unitary reasoning rules
For each rule, to prove validity, the general strategy will be to assume an interpretation
is a model for the diagram we start with and show that it is a model for the diagram that
results after applying the rule concerned.
In order to prove the validity of rule 1 (introduction of a contour label) we will firstly
prove a set of results. For example, in order to show that the distinct spiders condition
72
holds after applying rule 1, we will show that for each region, r2 , in the resulting diagram,
d2 , there is a region r1 in d1 (the premise diagram) that satisfies |S(r1 , d1 )| = |S(r2 , d2 )|
and Ψ(r1 ) = Ψ(r2 ) in any model for d1 . Recall that the surjection h : R(d2 ) → R(d1 ),
defined in the formal description of rule 1, maps region r to
h(r) =
[
{h(a, b)} = {(a − {l∗ }, b − {l∗ }) : (a, b) ∈ r},
(a,b)∈r
where l∗ is the introduced label. We will make frequent use of this function.
Definition 2.5.2 Let d1 (6=⊥) be a unitary diagram that does not contain contour label
l∗ . Let d2 be the unitary diagram obtained by introducing l∗ to d1 using rule 1. Let r1 be
a region of unitary diagram d1 . Define H(r1 ) to be the set of regions in d2 that map to r1
under h,
H(r1 ) = {r2 ∈ R(d2 ) : h(r2 ) = r1 }.
We define H(d2 ) to be the set of regions in R(d2 ) that are greatest under the partial order
relation of subset inclusion:
H(d2 ) = {r2 ∈ R(d2 ) : ∀ r3 ∈ R(d2 ) • h(r3 ) = h(r2 ) ⇒ r3 ⊆ r2 }.
Lemma 2.5.1 Let d1 (6=⊥) be a unitary diagram that does not contain contour label l∗ .
Let d2 be the unitary diagram obtained by introducing l∗ to d1 using rule 1. Let m = (U, Ψ)
be an interpretation. Then for each region r ∈ R(d2 ) the following hold.
1. Ψ(r) ⊆ Ψ(h(r)),
2. r ∈ H(d2 ) ⇒ Ψ(r) = Ψ(h(r)) and
3. r ∈ R∗ (d2 ) ⇒ h(r) ∈ R∗ (d1 ).
Proof Let r ∈ R(d2 ).
1. We will show that Ψ(r) ⊆ Ψ(h(r)). For all (a, L(d2 ) − a) ∈ r we have
Ψ(a, L(d2 ) − a) =
\
Ψ(l) ∩
l∈a
and
Ψ(h(a, L(d2 ) − a)) =
\
l∈a−{l∗ }
73
\
Ψ(l)
(1)
l∈L(d2 )−a
Ψ(l) ∩
\
l∈L(d1 )−a
Ψ(l)
(2).
If l∗ 6∈ a then h(a, L(d2 ) − a) = (a, L(d2 ) − (a ∪ {l∗ })) and (1) becomes
Ψ(a, L(d2 ) − a) =
\
Ψ(l) ∩
l∈a−{l∗ }
\
Ψ(l) ∩ Ψ(l∗ )
l∈L(d1 )−a
= Ψ(h(a, L(d2 ) − a)) ∩ Ψ(l∗ )
by (2)
⊆ Ψ(h(a, L(d2 ) − a)).
If l∗ ∈ a then h(a, L(d2 ) − a) = (a − {l∗ }, L(d2 ) − a) and (1) becomes
Ψ(a, L(d2 ) − a) =
\
l∈a−{l∗ }
Ψ(l) ∩
\
Ψ(l) ∩ Ψ(l∗ )
l∈L(d1 )−a
= Ψ(h(a, L(d1 ) − a)) ∩ Ψ(l∗ )
by (2)
⊆ Ψ(h(a, L(d2 ) − a)).
Thus for all (a, b) ∈ r, Ψ(a, b) ⊆ Ψ(h(z)). Hence Ψ(r) ⊆ Ψ(h(r)).
2. We now show that if r ∈ H(d2 ) then Ψ(r) = Ψ(h(r)). Suppose that h(r) =
{z1 , z2 , ..., zn }. Then, since r is greatest, r = {z1,1 , z1,2 , z2,1 , z2,2 , ..., zn,1 , zn,2 } where
for all i, zi,1 6= zi,2 and h(zi,1 ) = h(zi,2 ) = zi . Since zi is a zone in diagram d1 , it
must be that zi = (a, L(d1 ) − a) for some a. Thus we can deduce that one of zi,1 , zi,2
is (a ∪ {l∗ }, L(d1 ) − a) and the other is (a, (L(d1 ) − a) ∪ {l∗ }). Now
Ψ(a, L(d1 ) − a) = Ψ(a ∪ {l∗ }, L(d1 ) − a) ∪ Ψ(a, (L(d1 ) − a) ∪ {l∗ }) by lemma 2.2.5
= Ψ({(a ∪ {l∗ }, L(d1 ) − a), (a, (L(d1 ) − a) ∪ {l∗ })}).
It follows that Ψ(h(r)) = Ψ(r), when r is the greatest region to map to h(r).
3. Suppose that r ∈ R∗ (d2 ). Since d2 is obtained from d1 by introducing l∗ , each shaded
zone in d2 has a shaded image. Thus h(r) ∈ R∗ (d1 ). QED
Recall that if we apply rule 1 to d1 , giving d2 , then there exists a bijection σ : S(d1 ) →
S(d2 ) that satisfies η(σ(s)) = {z ∈ Z(d2 ) : h(z) ∈ η(s)}. We will use this function in the
proof of the next lemma.
Lemma 2.5.2 Let d1 (6=⊥) be a unitary diagram that does not contain contour label l∗ .
Let d2 be a unitary diagram obtained by introducing l∗ to d1 using rule 1. Let r ∈ R(d2 ).
Then |T (r, d2 )| = |T (h(r), d1 )|. Furthermore, if r is the greatest region to map to h(r)
then |S(r, d2 )| = |S(h(r), d1 )|.
74
Proof Let r2 ∈ R(d2 ) and s2 ∈ T (r2 , d2 ). Then
η(s2 ) ∩ r2 6= ∅
(1).
Since σ is a bijection there exists an s1 ∈ S(d1 ) such that σ(s1 ) = s2 , so we can rewrite
(1) as
η(σ(s1 )) ∩ r2 6= ∅.
Let z2 ∈ η(σ(s1 )) ∩ r2 . Then h(z2 ) ∈ η(s1 ). Since h(z2 ) ∈ h(r2 ) it follows that h(r2 ) ∩
η(s1 ) 6= ∅, so s1 touches h(r2 ) and it follows that
|T (r2 , d2 )| ≤ |T (h(r2 ), d1 )|.
Let s1 ∈ T (h(r2 ), d1 ) and let z1 ∈ η(s1 ) ∩ h(r2 ). There exists two distinct zones, z2 , z3 ,
such that h(z2 ) = h(z3 ) = z1 , that is h(z2 ), h(z3 ) ∈ η(s1 ). Now
η(σ(s1 )) = {z ∈ Z(d2 ) : h(z) ∈ η(s1 )}
so z2 , z3 ∈ η(σ(s1 )). Since r2 maps to h(r2 ) and z1 ∈ h(r2 ) it must be that either
z2 ∈ r2 or z3 ∈ r2 (or both). So η(σ(s1 )) ∩ r2 6= ∅. Thus σ(s1 ) ∈ T (r2 , d2 ). Hence
|T (r2 , d2 )| ≥ |T (h(r2 ), d1 )| and it follows that
|T (r2 , d2 )| = |T (h(r2 ), d1 )|.
Suppose that r2 = {z1,1 , z1,2 , ..., zk,1 , zk,2 , ..., zn,1 , zn,2 } is the greatest region to map to
h(r2 ). Let s2 ∈ S(r2 , d2 ). Then η(s2 ) ⊆ r2 . Suppose, without loss of generality, η(s2 ) =
{z1 , ..., zk }. Now, since σ is a bijection, there exists s1 ∈ S(d1 ) such that σ(s1 ) = s2 . Thus
η(s2 ) = η(σ(s1 )) = {z ∈ Z(d2 ) : h(z) ∈ η(s1 )}.
Then h(z1 ), ..., h(zk ) ∈ η(s1 ), so η(s1 ) ⊆ h(r2 ). Therefore
|S(r2 , d2 )| ≤ |S(h(r2 ), d2 )|.
Let s1 ∈ S(h(r2 ), d1 ), so σ(s1 ) ∈ S(d2 ). Then η(s1 ) ⊆ h(r2 ) = {h(z1,1 ), ..., h(zn,2 )}. Now
η(σ(s1 )) = {z ∈ Z(d2 ) : h(z) ∈ η(s1 )}
⊆ {z ∈ Z(d2 ) : h(z) ∈ η(s1 ) ∨ h(z) ∈ h(r2 )}
= {z ∈ Z(d2 ) : h(z) ∈ h(r2 )}.
This is the greatest region in R(d2 ) that maps to h(r2 ), that is
r2 = {z ∈ Z(d2 ) : h(z) ∈ h(r2 )}
75
thus
η(σ(s1 )) ⊆ r2 .
Hence |S(r2 , d2 )| ≥ |S(h(r2 ), d1 )| and it follows that |S(r2 , d2 )| = |S(h(r2 ), d1 )|, where r2
is the greatest region to map to h(r2 ). QED
We now show some nice properties hold for the set H(d2 ). To introduce these properties
we consider an example.
A
B
A
z
d
z
2
1
1
z
z
3
d
4
2
Figure 2.24: Introducing a contour label: illustrating properties of the set of greatest
regions.
Example 2.5.1 In diagram d2 , figure 2.24, we see that
H(d2 ) = {{z2 , z3 }, {z1 , z4 }, {z1 , z2 , z3 , z4 }}.
Not only does this set contain Z(d2 ), but the following closure properties hold:
1. r1 , r2 ∈ H(d2 ) ⇒ r1 ∪ r2 ∈ H(d2 ),
2. r1 , r2 ∈ H(d2 ) ⇒ r1 ∩ r2 ∈ H(d2 ) ∪ {∅} and
3. r1 , r2 ∈ H(d2 ) ⇒ r1 − r2 ∈ H(d2 ) ∪ {∅}.
Of these properties, we will make use of use of the first one.
Lemma 2.5.3 Let d1 (6=⊥) be a unitary diagram that does not contain contour label
l∗ . Let d2 be a unitary diagram obtained by introducing l∗ to d1 using rule 1. Suppose
H(d2 ) = {r1 , ..., rn } and define J ⊆ {1, 2, ..., n}. Then
(1)
S
j∈J
(2)
T
j∈J
rj ∈ H(d2 ) ∪ {∅}
rj ∈ H(d2 ) ∪ {∅} and
(3) ri − rj ∈ H(d2 ) ∪ {∅}.
76
Proof (Sketch) Parts (1) and (2) follows by induction on |J|. For part (3), let ri , rj ∈
H(d2 ). Consider ri −rj . Region ri contains all zones that map to h(ri ). Region rj contains
all zones that map to h(rj ). Therefore, if z ∈ ri − rj , all zones that map to h(z) are in
ri − rj . Hence ri − rj ∈ H(d2 ) provided ri − rj 6= ∅. QED
Lemma 2.5.4 Let d1 (6=⊥) be a unitary diagram that does not contain contour label l∗ .
Let d2 be a unitary diagram obtained by introducing l∗ to d1 using rule 1. Then for
all r1 ∈ R(d2 ) such that S(r1 , d2 ) 6= ∅, there exists r2 ∈ H(d2 ) such that r2 ⊆ r1 and
S(r1 , d2 ) = S(r2 , d2 ).
Proof For any spider, s2 ∈ S(d2 ) it is the case that η(s2 ) ∈ H(d2 ), for the greatest
region to map to η(σ −1 (s2 )) is {z ∈ Z(d2 ) : h(z) ∈ η(σ −1 (s2 ))} = η(s). Let r1 ∈ R(d2 )
S
η(s) ⊆ r1 . By lemma 2.5.3, r2 ∈ H(d2 ). It is trivial that
and consider r2 =
s∈S(r1 ,d2 )
S(r1 , d2 ) = S(r2 , d2 ). QED
Corollary 2.5.1 Let d1 (6=⊥) be a unitary diagram that does not contain contour label l∗ .
Let d2 be a unitary diagram obtained by introducing l∗ to d1 using rule 1. Let m = (U, Ψ)
be an interpretation. For all r2 ∈ R(d2 ) such that S(r2 , d2 ) 6= ∅ , there exists r1 ∈ R(d1 )
such that Ψ(r2 ) ⊇ Ψ(r1 ) and |S(r2 , d2 )| = |S(r1 , d1 )|.
Proof By lemma 2.5.4, there exists r3 ∈ H(d2 ) such that r3 ⊆ r2 and S(r3 , d2 ) = S(r2 , d2 ).
Now Ψ(r2 ) ⊇ Ψ(r3 ) = Ψ(h(r3 )) and |S(r2 , d2 )| = |S(r3 , d2 )| = |S(h(r3 ), d1 )|. QED
Now we show that rule 1 is valid.
Theorem 2.5.1 Rule 1, introduction of a contour label, is valid. Let d1 (6=⊥) be a unitary
diagram that does not contain contour label l∗ . Let d2 be a unitary diagram obtained by
introducing l∗ to d1 using rule 1. Then d1 ≡ d2 .
Proof Let m = (U, Ψ) be a model for d1 . Let r2 ∈ R(d2 ). If S(r2 , d2 ) = ∅ it is trivial that
|Ψ(r2 )| ≥ |S(r2 , d2 )|. If S(r2 , d2 ) 6= ∅ then, by corollary 2.5.1, there exists r1 ∈ R(d1 ) such
that Ψ(r2 ) ⊇ Ψ(r1 ) and |S(r2 , d2 )| = |S(r1 , d1 )|. Thus, from the distinct spiders condition
for d1 , |Ψ(r2 )| ≥ |Ψ(r1 )| ≥ |S(r1 , d1 )| = |S(r2 , d2 )|. Hence the distinct spiders condition
holds for d2 .
Suppose that r2 ∈ R∗ (d2 ). By lemma 2.5.1, h(r2 ) ∈ R∗ (d1 ), by lemma 2.5.2, |T (r20 , d2 )| =
|T (h(r2 ), d1 )| and by lemma 2.5.1 Ψ(r2 ) ⊆ Ψ(h(r2 )). Thus, from the shading condition for
d1 ,
|Ψ(r2 )| ≤ |Ψ(h(r2 ))| ≤ |T (h(r2 ), d1 )| = |T (r2 , d2 )|.
77
Hence, the shading condition holds for d2 .
We now show that the plane tiling condition for d2 holds. The greatest region that
maps to Z(d1 ) under h is Z(d2 ). By lemma 2.5.1, Ψ(Z(d1 )) = Ψ(Z(d2 )) and by the plane
tiling condition for d1 , Ψ(Z(d1 )) = U . Therefore the plane tiling condition holds for d2 .
Hence d1 ² d2 .
A similar strategy shows that d2 ² d1 . Hence d1 ≡ d2 , that is rule 1 is valid. QED
Theorem 2.5.2 Rule 2, introduction of a shaded zone, is valid. Let d1 be a unitary
diagram such that there exists z ∗ ∈ V Z(d1 ) − Z(d1 ). Let d2 be a unitary diagram such
that
1. Z(d1 ) ∪ {z ∗ } = Z(d2 ) and
2. Z ∗ (d1 ) ∪ {z ∗ } = Z ∗ (d2 ) and
3. SI(d1 ) = SI(d2 ).
Then d1 ≡ d2 .
Proof (Sketch) The strategy is to show that the introduced zone, z ∗ , represents the
empty set in any interpretation that is a model for d1 or for d2 . It then follows that
d1 ≡ d2 . QED
2.5.2
Validity of the unitary to compound reasoning rules
To prove the validity of rule 3, splitting spiders, we need the following result which states:
if an interpretation satisfies unitary diagram d and, by applying the splitting spiders rule
to d we obtain d1 t d2 then the distinct spiders condition holds for d1 or the shading
condition holds d2 . Equally, the distinct spiders condition holds for d2 or the shading
condition holds for d1 .
Lemma 2.5.5 Let d be a unitary diagram such that
∃(n, r) ∈ SI(d) ∃r1 , r2 ∈ R(d) • r = r1 ∪ r2 ∧ r1 ∩ r2 = ∅.
Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) = Z ∗ (d2 )
78
3. there exist spiders s1 ∈ S(d1 ) and s2 ∈ S(d2 ) such that η(s1 ) = r1 , η(s2 ) = r2 and
S(d) − {sn (r)} = S(d1 ) − {s1 } = S(d2 ) − {s2 }.
Let m = (U, Ψ) be an interpretation. Then
µ³ ^
m |= d ⇒
|Ψ(r)| ≥ |S(r, d1 )| ∨
³
r∈R∗ (d2 )
r∈R(d1 )
^
´
|Ψ(r)| ≤ |T (r, d2 )| ∧
^
´¶
|Ψ(r)| ≤ |T (r, d1 )| .
^
|Ψ(r)| ≥ |S(r, d2 )| ∨
r∈R∗ (d1 )
r∈R(d2 )
Proof We start by noting that any region is inhabited by either the same number of
spiders or exactly one more spider in d1 and d2 than in d. Also, any region is touched by
either the same number or exactly one fewer spiders in d1 and d2 than in d. The proof is
by contradiction. Assume that m |= d but
^
^
|Ψ(r)| ≥ |S(r, d1 )| ∨
|Ψ(r)| ≤ |T (r, d2 )|
r∈R∗ (d2 )
r∈R(d1 )
is false. Then, since R(d) = R(d1 ), there exists a region r3 ∈ R(d) such that
|Ψ(r3 )| < |S(r3 , d1 )| ∧ |Ψ(r3 )| = |S(r3 , d)|
[A].
Then s1 ∈ S(r3 , d1 ) and sn (r) 6∈ S(r3 , d), see figure 2.25, so
r1 ⊆ r3 ∧ r2 * r3 .
There also exists a region r4 ∈ R∗ (d) (since R∗ (d) = R∗ (d2 )) such that
r
r
3
1
s n(r )
r
r
2
r
3
d
1
s
r
2
1
d
1
Figure 2.25: Region causing the distinct spiders condition for d1 to fail.
|Ψ(r4 )| > |T (r4 , d2 )| ∧ |Ψ(r4 )| = |T (r4 , d)|
[B].
Then s2 6∈ T (r4 , d2 ) and sn (r) ∈ T (r4 , d), see figure 2.26. Thus
r4 ∩ r1 6= ∅ ∧ r4 ∩ r2 = ∅.
Now consider |T (r4 , d)|. This comprises the number of spiders in d touching r4 − r3 plus
79
r
r
4
r
s n(r )
1
r
2
r
4
d
r
s
1
d
2
2
2
Figure 2.26: Region causing the shading condition for d2 to fail.
r
r
3
4
Figure 2.27: Spiders touching regions r3 and r4 .
the number touching r4 ∩ r3 , less the number that touch both r4 − r3 and r4 ∩ r3 (we will
have counted these twice), see figure 2.27:
|T (r4 , d)| = |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| − |T ({r4 − r3 , r4 ∩ r3 }, d)|
= |Ψ(r4 )|
(1)
from [B]
= |Ψ(r4 − r3 )| + |Ψ(r4 ∩ r3 )|
since (r4 − r3 ) ∩ (r4 ∩ r3 ) = ∅ (2).
Next add |Ψ(r3 − r4 )| to both (1) and (2) giving
|Ψ(r4 − r3 )| + |Ψ(r4 ∩ r3 )| + |Ψ(r3 − r4 )| = |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| −
|T ({r4 − r3 , r4 ∩ r3 }, d)| +
|Ψ(r3 − r4 )|
(3).
Now r3 = (r3 − r4 ) ∪ (r4 ∩ r3 ) and, since (r3 − r4 ) ∩ (r4 ∩ r3 ) = ∅, we deduce
|Ψ(r4 ∩ r3 )| + |Ψ(r3 − r4 )| = |Ψ(r3 )|.
Substituting into (3) we obtain
|Ψ(r4 − r3 )| + |Ψ(r3 )| = |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| −
|T ({r4 − r3 , r4 ∩ r3 }, d)| +
|Ψ(r3 − r4 )|
(4).
From [A] we know that |Ψ(r3 )| = |S(r3 , d)| and we substitute this into (4) yielding
|Ψ(r4 − r3 )| + |S(r3 , d)| = |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| −
|T ({r4 − r3 , r4 ∩ r3 }, d)| +
|Ψ(r3 − r4 )|
80
(5).
Since m |= d, we know that |Ψ(r3 − r4 )| ≥ |S(r3 − r4 , d)| and (5) becomes the inequality
|Ψ(r4 − r3 )| + |S(r3 , d)| ≥ |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| −
|T ({r4 − r3 , r4 ∩ r3 }, d)| +
|S(r3 − r4 , d)|.
Subtract |S(r3 , d)| from both sides yielding
³
´
|Ψ(r4 − r3 )| ≥ |T (r4 − r3 , d)| + |T (r4 ∩ r3 , d)| − |T ({r4 − r3 , r4 ∩ r3 }, d)| −
´
³
|S(r3 , d)| − |S(r3 − r4 , d)|
(6).
We will show that |Ψ(r4 − r3 )| > |T (r4 − r3 , d)| and we know that r4 ∈ R∗ (d), so this
will give the contradiction we seek. Now the number of spiders touching r4 ∩ r3 minus the
number of spiders touching both r4 − r3 and r4 ∩ r3 equals the number of spiders touching
r4 ∩ r3 but not touching r4 − r3 :
|T (r4 ∩ r3 , d)| − |T ({r4 − r3 , r4 ∩ r3 }, d)| =
|{s ∈ S(d) : η(s) ∩ (r4 ∩ r3 ) 6= ∅ ∧ η(s) ∩ (r4 − r3 ) = ∅}|.
The number of spiders inhabiting r3 minus the number of spiders inhabiting r3 − r4 equals
the number of spiders inhabiting r3 and touching r4 :
|S(r3 , d)| − |S(r3 − r4 , d)| = |{s ∈ S(d) : η(s) ⊆ r3 ∧ η(s) ∩ r4 6= ∅}|.
We show that X1 = {s ∈ S(d) : η(s) ⊆ r3 ∧ η(s) ∩ r4 6= ∅} is a proper subset of
X2 = {s ∈ S(d) : η(s) ∩ (r4 ∩ r3 ) 6= ∅ ∧ η(s) ∩ (r4 − r3 ) = ∅} and, therefore, |X2 | > |X1 |.
Let s ∈ X1 , then
η(s) ⊆ r3 ∧ η(s) ∩ r4 6= ∅,
see figure 2.28. Therefore
r
r
3
s
4
Figure 2.28: Spider s inhabiting r3 and touching r4 .
η(s) ∩ (r4 ∩ r3 ) 6= ∅ ∧ η(s) ∩ (r4 − r3 ) = ∅.
81
r
r
r
4
r
3
s n(r )
1
2
d
Figure 2.29: Spider sn (r) in d.
Hence s ∈ X2 and X1 ⊆ X2 . Consider the split spider sn (r). The spider sn (r) was
split into spiders with habitats r1 and r2 and η(sn (r)) = r1 ∪ r2 , see figure 2.29. So
η(sn (r)) ∩ (r4 ∩ r3 ) 6= ∅ and η(sn (r)) ∩ (r4 − r3 ) = ∅. Thus sn (r) ∈ X2 . Since r2 * r3 it
must be that η(sn (r)) * r3 , thus sn (r) 6∈ X1 . Hence X1 ⊂ X2 and therefore
³
´ ³
´
|X2 | − |X1 | = |T (r4 ∩ r3 , d)| − |T ({r4 − r3 , r4 ∩ r3 }, d)| − |S(r3 , d)| − |S(r3 − r4 , d)| > 0.
Therefore, from (6) and the above, we deduce the inequality
|Ψ(r4 − r3 )| > |T (r4 − r3 , d)|.
Since r4 ∈ R∗ (d) it follows that r4 − r3 ∈ R∗ (d) or r4 − r3 = ∅. In the case that
r4 − r3 ∈ R∗ (d), by the shading condition for d it must be that
|Ψ(r4 − r3 )| ≤ |T (r4 − r3 , d)|
reaching a contradiction. If r4 − r3 = ∅ then we have |Ψ(∅)| = |∅| > |T (∅, d)| = 0, also
reaching a contradiction.
Hence
m |= d ⇒
^
^
|Ψ(r)| ≥ |S(r, d1 )| ∨
r∈R∗ (d
r∈R(d1 )
Similarly it can be shown that
^
m |= d ⇒
|Ψ(r)| ≥ |S(r, d2 )| ∨
|Ψ(r)| ≤ |T (r, d2 )| .
2)
^
|Ψ(r)| ≤ |T (r, d1 )|
r∈R∗ (d1 )
r∈R(d2 )
and the result follows. QED
We now prove the splitting spiders rule is valid.
Theorem 2.5.3 Rule 3, splitting spiders, is valid. Let d be a unitary diagram such that
∃(n, r) ∈ SI(d) ∃r1 , r2 ∈ R(d) • r = r1 ∪ r2 ∧ r1 ∩ r2 = ∅.
Let d1 and d2 be unitary diagrams such that
82
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) = Z ∗ (d2 )
3. there exist spiders s1 ∈ S(d1 ) and s2 ∈ S(d2 ) such that η(s1 ) = r1 , η(s2 ) = r2 and
S(d) − {sn (r)} = S(d1 ) − {s1 } = S(d2 ) − {s2 }.
Then d ≡ d1 t d2 .
Proof Let m = (U, Ψ) be an interpretation. If the plane tiling condition holds for any
d0 ∈ {d, d1 , d2 } then it holds for all.
We now consider the distinct spiders conditions for the three diagrams. We can partition R(d) into three sets as follows, illustrated in figure 2.30:
R0 = R0 (d) = {r ∈ R(d) : r1 ∪ r2 ⊆ r ∨ (r1 * r ∧ r2 * r)}
R1 = R1 (d) = {r ∈ R(d) : r1 ⊆ r ∧ r2 * r}
R2 = R2 (d) = {r ∈ R(d) : r2 ⊆ r ∧ r1 * r}.
Regions in R0 have the same number of spiders inhabiting them in each of d, d1 and d2 .
r
r
1
r
r
2
r
r
1
2
R e g io n s in R 0(d )
r
r
r
1
r
r
2
R e g io n s in R 1(d )
r
2
1
R e g io n s in R 2(d )
Figure 2.30: Regions in d.
Regions in R1 have the same number of spiders inhabiting them in d and d2 but one more
in d1 . Regions in R2 have the same number of spiders inhabiting them in d and d1 but
one more in d2 .
The distinct spiders condition for d is equivalent to
^
r∈R0 (d)
|Ψ(r)| ≥ |S(r, d)| ∧
^
|Ψ(r)| ≥ |S(r, d)| ∧
r∈R1 (d)
^
r∈R2 (d)
83
|Ψ(r)| ≥ |S(r, d)|.
If r ∈ R0 (d) then
|S(r, d)| = |S(r, d1 )| = |S(r, d2 )|.
From this we deduce that
|Ψ(r)| ≥ |S(r, d)| ⇔ |Ψ(r)| ≥ |S(r, d1 )|
and
|Ψ(r)| ≥ |S(r, d)| ⇔ |Ψ(r)| ≥ |S(r, d2 )|.
If r ∈ R1 (d) then
|S(r, d)| = |S(r, d2 )| ∧ |S(r, d)| = |S(r, d1 )| − 1.
From this we deduce
|Ψ(r)| ≥ |S(r, d)| ⇔ |Ψ(r)| ≥ |S(r, d2 )|
and
|Ψ(r)| ≥ |S(r, d1 )| ⇒ |Ψ(r)| ≥ |S(r, d)|.
Similarly it follows that, for r ∈ R2 (d),
|Ψ(r)| ≥ |S(r, d)| ⇔ |Ψ(r)| ≥ |S(r, d1 )|
and
|Ψ(r)| ≥ |S(r, d2 )| ⇒ |Ψ(r)| ≥ |S(r, d)|.
To summarize, we have shown the following.
(i) The distinct spiders condition for d1 implies the distinct spiders condition for d.
(ii) The distinct spiders condition for d2 implies the distinct spiders condition for d.
(iii) The distinct spiders condition for d implies the distinct spiders condition for d1
restricted to R0 ∪ R2 and the distinct spiders condition for d2 restricted to R0 ∪ R1 :
^
|Ψ(r)| ≥ |S(r, d)| ⇒
^
|Ψ(r)| ≥ |S(r, d1 )| ∧
r∈R0
r∈R(d)
^
^
|Ψ(r)| ≥ |S(r, d2 )| ∧
r∈R0
^
r∈R1
We now show that, given the distinct spiders condition for d, then
^
|Ψ(r)| ≥ |S(r, d1 )| ∧
r∈R2
|Ψ(r)| ≥ |S(r, d1 )|
r∈R1
84
[A]
|Ψ(r)| ≥ |S(r, d2 )|.
and
^
|Ψ(r)| ≥ |S(r, d2 )|
[B]
r∈R2
cannot both be false. Assume that both [A] and [B] are false. Then there exist regions rˆ1
and rˆ2 such that rˆ1 ∈ R1 (d1 ) and rˆ2 ∈ R2 (d2 ) satisfying
|Ψ(rˆ1 )| < |S(rˆ1 , d1 )| ∧ |Ψ(rˆ2 )| < |S(rˆ2 , d2 )|.
Since |S(rˆ1 , d)| = |S(rˆ1 , d1 )| − 1, |S(rˆ2 , d)| = |S(rˆ2 , d2 )| − 1 and from the distinct spiders
condition for d, we deduce that
|Ψ(rˆ1 )| = |S(rˆ1 , d)| ∧ |Ψ(rˆ2 )| = |S(rˆ2 , d)|
[C].
Now, rˆ1 ∪ rˆ2 ∈ R0 (d) since r1 ⊆ rˆ1 and r2 ⊆ rˆ2 , illustrated in figure 2.31. Furthermore
r
r^
1
s n(r )
r
2
r^
1
2
Figure 2.31: Regions causing [A] and [B] to be false.
|Ψ(rˆ1 ∪ rˆ2 )| ≥ |S(rˆ1 ∪ rˆ2 , d)|
[D].
For any region, r = a ∪ b, it is the case that
|S(a ∪ b, d)| ≥ |S(a, d)| + |S(b, d)| − |S(a ∩ b, d)|.
Therefore [D] implies
|Ψ(rˆ1 ∪ rˆ2 )| ≥ |S(rˆ1 , d)| + |S(rˆ2 , d)| − |S(rˆ1 ∩ rˆ2 , d)|
[E].
Now, the split spider sn (r) inhabits rˆ1 ∪ rˆ2 but not rˆ1 , rˆ2 or rˆ1 ∩ rˆ2 . Thus we can make a
stronger assertion than [E] above:
|Ψ(rˆ1 ∪ rˆ2 )| > |S(rˆ1 , d)| + |S(rˆ2 , d)| − |S(rˆ1 ∩ rˆ2 , d)|
[F].
From [C], [F] becomes
|Ψ(rˆ1 ∪ rˆ2 )| > |Ψ(rˆ1 )| + |Ψ(rˆ2 )| − |S(rˆ1 ∩ rˆ2 , d)|
[G].
Furthermore,
|Ψ(rˆ1 ∪ rˆ2 )| = |Ψ(rˆ1 )| + |Ψ(rˆ2 )| − |Ψ(rˆ1 ∩ rˆ2 )|
85
[H].
Therefore
|Ψ(rˆ1 ∩ rˆ2 )| < |S(rˆ1 ∩ rˆ2 , d)|.
By the distinct spiders condition for d we have
|Ψ(rˆ1 ∩ rˆ2 )| ≥ |S(rˆ1 ∩ rˆ2 , d)|
reaching a contradiction. Therefore at least one of [A] and [B] must be true. Hence, from
the distinct spiders condition for d we can infer the following:
µ ^
^
|Ψ(r)| ≥ |S(r, d1 )| ∧
|Ψ(r)| ≥ |S(r, d1 )| ∧
r∈R0
r∈R2
^
^
|Ψ(r)| ≥ |S(r, d2 )| ∧
r∈R0
µ ^
r∈R1
|Ψ(r)| ≥ |S(r, d1 )| ∨
r∈R1
^
¶
|Ψ(r)| ≥ |S(r, d2 )| ∧
¶
|Ψ(r)| ≥ |S(r, d2 )| .
r∈R2
By the distributive law and using the tautology (A ∧ B) ⇒ A to remove unwanted terms,
we deduce that the disjunction of the distinct spiders conditions for d1 and d2 holds. The
proofs of the following results for the shading conditions are similar.
(i) The shading condition for d1 implies the shading condition for d.
(ii) The shading condition for d2 implies the shading condition for d.
(iii) The shading condition for d implies the shading condition for d1 or the shading
condition for d2 .
Thus we have shown that if m satisfies d1 or d2 then m satisfies d, that is d1 t d2 ² d.
Suppose m is a model for d but m is not a model for d1 . If both the distinct spiders
condition and the shading condition for d1 are false, then m is a model for d2 . If the
distinct spiders condition for d1 is true and the shading condition for d1 is false then
the shading condition for d2 is true. Furthermore, by lemma 2.5.5, the distinct spiders
condition for d2 is true. Therefore m is a model for d2 . Similarly, if the distinct spiders
condition for d1 is false and the shading condition for d1 is true then m is a model for d2 .
Thus if m satisfies d then m satisfies d1 t d2 . Hence d ≡ d1 t d2 , that is rule 3 is valid.
QED
Part of the proof of validity for rule 4 (excluded middle) requires us to show that, if
the distinct spiders condition for d1 fails then the shading condition for d2 holds, where
d1 t d2 is a diagram obtained from unitary diagram d by an application of the excluded
86
middle rule. In order to show this, the following result is required. This next result states
that if a region, r1 , represents a set whose cardinality is the same as |S(r1 , d)| and the
distinct spiders condition holds for d then any subregion of r1 , say r2 , represents a set
whose cardinality is at most the number of spiders that inhabit r1 and touch r2 . This is
at most the number of spiders that touch r2 .
Lemma 2.5.6 Let d be a unitary diagram and m = (U, Ψ) be an interpretation. Let
r1 ∈ R(d). If |Ψ(r1 )| = |S(r1 , d)| and the distinct spiders condition for d holds then, for
each subregion r2 of r1 ,
|Ψ(r2 )| ≤ |S(r1 , d) ∩ T (r2 , d)|.
Proof Let r2 be a subregion of r1 . Then
|Ψ(r1 )| = |Ψ(r2 )| + |Ψ(r1 − r2 )|.
Since |Ψ(r1 )| = |S(r1 , d)|, we obtain
|Ψ(r2 )| + |Ψ(r1 − r2 )| = |S(r1 , d)|
(1).
Consider S(r1 , d) = {s ∈ S(d) : η(s) ⊆ r1 }. We can partition S(r1 , d) into two sets, one
whose spiders touch r2 and another whose spiders do not touch r2 . More formally,
³
´
S(r1 , d) = S(r1 , d) ∩ T (r2 , d) ∪ S(r1 − r2 , d),
thus
|S(r1 , d)| = |S(r1 , d) ∩ T (r2 , d)| + |S(r1 − r2 , d)|.
Substituting into (1),
|Ψ(r2 )| + |Ψ(r1 − r2 )| = |S(r1 , d) ∩ T (r2 , d)| + |S(r1 − r2 , d)|.
By the distinct spiders condition for d,
|Ψ(r1 − r2 )| ≥ |S(r1 − r2 , d)|
and we deduce that
|Ψ(r2 )| ≤ |S(r1 , d) ∩ T (r2 , d)|.
QED
87
Theorem 2.5.4 Rule 4, excluded middle, is valid. Let d be a unitary diagram such that
∃r ∈ R(d) • r ∩ Z ∗ (d) = ∅.
Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) and Z ∗ (d) ∪ r = Z ∗ (d2 )
3. there exists s∗ ∈ S(d1 ) such that η(s∗ ) = r and
S(d) = S(d1 ) − {s∗ } = S(d2 ).
Then d ≡ d1 t d2 .
Proof Let m = (U, Ψ) be an interpretation. If the plane tiling condition holds for any
d0 ∈ {d, d1 , d2 } then it holds for all.
For any region r0 in d it is the case that |S(r0 , d)| = |S(r0 , d2 )| since S(d) = S(d2 ).
Furthermore R(d) = R(d2 ). Thus the distinct spiders condition holds for d if and only if the
distinct spiders condition holds for d2 . For any region, r0 ∈ R(d1 ), |S(r0 , d1 )| = |S(r0 , d)|
or |S(r0 , d1 )| = |S(r0 , d)| + 1 since S(d1 ) − {s∗ } = S(d). Furthermore R(d1 ) = R(d).
Thus the shading condition for d1 implies the shading condition for d. For any region,
r0 ∈ R∗ (d), |T (r0 , d)| = |T (r0 , d1 )| since S(d1 ) − {s∗ } = S(d) and the extra spider, s∗ , in
d1 inhabits r (r contains no shaded zones in d1 ). Furthermore R∗ (d) = R∗ (d1 ). Thus
the shading condition holds for d if and only if the shading condition holds for d1 . Since
R∗ (d2 ) ⊃ R∗ (d) and for all regions, r0 , in R∗ (d2 ), |T (r0 , d2 )| = |T (r0 , d)|, it follows that the
shading condition for d2 implies the shading condition for d.
To summarize, we have shown
(Pd1 (m) ∨ Pd2 (m)) ⇒ Pd (m)
and
Pd (m) ⇒
[
Ψ(z) = U ∧
z∈Z(d1 )
^
[
Ψ(z) = U ∧
z∈Z(d2 )
|Ψ(r0 )| ≥ |S(r0 , d2 )| ∧
r0 ∈R(d2 )
^
|Ψ(r0 )| ≤ |T (r0 , d1 )|.
r0 ∈R∗ (d1 )
Suppose that m |= d and the distinct spiders condition for d1 is false. We show that
the shading condition for d2 is true. Since the distinct spiders condition for d1 is false,
88
there exists a region r1 such that
|Ψ(r1 )| < |S(r1 , d1 )| ∧ |Ψ(r1 ) ≥ |S(r1 , d)|.
Since |S(r1 , d1 )| can be at most one bigger than |S(r1 , d)|, it follows that
|Ψ(r1 )| = |S(r1 , d)|.
For any region, r3 ∈ R∗ (d2 ), we wish to show |Ψ(r3 )| ≤ |T (r3 , d2 )|. Now r3 = (r3 ∩ r1 ) ∪
(r3 − r1 ) and, since r3 ∩ r1 ⊆ r1 ,
|Ψ(r3 ∩ r1 )| ≤ |S(r1 , d) ∩ T (r3 ∩ r1 , d)|
by lemma 2.5.6.
Furthermore, if r3 − r1 ∈ R∗ (d) then, by the shading condition for d,
|Ψ(r3 − r1 )| ≤ |T (r3 − r1 , d)|.
Alternatively r3 − r1 = ∅ and it is trivial that
|Ψ(r3 − r1 )| ≤ |T (r3 − r1 , d)|.
Thus
|Ψ(r3 )| = |Ψ(r3 ∩ r1 )| + |Ψ(r3 − r1 )| ≤ |S(r1 , d) ∩ T (r3 ∩ r1 , d)| + |T (r3 − r1 , d)|
(1).
Now
S(r1 , d) ∩ T (r3 ∩ r1 , d) ⊆ T (r3 , d)
and
T (r3 − r1 , d) ⊆ T (r3 , d).
Also
S(r1 , d) ∩ T (r3 ∩ r1 , d) ∩ T (r3 − r1 , d) = ∅.
Thus
|S(r1 , d) ∩ T (r3 ∩ r1 , d)| + |T (r3 − r1 , d)| ≤ |T (r3 , d)|.
Using (1) we deduce
|Ψ(r3 )| ≤ |T (r3 , d)| = |T (r3 , d2 )|
as required. Therefore the shading condition holds for d2 . Hence Pd (m) ⇔ (Pd1 (m) ∨
Pd2 (m)) and d ≡ d1 t d2 , that is rule 4 is valid. QED
The next rule we introduced (rule 5) was the combining rule. However, we prove that
the combining rule is valid after proving that the remaining rules are valid.
89
2.5.3
Validity of the logic reasoning rules and the derived reasoning
rules
For rules 6 to 13, we omit the proofs of validity since each proof is trivial.
Theorem 2.5.5 Rules 6 to 13 (the logic reasoning rules) are valid.
Corollary 2.5.2 Rules 14 and 16 (the derived reasoning rules) are valid.
2.5.4
Validity of combining
Theorem 2.5.6 Rule 5, combining, is valid. Let d0 and d1 be unitary α-diagrams such
that Z(d0 ) = Z(d1 ) or d0 =⊥ or d1 =⊥ and let m = (U, Ψ) be an interpretation. Then
d0 u d1 ≡ d∗ , where d∗ = d0 ∗ d1 .
Proof
1. If d0 =⊥ or d1 =⊥ then d∗ =⊥ and it is trivial that d0 u d1 ≡ d∗ .
2. Suppose that Z(d0 ) = Z(d1 ) and there exists z ∈ Z(di ) for some i = 0, 1 such that
z ∈ Z ∗ (dj ) and S({z}, di ) − S({z}, dj ) 6= ∅ where j = 1 − i then d∗ =⊥. We show
that d0 u d1 is unsatisfiable. Suppose, without loss of generality, that i = 0 and
j = 1 and choose such a zone z. Suppose, for a contradiction, that interpretation
m = (U, Ψ) satisfies d0 u d1 . Then, by the distinct spiders condition for d0 ,
|Ψ(z)| ≥ |S({z}, d0 )|
(1).
By the shading condition for d1 ,
|Ψ(z)| ≤ |T ({z}, d1 )| = |S({z}, d1 )|
(2).
Furthermore S({z}, d0 ) − S({z}, d1 ) 6= ∅ so S({z}, d0 ) ⊃ S({z}, d1 ). Thus, by (1),
|Ψ(z)| > |S({z}, d1 )|
and (2) is false, reaching a contradiction. Therefore d0 u d1 is unsatisfiable. Hence
d0 u d1 ≡ d∗ .
3. Otherwise, by definition, d∗ is an unitary α-diagram such that
(a) Z(d∗ ) = Z(d0 ),
(b) Z ∗ (d∗ ) = Z ∗ (d0 ) ∪ Z ∗ (d1 ) and
90
(c) ∀ z ∈ Z(d∗ ) • S({z}, d∗ ) = S({z}, d0 ) ∪ S({z}, d1 ).
Assume interpretation m = (U, Ψ) satisfies d0 u d1 . We show that the distinct
spiders condition for d∗ holds. Let z ∈ Z(d∗ ) and suppose, without loss of generality,
S({z}, d0 ) ⊇ S({z}, d1 ). Then S({z}, d∗ ) = S({z}, d0 ) and, by the distinct spiders
condition for d0 ,
|Ψ(z)| ≥ |S({z}, d∗ )|.
Extending this to all zones in Z(d∗ ) we obtain
^
|Ψ(z)| ≥ |S({z}, d∗ )|.
z∈Z(d∗ )
Since d∗ is an α-diagram, it follows that the distinct spiders condition holds for d∗
We now show the shading condition holds for d∗ . Let z ∈ Z ∗ (d∗ ). Suppose, without
loss of generality, S({z}, d0 ) ⊇ S({z}, d1 ). Then there are two possibilities.
(i) The zone z is shaded in d0 , in which case |Ψ(z)| ≤ |T ({z}, d0 )| = |S({z}, d0 )| =
|S({z}, d∗ )| = |T ({z}, d∗ )|.
(ii) The zone z is shaded in d1 , in which case |Ψ(z)| ≤ |T ({z}, d1 )| = |S({z}, d1 )| ≤
|S({z}, d0 )| = |S({z}, d∗ )| = |T ({z}, d∗ )|.
In either case, since d∗ is an α-diagram, the shading condition for d∗ follows.
It is trivial that the plane tiling condition holds for d∗ . Hence d0 u d1 ² d∗ .
Attention now turns to the converse. We show d∗ ` d0 using rules distinct from
rule 5 (rule of combining diagrams). The diagram d∗ has the same set of zones as
d0 but will (possibly) contain extra shading and spiders. Apply rule 14 (erasure
of shading) repeatedly, erasing all shading from zones in the set Z ∗ (d∗ ) − Z ∗ (d0 )
yielding d∗0 , a diagram with the same set of zones and the same set of shaded zones
as d0 . Any zone in Z(d∗0 ) containing more spiders in d∗0 than in d0 cannot be shaded
(otherwise d∗ =⊥ by part 2). Apply rule 15 (erasure of a spider) repeatedly, erasing
all extra spiders from d∗0 yielding d0 . It follows that d∗ ` d0 and by the validity of
rules 14 (erasure of shading) and 15 (erasure of a spider), d∗ ² d0 . Similarly d∗ ² d1 .
Therefore d∗ ² d0 u d1 . Hence d0 u d1 ≡ d∗ , that is rule 5 is valid. QED
2.5.5
Soundness theorem
Having proved the validity of all the reasoning rules we are in a position to state a general
soundness theorem.
91
Theorem 2.5.7 Soundness Let D1 and D2 be spider diagrams. If D1 ` D2 then D1 ²
D2 .
Proof The proof is by induction on the length of a sequence establishing D1 ` D2 . Base
case: m = 1 and the proof is trivial. Assume that for any diagrams D1 , D2 and sequence of
length m, D1 ` D2 implies D1 ² D2 . Let D3 and D4 be diagrams such that D3 ` D4 and
there exists a sequence of diagrams hD1 , D2 , ..., Dm+1 i such that D3 = D1 , D4 = Dm+1
and Dk ° Dk+1 where 1 ≤ k < m + 1. By assumption D3 ² Dm and by the validity the
transformation rules Dm ² D4 . By transitivity it follows that D3 ² D4 . Hence for any
spider diagrams D1 , D2 , if D1 ` D2 then D1 ² D2 . QED
2.6
Completeness
In this section we show that this system of spider diagrams is complete. The strategy we
adopt is a simplified version of the strategy used to prove completeness for the SD2 system
given by Molina in [44]. Molina proved a completeness result for SD2 unitary β-diagrams
(a β-diagram is an α-diagram in which every zone contains shading or a spider, possibly
both) with the same label sets (and, therefore, the same zone sets). He then used this
result to prove completeness of the SD2 system. Given D1 ² D2 , he transformed both D1
and D2 into disjunctions of unitary β-diagrams with the same zone sets, using reversible
reasoning rules. He then applied the excluded middle rule to the β-diagram for D1 until
there were sufficient spiders and enough shading to use the completeness result for unitary
β-diagrams to show D1 ` D2 . We remove the ‘β-ising’ step and, instead, use α-diagrams.
This results in a more efficient strategy to transform D1 into D2 .
The completeness proof strategy we will use is illustrated in figure 2.32. In DiL all the
unitary parts have the same label sets. Next, we add shaded zones, until all the unitary
parts have the same zones sets, to give DiZ . We then split all the spiders to allow us to
remove all the conjuncts using the combining rule. Finally, we apply the excluded middle
rule to D1∗ . We take each unitary component, di say, of D1∗ in turn and compare di with
D2∗ . The excluded middle rule is applied to di , giving a diagram we will call ext(di , D2∗ ).
The number of applications of the excluded middle rule and how the rule is applied is
determined by comparing di to D2∗ . When applying excluded middle, we ensure that
spiders and shading can be erased from the unitary parts of ext(di , D2∗ ) to give unitary
parts of D2∗ . It then follows that D1 ` D2 .
92
D
1
a d d c o n to u rs
D 1L
D
1
1
*
2
D 2L
a d d z o n e s
D 1Z
D
D
D 2Z
s p lit s p id e rs
a
D
c o m b in e
=
1 < i< n
d
D
i
e x t ( d i, D
2
*
2
a
*
2
)
Figure 2.32: The completeness proof strategy.
2.6.1
Completeness for unitary α-diagrams
We show that if d1 ² d2 , for α-diagrams d1 and d2 with the same zone sets, then we can
erase shading and spiders from d1 to give d2 , and therefore d1 ` d2 .
A
C
d
B
A
C
d
1
A
C
B
2
d
B
3
Figure 2.33: Two α-diagrams.
Example 2.6.1 The diagrams d1 and d2 in figure 2.33 satisfy the following.
(a) Every shaded zone in d2 is shaded in d1 and contains the same number of spiders in
both diagrams.
93
(b) Every zone in d2 contains the same number or fewer spiders than in d1 .
The diagram d2 can be obtained from d1 by applying rules 14 (erasure of shading) and 15
(erasure of a spider). The zone ({B}, {A, C}) is shaded in d1 but not in d2 . Remove
this shading using rule 14, giving d3 . Next delete the extra spiders inhabiting the zones
({B}, {A, C}) and (∅, {A, B, C}) in d3 , obtaining d2 .
A
A
B
B
C
d
C
d
1
2
Figure 2.34: Two α-diagrams.
Example 2.6.2 The diagram d2 in figure 2.34 cannot be obtained from d1 . The following
is observed.
(a) The zone ({A}, {B, C}) is shaded in d2 but not shaded in d1 . There is a model for
d1 that will cause the shading condition for d2 to fail.
(b) The zone (∅, {A, B, C}) contains a single spider in d2 but is untouched in d1 . Again
we can deduce that there is a model for d1 does not satisfy d2 , this time causing the
distinct spiders condition for d2 to fail.
Hence d1 6² d2 .
We will prove that for any non-shaded zone, z, in unitary α-diagram d, we can find a
model, (U, Ψ), for d such that the cardinality of Ψ(z) is some specified integer larger than
|S({z}, d)|.
Lemma 2.6.1 Let d1 (6=⊥) be a unitary α-diagram. If z ∈ Z(d1 ) − Z ∗ (d1 ) then for any
n ∈ N there exists a model m = (U, Ψ) for d1 such that |Ψ(z)| > |S({z}, d1 )| + n
Proof Let n ∈ N, let z ∈ Z(d1 ) − Z ∗ (d1 ) and let d2 be a copy of d1 except that z contains
exactly n + 1 extra spiders, that is Z(d1 ) = Z(d2 ), Z ∗ (d1 ) = Z ∗ (d2 ) and
|S({z}, d1 )| + n + 1 = |S({z}, d2 )| ∧ ∀ z1 ∈ Z(d1 ) − {z} • S({z1 }, d1 ) = S({z1 }, d2 ).
94
Let m = (U, Ψ) be the model for d2 as constructed in theorem 2.3.1. Then for any
z2 ∈ Z(d2 )
Ψ(z2 ) = {s ∈ S(d2 ) : f (s) = z2 }.
Since d2 is an α-diagram it follows that
Ψ(z2 ) = S({z2 }, d2 ).
So
|Ψ(z)| = |S(z, d2 )| = |S({z}, d1 )| + n + 1.
Therefore
|Ψ(z)| > |S({z}, d1 )| + n.
Now since z is not shaded in d2 we can apply rule 15 (erasure of a spider) to d2 yielding
d1 (erasing the extra n + 1 spiders in z). Thus d2 ` d1 . By soundness d2 ² d1 so m |= d1 .
Hence there exists a model m = (U, Ψ) for d1 such that |Ψ(z)| > |S({z}, d)| + n. QED
In [44] there is a similar theorem for β-diagrams in the SD2 system to the one we are
about to present. The proof strategy is similar.
Theorem 2.6.1 Let d1 (6=⊥) and d2 (6=⊥) be two unitary α-diagrams. If Z(d1 ) = Z(d2 )
then the following three statements are equivalent:
1. d1 ` d2
2. d1 ² d2
3. (a) every zone that is shaded in d2 is shaded in d1 and contains the same number
of spiders in both diagrams:
Z ∗ (d2 ) ⊆ Z ∗ (d1 ) ∧ ∀ z ∈ Z ∗ (d2 ) • S({z}, d2 ) = S({z}, d1 )
and
(b) every zone in d2 contains at most the same number of spiders as in d1 :
∀ z ∈ Z(d2 ) • S({z}, d2 ) ⊆ S({z}, d1 ).
Proof
(i) 1 ⇒ 2. Follows by soundness.
95
(ii) 2 ⇒ 3. We prove the contrapositive, ¬3 implies ¬2. That is (¬3(a) ∨ ¬3(b)) ⇒
¬(d1 ² d2 ) which is equivalent to
(ii1 ) ¬3(a) ⇒ ¬(d1 ² d2 ) and
(ii2 ) ¬3(b) ⇒ ¬(d1 ² d2 ).
(ii1 ) Suppose there exists a shaded zone, z, in d2 such that
z 6∈ Z ∗ (d1 ) ∨ S({z}, d2 ) 6= S({z}, d1 ).
Suppose first that z 6∈ Z ∗ (d1 ).
Let m = (U, Ψ) be a model for d1 such
that |Ψ(z)| > |S({z}, d2 )| (such a model exists either by theorem 2.3.1 or by
lemma 2.6.1). Since z is shaded in d2 and d2 is an α-diagram m does not satisfy
d2 (the shading condition fails).
Alternatively, suppose S({z}, d2 ) 6= S({z}, d1 ). Let m = (U, Ψ) be a model for
d1 such that
|Ψ(z)| = |S({z}, d1 )|,
for example the model constructed in theorem 2.3.1. Then the shading condition or the distinct spiders condition fails for d2 , since it is not the case that
|S({z}, d2 )| ≤ |Ψ(z)| ≤ |T ({z}, d2 )| = |S({z}, d2 )|.
So in either case there is a model for d1 such that m 6|= d2 , so ¬3(a) ⇒ ¬(d1 ²
d2 ).
(ii2 ) ¬3(b) ⇒ ¬(d1 ² d2 ). Suppose there exists a zone, z, in Z(d2 ) such that
S({z}, d2 ) * S({z}, d1 ). Then |S({z}, d2 )| > |S({z}, d1 )|. Let m = (U, Ψ) be a
model for d1 such that |Ψ(z)| = |S({z}, d1 )|. Then |Ψ(z)| < |S({z}, d2 )| and the
distinct spiders condition fails for d2 so ¬(m |= d2 ). Thus ¬3(b) ⇒ ¬(d1 ² d2 ).
Hence 2 ⇒ 3.
(iii) 3 ⇒ 1. Erase the shading from the region Z ∗ (d1 ) − Z ∗ (d2 ) in d1 by a applying
rule 14 (erasure of shading), yielding d3 . The diagram d3 satisfies Z(d3 ) = Z(d2 )
and Z ∗ (d3 ) = Z ∗ (d2 ). Any shaded zone in d2 contains the same number of spiders
in d1 , by 3(a), and therefore in d3 . Any zone that is not shaded in d2 contains at
most the same number of spiders in d2 as in d1 , by 3(b), and therefore in d3 . Thus
we can apply rule 15 (erasure of a spider) repeatedly to d3 removing all extra spiders
and no others, yielding d2 . Thus d1 ` d2 . Hence 3 ⇒ 1.
96
Therefore all three statements are equivalent. QED
Hence for unitary α-diagrams with the same zone sets the system is complete.
2.6.2
Associated contour diagrams
When combining two unitary diagrams we will require the sets of contour labels to be
identical. Thus we now define the set of contour labels of a spider diagram.
Definition 2.6.1 Let D be a spider diagram. We define the set of contour labels of
D, denoted L(D) as follows:
1. If D is a unitary diagram then L(D) is already defined.
2. If D = D1 ¤D2 , where D1 and D2 are spider diagrams and ¤ ∈ {u, t} then L(D) =
L
à (D1 ) ∪ L(D2 ).
For each diagram, D, we define a contour diagram associated with D.
Definition 2.6.2 Let L be a finite subset of CL. Given L, for any unitary diagram, d,
such that L ⊇ L(d) a contour diagram associated with d, denoted dL , is any unitary
diagram such that L = L(dL ) and d ≡` dL unless d =⊥, then dL = d.
Let D = D1 ¤D2 (¤ ∈ {u, t}) be any spider diagram not in D0 such that L ⊇ L(D).
Given L, a contour diagram associated with D is DL = D1L ¤D2L where, given L, D1L
and D2L are contour diagrams associated with D1 and D2 respectively.
A
A
B
B
C
A
B
C
d
d
1
d
2
Figure 2.35: A diagram with two associated contour diagrams.
Example 2.6.3 The set {A, B, C} is a finite subset of CL. Given L, diagram d (with
label set {A, B}) in figure 2.35 has (among others) associated contour diagrams d1 and
d2 . The diagram d1 is obtained by introducing C to d whereas diagram d2 is obtained by
converting d to Venn form and then introducing C.
From the above example we see that associated contour diagrams are not unique.
97
Theorem 2.6.2 Let L be a finite subset of CL and let D be a spider diagram such that
L ⊇ L(D). Given L, there exists a contour diagram, DL , associated with D and for any
such DL , D ≡` DL .
Proof (Sketch) The proof is by induction on the depth of D in the inductive construction.QED
2.6.3
Associated zone diagrams
The next stage in our completeness proof strategy is to introduce zones until all unitary
parts have the same zone sets. To formalize this we now define associated zone diagrams.
In order to do so we first define the set of unitary components of a spider diagram.
Definition 2.6.3 Let D be a spider diagram. The set of unitary components of D,
denoted comp(D), is defined as follows:
(i) If D ∈ D0 then comp(D) = {D}.
(ii) If D = D1 ¤D2 for some D1 , D2 ∈ D+ , ¤ ∈ {u, t} then comp(D) = comp(D1 ) ∪
comp(D2 ).
Definition 2.6.4 Let Z be a finite subset of Z such that
∀(a1 , b1 ), (a2 , b2 ) ∈ Z • a1 ∪ b1 = a2 ∪ b2 .
Given Z, for any unitary diagram, d (6=⊥), such that Z ⊇ Z(d) the zone diagram
associated with d, denoted dZ , is the unitary diagram defined as follows.
1. The zones of dZ are those of d together with those in Z: Z(dZ ) = Z(d) ∪ Z = Z.
2. The shaded zones of dZ are those of d together with those in Z that are not in d:
Z ∗ (dZ ) = Z ∗ (d) ∪ (Z − Z(d)).
3. The spiders match: SI(dZ ) = SI(d).
If d =⊥ then the zone diagram associated with d is ⊥.
Let D = D1 ¤D2 (¤ ∈ {u, t}) be any diagram such that, for each d in comp(D) Z ⊇ Z(d)
or d =⊥. Given Z, the zone diagram associated with D is DZ = D1Z ¤D2Z where D1Z
and D2Z are the zone diagrams associated with D1 and D2 respectively.
98
A
B
B
d
A
d
1
2
Figure 2.36: A diagram with an associated zone diagram.
Example 2.6.4 The zone set Z = {(∅, {A, B}), ({A}, {B}), ({B}, {A}), ({A, B}, ∅)} is a
finite subset of Z. Given Z, the diagram d1 in figure 2.36 has associated zone diagram d2 .
The diagram d2 is obtained by introducing zone ({A, B}, ∅) to d1 .
Given a zone set, associated zone diagrams are unique.
Theorem 2.6.3 Let Z be a finite subset of Z such that
∀(a1 , b1 ), (a2 , b2 ) ∈ Z • a1 ∪ b1 = a2 ∪ b2 .
Let D be any diagram such that for each d in comp(D), Z ⊇ Z(d) or d =⊥. Given Z, let
DZ be the zone diagram associated with D. Then D is syntactically equivalent to DZ .
Proof (Sketch) Suppose D is a unitary diagram. If D =⊥ then DZ =⊥ and D ≡` DZ .
Alternatively, D 6=⊥. Apply rule 2 (introduction of a shaded zone) to D, introducing all
zones in Z − Z(D) to give DZ . Then D ≡` DZ . The result then follows by induction on
the depth of D in the inductive construction. QED
2.6.4
Associated α-diagrams
Any spider diagram that is not an α-diagram may be transformed into an α-diagram using
the splitting spiders rule.
B
A
B
A
d
d
B
A
1
d
2
Figure 2.37: Obtaining α-diagrams.
Example 2.6.5 The diagram d in figure 2.37 is syntactically equivalent to the α-diagram
d1 t d2 . This equivalence is established by an application of rule 3, splitting spiders.
99
We wish to define for any spider diagram its associated α-diagram. To aid the definition
of such a diagram we introduce the notion of an α-subdiagram of a unitary diagram.
Informally, we can obtain an α-subdiagram of a diagram d by erasing, for each spider in
d, all feet except one.
Definition 2.6.5 Let d1 be a unitary diagram and d2 be a unitary α-diagram. If d1 6=⊥,
Z(d1 ) = Z(d2 ), Z ∗ (d1 ) = Z ∗ (d2 ) and there exists a bijection σ : S(d1 ) → S(d2 ) such that
∀ s ∈ S(d1 ) • η(s) ⊇ η(σ(s))
then d2 is an α-subdiagram of d1 , denoted d2 vα d1 . If d1 =⊥ then the α-subdiagram
of d1 is ⊥.
B
A
d
B
A
B
A
d
1
2
Figure 2.38: An α-subdiagram of d2 transformed into d2 .
Example 2.6.6 In figure 2.38 diagram d1 is an α-subdiagram of d2 . Furthermore, by
applying rule 16 (adding feet to a spider) twice we see that d2 is obtainable from d1 .
Lemma 2.6.2 Let d1 and d2 be unitary diagrams. If d2 vα d1 then d2 ` d1 .
Definition 2.6.6 Let D be a spider diagram.
1. If D is a unitary diagram we define DαD = {d0 ∈ D0 : d0 vα D}, the set of all
α-subdiagrams of D. Then the diagram
α
d0
D=
D
d0 ∈Dα
is the α-diagram associated with D.
2. If D = D1 ¤D2 for some D1 , D2 ∈ D+ and ¤ ∈ {u, t} then the diagram α D1 ¤ α D2
is the α-diagram associated with D where
αD
1
and
αD
2
are the α-diagrams
associated with D1 and D2 respectively.
The definition of an associated α–diagram is an extension of that given in [44] for the
SD1 and SD2 systems.
100
A
A
B
B
A
d
1
A
B
B
2
d
4
A
d
B
d
d
3
Figure 2.39: A unitary diagram with a syntactically equivalent α-diagram.
Example 2.6.7 The diagram d in figure 2.39 has associated α-diagram α D = d1 t d2 t d4 .
The diagrams d and α D are syntactically equivalent. This equivalence is established by
splitting the spiders in d and using idempotency to remove the surplus diagram d3 .
We wish to show that any diagram is syntactically equivalent to its associated αdiagram.
Lemma 2.6.3 Let d be a unitary diagram and D be the α-diagram obtained from d by
applying rules 3 (splitting spiders) and 12 (simplification 1) repeatedly to d. Then Dαd =
comp(D).
Proof Let d1 ∈ comp(D). It is trivial that d1 vα d and d1 ∈ Dαd . Hence comp(D) ⊆ Dαd .
Let d2 ∈ Dαd . Then there exists a bijection σ : S(d) = S(d2 ) such that
∀ s ∈ S(d) • η(s) ⊇ η(σ(s)).
If d is an α-diagram then d = d2 and d2 ∈ comp(D). Suppose S(d) = {s1 , ..., sn } ∪
{sn+1 , ..., sn+m } where {s1 , ..., sn } is a set of spiders with more than one foot and {sn+1 , ...,
sn+m } is a set of spiders, each with exactly one foot. Apply rule 3 (splitting spiders)
to s1 in d where r1 = η(s1 ) − η(σ(s1 )) and r2 = η(σ(s1 )) yielding d01 t d002 . Assume
that after applying rules 3 (splitting spiders) and 12 (t-simplification) k times: once for
each spider s1 , ..., sk , (k < n) we obtain d ` d01 t d02 t ... t d0k t d00k+1 where S(d00k+1 ) =
{σ(s1 ), σ(s2 ), ...σ(sk )} ∪ {sk+1 , ..., sn+m }. In the case where k = n, S(d00n+1 ) = im(σ).
Therefore d00n+1 = d2 and it follows that d2 ∈ comp(D). Therefore Dαd ⊆ comp(D). Hence
Dαd = comp(D). QED
101
Lemma 2.6.4 Let d be a unitary diagram and let α D be the α-diagram associated with
d. Then d ≡`
α D.
Proof If d =⊥ the result follows immediately, since d = α D.
If d 6=⊥ we split each spider in d until each unitary diagram is an α-diagram: by
repeated application of rules 3 (splitting spiders) and 12 (simplification 1) we obtain
d`
1≤i≤n
di
where each di vα d. Apply rules 8 (idempotency 1) and 12 (simplification 1) to remove
any duplicated diagrams to give
1≤i≤n
di `
1≤i≤m
d0i
(m ≤ n)
where each of the d0i are distinct. Then {d01 , ..., d0m } = comp(α D) and by lemma 2.6.3,
comp(α D) = Dαd . Thus
1≤i≤m
d0i = α D and by transitivity we obtain d ` α D.
To show the converse, by lemma 2.6.2 we have d0i ` d for each d0i ∈ Dαd so
by the rule of construction (theorem 2.4.1). Hence d ≡`
α D.
QED
d0 ` d
d
d0 ∈Dα
We now extend this result to all spider diagrams.
Theorem 2.6.4 Let D be a spider diagram and let α D be the α-diagram associated with
D. Then D ≡`
α D.
Proof (Sketch) The proof follows by induction on the depth of D in the inductive
construction. QED
2.6.5
Combining α-diagrams
The next stage in our completeness proof strategy is to remove all the conjuncts and for
this we use the combining rule.
Definition 2.6.7 Let D be an α-diagram such that each pair of unitary components,
d1 , d2 ∈ comp(D), satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. The combined diagram
associated with D, denoted D∗ , is defined as follows.
(i) If D is a unitary diagram then D∗ = D.
(ii) If D = D1 t D2 , for some D1 and D2 , then
D∗ = D1∗ t D2∗
where D1∗ and D2∗ are combined diagrams associated with D1 and D2 respectively.
102
(iii) If D = D1 u D2 then
D∗ =
di ∈comp(D1∗ )∧dj ∈comp(D2∗ )
di ∗ dj .
We now prove that D is syntactically equivalent to D∗ .
Theorem 2.6.5 Let D be an α-diagram such that each pair of unitary components,
d1 , d2 ∈ comp(D), satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. Then D ≡` D∗
Proof The proof is by induction on the depth of D in the inductive construction. If
D ∈ D0 then D = D∗ and the base case holds.
Assume that for any α-diagram D ∈ Dn such that each pair of unitary components,
d1 , d2 ∈ comp(D), satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥ it is the case that D ≡`
D∗ , where D∗ is the combined diagram associated with D. Let D1 ∈ Dn+1 − Dn be
an α-diagram such that each pair of unitary components, d1 , d2 ∈ comp(D1 ), satisfy
Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. Then D1 = D2 ¤D3 for some ¤ ∈ {u, t} and
D2 , D3 ∈ Dn for which each pair of unitary components, d1 , d2 ∈ comp(D2 ) ∪ comp(D3 ),
satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. Let D1∗ be the combined diagram associated
with D1 .
Suppose firstly that ¤ = t. Then D1∗ = D2∗ t D3∗ where D2∗ and D3∗ the combined
diagrams associated with D2 and D3 respectively. By assumption D2 ≡` D2∗ and D3 ≡`
D3∗ . Therefore we have
D1
=
D2 t D3
≡` D2∗ t D3
by corollary 2.4.1 (rule of replacement)
≡` D2∗ t D3∗
by corollary 2.4.1 (rule of replacement)
=
D1∗
Hence D1 ≡` D1∗ .
Alternatively ¤ = u. Then
D∗ =
di ∈comp(D1∗ )∧dj ∈comp(D2∗ )
di ∗ dj .
Since D2∗ and D3∗ are combined diagrams it must be that D2∗ =
1≤j≤m
1≤i≤n
d2,i and D3∗ =
d3,j where each d2,i (1 ≤ i ≤ n) and d3,j (1 ≤ j ≤ m) is a unitary diagram. Using
rules 10 (t-distributivity) and 12 (t-simplification) we can show
Ã
! Ã
!
D2∗ u D3∗ =
1≤i≤n
d2,i
u
1≤j≤m
d3,j
103
≡`
(d2,i u d3,j ).
1≤i≤n∧1≤j≤m
Now for each d2,i and d3,j , d2,i ∗ d3,j ≡` d2,i u d3,j , by rule 5 (combining). Therefore
D2∗ u D3∗ ≡`
(d2,i ∗ d3,j ) = D1∗
by rule 12 (t-simplification).
1≤i≤n∧1≤j≤m
We have shown
D1
=
D2 u D3
≡` D2∗ u D3∗
by corollary 2.4.1 (rule of replacement)
≡` D1∗
Hence D1 ≡` D1∗ . QED
2.6.6
Extended diagrams
Suppose we have a unitary α-diagram d and a disjunction of unitary α-diagrams, D,
such that Z(d) = Z(di ) or di =⊥ for each di ∈ comp(D). We are aiming to find an
α-diagram which we call the extended diagram associated with d in the context of D,
ext(d, D), syntactically equivalent to d. The diagram ext(d, D) will have the property
that, if a unitary component of ext(d, D), say e d, satisfies e d ² D then there exists a
unitary component of D, say di , satisfying e d ² di . In [44] a similar diagram to ext(d, D)
was defined for the SD2 system which the author calls the extended diagram associated
with d and D. In SD2 the author places the stronger condition that D is a β-diagram.
Example 2.6.8 In figure 2.40, D is a semantic consequence of d but no unitary component
of D is a semantic consequence of d, that is
d 6² d1 ∧ d 6² d2 ∧ d 6² d3 .
The diagram ext(d, D) can be obtained from d (and vice versa) by applying rules 4 (excluded middle) and 12 (simplification 1). The spiders and shading introduced to d, yielding
ext(d, D), are determined by D. For example, consider zone (∅, {A}). This zone is shaded
and contains two spiders in d3 . No other unitary component of D contains more than
two spiders in this zone. Thus we apply excluded middle to d, adding two spiders to this
zone. Since (∅, {A}) is shaded in d3 , we need to apply excluded middle again, so that any
occurrence of (∅, {A}) containing two spiders is also shaded. In ext(d, D) we see that this
zone, (∅, {A}), contains either one, two or three spiders in any unitary component. The
process of constructing ext(d, D) will become apparent in definitions 2.6.8 and 4.7.18.
Note that we have
d01 ² d1 ∧ d02 ² d2 ∧ d03 ² d1 ∧ d03 ² d3 ∧ d04 ² d1 ∧ d05 ² d2 ∧ d06 ² d2 ∧ d06 ² d3
104
A
A
A
A
d
d
1
2
d
d
A
3
A
A
D
d '1
A
d '2
A
d '4
d '5
e x t( d ,D )
A
d '3
d '6
Figure 2.40: An α-diagram and an extended diagram.
so for each unitary component, d0i , of ext(d, D) there exists a unitary component, dj of D
such that d0i ² dj . By theorem 2.6.1 d0i ` dj . Thus
d01 t d03 t d04 ` d1 ∧ d02 t d05 t d06 ` d2
by the rule of construction. Therefore
ext(d, D) = d01 t d03 t d04 t d02 t d05 t d06 ` d1 t d2
by the rule of replacement. By rule 6 (connecting a diagram) d1 td2 ` D and by transitivity
ext(d, D) ` D.
Therefore d ` D, since d ≡` ext(d, D).
The diagram ext(d, D) will be constructed by taking copies of d and adding shading
and spiders, as specified below. The unitary components of ext(d, D) are called extended
unitary components associated with d.
105
Definition 2.6.8 Let d be a unitary α-diagram and D be an α-diagram. Let e d be a
unitary α-diagram. If d 6=⊥ then, given D, e d is an extended unitary component
e d, if and only if the following hold.
associated with d, denoted d vD
e
1. The diagrams d and e d have the same zones: Z(d) = Z(e d).
2. All shading in d occurs in e d: Z ∗ (d) ⊆ Z ∗ (e d).
3. All spiders in d occur in e d: S(d) ⊆ S(e d).
4. If zone z is shaded in d then the spiders match: ∀ z ∈ Z ∗ (d) • S({z}, d) = S({z}, e d).
5. If zone z is not shaded in d but is shaded in some unitary component of D and the
number of spiders z contains in d is at most the number z contains in any unitary
component of D in which z is shaded, say m spiders, then
(a) if z is shaded in e d then z contains at most m spiders in ed
(b) and, if z is not shaded in e d then z contains m + 1 spiders in e d,
more formally:
∀ z ∈ Z(d) − Z ∗ (d) •
µ
S
z∈
Z ∗ (di ) ∧ S({z}, d) ⊆
di ∈comp(D)
µ³
z ∈ Z ∗ (e d) ∧ S({z},e d) ⊆
S
di ∈comp(D)∧z∈Z ∗ (di )
S
di ∈comp(D)∧z∈Z ∗ (di )
³
¯
z ∈ Z(e d) − Z ∗ (e d) ∧ |S({z},e d)| = ¯
¶
S({z}, di ) ⇒
´
S({z}, di ) ∨
S
di ∈comp(D)∧z∈Z ∗ (di )
´¶
¯
S({z}, di )¯ + 1) .
6. Let z ∈ Z(d)−Z ∗ (d). If z is not shaded in any unitary component of D or z contains
more spiders in d than any shaded occurrence of z in D then z is not shaded in e d
and z contains the same number of spiders in e d as in d, more formally:
∀ z ∈ Z(d) − Z ∗ (d) •
µ
S
z 6∈
Z ∗ (di ) ∨ S({z}, d) ⊃
di ∈comp(D)
S
di ∈comp(D)∧z∈Z ∗ (di )
¶
S({z}, di ) ⇒
µ
¶
e
∗
e
e
z ∈ Z( d) − Z ( d) ∧ S({z}, d) = S({z}, d) .
If d =⊥ then the extended unitary component associated with d is ⊥.
Definition 2.6.9 Let d be a unitary α-diagram and let D be a disjunction of unitary
α-diagrams such that Z(d) = Z(di ) or di =⊥ for each di ∈ comp(D). Given D, define
0
Ded = {d0 ∈ D0 : d vD
e d },
106
the set of all extended unitary components associated with d. Then the diagram
d0
ext(d, D) =
d0 ∈Ded
is the extended diagram associated with d in the context of D.
Example 2.6.9 In figure 2.40 each d0i is an extended unitary component associated with
d given D. Indeed, all such e d are present, so ext(d, D) is the extended diagram associated
with d in the context of D.
Theorem 2.6.6 Let d be a unitary α-diagram and let D be a disjunction of unitary αdiagrams such that Z(d) = Z(di ) or di =⊥ for each di ∈ comp(D). Then d is syntactically
equivalent to ext(d, D), the extended diagram associated with d in the context of D:
d ≡` ext(d, D).
Proof Follows by repeated application of rules 4 (excluded middle) and 12 (simplification
1) to d in the case where d 6=⊥. When d =⊥ the result follows immediately. QED
2.6.7
Completeness theorem
The next result is essential to the proof of completeness and has an analogy in SD2. The
general proof strategy is the same as that given in [44], modified to accommodate the
extension of the system.
Theorem 2.6.7 Let d be a unitary α-diagram and let D be a disjunction of unitary αdiagrams such that Z(d) = Z(di ) or di =⊥ for each di ∈ comp(D). Given D, let e d ∈ Ded .
If e d ² D then there exists a unitary component of D, say di , such that e d ² di :
e
d ² D ⇒ ∃di ∈ comp(D) • e d ² di .
Proof The proof is by contradiction. Assume e d ² D but there is no di ∈ comp(D) for
which e d ² di . By theorem 2.6.1 for each di the following holds:
(i) ∃ z ∈ Z ∗ (di ) • z 6∈ Z ∗ (e d) ∨ S({z}, di ) 6= S({z},e d) or
(ii) ∃ z ∈ Z(di ) • S({z},e d) ⊂ S({z}, di ).
Let m = (U, Ψ) be a model for e d with the property that, for each zone in Z(e d), |Ψ(z)| =
|S({z},e d)| (an example of such a model is the one constructed in theorem 2.3.1, since e d
107
is an α-diagram). We show that m does not satisfy any di in D, and therefore e d 6² D
reaching a contradiction.
Suppose that (i) is true. Firstly consider the case where z 6∈ Z ∗ (e d), then z ∈ Z(e d) −
S
Z ∗ (e d). So z ∈ Z(d)−Z ∗ (d) and, by the definition of e d, S({z},e d) ⊃
S({z}, dj ) ⊇
S({z}, di ). Now |Ψ(z)| =
|S({z},e d)|
dj ∈comp(D)∧z∈Z ∗ (dj )
> |S({z}, di )| = |T ({z}, di )| and it follows that the
shading condition fails for di .
Consider now the case where S({z}, di ) 6= S({z},e d). Then either the shading condition fails for di (as above) or the distinct spiders condition fails for di . Hence m 6|= di .
Suppose that (ii) is true. That is
∃ z ∈ Z(di ) • S({z},e d) ⊂ S({z}, di ).
Then |Ψ(z)| = |S({z},e d)| < |S({z}, di )|, thus the distinct spiders condition fails for di .
Hence m 6|= di .
Thus m does not satisfy any unitary component of D and by the definition of the
semantics predicate for D, m does not satisfy D. This contradicts the assumption that
ed
² D. Hence if e d ² D then there exists di ∈ comp(D) such that e d ² di . QED
We are now in a position to prove completeness, using the strategy outlined on page 93.
Theorem 2.6.8 Completeness Let D1 and D2 be spider diagrams. If D1 ² D2 then
D1 ` D2 .
Proof Assume that D1 ² D2 . Given L = L(D1 ) ∪ L(D2 ) let D1L and D2L be the contour
diagrams associated with D1 and D2 respectively. Given
[
Z=
Z(d),
d∈comp(D1L )∪comp(D2L )
let D1Z and D2Z zone diagrams associated with D1L and D2L respectively. Let α D1Z and
α DZ
2
be α-diagrams associated with D1L and D2L respectively. Let D1∗ and D2∗ be combined
diagrams associated with α D1Z and α D2Z respectively. Then
D1 ≡` D1L
by theorem 2.6.2
≡` D1Z
by theorem 2.6.3
≡`
α
D1Z
≡` D1∗
by theorem 2.6.4.
by theorem 2.6.5.
By transitivity,
D1 ≡` D1∗
108
(1).
Similarly
D2 ≡` D2∗
(2).
By soundness
D1∗ ² D1 ∧ D2 ² D2∗ .
By transitivity,
D1∗ ² D2∗ .
Since D1∗ and D2∗ are disjunctions of unitary diagrams,
D1∗ =
D2∗ =
1≤i≤n
1≤j≤l
d1,i
and
d2,j
where each d1,i (1 ≤ i ≤ n) and d2,j (1 ≤ j ≤ l) is a unitary α-diagram. The semantics
predicate for D1∗ is
_
Pd1,i (m)
1≤i≤n
where m = (U, Ψ) is an interpretation. Therefore, for all d1,i (1 ≤ i ≤ n) we have
d1,i ² D1∗
(3).
Let ext(d1,i , D2∗ ) be the extended diagram associated with d1,i in the context of D2∗ . By
theorem 2.6.6,
d1,i ≡` ext(d1,i , D2∗ )
and by soundness
d1,i ≡ ext(d1,i , D2∗ ).
We have ext(d1,i , D2∗ ) ² d1,i and d1,i ² D1∗ and D1∗ ² D2∗ so by transitivity
ext(d1,i , D2∗ ) ² D2∗ .
Now
ext(d1,i , D2∗ ) =
e
1≤p≤k
d1,p
for some unitary diagrams e d1,p , (1 ≤ p ≤ k). Similarly to (3) we deduce
∀ e d1,p (1 ≤ p ≤ k) • e d1,p ² D2∗ .
By theorem 2.6.7
∀ e d1,p (1 ≤ p ≤ k) ∃d2,j (1 ≤ j ≤ m) • e d1,p ² d2,j .
109
By theorem 2.6.1,
∀ e d1,p (1 ≤ p ≤ k) ∃d2,j (1 ≤ j ≤ m) • e d1,p ` d2,j .
By rule 6 (connecting a diagram)
∀ e d1,p (1 ≤ p ≤ k) • e d1,p ` D2∗ .
By theorem 2.4.1 (rule of construction)
ext(d1,i , D2∗ ) ` D2∗
Since, by theorem 2.6.6, d1,i ` ext(d1,i , D2∗ ) by transitivity we obtain
∀ d1,i (1 ≤ i ≤ n) • d1,i ` D2∗ .
By theorem 2.4.1 (rule of construction)
D1∗ ` D2∗
(4).
Now
D1 ` D1∗
by (1)
` D2∗
by (4)
` D2
by (2).
Finally, by transitivity, D1 ` D2 . Therefore
D1 ² D2 ⇒ D1 ` D2 .
Hence the system is complete. QED
We have seen that the spider diagram system is both sound and complete. An immediate consequence of the completeness proof strategy is that the system is also decidable.
Theorem 2.6.9 Decidability Let D1 and D2 be spider diagrams. There is an algorithm
that determines whether D1 ` D2 .
Proof (Sketch) Given D1 and D2 , apply the completeness proof algorithm to both D1
and D2 , giving D1∗ and D2∗ as above. For each unitary part, d1 , of D1∗ , obtain ext(d1 , D2∗ ).
Then either each unitary part of ext(d1 , D2∗ ) syntactically entails a unitary part of D2∗ or
there exists a unitary part of ext(d1 , D2∗ ) that does not syntactically entail a unitary part
of D2∗ . In the latter case, we can deduce that D1 6` D2 . QED
110
Chapter 3
The Expressiveness of Spider
Diagrams
We now investigate the expressiveness of this spider diagram system. Shin showed that her
Venn-II language is equivalent in expressive power to a first order monadic language without equality [49]. There are no constant or function symbols in Shin’s language. To Shin’s
language we add equality and show that this gives rise to a first order language, which we
call ESD (for Expressiveness of Spider Diagrams), which is equivalent in expressive power
to our spider diagram reasoning system.
3.1
The language ESD
Spider diagrams do not have syntactic elements to denote constants or functions. We can
express statements of the form ‘there are at least n elements in A’ and ‘there are at most
m elements in A’. A first order language equivalent in expressive power to the spider
diagram language will involve equality, to allow us to express distinctness of elements, and
monadic predicates, to allow us to express x ∈ A. In order to define such a language we
require a countably infinite set of monadic predicate symbols, P, from which all monadic
predicate symbols will be drawn.
Definition 3.1.1 The first order language ESD consists of the following.
1. Variables, x1 , x2 , ... of which there are countably many.
2. Atomic formulae which are defined as follows,
(a) if xi and xj are variables then (xi = xj ) is an atomic formula,
(b) if Pi ∈ P and xj is a variable then Pi (xj ) is an atomic formula.
3. Formulae, which are defined inductively.
111
(a) Atomic formulae are formulae.
(b) ⊥ and > are formulae.
(c) If p and q are formulae so are (p ∧ q), (p ∨ q) and ¬p.
(d) If p is a formula and xj is a variable then (∀xj p) and (∃xj p) are formulae.
We define VAR, F and S to be the sets of variables, formulae and sentences (formulae
with no free variables) of the language ESD, respectively.
We shall assume the standard first order predicate logic semantic interpretation of
formulae in this language (see, for example, [3]) with one exception: we allow a structure
to have an empty domain. Logic with potentially empty structures is explored in [29, 39].
3.2
Structures and Interpretations
We wish to identify when a diagram and a sentence express the same information. To aid us
formalize this notion, we map interpretations to structures in such a way that information
is preserved. For this discussion we will fix the set of contour labels, CL = {L1 , L2 , ...},
and the set of monadic predicate symbols, P = {P1 , P2 , ...}. We define U to be the class
of all sets. The sets in U form the domains of structures in the language ESD.
Definition 3.2.1 Define IN T to be the class of all interpretations for spider diagrams,
that is
IN T = {(U, Ψ) : U ∈ U ∧ Ψ : R → PU },
where (U, Ψ) is an interpretation. Define also ST R to be the class of structures for the
language ESD, that is
ST R = {m : U ∈ U ∧ m = hU, =m , P1m , P2m , ...i},
where Pim is the interpretation of Pi in the structure m (that is, Pim ⊆ U ) and we always
interpret = as the diagonal subset of U × U , denoted diag(U × U ).
Lemma 3.2.1 The function, h : IN T → ST R defined by
h(U, Ψ) = hU, diag(U × U ), Ψ(L1 ), Ψ(L2 ), ...i
is a bijection.
112
Essentially h(U, Ψ) is just a different way of writing (U, Ψ). We shall make frequent use
of the function h defined in lemma 3.2.1 throughout this chapter. Our aim is to identify,
for each diagram, a sentence that expresses the same information. We also aim, for each
sentence, to identify a diagram that expresses the same information and we now formalize
this notion. A diagram and a sentence express the same information when h provides a
bijective correspondence between their models, illustrated in figure 3.1.
in te rp re ta tio n s
h
s tru c tu re s
m o d e ls
fo r S
m o d e ls
fo r D
D
e x p re s s iv e ly
e q u iv a le n t
S
Figure 3.1: A model-level relationship between expressively equivalent diagrams and sentences.
Definition 3.2.2 Let D be a diagram and S be a sentence. We say D and S are expressively equivalent if and only if
{h(U, Ψ) : (U, Ψ) ∈ IN T ∧ (U, Ψ) |= D} = {m ∈ ST R : m |= S}.
So a diagram and a sentence are expressively equivalent if and only if they have the
same models (although these models are represented differently).
3.3
Mapping from Diagrams to Sentences
To show that the spider diagram language is not more expressive than ESD we will
map diagrams to expressively equivalent sentences. Recall that every spider diagram
is semantically equivalent to a disjunction of unitary α-diagrams. Thus to show that
the spider diagram language is at most as expressive as ESD we will only identify an
expressively equivalent sentence for each disjunction of unitary α-diagrams.
L
L
1
d
L
2
1
L
3
d
1
2
Figure 3.2: Two α-diagrams: from diagrams to sentences.
113
Example 3.3.1 The diagram d1 in figure 3.2 contains three spiders, one outside both
L1 and L2 , the other two inside L2 and outside L1 and is expressively equivalent to the
sentence
∃x1 (¬P1 (x1 ) ∧ ¬P2 (x1 )) ∧ ∃x1 ∃x2 (P2 (x1 ) ∧ P2 (x2 ) ∧ ¬P1 (x1 ) ∧ ¬P1 (x2 ) ∧ x1 6= x2 ).
The diagram d2 expresses no elements can be in L3 and not in L1 (due to the missing
zone) and no elements can be in both L1 and L3 (due to the shading) and is expressively
equivalent to the sentence
∀x1 ¬(P3 (x1 ) ∧ ¬P1 (x1 )) ∧ ∀x1 ¬(P1 (x1 ) ∧ P3 (x1 )).
The diagram d1 t d2 is expressively equivalent to the disjunction of the sentences given
for d1 and d2 .
To construct sentences for diagrams, it is useful to map zones to formulae as follows.
Definition 3.3.1 Define a function to map zones to formulae, ZF : Z × VAR → F (ZF
for ‘zone formula’) by, for each (a, b) ∈ Z − {(∅, ∅)} and variable xj ,
ZF((a, b), xj ) =
^
^
Pk (xj ) ∧
Lk ∈a
¬Pk (xj )
Lk ∈b
and
ZF((∅, ∅), xj ) = >.
We use the function ZF to construct a sentence of ESD for each zone in a unitary
α-diagram. We shall take these zone sentences in conjunction to identify a sentence
expressively equivalent to the diagram. We define D0α to be the class of all unitary αdiagrams and Dα to be the class of all disjunctions of unitary α-diagrams.
Definition 3.3.2 The partial function ZS : Z × D0α → S (ZS for ‘zone sentence’) is
specified for unitary α-diagram d and zone z in V Z(d) (recall V Z(d) is the Venn zone set
of d) as follows.
1. If z is not shaded in d and S({z}, d) = ∅ then
ZS(z, d) = >.
2. If z is not shaded in d and |S({z}, d)| = n > 0 then
ZS(z, d) = ∃x1 ...∃xn (
^
1≤j<k≤n
114
¬(xk = xj ) ∧
^
1≤k≤n
ZF(z, xk )).
3. If z is either missing from d or shaded in d and S({z}, d) = ∅ then
ZS(z, d) = ∀x1 ¬ZF(z, x1 ).
4. If z is shaded in d and |S({z}, d)| = n > 0 then
µ
^
^
ZS(z, d) = ∃x1 ...∃xn
¬(xk = xj ) ∧
ZF(z, xk ) ∧
1≤j<k≤n
³
∀xn+1
¡ _
xn+1
1≤k≤n
¶
¢´
= xj ∨ ¬ZF(z, xn+1 )
.
1≤j≤n
Definition 3.3.3 Define DS : Dα → S (DS for ‘diagram sentence’) as follows.
1. If d =⊥ then DS(d) =⊥.
2. If d (6=⊥) is a unitary α-diagram then
DS(d) =
^
(ZS(z, d)).
z∈V Z(d)
3. If D = D1 t D2 then DS(D) = (DS(D1 )) ∨ (DS(D2 )).
We wish to show, for unitary α-diagram d, that DS(d) is expressively equivalent to d.
To do this, we shall consider each zone of d in turn. Thus it is useful to consider when an
interpretation satisfies a zone, which we now define.
Definition 3.3.4 Let m = (U, Ψ) be an interpretation and let d (6=⊥) be a unitary αdiagram. Let z ∈ V Z(d). Given d, we say m satisfies z, denoted m |=d z if and only if
the following hold.
1. The number of elements in the set represented by z is at least the number of spiders
in z:
|Ψ(z)| ≥ |S({z}, d)|.
2. If z is shaded or missing then the number of elements in the set represented by z
equals the number of spiders in z:
z ∈ Z ∗ (d) ∪ (V Z(d) − Z(d)) ⇒ |Ψ(z)| = |S({z}, d)|.
Lemma 3.3.1 Let m = (U, Ψ) be an interpretation and let d (6=⊥)be a unitary α-diagram.
The interpretation m satisfies d if and only if m satisfies all the Venn zones of d:
m |= d ⇔ (∀z ∈ V Z(d) • m |=d z).
115
Proof (Sketch) Noting that when d is an α-diagram, S(r, d) = T (r, d) for each region
r in d the result follows from a straightforward restatement of the semantics predicate.
QED
Corollary 3.3.1 Let d be a unitary α-diagram. Then
{(U, Ψ) ∈ IN T : (U, Ψ) |= d} =
\
{(U, Ψ) ∈ IN T : (U, Ψ) |=d z}.
z∈V Z(d)
Theorem 3.3.1 Let d be a unitary α-diagram. Diagram d is expressively equivalent to
DS(d).
Proof (Sketch) For each zone, z ∈ V Z(d), in turn, show that
{h(p) ∈ IN T : p |=d z} = {m ∈ ST R : m |= ZS(z)}.
The result then follows by lemma 3.3.1. QED
Corollary 3.3.2 Let D be a disjunction of unitary α-diagrams. Then D is expressively
equivalent to DS(D).
Hence the language of spider diagrams is at most as expressive as the language ESD.
3.4
Mapping from Sentences to Diagrams
We now consider the more challenging task of constructing a diagram for a sentence. Since
every formula is semantically equivalent to a sentence obtained by prefixing the formula
with ∀xi for each free variable xi (i.e. constructing its universal closure) we only need to
identify a diagram expressively equivalent to each sentence.
In [55] Swoboda and Allwein give an algorithm that determines whether a given first
order logic sentence containing only monadic predicates can be observed from a given
Euler/Venn diagram. Sentences observable from a diagram are logical consequences of
the diagram (the diagram and the sentence are not necessarily expressing the same information). They also give an algorithm to determine if a sentence is observable from
a diagram. To determine whether a diagram is observable from a sentence, firstly they
manipulate the sentence into a special normal form that they call Euler/Venn conjunctive
Normal Form (EVCNF). Using this normal form it is then possible to construct a directed
acyclic graph (DAG) for the sentence. A DAG is also constructed for the given diagram.
Transformation rules are then applied to the DAG for the sentence (analogous to reasoning rules for their Euler/Venn system) to see if it can be changed into the DAG arising
116
from the diagram. If the sentence DAG can be transformed into the diagram DAG then
the diagram is observable from the sentence. The approach to determine if a sentence is
observable from a diagram is similar.
Shin’s approach to show Venn-II is equally as expressive as language L0 (ESD without
equality) is algorithmic [49]. To find a diagram expressively equivalent to a sentence, she
first converts the sentence into prenex normal form, say Q1 x1 ...Qn xn G where each Qi is a
quantifier and G is quantifier free. If Qn is universal then G is transformed into conjunctive
normal form. If Qn is existential then G is transformed into disjunctive normal form. The
quantifier Qn is then distributed through G and as many formulae are removed from its
scope as possible. All n quantifiers are distributed through the sentence in this way. The
sentence resulting from this process has no nested quantifiers. A diagram can then be
drawn for each of the simple parts of the resulting formula. To adapt this algorithm to
find expressively equivalent diagrams for sentences in ESD that do not involve equality is
straightforward.
L
L
1
d
2
d
1
2
Figure 3.3: Illustrating Shin’s algorithm.
Example 3.4.1 Applying Shin’s algorithm to the sentence ∃x1 ∀x2 (P1 (x1 )∨P2 (x2 )) gives
rise to the diagram shown in figure 3.3 (recall that in Venn-II disjunction between diagrams
is denoted by connecting them with a straight line segment).
Shin’s algorithm does not readily generalize to arbitrary sentences in ESD because
= is a dyadic predicate symbol which means nesting of quantifiers cannot necessarily
be removed. We take a different approach, modelled on the classic result of Dreben and
Goldforb [8], pages 209-210. To establish the existence of a diagram expressively equivalent
to a sentence we consider models for that sentence. To illustrate the approach we consider
relationships between models for α-diagrams.
Example 3.4.2 The diagram in figure 3.4 has a minimal model (in the sense that the
cardinality of the universal set is minimal) U = {1, 2, 3}, Ψ(L1 ) = {1}, Ψ(L2 ) = {2, 3}
and, for i 6= 1, 2, Ψ(Li ) = ∅. This model can be used to characterize all the models for the
117
L
L
1
2
d
Figure 3.4: Extending models for a diagram.
diagram, up to isomorphism. We can use this model to generate further models, by adding
elements to U and we may add these elements to images of contour labels if we so choose.
As an example, the element 4 can be added to U and we redefine Ψ(L2 ) = {2, 3, 4} to
give another model for d. No matter what changes we make to the model, we must ensure
that the zone ({L1 }, {L2 }) always represents a set containing exactly one element or we
will create an interpretation that does not satisfy the diagram. We can add elements to
all and only the sets represented by zones which are not shaded. Adding elements in this
way will generate all models for d, up to isomorphism.
In considering models for ESD sentences we will use the notion of a predicate intersection
set. This is the interpretation of the conjunction of certain monadic predicate symbols,
and thus corresponds to the interpretation of a zone in a diagram. Suppose m is a model
for sentence S. We will show that if a predicate intersection set satisfies certain cardinality
conditions then we can increase the cardinality of that predicate intersection set (enlarging
m) and still have a model for S. We are able to use this fact to show that there is a finite
set of models for S that can be used to classify all the models for S. Moreover, we can
use this classifying set to construct a diagram expressively equivalent to S.
Definition 3.4.1 Let m be a structure and let X and Y be finite subsets of P (the countably infinite set of predicate symbols). Define the predicate intersection set in m with
respect to X and Y , denoted P I(m, X, Y ), to be
P I(m, X, Y ) =
\
Pi ∈X
Pim ∩
\
Pim
Pi ∈Y
(recall that Pim is the interpretation of Pi in m). We define
U is the domain of m.
T
Pi ∈∅
Pim =
T
Pi ∈∅
Pim = U where
In the context of ESD, we will identify all the structures that can be generated from
a given structure, m, by adding or renaming elements subject to cardinality restrictions
determined by sentence S. We will call this class of structures generated by m the cone
118
of m, given S. For each sentence, S, we will show that there is a finite set of models, the
union of whose cones is precisely the collection of models for S. Formalizing and proving
this insight is the kernel of the result here. Central to our approach is the notion of similar
structures with respect to S. To define similar structures we use the maximum number of
nested quantifiers in S 1 .
Example 3.4.3 Let S be the sentence ∀x1 P1 (x1 ) ∧ ∀x1 ∃x2 ¬(x1 = x2 ). The formula
∀x1 P1 (x1 ) has one nested quantifier and ∀x1 ∃x2 ¬(x1 = x2 ) has two nested quantifiers.
Therefore the maximum number of nested quantifiers in S is two. Now, n nested quantifiers
introduce n variable names, and so it is only possible to talk about (at most) n distinct
individuals within the body of the formula. This has the effect of limiting the complexity
of what can be said by such a formula. In the particular case here, this observation has the
effect that if a model for S has at least two elements in certain predicate intersection sets
then S does not place an upper bound on the cardinalities of those predicate intersection
sets.
In a model for S, the interpretation of P1 has to contain all the elements, of which there
must be at least two. Also, S constrains the predicate intersection set P I(m, ∅, {P1 }) to
have cardinality zero. As an example, we consider two models, m1 and m2 with domains
U1 = {1, 2, 3, 4} and U2 = {1, 2, 5, 6, 7}, respectively, that are characterized by P1m1 =
{1, 2, 3, 4} and P1m2 = {1, 2, 5, 6, 7}. Now
|P I(m1 , ∅, {P1 })| = |∅| = 0 < 2 and |P I(m2 , ∅, {P1 })| = |∅| = 0 < 2.
Also
|P I(m1 , {P1 }, ∅)| = |U1 | ≥ 2 and |P I(m2 , {P1 }, ∅)| = |U2 | ≥ 2,
so S cannot place an upper bound on |P I(m, {P1 }, ∅)|. We can think of m1 and m2 as
each enlarging the model m3 with domain U3 = {1, 2} where P1m3 = {1, 2} and Pjm3 = ∅,
for all j 6= 1.
The following definition, lemmas 3.4.1, 3.4.2 and corollary 3.4.1 are adapted (by changing
the notation and adding details to the proofs) from [8], pages 209-210.
Definition 3.4.2 Let S be a sentence and define q(S) to be the maximum number of
nested quantifiers in S and P (S) to be the set of monadic predicate symbols in S. Two
structures m1 and m2 are called similar with respect to S if and only if for each subset
X of P (S), either
1
The maximum number of nested quantifiers in S is called the quantifier rank of S [9].
119
1 P I(m1 , X, P (S) − X) = P I(m2 , X, P (S) − X) or
2 |P I(m1 , X, P (S) − X) ∩ P I(m2 , X, P (S) − X)| ≥ q(S)
and, in addition, for all subsets Y of P (S) such that X 6= Y ,
P I(m1 , X, P (S) − X) ∩ P I(m2 , Y, P (S) − Y ) = ∅.
In the previous example, m1 , m2 and m3 are all similar with respect to S.
Lemma 3.4.1 Let S be a sentence. Let m1 and m2 be similar structures with respect to
S and with domains U1 and U2 respectively. For all (not necessarily proper) subformulas
G of S and for each assignment of values in U1 ∩ U2 to the free variables (if any) of G, G
is true in m1 under the assignment if and only if G is true in m2 under the assignment.
Proof The proof is by induction on the complexity of G (i.e. the depth of G in an
inductive construction of formulae). If G is atomic, then G is Pk (v) or v = w. In the case
when v = w the result is obvious. For Pk (v), assign x ∈ U1 ∩ U2 to v. Suppose Pk (v)
is true in m1 under this assignment. We will show that Pk (v) is true in m2 under this
assignment. Now, there exist X and Y , both subsets of P (S), such that
x ∈ P I(m1 , X, P (S) − X) ∩ P I(m2 , Y, P (S) − Y ).
Moreover, since Pk (v) is true in m1 under this assignment, Pk ∈ X. Since m1 and m2
are similar with respect to S it follows that X = Y . Thus Pk (v) is true in m2 under this
assignment. The converse is similar.
If G is H1 ∨ H2 , H1 ∧ H2 or ¬H1 , then the result follows immediately if it holds for
H1 and H2 separately.
Let G be ∃vH, and suppose an assignment of values in U1 ∩ U2 to the free variables of
G is fixed. Let Y be the set of values so assigned. Since G is a subformula of S, it contains
at most q(S) − 1 free variables. Hence |Y | < q(S). Suppose G is true in m1 under the
assignment. Hence there is an a in U1 such that H is true in m1 when, additionally, the
variable v is assigned the value a. If a ∈ U2 , then by the inductive hypothesis, H is true
in m2 under the augmented assignment.
Suppose therefore that a is not in U2 , and let a be in P I(m1 , X, P (S) − X), where
X ⊆ P (S). Thus
P I(m1 , X, P (S) − X) 6= P I(m2 , X, P (S) − X),
120
so
P I(m1 , X, P (S) − X) ∩ P I(m2 , X, P (S) − X)
has cardinality at least q(S). But then there is an element b of (P I(m1 , X, P (S) − X) ∩
P I(m2 , X, P (S) − X)) − Y . Let γ : U1 → U1 carry a to b, b to a and every other member of U1 to itself. Then γ is an automorphism of the structure m1 , because the sets
P I(m1 , X, P (S) − X) completely characterize the model m1 by partitioning the elements
according to which of the monadic predicates that they satisfy and interchanging two elements within the same partition therefore changes none of the logical properties of the
structure, and γ is the identity on Y . Hence H is true in m1 under the original assignment
augmented by assigning b to v. Then, by the inductive hypothesis, H is true in m2 under
this augmented assignment, so ∃vH is true in m2 under the original assignment. We have
shown that if G is true in m1 then G is true in m2 . The converse is similar.
The case G = ∀vH remains. Since G is logically equivalent to ¬∃v¬H the preceding
arguments suffice. QED
Corollary 3.4.1 If m1 and m2 are similar structures with respect to sentence S, then m1
is a model for S if and only if m2 is a model for S.
Lemma 3.4.2 Let S be a sentence. If S has a model of any cardinality at least 2|P (S)| q(S)
then S has models of every cardinality at least 2|P (S)| q(S).
Proof Suppose S has a model m1 with domain U1 of cardinality at least 2|P (S)| q(S). Then
|P I(m1 , X, P (S) − X)| ≥ q(S) for at least one X ⊆ P (S). So, for each j ≥ 2|P (S)| q(S)
there is a structure m2 similar to m1 whose universe has cardinality j. Hence there are
models for S with every cardinality at least 2|P (S)| q(S).QED
From lemma 3.4.2, we can deduce that any satisfiable sentence has a finite model.
Definition 3.4.3 Let S be a sentence and suppose m is a model for S. If the cardinality
of m is at most 2|P (S)| q(s) then we say m is a small model for S. Otherwise we say m
is a large model for S.
Definition 3.4.4 Let S be a sentence and suppose m1 is a small model for S. An Sextension of m1 is a structure, m2 , for ESD such that for each subset, X, of P (S)
P I(m1 , X, P (S) − X) ⊆ P I(m2 , X, P (S) − X)
121
and, if |P I(m1 , X, P (S) − X)| < q(S) then
P I(m1 , X, P (S) − X) = P I(m2 , X, P (S) − X).
The cone of m1 given S, denoted cone(m1 , S), is a class of structures such that m2 ∈
cone(m1 , S) if and only if m2 is isomorphic to some S-extension of m1 .
The cone of m given S contains models for S that can be restricted to (models isomorphic
to) m. We can think of elements of cone(m, S) as enlarging m in certain ‘directions’ and
fixing m in others.
Example 3.4.4 Let S be the sentence ∃x1 ∃x2 P1 (x1 ) ∨ P2 (x2 ) which has q(S) = 2. So, if
we have predicate intersection sets containing two or more elements we can add arbitrarily
many elements to them and preserve the fact that S holds. Consider
m = h{1, 2, 3, 4}, =m , {1, 2}, ∅, ∅, ...i.
A visual analogy of cone(m, S) can be seen in figure 3.5. The structure
m1 = h{1, 2, 3, 4, 5, 6}, =m1 , {1, 2, 5}, ∅, ∅, ...i
can be obtained from m, extending P I(m, ∅, {P1 , P2 }) and P I(m, {P1 }, {P2 }) by adding elements to these sets (and the domain), but keeping P I(m, {P2 }, {P1 }) and P I(m, {P1 , P2 }, ∅)
fixed.
,{ P
,{ }
(m
P I
in g
a rg
en l
en l
a rg
in g
P I
(m
,{ P
1 } ,
{ P
2 } )
c o n e ( m ,S )
m
1 ,
)
P 2}
m
1
P ( S ) = { P 1,P 2}
q (S ) = 2
|P I ( m ,{ } ,{ P 1,P 2} ) |= 2
|P I ( m ,{ P 1} ,{ P 2} ) |= 2
|P I ( m ,{ P 2} ,{ P 1} ) |= 0
|P I ( m ,{ P 1,P 2} ,{ } ) |= 0
Figure 3.5: Visualizing cones.
Example 3.4.5 Let S be the sentence ∀x1 ∀x2 x1 = x2 and consider the structure m1 =
h{1}, =m1 , ∅, ∅, ∅, ...i which satisfies S. We have the following cone for m1 :
cone(m1 , S) = {m2 ∈ ST R : |P I(m1 , ∅, ∅)| = |{1}| = |P I(m2 , ∅, ∅)|}.
122
The class cone(m1 , S) contains only structures that are models for S but does not contain
them all, for example m3 = h∅, ∅, ...i satisfies S but m3 is not in cone(m1 , S). All models
for S are in the class cone(m1 , S) ∪ cone(m3 , S). In this sense, m1 and m3 classify all
the models for S. We can draw a diagram expressively equivalent to S using information
given by m1 and m3 . This diagram is a disjunction of two unitary diagrams, shown in
figure 3.6.
d
d
1
2
Figure 3.6: A diagram expressively equivalent to ∀x1 ∀x2 x1 = x2 .
Lemma 3.4.3 Let S be a sentence and suppose m1 is a large model for S. Then there
exists a small model, m2 , for S such that m1 ∈ cone(m2 , S).
Proof Define m2 as follows. Let X be a subset of P (S). If |P I(m1 , X, P (S) − X)| < q(S)
then define MX = P I(m1 , X, P (S) − X). Otherwise define MX to be some chosen subset
of P I(m1 , X, P (S) − X) with cardinality q(S). The domain of m2 is
[
U2 =
MX .
X⊆P (S)
The set U2 has cardinality at most 2|P (S)| q(S). Define, for each Pi ∈ P, Pim2 = Pim1 ∩ U2 .
We will show that structure m2 is similar to m1 and we will refer to the domain of m1 by
U1 . Let X be a subset of P (S). Now
P I(m2 , X, P (S) − X) =
\
Pi ∈X
=
\
\
Pim2 ∩
Pim2
Pi ∈P (S)−X
(Pim1
Pi ∈X
= U2 ∩
\
∩ U2 ) ∩
\
Pi ∈P (S)−X
Pim1 ∩ (U2 −
Pi ∈X
= U2 ∩
\
(Pim1 ∩ U2 )
[
Pim1 )
Pi ∈P (S)−X
Pim1 ∩ (U1 −
Pi ∈X
[
Pi ∈P (S)−X
= U2 ∩ P I(m1 , X, P (S) − X).
123
Pim1 )
since U2 ⊆ U1
It follows that P I(m2 , X, P (S) − X) ⊆ P I(m1 , X, P (S) − X).
Suppose that |P I(m1 , X, P (S))| ≥ q(S). Then there is a subset of P I(m1 , X, P (S)−X)
with cardinality q(S) that is also a subset of U2 , namely MX . In which case |P I(m2 , X, P (S)−
X)| = q(s) and |P I(m1 , X, P (S) − X) ∩ P I(m2 , X, P (S) − X)| ≥ q(S).
Alternatively, |P I(m1 , X, P (S)−X)| < q(S). In which case P I(m1 , X, P (S)−X) ⊆ U2 .
Hence
P I(m1 , X, P (S) − X) = P I(m2 , X, P (S) − X).
Let Y be a subset of P (S) that is distinct from X. Now
P I(m1 , X, P (S) − X) ∩ P I(m1 , Y, P (S) − Y ) = ∅
and
P I(m2 , Y, P (S) − Y ) ⊆ P I(m1 , Y, P (S) − Y ).
Therefore
P I(m1 , X, P (S) − X) ∩ P I(m2 , Y, P (S) − Y ) = ∅.
Hence m1 and m2 are similar with respect to S. By corollary 3.4.1, m2 is a model for S,
so m2 is a small model for S.
We now show that m1 is in the class cone(m2 , S). For each subset X of P (S), we have
P I(m2 , X, P (S) − X) ⊆ P I(m1 , X, P (S) − X).
If
|P I(m2 , X, P (S) − X)| < q(S)
then
P I(m2 , X, P (S) − X) = P I(m1 , X, P (S) − X)
and it follows that m1 is an S-extension of m2 . Hence m1 is in the class cone(m2 , S).
Thus for each large model, m1 , for S there exists a small model, m2 , for S such that
m1 ∈ cone(m2 , S). QED
Lemma 3.4.4 Let m1 be a small model for sentence S. Then cone(m1 , S) only contains
models for S.
Proof It is sufficient to prove that any S-extension of m1 is a model for S, since it is
clear that isomorphism preserves the sentences modelled by structures. Let m2 be an
124
S-extension of m1 . We will show that m2 is similar to m1 , with respect to S. Since m2 is
an S-extension of m1 , it is the case that, for each subset X of P (S),
P I(m1 , X, P (S) − X) ⊆ P I(m2 , X, P (S) − X)
and, when |P I(m1 , X, P (S) − X)| < q(S),
P I(m1 , X, P (S) − X) = P I(m2 , X, P (S) − X).
Let Y ⊆ P (S)) such that Y 6= X. Now
P I(m2 , X, P (S) − X) ∩ P I(m2 , Y, P (S) − Y ) = ∅.
Furthermore
P I(m1 , X, P (S) − X) ⊆ P I(m2 , X, P (S) − X),
thus
P I(m1 , X, P (S) − X) ∩ P I(m2 , Y, P (S) − Y ) = ∅.
Therefore m2 is similar to m1 , with respect to S. By corollary 3.4.1, m2 is a model for S.
QED
We will show that, given a sentence, S, there is a finite set of small models, the union
of whose cones gives rise to only and all the models for S. We are able to use these models
to identify a diagram expressively equivalent to S. In order to identify such a finite set we
require the notion of partial isomorphism between structures.
Definition 3.4.5 Let m1 and m2 be structures for ESD with domains U1 and U2 respectively. Let Q be a set of monadic predicate symbols. If there exists a bijection γ : U1 → U2
such that
∀Pi ∈ Q ∀x ∈ U1 (x ∈ Pim1 ⇔ γ(x) ∈ Pim2 )
then m1 and m2 are isomorphic restricted to Q and γ is a partial isomorphism.
Lemma 3.4.5 Let S be a sentence and let m1 and m2 be structures. If m1 and m2 are
isomorphic restricted to P (S) then m1 is a model for S if and only if m2 is a model for
S.
Lemma 3.4.6 There are finitely many small models for sentence S, up to isomorphism
restricted to P (S).
125
Proof (Sketch) There is a finite choice for the size of each of the predicate intersection
sets (because they are small) and a finite number of these, given P (S). QED
Lemma 3.4.7 Let S be a sentence and let m1 and m2 be structures isomorphic restricted
to P (S). If m1 and m2 are small models for S then cone(m1 , S) = cone(m2 , S).
Proof Suppose that m1 and m2 are small models for S. Since m1 and m2 are isomorphic
restricted to P (S), for each subset X of P (S) it is the case that
|P I(m1 , X, P (S) − X)| = |P I(m2 , X, P (S) − X)|.
For each S-extension of m1 there is an S-extension of m2 to which m1 is isomorphic, shown
by extending γ in the obvious way. Similarly any S-extension of m2 is isomorphic to an
S-extension of m1 . It follows that cone(m1 , S) = cone(m2 , S). QED
Definition 3.4.6 Let S be a sentence. A set of small models, c(S), for S is called a
classifying set of models for S if for each small model, m1 , for S there is a unique m2
in c(S) such that m1 and m2 are isomorphic, restricted to P (S).
Lemma 3.4.8 Let S be a sentence. Then there exists a set of classifying models for S
and all such sets are finite.
Proof Choose one small model from each equivalence class of small models under the
relation of partial isomorphism restricted to P (S) to give c(S). Finiteness follows from
lemma 3.4.6. QED
We will now show that the union of the cones of the models in c(S) is precisely the
collection of models for S.
Theorem 3.4.1 Let S be a sentence and c(S) be a classifying set of models for S. Then
S
cone(m, S) is precisely the collection of models for S.
m∈c(S)
Proof By lemma 3.4.4,
S
cone(m, S) only contains models for S.
S
We must now show that all the models for S are in
cone(m, S). The first step is to
m∈c(S)
S
show that any small model, m1 , for S is in
cone(m, S). If m1 ∈ c(S) then it is trivial
m∈c(S)
S
that m1 ∈
cone(m, S). If m1 6∈ c(S) then there is some small model m2 ∈ c(S) that
m∈c(S)
m∈c(S)
is isomorphic, restricted to P (S), to m1 . By lemma 3.4.7, cone(m1 , S) = cone(m2 , S).
S
It follows that m1 ∈
cone(m, S). Finally we must show that each large model,
m∈c(S)
126
S
m3 , for S is in
cone(m, S). By lemma 3.4.3, there is a small model, m4 , such that
m∈c(S)
m3 ∈ cone(m4 , S). If m4 ∈ c(S) then we are done. If m4 6∈ c(S) then there is an m5 ∈ c(S)
such that m4 is isomorphic restricted to P (S) to m5 . Therefore m3 ∈ cone(m5 , S). Thus
S
S
all the models for S are in
cone(m, S). Hence
cone(m, S) is precisely the
m∈c(S)
m∈c(S)
collection of models for S. QED
To summarize, we have shown that every sentence, S, has a finite set of classifying
models and the union of the cones of these classifying models is precisely the collection of
models for S. We will now use these classifying models to construct a diagram expressively
equivalent to S.
Definition 3.4.7 Let m be a small model for a sentence S. The unitary α-diagram, d,
representing m given S, denoted REP(m, S) = d, is defined as follows2 .
1. The contour labels arise from the predicate symbols in P (S):
L(d) = {Li ∈ CL : ∃Pi ∈ P • Pi ∈ P (S)}.
2. The diagram is in Venn form:
Z(d) = {(a, L(d) − a) : a ⊆ L(d)}.
That is, d contains all possible zones.
3. The shaded zones in d are given as follows. Let X be a subset of P (S) such that
|P I(m, X, P (S) − X)| < q(S). The zone (a, L(d) − a) in Z(d) where a = {Li ∈
L(d) : Pi ∈ X} is shaded.
4. The number of spiders in each zone is the cardinality of the set |P I(m, X, P (S) −
X)| where X gives rise to the containing set of contour labels for that zone. More
formally, the set of spider identifiers is:
SI(d) = {(n, r) : ∃X • X ⊆ P (S) ∧ |P I(m, X, P (S) − X)| > 0 ∧
n = |P I(m, X, P (S) − X)| ∧ r = {(a, L(d) − a) ∈ Z(d) : a = {Li ∈ L(d) : Pi ∈ X}}}.
Let c(S) be a set of classifying models for S. Define SD(S) to be a disjunction of unitary
diagrams, given by
SD(S) =
REP(m, S),
m∈c(S)
unless c(S) = ∅, in which case SD(S) = ⊥.
127
L
L
1
d
L
1
d
1
L
1
d
2
3
1
d
4
Figure 3.7: Constructing diagrams from models.
Example 3.4.6 Let S be the sentence ∃x1 P1 (x1 ) ∨ ∀x1 P1 (x1 ). To find a classifying set
of models we must consider structures of all cardinalities up to 2|{P1 }| × q(S) = 21 × 1 = 2.
There are six distinct structures (up to isomorphism restricted to P (S)) with cardinality
at most 2. Four of these structures are models for S and are listed below.
1. m1 = h∅, ∅, ...i,
2. m2 = h{1}, =m2 , {1}, ∅, ∅, ...i,
3. m3 = h{1, 2}, =m3 , {1}, ∅, ∅, ...i,
4. m4 = h{1, 2}, =m4 , {1, 2}, ∅, ∅, ...i.
Therefore, the class cone(m1 , S) ∪ cone(m2 , S) ∪ cone(m3 , S) ∪ cone(m4 , S) contains only
and all the models for S. We use each of these models to construct a diagram. The models
m1 , m2 , m3 and m4 give rise to the diagrams d1 , d2 , d3 and d4 in figure 3.7 respectively.
The diagram d1 t d2 t d3 t d4 is expressively equivalent to S. This is not the ‘natural’
diagram one would associate with S. We note here that m4 is an S-extension of m2 ,
so cone(m2 , S) ⊆ cone(m4 , S). The sentence S is, therefore, expressively equivalent to
d1 t d2 t d3 . In general, when constructing a diagram expressively equivalent to S we only
need to draw a diagram for each model in c(S) that is not (isomorphic to) an S-extension
of some other model in c(S).
In fact, we can make further refinements to our approach. We note that d2 t d3 is
semantically equivalent to d5 in figure 3.8. By capturing this kind of property at the
model level, which may involve defining an algebra of structures, we could further reduce
the number of models required to define SD(S). We would, though, need to mark each
predicate intersection set with whether it could be extended indefinitely.
Theorem 3.4.2 Let S be a sentence. Then S is expressively equivalent to SD(S).
2
In fact, d is a β-diagram (every zone is shaded or inhabited by at least one existential spider) [44]
except when S = >.
128
L
1
d
5
Figure 3.8: Refining the approach.
Proof Let c(S) be a set of classifying models for S. For each m1 ∈ c(S), we will show
that the models for the diagram REP(m1 , S) are in bijective correspondence (under h
defined in lemma 3.2.1) with the structures in cone(m1 , S). To do so, we show firstly that
any model for d = REP(m1 , S) is in cone(m1 , S). Secondly we will show that the inverse,
under h, of any element in cone(m1 , S) is a model for d.
Let (U, Ψ) be a model for d. We will now show h(U, Ψ) ∈ cone(m1 , S). To do so, we
will show that h(U, Ψ) is an S-extension of some small model, m2 , for S and that m2 is
isomorphic, restricted to P (S), to m1 .
We define m2 as follows. Let X be a subset of P (S). Choose z = (a, b) ∈ Z(d) such
that a = {Li ∈ L(d) : Pi ∈ X}. Then, since (U, Ψ) |=d z,
|Ψ(z)| ≥ |S({z}, d)|.
Now
\
|Ψ(z)| = |
Ψ(Li ) ∩
Li ∈a
\
= |
\
Li ∈b
h(U,Ψ)
Pi
Pi ∈X
∩
Ψ(Li )|
\
h(U,Ψ)
Pi
|
Pi ∈P (S)−X
= |P I(h(U, Ψ), X, P (S) − X)|
≥ |S({z}, d)|
= |P I(m1 , X, P (S) − X)|.
Therefore there exists an injection,
fX : P I(m1 , X, P (S) − X) → P I(h(U, Ψ), X, P (S) − X).
Choose such an injection, fX . We define the domain of m2 to be U2 where
U2 =
[
X⊆P (S)
129
im(fX ).
We note that U2 ⊆ U and, since m1 is a small model for S, |U2 | ≤ 2|P (S)| q(S). Moreover,
|U2 | = |U1 | (where U1 is the domain of m1 ). Next we define, for each Pi ∈ P,
h(U,Ψ)
Pim2 = Pi
∩ U2 .
S
We define a bijection, γ : U1 → U2 , by γ =
fX . It is straightforward to verify
X⊆P (S)
that γ is a partial isomorphism. It follows that cone(m2 , S) = cone(m1 , S), by lemma
3.4.7.
We now show that h(U, Ψ) is an S-extension of m2 . Let X be a subset of P (S). Now
P I(m2 , X, P (S) − X) =
\
Pi ∈X
=
\
\
Pim2 ∩
Pim2
Pi ∈P (S)−X
h(U,Ψ)
(Pi
Pi ∈X
= U2 ∩
\
∩ U2 ) ∩
= U2 ∩
h(U,Ψ)
(Pi
∩ U2 )
Pi ∈P (S)−X
h(U,Ψ)
Pi
[
∩ (U2 −
Pi ∈X
\
\
h(U,Ψ)
Pi
Pi ∈P (S)−X
h(U,Ψ)
Pi
[
∩ (U −
Pi ∈X
h(U,Ψ)
Pi
since U2 ⊆ U
Pi ∈P (S)−X
= U2 ∩ P I(h(U, Ψ), X, P (S) − X)
(1)
It follows that P I(m2 , X, P (S) − X) ⊆ P I(h(U, Ψ), X, P (S) − X).
In order to show that h(U, Ψ) is an S-extension of m2 , all that remains is to show that
when |P I(m2 , X, P (S) − X)| < q(S) we have
P I(m2 , X, P (S) − X) = P I(h(U, Ψ), X, P (S) − X).
Suppose |P I(m2 , X, P (S)−X| < q(S). In which case |P I(m1 , X, P (S)−X)| < q(S), since
|P I(m1 , X, P (S) − X)| = |P I(m2 , X, P (S) − X)|
(which follows from the fact that m1 and m2 are isomorphic restricted to P (S)). By the
definition of d, the zone z = (a, b) ∈ Z(d) where a = {Li ∈ L(d) : Pi ∈ X} is shaded.
Since (U, Ψ) |=d z, |Ψ(z)| = |S({z}, d)|. Therefore
|Ψ(z)| = |P I(m1 , X, P (S) − X)|
and it follows that fX is bijective. Thus P I(h(U, Ψ), X, P (S) − X) = im(fX ). Therefore
P I(h(U, Ψ), X, P (S) − X) ⊆ U2 and we deduce from (1)
P I(m2 , X, P (S) − X) = P I(h(U, Ψ), X, P (S) − X).
130
Hence h(U, Ψ) is an S-extension of m2 . Therefore h(U, Ψ) ∈ cone(m2 , S). Therefore, by
lemma 3.4.4, h(U, Ψ) is a model for S since h(U, Ψ) ∈ cone(m2 , S) = cone(m1 , S). Hence
{h(U, Ψ) : (U, Ψ) ∈ IN T ∧ (U, Ψ) |= REP(m1 , S))} ⊆ cone(m1 , S).
We must now show that
{h(U, Ψ) : (U, Ψ) ∈ IN T ∧ (U, Ψ) |= REP(m1 , S))} ⊇ cone(m1 , S).
Let m2 ∈ cone(m1 , S) and let z = (a, b) ∈ Z(d). We show h−1 (m2 ) |=d z. Define
X to be the subset of P (S) that satisfies a = {Li ∈ L(d) : Pi ∈ X}. Since m2 ∈
cone(m1 , S), the structure m2 is isomorphic to some S-extension, m3 say, of m1 . Now
P I(m1 , X, P (S) − X) ⊆ P I(m3 , X, P (S) − X), therefore there exists an injective map
fX : P I(m1 , X, P (S) − X) → P I(m2 , X, P (S) − X).
So
|Ψ(z)| = |P I(m2 , X, P (S) − X)|
≥ |P I(m1 , X, P (S) − X)|
= |S({z}, d)|.
Suppose that z is shaded in d. Then |P I(m1 , X, P (S) − X)| < q(S) and
P I(m1 , X, P (S) − X) = P I(m3 , X, P (S) − X).
In which case there is a bijection
fX : P I(m1 , X, P (S) − X) → P I(m3 , X, P (S) − X).
Therefore |Ψ(z)| = |S({z}, d)|. It follows that h−1 (m2 ) |=d z. Since z was an arbitrary
zone we deduce, by lemma 3.3.1, h−1 (m2 ) |= d. Therefore
{h(U, Ψ) : (U, Ψ) ∈ IN T ∧ (U, Ψ) |= REP(m1 , S)} ⊇ cone(m1 , S).
Hence
{h(U, Ψ) : (U, Ψ) ∈ IN T ∧ (U, Ψ) |= REP(m1 , S)} = cone(m1 , P S).
It follows that SD(S) is expressively equivalent to S. QED
We have shown that every spider diagram has an expressively equivalent sentence in
ESD and that every sentence in ESD has an expressively equivalent diagram. It follows
that the two languages are equivalent in expressive power.
Theorem 3.4.3 The language of spider diagrams and ESD are equally expressive.
131
Chapter 4
Constraint Diagrams
The spider diagram notation extends to the constraint diagram notation. We add three
new syntactic elements, universal spiders, arrows and derived contours to the spider diagram system introduced in chapter 2. Previously what we called spiders, we now call
existential spiders. Universal spiders represent universal quantification and arrows allow relational navigation. Derived contours represent the image of an element under relational navigation. Adding these syntactic elements gives a restricted form of the constraint
diagram notation. Whilst not as expressive as the full constraint diagram notation, the
restricted version that we will formally define in this chapter has far greater expressiveness
than spider diagrams.
Example 4.0.1 The diagram in figure 4.1 is a constraint diagram. In addition to the information provided by the underlying spider diagram, d expresses that there is an element
in A whose relational image, under the relation f , is the whole of B.
A
C
B
f
d
Figure 4.1: A constraint diagram.
Example 4.0.2 In the constraint diagram in figure 4.2, the star inside the contour labelled A is a universal spider. In addition to the information provided by the underlying
spider diagram, d expresses that there is an element, x say, in U − (A ∪ B) such that for
all a ∈ A − B, the relational image of a under the relation f , is x; informally we write
a.f = x.
132
A
B
g
d
Figure 4.2: A constraint diagram with a universal spider.
Example 4.0.3 The unlabelled contour in the diagram in figure 4.3 is a derived contour.
The region inside the derived contour is entirely shaded and, therefore, represents the
empty set. The diagram expresses ‘there exists an x ∈ A such that x.f = ∅.
A
f
d
Figure 4.3: A constraint diagram with a derived contour.
We will now give an informal overview of the syntax of the full constraint diagram
language given in [23]. In addition to existential spiders and universal spiders, the language
includes given (or constant) spiders and Schrödinger spiders. Given spiders represent
specific individuals and Schrödinger spiders indicate that elements may or may not be
present.
A
C
t
B
f
d
Figure 4.4: Given spiders and Schrödinger spiders.
Example 4.0.4 The constraint diagram in figure 4.4 contains a tree with unfilled nodes,
placed inside A. This tree is a Schrödinger spider. Since A is shaded the Schrödinger
spider indicates that there is at most one element in A. If there is an element in A then
that element has relational image B under f . There is also a given spider in the diagram,
labelled t. This spider labelled t expresses that the specific individual represented by t is
in the set B − (A ∪ C).
133
In [44], it is shown that, at least in spider diagram systems, Schrödinger spiders are syntactic sugar. No sound and complete spider diagram system has been developed that
incorporates Schrödinger spiders and given spiders. We will not include Schrödinger spiders or given spiders in our constraint diagram system. We conjecture that Schrödinger
spiders will not be syntactic sugar in the constraint diagram language.
In the full constraint diagram notation, spider’s feet can be joined by strands or ties.
A strand is a wavy line and a tie is a pair of parallel straight line segments, like an equals
sign. A strand indicates that two spiders may represent the same element, whereas a tie
indicates that two spiders must represent the same element. The semantics of strands and
ties are zone based and illustrated in the following example.
A
e
e
1
B
3
e
2
e
4
d
Figure 4.5: Strands and ties.
Example 4.0.5 The diagram in figure 4.5 contains two strands and a tie. The tie between
e2 and e4 indicates that if e2 and e4 represent the existence of elements in the set B − A,
then they represent the existence of the same element. The strand between the spiders
e1 and e2 indicates that if e1 and e2 both represent the existence of elements in the set
A − B, then they may represent the existence of the same element. Similarly for e3 and
e2 .
In spider diagram systems that have included strands and ties, the semantics of strands
at ties are transitive [36, 44]. So, in the above example, with the transitive semantics, we
would also say that if e1 and e3 represent the existence of elements in the set A − B,
then they may represent the existence of the same element. The inclusion of strands and
ties with transitive semantics in spider diagram systems does not increase expressiveness
(Molina shows in [44] that strands and ties are syntactic sugar). It is likely that enforcing
transitivity of strand and tie semantics in constraint diagrams will affect expressiveness.
Moreover, there are many choices for the semantics of strands and ties. In the previous
example, we could state, instead of using transitive semantics, that e1 and e3 represent
the existence of the same element if and only if they both represent the existence of the
same element as e2 . Alternatively, we could say, since e1 and e3 are not joined by a strand
134
or a tie, that e1 and e2 must represent the existence of distinct elements. Also, zone based
semantics are not the only choice.
A
e
B
e
1
2
d
Figure 4.6: The semantics of ties.
Example 4.0.6 In figure 4.6, the two spiders e1 and e2 are joined by ties in two zones,
({A}, {B}) and ({B}, {A}). With the zone base semantics, the diagram expresses that
if e1 and e2 both represent the existence of elements in A − B then they represent the
existence of the same element and if e1 and e2 both represent the existence of elements
in B − A then they represent the existence of same element. However, we could interpret
the ties differently and meaning that if e1 and e2 both represent the existence of elements
in (A − B) ∪ (B − A) then they represent the existence of the same element, giving a
semantically different interpretation of d.
Much investigation is needed to determine the best choice for strand and tie semantics in
the constraint diagram case, paying attention to the effect on expressiveness and usability.
Because of these issues, we will not include strands or ties in our system.
Arrows in the full constraint diagram language can be sourced on contours, zones,
regions and spiders. The target of an arrow can be a contour, a zone or any spider that is
not a universal spider. Contours can be given (as in spider diagrams) or derived. In the
system developed here, we will restrict the sources and targets of arrows.
g
f
Figure 4.7: The difficulties of interpreting diagrams with derived contours.
Example 4.0.7 The diagram in figure 4.7 contains two derived contours. However, the
intended meaning of the diagram is not obvious as it is not clear where to start reading
135
the diagram. It could mean either
∀x ∈ U x.f ⊆ U − {x} ∧ ∀y ∈ x.f x ∈ y.g
or
∀y ∈ U y.g ⊆ U − {y} ∧ ∀x ∈ y.g y ∈ x.f
where U is the universal set.
In order to overcome the difficulties involved with interpreting diagrams containing derived
contours, we will not include derived contours in our system, with one exception. We will
allow derived contours to represent the empty set. Thus, in our system, derived contours
allow us to express ‘the relational image of x under f is empty’. The presence of these
derived contours will make our completeness proof in section 4.7 more straightforward.
h
A
f
f
B
g
d
1
h
A
f
f
B
g
d
2
h
A
f
f
B
d
g
3
Figure 4.8: Determining the satisfiability of constraint diagrams.
Example 4.0.8 The diagram d1 in figure 4.8 contains arrows sourced on contours and
existential spiders. The arrow sourced on A and targeted on B expresses that the relational
image of A under h is B. The existential spider that is the source of two arrows (both
with label f ) expresses, together with these arrows, that there exists an x in U − (A ∪ B)
such that x.f = ∅ and x.f = A. From this we can deduce A = ∅, shown in d2 . The
contour B is also the source of an arrow, whose target is an existential spider. This arrow
expresses that the relational image of B under g is some element of U − (A ∪ B). From
this we can deduce that B is not empty, shown in d3 . Moreover, since A.h = B, we can
also deduce that A is not empty. We have deduced that A = ∅ and A 6= ∅, which is a
contradiction. Therefore the diagram d1 is unsatisfiable. There are, perhaps, no obvious
syntactic conditions that allow us to identify that d1 is unsatisfiable.
We will restrict the sources of arrows to be spiders in our system, and targets to be
contours, existential spiders or the special derived contour that we will include. This will
allow us to classify all satisfiable unitary α-diagrams in a compact way. Such a classification
is essential for completeness: we must be able to replace unsatisfiable diagrams by any
diagram.
136
f
A
B
f
A
B
f
d
d
1
2
Figure 4.9: The habitats of universal spiders.
Example 4.0.9 The diagrams d1 and d2 in figure 4.9 are semantically equivalent. The
diagram d1 expresses
∀x ∈ U − B • x.f = B.
Since universal spiders quantify over their habitats, the spider leg between the two asterisks
represents conjunction, as opposed to disjunction with existential spiders. The diagram
d2 expresses
∀x ∈ A • x.f = B ∧ ∀x ∈ U − (A ∪ B) • x.f = B.
This is semantically equivalent to the interpretation of d1 .
In the systems we will define here, universal spiders are not articulated; that is, universal
spiders inhabit single zones.
We will restrict the ordering of quantifiers in this system: ‘there exists’ will take
precedence over ‘for all’. The diagram in figure 4.2 could equally well be interpreted as
‘for all a ∈ A − B, there exists an x ∈ U − (A ∪ B) such that the relational image of a
under f is x’, but, for simplicity, we will not allow such a reading.
A
B
f
d
A
B
f
d
1
A
B
d
f
2
Figure 4.10: Alternative semantics: incorrectly splitting spiders.
Example 4.0.10 If we interpret d in figure 4.10 as ‘for all x in A there is a y ∈ U −A such
that x.f = y’ we cannot split the existential spider in d. With the alternative semantics,
from diagram d1 t d2 we deduce that for each x in A there is a y in B such that x.f = y
or for each x ∈ A there is a y ∈ U − (A ∪ B) such that x.f = y, which is not logically
equivalent to the interpretation of d.
137
Essential to the completeness proof strategy for the spider diagram system is the ability
to obtain, from any diagram, a disjunction of unitary α-diagrams. If ‘for all’ comes before
‘there exists’ this is no longer possible. This restriction on the ordering of quantifiers
affects expressiveness and in chapter 5 we will briefly discuss the expressiveness of this
system.
Partial semantics are given in [23] for the full constraint diagram notation and many
issues relating to providing full semantics are raised. Only recently have formal semantics
been given to constraint diagrams more expressive than ours [12] and we will discuss these
in chapter 5. The language formalized in [12] allows arbitrary quantifier ordering and
includes derived contours, but does not include given spiders, Schrödinger spiders, strands
or ties.
It is clear that our restriction on the semantics (there exists always taking precedence
over for all) is not the best choice for usability purposes. Many of the statements that
are made when modelling software systems (the intended application domain of constraint
diagrams) require for all to take precedence over there exists.
M e m b e rs
V id e o s to r e s
m e m b e r_ o f
d
Figure 4.11: An invariant on a video rental company.
Example 4.0.11 When modelling a video rental company, we may wish to specify that
members must be a member of exactly one video store. If we allow for all to take precedence
over there exists then this invariant is expressed by d in figure 4.11. It is not possible to
express this invariant in our constraint diagram language.
C o p ie s
T itle s
h a s _ c o p ie s
d
Figure 4.12: An invariant on a video rental company.
138
Example 4.0.12 Another invariant we may wish to impose when modelling a video rental
company is that there is at least one copy of every title. If we allow for all to take
precedence over there exists then this invariant is expressed by d in figure 4.12. Moreover,
this invariant requires the use of a derived contour that does not represent the empty set.
The system we develop is restricted in expressiveness, so much so that it is unlikely to
be useable by software engineers. However, our constraint diagram system will provide an
important step towards developing more expressive systems capable of modelling software
systems.
We give a formal syntax for our constraint diagrams in section 4.1.2 and semantics in
section 4.2. With the semantics we give to constraint diagrams, not all unitary constraint
diagrams are satisfiable (unlike spider diagrams). We will give syntactic criteria that
establish whether a unitary α-diagram is satisfiable, in section 4.3.
All the reasoning rules presented in the previous chapter extend, with some modification, to constraint diagrams. We give new formal descriptions of these rules and many
new rules involving arrows are developed in section 4.5. Proofs of validity for the rules
are given in section 4.6, as is a proof that the system is sound. The reasoning rules we
present form a complete set, and this is shown in section 4.7.
4.1
4.1.1
Syntax
Informal concrete syntax
We give an informal description of the components of a concrete constraint diagram.
Essentially, a concrete constraint diagram is a concrete spider diagram together with
universal spiders, arrows and derived contours.
A universal spider is a star placed in a zone. No two universal spiders are placed in
the same zone. A spider is either an existential spider or a universal spider. A derived
contour is a simple closed plane curve without a label. The basic region within a derived
contour is not touched by any spider and is entirely shaded. An arrow is a directed line
from its source, which is a spider, to its target, which is either an existential spider or a
contour. Every arrow has a unique label. Unlike contours, two arrows may have the same
label. A concrete unitary constraint diagram is a concrete spider diagram together
with a finite collection of universal spiders, at most one derived contour, a finite collection
of arrows and arrow labels. If there is a derived contour in a unitary diagram then it must
139
be the target of an arrow. No two arrows can have the same label, source and target.
Every universal spider must be the source of an arrow. The boundary rectangle properly
contains all derived contours, arrows and universal spiders.
A
f
h
h
B
d
Figure 4.13: A constraint diagram with a derived contour.
Example 4.1.1 The diagram in figure 4.13 contains three contours. One of these contours
is derived since it has no label. There are four existential spiders. One of these is the target
of an arrow and two are sources of arrows. Two of the three arrows in the diagram have
the same label, h. The arrow with label f targets the derived contour. By convention,
the derived contour does not affect the set of zones: the zones of d are the same as those
for the underlying spider diagram.
4.1.2
Abstract syntax
In addition to CL, the infinite set of contour labels, we require a set of arrow labels from
which all arrow labels will be drawn.
Definition 4.1.1 Define AL to be a countably infinite set of arrow labels.
The convention that contour labels are uppercase letters and arrow labels are lowercase
letters will be adopted. We note that a universal spider can be identified by its habitat:
universal spiders inhabit zones and no two universal spiders can inhabit the same zone.
Thus we will define a universal spider to be a zone. Also, since there is at most one
derived contour in a diagram and a derived contour represents the empty set, we denote
derived contours by the empty set in the abstract syntax. An arrow can be identified by
its label, source and target. At the abstract level we define an arrow to be a triple, of the
form (label, source, target), where the label is taken from AL, the source is an existential
spider or a zone (i.e. a universal spider) and the target is an existential spider, a contour
label or the empty set. Defining the abstract syntax in this way does not permit unique
abstractions of a concrete unitary diagram (see example 4.1.2). In the spider diagram
system we used spider identifiers to give a unique abstraction for each unitary diagram.
140
Because this advantage of using spider identifiers is lost, we no longer use (existential)
spider identifiers, but an arbitrary set of existential spiders as in the SD2 system [44].
Example 4.1.2 The spider diagram underlying the constraint diagram in figure 4.14 has
abstract description
1. L(d) = {A, B},
2. Z(d) = {(∅, {A, B}), ({A}, {B}), ({B}, {A})},
3. Z ∗ (d) = ∅ and
4. SI(d) = {(2, {({A}, {B})})}.
Then S(d) = {s1 ({({A}, {B})}), s2 ({({A}, {B})})}. If we add a set of arrows to this
abstract description we get either
A(d) = {(f, s1 ({({A}, {B})}), s2 ({({A}, {B})})), (f, s2 ({({A}, {B})}), B)}
or
A(d) = {(f, s2 ({({A}, {B})}), s1 ({({A}, {B})})), (f, s1 ({({A}, {B})}), B)}.
We have a choice of which abstract existential spider is the source of the arrow targeting B.
Specifying the existential spider set is not sufficient to give a unique abstract description
of d.
A
B
f
f
d
Figure 4.14: A constraint diagram with non-unique abstractions.
Definition 4.1.2 A unitary constraint diagram, d, with contour labels in CL and
arrow labels in AL is a tuple hL, Z, Z ∗ , ES, η, Ai whose components are defined as follows.
1. L = L(d) ∈ PF(CL) is a finite set of contour labels.
2. Z = Z(d) ⊆ {(a, b) : a ⊆ L ∧ b = L − a} (Z(d) ⊆ Z) is a set of zones such that
(i) ∀l ∈ L ∃(a, b) ∈ Z • l ∈ a and
141
(ii) (∅, L(d)) ∈ Z.
We define R = R(d) = PZ − {∅} to be the set of regions.
3. Z ∗ = Z ∗ (d) ⊆ Z is a set of shaded zones; We define R∗ = R∗ (d) = PZ ∗ − {∅} to
be the set of shaded regions.
4. ES = ES(d) is a finite set of existential spiders such that ES(d)∩(CL∪Z ∪R) =
∅1 .
5. A function, η = ηd : ES(d) → R(d) which returns the habitat of each existential
spider.
6. A = A(d) ⊂ AL × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅}) is a finite set of arrows.
Define, for each a = (l, s, t) ∈ A(d), l to be the label of a, s to be the source of a
and t to be the target of a. We define
AL(d) = {l ∈ AL : ∃s, t • (l, s, t) ∈ A(d)}
to be the set of arrow labels in d. Zones that are sources of arrows are called universal spiders and we define
U S(d) = {z ∈ Z(d) : ∃l, t • (l, z, t) ∈ A(d)}.
Define also, S(d) = ES(d) ∪ U S(d) to be the set of spiders in d.
Additionally, the diagram ⊥= h∅, ∅, ∅, ∅, ∅, ∅i is a unitary constraint diagram.
A
B
g
d
Figure 4.15: A constraint diagram.
Example 4.1.3 The constraint diagram in figure 4.15 has an abstract description d =
hL, Z, Z ∗ , ES, η, Ai where
1. the set of contour labels is L(d) = {A, B},
1
When defining the semantics predicate we wish to define a function with a domain consisting of the
contour labels, zones, regions and existential spiders.
142
2. the set of zones is
Z(d) = {(∅, {A, B}), ({A}, {B}), ({B}, {A}), ({A, B}, ∅)},
3. the set of shaded zones is
Z ∗ (d) = {({B}, {A}), ({A, B}, ∅)},
4. the set of existential spiders is
ES(d) = {e1 , e2 }
since there are two existential spiders in the concrete diagram,
5. the function, ηd , is defined by
ηd (e1 ) = {({B}, {A}), (∅, {A, B})}
ηd (e2 ) = {(∅, {A, B})}
since one existential spider inhabits the region outside A, the second existential
spider inhabits the region outside both A and B and
6. the set of arrows is
A(d) = {(g, ({A}, {B}), e2 )}
corresponding to the one arrow in the concrete diagram, labelled g, sourced on the
universal spider and targeted on the existential spider inhabiting the region outside
A and B.
A
A
f
B
d
d
B
1
f
2
Figure 4.16: The syntax of constraint diagrams.
Example 4.1.4 The two constraint diagrams in figure 4.16 have the same abstract description. The spider at the target of the arrow is important semantically, not the spider
foot that the arrow meets.
143
Having defined a unitary constraint diagram we now extend this definition to compound diagrams, just as for spider diagrams.
Definition 4.1.3 An abstract constraint diagram is defined as follows.
1. Any unitary diagram is a constraint diagram.
2. If D1 and D2 are finite bags of constraint diagrams then t(D1 ] D2 ) (pronounced D1
or D2 ) and u(D1 ] D2 ) (pronounced D1 and D2 ) are constraint diagrams.
As with spider diagrams, we will adopt the convention of writing (D1 t D2 ) to mean
the diagram D1 or D2 and, similarly, (D1 u D2 ). We will also omit brackets where no
ambiguity arises. We will refer to diagrams of the form D1 tD2 and D1 uD2 as compound
diagrams. Define D0 to be the class of all unitary constraint diagrams with contour labels
in CL and arrow labels in AL. The class D of all constraint diagrams is defined in a similar
manner to the spider diagram system.
Since the type of spider at the source of an arrow affects that arrow’s semantic meaning,
we define, for a unitary diagram, the set of arrows whose source is an existential spider
and the set of arrows whose source is a universal spider. These two sets partition the set
of arrows in the unitary diagram.
Definition 4.1.4 Let d be a unitary diagram. Define Ae (d) to be the set of arrows of d
whose sources are existential spiders,
Ae (d) = {(l, s, t) ∈ A(d) : s ∈ ES(d)}.
Arrows in the set Ae (d) are called existential arrows. Define Au (d) to be the set of
arrows of d whose sources are universal spiders,
Au (d) = {(l, s, t) ∈ A(d) : s ∈ U S(d)}.
Arrows in the set Au (d) are called universal arrows.
When interpreting spider diagrams, it proved useful to consider the numbers of existential spiders that inhabited a region and that touched a region. Frequently we shall wish
to refer to the set of existential spiders inhabiting a basic region, so it is useful to extend
the definitions of S(r, d) and T (r, d) (which we carry over to constraint diagrams) to the
case where r is a contour label. We will, however, use the notation ES(r, d) for S(r, d)
and ET (r, d) for T (r, d) so it is clear these sets include existential spiders only.
144
Definition 4.1.5 Let l be a contour label and d be a unitary diagram. We define and
Z(l, d) to be
Z(l, d) = {z ∈ Z(d) : l ∈ c(z)}.
The set of (complete) existential spiders inhabiting l in diagram d is denoted by ES(l, d)
and is defined to be
ES(l, d) = ES(Z(l, d), d).
The set of existential spiders touching l in diagram d is denoted by ET (l, d) where
ET (l, d) = ET (Z(l, d), d).
A
h
B
d
Figure 4.17: A constraint diagram.
Example 4.1.5 The diagram d = hL, Z, Z ∗ , ES, η, Ai is an abstract description of the
diagram in figure 4.17 where d is partially defined by
1. ES(d) = {e1 , e2 , e3 } and
2. the habitats of the existential spiders are
ηd (e1 ) = {({B}, {A})}
ηd (e2 ) = {({B}, {A})}
ηd (e3 ) = {({A}, {B}), ({B}, {A})}.
Then ES(B, d) = {e1 , e2 } and ET (A, d) = {e3 }.
4.1.3
Concrete representations of abstract diagrams
We now give a formal definition of a concrete unitary constraint diagram. The definition
we gave for a concrete unitary spider diagram will form the basis of this definition. As
with the spider diagram systems, no other section in this thesis depends on this section.
Compound constraint diagrams will be drawn in the same way as for spider diagrams, so
we omit any discussion on the extension from concrete unitary representations to concrete
145
compound representations. We also give a mapping from concrete unitary constraint
diagrams to abstract unitary constraint diagrams.
ˆ (with contour labels
Definition 4.1.6 A concrete unitary constraint diagram, d,
ˆ UˆS, η̂, D̂, Â, AL,
ˆ âi whose
in CL and arrow labels in AL) is a tuple hĈ, B̂, Ẑ, Zˆ∗ , L̂, ˆl, ES,
component parts are defined as follows.
ˆ η̂| ˆ i is a concrete unitary spider diagram.
1. The tuple hĈ, B̂, Ẑ, Zˆ∗ , L̂, ˆl, ES,
ES
2. UˆS is a finite set of nodes, called universal spiders, represented by stars that
satisfies the following properties.
(a) Each universal spider lies entirely within a zone.
(b) Each zone contains at most one universal spider.
(c) No universal spider and existential spider have points in common.
ˆ ∪ UˆS → R̂ returns the habitat of each spider,
3. The function η̂ : ES
η̂(ŝ) = {ẑ ∈ Ẑ : ŝ has a node in ẑ}.
4. D̂ is a set containing at most one simple closed plane curve in the plane R2 . The set
Ĉ is disjoint from D̂. An element in the set D̂ is called a derived contour. The
points in the plane interior to a derived contour are all shaded. For each zone, ẑ,
the set of points interior to ẑ includes some points that are not interior to a derived
contour 2 . Moreover, no spider feet are placed within a derived contour.
5. Â is a finite set of directed line segments, called arrows. For each arrow, the start
point meets a spider (the source) and the end point meets an existential spider or a
contour in Ĉ ∪ D̂ (the target). We define, for each arrow b̂, ŝ(b̂) to be the spider at
the source of b̂ and t̂(b̂) to be the spider or contour at the target of b̂. If there is an
element ê in D̂ then at least one arrow must target ê. Each universal spider must
be the source of at least one arrow.
ˆ is a finite set of arrow labels (AL
ˆ ⊂ AL). The surjection â : Â → AL
ˆ returns
6. AL
the label of each arrow.
We now define a relation from the class of concrete unitary diagrams to the class of
abstract unitary diagrams. Unlike for the spider diagram system, this relation is not a
function and we shall illustrate this by example.
2
This allows us to distinguish between shading in a region and shading within a derived contour.
146
ˆ UˆS, η̂, Â, AL,
ˆ âi be a concrete unitary
Definition 4.1.7 Let dˆ = hĈ, B̂, Ẑ, Zˆ∗ , L̂, ˆl, ES,
diagram. Let d = hL, Z, Z ∗ , ES, η, Ai be an abstract unitary diagram. Then d is an
ˆ denoted ab(d)
ˆ = d, if and only if the following hold.
abstraction of d,
1. The contour label sets are the same: L̂ = L.
2. There exists a bijection µ1 : Ẑ → Z defined by
µ1 (ẑ) = ({ˆl(ĉ) : ẑ ⊆ ι(ĉ) ∧ ĉ ∈ Ĉ}, {ˆl(ĉ) : ẑ ⊆ ²(ĉ) ∧ ĉ ∈ Ĉ})
such that
(a) each zone ẑ in dˆ is shaded in dˆ if and only if µ1 (ẑ) is shaded in d,
ˆ → ES that satisfies
(b) there exists a bijection µ2 : ES
ˆ : µ1 (η̂(ê)) = η(µ2 (ê)),
∀ê ∈ ES
where µ1 : R̂ → R is the natural extension of µ1 : Ẑ → Z and
(c) the function µ3 : Â → A induced by µ1 and µ2 defined by
ˆ
(â(b̂), µ2 (ŝ(b̂)), µ2 (t̂(b̂)))
where ŝ(b̂), t̂(b̂) ∈ ES
(â(b̂), µ (ŝ(b̂)), ˆl(t̂(b̂)))
ˆ and
where ŝ(b̂) ∈ ES
2
ˆ and
(â(b̂), µ2 (ŝ(b̂)), ∅),
where ŝ(b̂) ∈ ES
µ3 (b̂) =
ˆ
(â(b̂), µ1 (η̂(ŝ(b̂))), µ2 (t̂(b̂))) where ŝ(b̂) ∈ U S and
(â(b̂), µ1 (η̂(ŝ(b̂))), ˆl(t̂(b̂)))
where ŝ(b̂) ∈ UˆS and
(â(b̂), µ1 (η̂(ŝ(b̂))), ∅),
where ŝ(b̂) ∈ UˆS and
t̂(b̂) ∈ Ĉ
t̂(b̂) ∈ D̂
ˆ
t̂(b̂) ∈ ES
t̂(b̂) ∈ Ĉ
t̂(b̂) ∈ D̂
is a bijection.
If d is an abstraction of dˆ then we say dˆ is an instantiation of d.
B
A
f
C
g
d
Figure 4.18: A concrete constraint diagram.
Example 4.1.6 The diagram d in figure 4.18 has infinitely many abstractions. Two of
these abstractions are d1 = hL, Z, Z ∗ , ES1 , η1 , A1 i and d2 = hL, Z, Z ∗ , ES2 , η2 , A2 i whose
component parts are given below.
147
1. L = {A, B, C}.
2. Z = {(∅, {A, B, C}), ({C}, {A, B}), ({A}, {B, C}), ({A, B}, {C}), ({B}, {A, C})}.
3. Z ∗ = {({C}, {A, B}), ({A, B}, {C}), ({B}, {A, C})}.
4. ES1 = {e1 }.
5. η1 (e1 ) = {({A}, {B, C}), ({B}, {A, C})}.
6. A1 = {(f, e1 , C), (g, ({B}, {A, C}), A)}.
7. ES2 = {e2 }.
8. η2 (e2 ) = {({A}, {B, C}), ({B}, {A, C})}.
9. A2 = {(f, e2 , C), (g, ({B}, {A, C}), A)}.
The differences between these two abstractions arise from the choice we made when naming
the existential spiders.
A concrete unitary constraint diagram has a unique abstraction if and only if it contains
no existential spiders. The extension of the concrete syntax to compound diagrams is
similar to the spider diagram case.
4.2
Semantics
Regions in constraint diagrams represent sets. An existential spider asserts the existence of
an element in the set represented by its habitat. Distinct existential spiders represent the
existence of distinct elements. In a set represented by a shaded region, all the elements are
represented by existential spiders. Arrow labels represent relations. An arrow, together
with its source and target, represents a property of the relation represented by its label.
A universal spider represents universal quantification over the set denoted by its habitat.
If a universal spider is the source of an arrow and we restrict the domain of the relation
represented by the arrow’s label to any element in the set represented by the spider’s
habitat, the image is the set or element represented by the target of that arrow. If an
existential spider is the source of an arrow, then, under the relation represented by the
arrow’s label, the relational image of the element represented by the source is the element
or set that is represented by the target of the arrow.
148
Definition 4.2.1 An interpretation of contour labels, zones, regions and arrow
labels, or simply an interpretation, is a triple m = (U, Ψ, φ) where U is a set, Ψ : CL ∪
Z ∪ R → PU is a function mapping contour labels, zones and regions to subsets of U and
φ : AL → P(U × U ) is a function mapping arrow labels to relations on U such that the
images of the zones and regions under Ψ are completely determined by the images of the
contour labels as follows:
1. for each zone (a, b),
\
Ψ(a, b) =
Ψ(l) ∩
l∈a
T
where Ψ(l) = U − Ψ(l) and we define
\
Ψ(l) = U =
2. for each region r,
[
Ψ(r) =
S
T
Ψ(l) and
l∈∅
l∈∅
and we define Ψ(∅) =
Ψ(l)
l∈b
Ψ(z)
z∈r
Ψ(z) = ∅.
z∈∅
For simplicity, we will write Ψ : R → PU when strictly speaking we mean Ψ : CL∪Z ∪R →
PU .
f
A
B
C
d
Figure 4.19: Illustrating interpretations: a constraint diagram.
Example 4.2.1 Define Ψ : R → PN by Ψ(A) = {1}, Ψ(B) = {2, 3}, Ψ(C) = N − {1, 2, 3}
and for all l ∈ CL − {A, B, C}, Ψ(l) = ∅. Furthermore, define φ : AL → P(N × N) by
φ(f ) = {(1, a) : a ∈ N − {1, 2, 3}} and for all g ∈ AL − {f }, φ(g) = ∅. Then the triple
m = (N, Ψ, φ) is an interpretation. The interpretation of the arrow in the diagram in
figure 4.19 is that if we pick any x in the set A − B, the relational image of x under f is
N − {1, 2, 3}.
In order to define the semantics predicate of a unitary constraint diagram we first
formalize the notions of the image of a relation.
149
Definition 4.2.2 Let R be a relation on a set U . Define the image of R to be im(R)
where
im(R) = {b ∈ U : (a, b) ∈ R}.
Let A be a subset of U . Define A.R to be the image of R when the domain of R is restricted
to A, that is
A.R = im(R ∩ (A × U )).
The semantics predicate we now introduce looks somewhat different to that given for
spider diagrams. We combine the plane tiling condition with five other conditions that
require an extension of Ψ : R → PU to Ψ : R ∪ ES(d) → PU , where d is a unitary diagram.
Definition 4.2.3 Let D be a constraint diagram and let m = (U, Ψ, φ) be an interpretation. We define the semantics predicate, PD (m), of D. If D (6=⊥) is a unitary diagram
then PD (m) is the conjunction of the following conditions.
(i) Plane Tiling Condition. All elements are in sets represented by zones:
[
Ψ(z) = U.
z∈Z(D)
(ii) There exists an extension of Ψ : R → PU to Ψ : R ∪ ES(D) → PU such that the
conjunction of the following conditions are satisfied.
(a) Spiders Condition. Each existential spider represents the existence of an
element (strictly, a single element set) in the set represented by its habitat:
∀ e ∈ ES(D) • |Ψ(e)| = 1 ∧ Ψ(e) ⊆ Ψ(ηD (e)).
(b) Strangers Condition. No two existential spiders represent the existence of
the same element:
∀ e1 , e2 ∈ ES(D) • Ψ(e1 ) = Ψ(e2 ) ⇒ e1 = e2 .
That is, the function Ψ is injective when the domain is restricted to ES(D).
(c) Shading Condition. Each shaded zone, z, represents a subset of the set of
elements represented by the existential spiders touching z:
∀ z ∈ Z ∗ (D) • Ψ(z) ⊆
[
e∈ET ({z},D)
150
Ψ(e).
(d) Existential Arrows Condition. For any existential arrow, (l, s, t), the image
of φ(l) with its domain restricted to Ψ(s) equals Ψ(t):
∀ (l, s, t) ∈ Ae (D) • Ψ(s).φ(l) = Ψ(t).
(e) Universal Arrows Condition. For any universal arrow, (l, s, t), the image
of φ(l) with its domain restricted to any element in the set represented by s
equals Ψ(t):
∀ (l, s, t) ∈ Au (D) ∀ x ∈ Ψ(s) • {x}.φ((l) = Ψ(t).
If Ψ : R ∪ ES(D) → PU ensures PD (m) is true then we say Ψ is a valid extension
to existential spiders for D. The semantics predicate of ⊥, P⊥ (m), is false. If D =
D1 tD2 then PD (m) = PD1 (m)∨PD2 (m). If D = D1 uD2 then PD (m) = PD1 (m)∧PD2 (m).
f
A
A
B
f
s
f
s
1
s
B
2
3
f
d
g
d
1
2
Figure 4.20: Two constraint diagrams.
Example 4.2.2 Define Ψ : R → PN by Ψ(A) = {1}, Ψ(B) = {2, 3} and for all l ∈
CL − {A, B}, Ψ(l) = ∅. Furthermore, define φ : AL → P(N × N) by φ(f ) = {(1, 2)},
φ(g) = {(2, 1), (3, 1)} and for all h ∈ AL − {f, g}, φ(h) = ∅. Then the triple m = (N, Ψ, φ)
is an interpretation. Consider the diagrams in figure 4.20. The zone (∅, {A, B}) represents
the set N − {1, 2, 3} and the zone ({A}, {B}) represents the set {1}. Thus if m is to
satisfy d1 then 1.f ∈ N − {1, 2, 3} and 1.f = Ψ(B) = {2, 3} which is a contradiction. The
universal arrows condition fails for d1 . Furthermore no interpretation satisfies d1 .
Consider now diagram d2 . It is easy to verify the plane tiling condition for d2 is true
with respect to the given interpretation. The extension of Ψ : R → PN to Ψ : R∪ES(d2 ) →
PN given by Ψ(s1 ) = {1}, Ψ(s2 ) = {2} and Ψ(s3 ) = {3} ensures the remaining five
conditions are satisfied. By the definition of Ψ : R ∪ ES(d2 ) → PN given above, it is
obvious that the spiders and strangers conditions are satisfied. There are no shaded
zones, thus it is trivial that the shading condition is satisfied. There are two arrows that
have existential spiders as sources. Now
Ψ(s1 ).φ(f ) = {1}.{(1, 2)} = {2} = Ψ(s2 )
151
and
Ψ(s3 ).φ(f ) = {3}.{(1, 2)} = ∅ = Ψ(∅),
so the existential arrows condition holds. There is one arrow whose source is a universal
spider in d2 , thus we check the universal arrows condition for this arrow. We wish to verify
that
∀ x ∈ {2, 3} • {x}.{(2, 1), (3, 1)} = {1}.
Firstly consider x = 2,
{2}.{(2, 1), (3, 1)} = {1}
as required. Secondly consider x = 3,
{3}.{(2, 1), (3, 1)} = {1}
as required. Hence the universal arrows condition holds. The semantics predicate for d2
is true with the given interpretation.
The semantics predicate for a unitary constraint diagram, d, where A(d) = ∅ (i.e. d
is essentially a spider diagram) is equivalent to that given for unitary spider diagrams,
which will be proved in section 4.8.
4.3
Satisfiability and the consequence relation
We now formalize the notions of satisfiability and logical consequence for this constraint
diagram system.
Definition 4.3.1 Let D be a constraint diagram and m = (U, Ψ, φ) be an interpretation.
We say m satisfies D, denoted m |= D, if and only if PD (m) is true. The diagram D is
satisfiable, if and only if there exists an interpretation that satisfies D. Any interpretation
that satisfies D is called a model for D.
Example 4.3.1 In example 4.2.2 we saw that Pd2 (m) was true with the given interpretation. Thus m |= d2 and m is a model for d2 .
In chapter 2 we saw that all unitary spider diagrams are satisfiable. For constraint
diagrams this is no longer the case.
Example 4.3.2 The diagram in figure 4.21 is unsatisfiable. There are two arrows with
the same label and source, but different targets. The two targets cannot represent the
same set in any extension of Ψ to existential spiders that ensures the strangers condition
is satisfied. So, if we ensure that the strangers condition is satisfied, the existential arrows
condition will fail.
152
f
A
f
d
Figure 4.21: An unsatisfiable unitary constraint diagram.
f
A
B
f
d
Figure 4.22: A satisfiable unitary constraint diagram.
Example 4.3.3 The diagram in figure 4.22 is satisfiable. There is a spider that is the
source of two arrows, both with the same label but different targets. In this case, no
‘problem’ arises, since it is possible that the two targets can represent the same set.
In general, two targets can represent the same set if all the existential spiders ‘within
the target of one arrow’ are also ‘within the target of the other arrow’. To capture the
notion of the existential spiders within the target of an arrow we define the set of hit
existential spiders of an arrow.
Definition 4.3.2 Let d be a unitary diagram. For each arrow, (l, s, t) in A(d), define the
set of hit existential spiders of (l, s, t) in d, denoted hit((l, s, t), d), where
if t ∈ ES(d)
{t}
∅
if t = ∅
hit((l, s, t), d) =
ES(t, d) otherwise.
If hit((l, s, t), d) = ∅ then we say that (l, s, t) has an empty hit in d.
Using the above definition we are able to identify the satisfiability of unitary αdiagrams at the syntactic level. We now define pairwise compatible arrows and we will
prove that a unitary α-diagram has a model if and only if it has pairwise compatible
arrows.
Definition 4.3.3 Let d be a unitary α-diagram. The arrows of d are said to be pairwise
compatible if and only if
153
(a) every pair of arrows with the same existential spider as their source and the same
label have the same set of hit existential spiders:
∀ (l1 , s1 , t1 ), (l2 , s2 , t2 ) ∈ Ae (d) • (s1 = s2 ∧ l1 = l2 ) ⇒
hit((l1 , s1 , t1 ), d) = hit((l2 , s2 , t2 ), d)
and
(b) every pair of arrows with the same universal spider as their source and the same
label have the same set of hit existential spiders or the habitat of their source is not
inhabited by any existential spiders:
¡
¢
∀ (l1 , s1 , t1 ), (l2 , s2 , t2 ) ∈ Au (d) • s1 = s2 ∧ l1 = l2 ⇒
¡
¢
hit((l1 , s1 , t1 ), d) = hit((l2 , s2 , t2 ), d) ∨ ES({s1 }, d) = ∅
and
(c) if an existential spider is ‘cohabiting’ with a universal spider and both are the source
of arrows with the same label then they have the same set of hit existential spiders:
¡
∀ (l1 , s1 , t1 ), (l2 , s2 , t2 ) ∈ A(d) • s1 ∈ ES(d) ∧ s2 ∈ U S(d) ∧ ηd (s1 ) = {s2 }∧
¢
l1 = l2 ⇒ hit((l1 , s1 , t1 ), d) = hit((l2 , s2 , t2 ), d).
If the arrows of d are not pairwise compatible then d is said to contain incompatible
arrows.
Example 4.3.4 The arrows in diagram d, figure 4.21, are incompatible. They fail condition (a).
f
A
e
e
3
1
e
e
2
B
f
4
d
Figure 4.23: Constructing a model for a constraint diagram.
Example 4.3.5 The diagram d in figure 4.23 contains pairwise compatible arrows. To
construct a model for d we take ES(d) = {e1 , e2 , e3 , e4 } to be the universal set. We map
154
the contour labels A and B to the sets of existential spiders inhabiting them. That is,
Ψ(A) = {e1 } and Ψ(B) = {e2 }. If we have an arrow between two existential spiders
then we wish those spiders to be related under the relation represented by the arrow
label. In this example, e4 is the source of an arrow with target e2 . Thus we ensure that
(e4 , e2 ) ∈ φ(f ). The other arrow in d has a universal source. So, any existential spider
cohabiting with the source (in this case just e1 ) must be related to everything in the hit
of the arrow. That is (e1 , e2 ) ∈ φ(f ). We define φ(f ) = {(e4 , e2 ), (e1 , e2 )}. In fact,
φ(f ) = {(ei , ej ) : ei , ej ∈ ES(d) ∧ ∃(f, s, t) ∈ A(d) • (s = ei ∨
(s ∈ U S(d) ∧ ηd (ei ) = {s})) ∧ ej ∈ hit((f, s, t), d)}.
Theorem 4.3.1 Let d (6=⊥) be a unitary α-diagram. The arrows of d are pairwise compatible if and only if d has a model.
Proof To show that if d has a model then the arrows of d are pairwise compatible we
prove the contrapositive by contradiction. Suppose d contains incompatible arrows and
let m = (U, Ψ, φ) be a model for d. Then one of the three conditions in definition 4.3.3 is
false. Suppose that (a) is false. Then there exists a pair of arrows, say (l1 , s1 , t1 ), (l2 , s2 , t2 )
in Ae (d), such that
s1 = s2 ∧ l1 = l2 ∧ hit((l1 , s1 , t1 ), d) 6= hit((l2 , s2 , t2 ), d).
Then, since Pd (m) is true,
Ψ(s1 ).φ(l1 ) = Ψ(t1 )
and
Ψ(s1 ).φ(l1 ) = Ψ(t2 )
for some valid extension of Ψ to existential spiders. Therefore
Ψ(t1 ) = Ψ(t2 ).
Suppose further, without loss of generality, that e ∈ hit((l1 , s1 , t1 ), d) but e 6∈ hit((l2 , s2 , t2 ), d).
Then Ψ(e) ⊆ Ψ(t1 )) but Ψ(e) * Ψ(t2 ) and it must be that
Ψ(t1 ) 6= Ψ(t2 ),
reaching a contradiction.
155
Suppose now that (b) is false. Then there exists a pair of arrows, say (l1 , s1 , t1 ), (l2 , s2 , t2 ) ∈
Au (d), such that
s1 = s2 ∧ l1 = l2 ∧ hit((l1 , s1 , t1 ), d) 6= hit((l2 , s2 , t2 ), d) ∧ ES({s1 }, d) 6= ∅.
Since ES({s1 }, d) 6= ∅, Ψ(s1 ) 6= ∅. Let x ∈ Ψ(s1 ). Then
{x}.φ(l1 ) = Ψ(t1 )
and
{x}.φ(l1 ) = Ψ(t2 )
for some valid extension of Ψ to existential spiders. Thus
Ψ(t1 ) = Ψ(t2 ).
Similarly to part (a) we can show Ψ(t1 ) 6= Ψ(t2 ) reaching a contradiction.
Finally, suppose that (c) is false. The proof that this cannot be so is similar to that
for (b). Hence if d has a model then the arrows of d are pairwise compatible.
Suppose the arrows of d are pairwise compatible. We show d is satisfiable by constructing a model for d. Let f be the function,
f : ES(d) → Z(d),
such that for all e in ES(d), f (e) ∈ ηd (e). Given f , define Ψ : R → PES(d) as follows:
½
{e ∈ ES(d) : l ∈ c(f (e))} if l ∈ L(d)
Ψ(l) =
∅
otherwise.
Define φ : AL → P(ES(d) × ES(d)) where for all g ∈ AL
φ(g) = {(e1 , e2 ) : e1 , e2 ∈ ES(d) ∧ ∃(g, s, t) ∈ A(d) • (e1 = s ∨
(s ∈ U S(d) ∧ ηd (e1 ) = {s})) ∧ e2 ∈ hit((g, s, t), d)}
We will show that the interpretation m = (ES(d), Ψ, φ) satisfies d. By corollary 2.3.1,
Ψ(r) = {e ∈ ES(d) : f (e) ∈ r}
for any region r ∈ R(d). Since d is an α-diagram,
Ψ(r) = ES(r, d).
Setting r = Z(d),
Ψ(Z(d)) = ES(Z(d), d) = ES(d).
156
Hence the plane tiling condition holds for d.
Consider now the extension of Ψ : R → PES(d) to Ψ : R∪ES(d) → PES(d) defined by
Ψ(e) = {e} for each e ∈ ES(d). We show that the remaining five conditions are satisfied.
Let e ∈ ES(d). By the definition of Ψ, |Ψ(e)| = 1 and by the definition of f , f (e) ∈ ηd (e),
so e ∈ Ψ(ηd (e)) = {e0 ∈ ES(d) : f (e0 ) ∈ ηd (e0 )}. Hence Ψ(e) ⊆ Ψ(ηd (e)) and the spiders
condition holds for d. It is trivial that the strangers condition holds for d. Let z ∈ Z ∗ (d).
Now
Ψ(z) = ES({z}, d) = ET ({z}, d).
Hence
[
Ψ(z) ⊆
Ψ(e)
e∈ET ({z},d)
and the shading condition holds.
We now show the two arrow conditions hold. Firstly consider the existential arrows
condition and let (l, s, t) ∈ Ae (d). Since any universal spider that has the same habitat
as s and is the source of an arrow labelled l has the same set of hit existential spiders as
(l, s, t) in d it follows that
φ(l) ∩ ({s} × ES(d)) = {(s, e2 ) : e2 ∈ hit((l, s, t), d)}.
Now
Ψ(s).φ(l) = {s}.φ(l)
= im(φ(l) ∩ ({s} × ES(d)))
= im({(s, e2 ) : e2 ∈ hit((l, s, t), d)})
= hit((l, s, t), d).
If t = ∅ or t ∈ ES(d) then it is trivial that Ψ(t) = hit((l, s, t), d). Furthermore, if t ∈ L(d)
then
Ψ(t) = {e ∈ ES(d) : t ∈ c(f (e))}
= ES(t, d)
since d is an α-diagram
= hit((l, s, t), d).
Hence the existential arrows condition holds.
Now we show that the universal arrows condition holds. Let (l, s, t) ∈ Au (d). If
ES({s}, d) = ∅ it is trivial that
∀x ∈ Ψ(s) • {x}.φ(l) = Ψ(t),
157
since Ψ(s) = ∅. Alternatively, ES({s}, d) 6= ∅. Let e ∈ Ψ(s). Then
{e}.φ(l) = {e}.{(e, e2 ) : e2 ∈ hit((l, s, t), d)}
= hit((l, s, t), d)
= Ψ(t).
Therefore the universal arrows condition holds. Hence Pd (m) is true, that is m |= d.
Therefore d has a model if and only if the arrows of d are pairwise compatible. QED
We define the interpretation constructed in theorem 4.3.1 for unitary α-diagram d
(6=⊥) with pairwise compatible arrows to be the standard model for d. To conclude this
section we formalize the logical consequence relation for constraint diagrams.
Definition 4.3.4 Let D1 and D2 be two constraint diagrams. The diagram D2 is a logical
consequence of D1 , denoted D1 ² D2 , if and only if every model for D1 is also a model
for D2 .
4.4
Isomorphic diagrams
In the spider diagram system, we did not define isomorphism between unitary diagrams:
unitary spider diagrams that would be deemed isomorphic are, indeed, equal. For constraint diagrams, however, there are potentially many unitary diagrams that are isomorphic. This is due to choices that can be made for the set of existential spiders. Thus, we
will define isomorphism between unitary constraint diagrams.
Definition 4.4.1 Let d1 and d2 be unitary constraint diagrams. Define d1 to be isomporphic to d2 , denoted d1 ∼
= d2 , if and only if
1. Z(d1 ) = Z(d2 ) and
2. Z ∗ (d1 ) = Z ∗ (d2 ) and
3. there exists a bijection, σ : ES(d1 ) → ES(d2 ), such that
∀s ∈ ES(d1 ) • ηd1 (s) = ηd2 (σ(s))
which induces a bijective function γ :
(l, σ(s), σ(t))
(l, σ(s), t)
γ(l, s, t) =
(l, s, σ(t))
(l, s, t),
A(d1 ) → A(d2 ) defined by
if
if
if
if
158
s, t ∈ ES(d1 )
s ∈ ES(d1 ) and t ∈ L(d1 ) ∪ {∅}
s ∈ Z(d1 ) and t ∈ ES(d1 )
s ∈ Z(d1 ) and t ∈ L(d1 ) ∪ {∅}.
A
e
B
g
1
f
A
f
e
B
2
d
g
d
1
2
Figure 4.24: Isomorphic diagrams.
Example 4.4.1 Diagrams d1 and d2 in figure 4.24 are isomorphic. It is obvious that their
zones and shaded zones are the same. The mapping σ : ES(d1 ) → ES(d2 ) is defined by
σ(e1 ) = e2 .
The mapping γ : A(d1 ) → A(d2 ) is then defined by
γ(g, e1 , ∅) = (g, e2 , ∅)
4.5
and γ(f, ({B}, {A}), A) = (f, ({B}, {A}), A).
Diagrammatic reasoning
As for the spider diagram system we introduce a collection of reasoning rules. All the
reasoning rules for spider diagrams extend, with modifications, to constraint diagrams.
Introduced in this section are many new rules relating to arrows. All the rules relating to
arrows, with one exception, preserve the semantic information provided by the diagram.
It is useful to introduce some notation to indicate that a diagram is a copy of another,
but with a change in the arrow set.
Definition 4.5.1 Let d be a unitary constraint diagram and let A be a finite set such that
A ⊂ AL × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅}).
Define
d + A = hL(d), Z(d), Z ∗ (d), ES(d), ηd , A(d) ∪ Ai,
and
d − A = hL(d), Z(d), Z ∗ (d), ES(d), ηd , A(d) − Ai.
In the above definition, it may be that, for example, d + A contains universal spiders
that are not in d, that is U S(d) ⊂ U S(d + A). Note that we do not need to explicitly
indicate this difference between d and d + A, since the universal spider set is derived from
the arrow set (universal spiders are zones).
159
4.5.1
Unitary to unitary reasoning rules
The first rule we present here is new. It allows any unitary diagram to be replaced by an
isomorphic one.
Rule 1 Isomorphic diagrams. Let d1 and d2 be unitary diagrams. If d1 ∼
= d2 then d1
may be replaced by d2 and vice versa.
Rule 2 Erasure of an arrow. Let d be a unitary diagram containing an arrow a. Then
d can be replaced by d − {a}.
For clarity, if the erased arrow had a universal spider as its source and this spider is not
the source of any other arrow then that spider is automatically erased at the abstract
level. At the the concrete level, such a spider must also be erased, in addition to erasing
the arrow.
A
f
A
C
C
g
g
d
d
1
2
Figure 4.25: A valid application of rule 2, erasure of an arrow.
Example 4.5.1 An arrow, labelled f , is erased from the diagram d1 in figure 4.25. The
source of this arrow is a universal spider that is not the source of any other arrow so this
spider is also erased. Failure to erase the universal spider would result in a diagram that
is not well formed.
Rule 3 Introduction of a contour label. Let d1 (6=⊥) be a unitary diagram and let
d2 be the diagram obtained from d1 after introducing a contour label as follows.
(i) The new contour has a label not present in d1 .
(ii) Each zone in d1 splits into two zones and shading is preserved.
(iii) Each foot of an existential spider is replaced by a connected pair of feet – one in
each new zone of the habitat so that the habitat is ‘preserved’.
(iv) Each universal spider, u, is replaced by a pair of universal spiders – one in each new
zone of the habitat. Each arrow, a, sourced at u is replaced by a pair of arrows with
the same label and target as a, one sourced on each new universal spider.
160
Then d1 can be replaced by d2 and vice versa.
A
f
A
f
f
g
d
B
g
d
1
2
Figure 4.26: A valid application of rule 3, introduction of a contour label.
Example 4.5.2 A contour with label B is introduced to diagram d1 in figure 4.26. The
universal arrow in d1 expresses
∃y ∈ U − A ∀x ∈ A • x.f = y.
From this we can deduce
∃y ∈ U − A • (∀x ∈ A − B • x.f = y) ∧ (∀x ∈ A ∩ B • x.f = y),
which is expressed by d2 . It is easy to see that these two statements are equivalent. Furthermore, the information provided by the underlying spider diagrams and the existential
arrows is also equivalent, so d1 can be replaced by d2 and vice versa.
A
A
f
d
g
1
f
d
g
B
2
Figure 4.27: An ‘invalid application’ of rule 3, introduction of a contour label.
Example 4.5.3 Consider the diagrams in figure 4.27. The diagram d2 asserts
∃y ∈ U − A ∀x ∈ A − B • x.f = y
which is not equivalent to
∃y ∈ U − A ∀x ∈ A • x.f = y
asserted by d1 . Thus we could not replace d2 with d1 . In order to preserve semantic
information all universal spiders must be replaced by a pair of universal spiders.
161
Formal description. Let d1 (6=⊥) be a unitary diagram. Let d2 be a unitary diagram
such that
1. L(d2 ) = L(d1 ) ∪ {l∗ } where l∗ 6∈ L(d1 ),
2. there exists a surjection h : Z(d2 ) → Z(d1 ) defined by
h(a, L(d2 ) − a) = (a − {l∗ }, L(d2 ) − (a ∪ {l∗ }))
which extends to the function h : R(d2 ) → R(d1 ) where
h(r) =
[
{h(z)} = {h(z) : z ∈ r}
z∈r
and satisfies
(a) each zone in d1 is the image of two zones in d2 :
∀z ∈ Z(d1 ) ∃z1 , z2 ∈ Z(d2 ) • z1 6= z2 ∧ h(z1 ) = h(z2 ) = z,
(b) each zone is shaded in d2 if and only if it has a shaded image:
∀z ∈ Z(d2 ) • z ∈ Z ∗ (d2 ) ⇔ h(z) ∈ Z ∗ (d1 ),
(c) the existential spiders match: ES(d1 ) = ES(d2 ),
(d) the habitats of the existential spiders are ‘preserved under h’:
∀e ∈ ES(d1 ) • ηd2 (e) = {z ∈ Z(d2 ) : h(z) ∈ ηd1 (e)},
(e) the existential arrows are unchanged Ae (d1 ) = Ae (d2 ),
(f) there exists a surjection, γ : Au (d2 ) → Au (d1 ) defined by
∀ (l, s, t) ∈ Au (d2 ) • γ(l, s, t) = (l, h(s), t)
and each universal arrow in d1 gives rise to two universal arrows in d2 :
∀a ∈ Au (d1 ) ∃a1 , a2 ∈ Au (d2 ) • a1 6= a2 ∧ γ(a1 ) = γ(a2 ) = a.
Then d1 can be replaced by d2 and vice versa.
Rule 4 Introduction of a shaded zone. Let d1 be a unitary diagram that is not in
Venn form. If d2 is a copy of d1 except that d2 contains a new, shaded and untouched
zone then d1 may be replaced by d2 and vice versa.
162
Formal description. Let d1 be a unitary diagram such there exists z ∗ ∈ V Z(d1 )−Z(d1 ).
Let d2 be a unitary diagram such that
1. Z(d1 ) ∪ {z ∗ } = Z(d2 ) and
2. Z ∗ (d1 ) ∪ {z ∗ } = Z ∗ (d2 ) and
3. ES(d1 ) = ES(d2 ) ∧ ηd1 = ηd2 and
4. A(d1 ) = A(d2 ).
Then d1 can be replaced by d2 and vice versa.
There are a number of rules that allow the introduction of an arrow, in various contexts.
For example, if a diagram contains a shaded zone, z, and all the existential spiders inhabiting z are sources of arrows with label l and target t then we can introduce a universal
arrow whose source is z with label l and target t.
Rule 5 Introduction of an arrow: universal equivalence. Let d1 be a unitary
diagram with a shaded zone z where, for some fixed arrow label l and target t,
1. every existential spider that touches z is the source of an arrow with label l and
target t and
2. if there is a universal spider inhabiting z then it is not the source of an arrow with
label l and target t
Let d2 be a copy of d1 except that there is a universal spider inhabiting z that is the source
of an arrow with label l and target t. Then d1 can be replaced by d2 and vice versa.
A
f
A
B
f
f
d
B
f
f
d
1
2
Figure 4.28: A valid application of rule 5, introduction of an arrow: universal equivalence.
163
Example 4.5.4 In figure 4.28, diagram d1 expresses that the relational image of each
element in A, under f , is B. Therefore a universal spider can be introduced to the zone
inside A that is the source of an arrow with label f , targeted at B. Thus d1 and d2 present
the same semantic information.
A
f
A
B
f
f
d
B
f
f
d
1
2
Figure 4.29: An ‘invalid application’ of rule 5, introduction of an arrow: universal equivalence.
Example 4.5.5 In figure 4.29 diagram d2 is not a valid deduction from d1 . Whilst every
existential spider in A is the source of an arrow labelled f with target B, it is possible
(since the zone within A is not shaded) that there is a further element in A that does not
have B as its image under the relation f .
Formal description. Let d be a unitary diagram such that there exists z ∈ Z ∗ (d),
l ∈ AL and t ∈ ES(d) ∪ L(d) ∪ {∅} where,
1. ∀ e ∈ ET ({z}, d) • (l, e, t) ∈ A(d) and
2. (l, z, t) 6∈ A(d).
Then d can be replaced by d + {(l, z, t)} and vice versa.
Condition 1 ensures that every existential spider touching z is the source of an arrow
with label l and target t in d. Condition 2 ensures that arrow (l, z, t) is not already in d.
If, in diagram d, we have a universal arrow, (l, s, t), where the universal spider s is
cohabiting with an existential spider, e, then we can introduce an arrow (l, e, t) to d.
Rule 6 Introduction of an arrow: universal deduction. Let d1 be a unitary diagram with an arrow labelled l with target t and whose source is a universal spider with
habitat z and there is an existential spider, e, inhabiting z that is not the source of an
arrow labelled l with target t. Let d2 be a copy of d1 except that an arrow with source e,
target t and label l is introduced. Then d1 can be replaced by d2 and vice versa.
164
f
A
e
e
2
d
f
A
B
e
1
e
2
B
1
f
d
1
2
Figure 4.30: A valid application of rule 6, introduction of an arrow: universal deduction.
Example 4.5.6 The diagram d1 in figure 4.30 expresses that there is exactly one element,
e1 , in B that all elements in A are related to under f . Therefore the element represented
by the existential spider, e2 , must be related to e1 under f . Hence we can introduce an
arrow to d1 sourced at e2 with label f and target e1 , yielding d2 .
Formal description. Let d be a unitary diagram such that
∃ (l, u, t) ∈ Au (d) ∃ e ∈ ES(d) • ηd (e) = {u} ∧ (l, e, t) 6∈ Ae (d).
Then d can be replaced by d + {(l, e, t)} and vice versa.
The next four rules allow the introduction of an arrow with the same source and label
as an existing arrow, but with a new target. The naming of each of these rules refers to
the targets of the existing and introduced arrows. The first of these rules requires the
identification of contour labels in a unitary diagram, d, that represent the empty set in
any model for d (i.e. the special derived contour or shaded, untouched labelled contours).
Definition 4.5.2 Let d be a unitary diagram. Define the set of empty contour labels
of d to be EL(d) where
¡
¢
EL(d) = {l ∈ L(d) ∪ {∅} : l = ∅ ∨ Z(l, d) ⊆ Z ∗ (d) ∧ ET (l, d) = ∅ }.
If we have a diagram containing two empty contour labels, t1 and t2 , then any arrow
targeted on t1 , say, can be targeted on t2 .
Rule 7 Introduction of an arrow: empty set. Let d1 be a unitary diagram containing
an arrow, (l, s, t) such that t is an empty contour label in d1 . Furthermore, suppose there
is an empty contour label, t1 , in d1 such that t1 is not the target of an arrow with source
s and label l. Let d2 be a unitary diagram that is a copy of d1 except that d1 contains an
extra arrow (l, s, t1 ). Then d1 can be replaced by d2 and vice versa.
165
A
f
A
B
f
B
f
d
d
1
2
Figure 4.31: A valid application of rule 7, introduction of an arrow: empty set.
Example 4.5.7 The diagram d1 in figure 4.31 expresses that there is an element, e, in A
that is not related to anything under f . Since B is empty, we can deduce that e.f = B
and introduce an arrow expressing this fact, yielding d2 . To obtain d1 from d2 we simply
erase the introduced arrow. Hence d1 can be replaced by d2 and vice versa.
Formal description. Let d be a unitary diagram such that
∃ (l, s, t) ∈ A(d) ∃t1 ∈ EL(d) • t ∈ EL(d) ∧ (l, s, t1 ) 6∈ A(d).
Then d can be replaced by d + {(l, s, t1 )} and vice versa.
If, in diagram d, we have a spider that is the target of an arrow and the habitat of that
spider is a shaded, basic region that is untouched by any other spiders, then that arrow
can be targeted on the basic region.
Rule 8 Introduction of an arrow: spider to contour. Let d1 be a unitary diagram
containing an arrow, (l, s, t), such that
1. the target of (l, s, t) is a spider whose habitat is a shaded basic region, within a
contour t1 , touched by no other spiders and
2. d1 does not contain the arrow (l, s, t1 ).
Let d2 be a unitary diagram that is a copy of d1 except that the arrow (l, s, t1 ) is introduced.
Then d1 can be replaced by d2 and vice versa.
A
A
B
f
f
B
d
f
d
1
2
Figure 4.32: A valid application of rule 8, introduction of an arrow: spider to contour.
166
Example 4.5.8 The diagram d1 in figure 4.32 denotes the existence of an element in B
that all elements in A are related to under f . Furthermore, this is the only element in B.
Thus the image of any element in A under f is B. Hence we can introduce an arrow to
d1 expressing this fact, yielding d2 .
Formal description. Let d be a unitary diagram such that
∃(l, s, t) ∈ A(d) ∃ t1 ∈ L(d) • Z(t1 , d) ⊆ Z ∗ (d) ∧
{t} = ES(t1 , d) = ET (t1 , d) ∧ (l, s, t1 ) 6∈ A(d).
Then d can be replaced by d + {(l, s, t1 )} and vice versa.
Suppose, in diagram d, we have a shaded, basic region that is inhabited by one existential spider, e, untouched by any other spiders and is the target of an arrow. Then that
arrow can be targeted on e.
Rule 9 Introduction of an arrow: contour to spider. Let d1 be a unitary diagram
containing an arrow (l, s, t) such that t is a contour label and all zones inside t are shaded
and exactly one spider, e, inhabits the basic region within t and no other spiders touch
the basic region within t. Let d2 be a unitary diagram that is a copy of d1 containing an
extra arrow, (l, s, e). Then d1 can be replaced by d2 and vice versa.
A
A
B
f
f
B
d
f
d
1
2
Figure 4.33: A valid application of rule 9, introduction of an arrow:contour to spider.
Example 4.5.9 The diagram d1 in figure 4.33 denotes the existence of an element, x, in
A that is related all the elements in B under f . Furthermore, there is a unique element, y,
in B. Thus the image of x under f is y. Hence we can introduce an arrow to d1 expressing
this fact, yielding d2 .
Formal description. Let d be a unitary diagram such that
∃(l, s, t) ∈ A(d) ∃e ∈ ES(d) • t ∈ L(d) ∧ Z(t, d) ⊆ Z ∗ (d) ∧
{e} = ES(t, d) = ET (t, d) ∧ (l, s, e) 6∈ A(d).
167
Then d can be replaced by d + {(l, s, e)} and vice versa.
Suppose d is a diagram that has two contours whose ‘symmetric difference’ is shaded
and untouched. Then any arrow targeted on one of these contours can be targeted on the
other.
Rule 10 Introduction of an arrow: contour to contour. Let d1 be a unitary diagram containing two contours, t1 and t2 , such that t1 is the target of an arrow, (l, s, t1 ),
the only zones touched inside the basic regions within t1 or t2 are those inside both t1
and t2 . Furthermore, the region that is the ‘symmetric difference’ of t1 and t2 is shaded.
Also (l, s, t2 ) is not in d1 . Let d2 be a copy of d1 except that d2 contains an extra arrow,
(l, s, t2 ). Then d1 can be replaced by d2 and vice versa.
C
A
A
f
B
f
d
C
B
f
d
1
2
Figure 4.34: A valid application of rule 10, introduction of an arrow: contour to contour.
Example 4.5.10 The diagram d1 in figure 4.34 expresses that there is an element, e, in
A that is related to each element in B under f . Furthermore we can deduce that in any
model for d1 , B represents the same set as C. Thus the element e is related to each element
in C under f . Hence we can introduce an arrow to d1 expressing this fact, yielding d2 .
Formal description. Let d be a unitary diagram such that there exists t1 and t2 in L(d)
satisfying
S
1. ET (
{z}, d) = ∅ and
z∈Z(d)∧(t1 ∈c(z) ∨ t2 ∈c(z))
2.
S
{z} ⊆ Z ∗ (d) and
z∈Z(d)∧(t1 ∈c(z) ∨ t2 ∈c(z))
3. ∃(l, s, t1 ) ∈ A(d) • (l, s, t2 ) 6∈ A(d).
Then d can be replaced by d + {(l, s, t2 )} and vice versa.
Condition 1 ensures that the ‘symmetric difference’ of t1 and t2 is not touched. Condition 2 ensures that the region that is the ‘symmetric difference’ of the basic regions within
t1 and t2 is shaded. Condition 3 ensures t1 is the target of an arrow, (l, s, t1 ), and there is
no arrow with source s and label l that targets t2 .
168
4.5.2
Unitary to compound reasoning rules
So far, all the reasoning rules defined have transformed one unitary diagram into another.
Now, we enlarge the set of reasoning rules to include those which replace a unitary diagram
with a compound one (and vice versa). The first of these rules allows us to split an
existential spider.
Rule 11 Splitting existential spiders. Let d be a unitary diagram with an existential
spider e∗ touching every zone of two disjoint regions r1 and r2 . Let d1 and d2 be unitary
diagrams that are copies of d except that neither contains e∗ , but instead each contains
an extra existential spider, e1 and e2 respectively, whose habitats are regions r1 in d1 and
r2 in d2 . If e∗ is the source (target) of any arrow, f , then e1 and e2 are also the source
(target) of f . Then d can be replaced by the diagram d1 t d2 and vice versa.
A
f
B
ò
A
B
f
d
d
A
1
B
d
f
2
Figure 4.35: A valid application of rule 11, splitting spiders.
Example 4.5.11 The diagram d1 in figure 4.35 expresses that there is an element A that
is related to an element in U − A under f . This element in U − A is either in B − A or
U − (A ∪ B). Therefore we can split this spider, yielding d1 t d2 .
Formal description. Let d be a unitary diagram such that
∃e∗ ∈ ES(d) ∃r1 , r2 ∈ R(d) • ηd (e∗ ) = r1 ∪ r2 ∧ r1 ∩ r2 = ∅.
Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) = Z ∗ (d2 )
3. ES(d) = ES(d1 ) = ES(d2 )
4. (a) ∀e ∈ ES(d) − {e∗ } • ηd (e) = ηd1 (e) = ηd2 (e)
(b) ηd1 (e∗ ) = r1 ∧ ηd2 (e∗ ) = r2
5. A(d) = A(d1 ) = A(d2 ).
169
Then d can be replaced by d1 t d2 and vice versa.
The excluded middle rule for spider diagrams extends to constraint diagrams. We will
call the constraint diagram version of this rule excluded middle for regions since we will
also define an excluded middle for arrows rule.
Rule 12 Excluded middle for regions. Let d (6= ⊥) be a unitary diagram with a
non-shaded region r. Let d1 and d2 be unitary diagrams that are copies of d except that
d1 contains an extra existential spider whose habitat is r and r is shaded in d2 . Then d
can be replaced by the diagram d1 t d2 and vice versa.
Formal description. Let d be a unitary diagram such that
∃r ∈ R(d) • r ∩ Z ∗ (d) = ∅.
Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 ),
2. Z ∗ (d) = Z ∗ (d1 ),
3. Z ∗ (d) ∪ r = Z ∗ (d2 ),
4. ∃e ∈ ES(d1 ) • ηd1 (e) = r ∧ ES(d) = ES(d1 ) − {e} = ES(d2 ),
5. ∀s ∈ ES(d) • ηd (s) = ηd1 (s) = ηd2 (s),
6. A(d) = A(d1 ) = A(d2 ).
Then d can be replaced by d1 t d2 and vice versa.
A
A
d
A
l
ò
A
d
l
1
d
3
A
l
d
2
l
d
4
Figure 4.36: An application of rule 13, excluded middle for arrows.
170
Example 4.5.12 Consider the diagram d in figure 4.36. In any model for d, the universal
set will contain exactly two elements. We can deduce that any given element must be
related to nothing, itself, the other element or both elements under the relation l, shown
in d1 , d2 , d3 and d4 respectively.
The above example motivates the excluded middle for arrows rule.
Rule 13 Excluded middle for arrows. Let d be a unitary α-diagram such that every
zone in d is shaded and, for each subset, Ei , of ES(d) such that |Ei | ≥ 2, there is a contour,
A, such that ES(A, d) = Ei . Let l ∈ AL and let e be an existential spider in d that is not
the source of an arrow with label l. Define E(d, l, e) to be the set of all unitary diagrams,
dj , each of which is a copy of d except that dj contains an additional arrow with source e,
label l and any target. Then we may replace d by
dj .
dj ∈E(d,l,e)
To identify formally the unitary components of the diagram obtained by applying this
rule, we will define excluded middle for arrows components.
Definition 4.5.3 Let d1 and d2 be unitary α-diagrams. If
1. d1 and d2 have the same zones: Z(d1 ) = Z(d2 ),
2. d1 and d2 have the same shaded zones: Z ∗ (d1 ) = Z ∗ (d2 ),
3. d1 and d2 have the same existential spiders: ES(d1 ) = ES(d2 ) and ηd1 = ηd2 ,
4. all the arrows in d1 are in d2 : A(d1 ) ⊆ A(d2 ),
5. there is exactly one arrow, (l, e, t) in d2 that is not in d1 and this extra arrow is
sourced on an existential spider that is not the source of an arrow labelled l in d1 ,
and has any target:
∃e ∈ ES(d2 ) ∃l ∈ AL ∃t ∈ ES(d2 ) ∪ L(d2 ) ∪ {∅} • {(l, e, t)} = A(d2 ) − A(d1 )∧
¬∃t1 ∈ ES(d2 ) ∪ L(d2 ) ∪ {∅} • (l, e, t1 ) ∈ A(d1 )
then d2 is called an excluded middle for arrows component associated with d1
with respect to e and l (the arrow (l, e, t) is in d2 but not d1 ). We define E(d1 , l, e) to
be the set of all excluded middle for arrows components associated with d1 with respect to
e and l.
Formal description. Let d1 be a unitary α-diagram such that
171
1. Z(d1 ) = Z ∗ (d1 ) and
2. ∀Ei ⊆ ES(d1 ) ∃A ∈ L(d1 ) • |Ei | ≥ 2 ⇒ ES(A, d1 ) = Ei and
3. ∃e ∈ ES(d1 ) ∃l ∈ AL ¬∃t ∈ ES(d1 ) ∪ L(d1 ) ∪ {∅} • (l, e, t) ∈ A(d1 ).
Then d1 may be replaced by
d2 and vice versa.
d2 ∈E(d1 ,l,e)
4.5.3
Compound to compound reasoning rule
For spider diagrams it is possible to combine two unitary α-diagrams connected with an
u into a single unitary diagram. In the spider diagram system, the rule of combining was
essential for proving completeness. For constraint diagrams, generalizing how to combine
two diagrams over an u is considerably more difficult but remains intuitively clear in
simple examples and will, again, be essential for the proof of completeness.
A
A
f
d
1
g
d
2
f
g
A
d
Figure 4.37: Combining constraint diagrams.
Example 4.5.13 The diagrams d1 and d2 in figure 4.37 can be combined to form the
single diagram d. The diagram d1 expresses that there is at least one element in A. From
d2 we deduce there are at least two elements in A. Therefore there are at least two elements
in A, seen in d. The diagram d1 contains a universal spider in U − A that is the source
of an arrow with label f and target A. The diagram d2 contains a universal spider in
U − A that is the source of an arrow with label g and target A. Therefore all elements in
U − A have relational image A under both f and g and diagram d expresses this fact. It
is easy to see that any interpretation that satisfies d also satisfies d1 u d2 . Thus d1 u d2 is
semantically equivalent to d.
In the spider diagram system, when combining two unitary α-diagrams, d1 and d2 , we
obtained a single unitary α-diagram, expressing the same semantic information as d1 u d2 .
For constraint diagrams there is not always a single unitary diagram that can express
the same semantic information as the conjunction of two unitary α-diagrams, d1 and d2 .
However, there is a disjunction of unitary α-diagrams semantically equivalent to d1 u d2 .
So, instead of calling this process combining, we call it disjunctifying diagrams.
172
A
ó
B
f
d
A
º
B
g
A
ò
d
A
g
1
g
d '
B
f
d
A
d
A
B
f
B
f
g
d
2
3
B
f
g
4
Figure 4.38: Disjuntifying diagrams.
Example 4.5.14 In figure 4.38, the diagram d u d0 is semantically equivalent to d1 t d2 t
d3 t d4 . In d u d0 , the spiders inside A could represent the same or distinct elements.
Similarly for B. This pair of choices gives four alternatives, represented by d1 , d2 , d3 and
d4 .
In the example above we can construct an embedding (i.e. an injective, structure
preserving map) from d (and equally from d0 ) to any of the diagrams d1 , d2 , d3 and d4 .
Suppose we construct an embedding of d in d1 . We can then construct an embedding of d0
in d1 in such a way that, for each syntactic component of d1 there is a syntactic component
of either d or d0 (or both) that maps to it. This is the kind of approach we take to identify
d1 as a partial combination of d and d0 . More intuitively, we can place d and d0 over d1 in
such a way that d1 is ‘covered’ by d and d0 . The act of disjunctifying unitary α-diagrams
d0 and d1 with the same zone sets will give a disjunction of unitary α-diagrams which is
unique up to isomorphism.
B
A
ó
A
f
d
B
g
A
ò
º
d '
A
d
g
B
f
d
1
B
f
g
2
Figure 4.39: Disjunctifying: the number of existential spiders in each zone.
Example 4.5.15 In figure 4.39, the diagram d u d0 is semantically equivalent to d1 t d2 .
However, it is also the case that d u d0 is semantically equivalent to d1 : diagram d2
semantically entails diagram d1 , so d1 td2 is semantically equivalent to d1 . We will place an
upper bound on the number of existential spiders that we place in zones when disjuntifying
diagrams. This upper bound will be the maximum of the number of existential spiders in
173
that zone in d or d0 or will be the total number of existential spiders that are sources or
targets of arrows in that zone in d and d0 . In the example here, zone ({B}, {A}) contains
one existential spider in d, two in d0 and two that are targets of arrows in d0 . The upper
bound on the number of existential spiders in ({B}, {A}) is two.
Definition 4.5.4 Let d0 and d1 be unitary α-diagrams such that Z(d0 ) = Z(d1 ). Let d be
unitary α-diagram that does not contain incompatible arrows. We say that d is a partial
combination of d0 and d1 , denoted d0 u d1 vpc d if and only if each of the following are
satisfied.
1. The zones in d are the same as the original diagrams:
Z(d) = Z(d0 ).
2. The shaded zones in d are shaded in at least one of the original diagrams:
Z ∗ (d) = Z ∗ (d0 ) ∪ Z ∗ (d1 ).
3. The number of existential spiders in any shaded zone in d is the maximum number
of spiders inhabiting that zone in the original diagrams:
∀ z ∈ Z ∗ (d) • |ES({z}, d)| = max{|ES({z}, d0 )|, |ES({z}, d1 )|}.
4. The number of spiders in any unshaded zone in d is at most the maximum number
of spiders inhabiting that zone in the original diagrams or the number of spiders that
are sources or targets of arrows, which ever is greater:
∀ z ∈ Z(d) − Z ∗ (d) • |ES({z}, d)| ≤ max{|ES({z}, d0 )|, |ES({z}, d1 )|,
[
[
|ES({z}, d0 ) ∩
{s, t}| + |ES({z}, d1 ) ∩
{s, t}|}.
(l,s,t)∈A(d0 )
(l,s,t)∈A(d1 )
5. For each i = 0, 1 there exists an injection
σi : ES(di ) → ES(d)
such that
∀s ∈ ES(di ) • ηdi (e) = ηd (σi (e))
which induces an injection γi : A(di ) → A(d) defined by
(l, σi (s), σi (t)) if s, t, ∈ ES(di )
(l, σi (s), t),
if s ∈ ES(di ) and t ∈ L(di ) ∪ {∅})
γi (l, s, t) =
(l, s, σ(t)),
if s ∈ Z(di ) and t ∈ ES(di )
(l, s, t),
if s ∈ Z(di ) and t ∈ L(di ) ∪ {∅}
satisfying im(σ0 ) ∪ im(σ1 ) = ES(d) and im(γ0 ) ∪ im(γ1 ) = A(d).
174
Define
Dpc (d0 u d1 )
to be a set of partial combinations of d0 and d1 such that
∀d0 ∈ {d ∈ D0 : d0 u d1 vpc d} ∃!d00 ∈ Dpc (d0 u d1 ) • d0 ∼
= d00 .
Using the partial combinations of d0 u d1 we will identify a semantically equivalent
disjunction of unitary diagrams, called a disjunctification.
Definition 4.5.5 Let d0 and d1 be unitary α-diagrams satisfying Z(d0 ) = Z(d1 ) or d0 =⊥
or d2 =⊥. Define the class of disjunctifications of d0 and d1 , denoted DIS(d0 , d1 ), as
follows.
1. If d0 =⊥ or d1 =⊥ then DIS(d0 , d1 ) = {⊥}.
2. If a zone is shaded in one diagram and contains more existential spiders in the other
then DIS(d0 , d1 ) = {⊥}, more formally: if there exists z ∈ Z ∗ (di ) for some i = 0, 1
such that
|ES({z}, dj )| > |ES({z}, di )|
where j = 1 − i then DIS(d0 , d1 ) = {⊥}.
3. If Dpc (d0 u d1 ) = ∅ then DIS(d0 , d1 ) = {⊥}.
4. Otherwise
D ∈ DIS(d0 , d1 ) ⇔ D =
d
for some Dpc (d0 u d1 ).
d∈Dpc (d0 ud1 )
To recap, D ∈ DIS(d0 , d1 ) implies D is an α-diagram, D ≡ d0 u d1 and D is a
disjunction of unitary diagrams.
Rule 14 Disjunctifying unitary α-diagrams. Let d0 and d1 be unitary α-diagrams
satisfying Z(d0 ) = Z(d1 ) or d0 =⊥ or d2 =⊥. Let D be any diagram in DIS(d0 , d1 ). Then
d0 u d1 may be replaced by D and vice versa.
4.5.4
Logic reasoning rules
Rule 15 Connecting a diagram. Let D1 and D2 be constraint diagrams. Then D1
can be replaced by D1 t D2 .
175
Rule 16 Inconsistency. Let d be a unitary α-diagram such that d =⊥ or d contains
incompatible arrows. Then d may be replaced by any diagram.
Rule 17 t–Idempotency. Let D a be constraint diagram. Then D may be replaced by
D t D and vise versa.
Rule 18 u–Idempotency. Let D be a constraint diagram. Then D may be replaced by
D u D and vice versa.
Rule 19 t–Distributivity. Let D1 , D2 and D3 be constraint diagrams. Then D1 t
(D2 u D3 ) may be replaced by (D1 t D2 ) u (D1 t D3 ) and vice versa.
Rule 20 u–Distributivity. Let D1 , D2 and D3 be constraint diagrams. Then D1 u
(D2 t D3 ) may be replaced by (D1 u D2 ) t (D1 u D3 ) and vice versa.
Rule 21 t–Simplification. Let D1 , D2 and D3 be constraint diagrams. If diagram
D2 can be transformed into diagram D3 by one of the first 20 transformation rules then
D1 t D2 may be replaced by D1 t D3 .
Rule 22 u–Simplification. Let D1 , D2 and D3 be constraint diagrams. If diagram
D2 can be transformed into diagram D3 by one of the first 20 transformation rules then
D1 u D2 may be replaced by D1 u D3 .
4.5.5
Derived reasoning rules
To aid reasoning in the spider diagram system we included some derived reasoning rules.
We now do the same for constraint diagrams. Firstly we define obtainability.
Definition 4.5.6 Let D1 and D2 be two constraint diagrams. Then D1 ° D2 if and
only if D1 can be transformed to D2 by a single application of one of the first 22 rules
of transformation. Diagram D2 is obtainable from D1 , denoted D1 ` D2 , if and only
if there is a sequence of diagrams hD1 , D2 , ..., Dm i such that D1 = D1 , Dm = D2 and
Dk ° Dk+1 for each k (where 1 ≤ k < m).
The following rule (erasure of shading) is derived from rules 15 (connecting a diagram)
and 12 (excluded middle for regions), just as in the spider diagram system.
Rule 23 Erasure of shading. Let d1 be a unitary diagram with a shaded region r. Let
d2 be a copy of d1 except that the shading is erased from r. Then d1 can be replaced by
d2 .
176
Formal description. Let d1 be a unitary diagram such that there exists a shaded region,
r, of d1 . Let d2 be a unitary diagram such that
1. Z(d1 ) = Z(d2 ),
2. Z ∗ (d1 ) − r = Z ∗ (d2 ),
3. ES(d1 ) = ES(d2 ) ∧ ηd1 = ηd2 ,
4. A(d1 ) = A(d2 ).
Then d1 can be replaced by d2 .
Lemma 4.5.1 Rule 23, erasure of shading, is derived.
Proof The proof is similar to that of lemma 2.4.1. QED
Rule 24 Erasure of an existential spider. We may erase a complete existential spider
that is not the source or target of any arrow and whose habitat is a non-shaded region.
Let d1 be a unitary diagram with an existential spider, e, that is not the source or target
of any arrow and whose habitat is a non-shaded region. Let d2 be a copy of d1 except that
e has been erased. We may replace d1 with d2 .
A
A
g
s
g
1
B
d
B
d
1
2
Figure 4.40: An application of rule 24, erasure of an existential spider.
Example 4.5.16 The spider s1 is erased from d1 , in figure 4.40, obtaining d2 . From the
assertion |U − A| ≥ 2, by d1 , we can derive the fact that |U − A| ≥ 1, expressed by d2 .
Formal description. Let d1 be a unitary diagram such that there exists e ∈ ES(d1 )
satisfying
e 6∈
[
{s, t} ∧ ηd1 (e) ∩ Z ∗ (d1 ) = ∅.
(l,s,t)∈A(d1 )
Let d2 be a unitary diagram such that
1. Z(d1 ) = Z(d2 ),
177
2. Z ∗ (d1 ) = Z ∗ (d1 ),
3. ES(d1 ) − {e} = ES(d2 );
4. ∀ s ∈ ES(d1 ) − {e} • ηd1 (s) = ηd2 (s);
5. A(d1 ) = A(d2 ).
Then d1 can be replaced by d2 .
Conditions 1 and 2 ensure that all zones and shaded zones that occur in d1 also occur
in d2 . Condition 3 ensures that all existential spiders in d1 occur in d2 with the exception
of the erased spider. Condition 4 ensures that habitats are preserved. Condition 5 ensures
that all arrows in d1 are copied to d2 .
Lemma 4.5.2 Rule 24, erasure of an existential spider, is derived.
Proof The proof is similar to that of lemma 2.4.1. QED
Rule 25 Adding feet to an existential spider. Let d1 be a unitary diagram with an
existential spider e∗ not touching a zone z in d1 . Let d2 be a copy of d1 except spider e∗
has an extra foot placed in zone z. Then d1 may be replaced by d2 .
Formal description. Let d1 be a unitary diagram such that
∃e∗ ∈ ES(d1 ) ∃z ∈ Z(d1 ) • z 6∈ ηd1 (e∗ ).
Let d2 be a unitary diagram such that
1. Z(d1 ) = Z(d2 ),
2. Z ∗ (d1 ) = Z ∗ (d2 ),
3. ES(d1 ) = ES(d2 ) ∧ ∀e ∈ ES(d1 ) − {e∗ } • ηd1 (e) = ηd2 (e) ∧ ηd2 (e∗ ) = ηd1 (e∗ ) ∪ {z},
4. A(d1 ) = A(d2 ).
Then d1 can be replaced by d2 .
Lemma 4.5.3 Rule 25, adding feet to an existential spider, is derived.
There are other derived rules which operate on unitary diagrams. However, we shall
not formally define further such rules, since we shall not refer to them. We will include
examples of two such rules: introducing shading and deleting a contour.
178
A
B
f
d
º
f
ò
A
B
f
f
1
d
A
B
f
d
2
f
3
Figure 4.41: Introduction of shading.
Example 4.5.17 From diagram d1 in figure 4.41 we can deduce that B contains a single
element, for there is some element in A, say x, such that
x.f ∈ B ∧ x.f = B.
To introduce shading to d1 we apply rule 12 (excluded middle). This results in two
diagrams one of which, d3 , contains incompatible arrows. We use rules 16 (inconsistency)
and 21 (t-simplification) to obtain d2 t d2 . Finally we use rule 17 (t-idempotency) to
obtain d2 .
A
f
B
g
f
d
A
f
C
d
1
C
2
Figure 4.42: Erasure of a contour.
Example 4.5.18 The contour with label B can be erased from diagram d1 in figure 4.42
to give d2 . The universal spiders inhabiting the zones ({A}, {B, C}) and ({A, B}, {C})
in d1 are both the source of arrows with label f and with the same target. Since these
two zones combine to form a single zone in d2 the two spiders are replaced by a single
spider in d2 . Notice that the arrow labelled g is not copied to d2 . The diagram d1 provides
no semantic information about the elements in the set represented by ({A}, {B, C}) (the
zone that combines with ({A, B}, {C}) to give ({A}, {C})) under the relation represented
by g. Thus it would be an invalid deduction if the universal spider in d2 was the source of
an arrow labelled g with target C.
The delete contour rule is derived from ‘introduction of a shaded zone’, ‘erasure of
shading’, ‘add spider foot’, ‘erasure of an arrow’ and the reverse of ‘introduction of a
contour’.
We now include a set of results that all have analogies in the spider diagram system.
Due to their similarity we omit the proofs of these results.
179
Lemma 4.5.4 Let D1 and D2 be constraint diagrams such that D1 ` D2 and let D be a
constraint diagram. Then D t D1 ` D t D2 .
Lemma 4.5.5 Let D1 and D2 be constraint diagrams such that D1 ` D2 and let D be a
constraint diagram. Then D u D1 ` D u D2 .
Corollary 4.5.1 Rule of Replacement. Let D1 , D2 , D3 and D4 be constraint diagrams
such that D1 ` D2 and D3 ` D4 . Let ¤ ∈ {t, u}. Then D1 ¤D3 ` D2 ¤D4 .
Theorem 4.5.1 Rule of Construction. Let Di be constraint diagrams where i =
1, ..., n and let D be a constraint diagram. If Di ` D for i = 1, ..., n then
Ã
!
i=1,...,n
4.6
Di
` D.
Soundness
The process for proving soundness for this constraint diagram system is the similar to that
for spider diagrams. We prove each individual rule is valid and then prove the soundness
of the system by induction.
4.6.1
Validity of the unitary to unitary reasoning rules
We start by proving the validity of rule 1 (isomorphic diagrams).
Theorem 4.6.1 Rule 1, isomorphic diagrams, is valid. Let d1 and d2 be unitary diagrams.
If d1 ∼
= d2 then d1 ≡ d2 .
Proof (Sketch) It can be shown that any valid extension to existential spiders for d1
gives rise to a valid extension of existential spiders for d2 and vice versa (by using the
habitat preserving bijection between the existential spiders). QED
Theorem 4.6.2 Rule 2, erasure of an arrow, is valid. Let d1 be a unitary diagram such
that there exists a ∈ A(d1 ). Then d1 ² d1 − {a}.
Proof (Sketch) It is easy to show that any valid extension to existential spiders for d1
is a valid extension for d1 − {a}. So any model for d1 is also a model for d1 − {(l, s, t)};
hence d1 ² d1 − {a}. QED
Theorem 4.6.3 Rule 3, introduction of a contour label, is valid. Let d1 (6=⊥) be a unitary
diagram. Let d2 be a unitary diagram such that
180
1. L(d2 ) = L(d1 ) ∪ {l∗ } where l∗ 6∈ L(d1 ),
2. there exists a surjection h : Z(d2 ) → Z(d1 ) defined by
h(a, L(d2 ) − a) = (a − {l∗ }, L(d2 ) − (a ∪ {l∗ }))
which extends to the function h : R(d2 ) → R(d1 ) where
h(r) =
[
{h(z)} = {h(z) : z ∈ r}
z∈r
and satisfies
(a) each zone in d1 is the image of two zones in d2 :
∀z ∈ Z(d1 ) ∃z1 , z2 ∈ Z(d2 ) • z1 6= z2 ∧ h(z1 ) = h(z2 ) = z,
(b) each zone is shaded in d2 if and only if it has a shaded image:
∀z ∈ Z(d2 ) • z ∈ Z ∗ (d2 ) ⇔ h(z) ∈ Z ∗ (d1 ),
(c) the existential spiders are unchanged: ES(d1 ) = ES(d2 ),
(d) the habitats of the existential spiders are ‘preserved under h’:
∀e ∈ ES(d1 ) • ηd2 (e) = {z ∈ Z(d2 ) : h(z) ∈ ηd1 (e)},
(e) the existential arrows match Ae (d1 ) = Ae (d2 ),
(f ) there exists a surjection, γ : Au (d2 ) → Au (d1 ) defined by
∀ (l, s, t) ∈ Au (d2 ) • γ(l, s, t) = (l, h(s), t)
and each universal arrow in d1 gives rise to two universal arrows in d2 :
∀a ∈ Au (d1 ) ∃a1 , a2 ∈ Au (d2 ) • a1 6= a2 ∧ γ(a1 ) = γ(a2 ) = a.
Then d1 ≡ d2 .
Proof Let m = (U, Ψ, φ) be an interpretation and assume Pd1 (m). Firstly we show that
the plane tiling condition holds for d2 . The greatest region (under the relation of subset
inclusion) to map to Z(d1 ) under h is Z(d2 ). By lemma 2.5.1, Ψ(Z(d1 )) = Ψ(Z(d2 )).
Since Ψ(Z(d1 )) = U , the plane tiling condition holds for d2 . Extend Ψ : R → PU to
181
Ψ : R ∪ ES(d) → PU such that Ψ is a valid extension to existential spiders for d1 . We will
show that Ψ is also a valid extension to existential spiders for d2 . For any e ∈ ES(d2 ),
|Ψ(e)| = 1
and
Ψ(e) ⊆ Ψ(ηd1 (e))
[1].
Now
ηd2 (e) = {z ∈ Z(d2 ) : h(z) ∈ ηd1 (e)}.
Clearly {z ∈ Z(d2 ) : h(z) ∈ ηd1 (e)} is the greatest region to map to ηd1 (e). So by lemma
2.5.1,
Ψ(ηd1 (e)) = Ψ(ηd2 (e)).
By [1],
Ψ(e) ⊆ Ψ(ηd2 (e))
and the spiders condition holds for d2 . Since the strangers condition holds for d1 , it also
holds for d2 . Next we show that the shading condition holds for d2 . Let z ∈ Z ∗ (d2 ). Then
h(z) ∈ Z ∗ (d1 ) by condition 2(b). By the shading condition for d1 ,
Ψ(h(z)) ⊆
[
Ψ(e).
e∈ET ({h(z)},d1 )
Suppose no spider, e, in d1 satisfies h(z) ∈ ηd1 (e). Then Ψ(h(z)) = ∅ and by, lemma 2.5.1,
Ψ(z) ⊆ Ψ(h(z)) and
Ψ(z) ⊆
[
Ψ(e).
e∈ET ({z},d2 )
Alternatively suppose that there is a spider, e, in d1 satisfying h(z) ∈ ηd1 (e). Then e
satisfies, by condition 2(d),
z ∈ ηd2 (e),
so e ∈ ET ({z}, d2 ). Thus
[
[
Ψ(e) ⊆
e∈ET ({h(z)},d1 )
e∈ET ({z},d2 )
Therefore, since Ψ(z) ⊆ Ψ(h(z)),
Ψ(z) ⊆
[
Ψ(e)
e∈ET ({z},d2 )
and it follows that the shading condition holds for d2 .
182
Ψ(e).
Let (l, s, t) ∈ Ae (d2 ). Then
Ψ(s).φ(l) = Ψ(t)
by the existential arrows condition for d1 . Thus the existential arrows condition holds for
d2 . Finally we show that the universal arrows condition holds for d2 .
Let (l, s, t) ∈ Au (d2 ). By the universal arrows condition for d1 we have
∀x ∈ Ψ(h(s)) • {x}.φ(l) = Ψ(t).
Therefore, since Ψ(s) ⊆ Ψ(h(s)), the universal arrows condition holds for d2 . Hence
Pd1 (m) ⇒ Pd2 (m) and d1 ² d2 .
Conversely, assume Pd2 (m). The proof that the plane tiling condition for d2 implies
the plane tiling condition for d1 is similar to the proof that the plane tiling condition for
d1 implies the plane tiling condition for d2 . Extend Ψ : R → PU to Ψ : R ∪ ES(d2 ) → PU
such that Ψ is a valid extension to existential spiders for d2 . The proofs that the spiders
condition for d2 implies the spiders condition for d1 and the strangers condition for d2
implies the strangers condition for d1 are similar to those given above. We now show the
shading condition holds for d1 . Let z ∈ Z ∗ (d1 ). Then there are two shaded zones, say z1
and z2 , in d2 such that
z1 6= z2 ∧ h(z1 ) = h(z2 ) = z
by conditions 2(a) and 2(b). By the shading condition for d2 ,
[
Ψ(z1 ) ∪ Ψ(z2 ) ⊆
Ψ(e).
e∈ET ({z1 ,z2 },d2 )
Suppose no existential spider in d2 touches {z1 , z2 }. Then Ψ({z1 , z2 }) = ∅ and, by lemma
2.5.1, Ψ(z) = Ψ({z1 , z2 }). Therefore
[
Ψ(z) ⊆
Ψ(e).
e∈ET ({z},d1 )
Alternatively suppose that there is a spider, e, in d2 satisfying z1 ∈ ηd2 (e) ∨ z2 ∈ ηd2 (e).
That is e ∈ ET ({z1 , z2 }, d2 ). Then, since ηd2 (e) = {z 0 ∈ Z(d2 ) : h(z 0 ) ∈ ηd1 (e)} (which
includes z1 or z2 ),
h(z1 ) = h(z2 ) = z ∈ ηd1 (e),
so e ∈ ET ({z}, d1 ) and, because ET ({z1 , z2 }, d2 ) ⊆ ET ({z}, d)
Ψ({z1 , z2 }) ⊆
[
Ψ(e) ⊆
e∈ET ({z1 ,z2 },d2 )
183
[
e∈ET ({z},d1 )
Ψ(e).
Therefore, since Ψ(z) = Ψ({z1 , z2 }),
[
Ψ(z) ⊆
Ψ(e)
e∈ET ({z},d1 )
and the shading condition holds for d. The proof that the existential arrows condition
holds for d2 implies the existential arrows condition holds for d1 is similar to before.
Consider now the universal arrows condition for d1 . Let (l, s, t) ∈ Au (d1 ). Then
there exist two distinct arrows, say (l, s1 , t) and (l, s2 , t), in Au (d2 ) such that γ(l, s1 , t) =
γ(l, s2 , t) = (l, s, t). Then it must be that h(s1 ) = h(s2 ) = s. The region {s1 , s2 } is the
greatest region to map to {s} under h. Thus, by lemma 2.5.1,
Ψ({s1 , s2 }) = Ψ(s).
By the universal arrows condition for d2 :
∀x ∈ Ψ(s) • {x}.φ(l) = Ψ(t).
Therefore the universal arrows condition holds for d1 . Hence Pd1 (m) ⇔ Pd2 (m) and
d1 ≡ d2 , that is rule 3 is valid. QED
Theorem 4.6.4 Rule 4, introduction of a shaded zone, is valid. Let d1 be a unitary
diagram such there exists z ∗ ∈ V Z(d1 ) − Z(d1 ). Let d2 be a unitary diagram such that
1. Z(d1 ) ∪ {z ∗ } = Z(d2 ) and
2. Z ∗ (d1 ) ∪ {z ∗ } = Z ∗ (d2 ) and
3. ES(d1 ) = ES(d2 ) ∧ ηd1 = ηd2 and
4. A(d1 ) = A(d2 ).
Then d1 ≡ d2 .
Proof (Sketch) To prove the validity of this rule it is sufficient to show that z ∗ , the
introduced zone, represents the empty set in any model for d1 and in any model for d2 . It
then follows that any valid extension to existential spiders for d1 is also a valid extension
for d2 and vice versa. QED
We now prove that rule 5 (introduction of an arrow: universal equivalence) is valid.
The strategy is to take a valid extension to existential spiders for d and show that this is
a valid extension to existential spiders for d with the extra arrow. To do so, we only have
to show that the new arrow does not cause the semantics predicate to be falsified.
184
Theorem 4.6.5 Rule 5, introduction of an arrow: universal equivalence, is valid. Let d
be a unitary diagram such that there exists z ∈ Z ∗ (d), l ∈ AL and t ∈ ES(d) ∪ L(d) ∪ {∅}
where
1. ∀ e ∈ ET ({z}, d) • (l, e, t) ∈ A(d) and
2. (l, z, t) 6∈ A(d).
Then d ≡ d + {(l, z, t)}.
Proof Let m = (U, Ψ, φ) be an interpretation. Assume Pd (m). Extend Ψ : R → PU to
Ψ : R ∪ ES(d) → PU such that Ψ is a valid extension to existential spiders for d. We
only need to show that the arrow (l, z, t) does not cause the universal arrows condition
for d + {(l, z, t)} to fail with this extension to existential spiders. It is clear that the other
conditions hold with this extension to existential spiders for d + {(l, z, t)}. The zone z is
shaded in d (and therefore in d + {(l, z, t)}), so
[
Ψ(z) ⊆
Ψ(e)
e∈ET ({z},d+{(l,z,t)})
by the shading condition for d + {(l, z, t)}. Any existential spider satisfying
e ∈ ET ({z}, d + {(l, z, t)})
is the source of an arrow with label l and target t. Thus, by the existential arrows condition
for d,
∀x ∈ Ψ(z) • {x}.φ(l) = Ψ(t),
as required. Therefore Pd (m) ⇒ Pd+{(l,z,t)} (m) and d ² d + {(l, z, t)}.
Arrow (l, z, t) can be erased using rule 2 (erasure of an arrow). By the validity of rule 2
it follows that d + {(l, z, t)} ² d. Hence d ≡ d + {(l, z, t)}, that is rule 5 is valid. QED
The above proof strategy can be used to show that the remaining ‘introduction of an
arrow’ rules are valid.
Theorem 4.6.6 Rules 6 to 10 are valid.
4.6.2
Validity of the unitary to compound reasoning rules
Theorem 4.6.7 Rule 11, splitting existential spiders, is valid. Let d be a unitary diagram
such that
∃e∗ ∈ ES(d) ∃r1 , r2 ∈ R(d) • ηd (e∗ ) = r1 ∪ r2 ∧ r1 ∩ r2 = ∅.
Let d1 and d2 be unitary diagrams such that
185
1. Z(d) = Z(d1 ) = Z(d2 )
2. Z ∗ (d) = Z ∗ (d1 ) = Z ∗ (d2 )
3. ES(d) = ES(d1 ) = ES(d2 )
4.
i. ∀e ∈ ES(d) − {e∗ } • ηd (e) = ηd1 (e) = ηd2 (e)
ii. ηd1 (e∗ ) = r1 ∧ ηd2 (e∗ ) = r2
5. A(d) = A(d1 ) = A(d2 ).
Then d ≡ d1 t d2 .
Proof Let m = (U, Ψ, φ) be an interpretation. Firstly we show (Pd1 (m) ∨ Pd2 (m)) ⇒
Pd (m). Assume Pd1 (m). Since Z(d) = Z(d1 ), the plane tiling condition holds for d. Extend
Ψ : R → PU to Ψ : R∪ES(d1 ) → PU such that Ψ is a valid extension to existential spiders
for d1 . Since ηd1 (e∗ ) ⊂ ηd (e∗ ) and all other existential spiders have the same habitat in
both d1 and d, the spiders condition and strangers condition hold for d. Furthermore, since
Z ∗ (d1 ) = Z ∗ (d), it follows that the shading condition holds for d. Now A(d1 ) = A(d),
ES(d1 ) = ES(d). Therefore, for any arrow, (l, s, t), in Ae (d)
Ψ(s).φ(l) = Ψ(t).
Hence the existential arrows condition holds for d. Similarly the universal arrows condition
holds for d. Hence Pd1 (m) ⇒ Pd (m). Similarly Pd2 (m) ⇒ Pd (m). It follows that (Pd1 (m)∨
Pd2 (m)) ⇒ Pd (m) and d1 t d2 ² d.
Conversely, assume Pd (m). Since Z(d) = Z(d1 ) = Z(d2 ) it follows that the plane tiling
condition holds for d1 and d2 . Extend Ψ : R → PU to Ψ : R ∪ ES(d) → PU such that Ψ is
a valid extension to existential spiders for d. Then either Ψ(e∗ ) ⊆ Ψ(r1 ) or Ψ(e∗ ) ⊆ Ψ(r2 )
by the spiders condition for d. Suppose that Ψ(e∗ ) ⊆ Ψ(r1 ). We show that Pd1 (m) is true.
For any existential spider, e, distinct from e∗ in ES(d), ηd (e) = ηd1 (e). Thus the spiders
condition holds for d1 . It is clear that the strangers condition holds for d1 . Let z ∈ Z ∗ (d).
Now
Ψ(z) ⊆
[
Ψ(e)
e∈ET ({z},d)
by the shading condition for d. If z 6∈ r2 then ET ({z}, d) = ET ({z}, d1 ) so
Ψ(z) ⊆
[
e∈ET ({z},d1 )
186
Ψ(e).
Alternatively it may be that z ∈ r2 and, from the shading condition for d,
[
Ψ(z) ⊆
Ψ(e) ∪ Ψ(e∗ ).
e∈ET ({z},d)−{e∗ }
But, since z ∈ r2 , Ψ(z) ⊆ Ψ(r2 ) so Ψ(e∗ )∩Ψ(z) = ∅, for Ψ(e∗ ) ⊆ Ψ(r1 ) and Ψ(r1 )∩Ψ(r2 ) =
∅. Thus, since ET ({z}, d) − {e∗ } = ET ({z}, d1 ),
[
Ψ(z) ⊆
Ψ(e).
e∈ET ({z},d1 )
Hence the shading condition holds for d1 . Now ES(d) = ES(d1 ) and A(d) = A(d1 ) so it
follows that the existential arrows condition and the universal arrows condition hold for d1 .
Therefore Pd (m) ⇒ Pd1 (m). Alternatively it is the case that Ψ(e∗ ) ⊆ Ψ(r2 ) and a similar
argument shows Pd (m) ⇒ Pd2 (m). Hence Pd (m) ⇔ (Pd1 (m) ∨ Pd2 (m)) and d ≡ d1 t d2 ,
that is rule 11 is valid. QED
Theorem 4.6.8 Rule 12, excluded middle for regions, is valid. Let d be a unitary diagram
such that there is a non-shaded region r in d. Let d1 and d2 be unitary diagrams such that
1. Z(d) = Z(d1 ) = Z(d2 ),
2. Z ∗ (d) = Z ∗ (d1 ),
3. Z ∗ (d) ∪ r = Z ∗ (d2 ),
4. there exists e ∈ ES(d1 ) such that ηd1 (e) = r and
ES(d) = ES(d1 ) − {e} = ES(d2 ),
5. ∀s ∈ ES(d) ηd (s) = ηd1 (s) = ηd2 (s),
6. A(d) = A(d1 ) = A(d2 ).
Then d ≡ d1 t d2 .
Proof Let m = (U, Ψ, φ) be an interpretation. If the plane tiling condition holds for and
d0 ∈ {d, d1 , d2 } then it holds for all. Any valid extension existential spiders for d1 can be
used to construct a valid extension to existential spiders for d by restricting the domain
of Ψ : R ∪ ES(d1 ) → PU to R ∪ (ES(d1 ) − {e}). Hence Pd1 (m) ⇒ Pd (m). Similarly,
Pd2 (m) ⇒ Pd (m). Thus (Pd1 (m) ∨ Pd2 (m)) ⇒ Pd (m) and d1 t d2 ² d.
Assume now that Pd (m) holds and let Ψ : R ∪ ES(d) → PU be a valid extension to
existential spiders for d. With this extension of Ψ, it is trivial that the spiders condition,
187
strangers condition and existential arrows condition and universal arrows condition hold
for d2 . If the shading condition holds for d2 then Pd2 (m) is true. Suppose, with this
extension of Ψ, the shading condition fails for d2 . Then there is some z ∈ r such that
[
Ψ(z) *
Ψ(e0 ).
e0 ∈ET ({z},d)
Let
[
x ∈ Ψ(z) −
Ψ(e0 )
e0 ∈ET ({z},d)
and define Ψ(e) = {x}. We show that Pd1 (m) is true.
Clearly |Ψ(e)| = 1 and Ψ(e) ⊆ Ψ(r). Since the spiders condition holds for d, ES(d) =
ES(d1 ) − {e} and habitats are preserved, the spiders condition holds for d1 . Since
x ∈ Ψ(z) −
[
Ψ(e0 ),
e0 ∈ET ({z},d)
there can be no spider, e0 , in ES(d) such that Ψ(e0 ) = Ψ(e). If there were such an e0 ,
then Ψ(e0 ) = {x} ⊆ Ψ(z) and it would be that e0 ∈ ET ({z}, d) by the spiders condition
for d. Now, since ES(d) = ES(d1 ) − {e} the strangers condition follows for d1 . The
introduced spider, e, does not touch any shaded zone, so the shading condition for d
implies the shading condition for d1 . Now Ae (d1 ) = Ae (d) so the existential arrows
condition holds for d1 . It is also the case that Au (d1 ) = Au (d) so the universal arrows
condition holds for d1 . Thus Pd1 (m) holds. Therefore Pd (m) ⇒ (Pd1 (m) ∨ Pd2 (m)). Hence
Pd (m) ⇔ (Pd1 (m) ∨ Pd2 (m)) and d ≡ d1 t d2 , that is rule 12 is valid. QED
We will now prove that rule 13 (excluded middle for arrows) is valid. When we apply
this rule to d1 we get a disjunction of unitary diagrams, each of which is a copy of d but
with an additional arrow. Recall that the set E(d1 , l, e) contains diagrams that are copies
of d1 , each with exactly one extra arrow with label l, source e and any target.
Theorem 4.6.9 Rule 13, excluded middle for arrows, is valid. Let d1 be a unitary αdiagram such that
1. Z(d1 ) = Z ∗ (d1 ) and
2. ∀Ei ⊆ ES(d1 ) ∃A ∈ L(d1 ) • |Ei | ≥ 2 ⇒ ES(A, d1 ) = Ei and
3. ∃e ∈ ES(d1 ) ∃l ∈ AL ¬∃t ∈ ES(d1 ) ∪ L(d1 ) ∪ {∅} • (l, e, t) ∈ A(d1 ).
d2 .
Then d1 ≡`
d2 ∈E(d1 ,l,e)
188
Proof Each diagram in E(d1 , l, e) can be transformed into d1 by erasing the additional
arrow. By the validity of rule 2, each d2 in E(d1 , l, e) semantically entails d1 . Thus
d2 ² d1 .
d2 ∈E(d1 ,l,e)
Conversely, let m = (U, Ψ, φ) be an interpretation and assume Pd1 (m). Let Ψ : R ∪
ES(d1 ) → PU be a valid extension of Ψ to existential spiders for d1 . We show this
extension is also valid for some d2 in E(d1 , l, e). To do so, we only need consider the
existential spider, e, and the arrow label l, since each d2 is a copy of d1 except that d2
contains exactly one additional arrow with source e and label l. Now
Ψ(e).φ(l) ⊆ U.
Firstly we consider the case where Ψ(e).φ(l) = ∅. There is a d2 in E(d1 , l, e) such that
(l, e, ∅) is in d2 and it follows that Pd2 (m) holds.
Secondly we consider the case where |Ψ(e).φ(l)| = 1. Since d1 is entirely shaded it
follows that Ψ|ES(d1 ) is not only injective, but also has the property that, for any singleton
subset, S, of U there is an e1 in d1 such that Ψ(e1 ) = S (by the spiders condition, strangers
condition and shading condition for d1 , |ES(d1 )| = |U |). Thus Ψ(e).φ(l) = Ψ(e1 ) for some
e1 in d1 . One of the diagrams, d2 say, in E(d1 , l, e) has an arrow (l, e, e1 ). It follows that
Pd2 (m) holds.
Finally, we consider the case where |Ψ(e).φ(l)| ≥ 2. Now Ψ(e).φ(l) = S for some subset
S of U . We will find a contour label, A say, such that Ψ(A) = S. Let Ei be the set of all
existential spiders in d1 that map to singleton subsets of S. Then
Ψ(e).φ(l) =
[
Ψ(ej ) = S.
ej ∈Ei
Choose a contour label, A, such that ES(A, d1 ) = Ei . Such a contour label exists by
condition 2. Now,
[
Ψ(A) =
Ψ(z),
z∈Z(d)∧A∈c(z)
since the containment condition is equivalent to the plane tiling condition. By the spiders
condition,
[
[
Ψ(ej ) ⊆
ej ∈Ei
Ψ(z) = Ψ(A).
z∈Z(d)∧A∈c(z)
By the shading condition,
Ψ(A) =
[
Ψ(z) ⊆
z∈Z(d)∧A∈c(z)
189
[
ej ∈Ei
Ψ(ej ).
Therefore,
Ψ(A) =
[
Ψ(ej ) = S.
ej ∈Ei
One of the diagrams, d2 say, in E(d1 , l, e) has an arrow (l, e, A). If follows that Pd2 (m)
holds. Hence any model for d1 is also a model for some diagram in E(d1 , l, e).
Thus d1 ²
d2 . Hence d1 ≡
d2 ∈E(d1 ,l,e)
4.6.3
d2 , that is rule 13 is valid. QED
d2 ∈E(d1 ,l,e)
Validity of the logic reasoning rules and the derived reasoning
rules
We omit proofs of validity of rules 15 to 22.
Theorem 4.6.10 Rules 15 to 22 are valid.
Corollary 4.6.1 Rules 23 to 25 (the derived reasoning rules) are valid.
4.6.4
Validity of the compound to compound reasoning rule
We now show that rule 14 (disjunctifying unitary α-diagrams) is valid. To prove that
disjunctifying unitary α-diagrams d0 and d1 results in a semantically equivalent diagram
we first show that for each model, m, for d0 u d1 there exists a diagram, dm , that is a
partial combination of d0 and d1 for which m is also a model. We will construct a diagram
d (which may not be a partial combination of d0 and d1 ) and show m |= d, then erase
existential spiders from d to give dm . To create a set of existential spiders for d, we take
any set (not containing contour labels, zones or regions) in bijective correspondence with
the set of images of the existential spiders in d0 and d1 under a valid extension of the
function Ψ. We cannot simply take the union of ES(d0 ) and ES(d1 ) to be the existential
spiders in d, for this may result in too many spiders being in any particular zone: if a zone
represents a set containing one element, for example, and that zone contains one spider in
each of d0 and d1 , placing two spiders in z in d would prevent m satisfying d.
We then use such a bijection to induce a mapping from the existential spiders in d to
zones of d, ensuring that the element represented by the spider is in the set represented
by the zone. This gives us habitats for the existential spiders in d. Next we define habitat
preserving mappings from the existential spiders of d0 and d1 to existential spiders in d
by identifying which spiders map to the same elements in the universal set. This allows
us to define the set of arrows for d.
190
Lemma 4.6.1 Let d0 and d1 be unitary α-diagrams such that Z(d0 ) = Z(d1 ) and let
m = (U, Ψ, φ) be an interpretation. If
m |= d0 u d1
then there exists a diagram dm such that m satisfies dm and dm is a partial combination
of d0 u d1 :
m |= dm ∧ d0 u d1 vpc dm .
Proof Suppose m |= d0 u d1 . Then there exist valid extensions of Ψ : R → PU to, say,
Ψd0 : R ∪ ES(d0 ) → PU and Ψd1 : R ∪ ES(d1 ) → PU . Now we construct a diagram, d,
and show m |= d. Define
(i) Z = Z(d0 ),
(ii) Z ∗ = Z ∗ (d0 ) ∪ Z ∗ (d1 ),
(iii) ES is any set such that ES ∩ (CL ∪ Z ∪ R) = ∅ and there exists a bijection, ², from
ES to
3
[
[
{Ψd0 (e)} ∪
{Ψd1 (e)},
e∈ES(d1 )
e∈ES(d0 )
define also two functions, for i = 0, 1, σi : ES(di ) → ES where
σi (s) = ²−1 (Ψdi (s))
(iv) a function η : ES → PZ − {∅} satisfying
∀e ∈ ES • η(e) = {z} ⇔ ²(e) ⊆ Ψ(z)
(v) finally, A = im(γ0 ) ∪ im(γ1 ) where, for i = 0, 1, the injective function γi : A(di ) →
AL × (ES ∪ Z) × (ES ∪ L(di ) ∪ {∅}) induced by σi is defined by
(l, σi (s), σi (t)) if s, t ∈ ES(di )
(l, σi (s), t),
if s ∈ ES(di ) and t ∈ L(di ) ∪ {∅}
γi (l, s, t) =
(l, s, σi (t)),
if s ∈ Z(di ) and t ∈ ES(di )
(l, s, t),
if s ∈ Z(di ) and t ∈ L(di ) ∪ {∅}.
Then the tuple hL(d0 ), Z, Z ∗ , ES, η, Ai is a unitary α-diagram which we call d. We now
show m |= d. Since the plane tiling condition holds for d0 (and d1 ), the plane tiling
3
Note, we cannot define ES =
disjoint from CL ∪ Z ∪ R.
S
e∈ES(d0 )
{Ψd0 (e)} ∪
191
S
e∈ES(d1 )
{Ψd1 (e)} since we do not know this set is
condition holds for d. Now extend Ψ : R → PU to Ψd : R ∪ ES(d) → PU by defining, for
each e ∈ ES(d),
Ψd (e) = ²(e).
Consider first the spiders condition. Let e ∈ ES(d). Then |²(e)| = 1 since Ψd0 and Ψd1
are valid extensions to existential spiders, so
|Ψd (e)| = 1.
Furthermore, from the properties of η,
²(e) ⊆ Ψ(z) ⇒ ηd (e) = {z},
so
Ψd (e) ⊆ Ψ(ηd (e)).
Hence the spiders condition holds for d. It is trivial that the strangers condition holds for
d. Let z ∈ Z ∗ (d) and suppose z ∈ Z ∗ (d0 ). Then
[
Ψ(z) =
Ψd0 (e)
(1),
e∈ET ({z},d0 )
by the shading condition for d0 and since d0 is an α-diagram. Let x ∈ Ψ(z). Then
{x} = Ψd0 (e), for some e ∈ ET ({z}, d0 ), by (1). Therefore there is some existential
spider, say ex ∈ ES(d), such that ²(ex ) = {x}. Moreover, ηd (ex ) = {z}, thus
ex ∈ ET ({z}, d)
and it is the case that
[
x∈
Ψd (e),
e∈ET ({z},d)
for Ψd (ex ) = {x}. Therefore
[
Ψ(z) ⊆
Ψd (e).
e∈ET ({z},d)
Similarly if z ∈ Z ∗ (d1 ), then Ψ(z) ⊆
S
Ψd (e). Hence the shading condition holds
e∈ET ({z},d)
for d.
Let (l, s, t) ∈ Ae (d). Then, for i = 0 or i = 1, there is an arrow, say (l, s1 , t1 ) ∈ Ae (di )
such that
γ(l, s1 , t1 ) = (l, σi (s1 ), t)
= (l, s, t).
192
Suppose i = 0. By the existential arrows condition for d0 ,
Ψd0 (s1 ).φ(l) = Ψd0 (t1 )
(2).
Now
Ψd (s) = Ψd (σ0 (s1 ))
since s = σ0 (s1 )
= Ψd (²−1 (Ψd0 (s1 )))
since σ0 (s1 ) = ²−1 (Ψd0 (s1 ))
= ²(²−1 (Ψd0 (s1 )))
since Ψd (e) = ²(e) for any e ∈ ES(d)
= Ψd0 (s1 ).
Similarly, if t = σ0 (t1 ) then Ψd (t) = Ψd0 (t1 ) and if t = t1 then Ψ(t) = Ψ(t1 ). So (2)
becomes
Ψd (s).φ(l) = Ψd (t).
Alternatively i = 1 and a similar argument shows Ψd (s).φ(l) = Ψd (t). Hence the existential
arrows condition holds for d.
We now turn our attention to the universal arrows condition for d. Let (l, s, t) ∈ Au (d).
Then, for i = 0 or i = 1, there is an arrow, say (l, s, t1 ) ∈ Au (di ) such that
γi (l, s, t1 ) = (l, s, t).
Suppose i = 0. By the universal arrows condition for d0 ,
∀x ∈ Ψd0 (s) • {x}.φ(l) = Ψd0 (t1 ).
Now Ψd0 (t1 ) = Ψd (t), so
∀x ∈ Ψd0 (s) • {x}.φ(l) = Ψd (t).
Also, since s is a zone we deduce
∀x ∈ Ψd (s) • {x}.φ(l) = Ψd (t).
Alternatively, i = 1 and a similar argument shows that ∀x ∈ Ψd (s) • {x}.φ(l) = Ψd (t).
Hence the universal arrows condition holds for d. Hence m |= d.
If d is not a partial combination of d0 and d1 then it must be that at least one unshaded
zone of d contains too many existential spiders. For each such zone, z, it must be that
|ES({z}, d)| > M where
[
M = max{|ES({z}, d0 )|, |ES({z}, d1 )|, |ES({z}, d0 ) ∩
{source(a), target(a)}|
a∈A(d0 )
+ |ES({z}, d1 ) ∩
[
a∈A(d1 )
193
{source(a), target(a)}|}
(M is given in the definition of a partial combination). From each such zone z, erase
|ES({z}, d)| − M spiders that are not sources or targets of arrows. The resulting diagram,
dm , is a partial combination of d0 and d1 . By the validity of rule 24 (erasure of an
existential spider) m |= dm . Hence if
m |= d0 u d1
then there exists a diagram dm such that
m |= dm ∧ d0 u d1 vpc dm .
QED
Corollary 4.6.2 Let d0 and d1 be unitary α-diagrams such that Z(d0 ) = Z(d1 ) and let
m = (U, Ψ, φ) be an interpretation. If Dpc (d0 u d1 ) = ∅ then m 6|= d0 u d1 .
Lemma 4.6.2 Let d0 and d1 be unitary α-diagrams such that Z(d0 ) = Z(d1 ) such that
d0 u d1 is satisfiable. Let d be partial combination of d0 and d1 . Then d ` d0 u d1 .
Proof We show that d can be transformed into a diagram isomorphic to d0 . Apply rule
23 (erasure of shading) repeatedly to d, erasing all shading from zones in Z ∗ (d) − Z ∗ (d0 ),
yielding a diagram we call d0 . Diagram d0 has the same set of zones and the same set of
shaded zones as d0 . Apply rule 2 (erasure of an arrow) repeatedly to d0 erasing all arrows
in the set A(d) − im(γ0 ) (where γ0 is as defined in definition 4.5.4), yielding a diagram
we call d00 . Any zone in Z(d00 ) containing more spiders in d00 than in d0 cannot be shaded.
Any zone that is shaded in Z ∗ (d00 ) must contain the same number of spiders in d00 and d0 .
Furthermore, all spiders in the set ES(d) − im(σ0 ) are not targets of arrows in d00 . Apply
rule 24 (erasure of a spider) to d00 erasing all spiders in the set ES(d) − im(σ0 ), yielding a
diagram d000 . Diagram d000 is isomorphic to d0 . Apply rule 1, giving d000 ` d0 . Thus d ` d0 .
Similarly, d ` d1 . Now
d`dud
by rule 18 (u-idempotency)
` d u d0
by rule 22 (u-simplification)
` d0 u d1
by rule 22 (u-simplification),
as required. QED
Recall that DIS(d0 , d1 ) is the set of all disjunctifications of d0 u d1 . We will now show
that m is a model for d0 u d1 if and only if m is a model for any element of DIS(d0 , d1 ).
194
Theorem 4.6.11 Rule 14, disjunctifying unitary α-diagrams, is valid. Let d0 and d1 be
unitary α-diagrams satisfying Z(d0 ) = Z(d1 ) or d0 =⊥ or d1 =⊥. Let D ∈ DIS(d0 , d1 ).
Then d0 u d1 ≡ D.
Proof Let m = (U, Ψ, φ) be an interpretation. There are four cases.
1. If d0 =⊥ or d1 =⊥ then D =⊥ and no interpretation satisfies d0 u d1 . Hence
d0 u d1 ≡ D
2. Suppose that Z(d0 ) = Z(d1 ) and there exists z ∈ Z ∗ (di ) for some i = 0, 1 such that
|ES({z}, dj )| > |ES({z}, di )|
where j = 1−i then D =⊥. We show that m cannot satisfy both d0 and d1 . Suppose,
without loss of generality, that i = 0 and j = 1 and choose such a zone z. Informally,
z must represent a set with exactly |ES({z}, d0 )| elements in any model for d0 but
with more elements in any model for d1 . Hence d0 u d1 is unsatisfiable and
d0 u d1 ≡ D.
3. Suppose Dpc (d0 u d1 ) = ∅ then D =⊥ and, by corollary 4.6.2, it must be that
m 6|= d0 u d1 . Hence d0 u d1 is unsatisfiable and
d0 u d1 ≡ D.
4. Otherwise
D=
d.
d∈Dpc (d0 ud1 )
If m |= d0 u d1 then, by lemma 4.6.1, there is a diagram dm such that m |= dm
and d0 u d1 vpc dm . Therefore there exists a diagram, d, such that dm ∼
= d and
d ∈ Dpc (d0 ud1 ). Therefore m |= d, by the validity of rule 1, so m |= D. Furthermore,
any d ∈ Dpc (d0 u d1 ) can be transformed into d0 u d1 , by lemma 4.6.2. By the rule
of construction,
D ` d0 u d1 .
Thus, by the validity of the previous rules, if m |= D then m |= d0 u d1 . Hence
d0 u d1 ≡ D,
Therefore rule 14 is valid. QED
195
4.6.5
Soundness theorem
Having proved the validity of all the reasoning rule we can now give a soundness theorem
for this constraint diagram system.
Theorem 4.6.12 Soundness. Let D1 and D2 be constraint diagrams. If D1 ` D2 then
D1 ² D2 .
Proof The proof is by induction on the number of rule applications. Base case: m = 1
and the proof is trivial. Assume that for any diagrams D1 , D2 and sequence of length m,
D1 ` D2 implies D1 ² D2 . Let D3 and D4 be diagrams such that D3 ` D4 and there
exists a sequence of diagrams hD1 , D2 , ..., Dm+1 i such that D3 = D1 , D4 = Dm+1 and
Dk ° Dk+1 where 1 ≤ k < m + 1. By assumption D3 ² Dm and by the validity of the
transformation rules Dm ² D4 . By transitivity it follows that D3 ² D4 . Hence for any
constraint diagrams D1 , D2 if D1 ` D2 then D1 ² D2 . QED
4.7
Completeness
In this section we show that the system of constraint diagrams introduced in this chapter is
complete. The strategy we adopt is an extension of that used in the proof of completeness
for the spider diagram system in chapter 2. Part of the completeness proof strategy used
in spider diagram systems begins with a disjunction of unitary α-diagrams and uses the
excluded middle for regions rule to add shading and spiders. For spider diagrams, there
are simple syntactic checks that establish when one α-diagram is a logical consequence of
another. If we consider a subset of all spider diagrams consisting of unitary α-diagrams
with the same zone sets, then all the rules necessary for completeness are erasure rules.
In this constraint diagram system it is also possible to transform any diagram into
a disjunction of α-diagrams. However it is not easy to determine whether one unitary
α-diagram is a logical consequence of another. There are examples of unitary α-diagrams
with the same zone sets, where one is a logical consequence of another but rules more
complex than simple erasure of components are required to establish syntactic entailment.
For constraint diagrams the process of establishing logical consequence is more complicated
due to the presence of arrows.
Example 4.7.1 The diagrams in figure 4.43 are semantically equivalent. There are perhaps no obvious syntactic conditions that allow us to deduce d1 ² d2 and d2 ² d1 . We
cannot just erase objects from d1 to give d2 .
196
f
A
f
A
f
d
d
1
2
Figure 4.43: Semantically equivalent α-diagrams.
In SD2, Molina uses the idea of a β-diagram in his completeness proof. A β-diagram
is an α-diagram in which all the zones are either shaded or touched by an existential
spider (or both). We will show that if we introduce ‘all possible’ syntactic elements to a
unitary β-diagram, d1 , using our reasoning rules, giving d2 , then any unitary β-diagram,
d3 , (with the same zones as d1 ) that is a logical consequence of d1 will ‘contain only
syntactic elements that are in d2 ’. Although the details are non-trivial, this allows us to
establish that d3 is obtainable from d1 by simply erasing components of d2 . This gives a
completeness result for unitary β-diagrams.
We use the completeness result for unitary β-diagrams to prove completeness of the
system. Consider two constraint diagrams that satisfy D1 ² D2 . All the rules that
transform a constraint diagram into a disjunction of β-diagrams are reversible, so we
transform D1 and D2 into a disjunction of β-diagrams, β D1 and β D2 respectively. We
then apply the excluded middle for regions rule repeatedly to β D1 until the number of
existential spiders inhabiting each zone, z, of each unitary component exceeds the number
of existential spiders inhabiting z in any unitary component of β D2 , giving a diagram D,
say. Next we add ‘all possible’ syntactic elements to D using our reasoning rules giving
diagram D0 , say. We can then show each unitary component of D0 , d say, semantically
entails a unitary component of β D2 , say di . From the completeness result for unitary
β-diagrams, d ` di and it follows that D1 ` D2 .
To provide us with syntactic conditions that establish whether or not one unitary βdiagram is the logical consequence of another we will define the associated maximal form
of a β-diagram. The maximal form will be obtained by introducing shading and arrows
to the β-diagram until no more can be introduced, with the exception of arrows from
universal spiders whose habitat is a shaded, untouched zone. The maximal form of a
unitary β-diagram will be syntactically equivalent to the original.
Example 4.7.2 In figure 4.44, diagram d3 is the maximal form of d1 , and can be obtained
197
f
f
A
f
d
f
d
1
A
f
A
f
f
d
3
2
Figure 4.44: Illustrating maximal forms.
from d1 using rules 9 (introduction of an arrow: contour to spider), 8 (introduction of an
arrow: spider to contour), 12 (excluded middle for regions), 16 (inconsistency) and 17 (tidempotency). Notice that we can erase components of d3 to obtain d2 . In this example,
d3 is also the maximal form of d2 but in general semantically equivalent diagrams do not
necessarily have the same maximal form (their zone sets may differ).
4.7.1
Shadeable Zones
When we have two β-diagrams, d1 and d2 , with the same zone sets such that d1 ² d2 we
wish to add syntactic elements to d1 until we only need to use erasure rules to obtain d2 .
We begin by adding shading to d1 and identify zones we call shadeable. These are zones we
can introduce shading to and obtain a semantically (and, as we shall prove, syntactically)
equivalent diagram. We will need to introduce shading wherever possible to ensure we can
erase objects from d1 to give d2 .
f
f
A
f
d
f
A
4
d
5
Figure 4.45: Identifying a shadeable zone.
Example 4.7.3 Zone ({A}, ∅) is shadeable in diagram d1 , figure 4.44. To introduce shading to ({A}, ∅), apply rule 12 (excluded middle for regions) to d1 giving d4 td5 in figure 4.45.
The diagram with the extra spider, d5 , contains incompatible arrows. So, d4 t d5 ≡` d4 ,
thus introducing shading to ({A}, ∅).
Definition 4.7.1 Let d (6=⊥) be a unitary α-diagram and let z ∈ Z(d) − Z ∗ (d). Zone z
is said to be shadeable in d if and only if
d ² hL(d), Z(d), Z ∗ (d) ∪ {z}, ES(d), ηd , A(d)i.
198
Define SZ(d) to be the set of shadeable zones in d. Define the maximally shaded form
of d to be
hL(d), Z(d), Z ∗ (d) ∪ SZ(d), ES(d), ηd , A(d)i.
The definition of shadeable is semantic. We now show that we can syntactically introduce shading to shadeable zones.
Theorem 4.7.1 Let d (6=⊥) be a unitary α-diagram and suppose z ∈ SZ(d). Then
d ≡` hL(d), Z(d), Z ∗ (d) ∪ {z}, ES(d), ηd , A(d)i = d1 .
Proof Erase the shading from z to give d1 ` d.
Conversely, apply rule 12 (excluded middle for regions) to d, yielding d1 t d2 where
d2 = hL(d), Z(d), Z ∗ (d), ES(d) ∪ {e2 }, ηd ∪ {(e2 , {z})}, A(d)i,
where e2 is some element not in ES(d)∪CL∪Z ∪R. We have d ≡` d1 td2 , so by soundness
d ≡ d1 t d2
(1).
Now, any interpretation that satisfies d also satisfies d1 (because z was shadeable) and
vice versa since d1 ` d. That is
d ≡ d1
(2)
No interpretation that satisfies d1 can satisfy d2 because z is shaded in d1 and contains
more spiders in d2 . From (1) and (2), d1 ≡ d1 t d2 , so d2 ² d1 and it must be that d2
is unsatisfiable. Since d2 is an α-diagram it follows that d2 contains incompatible arrows,
by theorem 4.3.1. So, by rule 16 (inconsistency), d2 ` d1 . We have
d ` d1 t d2
by rule 12 (excluded middle for regions)
` d1 t d1
by rules 16 (inconsistency) and 21 (t-simplification)
` d1
by rule 17 (t-idempotency)
Hence d ≡` d1 . QED
We see from the proof above, given any unitary α-diagram d and z ∈ Z(d) − Z ∗ (d),
we have z ∈ SZ(d) if and only if introducing an existential spider to d with habitat {z}
results in a diagram containing incompatible arrows. This provides a syntactic method
for identifying shadeable zones.
199
Lemma 4.7.1 Let d1 (6=⊥) be a unitary α-diagram and suppose z ∈ SZ(d1 ). Define
d2 = hL(d1 ), Z(d1 ), Z ∗ (d1 ) ∪ {z}, ES(d1 ), ηd1 , A(d1 )i. Then
SZ(d1 ) − {z} = SZ(d2 ).
Proof Let z1 ∈ SZ(d1 ) − {z}. Then introducing an existential spider into z1 in d1 results
in a diagram containing incompatible arrows. Since A(d1 ) = A(d2 ), the same must be
true in d2 , so z1 is shadeable in d2 . Hence SZ(d1 ) − {z} ⊆ SZ(d2 ). A similar argument
shows SZ(d2 ) ⊆ SZ(d1 ) − {z}. Hence SZ(d2 ) = SZ(d1 ) − {z}. QED
Corollary 4.7.1 Let d1 (6=⊥) be a unitary α-diagram and let d2 be the maximally shaded
form of d1 . Then d1 ≡` d2 .
4.7.2
Potential Arrows
Recall that, if we have unitary β-diagrams, d1 and d2 , with the same zone sets such that
d1 ² d2 then we wish to add syntactic elements to d1 until we can be sure that we only
need to use erasure rules to obtain d2 . So far, we have shown that we can syntactically
add shading to d1 if and only if adding shading preserves the semantic meaning of d1 . We
now wish to identify all the arrows we can introduce to d1 . We call such arrows potential
arrows and define potential arrows at the semantic and syntactic levels. At the semantic
level, an arrow, a, is a potential arrow for d1 if d1 + {a} is a logical consequence of d1 . At
the syntactic level a is a potential arrow for d1 if, by applying a sequence of transformation
rules to d1 , we can obtain d1 + {a}. We will prove that these two definitions identify the
same arrows as potential arrows.
A
A
B
f
B
f
f
d
d
1
2
Figure 4.46: Introducing semantic potential arrows.
Example 4.7.4 The arrow in d2 , figure 4.46, that is not in d1 is a semantic potential
arrow for d1 .
Definition 4.7.2 Let d (6=⊥) be a unitary α-diagram. Let
(l, s, t) ∈ (AL × (ES(d) ∪ Z(d)) × (L(d) ∪ ES(d) ∪ {∅})) − A(d).
The triple (l, s, t) is said to be a semantic potential arrow for d if and only if
200
1. d ² d + {(l, s, t)} and
2. s ∈ Z ∗ (d) ∪ SZ(d) ⇒ ET ({s}, d) 6= ∅.
Define SemP A(d) to be the set of semantic potential arrows for d.
The second condition prevents arrows whose source is a universal spider with a habitat
that is shaded, or shadeable, and untouched from being a semantic potential arrow. If we
allowed such arrows to be semantic potential arrows then a given diagram, d, could have
infinitely many semantic potential arrows, in which case d + SemP A(d) would not be a
diagram (we wish to introduce all semantic potential arrows to d).
Definition 4.7.3 Let d (6=⊥) be a unitary diagram. Let
(l, s, t) ∈ (AL × (ES(d) ∪ Z(d)) × (L(d) ∪ ES(d) ∪ {∅})) − A(d).
The triple (l, s, t) is said to be a syntactic potential arrow for d if and only if
1. d ` d + {(l, s, t)} and
2. s ∈ Z ∗ (d) ∪ SZ(d) ⇒ ET ({s}, d) 6= ∅.
Define SynP A(d) to be the set of syntactic potential arrows for d.
Since the system is sound, every syntactic potential arrow is a semantic potential
arrow. We will show that every semantic potential arrow is a syntactic potential arrow. If
we have a semantic potential arrow, say (l, s, t), for diagram d, the information provided
by (l, s, t) must already be in d. Thus, given a semantic potential arrow we are able to
deduce some properties of the diagram. The properties that we are able to deduce enable
us to show that we can syntactically introduce the semantic potential arrow. We shall
consider six cases, corresponding to different possibilities for the source and target of a
semantic potential arrow.
Semantic potential arrows with existential source
Three of these cases are where the source is an existential spider. Our attention will
initially be on the case where the source and the target are both existential spiders. Each
diagram in figure 4.47, is a ‘snapshot’ of part of a constraint diagrams. If (in each of the
three illustrations) the arrow in d2 with an existential spider as its source and target, is
a semantic potential arrow for d1 then d1 must have at least one other arrow, a. Possible
201
(1 )
l
l
t1
s
d
(2 )
l
s
t
d
1
t
l
d
2
3
l
s
t
d
l
s
d
1
l
t1
s
t
d
s
t
l
(3 )
t1
t1
1
s
t
d
2
l
t
l
3
t1
s
t1
t
l
d
2
s
l
d
t
3
Figure 4.47: A semantic potential arrow with existential source and target and properties
of the diagram.
candidates for a are the three arrows shown in d1 . We now prove these three illustrations
typify those seen in any such d1 . The strategy is to assume that none of these three kinds
of arrows are in d1 , construct a diagram, d3 , that is a copy of d1 , but with an additional
arrow, sourced at s, labelled l and with target ∅, show d3 is satisfiable and d3 ² d1 but
d3 6² d2 . Intuitively, d3 cannot semantically entail d2 . Diagram d2 expresses that s.l = t
whereas d3 expresses s.l = ∅. However s need not represent the same element across
diagrams. The proof that d3 6² d2 is not trivial because we must make sure that for at
least one model for d3 , there is no ‘reassigment’ of existential spiders to universal set
elements that yields a true semantics predicate for d2 .
Lemma 4.7.2 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) from existential spider s to existential spider t
then at least one of the following statements holds.
(1) There is an arrow (l, s, t1 ) in A(d1 ) where t1 is a contour label and ES(t1 , d1 ) = {t}.
(2) There is an arrow (l, s1 , t) in A(d1 ) where s1 is a universal spider and {s1 } = ηd1 (s).
(3) There is an arrow (l, s1 , t1 ) in A(d1 ) where s1 is a universal spider, {s1 } = ηd1 (s),
t1 is a contour label and ES(t1 , d1 ) = {t}.
202
Proof The proof is by contradiction. Suppose that (l, s, t) is a semantic potential arrow
for d1 . Define
d2 = d1 + {(l, s, t)}
and d3 = d1 + {(l, s, ∅)}. Assume that all three statements are false.
Claim: d3 ` d1 , the arrows of d3 are pairwise compatible and d3 6² d2 , giving a
contradiction.
If (l, s, ∅) is not in d1 , then we can erase (l, s, ∅) from d3 using rule 2 (erasure of an
arrow), giving d3 ` d1 . Alternatively, d1 = d3 so d3 ` d1 .
Next we show the arrows of d3 are pairwise compatible, by contradiction. Suppose
that d3 has incompatible arrows. Since the arrows of d1 are pairwise compatible it must
be that (l, s, ∅) is incompatible with some arrow, (l, s2 , t2 ). Arrow (l, s2 , t2 ) is in d1 , d2 and
d3 . We will show that (l, s, t) is incompatible with (l, s2 , t2 ) in d2 (i.e. d2 has incompatible
arrows). Since (l, s2 , t2 ) is incompatible with (l, s, ∅) there are four cases to consider.
(i) s2 = s and t2 ∈ ES(d1 ). It cannot be that t2 = t since (l, s, t) is not in d1 and so
not in d3 . Therefore t2 ∈ ES(d1 ) − {t}.
(ii) s2 = s and t2 ∈ L(d1 ) and ES(t2 , d1 ) 6= ∅. Since statement (1) is false, ES(t2 , d1 ) 6=
{t}.
(iii) s2 ∈ Z(d1 ) and {s2 } = ηd1 (s) and t2 ∈ ES(d1 ). Since statement (2) is false, t2 6= t.
(iv) s2 ∈ Z(d1 ) and {s2 } = ηd1 (s) and t2 ∈ L(d1 ) and ES(t2 , d1 ) 6= ∅. Since statement
(3) is false, ES(t2 , d1 ) 6= {t}.
Each of the four cases above implies (l, s, t) is incompatible with (l, s2 , t2 ), both of which
are in d2 . We reach a contradiction because d2 has pairwise compatible arrows and we
deduce that the arrows of d3 are pairwise compatible. From theorem 4.3.1, d3 is satisfiable.
Let m = (ES(d3 ), Ψ, φ) be the standard model for d3 . With this interpretation the
existential spiders of d1 , d2 and d3 are in bijective correspondence with the universal set.
We will show that m does not satisfy d2 , so d3 6² d2 . To do so, we show that there are
insufficient existential spiders in d3 with the same habitat as s that are sources of arrows
with label l and non-empty hit in d3 to ensure that m satisfies d2 . Let n denote the
number of existential spiders, si , with the same habitat as s which satisfy
∃ti ∈ ES(d3 ) • (si , ti ) ∈ φ(l) (a)
203
(s is not such a spider). If there were a universal spider with habitat ηd3 (s) that was the
source of an arrow, a, with label l then d2 or d3 would contain incompatible arrows, for
a would be incompatible with either (l, s, ∅) or (l, s, t). Therefore all spiders satisfying (a)
must be sources of arrows with label l and non-empty hits in d3 . Moreover, any spider
with the same habitat as s that does not satisfy (a) (all of the remaining spiders with
habitat ηd3 (s), of which there are |ES(ηd3 (s), d3 )| − n) can only be the source of an arrow
with label l provided that arrow has an empty hit. Thus with interpretation m there are
exactly n spiders, si , with the same habitat as s that satisfy
{si }.φ(l) 6= ∅
and the remaining |ES(ηd3 (s), d3 )| − n spiders, sj , with the same habitat as s that satisfy
{sj }.φ(l) = ∅.
In d2 there are n + 1 spiders inhabiting ηd3 (s) that are sources of arrows with nonempty hit. These are the n existential spiders in d3 that are sources of arrows labelled
l with non-empty hit and the same habitat as s along with s (since (l, s, t) is in d2 ). In
other words, for m to satisfy d2 we require n + 1 existential spiders with the same habitat
as s to give
Ψ(si ).φ(l) 6= ∅,
but there are only n such spiders. Therefore any extension of Ψ to existential spiders for
d2 that satisfies the spiders condition and the strangers condition will cause the existential
arrows condition for d2 to fail. Therefore m 6|= d2 and d3 6² d2 .
Thus, given that the three statements are false, the claim is true. Now d3 ` d1 implies
d3 ² d1 and by transitivity d3 ² d2 which is a contradiction. Hence at least one of the
three statements must be true. QED
We now illustrate how we can syntactically introduce such a semantic potential arrow.
The statements in the above lemma give us sufficient information about d1 to identify a
sequence of rule applications to introduce the semantic potential arrow.
Example 4.7.5 In figure 4.48, (l, s, t) is a semantic potential arrow for d1 and statement
1 in lemma 4.7.2 is true. To introduce this arrow, we first shade the (shadeable) zone
({A}, ∅), giving d2 . Next, we apply rule 9 (introduction of an arrow: contour to spider)
introducing (l, s, t), giving d3 . Finally, we erase the shading from d3 to give d1 + {(l, s, t)}.
204
l
f
t
s
d
l
A
f
l
s
t
A
f
d 1+ { ( l,s ,t) }
1
l
f
s
d
f
t
l
A
f
s
f
l
d
2
t
A
f
3
Figure 4.48: Introducing a semantic potential arrow with existential source and target.
Lemma 4.7.3 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) from existential spider s to existential spider t
then d1 ≡` d1 + {(l, s, t)}.
Proof Suppose (l, s, t) is a semantic potential arrow for d1 . Clearly d1 + {(l, s, t)} ` d1 ,
for we can erase (l, s, t) from d1 + {(l, s, t)} using rule 2 (erasure of an arrow).
For the reverse, we use the fact that one the three statements in lemma 4.7.2 is true.
If statement (2) is true, apply rule 6 (introduction of an arrow: universal deduction),
introducing (l, s, t) to d1 giving d1 + {(l, s, t)}.
If either statements (1) or (3) are true then all the zones that are contained within t1
are shaded or shadeable in d1 , since if they are not shaded, we can show they are shadeable
in d1 + {(l, s, t)}, and therefore in d1 , as follows. Introducing an existential spider to such
a zone, z, in d1 + {(l, s, t)} would cause (l, s, t) to be incompatible with (l, s, t1 ) (statement
1) or (l, s1 , t2 ) (statement 3). Shade z in d1 + {(l, s, t)} and erase (l, s, t) from the resulting
diagram, giving d1 with additional shading in z. Let d2 be the maximally shaded form of
d1 . By corollary 4.7.1, d1 ` d2 .
If statement (1) is true, apply rule 9 (introduction of an arrow: contour to spider),
introducing (l, s, t) to d2 , yielding d3 . Erase any shading from d3 that is not in d1 giving
d1 + {(l, s, t)}.
If statement (3) is true apply rule 9 (introduction of an arrow: contour to spider),
introducing (l, s1 , t) (provided this arrow is not already in d1 ) to d2 , yielding d4 . Next
apply rule 6 (introduction of an arrow: universal deduction), introducing (l, s, t) to d4 ,
205
yielding d5 . Erase from d5 any shading that is not in d1 , giving d6 . If arrow (l, s1 , t) is
in d1 , d6 = d1 + {(l, s, t)}. Otherwise apply rule 2 (erasure of an arrow), erasing (l, s1 , t)
from d6 , giving d1 + {(l, s, t)}.
Hence d1 ≡` d1 + {(l, s, t)}. QED
The next case we consider is where a semantic potential arrow has an existential spider
as its source and the target is a contour label that contains at least one existential spider.
As an example, consider the four cases in figure 4.49 (again, each diagram is a ‘snapshot’
of part of a constraint diagram). In each case, if the arrow in d2 with the existential spider
s as its source and the contour with label t as its target is a semantic potential arrow for
d1 then d1 must have at least one other arrow, a. Possible candidates for a are the four
arrows shown in d1 , one in each of the four cases. These four possibilities typify those seen
in any such d1 . Intuitively, diagram d3 shown next to d2 does not semantically entail d2 .
(1 )
t
l
s
l
s
t1
d
(2 )
t
l
d
t
d
l
(3 )
t1
d
s
d
t1
d
l
1
t
t1
s
d
l
d
3
l
t
s
t1
d
2
l
t1
s
2
l
t
t
t
s
3
l
t1
l
1
(4 )
l
d
1
l
d
t
s
t1
t1
2
l
t
s
s
t1
1
s
t
l
t
l
t1
2
3
s
d
t1
3
Figure 4.49: A semantic potential arrow with existential source and non-empty hit and
properties of the diagram.
206
Lemma 4.7.4 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) from existential spider s to contour label t where
ES(t, d1 ) 6= ∅ then at least one of the following statements holds.
(1) There is an arrow (l, s, t1 ) in A(d1 ) where t1 is an existential spider and ES(t, d1 ) =
{t1 }.
(2) There is an arrow (l, s, t1 ) in A(d1 ) where t1 is a contour label and ES(t1 , d1 ) =
ES(t, d1 ).
(3) There is an arrow (l, s1 , t1 ) in A(d1 ) where s1 is a universal spider, {s1 } = ηd1 (s),
t1 is an existential spider and ES(t, d1 ) = {t1 }.
(4) There is an arrow (l, s1 , t1 ) in A(d1 ) where s1 is a universal spider, {s1 } = ηd1 (s),
t1 is a contour label and ES(t1 , d1 ) = ES(t, d1 ).
Proof The proof is similar to the proof of lemma 4.7.2. QED
s
t1
l
s
l
l
d
d
s
t1
l
l
t
d 1+ { ( l,s ,t) }
1
t1
l
l
t
t
l
s
2
l
l
t1
d
t
3
Figure 4.50: Introducing a semantic potential arrow with existential source and a contour
label target.
Example 4.7.6 In figure 4.50, (l, s, t) is a semantic potential arrow for d1 and statement (1) in lemma 4.7.4 is true. To introduce this arrow, we first shade the zone ({t}, ∅),
giving d2 . Next, we apply rule 8 (introduction of an arrow: spider to contour), giving d3 .
Finally, we erase the shading from d3 to give d1 + {(l, s, t)}.
Lemma 4.7.5 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) from existential spider s to contour label t where
ES(t, d1 ) 6= ∅ then d1 ≡` d1 + {(l, s, t)}.
207
Proof The strategy is similar to that used to prove lemma 4.7.3. QED
The only possibility we have not yet considered for an existential spider at the source
of a semantic potential arrow is where the arrow has an empty hit. In figure 4.51, if the
arrow in d2 with the existential spider s as its source and t as its target is a semantic
potential arrow for d1 , then d1 must have at least one other arrow a. Possible candidates
for a are the two arrows shown in d1 and these two cases typify those seen in any such d1 .
Again the strategy is to assume that neither of these arrows are in d1 , define a satisfiable
diagram, d3 , with the property that d3 ² d1 and d3 6² d2 . The diagram d3 is d1 but with
additional arrows. One arrow is added for each existential spider, e, with the same habitat
as s that is not the source of an arrow labelled l. The added arrows have label l, source e
and target e. This includes (l, s, s), illustrated in figure 4.51.
(1 )
l
s
d
1
l
s
d
t
1
t
l
s
t1
l
s
d
2
l
t1
l
t1
s
t
d
(2 )
l
t1
3
l
t1
l
d
t
2
t
s
l
t1
d
t
3
Figure 4.51: A semantic potential arrow with existential source and an empty hit and
properties of the diagram.
Lemma 4.7.6 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) such that s ∈ ES(d1 ) and t ∈ L(d1 ) ∪ {∅} and
ES(t, d1 ) = ∅ then at least one of the following two statements holds.
(1) There is an arrow (l, s, t1 ) in A(d1 ) where t1 is a contour label or the empty set and
ES(t1 , d1 ) = ∅.
(2) There is an arrow (l, s1 , t1 ) in A(d1 ) where s1 is a universal spider and {s1 } = ηd1 (s)
and t1 is a contour label or the empty set and ES(t1 , d1 ) = ∅.
208
Proof Construct a set, X, of arrows labelled l with source and target an existential spider
with the same habitat as s. More precisely, we define X to be
X = {(l, e, e) : e ∈ ES(d1 ) ∧ ηd1 (e) = ηd1 (s)∧
¬∃t2 ∈ ES(d1 ) ∪ L(d1 ) ∪ {∅} • (l, e, t2 ) ∈ A(d1 )}.
Then the diagram d3 = d1 + X has the property that each existential spider with the same
habitat as s is the source of an arrow with label l. The proof strategy is similar to that
used in the proof of lemma 4.7.2, but taking
d3 = d1 + (X ∪ {(l, s, s)}).
In this case, d3 6² d2 because there are insufficient arrows with label l, an existential spider
cohabiting with s as their source and with empty hit to ensure that the existential arrows
condition holds for d2 , using the standard model for d3 . QED
l
t1
s
l
t
f
d 1+ { ( l,s ,t) }
t1
s
f
t
1
l
d
t1
s
f
t
d
l
f
l
f
s
f
t1
l
d
t
2
f
f
3
Figure 4.52: Introducing a semantic potential arrow with existential source and an empty
hit.
Example 4.7.7 In figure 4.52, (l, s, t) is a semantic potential arrow for d1 and statement (1) in lemma 4.7.6 is true. To introduce this arrow, we first shade the zones ({t}, {t1 })
and ({t1 }, {t}) , giving d2 . Next, we apply rule 10 (introduction of an arrow: contour to
contour), giving d3 . Finally, we erase the shading from d3 to give d1 + {(l, s, t)}.
Lemma 4.7.7 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) such that s ∈ ES(d1 ) and t ∈ L(d1 ) ∪ {∅} and
ES(t, d1 ) = ∅ then d1 ≡` d1 + {(l, s, t)}.
209
Proof The strategy is similar to that used to prove lemma 4.7.3. QED
We have shown that any semantic potential arrow with an existential spider as its
source is also a syntactic potential arrow. For unitary α-diagram d1 , define
EP A(d1 ) = {(l, e, t) ∈ SemP A(d1 ) : e ∈ ES(d1 )}
(EP A for Existential Potential Arrow). We will now show that we can introduce all of the
semantic potential arrows with existential source to a diagram and the resulting diagram
has no further semantic potential arrows with existential source.
Theorem 4.7.2 Let d (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
Then EP A(d) is finite and d ≡` d + EP A(d). Furthermore EP A(d + EP A(d)) = ∅.
Proof Firstly we show EP A(d) is finite. Let (l, e, t) ∈ EP A(d). Then by lemmas 4.7.2,
4.7.4 and 4.7.6, l ∈ AL(d). Therefore
EP A(d) ⊆ AL(d) × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅})
which is finite. Therefore EP A(d) is finite and d + EP A(d) is a diagram.
Let a1 ∈ EP A(d). To show that d ≡` d + EP A(d) we show that EP A(d) − {a1 } =
EP A(d + {a1 }). Let a2 ∈ EP A(d) − {a1 }. Any of the statements in lemmas 4.7.2, 4.7.4
and 4.7.6 which are true for d are true for d+{a1 }. Furthermore any shadeable zone in d is
shadeable in d+{a1 }, for if adding an existential spider to a zone in d creates incompatible
arrows then the same is true in d + {a1 )}. The same sequence of transformation rules used
in lemma 4.7.3, 4.7.5 or 4.7.7 to introduce a2 to d can be applied to d + {a1 }, introducing
a2 to d + {a1 }. That is, d + {a1 } ` (d + {a1 }) + {a2 }, so d + {a1 } ² (d + {a1 }) + {a2 }.
Therefore a2 is in EP A(d + {a1 }) and EP A(d) − {a1 } ⊆ EP A(d + {a1 }).
Let a2 ∈ EP A(d + {a1 }). By lemmas 4.7.3, 4.7.5 and 4.7.7, d ` d + {a1 } ` (d + {a1 }) +
{a2 }. Erase a1 from (d + {a1 }) + {a2 } to give d + {a2 }. Thus d ` d + {a2 }. Therefore
d ² d + {a2 } and a2 is in EP A(d). Hence EP A(d + {a1 }) ⊆ EP A(d) − {a1 }, so EP A(d +
{a1 }) = EP A(d) − {a1 }. It follows that d ≡` d + EP A(d) and EP A(d + EP A(d)) = ∅.
QED
Semantic potential arrows with universal source
We now give a set of similar results for semantic potential arrows whose source is a universal
spider. Again we will show certain arrows must be present in a diagram in order for an
arrow with a universal spider, s, inhabiting zone z as its source to be a semantic potential
210
arrow. There are three cases we consider, in each case z is not shaded or shadeable.
The first case is where the target is an existential spider. If the arrow in d2 , figure 4.53,
(each diagram in figure 4.53 is a ‘snapshot’ of part of a constraint diagram) is a semantic
potential arrow for d1 then d1 must contain an arrow like the one shown. To prove this is
typical, the strategy is to assume that this arrow is not in d1 , show there is a diagram d3
that is satisfiable and that d3 ² d1 but d3 6² d2 . The diagram d3 is a copy of d1 with an
additional existential spider, e, inhabiting z and an additional arrow with source e, label
l and whose target is the empty set.
l
s
t
z
d
1
t1
l
s
t
z
d
t1
z
e
2
l
t
d
t1
3
Figure 4.53: A semantic potential arrow with universal source and existential target and
a property of the diagram.
Lemma 4.7.8 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d1 ) such that s is a universal spider and s ∈
Z(d1 ) − (Z ∗ (d1 ) ∪ SZ(d1 )) and t is an existential spider then there is an arrow (l, s, t1 ) in
A(d1 ) such that t1 is a contour label and ES(t1 , d1 ) = {t}.
Proof The proof is by contradiction. Suppose that (l, s, t) is a semantic potential arrow
for d1 . Define
d2 = d1 + {(l, s, t)}.
Let e be any element not in ES(d1 ) ∪ CL ∪ Z ∪ R. Define also the diagram
d3 = hL(d1 ), Z(d1 ), Z ∗ (d1 ), ES(d1 ) ∪ {e}, ηd1 ∪ {(e, {s})}, A(d1 ) ∪ {(l, e, ∅)}i.
Assume that there is no arrow (l, s, t1 ) in A(d1 ) such that t1 is a contour label and
ES(t1 , d1 ) = {t}.
Claim: d3 ` d1 , the arrows of d3 are pairwise compatible and d3 6² d2 giving a
contradiction.
Erase (l, e, ∅) from d3 using rule 2 (erasure of an arrow). Then, since s is not shaded,
erase e using rule 24 (erasure of an existential spider) giving d3 ` d1 .
211
Next we show the arrows of d3 are pairwise compatible, by contradiction. Assume
that d3 contains incompatible arrows. Since the arrows of d1 are pairwise compatible, s is
not shadeable (so adding e does not cause arrows to become incompatible) and the only
arrow in d3 that is not in d1 is (l, e, ∅), it must be that (l, e, ∅) is incompatible with some
arrow, (l, s, t2 ), where hit((l, s, t2 ), d3 ) 6= ∅. We will show that (l, s, t) is incompatible with
(l, s, t2 ) in d2 . Since (l, e, ∅) is incompatible with (l, s, t2 ) there are two cases to consider.
1. t2 ∈ ES(d1 ). It cannot be that t2 = t since (l, s, t) is not in d1 . So t2 ∈ ES(d1 ) − {t}.
2. t2 ∈ L(d1 ). By assumption there does not exist (l, s, t1 ) ∈ A(d1 ) such that t1 ∈ L(d1 )
and ES(t1 , d1 ) = {t}. So ES(t2 , d1 ) 6= {t}.
Each of these two cases implies (l, s, t) is incompatible with (l, s, t2 ), both of which are in
d2 . We reach a contradiction because d2 has pairwise compatible arrows and we deduce
the arrows of d3 are pairwise compatible. From theorem 4.3.1, d3 is satisfiable.
Let m = (ES(d3 ), Ψ, φ) be the standard model for d3 . Since m |= d3 , {e}.φ(l) = ∅.
Now e ∈ Ψ({s}) and it is not the case that
{e}.φ(l) = Ψ(t)
for any extension of Ψ to existential spiders for d2 . So the universal arrows condition fails
for d2 . Therefore m 6|= d2 and d3 6² d2 , which is a contradiction. Hence there is an arrow
(l, s, t1 ) in A(d) such that t1 is a contour label and ES(t1 , d1 ) = {t}. QED
s
l
t
l
s
t1
d
t
t1
d 1+ { ( l,s ,t) }
1
t
d
l
l
l
l
s
l
t1
s
l
l
l
2
d
t
t1
3
Figure 4.54: Introducing a semantic potential arrow with universal source and existential
target.
212
Example 4.7.8 In figure 4.54, (l, s, t) is a semantic potential arrow for d1 . To introduce
this arrow, we first shade the zones ({t1 }, ∅), giving d2 . Next, we apply rule 9 (introduction
of an arrow: contour to spider), giving d3 . Finally, we erase the shading from d3 to give
d1 + {(l, s, t)}.
Lemma 4.7.9 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow, (l, s, t) ∈ SemP A(d1 ) such that s is a universal spider and s ∈
Z(d1 ) − (Z ∗ (d1 ) ∪ SZ(d1 )) and t is an existential spider then d1 ≡` d1 + {(l, s, t)}.
Proof Suppose (l, s, t) is a semantic potential arrow for d1 . Clearly d1 + {(l, s, t)} ` d1 ,
for we can erase (l, s, t) from d1 + {(l, s, t)} using rule 2 (erasure of an arrow).
For the reverse we use the fact, by lemma 4.7.8, that there is an arrow (l, s, t1 ) in A(d1 )
such that t1 ∈ L(d1 ) and ES(t1 ) = {t}. Therefore all zones contained within t1 are shaded
or shadeable in d1 + {(l, s, t)} and are, therefore, shaded or shadeable in d1 . In d1 shade
all shadeable zones that are contained within t1 , yielding d2 . Apply rule 9 (introduction
of an arrow: contour to spider), introducing (l, s, t) to d2 yielding d3 . Erase any shading
from d3 that is not in d1 giving d1 + {(l, s, t)}. QED
The next case we consider is where the source of the semantic potential arrow is a
universal spider, s, inhabiting a zone, z, that is not shaded or shadeable and the target
is a contour label that contains at least one existential spider. If, for each illustration
in figure 4.55 (where each diagram is a ‘snapshot’ of part of a constraint diagram), the
arrow in d2 is a semantic potential arrow for d1 then d1 must contain an arrow like the
one shown. To prove this is typical, again the strategy is to assume that neither of these
arrows are in d1 , show that there is a diagram d3 that is satisfiable and that d3 ² d1 but
d3 6² d2 . The diagram d3 is a copy of d1 with an additional existential spider, e, inhabiting
z and an additional arrow with source e, label l and whose target is the empty set.
Lemma 4.7.10 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible. Let (l, s, t) ∈ SemP A(d1 ) such that s ∈ Z(d1 ) − (Z ∗ (d1 ) ∪ SZ(d1 )) and t ∈ L(d1 ) and
ES(t, d1 ) 6= ∅. Then at least one of the following statements holds.
1. There exists (l, s, t1 ) ∈ A(d1 ) where t1 ∈ ES(d1 ) and ES(t, d1 ) = {t1 }.
2. There exists (l, s, t1 ) ∈ A(d1 ) where t1 ∈ L(d1 ) and ES(t1 , d1 ) = ES(t, d1 ).
Proof The proof is similar to that of lemma 4.7.8. QED
213
(1 )
l
s
z
d
(2 )
t1
l
s
z
t
l
d
s
z
d
t
t1
l
z
t1
l
d
1
e
d
2
l
t1
t
z
t1
1
l
s
t
3
t1
z
e
t
2
l
d
t
3
Figure 4.55: A semantic potential arrow with universal source and non-empty hit and
properties of the diagram.
l
s
l
d
t1
l
d
s
l
l
t1
t
l
d 1+ { ( l,s ,t) }
1
l
s
t
t1
t
s
l
l
l
2
d
t1
t
3
Figure 4.56: Introducing a semantic potential arrow with universal source and a non-empty
hit.
Example 4.7.9 In figure 4.56, (l, s, t) is a semantic potential arrow for d1 . To introduce
this arrow, we first shade the zone ({t}, ∅), giving d2 . Next, we apply rule 8 (introduction
of an arrow: spider to contour), giving d3 . Finally, we erase the shading from d3 to give
d1 + {(l, s, t)}.
Lemma 4.7.11 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible. If there is an arrow (l, s, t) ∈ SemP A(d1 ) such that s is a universal spider, s ∈
Z(d1 )−(Z ∗ (d1 )∪SZ(d1 )), t is a contour label and ES(t, d1 ) 6= ∅ then d1 ≡` d1 +{(l, s, t)}.
214
Proof The strategy is similar to that used to prove lemma 4.7.9. QED
The next case we consider is where the source of the semantic potential arrow is a
universal spider, s, inhabiting a zone, z, that is not shaded or shadeable and the hit is
empty. If such an arrow is a semantic potential arrow for diagram d1 , there must be
an arrow in d1 as shown in figure 4.57 (where each diagram is a ‘snapshot’ of part of a
constraint diagram). We assume that arrow (l, s, t1 ) is not in d1 and show that there is
a diagram d3 that satisfies d3 ² d1 and d3 6² d2 . The diagram d3 is a copy of d1 with an
additional existential spider, e, inhabiting z, and an additional arrow with source e, label
l and target e.
z
s
l
t1
d
t
1
z
s
l
t1
l
d
t
e
z
t1
l
2
d
t
3
Figure 4.57: A semantic potential arrow and a property of the diagram.
Lemma 4.7.12 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible. Let (l, s, t) ∈ SemP A(d1 ) such that s ∈ Z(d1 ) − (Z ∗ (d1 ) ∪ SZ(d1 )) and t ∈ L(d1 ) ∪ {∅}
and ES(t, d1 ) = ∅. Then there exists (l, s, t1 ) ∈ A(d1 ) such that t1 ∈ L(d1 ) ∪ {∅} and
ES(t1 , d1 ) = ∅.
Proof The proof is by contradiction. Suppose that (l, s, t) is a semantic potential arrow
for d1 . Define the diagrams
d2 = d1 + {(l, s, t)}
and
d3 = hL(d1 ), Z(d1 ), Z ∗ (d1 ), ES(d1 ) ∪ {e}, ηd1 ∪ {(e, {s})}, A(d1 ) ∪ {(l, e, e)}i
where e is any element not in ES(d1 ) ∪ CL ∪ Z ∪ R. Assume that there is no arrow (l, s, t1 )
in A(d1 ) such that t1 is a contour label and ES(t1 , d1 ) = ∅.
Claim: d3 ` d1 , the arrows of d3 are pairwise compatible and d3 6² d2 , giving a
contradiction.
Erase (l, e, e) from d3 using rule 2 (erasure of an arrow). Then, since s is not shaded,
erase e using rule 24 (erasure of an existential spider) giving d3 ` d1 .
215
Next we show the arrows of d3 are pairwise compatible.
Since the arrows of d1
are pairwise compatible, s is not shadeable and the only arrow in d3 that is not in
d1 is (l, e, e), it must be that (l, e, e) is incompatible with some arrow, (l, s, t2 ), where
hit((l, s, t2 ), d3 ) 6= {e}. We will show that (l, s, t) is incompatible with (l, s, t2 ) in d2 . Since
(l, e, e) is incompatible with (l, s, t2 ) there are two cases to consider.
1. t2 ∈ ES(d1 ). In this case hit(l, s, t2 ) 6= ∅.
2. t2 ∈ L(d1 )∪{∅}. Since there does not exist (l, s, t1 ) ∈ A(d1 ) such that t1 ∈ L(d1 )∪{∅}
and ES(t1 , d1 ) = ∅, it follows that hit((l, s, t2 ), d3 ) 6= ∅.
Each of these two cases implies (l, s, t), which has empty hit in d2 , is incompatible with
(l, s, t2 ), both of which are in d2 . We reach a contradiction because d2 has pairwise
compatible arrows and we deduce the arrows of d3 are pairwise compatible. From theorem
4.3.1, d3 is satisfiable.
Let m = (ES(d3 ), Ψ, φ) be the standard model for d3 . By the construction of m,
{e}.φ(l) 6= ∅.
Assume further that t is not in c(s) (the contour labels which contain s). Then the ‘new’
spider, e, in d3 is not in ES(t, d3 ), so
ES(t, d2 ) = ES(t, d3 ) = ∅,
therefore Ψ(t) = ∅. Now e ∈ Ψ({s}) and it is not the case that
{e}.φ(l) = Ψ(t) = ∅.
Thus the universal arrows condition fails for d2 . Hence d3 6² d2 and we deduce that the
assumption that t is not in c(s) is false.
Suppose now that t is in c(s). Erase from d3 arrow (l, e, e) yielding d03 . Clearly d03 has
pairwise compatible arrows and d03 ² d1 .
Claim: d03 6² d2 .
Let m0 = (ES(d03 ), Ψ0 , φ0 ) be the standard model for d03 . With interpretation m0 ,
Ψ0 (t) = ES(t, d03 ) = ES(t, d2 ) ∪ {e} = {e}, so Ψ0 (t) = {e}. Now if s is the source
of an arrow with label l in d03 , that arrow must have hit ES(t, d1 ) = {e}, so as not
to be incompatible with (l, e, e) in d3 . Such an arrow cannot have target e, since e is
not in d1 . Therefore such an arrow must have a contour label, say t2 , as its target and
216
ES(t2 , d03 ) = {e}, in which case ES(t2 , d1 ) = ∅. However, we assumed that no such arrow
was in d1 . Hence s cannot be the source of an arrow with label l in d03 . Thus, by the
construction of m0 , {e}.φ0 (l) = ∅. Therefore
{e}.φ0 (l) 6= Ψ0 (t) = {e},
so the universal arrows condition fails for d2 . Thus m 6|= d2 and d3 6² d2 .
Now d3 ` d1 implies d3 ² d1 and, by transitivity, d3 ² d2 , which is a contradiction.
Hence there exists (l, s, t1 ) ∈ A(d) such that t1 ∈ L(d1 ) and ES(t1 , d1 ) = {t}. QED
l
s
t1
l
d
t
l
t1
l
t
d 1+ { ( l,s ,t) }
t1
d
l
1
l
s
s
l
t
s
l
l
l
2
d
t1
t
3
Figure 4.58: Introducing a semantic potential arrow with universal source and an empty
hit.
Example 4.7.10 In figure 4.58, (l, s, t) is a semantic potential arrow for d1 . To introduce
this arrow, we first shade the zone ({t}, {t1 }), giving d2 . Next, we apply rule 10 (introduction of an arrow: contour to contour), giving d3 . Finally, we erase the shading from
d3 to give d1 + {(l, s, t)}.
Lemma 4.7.13 Let d (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d) such that s is a universal spider, s ∈ Z(d) −
(Z ∗ (d) ∪ SZ(d)), t is a contour label or the empty set and ES(t, d) = ∅ then d ≡` d +
{(l, s, t)}.
Proof The strategy is similar to that used to prove of lemma 4.7.9. QED
The only semantic potential arrows we have not yet considered are those with a universal source in a shaded or shadeable zone. We now show how we can syntactically introduce
these arrows to a diagram.
217
Lemma 4.7.14 Let d (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
If there is an arrow (l, s, t) ∈ SemP A(d) such that s is a universal spider and s ∈ Z ∗ (d) ∪
SZ(d) then d ≡` d + {(l, s, t)}.
Proof Suppose that (l, s, t) is a semantic potential arrow for d. Clearly d + {(l, s, t)} ` d,
for we can erase (l, s, t) from d + {(l, s, t)} using rule 2 (erasure of an arrow).
Suppose that s is shaded in d. Then s is also shaded in d + {(l, s, t)}. Therefore all the
arrows of the form (l, ei , t) where ei is an existential spider cohabiting with s are semantic
potential arrows for d + {(l, s, t)}. Thus all such arrows are semantic potential arrows for
d. By theorem 4.7.2, all these arrows can be introduced to d. Introduce them and call
the resulting diagram d0 . Apply rule 5 (introduction of an arrow: universal equivalence),
introducing (l, s, t) to d0 . Erase from d0 + {(l, s, t)} any arrows that are not in d + {(l, s, t)},
thus showing d ` d + {(l, s, t)}.
Alternatively, s is shadeable in d. In which case s is also shadeable in d + {(l, s, t)}.
Introduce shading to s in both diagrams and then follow a similar argument to before,
showing d ` d + {(l, s, t)}. Hence d ≡` d + {(l, s, t)}. QED
It follows that, for unitary α-diagrams, the notions of semantic potential arrows and
syntactic potential arrows are equivalent: SemP A(d) = SynP A(d) for unitary α-diagram
d. Define, for unitary α-diagram d,
SemP A(d) = P A(d)
and
U P A(d) = {(l, s, t) ∈ P A(d) : s ∈ Z(d)}
(P A for Potential Arrows and U for Universal).
Theorem 4.7.3 Let d (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible.
Then U P A(d) is finite and d ≡` d + U P A(d). Furthermore, U P A(d + U P A(d)) = ∅ and
EP A(d) = EP A(d + U P A(d)).
Proof Firstly we show U P A(d) is finite. Let (l, u, t) ∈ U P A(d) and suppose u ∈ Z(d) −
(Z ∗ (d) ∪ SZ(d)). By lemmas 4.7.8, 4.7.10 and 4.7.12, l ∈ AL(d). Alternatively, u ∈
Z ∗ (d) ∪ SZ(d). In this case (by the definition of a semantic potential arrow), there is at
least one existential spider, e, with habitat {u}. Arrow (l, e, t) is either already in d or is
in EP A(d). In any case, l ∈ AL(d). Therefore
U P A(d) ⊆ AL(d) × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅})
218
which is finite. Thus U P A(d) is finite and d + U P A(d) is a diagram.
Let (l, u, t) ∈ U P A(d). To show that d ≡` d + U P A(d) we show that U P A(d) −
{(l, u, t)} = U P A(d + {(l, u, t)}). Let (l1 , u1 , t1 ) ∈ U P A(d) − {(l, u, t)}. Suppose that
u1 ∈ Z(d) − (Z ∗ (d) ∪ SZ(d)). Then any of the statements in lemmas 4.7.8, 4.7.10 and
4.7.12 which are true for d must also be true for d + {(l, u, t)}. Furthermore any shadeable
zone in d must also be shadeable in d + {(l1 , u1 , t1 )}. The same sequence of transformation
rules used in lemmas 4.7.9, 4.7.11 and 4.7.13 to introduce (l1 , u1 , t1 ) to d can be applied to
d + {(l, u, t)}, introducing (l1 , u1 , t1 ) to d + {(l, u, t)}. Alternatively, u1 ∈ Z ∗ (d) ∪ SZ(d).
Now, since (l1 , u1 , t1 ) is in U P A(d), all existential spiders, e, inhabiting {u1 } give rise to
an arrow in EP A(d) of the form (l1 , e, t1 ) or are already the source of such an arrow in
d. Clearly all these arrows that are in d are also in d + {(l, u, t)}. If (l1 , e, t1 ) gives rise to
an arrow in EP A(d), any of the statements in lemmas 4.7.2, 4.7.4 and 4.7.6 that are true
for d are also true for d + {(l, u, t)}. So (l1 , e, t1 ) can be introduced to d + {(l, u, t)}. Thus
(l1 , e, t1 ) is in EP A(d + {(l, u, t)}). Introduce all arrows of the form (l1 , e, t1 ), where e is in
d+{(l, u, t)} and has habitat {u1 } to d+{(l, u, t)} that are not already in d+{(l, u, t)} and,
if u1 is not already shaded, add shading to u1 . Apply rule 5 (introduction of an arrow:
universal equivalence) to d + {(l, u, t)}, introducing (l1 , u1 , t1 ). Therefore (l1 , u1 , t1 ) ∈
U P A(d + {(l, u, t)}) and U P A(d) − {(l, u, t)} ⊆ U P A(d + {(l, u, t)}).
Let (l1 , u1 , t1 ) ∈ U P A(d+{(l, u, t)}). By lemmas 4.7.9, 4.7.11, 4.7.13 and 4.7.14, d ` d+
{(l, u, t)} ` (d + {(l, u, t)}) + {(l1 , u1 , t1 )}. Erase (l, u, t) from (d + {(l, u, t)}) + {(l1 , u1 , t1 )}
to give d + {(l1 , u1 , t1 )}. Thus d ` d + {(l1 , u1 , t1 )}. Therefore d ² d + {(l1 , u1 , t1 )} and
(l1 , u1 , t1 ) is in U P A(d) − {(l, u, t)}. Hence U P A(d + {(l, e, t)}) ⊆ U P A(d) − {(l, u, t)},
so U P A(d + {(l, e, t)}) = U P A(d) − {(l, u, t)}. It follows that d ≡` d + U P A(d) and
U P A(d + U P A(d)) = ∅.
Finally we show that EP A(d) = EP A(d + U P A(d)). Let (l, e, t) ∈ EP A(d). Then
any of the statements in lemmas 4.7.8, 4.7.10 and 4.7.12 that hold for d also hold for
d+U P A(d) so we can introduce (l, e, t) to d+U P A(d). Thus (l, e, t) ∈ EP A(d+U P A(d)).
Let (l, e, t) ∈ EP A(d+U P A(d)). Then d+U P A(d) ` (d+U P A(d))+{(l, e, t)}, by theorem
4.7.2. Erase all arrows in U P A(d) from (d + U P A(d)) + {(l, e, t)} giving d + {(l, e, t)}. By
transitivity, d ` d + {(l, e, t)}, so (l, e, t) ∈ EP A(d). Hence EP A(d) = EP A(d + U P A(d)).
QED
Corollary 4.7.2 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible. Then d1 ≡` d1 + P A(d1 ) and P A(d1 + P A(d1 )) = ∅.
219
4.7.3
Maximal forms
We now define the maximal form of any α-diagram. For a unitary α-diagram, this is
the diagram obtained, firstly by introducing shading to all the shadeable zones, and then
introducing all the potential arrows.
Definition 4.7.4 Let d be a unitary α-diagram. The maximal form of d, denoted
max(d), is defined as follows.
1. If d =⊥ or d contains incompatible arrows then max(d) =⊥.
2. If d (6=⊥) does not contain incompatible arrows and SZ(d) = ∅ then max(d) =
d1 + P A(d).
3. Otherwise max(d) is the diagram that is the maximal form of the maximally shaded
form of d.
Let D = D1 ¤D2 be an α-diagram where ¤ ∈ {t, u}. Then max(D) = max(D1 )¤max(D2 ).
For any α-diagram, D, if D = max(D) we say D is in maximal form.
Lemma 4.7.15 Let d be a unitary α-diagram Then d is syntactically equivalent to max(d):
d ≡` max(d).
Theorem 4.7.4 Let D be an α-diagram. Then D ≡` max(D).
Proof The proof is similar to that of theorem 2.6.4. QED
4.7.4
Reduced forms
In the spider diagram system, we proved a completeness result for unitary α-diagrams with
the same zone sets, theorem 2.6.1. For our constraint diagram system we will prove such
a result for unitary β-diagrams with the same zone sets. We will consider two examples,
one where d1 ² d2 and the second where d1 6² d2 . In these examples we identify syntactic
relationships between max(d1 ) and d2 that allow us to identify whether or not d1 ² d2 .
Example 4.7.11 The diagrams d1 and d2 in figure 4.59 satisfy d1 ² d2 and d1 ` d2 . The
diagrams max(d1 ) and d2 satisfy the following.
(a) Every shaded zone in d2 is shaded in max(d1 ) and contains the same number of
existential spiders in both diagrams.
220
f
A
f
d
A
f
C
A
f
g
C
f
B
g
g
C
d
1
g
g
g
B
g
C
m a x (d 1)
g
d
B
2
A
f
g
g
B
3
Figure 4.59: Semantic entailment: unitary β-diagrams.
(b) Every zone in d2 contains at most the same number of existential spiders as in
max(d1 ) and every arrow in d2 occurs in max(d1 ).
The diagram max(d1 ) can be transformed into d2 . Firstly, erase the shading and arrows
from max(d1 ) that are not in d2 , giving d3 . Next erase the extra existential spider from
d3 , giving d2 .
In the previous example there were no universal spiders in d2 that had a shaded habitat
which was untouched by an existential spider. Had this not been the case we might have
had to introduce arrows when transforming max(d1 ) into d2 (we banned arrows with
universal source, u, where ES({u}, d1 ) = ∅ from being semantic potential arrows). To
avoid having to introduce arrows to max(d1 ), we define the reduced form of a β-diagram.
Definition 4.7.5 Let d be a unitary β-diagram. The reduced form of d, denoted red(d)
is a copy of d but with all the arrows whose source is a universal spider with a shaded
habitat that is untouched by any existential spiders erased. More formally,
red(d) = d − {(l, s, t) ∈ Au (d) : ES({s}, d) = ∅}.
Let D = D1 ¤D2 be a β-diagram where ¤ ∈ {t, u}. The reduced form of D is red(D) =
red(D1 )¤red(D2 ). For any β-diagram, D, if red(D) = D we say D is in reduced form.
We note that, since ⊥ has no arrows, red(⊥) =⊥.
Lemma 4.7.16 Let d be a unitary β-diagram. Then d ≡` red(d).
221
Proof In the case where d =⊥ or d contains incompatible arrows, the result follows by
applying rule 16 (inconsistency). Otherwise the result follows by applying the reversible
rule 5 (introduction of an arrow: universal equivalence). QED
Theorem 4.7.5 Let D be a β-diagram. Then D ≡` red(D).
A
B
f
d
A
f
f
g
g
1
f
A
g
g
f
d
g
2
B
A
B
g
m a x (d 1)
B
g
r e d (d 2)
Figure 4.60: Maximal and reduced forms.
Example 4.7.12 The diagrams d1 and d2 in figure 4.60 satisfy d1 6² d2 and d1 6` d2 . From
max(d1 ) and red(d2 ) we observe the following.
(a) The zone ({B}, {A}) is shaded in red(d2 ) but is not shaded in max(d1 ) and contains
more existential spiders in max(d1 ).
(b) Zone ({A}, {B}) contains more existential spiders in red(d2 ) than in max(d1 ).
(c) The arrow in red(d2 ) whose target is an existential spider is not in max(d1 ).
From any one of the above three observations we can deduce max(d1 ) 6² red(d2 ). Observation (a) informs us that any model, m = (U, Ψ, φ), for max(d1 ) ensures |Ψ({B}, {A})| >
|ES({({B}, {A})}, red(d2 ))| and, therefore, does not satisfy red(d2 ). Observation (b) informs us that any model for max(d1 ) with the property that
|Ψ({A}, {B})| = |ES({({A}, {B})}, max(d1 ))|
will not satisfy red(d2 ). Furthermore, from observation (c), no model for max(d1 ) has the
property that an element of Ψ(∅, {A, B}) is related to an element of Ψ({A}, {B}) under
φ(g). Thus the arrow in red(d2 ) that is not in max(d1 ) will cause the existential arrows
condition for red(d2 ) to fail.
222
4.7.5
Completeness for unitary β-diagrams
Consider two β-diagrams, d1 and d2 , with the same zone sets that satisfy d1 ² d2 . We
will transform max(d1 ) into red(d2 ) by erasing shading, arrows and spiders, as outlined
in example 4.7.11. Firstly, we can easily identify which shading to erase: we erase the
shading from max(d1 ) that is not in red(d2 ). If we can embed the arrows of red(d2 ) in the
set of arrows in max(d1 ), respecting source and target information, then we can identify
which arrows to erase from max(d1 ). After erasing these arrows, we erase any surplus
existential spiders to give red(d2 ) and the proof that d1 ` d2 will be complete.
In order to embed the arrows of red(d2 ) into the arrow set of max(d1 ), consider an
arrow, a = (l, s, t), in red(d2 ). We would like to be able to say that a is present in
max(d1 ). But the source or target of a could be existential spiders in red(d2 ) and not
syntactic elements of max(d1 ). This is where the standard model for max(d1 ) proves
invaluable. Because d1 ² d2 , max(d1 ) ≡ d1 and red(d2 ) ≡ d2 , the standard model for
max(d1 ) is also a model for red(d2 ). Assume that the source and target of a are existential
spiders. Then the standard model, m = (ES(d1 ), Ψ, φ), for max(d1 ) includes a relation
φ(l) on the set ES(d1 ). Because m is also a model for red(d2 ) we can find a map
Ψ : ES(red(d2 )) → ES(max(d1 )).
This map Ψ identifies a potential source and target for a ‘matching’ arrow in max(d1 ). The
following lemma shows that max(d1 ) has at least one arrow with source Ψ(s) and label l.
Furthermore, if max(d1 ) has the property that every unshaded zone is inhabited by two
or more existential spiders, we can ensure the existence of (l, Ψ(s), t1 ) where Ψ(t1 ) = Ψ(t).
Lemma 4.7.17 Let d (6=⊥) be a unitary β-diagram in maximal form whose arrows are
pairwise compatible such that each non-shaded zone contains at least two existential spiders. Let l ∈ AL and let t ∈ ES(d) ∪ L(d). Let m = (ES(d), Ψ, φ) be the standard model
for d. Define, for each e ∈ ES(d), Ψ(e) = {e}. Then for each e ∈ ES(d)
(i) if {e}.φ(l) 6= ∅ then there is an arrow sourced at e, labelled l in d and
(ii) if {e}.φ(l) 6= ∅ and Ψ(t) = {e}.φ(l) then there is an arrow sourced at e, labelled l
and with target t in d.
Proof Let l ∈ AL and let e1 ∈ ES(d). Suppose that {e1 }.φ(l) 6= ∅.
(i) By the construction of m, if (e1 , e2 ) ∈ φ(l), for some e2 ∈ ES(d), then either there
is an arrow in d sourced at e1 with label l and whose hit includes e2 , or there is a
223
universal spider cohabiting with e1 that is the source of an arrow in d with label l
and whose hit includes e2 . In the second case, since d is maximal, it follows that
there is also an arrow in d with source e1 and label l whose hit includes e2 . Hence
there is an arrow with source e1 and label l in d.
(ii) Let t ∈ L(d) ∪ ES(d) and assume Ψ(t) = {e1 }.φ(l). Suppose first that t is an
existential spider. Then there must be an arrow, (l, e1 , t1 ), in d with hit {t}. If
t1 6= t then it must be that t1 is a contour label that satisfies ES(t1 , d) = {t}. Since
each non-shaded zone in d contains at least two existential spiders it must be that
the basic region within t1 is shaded in d. Therefore, since d is maximal, (l, e1 , t) is
in d.
Alternatively, t may be a contour label. Then there must be an arrow, (l, e1 , t2 )
with hit ES(t, d) in d. If t2 is a contour label then the symmetric difference of t
and t2 must be untouched in d since ES(t, d) = ES(t2 , d). Therefore this symmetric
difference must be shaded in d since each non-shaded zone contains at least two
existential spider. If t2 is an existential spider then, since each non-shaded zone
contains at least two existential spiders, it must be that the basic region within t is
shaded in d. In either case, since d is maximal, it follows that (l, e1 , t) is in d. QED
The next example illustrates how we find an embedding of the spiders and arrows in
red(d2 ) into the sets of spiders and arrows in max(d1 ).
f
A
e
e
5
e
1
g
f
3
C
d
B
g
e
e
f
A
s
2
4
s
1
4
s
3
C
s
1
d
B
2
g
2
Figure 4.61: Constructing a spider and arrow embedding.
Example 4.7.13 The diagram d1 semantically entails d2 in figure 4.61. There is an
injective habitat preserving map from the existential spiders in d2 to the existential spiders
in d1 that induces an injective map from the arrows in d2 to the arrows in d1 . We
illustrate how we can use a particular interpretation to define such injective maps. Let
m = (ES(d1 ), Ψ, φ) be the standard model for d1 . Extend this interpretation to m0 =
224
(ES(d1 ), Ψ, φ0 ) where φ0 is defined as follows. Take the set E = {e3 , e5 } and define, for
each arrow label l, the image of l under φ0 to be the image of l under φ together with the
set of pairs whose first component is any existential spider in d1 that is not the source of
an arrow with label l and whose second component is either e3 or e5 . More formally, for
each l in AL,
φ0 (l) = φ(l) ∪ {(x, y) ∈ ES(d1 ) × E :6 ∃t • (l, x, t) ∈ A(d1 )}.
The interpretation m0 satisfies d1 and the extension Ψ1 : R ∪ ES(d1 ) → PES(d1 ) defined
by Ψ1 (e) = {e} for each e ∈ ES(d1 ) is a valid extension of Ψ to existential spiders for d1 in
both m and m0 . Since d1 ² d2 it is the case that m0 |= d2 . Define Ψ2 (s1 ) = {e1 }, Ψ2 (s2 ) =
{e2 }, Ψ2 (s3 ) = {e3 } and Ψ2 (s4 ) = {e5 }. This is a valid extension of Ψ to existential spiders
for d2 . We define next a habitat preserving injection σ : ES(d2 ) → ES(d1 ) by σ(e) ∈ Ψ2 (e)
for each e ∈ ES(d2 ). Consider the arrow (g, s3 , B) in d2 . Semantically we know that
Ψ2 (s3 ).φ0 (g) = Ψ(B), from the existential arrows condition for d2 , so {e3 }.φ0 (g) = Ψ(B).
Since B does not satisfy Ψ(B) = E (indeed, E was chosen so no contour label, L, satisfies
Ψ(L) = E), e3 is the source of an arrow with label g in d1 and we have {e3 }.φ0 (g) =
{e3 }.φ(g). Since Ψ(B) 6= ∅ it follows that there is an arrow with source e3 , label g and
target B in d1 . Consider next the arrow (f, ({A}, {B, C}), s2 ) in d2 . In this case, all
existential spiders in d1 that inhabit {({A}, {B, C})} are the sources of arrows with label
f and target Ψ2 (s2 ) = {e2 }. Since ({A}, {B, C}) is shaded and d1 is maximal it follows
that (f, ({A}, {B, C}), e2 ) is in d1 .
We can extend the standard model for unitary diagram d by adding relational elements
(i.e. adding ordered pairs to the image of an arrow label under φ) and still have a model
for d. The risk of adding arbitrary relational elements is that this may conflict with some
information from a universal arrow, say. Thus when extending models for diagrams we
must take care. Taking any max(d) with at least two existential spiders inhabiting each
non-shaded zone, we will prove that the interpretation constructed from the standard
model for max(d) (and hence the standard model for d), as described in the example
above, satisfies max(d).
Lemma 4.7.18 Let d (6=⊥) be a unitary β-diagram in maximal form whose arrows are
pairwise compatible such that each non-shaded zone contains at least two existential spiders. Let E ⊆ ES(d) and let m = (ES(d), Ψ, φ) be the standard model for d. Then the
225
interpretation m0 = (ES(d), Ψ, φ0 ) where for each l ∈ AL,
φ0 (l) = φ(l) ∪ {(e1 , e2 ) ∈ ES(d) × E :6 ∃t • (l, e1 , t) ∈ A(d)},
satisfies d. Furthermore the extension of Ψ : R → PES(d) defined by Ψ(e) = {e} for each
e ∈ ES(d) is a valid extension of Ψ to existential spiders for d in interpretation m0 .
Proof The plane tiling condition holds for d since Ψ is the same in both interpretations
and m |= d. Secondly, with the extension of Ψ : R → PES(d) to Ψ : R ∪ ES(d) → PES(d)
defined by Ψ(e) = {e} for each e ∈ ES(d), the spiders condition, strangers condition
and shading condition hold for d in m0 also, since m |= d. All that remains is to show
that the arrows conditions hold for d in m0 . Let (l, s, t) ∈ Ae (d). Now m |= d, so we
know that {s}.φ(l) = Ψ(t). Since s is the source of an arrow with label l it follows
that {s}.φ(l) = {s}.φ0 (l). Therefore the existential arrows condition holds for d. Let
(l, s, t) ∈ Au (d). Since d is in maximal form, every existential spider inhabiting {s} is the
source of an arrow with label l and target t. It follows that
∀e ∈ Ψ(s) • {e}.φ0 (l) = {e}.φ(l) = Ψ(t).
Therefore the universal arrows condition holds for d. Hence m0 |= d and the extension of
Ψ : R → PES(d) defined by Ψ(e) = {e} for each e ∈ ES(d) is a valid extension of Ψ to
existential spiders for d in interpretation m0 . QED
Theorem 4.7.6 Let d1 (6=⊥) be a unitary β-diagram in maximal form whose arrows
are pairwise compatible such that each non-shaded zone contains at least two existential
spiders. Furthermore, suppose that there is a subset, E, of ES(d1 ) such that |E| ≥ 2 and
no contour label, A, satisfies ES(A, d1 ) = E. Let d2 be a reduced form unitary β-diagram
such that d1 ² d2 and Z(d1 ) = Z(d2 ). Then every zone in d2 contains at most the same
number of existential spiders as in d1 and every arrow in d2 occurs in d1 : there exists an
injection σ : ES(d2 ) → ES(d1 ) such that
∀ e ∈ ES(d2 ) • ηd2 (e) = ηd1 (σ(e))
and the injective function
γ : A(d2 ) → AL × (ES(d1 ) ∪ Z(d1 )) × (ES(d1 ) ∪ L(d1 ) ∪ {∅})
induced by σ defined by
(l, σ(s), σ(t)),
(l, σ(s), t),
γ(l, s, t) =
(l, s, σ(t)),
(l, s, t),
if
if
if
if
s, t ∈ ES(d2 )
s ∈ ES(d2 ) and t ∈ L(d2 ) ∪ {∅}
s ∈ Z(d2 ) and t ∈ ES(d2 )
s ∈ Z(d2 ) and t ∈ L(d2 ) ∪ {∅}.
226
satisfies im(γ) ⊆ A(d1 ).
Proof Let m = (ES(d1 ), Ψ, φ) be the standard model for d1 . We shall now extend this
interpretation so that any existential spider, e, that is not the source of an arrow with a
given label, l, satisfies {e}.φ(l) 6= ∅. This extended interpretation will also satisfy d1 and we
use it to show that the existential spiders embedding and arrows embedding exist. Choose
a subset, E, of ES(d1 ) such that |E| ≥ 2 and no contour label, A, satisfies ES(A, d1 ) = E.
We define m0 = (ES(d1 ), Ψ, φ0 ) where for each l ∈ AL,
φ0 (l) = φ(l) ∪ {(e1 , e2 ) ∈ ES(d1 ) × E :6 ∃t • (l, e1 , t) ∈ A(d1 )}.
By lemma 4.7.18, m0 |= d1 . Therefore m0 |= d2 . Hence there exists a valid extension of
Ψ : R → PES(d1 ) to Ψ : R ∪ ES(d2 ) → PES(d1 ). Choose such an extension, say Ψ2 . This
Ψ2 with the domain restricted to ES(d2 ), giving Ψ2 |ES(d2 ) , defines a habitat preserving
injective map from ES(d2 ) to singleton subsets of ES(d1 ). This map defines a habitat
preserving injective map σ : ES(d2 ) → ES(d1 ) by σ(e) ∈ Ψ2 (e). We now show that the
arrow map γ induced by σ satisfies im(γ) ⊆ A(d1 ). Firstly, define for each e ∈ ES(d1 ),
Ψ1 (e) = {e} (this is a valid extension of Ψ to existential spiders in d1 for both m and m0 ).
Let (l, e, t) ∈ Ae (d2 ). We consider three cases.
(i) t ∈ ES(d2 ). By the existential arrows condition for d2 we have
Ψ2 (e).φ0 (l) = Ψ2 (t),
so
{σ(e)}.φ0 (l) = {σ(t)}
and it follows that
Ψ1 (σ(e)).φ0 (l) = Ψ1 (σ(t)).
If σ(e) is not the source of an arrow with label l then |Ψ1 (σ(e)).φ0 (l)| = |E| > 1. So,
by contradiction, σ(e) must be the source of an arrow with label l. It follows that
Ψ1 (σ(e)).φ0 (l) = Ψ1 (σ(e)).φ(l) = Ψ1 (σ(t)).
By lemma 4.7.17 there is an arrow in d1 with source σ(e), label l and target σ(t),
that is γ(l, e, t) = (l, σ(e), σ(t)) ∈ A(d1 ).
(ii) t ∈ L(d2 ) and ES(t, d2 ) 6= ∅. By the existential arrows condition for d2 we have
Ψ2 (e).φ0 (l) = Ψ(t),
227
so
{σ(e)}.φ0 (l) = Ψ(t)
and it follows that
Ψ1 (σ(e)).φ0 (l) = Ψ(t).
If σ(e) is not the source of an arrow labelled l then
Ψ1 (σ(e)).φ0 (l) = E.
Now
E 6= Ψ(A)
for any A ∈ ES(d1 ) ∪ L(d1 ). In particular
E 6= Ψ(t).
Therefore, by contradiction, σ(e) is the source of an arrow with label l and we have
Ψ1 (σ(e)).φ0 (l) = Ψ1 (σ(e)).φ(l) = Ψ(t).
Since Ψ(t) 6= ∅, it follows that, by lemma 4.7.17, there is an arrow in d1 with source
σ(e), label l and target t, that is γ(l, e, t) = (l, σ(e), t) ∈ A(d1 ).
(iii) t ∈ L(d2 ) ∪ {∅} and ES(t, d2 ) = ∅. By the existential arrows condition for β-diagram
d2 we have
Ψ2 (e).φ0 (l) = Ψ(t) = ∅,
so
{σ(e)}.φ0 (l) = ∅
and it follows that
Ψ1 (σ(e)).φ0 (l) = ∅.
Now, if σ(e) is not the source of an arrow with label l in d1 then Ψ1 (σ(e)).φ0 (l) =
E 6= ∅. Therefore σ(e) is the source of an arrow with label l and target t1 where
Ψ(t1 ) = ∅. Since d1 is a β-diagram, all zones within t1 are shaded, as are those
within t. Since d1 maximal, it follows that γ(l, e, t) = (l, σ(e), t) ∈ A(d1 ).
So far we have shown that im(γ|Ae (d2 ) ) ⊆ A(d1 ). We now show that the same is true for
the universal arrows in d2 . Let (l, u, t) ∈ Au (d2 ). Again we consider three cases.
228
(iv) t ∈ ES(d2 ). By the universal arrows condition for d2 we have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψ2 (t).
Therefore
∀x ∈ ES({u}, d1 ) • {x}.φ0 (l) = Ψ1 (σ(t)).
Now, for each x ∈ ES({u}, d1 ), {x}.φ0 (l) is either {x}.φ(l) or E, depending on
whether x is the source of an arrow in max(d1 ). But |E| > 1 and |{x}.φ0 (l)| = 1
so there is an arrow (l, x, q) in d1 . If q is a spider then q = σ(t) and (l, x, q) =
(l, x, σ(t)). If q is a contour label then it contains σ(t) and no other spiders. All
zones contained within q must, therefore, be shaded (all non-shaded zones contain
at least two existential spiders). By the maximality of d1 , there is also an arrow
(l, x, σ(t)) in d1 . Therefore each existential spider in ES({u}, d1 ) is the source of an
arrow with label l and target σ(t) in d1 and
∀x ∈ ES({u}, d1 ) • {x}.φ0 (l) = {x}.φ(l).
If u is shaded in d1 and since d1 is maximal it follows that (l, u, σ(t)) ∈ A(d1 ),
since u contains at least one existential spider in d2 (d2 is in reduced form and is a
β-diagram) and therefore at least one existential spider in d1 .
Alternatively suppose that u is not shaded in d1 and (l, u, σ(t)) 6∈ A(d1 ). Then u
cannot be the source of an arrow with label l in d1 . This is because such an arrow
could not have hit {σ(t)} (each non-shaded zone contains at least two existential
spiders and d1 is in maximal form) and, therefore, would be incompatible with
(l, v, σ(t)) where v ∈ ES({u}, d1 ) (there is at least one such v since d1 is a βdiagram). Then there is an interpretation that satisfies d1 that does not satisfy d2 .
An example of such an interpretation is the standard model for a diagram d3 that
is a copy of d1 but with an additional existential spider inhabiting u. Therefore
(l, u, σ(t)) ∈ A(d1 ).
(v) t ∈ L(d2 ) and ES(t, d2 ) 6= ∅. By the universal arrows condition for d2 we have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψ(t).
Therefore
∀x ∈ ES({u}, d1 ) • {x}.φ0 (l) = Ψ(t).
229
Similarly to case (ii) we deduce
∀x ∈ ES({u}, d1 ) • {x}.φ0 (l) = {x}.φ(l) = Ψ(t).
Since Ψ(t) 6= ∅ it follows that, for each x ∈ ES({u}, d) there is an arrow with source
x, label l and target t. Similarly to case (iv) we deduce (l, u, t) ∈ A(d1 ).
(vi) t ∈ L(d2 ) ∪ {∅} and ES(t, d2 ) = ∅. By the universal arrows condition for d2 we have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψ(t) = ∅.
Therefore
∀x ∈ ES({u}, d1 ) • {x}.φ0 (l) = ∅.
Thus all existential spiders inhabiting ES({u}, d1 ) must be sources of arrows with
label l and empty hit. Therefore
∀x ∈ ES({u}, d1 ) • {x}.φ(l) = ∅.
Since d1 is maximal and a β-diagram, all such existential spiders must be sources of
arrows with label l and target t. Similarly to case (iv) we deduce (l, u, t) ∈ A(d1 ).
Hence im(γ) ⊆ A(d1 ). QED
Next we wish to show that whenever we have two β-diagrams, d1 and d2 , where d1 =
max(d1 ), d2 = red(d2 ), Z(d1 ) = Z(d2 ) and d1 ² d2 , and d1 has at least one non-shaded
zone, we can find an injective, habitat preserving map, σ, from the existential spiders of
d2 to the existential spiders of d1 that induces γ, an injective map from the arrows of d2
to the arrows of d1 .
Example 4.7.14 The diagrams d1 and d2 in figure 4.62 satisfy d1 ² d2 . We cannot
immediately use theorem 4.7.6 to show that there exists an injective habitat preserving
map from existential spiders of d2 to existential spiders of d1 that can be used to define
an appropriate arrows map: d1 does not have at least two existential spiders in each nonshaded zone. Consider the diagram d. This diagram is a copy of d1 except that each
non-shaded zone contains an additional existential spider and one such zone, (∅, {A, B}),
contains two additional existential spiders. Thus d ² d1 , so max(d) ² d1 . We can use
theorem 4.7.6 to show that the required spider and arrow maps exists from d2 to max(d).
Now, the arrow in max(d) that is not in d1 is sourced on a new existential spider, e. The
spider e is cohabiting with a universal spider, from which e ‘inherits’ its arrow. The target
230
f
A
g
d
f
g
f
f
1
f
f
B
g
f
A
g
g
f
f
A
B
B
d
2
f
A
g
d
g
f
f
B
f
m a x (d )
Figure 4.62: Introducing the extra existential spiders form.
of this new arrow is not a new existential spider. None of the other existential spiders
added to d1 are cohabiting with a universal spider and these new spiders are not sources
of arrows. Once we have embedded the spiders and arrows of d2 into d we can adjust the
mapping to give an embedding into the arrows of d1 .
An extra existential spiders form, de1 , of d1 is a copy of d1 but with an extra existential
spider in each non-shaded zone, and two extra existential spiders in one of these zones.
Definition 4.7.6 Let d1 (6=⊥) be a unitary β-diagram in maximal form whose arrows are
pairwise compatible such that Z(d1 ) − Z ∗ (d1 ) 6= ∅. Let ẑ ∈ Z(d1 ) − Z ∗ (d1 ). A diagram de1
is an extra existential spiders form of d1 if
de1 = hL(d1 ), Z(d1 ), Z ∗ (d1 ), ES(d1 ) ∪ X, ηd1 ∪ Y, A(d1 )i
where X is a set of extra existential spiders such that
1. |X| = |Z(d1 ) − Z ∗ (d1 )| + 1 and
2. X ∩ (CL ∪ Z ∪ R ∪ ES(d1 )) = ∅
and Y gives the habitats of the spiders in X, that is Y satisfies
1. Y ⊆ {(e, {z}) : e ∈ X ∧ z ∈ Z(d1 ) − Z ∗ (d1 )} and
2. ∀e ∈ X ∃!z ∈ Z(d1 ) − Z ∗ (d1 ) • (e, {z}) ∈ Y and
3. ∃e1 , e2 ∈ X • e1 6= e2 ∧ (e1 , {ẑ}) ∈ Y ∧ (e2 , {ẑ}) ∈ Y and
231
4. ∀z ∈ Z(d1 ) − Z ∗ (d1 ) ∃e ∈ X • (e, {z}) ∈ Y .
Lemma 4.7.19 Let d1 (6=⊥) be a unitary β-diagram in maximal form whose arrows are
pairwise compatible such that Z(d1 ) − Z ∗ (d1 ) 6= ∅. Then d1 has an extra existential spiders
form, de1 say, and de1 is satisfiable. Also de1 ² d1 and there is a subset, say E, of ES(de1 )
such that |E| ≥ 2 and no contour label A ∈ L(de1 ) satisfies ES(A, de1 ) = E.
Proof The existence of de1 is obvious. Adding any number of existential spiders to a
non-shaded zone in d1 does not create incompatible arrows since d1 is maximal. Therefore
de1 is satisfiable. Now de1 ` d1 by erasing the existential spiders in de1 that are not in d1 ,
so de1 ² d1 . Finally we must show that there is a subset, say E, of ES(de1 ) such that no
contour label A ∈ L(de1 ) satisfies ES(A, de1 ) = E. By the definition of de1 at least one zone
contains three existential spiders (for example, the zone with two spiders added). Choose
such a zone z. Let e1 and e2 be two distinct existential spiders inhabiting z, that is
e1 , e2 ∈ ES({z}, de1 ) and e1 6= e2 . Then no contour label, A, satisfies ES(A, d1 ) = {e1 , e2 }.
QED
Corollary 4.7.3 Let d1 (6=⊥) be a unitary β-diagram in maximal form such that Z(d1 ) −
Z ∗ (d1 ) 6= ∅. Let d2 be a reduced form β-diagram such that Z(d1 ) = Z(d2 ) and d1 ² d2 .
Let de1 be an extra existential spiders form of d1 . Then every zone in d2 contains at most
the same number of existential spiders as in max(de1 ) and every arrow in d2 occurs in
max(de1 ): there exists an injection σ : ES(d2 ) → ES(max(de1 )) such that
∀ e ∈ ES(d2 ) • ηd2 (e) = ηde1 (σ(e))
and the injective function
γ : A(d2 ) → AL × (ES(de1 ) ∪ Z(de1 )) × (ES(de1 ) ∪ L(de1 ) ∪ {∅})
induced by σ defined by
(l, σ(s), σ(t)),
(l, σ(s), t),
γ(l, s, t) =
(l, s, σ(t)),
(l, s, t),
if
if
if
if
s, t ∈ ES(d2 )
s ∈ ES(d2 ) and t ∈ L(d2 ) ∪ {∅}
s ∈ Z(d2 ) and t ∈ ES(d2 )
s ∈ Z(d2 ) and t ∈ L(d2 ) ∪ {∅}.
satisfies im(γ) ⊆ A(max(de1 )).
We wish to show we can adjust the embeddings of spiders and arrows from d2 into
max(de1 ) as stated in the above corollary to give corresponding embeddings from d2 into
d1 . Firstly we prove some results related to properties of the arrows that are in max(de1 )
but not in d1 .
232
Lemma 4.7.20 Let d1 (6=⊥) be a unitary β-diagram in maximal form such that Z(d1 ) −
Z ∗ (d1 ) 6= ∅. Let de1 be an extra existential spiders form of d1 . Let e ∈ ES(max(de1 )) −
ES(d1 ). Then each of the following holds.
1. The diagram d1 has the same shading as max(de1 ): Z ∗ (d1 ) = Z ∗ (max(de1 )).
2. If e is the source of an arrow, (l, e, t), in max(de1 ) then there is a universal spider,
u, cohabiting with e such that (l, u, t) ∈ A(d1 ).
3. The universal arrows match: Au (max(de1 )) = Au (d1 ).
4. There is no arrow in max(de1 ) with target e.
5. If (l, s, t) ∈ Ae (max(de1 )) − Ae (d1 ) then s ∈ ES(max(de1 )) − ES(d1 ).
Proof
1. The diagram d1 has the same shading as max(de1 ): Z ∗ (d1 ) = Z ∗ (max(de1 )). Clearly
Z ∗ (d1 ) ⊆ Z ∗ (max(de1 )) by the definition of de1 . If introducing an existential spider
to a zone in de1 creates incompatible arrows, the same must be true in d1 . Thus
Z ∗ (max(de1 )) ⊆ Z ∗ (d1 ) and Z ∗ (d1 ) = Z ∗ (max(de1 )).
2. If e is the source of an arrow, (l, e, t), in max(de1 ) then there is a universal spider,
u, cohabiting with e such that (l, u, t) ∈ A(d1 ). By lemma 4.7.2, if t is an existential
spider then either e is already the source of an arrow with label l in de1 , which is
not the case, or there is a universal spider cohabiting with e with target t or target
t1 ∈ L(de1 ) in de1 (and therefore in d1 ) where ES(t1 , de1 ) = {t}. In the case where
there is a universal spider cohabiting with e that is the source of an arrow with label
l and target t we are done. In the remaining case, by the definition of de1 , all zones
contained within t1 are shaded in de1 (and therefore in d1 ). Then (l, u, t) is in d1
since d1 is maximal.
Alternatively, t is a contour label or the empty set. Firstly suppose ES(t, de1 ) 6= ∅.
Then one of the four statements in lemma 4.7.4 holds for de1 . Statements (1) and (2)
cannot be true by the definition of de1 . Consider statement (3). If an arrow (l, u, t1 ) is
in de1 , where t1 ∈ ES(de1 ) and ES(t, de1 ) = {t1 } then all the zones inside t are shaded
in d1 , for any zone that is not shaded in d1 contains at least two spiders in de1 . Since
d1 is maximal, the arrow (l, u, t) is in d1 . Next consider statement (4). If (l, u, t1 ) is
233
in de1 where t1 ∈ L(de1 ) and ES(t, de1 ) = ES(t1 , de1 ) then the symmetric difference of
t and t1 is shaded in de1 and, therefore, in d1 . Again it follows that (l, u, t) is in d1 .
Now consider the case where ES(t, de1 ) = ∅. Then one of the two statements in lemma
4.7.6 holds for de1 . Statement (1) cannot hold, by the definition of de1 . Therefore
statement (2) holds and it follows that (l, u, t) is in d1 since d1 is in maximal form.
3. The universal arrows match: Au (max(de1 )) = Au (d1 ). By the definition of de1 ,
Au (d1 ) ⊆ Au (max(de1 )). Let (l, u, t) ∈ Au (max(de1 )). Assume that (l, u, t) 6∈ Au (d1 ).
Then (l, u, t) is a semantic potential arrow for de1 . Suppose u is shaded in de1 . Then
u is shaded in d1 , by case 1. Furthermore, in max(de1 ) all the existential spiders
cohabiting with u are sources of arrows with label l and target t. Now, all such
arrows with label l and target t are in d1 since d1 is maximal (such arrows, if not
in d1 , would be semantic potential arrows). Therefore (l, u, t) is in d1 , again by the
maximality of d1 . The assumption that u is shaded must be false, so it must be that
u is not shaded in de1 .
Firstly suppose t is an existential spider. Then there must be an arrow, (l, u, t1 ),
in de1 , and therefore in d1 , such that ES(t1 , de1 ) = {t}, by lemma 4.7.8. Then, since
every non-shaded zone contains at least two existential spiders it must be that every
zone contained within t1 is shaded in de1 and therefore in d1 . Thus, since d1 is
maximal it follows that (l, u, t) is in d1 .
Secondly suppose that t is a contour label such that ES(t, de1 ) 6= ∅. Then at least
one of the statements in lemma 4.7.10 holds for de1 . In either case it can be shown
that (l, u, t) is in d1 .
The only other possibility, then, is that t is a contour label or the empty set and
ES(t, de1 ) = ∅. In this case, by lemma 4.7.12, (l, u, t1 ) is an arrow in de1 , and therefore
in d1 , such that t1 is a contour label or the empty set and ES(t1 , de1 ) = ES(t, de1 ).
Thus the symmetric difference of t1 and t must be shaded in both de1 and d1 . It
follows that (l, u, t) is in d1 . In all three cases we have reached a contradiction,
because we assumed (l, u, t) 6∈ Au (d1 ). Hence (l, u, t) ∈ Au (d1 )
Therefore Au (max(de1 )) ⊆ Au (d1 ) and Au (max(de1 )) = Au (d1 ).
4. There is no arrow in max(de1 ) with target e. Suppose there is an arrow with target e,
(l, s, e), in max(de1 ). If s is an existential spider then, by lemma 4.7.2, there is either
already an arrow with target e in de1 , which is not the case, or there is an arrow in de1
234
with source s, or universal source s1 , and target t1 , where ES(t1 , d1 ) = {e}. By the
definition of de1 and by case 1, the habitat of e is not shaded and therefore contains
at least two existential spiders. In which case ES(t, de1 ) 6= {e}. Therefore s cannot
be an existential spider.
Alternatively s must be a universal spider. Firstly we consider the case where s is
not shaded in de1 . By lemma 4.7.8, there must be an arrow, (l, s, t1 ) in de1 where such
that t1 is a contour label and ES(t1 , de1 ) = {e}. By the definition of de1 , the habitat
of e is not shaded and, therefore contains at least two existential spiders. Again it
would be that ES(t, de1 ) 6= {e}. So it must be that s is shaded in de1 . In this case all
arrows of the form (l, ei , e) where ei ∈ ES({s}, de1 ) are semantic potential arrows for
de1 and are in max(de1 ). We have just shown no arrows with an existential source can
target e in max(de1 ). So ES({s}, de1 ) must be empty, in which case (l, s, e) is not a
semantic potential arrow for de1 and, therefore, is not in max(de1 ). Hence no arrows
in max(de1 ) target e.
5. If (l, s, t) ∈ Ae (max(de1 )) − Ae (d1 ) then s ∈ ES(de1 ) − ES(d1 ). Suppose (l, s, t) ∈
Ae (max(de1 )) − Ae (d1 ). Assume that s ∈ ES(d1 ). Suppose firstly that t ∈ ES(d1 ).
Then, by lemma 4.7.2, (l, s, t) is in d1 , since d1 is maximal and each non-shaded
zone in de1 contains at least two existential spiders. Secondly suppose that t ∈ L(d1 )
and ES(t, de1 ) 6= ∅. In this case, by lemma 4.7.4, (l, s, t) is in d1 , since d1 is maximal
and each non-shaded zone in de1 contains at least two existential spiders. Finally
suppose that t ∈ L(d1 ) ∪ {∅} and ES(t, de1 ) = ∅. From lemma 4.7.6, (l, s, t) is in d1 ,
since d1 is maximal and each non-shaded zone in de1 contains at least two existential
spiders. Therefore the assumption that s ∈ ES(d1 ) is false. So it must be that
s ∈ ES(de1 ) − ES(d1 ) as required. QED
Thus the only new arrows in max(de1 ) are sourced on new existential spiders and
targeted on old existential spiders, contour labels or the empty set. These new arrows
have labels that are present in d1 . We note here that when we have d1 ² d2 , for unitary
β-diagrams d1 and d2 with the same zone sets, we can find a injective habitat preserving
map from ES(d2 ) to ES(d1 ), so long as d1 is satisfiable. That is, for any zone in d2 , the
following inequality holds:
|ES({z}, d2 )| ≤ |ES({z}, d1 )| (1).
It is easy to show that this must be the case. The standard model m = (ES(d1 ), Ψ, φ)
235
for d1 satisfies d2 and any valid extension of Ψ to existential spiders for d2 can be used to
define an injective habitat preserving map from ES(d2 ) to ES(d1 ).
We also note that any new existential spider, e, in de1 that is the source of an arrow
in max(de1 ) inherits that arrow from a cohabiting universal spider. Thus all existential
spiders cohabiting with e are the sources of such arrows, illustrated in figure 4.63. Given
f
h
Z o n e in d
g
f
f
g
h
Z o n e in m a x (d
1
f
e
1
e
)
g
g
f
g
Figure 4.63: New arrows in de1 .
an injective map, σ, from ES(d2 ) to ES(de1 ) inducing an embedding of the arrows in d2
into the arrows of max(de1 ), we can redefine σ so that the arrows of d2 are embedded in the
arrows of d1 . To redefine σ, we take any new existential spider, e, in de1 that is in im(σ)
and map σ −1 (e) to any existential spider in d1 cohabiting with e that is not in im(σ) (we
know there are sufficient spiders by (1)).
Theorem 4.7.7 Let d1 (6=⊥) be a unitary β-diagram in maximal form such that Z(d1 ) −
Z ∗ (d1 ) 6= ∅. Let d2 be a reduced form unitary β-diagram such that d1 ² d2 and Z(d1 ) =
Z(d2 ). Then every zone in d2 contains at most the same number of existential spiders as
in d1 and every arrow in d2 occurs in d1 : there exists an injection σ : ES(d2 ) → ES(d1 )
such that
∀ e ∈ ES(d2 ) • ηd2 (e) = ηd1 (σ(e))
and the injective function
γ : A(d2 ) → AL × (ES(d1 ) ∪ Z(d1 )) × (ES(d1 ) ∪ L(d1 ) ∪ {∅})
induced by σ defined by
(l, σ(s), σ(t))
(l, σ(s), t)
γ(l, s, t) =
(l, s, σ(t))
(l, s, t)
if
if
if
if
s, t ∈ ES(d2 )
s ∈ ES(d2 ) and t ∈ L(d2 ) ∪ {∅}
s ∈ Z(d2 ) and t ∈ ES(d2 )
s ∈ Z(d2 ) and t ∈ L(d2 ) ∪ {∅}
satisfies im(γ) ⊆ A(d1 ).
Proof Let max(de1 ) be the maximal form of an extra existential spiders form of d1 . By
corollary 4.7.3, there exists an injective habitat preserving map σ : ES(d2 ) → ES(max(de1 ))
that defines γ : A(d2 ) → A(max(de1 )).
236
For each z ∈ Z(d2 ) consider all existential spiders inhabiting z in d2 . We can partition
ES({z}, d2 ) into two sets as follows:
1. ES1 (z) = {e ∈ ES({z}, d2 ) : σ(e) ∈ ES(d1 )} and
2. ES2 (z) = {e ∈ ES({z}, d2 ) : σ(e) ∈ ES(de1 ) − ES(d1 )}.
Now consider ES({z}, d1 ) − im(σ). It is the case that |ES({z}, d1 ) − im(σ)| ≥ |ES2 (z)|.
S
ES2 (z) → ES(d1 ) − im(σ) to be a habitat preserving injective map.
We define σ̂ :
z∈Z(d2 )
Then define σ1 : ES(d2 ) → ES(d1 ) by
½
σ(e), if σ(e) ∈ ES(d1 );
σ1 (e) =
σ̂(e), otherwise.
Clearly, σ1 defines an injective, habitat preserving map from ES(d2 ) to ES(d1 ). We now
show
γ1 : A(d2 ) → AL × (ES(d1 ) ∪ Z(d1 )) × (ES(d1 ) ∪ L(d1 ) ∪ {∅})
induced by σ1 satisfies im(γ1 ) ⊆ A(d1 ). Let (l, s, t) ∈ A(d2 ). If s is a universal spider
then, by lemma 4.7.20 part 3, γ1 (l, s, t) ∈ A(d1 ).
Alternatively, suppose s is an existential spider. If σ(s) ∈ ES(d1 ) then again, since no
arrows can target new spiders in de1 (by lemma 4.7.20 part 5), γ1 (l, s, t) ∈ A(d1 ). Thus the
only problematic case is when σ(s) 6∈ ES(d1 ). Assume σ(s) 6∈ ES(d1 ). Then σ1 (s) = σ̂(s)
and σ̂(s) ∈ ES(d1 ) − im(σ(s)). Now σ(s) is the source of an arrow with label l.
If t is an existential spider then, since no arrow in max(de1 ) can target new existential
spiders, σ(t) ∈ ES(d1 ). By lemma 4.7.20, there is a universal spider cohabiting with σ1 (s)
that is the source of an arrow with label l and target σ(t). By the maximality of d1 ,
σ1 (s) = σ̂(s) is also the source of an arrow with label l and target σ(t) in d1 . Therefore
γ1 (l, s, t) = (l, σ1 (s), σ(t)) is in A(d1 ). In the case where t is not an existential spider, a
similar argument shows γ1 (l, s, t) is in A(d1 ). Hence im(γ1 ) ⊆ A(d1 ). QED
In theorem 4.7.8 we will prove the completeness result for unitary β-diagrams with
the same zone sets, restricted to the case where we cannot apply the excluded middle for
arrows rule to max(d1 ). We require the next result in order to prove theorem 4.7.8.
Lemma 4.7.21 Let d1 (6=⊥) be a unitary α-diagram whose arrows are pairwise compatible
and suppose d1 contains z ∈ Z(d1 ) − (Z ∗ (d1 ) ∪ SZ(d1 )) (z is not shaded or shadeable).
Then there exists an interpretation m = (U, Ψ, φ) that satisfies d1 such that |Ψ(z)| >
|ES({z}, d1 )| + n for any n ∈ N.
237
Proof Let n ∈ N. Let d2 be a copy of d1 except that |ES({z}, d2 )| = |ES({z}, d1 )|+n+1,
that is
d2 = hL(d1 ), Z(d1 ), Z ∗ (d1 ), ES(d1 ) ∪ E, ηd1 ∪ (E × {{z}}), A(d1 )i
where E is any set such that E ∩ (ES(d1 ) ∪ CL ∪ Z ∪ R) = ∅ and |E| = n + 1. We show
that d2 is satisfiable. If d2 contains incompatible arrows, say a1 and a2 , then
hit(a1 , d2 ) 6= hit(a2 , d2 ).
Since the arrows of d1 are pairwise compatible it must be that, say,
hit(a1 , d1 ) ∪ E = hit(a1 , d2 )
and
hit(a2 , d1 ) = hit(a2 , d2 ).
If this is so, introducing one spider to z in d1 would create incompatible arrows and z
would be shadeable, which is a contradiction. Therefore the arrows of d2 are pairwise
compatible. Let m = (ES(d2 ), Ψ, φ) be the standard model for d2 . Then
Ψ(z) = ES({z}, d2 ) = ES({z}, d1 ) ∪ E
and we have
|Ψ(z)| > ES({z}, d1 ) + n.
Since z is not shaded and no spiders in E are sources or targets of arrows, we can
apply rule 24 (erasure of an existential spider) to d2 erasing all spiders in E giving d1 . By
soundness d2 ² d1 , so m |= d1 . Hence there exists an interpretation m = (U, Ψ, φ) that
satisfies d1 such that |Ψ(z)| > |ES({z}, d1 )| + n for any n ∈ N. QED
Theorem 4.7.8 Let d1 (6=⊥) be a unitary β-diagram whose arrows are pairwise compatible such that either
1. there is a non-shaded zone in max(d1 ) or
2. max(d1 ) is entirely shaded and there is a subset, E, of ES(max(d1 )) such that
|E| ≥ 2 and no contour label, A, satisfies ES(A, max(d1 )) = E.
Let d2 be a unitary β-diagram such that Z(d1 ) = Z(d2 ). The following three statements
are equivalent.
(1) d1 ` d2 .
238
(2) d1 ² d2 .
(3) (a) every shaded zone in red(d2 ) is shaded in max(d1 ) and contains the same number of existential spiders in both diagrams:
∀ z ∈ Z ∗ (red(d2 )) • z ∈ Z ∗ (max(d1 ))∧|ES({z}, red(d2 ))| = |ES({z}, max(d1 ))|
and
(b) every zone in red(d2 ) contains at most the same number of existential spiders
as in max(d1 ) and every arrow in red(d2 ) occurs in max(d1 ): there exists an
injection σ : ES(red(d2 )) → ES(max(d1 )) such that
∀ e ∈ ES(red(d2 )) • ηred(d2 ) (e) = ηmax(d1 ) (σ(e))
and the injective function
γ : A(red(d2 )) → AL × (ES(max(d1 )) ∪ Z(max(d1 )))×
(ES(max(d1 )) ∪ L(max(d1 )) ∪ {∅})
induced by σ defined by
(l, σ(s), σ(t))
(l, σ(s), t)
γ(l, s, t) =
(l, s, σ(t))
(l, s, t)
if
if
if
if
s, t ∈ ES(red(d2 ))
s ∈ ES(red(d2 )) and t ∈ L(red(d2 )) ∪ {∅}
s ∈ Z(red(d2 )) and t ∈ ES(red(d2 ))
s ∈ Z(red(d2 )) and t ∈ L(red(d2 )) ∪ {∅}
satisfies im(γ) ⊆ A(max(d1 ))).
Proof
1. (1) ⇒ (2). Follows by soundness.
2. (2) ⇒ (3). We prove ¬(3a) ⇒ ¬(2) and (2) ⇒ (3b). Since d1 ≡` max(d1 ) and
d2 ≡` red(d2 ) this is equivalent to
i. ¬3(a) ⇒ ¬(max(d1 ) ² red(d2 )) and
ii. (max(d1 ) ² red(d2 )) ⇒ (3b).
i. ¬3(a) ⇒ ¬(max(d1 ) ² red(d2 )). Suppose there exists a shaded zone, z, in
red(d2 ) such that
z 6∈ Z ∗ (max(d1 )) ∨ |ES({z}, red(d2 ))| 6= |ES({z}, max(d1 ))|.
239
Suppose that z 6∈ Z ∗ (max(d1 )). Let m = (U, Ψ, φ) be any interpretation satisfying max(d1 ) such that |Ψ(z)| > |ES({z}, red(d2 ))| (such an interpretation
exists either by theorem 4.3.1 or by lemma 4.7.21). Since z is shaded in red(d2 )
and red(d2 ) is an α-diagram, m does not satisfy red(d2 ).
Alternatively, suppose |ES({z}, red(d2 ))| 6= |ES({z}, max(d1 ))|. Let m =
(U, Ψ, φ) be any interpretation satisfying max(d1 ) such that
|Ψ(z)| = |ES({z}, max(d1 ))|,
for example, the standard model for max(d1 ). Suppose there exists an extension
of Ψ : R → PU to Ψ : R∪ES(red(d2 )) → PU that satisfies the spiders condition
and the strangers condition for red(d2 ). Then
¯
¯
[
¯
¯
|Ψ(z)| ≥ ¯¯
Ψ(e)¯¯ = |ES({z}, red(d2 ))|.
e∈ES({z},red(d2 ))
If the shading condition holds for red(d2 ), then
¯
¯
[
¯
¯
|Ψ(z)| ≤ ¯¯
Ψ(e)¯¯ = |ES({z}, red(d2 ))|,
e∈ES({z},red(d2 ))
and we have
|Ψ(z)| = |ES({z}, red(d2 ))| =
6 |ES({z}, max(d1 ))|
which is a contradiction. In either case m 6|= red(d2 ). Hence ¬3(a) ⇒ ¬(max(d1 ) ²
red(d2 )).
ii. max(d1 ) ² red(d2 ) ⇒ (3b). This follows from theorems 4.7.6 and 4.7.7.
Hence (2) ⇒ (3).
3. (3) ⇒ (1). Erase the shading from the region Z ∗ (max(d1 ))−Z ∗ (red(d2 )) in max(d1 )
by applying rule 23 (erasure of shading), yielding d3 . Delete each arrow in d3 that
is not in im(γ), yielding d4 . Next we consider spiders. Any shaded zone in red(d2 )
contains the same number of spiders in max(d1 ), by 3(a), and therefore in d4 . Erase
all spiders in d4 that are not in im(σ) (such spiders do not inhabit shaded zones and
are not the sources or targets of arrows) using rule 24 (erasure of a spider), yielding
240
d5 . Diagram d5 is isomorphic to red(d2 ). To summarize, we have
d1 ` max(d1 )
` d5
` red(d2 )
by rule 1 (isomorphic diagrams)
` d2 .
Thus d1 ` d2 . Hence (3) ⇒ (1).
Therefore all three statements are equivalent. QED
In order to finish the proof of the completeness result for unitary β-diagram with the
same zone sets, the final case we need to consider is when max(d1 ) is entirely shaded and
for each subset, E, of ES(max(d1 )) such that |E| ≥ 2, there is a contour label A, that
satisfies ES(A, max(d1 )) = E. That is, we can apply the excluded middle for arrows rule
to max(d1 ). For this case, we take max(d1 ) and introduce as many arrows as possible using
the excluded middle for arrows rule, but only introducing arrows whose labels are already
present in max(d1 ). This ensures we only apply the excluded middle for arrows rule to
max(d1 ) a finite number of times. This transforms max(d1 ) into a disjunction of unitary
diagrams and we show that the existential spiders and arrows of red(d2 ) can be embedded
into the maximal forms of each of the unitary components in this disjunction. Then we
show that the maximal forms of each of the unitary components in this disjunction can
be transformed into d2 , and therefore so can d1 .
Definition 4.7.7 Let d be a unitary α-diagram. Let A be a finite set of arrow labels. Let
X be a set such that
X ⊆ A × ES(d) × (ES(d) ∪ L(d) ∪ {∅})
and for each existential spider in d that is not the source of an arrow with label l in A
there is an arrow in X, that is:
∀e ∈ ES(d)∀l ∈ A • (∃!t ∈ ES(d) ∪ L(d) ∪ {∅} • (l, e, t) ∈ X)∨
(∃t ∈ ES(d) ∪ L(d) ∪ {∅} • (l, e, t) ∈ A(d)).
The diagram d + X is called an arrow superdiagram of d, given A. Define ASUP(d, A)
to be the set of all arrow super diagrams of d given A.
241
A
d
A
A
f
f
d
A
f
f
f
d
1
f
f
d
2
A
f
3
f
d
4
Figure 4.64: A diagram with its arrow super diagrams.
Example 4.7.15 The diagram d in figure 4.65 has four arrow super diagrams given {f },
d1 , d2 , d3 and d4 .
Lemma 4.7.22 Let d1 (6=⊥) be a unitary α-diagram in maximal form such that Z(d1 ) =
Z ∗ (d1 ) and for each subset, Ei , of ES(d1 ) for which |Ei | ≥ 2 there is a contour label A
such that ES(A, d1 ) = Ei . Let A be a finite set of arrow labels. Let d be an arrow super
diagram of d1 given A. Then d is satisfiable.
Proof Any arrow in d that is not in d1 is sourced on an existential spider. Let (l, e, t)
be such an arrow. Then (l, e, t) is the only arrow with label l sourced on e. Since d1 is
maximal it must be that e is not cohabiting with a universal spider that is the source of
an arrow with label l. Therefore (l, e, t) is not incompatible with any other arrow. Since
the arrows of d1 are pairwise compatible, so are the arrows of d. Hence d is satisfiable.
QED
Definition 4.7.8 Let d be a unitary α-diagram. Let A be a finite set of arrow labels.
Given A, define the arrow diagram associated with d, denoted Arr(d, A), to be
d0 .
Arr(d, A) =
d0 ∈ASUP(d,A)
A
A
d
f
A
f
ò
A
f
d
A
1
f
d
f
f
3
d
f
f
2
d
f
4
Figure 4.65: A diagram with an associated arrow diagram.
Example 4.7.16 The diagram d in figure 4.65 has four arrow super diagrams given {f },
d1 , d2 , d3 and d4 . Rule 13 (excluded middle for arrows) can be applied to d to obtain its
arrow super diagram given {f }, Arr(d, {f }) = d1 t d2 t d3 t d4 .
242
Lemma 4.7.23 Let d (6=⊥) be a unitary α-diagram in maximal form such that Z(d) =
Z ∗ (d) and for each subset, Ei , of ES(d) for which |Ei | ≥ 2 there is a contour label L such
that ES(L, d) = Ei . Let A be a finite set of arrow labels. Then d ≡` Arr(d, A).
Proof The result follows by repeated application of rule 13 (excluded middle for arrows).
QED
Definition 4.7.9 Let D be an α-diagram. Define the maximal arrow diagram associated with D, denoted maxarr(D), as follows.
1. If D is a unitary diagram such that D =⊥ or D contains incompatible arrows or
Z(max(D)) − Z ∗ (max(D)) 6= ∅ or there is a subset, Ei , of ES(D) such that |Ei | ≥ 2
for which there is no contour label C such that ES(C, D) = Ei then maxarr(D) =
max(D).
2. If D is a unitary diagram such that D 6=⊥, the arrows of D are pairwise compatible, Z(max(D)) = Z ∗ (max(D)) and for each subset, Ei , of ES(D) such that
|Ei | ≥ 2 there is a contour label C such that ES(C, D) = Ei then maxarr(D) =
max(Arr(max(D), AL(D))).
3. Otherwise maxarr(D) = maxarr(D1 )¤maxarr(D2 ) where D = D1 ¤D2 .
A
f
ò
A
d
f
f
f
B
A
f
d
A
f
B
A
1
f
f
d
f
4
f
B
f
f
d
d
f
A
f
B
2
d
5
f
f
3
f f
B
B
Figure 4.66: A diagram with its associated maximal arrow diagram.
Example 4.7.17 The maximal arrow diagram associated with d in figure 4.66 is d1 t d2 t
d3 t d4 t d5 . To obtain d1 t d2 t d3 t d4 t d5 from d we apply rule 13 (excluded middle
for arrows) to d then maximize each of the unitary components. Notice that d1 and d2
are identical. One of d1 and d2 arises from d + {(f, e, ∅)}, the other from d + {(f, e, B)},
where e is the spider in d that is not the source of an arrow.
243
Lemma 4.7.24 Let D be an α-diagram. Then D ≡` maxarr(D).
Proof Follows from the fact that any diagram is syntactically equivalent to its maximal
form and from lemma 4.7.23. QED
Lemma 4.7.25 Let d1 (6=⊥) be a unitary β-diagram in maximal form such that Z(d1 ) −
Z ∗ (d1 ) = ∅ and for each subset, Ei , of ES(d1 ) for which |Ei | ≥ 2 there is a contour label
A such that ES(A, d1 ) = Ei . Let d2 be a unitary β-diagram in reduced form such that
d1 ² d2 and Z(d1 ) = Z(d2 ). Then AL(d1 ) ⊇ AL(d2 ).
Proof The proof is by contradiction. Let m = (ES(d1 ), Ψ, φ) be the standard model for
d1 . Firstly we note that for any l ∈ AL − AL(d1 ) we have φ(l) = ∅. Since m |= d2 , any
arrow in A(d2 ) with a label not in d1 must have an empty hit. Suppose that (l, s, t) is such
an arrow. Since d2 is in reduced form, there is at least one existential spider in d2 (either
s is an existential spider, or s is cohabiting with an existential spider). Next, define
φ0 : AL → P(ES(d1 ) × ES(d1 ))
by
φ0 (l) = φ(l) ∪ {(e, e) : e ∈ ES(d1 )}
(φ0 (l) is the diagonal subset of ES(d1 ) × ES(d1 )) and for each l1 ∈ AL − {l},
φ0 (l1 ) = φ(l1 ).
Then interpretation m0 = (ES(d), Ψ, φ0 ) satisfies d1 since l 6∈ AL(d1 ). Since d1 ² d2 it
follows that m0 |= d2 . Therefore there exists a valid extension of Ψ : R → PES(d1 ) to
Ψ : R ∪ ES(d2 ) → PES(d1 ) in m0 . Let Ψ2 be such an extension. Now, since d2 is a
β-diagram, in any interpretation that satisfies d2 , Ψ(t) = ∅ ((l, s, t) has an empty hit).
Suppose now that s is an existential spider. Then Ψ2 (s).φ0 (l) = ∅. But Ψ2 (s).φ0 (l) =
Ψ2 (s), which is a contradiction. Therefore s is a universal spider. Since d2 is in reduced
form, there is an existential spider cohabiting with s, e1 say. Then it can also be shown that
Ψ2 (e1 ).φ0 (l) 6= ∅ which is, again, a contradiction. Hence the assumption that l 6∈ AL(d1 )
must be false. Therefore AL(d1 ) ⊇ AL(d2 ). QED
Theorem 4.7.9 Let d1 (6=⊥) be a unitary β-diagram whose arrows are pairwise compatible such that Z(max(d1 )) − Z ∗ (max(d1 )) = ∅ and for each subset, Ei , of ES(d1 ) for
which |Ei | ≥ 2, there is a contour label A such that ES(A, d1 ) = Ei . Let d be a unitary component of maxarr(d1 ). Let d2 be a unitary β-diagram in reduced form such that
244
d1 ² d2 and Z(d1 ) = Z(d2 ). Then every zone in d2 contains at most the same number
of existential spiders as in d and every arrow in d2 occurs in d: there exists an injection
σ : ES(d2 ) → ES(d) such that
∀ e ∈ ES(d2 ) • ηd2 (e) = ηd (σ(e))
and the injective function
γ : A(d2 ) → AL × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅})
induced by σ defined by
(l, σ(s), σ(t)),
(l, σ(s), t),
γ(l, s, t) =
(l, s, σ(t)),
(l, s, t),
if
if
if
if
s, t ∈ ES(d2 )
s ∈ ES(d2 ) and t ∈ L(d2 ) ∪ {∅}
s ∈ Z(d2 ) and t ∈ ES(d2 )
s ∈ Z(d2 ) and t ∈ L(d2 ) ∪ {∅}
satisfies im(γ) ⊆ A(d).
Proof We know that d1 ² d2 implies maxarr(d1 ) ² d2 , since d1 ≡ maxarr(d1 ). Let d be
a unitary component of maxarr(d1 ). Then d ² d2 and by lemma 4.7.22, d is satisfiable.
Let m = (ES(d), Ψ, φ) be the standard model for d. Then m |= d so m |= d2 . Define,
for each e ∈ ES(d), Ψd (e) = {e}. This is a valid extension to existential spiders for d.
Let Ψ2 : R ∪ ES(d2 ) → PES(d) be a valid extension to existential spiders for d2 . Define
σ : ES(d2 ) → ES(d) by σ(e) ∈ Ψ2 (e) for each e ∈ ES(d2 ). The function σ is injective and
habitat preserving. We now show that the function γ induced by σ satisfies im(γ) ⊆ A(d).
Let (l, s, t) ∈ A(d2 ). There are six cases.
1. s, t ∈ ES(d2 ). From the existential arrows condition for d2 we have
{σ(s)}.φ(l) = {σ(t)}
so
Ψd (σ(s)).φ(l) = Ψd (σ(t)).
Now, in d, each existential spider is the source of an arrow with label l. Suppose σ(s)
is the source of (l, σ(s), t1 ). Then, by the existential arrows condition for d it follows
that Ψd (σ(t)) = Ψd (t1 ). If t1 is an existential spider then t1 = σ(t), so γ(l, s, t) ∈
A(d). If t1 is not an existential spider then Ψd (t) = ES(t, d) = {σ(t)}. Since d is
maximal and entirely shaded, (l, σ(s), σ(t)) is also in d, that is γ(l, s, t) ∈ A(d).
245
2. s ∈ ES(d2 ) and t ∈ L(d2 ) such that ES(t, d2 ) 6= ∅. From the existential arrows
condition for d2 we have
{σ(s)}.φ(l) = Ψ(t)
so
Ψd (σ(s)).φ(l) = Ψ(t).
Now, in d, each existential spider is the source of an arrow with label l. Suppose
σ(s) is the source of (l, σ(s), t1 ). Then, by the existential arrows condition for d,
Ψ(t) = Ψd (t1 ). If t1 is an existential spider then {t1 } = ES(t, d1 ). Since d1 is
maximal and entirely shaded, γ(l, s, t) ∈ A(d). If t1 is not an existential spider then
the symmetric difference of t and t1 is untouched. Since d is maximal and entirely
shaded, (l, σ(s), t) is also in d, that is γ(l, s, t) ∈ A(d).
3. s ∈ ES(d2 ) and t ∈ L(d2 ) ∪ {∅} such that ES(t, d2 ) = ∅. By lemma 4.7.25, l ∈
AL(d1 ). So σ(s) is the source of an arrow with label l and empty hit in d. Now
Ψ(t) = ∅ in any interpretation that satisfies d2 , so ES(t, d1 ) = ∅. Since d is maximal,
(l, σ(s), t) ∈ A(d1 ), that is γ(l, s, t) ∈ A(d1 ).
4. s ∈ Z(d2 ) and t ∈ ES(d2 ). From the universal arrows condition for d2 it is the case
that
∀x ∈ Ψ(s) • {x}.φ(l) = Ψ2 (t).
Therefore
∀x ∈ ES({s}, d) • {x}.φ(l) = Ψd (σ(t)).
Since d is maximal, each existential spider inhabiting s is the source of an arrow
with label l and hit {σ(t)} in d. Furthermore, we deduce that each such existential
spider must be the source of an arrow with label l and target σ(t) since d is entirely
shaded. Now the diagram d2 is in reduced form and is a β-diagram, so at least one
existential spider inhabits s in d2 . Thus at least one existential spider inhabits s in
d and it follows that (l, s, σ(t)) is in d.
5. s ∈ Z(d2 ) and t ∈ L(d2 ) such that ES(t, d2 ) 6= ∅. From the universal arrows
condition for d2 , that
∀x ∈ Ψ(s) • {x}.φ(l) = Ψ(t).
Therefore
∀x ∈ ES({s}, d) • {x}.φ(l) = Ψ(t).
246
Since d is maximal, each existential spider inhabiting s is the source of an arrow
with label l and hit ES(t, d) in d. Furthermore, we deduce that each such existential
spider is the source of an arrow with label l and target t since d is entirely shaded.
Now the diagram d2 is in reduced form and is a β-diagram, so at least one existential
spider inhabits s in d2 . Thus at least one existential spider inhabits s in d and it
follows that (l, s, t) is in d.
6. s ∈ Z(d2 ) and t ∈ L(d2 ) ∪ {∅} such that ES(t, d2 ) = ∅. Every existential spider
inhabiting {s} in d is the source of an arrow with label l and empty hit. The
argument to show (l, s, t) is in d is similar to case 5.
Therefore im(γ) ⊆ A(d). QED
Theorem 4.7.10 Let d1 (6=⊥) be a unitary β-diagram whose arrows are pairwise compatible such that Z(max(d1 )) − Z ∗ (max(d1 )) = ∅ (that is, all the zones are shaded) and
for each subset, Ei , of ES(max(d1 )) for which |Ei | ≥ 2, there is a contour label A such
that ES(A, max(d1 )) = Ei . Let d2 be a unitary β-diagram such that Z(d1 ) = Z(d2 ). The
following three statements are equivalent.
(1) d1 ` d2 .
(2) d1 ² d2 .
(3) For all unitary components, d, of maxarr(d1 ) the following hold:
(a) every shaded zone in red(d2 ) contains the same number of existential spiders
in both diagrams:
∀ z ∈ Z ∗ (red(d2 )) • |ES({z}, red(d2 ))| = |ES({z}, d)|
and
(b) every zone in red(d2 ) contains at most the same number of existential spiders as in d and every arrow in red(d2 ) occurs in d: there exists an injection
σ : ES(red(d2 )) → ES(d) such that
∀ e ∈ ES(red(d2 )) • ηred(d2 ) (e) = ηd (σ(e))
and the injective function
γ : A(red(d2 )) → AL × (ES(d) ∪ Z(d)) × (ES(d) ∪ L(d) ∪ {∅})
247
induced by σ defined by
(l, σ(s), σ(t))
(l, σ(s), t)
γ(l, s, t) =
(l, s, σ(t))
(l, s, t)
if
if
if
if
s, t ∈ ES(red(d2 ))
s ∈ ES(red(d2 )) and t ∈ L(red(d2 )) ∪ {∅}
s ∈ Z(red(d2 )) and t ∈ ES(red(d2 ))
s ∈ Z(red(d2 )) and t ∈ L(red(d2 )) ∪ {∅}.
satisfies im(γ) ⊆ A(d)).
Proof
1. (1) ⇒ (2) Follows by soundness.
2. (2) ⇒ (3). We prove, for each d in maxarr(d1 ), ¬(3a) ⇒ ¬(2) and (2) ⇒ (3b) which
is equivalent to
i. ¬3(a) ⇒ ¬(d1 ² d2 ) and
ii. (2) ⇒ (3b).
i. ¬3(a) ⇒ ¬(d1 ² d2 ). Suppose there exists a shaded zone, z, in red(d2 ) such
that |ES({z}, red(d2 ))| 6= |ES({z}, d)|. Let m = (U, Ψ, φ) be any interpretation
satisfying d such that
|Ψ(z)| = |ES({z}, d)|,
for example, the standard model for d. Suppose there exists an extension of
Ψ : R → PU to Ψ : R ∪ ES(red(d2 )) → PU that satisfies the spiders condition
and the strangers condition for red(d2 ). Then, with such an extension
¯
¯
[
¯
¯
¯
|Ψ(z)| ≥ ¯
Ψ(e)¯¯ = |ES({z}, red(d2 ))|
e∈ES({z},red(d2 ))
and
¯
¯
|Ψ(z)| ≤ ¯¯
¯
¯
Ψ(e)¯¯ = |ES({z}, red(d2 ))|.
[
e∈ES({z},red(d2 ))
Therefore
|Ψ(z)| = |ES({z}, red(d2 ))| 6= |ES({z}, d)|
which is a contradiction, so m 6|= d2 . Now m models d1 so ¬3(a) ⇒ ¬(d1 ² d2 ).
ii. (2) ⇒ (3b). If (2) holds then d ² red(d2 ). Then, by theorem 4.7.9, (2) ⇒ (3b).
Hence (2) implies (3).
248
3. (3) ⇒ (1). Let d be a unitary component of maxarr(d1 ). Erase the shading from the
region Z ∗ (d) − Z ∗ (red(d2 )) in d by applying rule 23 (erasure of shading), yielding
d3 . Delete each arrow in d3 that is not in im(γ), yielding d4 . Any shaded zone
in red(d2 ) contains the same number of spiders in d, by 3(a), and therefore in d4 .
Any zone that is not shaded in red(d2 ) contains fewer spiders in red(d2 ) than in d,
by 3(b), and therefore in d4 . Erase all spiders in d4 that are not in im(σ) (such
spiders do not inhabit shaded zones and are not the sources or targets of arrows)
using rule 24 (erasure of a spider), yielding d5 . Diagram d5 is isomorphic to red(d2 ).
To summarize, we have
d ` d5
` red(d2 ) by rule 1 (isomorphic diagrams)
` d2 .
By the rule of construction, maxarr(d1 ) ` d2 , so d1 ` d2 . Hence (3) implies (1).
Therefore all three statements are equivalent. QED
It follows that, whenever we have two unitary β-diagrams, d1 and d2 with the same
zone sets such that d1 ² d2 , we know that d1 ` d2 . We now sketch how we will use this
result to prove that the system is complete. In figure 4.67, some steps in the completeness
proof we will give are illustrated. Suppose we have D1 ² D2 . Firstly we will introduce
contours to the unitary parts of D1 and D2 (using the reversible rule 3, introduction of
a contour label) until each unitary part has the same contour label set, giving D1L and
D2L respectively. Next, we introduce zones to the unitary parts of D1L and D2L (using the
reversible rule 4, introduction of a shaded zone) until all unitary parts have the same zone
sets, giving D1Z and D2Z respectively. Next we split all the spiders in D1Z and D2Z (using
the reversible rule 11, splitting spiders) until we get α-diagrams, giving D1α and D2α . Now
we have α-diagrams where each unitary part has the same zone sets. To remove the ‘ands’
we use rule 14 (disjunctifying unitary α-diagrams) and other reversible rules, giving D1∗
and D2∗ respectively. We wish to change these two α-diagrams into β-diagrams. To do
this, we apply the excluded middle for regions rule, giving D1β and D2β respectively.
In the spider diagram system, after obtaining D1α and D2α , the next step was to compare
the spiders and shading between D1α and D2α , and we applied the excluded middle for
regions rule until there were enough spiders and sufficient shading on the left hand side,
so that we could erase spiders and shading from each unitary part to give a unitary part
249
D
1
a d d c o n to u rs
D 1L
D
1
1
D 2Z
s p lit s p id e rs
a
D
d is ju n c tify
D
*
D 1b =
1 < i< n
d
o b ta in b e ta -d ia g ra m s
i
e x t ( d i, r e d ( D
b
2
a p p ly e x c lu d e d m id d le fo r re g io n s
a n d m a x im is e
)
a p p ly e x c lu d e d m id d le fo r re g io n s
a n d m a x im is e
s p e x t ( d j) = a d d e x t ( d i, r e d ( D
d j Î c o m p ( e x t ( d i, r e d ( D b 2 ) )
a r r e x t ( d i, r e d ( D
2
b
2
D 2L
a d d z o n e s
D 1Z
D
D
2
b
2
2
a
*
D 2b
re d u c e
r e d ( D 2b )
))
a p p ly e x c lu d e d m id d le fo r a rro w s
a n d m a x im is e
))
Figure 4.67: The completeness proof strategy.
on the right hand side. To finish the proof, we may need to add (using the spider diagram
rule 6, connecting a diagram) or remove (using the spider diagram rule 8, t-idempotency)
unitary parts from the left hand side to give D2α .
For constraint diagrams, the next step we take is to reduce D2β (i.e. remove all the
universal arrows that do not cohabit with an existential spider), giving red(D2β ). Now,
we must introduce spiders, shading and arrows to D1β until we can be sure that, for
each unitary part on the left hand side we only need to erase elements to give a unitary
part of red(D2β ). We will elaborate on the details later, but the process is illustrated in
figure 4.67. We will define the diagrams we need to obtain from D1 to ensure that each
unitary part, d1 , semantically entails a unitary part, d2 , of red(D2β ). This will allow us
250
to use the completeness result for unitary β-diagrams to obtain d2 from d1 . Then it is
simply a case of adding unitary parts (using rule 15, connecting a diagram) or removing
unitary parts (using rule 17, t-idempotency) from the left hand side to give red(D2β ).
Since red(D2β ) ≡` D2 , it will then follow that D1 ` D2 .
4.7.6
Associated contour diagrams
We now define a contour diagram associated with a constraint diagram. All the unitary
parts in a contour diagram have the same contour label sets.
Definition 4.7.10 Let L be a finite subset of CL. Given L, for any unitary diagram,
d (6=⊥), such that L ⊇ L(d), a contour diagram associated with d, denoted dL , is
any unitary diagram such that L = L(dL ) and d ≡` dL . If d =⊥ then the only contour
diagram associated with d is ⊥.
Let D = D1 ¤D2 (¤ ∈ {u, t}) be any constraint diagram such that L ⊇ L(D). Given L, a
contour diagram associated with D is DL = D1L ¤D2L where D1L and D2L are contour
diagrams associated with D1 and D2 respectively.
A
B
g
f
B
d
f
A
A
g
B
d
C
1
g
f
d
C
2
Figure 4.68: A diagram with two associated contour diagrams.
Example 4.7.18 The set L = {A, B, C} is a finite subset of CL. Given L, the diagram
d in figure 4.68 has (among others) associated contour diagrams d1 and d2 . The diagram
d1 is obtained by introducing C to d whereas the diagram d2 is obtained by converting d
to Venn form and then introducing C.
We see that, as with spider diagrams, associated contour diagrams are not unique
(even up to isomorphism).
Theorem 4.7.11 Let L be a finite subset of CL and let D be any diagram such that
L ⊇ L(D). Given L, there exists a contour diagram, DL , associated with D and for any
such DL , D ≡` DL .
Proof The proof is similar to the proof of theorem 2.6.2. QED
251
4.7.7
Associated zone diagrams
We now define a zone diagram associated with a constraint diagram. In a zone diagram,
all the unitary parts have the same zone sets. Recall that comp(D) is the set of all unitary
components of diagram D.
Definition 4.7.11 Let Z be a finite subset of Z such that
∀(a1 , b1 ), (a2 , b2 ) ∈ Z • a1 ∪ b1 = a2 ∪ b2 .
Given Z, for any unitary diagram, d (6=⊥), such that Z ⊇ Z(d) the zone diagram
associated with d, denoted dZ , is the unitary diagram defined as follows.
1. The zones of dZ are those of d together with those in Z: Z(dZ ) = Z(d) ∪ Z = Z.
2. The shaded zones of dZ are those of d together with those in Z that are not in d:
Z ∗ (dZ ) = Z ∗ (d) ∪ (Z − Z(d)).
3. The spiders match: ES(d) = ES(dZ ) and ηd = ηdZ .
4. The arrows match: A(d) = A(dZ ).
If d =⊥ then the zone diagram associated with d is ⊥.
Let D = D1 ¤D2 (¤ ∈ {u, t}) be any constraint diagram such that, for each d in comp(D)
Z ⊇ Z(d) or d =⊥. Given Z, the zone diagram associated with D is DZ = D1Z ¤D2Z
where D1Z and D2Z are the zone diagrams associated with D1 and D2 respectively.
A
f
f
B
d
A
B
d
1
2
Figure 4.69: A diagram with an associated zone diagram.
Example 4.7.19 The zone set Z = {(∅, {A, B}), ({A}, {B}), ({B}, {A}), ({A, B}, ∅)} is
a finite subset of Z. Given Z, the diagram d1 in figure 4.69 has associated zone diagram
d2 . The diagram d2 is obtained by introducing zone ({A, B}, ∅) to d1 .
Given a zone set, associated zone diagrams are unique.
252
Theorem 4.7.12 Let Z be a finite subset of Z such that
∀(a1 , b1 ), (a2 , b2 ) ∈ Z • a1 ∪ b1 = a2 ∪ b2 .
Let D be any diagram such that for each d in comp(D), Z ⊇ Z(d) or d =⊥. Given Z, let
DZ be the zone diagram associated with D. Then D is syntactically equivalent to DZ .
Proof The proof is similar to that of theorem 2.6.3. QED
4.7.8
Associated α-diagrams
We now define associated α-diagrams. These diagrams are obtained by splitting all the
spiders. Firstly we define α-subdiagrams.
Definition 4.7.12 Let d1 be a unitary constraint diagram and let d2 be a unitary αdiagram. If
1. d1 6=⊥ and
2. Z(d1 ) = Z(d2 ) and
3. Z ∗ (d1 ) = Z ∗ (d2 ) and
4. ES(d1 ) = ES(d2 ) and ∀e ∈ ES(d1 ) • ηd1 (e) ⊇ ηd2 (e) and
5. A(d1 ) = A(d2 )
then d2 is an α-subdiagram of d1 , denoted d2 vα d1 . If d1 =⊥ then the only αsubdiagram of d1 is ⊥.
A
f
A
d
B
f
d
B
1
2
Figure 4.70: An α-subdiagram of d1 .
Example 4.7.20 In figure 4.70 the diagram d2 is an α-subdiagram of d1 . Furthermore,
by applying rule 25 (adding feet to an existential spider) twice we see that d1 is obtainable
from d2 .
253
Lemma 4.7.26 Let d1 be a unitary diagram and let d2 be a unitary α-diagram. If d2 vα
d1 then d2 ` d1 .
Proof Follows by repeated application of rule 25 (adding feet to an existential spider) in
the case where d1 6=⊥. When d1 =⊥ the result is trivial. QED
Definition 4.7.13 Let D be a constraint diagram.
1. If D is a unitary diagram we define DαD = {d0 ∈ D0 : d0 vα D}, the set of all
α-subdiagrams of D. Then the diagram
α
d0
D=
D
d0 ∈Dα
is the α-diagram associated with D.
2. If D = D1 ¤D2 for some D1 , D2 ∈ D+ and ¤ ∈ {u, t} then the diagram α D1 ¤ α D2
is the α-diagram associated with D where
αD
1
and
αD
2
are the α-diagrams
associated with D1 and D2 respectively.
B
A
f
f
A
d
B
A
ò
f
d
f
B
A
d
1
B
f
3
d
A
a D
d
2
B
4
Figure 4.71: A unitary diagram with its associated α-diagram.
Example 4.7.21 The diagram d in figure 4.71 has associated α-diagram α D = d1 t d2 t
d3 t d4 . These two diagrams are syntactically equivalent. This equivalence is established
by splitting the spiders in d.
Example 4.7.22 The diagram d5 in figure 4.72 is an α-subdiagram of d1 . We can create
d5 from d1 by applying the splitting spiders rule. Firstly we ‘split off’ the foot of e1 that is
in the zone ({A}, {B}). From the diagram d2 we can now create d5 by splitting off a foot
of e2 . We see from this example, that to create an α-subdiagram of a unitary diagram we
can apply the splitting spiders rule once for each spider with more than one foot. We will
use this technique (of splitting off chosen spider feet) in the proof of the next lemma.
254
f
A
e
f
A
B
1
d
e
e
1
d
1
2
d
2
A
B
1
d
f
B
e
e
2
e
f
A
B
e
2
3
f
A
e
e
1
B
e
1
2
4
d
f
A
B
e
2
5
d
1
e
2
3
Figure 4.72: Creating an α-subdiagram.
Lemma 4.7.27 Let d be a unitary diagram and D be the α-diagram obtained from d by
splitting all spiders in d until all the spiders have exactly one foot (this requires applying rules 11 (splitting spiders) and 21 (t-simplification) repeatedly to d until no further
applications of rule 11 are possible). Then Dαd = comp(D).
Proof The proof is similar to that for lemma 2.6.3. QED
Lemma 4.7.28 Let d be a unitary diagram and let α D be the α-diagram associated with
d. Then d ≡`
α D.
Proof The proof is similar to the proof of lemma 2.6.4. QED
We now extend this result to all constraint diagrams.
Theorem 4.7.13 Let D be a constraint diagram and let α D be the α-diagram associated
with D. Then D ≡`
α D.
Proof The proof is similar to the proof of theorem 2.6.4. QED
4.7.9
Disjunctifying α-diagrams
We know, from the previous sections, that we can replace any diagram by a syntactically
equivalent α-diagram, where each unitary component has the same zone set or is false. As
for spider diagrams we wish to identify, for any such α-diagram, a semantically equivalent
diagram that is a disjunction of unitary α-diagrams. Recall that for diagram d1 ud2 , where
Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥, the set DIS(d1 , d2 ) contains all the disjunctifications
of d1 and d2 .
255
Definition 4.7.14 Let D be an α-diagram such that each pair of unitary components,
d1 , d2 ∈ comp(D), satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. A disjunctified diagram
associated with D, denoted D∗ , is defined as follows.
[i] If D ∈ D0 then D∗ = D.
[ii] If D = D1 t D2 then
D∗ = D1∗ t D2∗
where D1∗ and D2∗ are disjunctified diagrams associated with D1 and D2 respectively.
[iii] If D = D1 u D2 then
D∗ =
D0
D0 ∈D
where D is any set of diagrams such that there exists a bijection
δ : D → {DIS(di , dj ) : di ∈ comp(D1∗ ) ∧ dj ∈ comp(D2∗ )}
satisfying
∀D0 ∈ D • D0 ∈ δ(D0 ).
Any disjunctified diagram is a disjunction of unitary α-diagrams.
Theorem 4.7.14 Let D be an α-diagram such that each pair of unitary components,
d1 , d2 ∈ comp(D), satisfy Z(d1 ) = Z(d2 ) or d1 =⊥ or d2 =⊥. Let D∗ be a disjunctified
diagram associated with D. Then D ≡` D∗ .
Proof The proof is similar to that for theorem 2.6.5. QED
4.7.10
Associated β-diagrams
So far, we are able to transform any constraint diagram into a disjunction of unitary
α-diagrams. We now show that we can replace such a disjunction by a disjunction of
β-diagrams. We will use the idea of a β-superdiagram.
Definition 4.7.15 Let d1 be a unitary α-diagram and d2 be a β-diagram. If the arrows
of d1 are pairwise compatible, d1 6=⊥, Z(d1 ) = Z(d2 ) and the following conditions hold
then d2 is a β-superdiagram of d1 , denoted d1 vβ d2 .
1. Every zone, z, that is shaded in d1 is shaded in d2 and if z is not shaded and contains
spiders in d1 then z is not shaded in d2 .
256
2. Every zone that is either shaded or contains a spider in d1 contains the same number
of existential spiders in d2 .
3. Every zone that contains no spiders and is not shaded in d1 contains either a single
existential spider and no shading or shading and no existential spiders in d2 .
4. Every arrow in d1 is an arrow in d2 and d2 contains no other arrows.
If d1 contains incompatible arrows or d1 =⊥ then the β-superdiagram of d1 is ⊥.
Lemma 4.7.29 Let d1 be a unitary α-diagram and d2 be a β-diagram. If d1 vβ d2 then
d2 ` d1 .
We now use the concept of a β-superdiagram to define associated β-diagrams.
Definition 4.7.16 Let D be a disjunction of unitary α-diagrams.
1. If D is a unitary diagram we define DβD = {d0 ∈ D0 : D vβ d0 }, the set of all
β-superdiagrams of D. Define also Dβ to be any subset of DβD such that for each
diagram, d, in DβD there is a unique diagram in Dβ that is isomorphic to d. Then
the diagram
Dβ =
d0
d0 ∈Dβ
is a β-diagram associated with D where
2. If D = D1 t D2 for some D1 , D2 ∈ D+ then the diagram Dβ = D1β t D2β is a βdiagram associated with D where D1β and D2β are β-diagrams associated with D1
and D2 respectively.
Example 4.7.23 Diagram d in figure 4.73 has associated β-diagram dβ = d1 td2 td3 td4 .
Diagram d is syntactically equivalent to dβ . This equivalence can be established by three
applications of rule 12 (excluded middle for regions), along with rule 21 (t-simplification).
Lemma 4.7.30 Let D be a constraint diagram. Let
d
and
d∈Dβ1
d
d∈Dβ2
be two β-diagrams associated with D. Then
d∈Dβ1
d ≡`
257
d.
d∈Dβ2
ò
A
B
d
B
A
f
d
f
B
A
d
1
B
A
d
f
A
2
f
3
b
d
d
B
f
4
Figure 4.73: An α-diagram with an associated β-diagram.
Proof Follows from the fact that there exists a bijection, δ : Dβ1 → Dβ2 such that δ(d) ∼
=d
for all d in Dβ1 . QED
Lemma 4.7.31 Let d be a unitary α-diagram and dβ be a β-diagram associated with d.
Then d and dβ are syntactically equivalent.
Proof The proof is similar to that given by Molina in [44] for a similar result in the SD2
system. QED
Theorem 4.7.15 Let D be a disjunction of unitary α-diagrams and Dβ be a β-diagram
associated with D. Then D is syntactically equivalent to Dβ .
4.7.11
Extended diagrams
In the spider diagram system we defined the extended diagram associated with unitary
diagram d in the context of diagram D, ext(d, D). This definition ensured that if d ² D,
then for each unitary component of ext(d, D), say e d, there was a unitary component
of D, say d0 , such that e d ² d0 . For constraint diagrams this will no longer be the
case. However, we still define ext(d, D) for constraint diagrams. The definition of e d
will guarantee sufficient shading and spiders are present so that, if there are no arrows
present, e d can be transformed into some unitary component of D.
The process of constructing ext(d, D) is similar to the process for spider diagrams – the
existential spiders and shading to be added are determined by D, then we will maximize
each unitary component.
258
A
A
f
A
f
d
d
d
1
A
g
d
A
A
A
f
d 1'
f
d 4'
A
D
3
A
f
d 2'
f
A
f
d 5'
2
d 3'
f
d 6'
e x t( d ,D )
Figure 4.74: A β-diagram and an extended diagram.
Example 4.7.24 The diagram D in figure 4.74 is a semantic consequence of d but no
unitary component of D is a semantic consequence of d. The diagram ext(d, D) can be obtained from d by applying rules 12 (excluded middle for regions) and 21 (t-simplification).
In this example the diagrams obtained by applying these rules are already in maximal form.
Note that we have
d01 ² d1 ∧ d02 ² d2 ∧ d03 ² d1 ∧ d04 ² d1 ∧ d05 ² d2 ∧ d06 ² d2 .
That is, for each unitary component, d0i , of ext(d, D) there exists a unitary component,
dj , of D such that
d0i ² dj .
Diagram d3 is not a logical consequence of any d0i in ext(d, D) but d1 t d2 ` d1 t d2 t d3 .
By theorem 4.7.8, d0i ` dj . Thus
d01 t d03 t d04 ` d1
∧
259
d02 t d05 t d06 ` d2
by the rule of construction. Therefore
ext(d, D) ` d1 t d2
by the rule of replacement. By rule 15 (connecting a diagram) d1 t d2 ` D and by
transitivity
ext(d, D) ` D = d1 t d2 t d3 .
Therefore d ` D, since d ≡` ext(d, D).
The diagram ext(d, D) will be obtained from d by first applying the excluded middle
for regions rule and then maximizing each component. Maximizing has the effect that
any unsatisfiable diagram is replaced by ⊥. In the next definition we wish to refer to the
largest integer in a set, so we define maxint(N ) to be the largest integer in the set N and
define maxint(∅) = 0.
Definition 4.7.17 Let d and e d be a unitary β-diagrams and let D be a β-diagram. Suppose d 6=⊥ and the arrows of d are pairwise compatible. Given D, e d is an extended
e d, if and only if the following
unitary component associated with d, denoted d vD
e
hold.
1. The diagrams d and e d have the same zones: Z(d) = Z( e d).
2. All shading in d occurs in e d: Z ∗ (d) ⊆ Z ∗ (e d).
3. All spiders in d occur in e d: ηd ⊆ ηe d .
4. If a zone z is shaded in d then the spiders match: ∀ z ∈ Z ∗ (d) • ES({z}, d) =
ES({z}, e d).
5. If a zone, z, is not shaded in d but is shaded in some unitary component of D and
the number of spiders that z contains in d is at most the number that z contains in
any unitary component of D in which z is shaded, say n spiders, then:
(a) if z is shaded in e d then z contains at most n spiders in e d
(b) and, if z is not shaded in e d then z contains n + 1 spiders in e d.
More formally:
∀ z ∈ Z(d) − Z ∗ (d) •
260
µ
z∈
S
Z ∗ (d
i)
∧ |ES({z}, d)| ≤ maxint(
di ∈comp(D)
µ³
z ∈ Z ∗ (e d) ∧ |ES({z},e d)| ≤ maxint(
¶
{|ES({z}, di )|}) ⇒
S
di ∈comp(D)
z∈Z ∗ (di )
´
{|ES({z}, di )|}) ∨
S
di ∈comp(D)
z∈Z ∗ (di )
³
z ∈ Z(e d) − Z ∗ (e d) ∧ |ES({z},e d)| = maxint(
´¶
{|ES({z}, di )|}) + 1) .
S
di ∈comp(D)
z∈Z ∗ (di )
6. If a zone z is not shaded in any unitary component of D or z contains more spiders
in d than any shaded occurrence of z in D then z is not shaded in e d and z contains
the same number of spiders in e d as in d. More formally:
∀ z ∈ Z(d) − Z ∗ (d) •
µ
S
z 6∈
Z ∗ (di ) ∨ ES({z}, d) > maxint(
di ∈comp(D)
S
¶
{|ES({z}, di )|}) ⇒
di ∈comp(D)
z∈Z ∗ (di )
µ
¶
e
∗
e
e
z ∈ Z( d) − Z ( d) ∧ ES({z}, d) = ES({z}, d) .
7. The arrows match: A(d) = A(e d).
If d =⊥ then the extended unitary component associated with d is ⊥.
Definition 4.7.18 Let d be a unitary β-diagram and let D be a β-diagram. Given D,
define
0
Ded = {d0 ∈ D0 : d vD
e d },
the set of all extended unitary components associated with d. Define also De to be any
subset of such that Ded such that for each unitary diagram, d1 , in Ded there exists a unique
diagram in De that is isomorphic to d1 . Then, given D, the diagram
max(d0 )
ext(d, D) =
d0 ∈De
is an extended diagram associated with d.
Lemma 4.7.32 Let d be a unitary β-diagram and let D be a β-diagram. Let ext1 (d, D)
and ext2 (d, D) be extended diagrams associated with d, given D. Then
ext1 (d, D) ≡` ext2 (d, D).
Proof The proof is similar to the proof of lemma 4.7.30. QED
We now show, given any β-diagram D and any unitary β-diagram d, that d is syntactically equivalent to ext(d, D).
261
Lemma 4.7.33 Let d be a unitary β-diagram and let D be a β-diagram. Let ext(d, D)
be an extended diagram associated with d, given D. Then d is syntactically equivalent to
ext(d, D).
Proof (Sketch) If d =⊥, the result is trivial. Alternatively, the result follows by repeated
application of rules 12 (excluded middle for regions) and 21 (simplification 1) to d and by
lemma 4.7.32, then maximizing the resulting diagram. QED
4.7.12
Spider extended diagrams
Given two diagrams that satisfy D1 ² D2 , we are aiming to show that we can find syntactically equivalent β-diagrams for each of D1 and D2 such that each unitary diagram
on the left hand side semantically entails a unitary diagram on the right hand side. For
D2 , this diagram is the reduced form of an associated β-diagram. For D1 , we will call this
diagram an arrow-extended diagram of D1 . In theorem 4.7.16 below (page 268) we will
prove that each unitary component of the arrow extended diagram semantically entails a
unitary component of the reduced form of the β-diagram obtained from D2 .
In the proof of theorem 4.7.16 we wish to argue that, in D1 , if all the existential spiders
inhabiting a non-shaded zone are sources of arrows with the same label and same hits,
then those spiders are cohabiting with a universal spider with that label and that hit. We
also wish to ensure that, whenever we have a non-shaded zone, we can find a subset, E,
of ES(d) such that |E| ≥ 2 where no contour label, A, satisfies ES(A, d) = E. As such,
we take each maximized, extended unitary component associated with unitary diagram
d in the context of diagram D and add shading or up to two existential spiders to each
non-shaded zone using the excluded middle for regions rule. When we add two existential
spiders to a zone, since we started with a β-diagram, this zone is inhabited by at least
three existential spiders. For any set, E, containing two of these spiders there is no contour
label, A, that satisfies ES(A, d) = E.
Definition 4.7.19 Let d1 and d2 be a unitary β-diagrams. If max(d1 ) 6=⊥ then d2 is an
spider-extended unitary component associated with d1 , denoted d1 v d2 , if and
only if the following conditions hold.
1. The diagrams d1 and d2 have the same zones: Z(d1 ) = Z(d2 ).
2. All shading in d1 occurs in d2 : Z ∗ (d1 ) ⊆ Z ∗ (d2 ).
3. All spiders in d1 occur in d2 : ηd1 ⊆ ηd2 .
262
4. If a zone z is shaded in d1 then the spiders in z match: ∀ z ∈ Z ∗ (d1 ) • ES({z}, d1 ) =
ES({z}, d2 ).
5. If a zone, z, is not shaded in d1 then z is either shaded and contains the same number
of spiders, or is shaded and contains exactly one additional existential spider, or is
not shaded and contains exactly two additional existential spiders:
∀z ∈ Z(d1 ) − Z ∗ (d1 ) •
(ES({z}, d1 ) = ES({z}, d2 ) ∧ z ∈ Z ∗ (d2 ))∨
(|ES({z}, d1 )| + 1 = |ES({z}, d2 )| ∧ z ∈ Z ∗ (d2 ))∨
(|ES({z}, d1 )| + 2 = |ES({z}, d2 )| ∧ z 6∈ Z ∗ (d2 )).
6. The arrows match: A(d1 ) = A(d2 ).
If d1 =⊥ then the spider-extended unitary component associated with d1 is ⊥. If
a zone, z, in d2 contains an existential spider, e, that is not in d1 then e is called a new
existential spider.
A
d
A
d
A
d
A
1
2
d
3
Figure 4.75: A β-diagram and its associated spider-extended unitary components.
Example 4.7.25 The diagram d in figure 4.75 has three associated spider-extended components, namely d1 , d2 and d3 . Applying rule 12 (excluded middle to regions) to d twice
yields d1 t d2 t d3 .
Lemma 4.7.34 Let d1 (6=⊥) be a unitary β-diagram in maximal form. Let d2 be a spiderextended unitary component associated with d1 . If (l, e, t) ∈ A(max(d2 )) − A(d1 ) and
e ∈ ES(d2 ) then e is a new existential spider and t is not a new existential spider. Also,
if a new existential spider is the source of an arrow, (l, e, t) say, in max(d2 ) then there is
a universal spider, u, cohabiting with e such that (l, u, t) is in d2 .
Proof The proof is similar to that of lemma 4.7.20, parts 2, 4 and 5. QED
263
Definition 4.7.20 Let d1 be a unitary β-diagram. Define
Dsd1 = {d2 ∈ D0 : d1 v d2 },
the set of all spider-extended unitary components associated with d1 . Define also Ds to be
any subset of Dsd1 such that for each diagram, d2 , in Dsd1 there exists a unique diagram in
Ds isomorphic to d2 . Then the diagram
spext(d1 ) =
d2 ∈Ds
max(d2 )
is a spider-extended diagram associated with d1 .
Example 4.7.26 The diagram d1 t d2 t d3 in figure 4.75 is a spider-extended diagram
associated with d.
Lemma 4.7.35 Let d be a unitary β-diagram. Let spext(d) be an extended diagram associated with d. Then d is syntactically equivalent to spext(d):
d ≡` spext(d).
Proof The proof is similar to the proof of lemma 4.7.33. QED
4.7.13
Additionally extended diagrams
The next step we take is to define additionally extended diagrams. Such a diagram is obtained from ext(d, D) by replacing each unitary part by the maximal form of an associated
spider-extended diagram.
Definition 4.7.21 Let d be a unitary β-diagram and let D be a β-diagram. Given D, the
diagram
spext(d0 )
addext(d, D) =
d0 ∈comp(ext(d,D))
is an additionally-extended diagram associated with d.
We note here that any non-shaded zone in a unitary component of addext(d, D) contains at least three existential spiders. Two of these spiders are new spiders because of
the way spext(d0 ) is defined. We now show, given any β-diagram D and any unitary
β-diagram d, that addext(d, D) is syntactically equivalent to d.
Lemma 4.7.36 Let d be a unitary β-diagram and let D be a β-diagram. Given D, let
addext(d, D) be an additionally-extended diagram associated with d. Then d is syntactically
equivalent to addext(d, D):
d ≡` addext(d, D).
264
Proof From lemma 4.7.33, d ≡` ext(d, D). Each d0 ∈ comp(ext(d, D)) satisfies d0 ≡`
spext(d0 ), by lemma 4.7.35. Therefore, by corollary 4.5.1 (rule of replacement), d ≡`
addext(d, D). QED
4.7.14
Arrow extended diagrams
The final diagram we construct is called an arrow-extended diagram associated with d, given
D. This diagram is obtained from addext(d, D) by applying rule 13 (excluded middle for
arrows), introducing as many arrows as possible, whose labels are in d or D.
A
f
A
d
A
d
d
1
d 1'
A
d 2'
e x t( d ,D )
d 1 ''
d 3'
d
D
f
f
2
A
3
A
A
f
f
d
A
A
4
A
A
f
d 2 ''
A
d 4'
a r r e x t( d ,D )
d 5'
Figure 4.76: A β-diagram and an arrow-extended diagram.
Example 4.7.27 The diagram D in figure 4.76 is a semantic consequence of d but no
unitary component of D is a semantic consequence of d. The diagram d02 in ext(d, D) does
semantically entail a unitary component of D but d01 does not. We can, however, apply
rule 13 (excluded middle for arrows) to d01 . The only arrow label occurring in D is f .
Thus we apply the excluded middle for arrows rule to d01 introducing f . The diagrams
265
obtained by applying the excluded middle for arrows rule are replaced by their maximal
forms, with any repeats removed. By applying excluded middle for regions to d02 , we also
replace d02 with spext(d02 ) = d03 t d04 t d05 (so addext(d, D) = d01 t d03 t d04 t d05 ). This gives
us diagram we will call arrext(d, D).
Note that we have
d001 ² d1 ∧ d002 ² d2 ∧ d03 ² d4 ∧ d04 ² d4 ∧ d05 ² d4 .
That is, for each unitary component, d0i , of arrext(d, D) there exists a unitary component,
dj , of D such that
d0i ² dj .
By theorem 4.7.8,
d03 ` d4 ∧ d04 ` d4 ∧ d05 ` d4 .
By theorem 4.7.10
d001 ` d1 ∧ d002 ` d2 .
Therefore
arrext(d, D) ` d1 t d2 t d4
by the rule of replacement. By rule 15 (connecting a diagram) d1 t d2 t d4 ` D and by
transitivity
arrext(d, D) ` D.
Therefore d ` D, since d ≡` arrext(d, D).
We now define the set of arrow labels, AL(D), for D to be the union of the sets of
arrow labels for the unitary components of D.
Definition 4.7.22 Let d be a unitary β-diagram and let D be a β-diagram. Let addext(d, D)
be an additionally-extended diagram associated with d, given D. Let a d ∈ comp(addext(d, D)).
(a) If a d =⊥ or there exists a non-shaded zone in a d or there is a subset, E, of ES(a d)
such that |E| ≥ 2 and no contour label, A, satisfies ES(A,a d) = E then, given
D, a d is an arrow-extended unitary component associated with d, denoted
a d.
d vD
a
(b) Otherwise, given D, the maximal form of any diagram, d0 , in the set of arrow super
diagrams ASUP(a d, AL(d) ∪ AL(D)) (defined on page 241) is an arrow-extended
0
unitary component associated with d, denoted d vD
a d.
266
Definition 4.7.23 Let d be a unitary β-diagram and let D be a β-diagram. Given D,
define
0
Dad = {d0 ∈ D0 : d vD
a d },
the set of all arrow-extended unitary components associated with d. Define also Da to be
any subset of Dad such that for each diagram, d0 , in Dad there exists a unique diagram in
Da that is isomorphic to d0 . Then, given D, the diagram
d0
arrext(d, D) =
d0 ∈Da
is an arrow-extended diagram associated with d.
Example 4.7.28 The diagram arrext(d, D) in figure 4.67 is an arrow extended diagram
associated with d in the context of D.
Lemma 4.7.37 Let d be a unitary β-diagram and let D be a β-diagram. Given D, let
arrext(d, D) be an arrow-extended diagram associated with d. Then d is syntactically
equivalent to arrext(d, D).
Proof (Sketch) Since d ≡` addext(d, D), by lemma 4.7.36, and, for any di , di ≡`
max(di ), the result follows by applying rule 13 (excluded middle for arrows) and rule 21
(t-simplification). Rules 1 (isomorphic diagrams) and 17 (t-idempotency) may also be
required. QED
4.7.15
Completeness theorem
We are now in a position to prove completeness. For the first part of the proof we follow
the strategy outlined in figure 4.67. Next, we wish to add syntactic elements to D1β until
we can erase shading, spiders and arrows to change each unitary part on the left hand side
into a unitary part on the right hand side. Now, D1β is a disjunction of unitary β-diagrams,
so each unitary part of D1β semantically entails red(D2β ). If we can show each unitary part
of D1β can be transformed into red(D2β ) then it will follow that D1β can be transformed
into red(D2β ). Consider d, a unitary component of D1β . We apply reasoning rules to d,
following the strategy outlined in figure 4.77.
Now we will show that each unitary component, d1 , of arrext(d, red(D2β )) semantically
entails a unitary component, d2 , of red(D2β ). It will then follow, by the completeness result
for unitary β-diagrams, that d1 ` d2 . From this, we can deduce that arrext(d, red(D2β )) `
red(D2β ) and the completeness result will follow.
267
d
e x t( d ,r e d ( D
b
2
a p p ly e x c lu d e d m id d le fo r re g io n s
a n d m a x im is e
)
a p p ly e x c lu d e d m id d le fo r re g io n s
a n d m a x im is e
d iÎ c o m p ( e x t ( d , r e d ( D
a r r e x t( d ,r e d ( D
2
b
s p e x t ( d i) = a d d e x t ( d , r e d ( D
b
2
))
2
b
))
a p p ly e x c lu d e d m id d le fo r a rro w s
a n d m a x im is e
re d (D
))
b
2
)
Figure 4.77: The final part of the completeness proof strategy.
Theorem 4.7.16 Let d be a unitary β-diagram and let D be a reduced form β-diagram
such that for each di ∈ comp(D), Z(di ) = Z(d) or di =⊥. Given D, let a d be an arrowextended unitary component associated with d. If a d ² D then there exists a unitary
component of D, say di , such that a d ² di .
Proof Firstly we note that if a d ² D then any interpretation that satisfies a d must satisfy
one of the unitary components of D. Also note that a d = max(a d) and each di ∈ comp(D)
satisfies di = red(di ). It is trivial that if a d =⊥ then a d ² di for some di in D. Suppose
instead that a d 6=⊥. We shall consider two further cases.
(1) There is a subset, E, of ES(a d) such that |E| ≥ 2 and no contour label, A, satisfies
ES(A, a d) = E.
(2) All zones in a d are shaded and for each subset, Ei , of ES(a d) such that |Ei | ≥ 2
there exists a contour label, A, such that Ei = ES(A, a d).
These two cases exhaust the remaining possibilities for a d: if a d contains a non-shaded
zone then a d satisfies case (1) (each non-shaded zone contains at least three existential
spiders); if a d is entirely shaded then a d satisfies either case (1) or case (2). The strategy
is to assume a d ² D, construct specific interpretations that satisfy a d and, using the fact
that one of these interpretations must satisfy a unitary component of D, say di , show that
ad
² di .
(1) There is a subset, E, of ES(a d) such that |E| ≥ 2 and no contour label, A, satisfies
ES(A, a d) = E. Let E be a subset of ES(a d) such that |E| ≥ 2 and no contour
268
label, A, satisfies ES(A, a d) = E. Let m = (ES(a d), Ψ, φ) be the standard model
for a d. Define m0 = (ES(a d), Ψ, φ0 ) to be an interpretation where for each l ∈ AL,
φ0 (l) = φ(l) ∪ {(e1 , e2 ) : ES(d1 ) × E :6 ∃t • (l, e1 , t) ∈ A(a d)}.
By lemma 4.7.18, m0 satisfies a d. By assumption, m0 satisfies D. Choose a unitary
component of D, say di , such that m0 satisfies di . We show that statement 3 in
theorem 4.7.8 holds for a d and di . Statement 3(a) states:
∀z ∈ Z ∗ (di ) • z ∈ Z ∗ (a d) ∧ |ES({z}, di )| = |ES({z}, a d)|.
Suppose this is false. Then
∃z ∈ Z ∗ (di ) • z 6∈ Z ∗ (a d) ∨ |ES({z}, di )| 6= |ES({z}, a d)|.
If z 6∈ Z ∗ (a d) then z ∈ Z(a d) − Z ∗ (a d). Since z is present and not shaded in a d, it
is the case that z ∈ Z(max(d)) − Z ∗ (max(d)). By the definition of a d,
[
|ES({z}, a d)| > maxint(
{|ES({z}, dj )|})
dj ∈comp(D)∧z∈Z ∗ (dj )
(from definition 4.7.17 part 5 or 6). Now |Ψ(z)| = |ES({z},a d)| > |ES({z}, di )| =
|ET ({z}, di )| and it follows that the shading condition fails for di whenever the
spiders and strangers conditions hold, which is a contradiction. Consider now the
case where |ES({z}, di )| 6= |ES({z}, a d)|. Then one of spiders condition, strangers
condition and the shading condition will fail for di . Again this is a contradiction, so
it must be that statement 3(a) of theorem 4.7.8 holds.
Now we show that statement 3(b) holds, that is, we can map, injectively, the spiders
and arrows of di to those of a d in a structure preserving way. Since m0 satisfies di ,
there exists a valid extension of Ψ : R → PES(a d) to Ψ : R ∪ ES(di ) → PES(a d).
Choose such an extension, say Ψi . Clearly Ψi |ES(di ) defines a habitat preserving
injective map from ES(di ) to singleton subsets of ES(a d). We use this map to
define a habitat preserving injective map σ : ES(di ) → ES(a d) by
∀e ∈ ES(di ) • σ(e) ∈ Ψi (e).
We show that the arrow map, γ, induced by σ satisfies im(γ) ⊆ A(a d) and, hence,
statement 3(b) of theorem 4.7.8 holds. Firstly define for each e ∈ ES(a d), Ψa (e) =
{e} (this is a valid extension of Ψ to existential spiders in a d for both m and m0 ).
There are three existential arrows cases. Let (l, e, t) ∈ Ae (di ).
269
(i) t ∈ ES(di ). By the existential arrows condition for di we have
Ψi (e).φ0 (l) = Ψi (t),
so, since Ψi (e) = {σ(e)},
{σ(e)}.φ0 (l) = {σ(t)}
and it follows that, since Ψa (σ(e)) = {σ(e)},
Ψa (σ(e)).φ0 (l) = Ψa (σ(t)).
If σ(e) is not the source of an arrow with label l then |Ψa (σ(e)).φ0 (l)| > 1, so
σ(e) must be the source of an arrow with label l. It follows that
Ψa (σ(e)).φ0 (l) = Ψa (σ(e)).φ(l).
So
Ψa (σ(e)).φ(l) = Ψa (σ(t)).
By lemma 4.7.17 there is an arrow in a d with source σ(e), label l and target
σ(t), that is γ(l, s, t) = (l, σ(e), σ(t)) ∈ A(a d).
(ii) t ∈ L(di ) and ES(t, di ) 6= ∅. By the existential arrows condition for di we have
Ψi (e).φ0 (l) = Ψ(t),
so
{σ(e)}.φ0 (l) = Ψ(t)
and it follows that
Ψa (σ(e)).φ0 (l) = Ψ(t).
If σ(e) is not the source of an arrow labelled l then
Ψa (σ(e)).φ0 (l) =
[
Ψ1 (ej ) = E.
ej ∈E
Now
E 6= Ψ(A)
for any A ∈ ES(a d) ∪ L(a d). In particular
E 6= Ψ(t).
270
Therefore
Ψa (σ(e)).φ0 (l) = Ψa (σ(e)).φ(l).
Since Ψ(t) 6= ∅, it follows that, by lemma 4.7.17, there is an arrow in a d with
source σ(e), label l and target t, that is γ(l, s, t) = (l, σ(e), t) ∈ A(a d).
(iii) t ∈ L(di ) ∪ {∅} and ES(t, di ) = ∅. By the existential arrows condition for di we
have
Ψi (e).φ0 (l) = Ψ(t) = ∅,
so
{σ(e)}.φ0 (l) = ∅
and it follows that
Ψa (σ(e)).φ0 (l) = ∅.
Now, if σ(e) is not the source of an arrow with label l in a d then it would be
that Ψa (σ(e)).φ0 (l) 6= ∅. Therefore σ(e) is the source of an arrow with label l
and target t1 where Ψ(t1 ) = ∅. Since a d is maximal and a β-diagram it follows
that γ(l, s, t) = (l, σ(e), t) ∈ A(a d).
So far we have shown that im(γ|Ae (di ) ) ⊆ A(a d). There are three universal arrows
cases. Let (l, u, t) ∈ Au (di ).
(iv) t ∈ ES(di ). By the universal arrows condition for di we have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψi (t).
Therefore
∀x ∈ ES({u}, a d) • {x}.φ0 (l) = Ψa (σ(t)).
Since |Ψa (σ(t))| = 1 and a d is maximal, each existential spider in ES({u},a d)
is the source of an arrow with label l and hit {σ(t)} in a d and
∀x ∈ ES({u}, a d) • {x}.φ0 (l) = {x}.φ(l).
Since a d is a β-diagram in maximal form and each non-shaded zone contains at
least two existential spiders, each existential spider in ES({u},a d) is the source
of an arrow with label l and target σ(t) in a d. If u is shaded in a d and since
ad
is maximal it follows that (l, u, σ(t)) ∈ A(a d), for u contains at least one
existential spider in red(di ) and therefore in a d. Alternatively suppose that
271
u is not shaded in a d. Then, by the definition of a d, if (l, u, σ(t)) 6∈ A(a d)
then there is a new existential spider, e, in z (the new spider was introduced
when we constructed a spider extended diagram). By lemma 4.7.34, e is not
the source of an arrow with label l and target σ(t). Therefore it must be that
γ(l, u, t) = (l, u, σ(t)) ∈ A(a d).
(v) t ∈ L(di ) and ES(t, di ) 6= ∅. By the universal arrows condition for di we have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψ(t).
Therefore
∀x ∈ ES({u}, a d) • {x}.φ0 (l) = Ψ(t).
Similarly to case (ii) we deduce
∀x ∈ ES({u}, a d) • {x}.φ0 (l) = {x}.φ(l) = Ψ(t).
Since Ψ(t) 6= ∅ it follows that, for each x ∈ ES({u},a d) there is an arrow with
source x, label l and target t. Similarly to case (iv) we deduce γ(l, u, t) =
(l, u, t) ∈ A(a d).
(vi) t ∈ L(di ) ∪ {∅} and ES(t, di ) = ∅. By the universal arrows condition for di we
have
∀x ∈ Ψ(u) • {x}.φ0 (l) = Ψ(t) = ∅.
Therefore
∀x ∈ ES({u}, a d) • {x}.φ0 (l) = ∅.
Thus all existential spiders inhabiting ES({u}, a d) must be sources of arrows
with label l and empty hit. Therefore
∀x ∈ ES({u}, a d) • {x}.φ(l) = ∅.
Since a d is maximal and a β-diagram, all such existential spiders must be sources
of arrows with label l and target t. Similarly to case (iv) we deduce γ(l, u, t) =
(l, u, t) ∈ A(a d).
Hence im(γ) ⊆ A(a d). By theorem 4.7.8, a d ² di .
(2) All zones in max(a d) are shaded and for each subset, Ei , of ES(max(a d)) such that
|Ei | ≥ 2 there exists a contour label, A, such that Ei = ES(A, max(a d)). In this
case, a d is an arrow-superdiagram of some additionally-extended diagram associated
272
with d, given D. Thus each existential spider is the source of an arrow with label l for
each l in AL(a d) ∪ AL(D) = AL(a d). Furthermore, we note that a d = maxarr(a d)
(since maxarr(a d) = max(Arr(a d, AL(a d))) = max(a d) = a d). Now m |= a d so
m |= D (recall, m is the standard model for a d). Choose di ∈ comp(D) such that
m |= di . Define, for each e ∈ ES(a d), Ψa (e) = {e}. This is a valid extension to
existential spiders for a d. Let Ψi : R ∪ ES(di ) → PES(a d) be a valid extension of
Ψ : R → PES(a d) for di .
The proof that statement 3(a) (given in theorem 4.7.10) holds for a d and di is similar
to case (1). Define σ : ES(di ) → ES(a d) by σ(e) ∈ Ψi (e) for each e ∈ ES(di ). The
function σ is injective and habitat preserving. We now show that the function γ
induced by σ satisfies im(γ) ⊆ A(a d). For the existential arrows case, let (l, s, t) ∈
Ae (di ). Again, there are three possibilities.
(i) s, t ∈ ES(di ). From the existential arrows condition for di we have
{σ(s)}.φ(l) = {σ(t)}
so
Ψa (σ(s)).φ(l) = Ψa (σ(t)).
Now, in a d, each existential spider is the source of an arrow with label l. Suppose
σ(s) is the source of (l, σ(s), t1 ). Then, by the existential arrows condition
for a d, Ψa (σ(t)) = Ψa (t1 ). If t1 is an existential spider then t1 = σ(t), so
γ(l, s, t) = (l, σ(s), σ(t)) ∈ A(a d). If t1 is not an existential spider then Ψ1 (t1 ) =
ES(t1 ,a d) = {σ(t)}. Since a d is maximal and entirely shaded, (l, σ(s), σ(t)) is
also in a d, that is γ(l, s, t) = (l, σ(s), σ(t)) ∈ A(a d).
(ii) s ∈ ES(di ) and t ∈ L(di ) such that ES(t, di ) 6= ∅. From the existential arrows
condition for di we have
{σ(s)}.φ(l) = Ψ(t)
so
Ψa (σ(s)).φ(l) = Ψ(t).
Now, in a d, each existential spider is the source of an arrow with label l. Suppose
σ(s) is the source of (l, σ(s), t1 ). Then, by the existential arrows condition for
a d,
Ψ(t) = Ψa (t1 ). If t1 is an existential spider then {t1 } = ES(t,a d). Since a d
is maximal and entirely shaded, γ(l, s, t) = (l, σ(s), t) ∈ A(a d). If t1 is not an
273
existential spider then the symmetric difference of t and t1 is untouched. Since
ad
is maximal and entirely shaded, γ(l, s, t) = (l, σ(s), t) ∈ A(a d).
(iii) s ∈ ES(di ) and t ∈ L(di ) ∪ {∅} such that ES(t, di ) = ∅. Then σ(s) is the source
of an arrow with label l and empty hit in a d. Now Ψ(t) = ∅ in any interpretation
that satisfies di , so ES(t,a d) = ∅. Since a d is maximal, γ(l, s, t) = (l, σ(s), t) ∈
A(a d).
So far we have shown that im(γ|Ae (di ) ) ⊆ A(a d) where di is any unitary component
of D such that m |= di .
For the universal arrows case, let (l, s, t) ∈ Au (di ). There are three possibilities.
(iv) t ∈ ES(di ). From the universal arrows condition for di it is the case that
∀x ∈ Ψ(s) • {x}.φ(l) = Ψi (t).
Therefore
∀x ∈ ES({s}, a d) • {x}.φ(l) = Ψa (σ(t)).
Since a d is maximal, each existential spider inhabiting s is the source of an
arrow with label l and hit {σ(t)} in a d. Furthermore, we deduce that each such
existential spider must be the source of an arrow with label l and target σ(t)
since a d is entirely shaded. Now diagram di is in reduced form and a β-diagram,
so at least one existential spider inhabits s in di . Thus at least one existential
spider inhabits s in a d and it follows that γ(l, s, t) = (l, s, σ(t)) ∈ A(a d).
(v) t ∈ L(di ) such that ES(t, di ) 6= ∅. From the universal arrows condition for di
it is the case that
∀x ∈ Ψ(s) • {x}.φ(l) = Ψ(t).
Therefore
∀x ∈ ES({s}, a d) • {x}.φ(l) = Ψ(t).
Since a d is maximal, that each existential spider inhabiting s is the source of
an arrow with label l and hit ES(t, a d) in d. Furthermore, we deduce that
each such existential spider must be the source of an arrow with label l and
target t since a d is entirely shaded. Now diagram di is in reduced form and a
β-diagram, so at least one existential spider inhabits s in di . Thus at least one
existential spider inhabits s in a d and γ(l, s, t) = (l, s, t) ∈ A(a d).
274
(vi) s ∈ Z(di ) and t ∈ L(di ) ∪ {∅} such that ES(t, di ) = ∅. The argument to show
γ(l, s, t) = (l, s, t) ∈ A(a d) is similar to the previous part.
Therefore im(γ) ⊆ A(a d).
In either case it follows that a d ² di . Hence, if a d ² D then there exists a unitary
component of D, say di , such that a d ² di . QED
Theorem 4.7.17 Completeness Let D1 and D2 be constraint diagrams. If D1 ² D2
then D1 ` D2 .
Proof Assume that D1 ² D2 . Given L = L(D1 ) ∪ L(D2 ), let D1L and D2L be contour
diagrams associated with D1 and D2 respectively. Given
Z=
[
[
Z(d1 ) ∪
d1 ∈comp(D1L )
Z(d2 ),
d2 ∈comp(D2L )
let D1Z and D2Z be the zone diagram associated with D1L and D2L respectively. Let D1α and
D2α be the α-diagrams associated with D1Z and D2Z respectively. So far, we have
D1 ≡` D1L
by theorem 4.7.11
≡` D1Z
by theorem 4.7.12
≡` D1α
by theorem 4.7.13.
By transitivity,
D1 ≡` D1α .
Similarly
D2 ≡` D2α .
Now, D1α and D2α consist of unitary α-diagrams that are either ⊥ or have zone set Z.
Therefore, we can ‘remove the conjunctions’ from D1α and D2α . Let D1∗ and D2∗ be disjunctified diagrams associated with D1α and D2α respectively. By theorem 4.7.14 and by
transitivity, D1 ≡` D1∗ and D2 ≡` D2∗ . Let D1β and D2β be β-diagrams associated with D1∗
and D2∗ respectively. By theorem 4.7.15 and by transitivity
D1 ≡` D1β
(1)
and D2 ≡` D2β . By theorem 4.7.5,
D2β ≡` red(D2β ).
275
By transitivity,
D2 ≡` red(D2β )
(2).
By soundness
D1β ² D1 ∧ D2 ² red(D2β ).
By transitivity,
D1β ² red(D2β ).
Now D1β and red(D2β ) are disjunctions of unitary β-diagrams, that is
D1β =
1≤i≤n
red(D2β ) =
1≤j≤l
d1,i
and
d2,j
where each d1,i (1 ≤ i ≤ n) and d2,j (1 ≤ j ≤ l) is a unitary β-diagram. The semantics
predicate for D1β is
_
Pd1,i (m)
1≤i≤n
where m = (U, Ψ, φ) is an interpretation. Therefore, for all d1,i (1 ≤ i ≤ n) we have
d1,i ² D1β
(3).
Let arrext(d1,i , red(D2β )) be an arrow-extended diagram associated with d1,i , given red(D2β ).
By lemma 4.7.37,
d1,i ≡` arrext(d1,i , red(D2β ))
and by soundness
d1,i ≡ arrext(d1,i , red(D2β )).
We have arrext(d1,i , red(D2β )) ² d1,i and d1,i ² D1β and D1β ² red(D2β ) so by transitivity
arrext(d1,i , red(D2β )) ² red(D2β ).
Now
arrext(d1,i , red(D2β )) =
a
1≤i≤k
d1,i
for some unitary diagrams a d1,i , (1 ≤ i ≤ k). Similarly to (3) we deduce
∀ a d1,i (1 ≤ i ≤ k) • a d1,i ² red(D2β ).
By theorem 4.7.16,
∀ a d1,i (1 ≤ i ≤ k) ∃d2,j (1 ≤ j ≤ m) • a d1,i ² d2,j .
276
By theorem 4.7.8 or theorem 4.7.10 or rule 16 (inconsistency),
∀ a d1,i (1 ≤ i ≤ k) ∃d2,j (1 ≤ j ≤ m) • a d1,i ` d2,j .
By rule 15 (connecting a diagram),
∀ a d1,i (1 ≤ i ≤ k) • a d1,i ` red(D2β ).
By theorem 4.5.1 (rule of construction),
∀ d1,i (1 ≤ i ≤ n) • arrext(d1,i , red(D2β )) ` red(D2β ).
Since, by lemma 4.7.37, d1,i ` arrext(d1,i , red(D2β )) by transitivity we obtain
∀ d1,i (1 ≤ i ≤ n) • d1,i ` red(D2β ).
By theorem 4.5.1 (rule of construction),
D1β ` red(D2β )
(4).
Now
D1 ` D1β
by (1)
` red(D2β )
by (4)
` D2
by (2).
Finally, by transitivity, D1 ` D2 . Hence if D1 ² D2 then D1 ` D2 . QED
Therefore this constraint diagram system is both sound and complete. An immediate
consequence of the completeness proof strategy is that the system is also decidable.
Theorem 4.7.18 Decidability Let D1 and D2 be spider diagrams. There is an algorithm
that determines whether D1 ` D2 .
Proof (Sketch) Given D1 and D2 , apply the completeness proof algorithm to both D1
and D2 , giving D1β and red(D2β ) as above. For each unitary part, d1 , of D1β , obtain
arrext(d1 , D2∗ ). Then either each unitary part of arrext(d1 , D2∗ ) syntactically entails a
unitary part of D2∗ or there exists a unitary part of arrext(d1 , D2∗ ) that does not syntactically entail a unitary part of D2∗ . In the latter case, we can deduce that D1 6` D2 .
QED
277
4.8
Equivalence of the Semantics Predicates
The semantics predicate introduced for the constraint diagrams in this system appears
somewhat different to that given for spider diagrams. In this section we prove that, if
there are no arrows in a unitary constraint diagram (that is, the diagram is essentially a
spider diagram) then the two semantics predicates are equivalent.
Theorem 4.8.1 Let d be a unitary constraint diagram such that A(d) = ∅ and let m =
(U, Ψ, φ) be an interpretation. Then Pd (m) is true if and only if
1. the plane tiling condition
[
Ψ(z) = U
z∈Z(d)
and
2. the distinct spiders condition
^
|Ψ(r)| ≥ |ES(r, d)|
r∈R(d)
and
3. the (spider diagram) shading condition
^
|Ψ(r)| ≤ |ET (r, d)|
r∈R∗ (d)
are true.
Proof Suppose Pd (m) is true. Then the plane tiling condition is true. Let Ψ : R∪ES(d) →
PU be a valid extension to existential spiders for d. Consider the distinct spiders condition.
Let r ∈ R(d). By the spiders condition any spider, e, in ES(r, d) must satisfy
Ψ(e) ⊆ Ψ(r).
Therefore
[
Ψ(e) ⊆ Ψ(r)
e∈ES(r,d)
and since distinct spiders represent distinct singleton sets it follows that
|Ψ(r)| ≥ |ES(r, d)|.
278
Hence the distinct spiders condition holds. Now, for any z ∈ Z ∗ (d),
[
Ψ(z) ⊆
Ψ(e).
e∈ET ({z},d)
Therefore
Ψ(r) =
[
Ψ(z)
z∈r
⊆
[³
z∈r
´
[
Ψ(e)
e∈ET ({z},d)
Since for any e ∈ ES(d), |Ψ(e)| = 1, it follows that
¯[³
´¯¯
[
¯
¯
Ψ(e) ¯¯ ≤ |ET (r, d)|.
¯
z∈r
e∈ET ({z},d)
Thus
|Ψ(r)| ≤ |ET (r, d)|.
Hence the (spider diagram) shading condition holds.
Suppose that the plane tiling condition, the distinct spiders condition and the (spider
diagram) shading condition are true. It is trivial that the plane tiling condition and both
arrows conditions hold, for A(d) = ∅. Let D be the α-diagram associated with d. Since
m |= d it must be that m |= di for some di ∈ comp(D) (this follows from the validity of
the spider diagram version of the splitting spiders rule). Since di is an α-diagram we can
define an injective map, f : ES(di ) → U such that
f (e) ∈ Ψ(ηdi (e))
and, for any shaded zone, z,
Ψ(z) =
[
{f (e)}.
e∈ET ({z},di )
Now for any e ∈ ES(di ),
f (e) ∈ Ψ(ηdi (e)) ⇒ f (e) ∈ Ψ(ηd (e)).
Furthermore
Ψ(z) =
[
{f (e)} ⇒ Ψ(z) ⊆
e∈ET ({z},di )
[
{f (e)}.
e∈ET ({z},di )
Set Ψ(e) = {f (e)} for each e ∈ ES(d) and the result follows. Hence Pd (m) is true if and
only if the plane tiling condition, the distinct spiders condition and the (spider diagram)
shading condition are true. QED
279
Chapter 5
Conclusions and Further Work
5.1
Conclusions
The spider diagram system introduced in this thesis is a natural extension of the SD2
system, given in [44]. Whilst not more expressive than SD2, basing diagrams on Euler
diagrams rather than Venn diagrams and removing the restriction to conjunctive normal
form provides a more flexible system: there are more ways of expressing the same information. As a consequence of removing these restrictions, we have defined additional
reasoning rules that are necessary for completeness. To prove completeness we adapted
the strategy used in SD2.
Until now, the expressiveness of the spider diagram notation was unknown. We have
shown that it is equivalent in expressive power to monadic first order logic with equality
(which we called ESD) but without function symbols or constants. To prove that every
spider diagram expresses the same information (expressively equivalent) to a sentence
in ESD is straightforward. It is simple to write down sentences that are expressively
equivalent to unitary diagrams and then use these sentences to write down a sentence
for a compound diagram. For the more challenging converse, we considered models for
sentences. We have shown that, for each sentence, there is a finite set of models that
can be used to classify the models for that sentence. These classifying models are then
used to construct a diagram expressively equivalent to the sentence. This approach differs
from that used by Shin [49] and Swoboda and Allwein [55] when they compared their
diagrammatic languages to monadic first order logic. Shin developed an algorithm that
syntactically manipulated sentences into a ‘nice’ form, for which she could draw a diagram.
Swoboda and Allwein compared a given diagram with a given sentence to see whether one
was a logical consequence of another. Again, this involved syntactically manipulating
sentences.
280
Next, we extended the notation to the considerably more expressive constraint diagram notation, adding arrows, universal spiders and derived contours. Adding arrows
and universal spiders to spider diagrams yields diagrams whose semantic interpretation is
ambiguous: the order that we read the spiders (i.e. the quantifiers) matters. To ensure
that our constraint diagrams have a unique interpretation we imposed the restriction that
existential quantification takes precedence over universal quantification. Allowing universal quantification to take precedence over existential quantification would mean that we
could not necessarily split existential spiders, which is essential to the completeness proof
strategy.
A
B
f
d
A
B
f
d
1
A
B
d
f
2
Figure 5.1: Alternative semantics: incorrectly splitting spiders.
Example 5.1.1 If we interpret d in figure 5.1 as ‘for all x ∈ A there is a y ∈ U − A
such that x.f = y’ we cannot split the existential spider in d. From diagram d1 t d2 we
deduce for each x ∈ A there is a y ∈ B such that x.f = y or for each x ∈ A there is a
y ∈ U − (A ∪ B) such that x.f = y, which is not logically equivalent to the interpretation
of d.
We have shown that the reasoning rules for spider diagrams extend, sometimes with
modification, to constraint diagrams. Because of the additional syntax, we have also
developed many new reasoning rules, mainly relating to arrows. The semantics predicate
we gave for constraint diagrams allowed us to write greatly simplified proofs of validity for
the reasoning rules when compared to the validity proofs in the spider diagram system.
Not only is the system we have developed sound, but it is also complete.
To prove completeness we extended the strategy used to prove the spider diagram system is complete. This extension was not trivial. Essential to the strategy is a completeness
result for unitary β-diagrams. For spider diagrams, taking unitary β-diagrams d1 and d2
with the same zone sets, we could show that, d1 ² d2 if and only if we could erase shading
and spiders from d1 to give d2 . For constraint diagrams, if d1 ² d2 then it is not necessarily
true that the only rules required to establish d1 ` d2 are erasure rules. To overcome this
difficulty we defined the maximal form of a unitary β-diagram. The maximal form is,
roughly speaking, a copy of d1 but with as many arrows and as much shading added as
281
possible without changing the meaning of d1 . We also defined the reduced form of a unitary β-diagram. The reduced form is a copy of d2 but without any universal arrows whose
source (which is a zone) represents the empty set. We could then show, in most cases, that
we only needed to erase components from the maximal form of d1 to give the reduced form
of d2 . For the remaining cases we also needed to apply the excluded middle for arrows
rule to d1 . The proof of this completeness result for unitary β-diagrams is not trivial.
The remainder of the completeness proof strategy is fairly obvious: once D1 and D2 are
both disjunctions of β-diagrams, manipulate D1 until we have enough syntactic elements
present to use the completeness result for unitary β-diagrams to establish D1 ` D2 .
5.2
Further work
There remain still many interesting research questions in this specific field of diagrammatic
reasoning. We will now discuss some of these questions and, where relevant, indicate how
the work in this thesis will provide a basis for answering them.
5.2.1
Reasoning with the full constraint diagram notation
Whilst the constraint diagram system we have developed is somewhat restricted in expressiveness, it provides a valuable and important step towards developing a reasoning
system based on the full, more expressive, constraint diagram notation. Formalizing and
giving sound and complete reasoning rules for the full constraint diagram notation is a
challenging problem. There are potentially many semantically different interpretations of
diagrams that include universal and existential quantification.
A
f
Figure 5.2: A constraint diagram with a derived contour that does not represent the empty
set.
Example 5.2.1 The diagram in figure 5.2 has a derived contour that does not represent
the empty set. The diagram is interpreted as
∃x ∈ A x.f ⊆ U − A ∧ ∃y ∈ x.f.
282
The existential spider, e, outside A requires the interpretation of the arrow before we can
fully interpret e. In our system derived contours always represented the empty set, so this
difficulty interpreting diagrams does not arise.
A dependency analysis is required to interpret a unitary diagram: the interpretation
of certain syntactic components sometimes depends on first interpreting other syntactic
components. In [12] a reading algorithm is given that involves a detailed dependence
analysis of the syntactic components of the diagram. This dependence analysis permits
the specification of which syntactic components of the diagram require ordering when
interpreting the diagram. A partially directed dependence graph is produced that indicates
which syntactic elements are semantically dependent on each other. From the dependence
graph for a diagram, reading trees can be produced and each tree gives rise to a semantic
interpretation of the diagram. The reading trees have a root node labelled P T C, for the
plane tiling condition. An algorithm for constructing all reading trees from a dependence
graph and a diagram can be found in [13]. Thus, we can think of a constraint diagram
as being a collection of zones (some shaded), spiders and arrows together with a reading
tree.
A
f
s
g
d
s
g
s
g
f
t
f
t
t
G (d )
R 1(d )
s
g
f
t
P T C
P T C
R 2(d )
Figure 5.3: A constraint diagram with its dependence graph and two reading trees.
Example 5.2.2 The diagram d in figure 5.3 has dependence graph G(d). The spider s
must be ‘read’ before the arrow labelled g and to indicate this there is a directed edge from
s to g in G(d). Similarly, t must be read before the arrow labelled f , giving a directed
edge from t to f . The interpretations of t and the arrow labelled g are related (the derived
contour that g targets defines the habitat of t), but we can choose whether to read t then
g or g then t. In G(d) this choice is indicated by an undirected edge between t and g. The
dependence graph is used to construct reading trees, R(d) for d. Two such reading trees
are R1 (d) and R2 (d). If there is a directed edge from a to b in G(d) then there must be
a path from a to b in R(d). If a and b are joined by an edge in G(d) then there must be
a path from a to b or from b to a. The reading tree also has a root node labelled P T C
283
(for the plane tiling condition). Reading tree R(d1 ) gives rise to the following semantic
interpretation of d:
P T C ∧ ∃t ∈ U − A t.f = A ∧ ∀s ∈ A s.g ⊆ U − A ∧ t ∈ s.g.
Reading tree R2 (d) gives rise to the semantic interpretation
P T C ∧ ∀s ∈ A s.g ⊆ U − A ∧ ∃t ∈ U − A t ∈ s.g ∧ t.f = A.
These two interpretations are not semantically equivalent.
So far, no reasoning rules have been developed for the full constraint diagram language.
The reasoning rules we have developed for our (restricted) constraint diagram language
will provide a basis for the development of reasoning rules for the full notation. It is
unlikely that the full system will be decidable. A very interesting question is “what
fragments of the full constraint diagram language yield decidable systems?” In this thesis
we have presented one such fragment. Ideally, a large fragment of the constraint diagram
language that yields a decidable system can be identified: users of the language, for
example software engineers, need to know whether their constraints are satisfiable. A
known result in first order predicate logic is that the satisfiability problem for sentences in
the Bernays-Schönfinkel-Ramsey class is decidable [2]. These sentences are prenex formulas
of the form ∃x1 ∃x2 ...∃xn ∀xn+1 ∀xn+2 ...∀xn+m F , that is ‘there exists’ takes precedence over
‘for all’.
The decidability result for the Bernays-Schönfinkel-Ramsey class does not imply the
decidability of the fragment of the full constraint diagram language consisting of all the
diagrams (together with their reading trees) where ‘there exists’ takes precedence over ‘for
all’. This is because we allow interpretations to have empty domains. Every constraint
diagram (in the full notation) can be converted into a first order logic sentence, S. Some
of the equivalences that are required to transform first order logic sentences into prenex
normal form do not hold in the empty structure. Therefore, S may not be semantically
equivalent to a sentence in prenex normal form. Thus we cannot deduce that given a
constraint diagram, D, from a fragment of the constraint diagram language where ‘there
exists’ takes precedence over ‘for all’, that D is expressively equivalent to a sentence in the
Bernays-Schönfinkel-Ramsey class. However, if we did not allow empty models, then the
decidability result for the Bernays-Schönfinkel-Ramsey class would imply the decidability
of the fragment of the full constraint diagram language consisting of all the diagrams
(together with their reading trees) where ‘there exists’ takes precedence over ‘for all’.
284
We conjecture that the fragment of the constraint diagram language consisting of all
the diagrams (together with their reading trees) where ‘there exists’ takes precedence over
‘for all’ yields a decidable system and it may be possible to extend the completeness proof
strategy for our constraint diagram system to this fragment once reasoning rules have been
developed.
5.2.2
The expressiveness of constraint diagrams
Constraint diagrams are more expressive than spider diagrams. We will now discuss the
expressiveness of the constraint diagram system we have developed. Arrows allow constraint diagrams to express relationships between elements. That is, constraint diagrams
can express statements concerning properties of binary relations.
The language ECD
In addition to the kinds of statements that spider diagrams can express, constraint diagrams can express statements like ‘there is an element in A that has relational image,
under f , that is B. A first order language that is at least as expressive as the constraint
diagram language will include dyadic predicates.
We add a countably infinite set of dyadic predicate symbols to the monadic language
ESD introduced in chapter 3 and call this new language ECD. Each constraint diagram
in our language is expressively equivalent to a sentence in ECD. There are sentences in
ECD that do not express the same information as any constraint diagram in our language:
our constraint diagram system is decidable whereas ECD is undecidable (see, for example,
[1]).
Mapping from Diagrams to Sentences
To show that the constraint diagram language is not more expressive than ECD we can
map diagrams to expressively equivalent sentences. Recall that every constraint diagram
is semantically equivalent to a disjunction of unitary α-diagrams. Thus to show that the
constraint diagram language is at most as expressive as ECD we only need to identify an
expressively equivalent sentence for each disjunction of unitary α-diagrams.
Example 5.2.3 The diagram d1 in figure 5.4 is expressively equivalent to the sentence
whose components parts are given as follows. For the zone missing from d1 we can say
∀x1 ¬(P1 (x1 ) ∧ P2 (x1 ))
285
(1),
L
f1
1
s
s
L
s
1
3
d
L
2
L
1
e
2
1
e
e
f1
3
1
2
2
f2
d
2
Figure 5.4: Two α-diagrams: from diagrams to sentences.
and this is related to the plane tiling condition for d1 . We will construct parts of the
sentence for d1 , each relating to one of the conditions in the semantics predicate. These
parts will be conjoined and prefixed by ∃x1 ∃x2 ∃x3 (one for each existential spider). Firstly
for the spiders condition we obtain
(P1 (x1 ) ∧ ¬P2 (x1 ) ∧ P2 (x2 ) ∧ ¬P1 (x2 ) ∧ ¬P1 (x3 ) ∧ ¬P2 (x3 ))
(2).
Secondly, for the strangers condition we have
(¬(x1 = x2 ) ∧ ¬(x1 = x3 ) ∧ ¬(x2 = x3 ))
(3).
For the shading condition we have
∀x4 (x4 = x1 ∨ x4 = x2 ∨ x4 = x3 ∨ ¬(P1 (x4 ) ∧ ¬(P2 (x4 ))))
(4).
There are no existential arrows, so we proceed to the universal arrows condition, giving
∀x4 ((P1 (x4 ) ∧ ¬P2 (x4 )) ⇒ (∀x5 (Q1 (x4 , x5 ) ⇔ x5 = x2 ))))
(5).
The sentence for d1 is then
(1) ∧ ∃x1 ∃x2 ∃x3 ((2) ∧ (3) ∧ (4) ∧ (5)).
Now we consider diagram d2 . There are no missing zones, so we do not construct a sentence
relating to the plane tiling condition. For the spiders condition we get the same as for d1 .
Similarly for the strangers condition. For the existential arrows condition we construct
the formula
(∀x4 (Q1 (x1 , x4 ) ⇔ x4 = x2 )) ∧ (∀x4 (Q2 (x3 , x4 ) ⇔ P2 (x4 )))
(6).
There are no universal arrows. A sentence expressively equivalent to d2 is
∃x1 ∃x2 ∃x3 ((2) ∧ (3) ∧ (6)).
The diagram d1 t d2 is expressively equivalent to the disjunction of the sentences given
286
for d1 and d2 .
Unlike spider diagrams, we cannot construct a sentence for each zone and take these
in conjunction to give a sentence for the diagram. This is because the information given
by distinct zones and their spiders may not be independent because of the presence of
arrows. For example, consider two existential spiders joined by an arrow but inhabiting
different zones. In some sense, these spiders are dependent on one another: making a valid
choice of elements that these spiders represent is linked to the interpretation of the arrow
joining them. The interpretation of one spider may affect the possible interpretations of
the other. The part of the sentence we construct for the arrow must come inside the scope
of both the existential quantifiers for the two spiders at its source and target.
Mapping from Sentence to Diagrams
As mentioned earlier, ECD is undecidable and the constraint diagram system we have
developed is decidable. An immediate consequence of this is that there are sentences in
ECD that are not expressively equivalent to any constraint diagram. All sentences that
do not involve any dyadic predicate symbols (except, perhaps, =) have an expressively
equivalent diagram, namely a constraint diagram that is (essentially) a spider diagram.
A stronger (but not necessarily useful) result is that a sentence, S, has an expressively
equivalent diagram, D, if and only if S is semantically (and, by the completeness of first
order predicate logic, syntactically) equivalent to DS(D).
We will give some examples of sentences in ECD that we do not believe have expressively equivalent diagrams in our constraint diagram system. For each example we will
draw a constraint diagram using the full notation (so these diagrams will be accompanied by a reading tree) whose semantic interpretation is equivalent to the sentence. The
expressively equivalent relation we will use identifies the interpretation of contour label
Li with the interpretation of the monadic predicate symbol Pi and the interpretation of
arrow label fi with the interpretation of the dyadic predicate symbol Qi .
L
f1
1
u
e
P T C
u
e
f1
Figure 5.5: Illustrating expressive limitations: for all takes precedence over there exists.
287
Example 5.2.4 No diagram in our system is expressively equivalent to the sentence, S,
where S is the sentence
∀x1 (P1 (x1 ) ⇒ (∃x2 ¬P1 (x2 ) ∧ ∀x3 (Q1 (x1 , x3 ) ⇔ x3 = x2 ))).
In full constraint diagram notation there is a diagram expressively equivalent to S, shown
in figure 5.5, together with its reading tree.
In the full constraint diagram language, we allow arbitrary ordering of quantifiers, providing we respect the dependence criteria. This leads to an increase in expressiveness over
our constraint diagram language.
L
f1
1
e
e
1
e
P T C
2
e
1
f1
2
Figure 5.6: Illustrating expressive limitations: a derived contour that does not represent
the empty set.
Example 5.2.5 We restricted the interpretation of derived contours in our system to the
empty set. This prevents us from drawing diagrams expressively equivalent to the sentence
∃x1 ∃x2 P1 (x1 ) ∧ ¬P1 (x2 ) ∧ Q1 (x1 , x2 ) ∧ ∀x3 (Q1 (x1 , x3 ) ⇒ ¬P1 (x3 )).
In full constraint diagram notation there is a diagram expressively equivalent to this
sentence, shown in figure 5.6, together with its reading tree.
L
f1
1
L
2
P T C
e
e
f1
Figure 5.7: Illustrating expressive limitations: using a derived contour to ‘target a zone’.
Example 5.2.6 In our system we cannot express ∃x x.f1 = L2 − L1 without being forced
to make a stronger statement (for example ∃x x.f1 = ∅ ∧ L2 − L1 = ∅). In full constraint
288
diagram notation, the diagram shown in figure 5.7, expresses ∃x x.f1 = L2 − L1 and is
expressively equivalent to the sentence
∃x1 L1 (x1 ) ∧ ∀x2 Q1 (x1 , x2 ) ⇔ (L2 (x2 ) ∧ ¬L1 (x2 )).
L
f1
1
e
u
L
2
P T C
e
u
f1
Figure 5.8: Illustrating expressive limitations: a universal spider that does not quantify
over its habitat.
Example 5.2.7 The sentence
∃x1 P1 (x1 ) ∧ ¬P2 (x1 ) ∧ ∀x2 (P1 (x2 ) ∧ ¬P2 (x2 ) ∧ x1 6= x2 ) ⇒ (∀x3 Q1 (x2 , x3 ) ⇔ P2 (x3 ))
does not have an expressively equivalent diagram in our system. This is because we forced
universal spiders to quantify over their habitat. In the full notation we can draw a diagram
expressively equivalent to this sentence. An example is shown with its reading tree in figure
5.8.
The above examples illustrate some of the kinds of sentences that are not expressively
equivalent to any constraint diagram in our system. In each case, we could draw a constraint diagram using the full notation that is expressively equivalent to the sentence. We
conjecture that the full notation is expressively equivalent to ECD. We do not expect that
there is a ‘nice’ way of classifying the kinds of sentences in ECD that have an expressively
equivalent diagram in our system.
In summary, the constraint diagram language we have developed is more expressive
than the spider diagram language, but less expressive than the full constraint diagram
language. The full constraint diagram language is not more expressive than ECD. The
exact expressiveness of the full constraint diagram language has yet to be established.
5.2.3
Adding further syntax
The diagrams we have considered in this thesis do not include syntactic devices analogous
to constant symbols in first order predicate logic. Given spiders are used to represent
fixed elements, like constants, and have square feet rather than round feet [36].
289
A
B
s
d
s
d
1
2
Figure 5.9: Two spider diagrams with given spiders.
Example 5.2.8 Diagrams d1 and d2 in figure 5.9 both contain a given spider, s. From
d1 u d2 , we can deduce that s is in A − B.
In [36] sound, but not complete, reasoning rules are given for a system of spider diagrams
that include given spiders but not existential spiders. Adding given (or constant) spiders
to our spider diagram system does not increase expressiveness [51].
As well as adding given spiders, we could include explicit negation of diagrams. Explicit
negation is important if we wish to use semantic tableaux [20] to determine whether
D1 ² D2 . If D1 ² D2 then ¬D1 ∨ D2 is valid. If ¬D1 ∨ D2 is valid then D1 ∧ ¬D2 is a
contradiction. Because we can use tableaux to establish satisfiability, we can use tableaux
to establish D1 ² D2 : D1 ² D2 if and only if D1 ∧ ¬D2 is unsatisfiable. Translating the
problem of determining whether D1 ² D2 into determining the satisfiability of D1 ∧ ¬D2
requires explicit negation.
Including explicit negation would not increase the expressiveness of spider diagrams but
would require further reasoning rules to be developed if we are to maintain completeness.
Almost certainly, adding explicit negation to our constraint diagram system will increase
expressiveness.
Projections are a type of contour that allow us to represent partial relationships between sets [24, 25, 38].
A
A
C
B
C
d
B
d
1
2
Figure 5.10: Illustrating projected contours.
Example 5.2.9 The diagram d1 in figure 5.10 contains a projected contour labelled B. It
expresses that A and C are disjoint and A ∩ B contains exactly one element. The diagram
290
d2 is semantically equivalent to d1 . The projected contour has reduced the number of
zones.
In a diagram without projections, to say nothing about the relationship between two
sets requires the presence of zones, whereas with projections some zones need not be
present. Work is currently underway, building on our spider diagram system, to develop
a sound and complete spider diagram system incorporating projections [38].
5.2.4
Heterogeneous reasoning systems
Some logical statements are more easily expressed in one language than another. Moreover,
statements that can be expressed in one language may not be expressible in another. This
leads to the development of heterogeneous reasoning systems. In [53, 54] the authors
give a framework for the design of a heterogeneous reasoning system based on first order
predicate logic and an Euler/Venn reasoning system. Euler/Venn diagrams are similar to
spider diagrams with given spiders (and no existential spiders).
Another extension of our work is to develop a reasoning system comprising many
different parts. Such a heterogeneous system could involve, say, constraint diagrams and
first order predicate logic. It would be fairly straightforward to develop a sound and
complete reasoning system based on spider diagrams and ESD. The work we have done
on expressiveness tells us that every sentence in ESD can be replaced by an expressively
equivalent spider diagram. Thus, if we allow ourselves to replace spider diagram D by the
sentence DS(D) (the diagram sentence for D) and vice versa then, along with the reasoning
rules for the spider diagram system and first order predicate logic, we would have a sound
and complete system. We see that knowing the expressiveness of a language can aid the
development of heterogeneous reasoning systems. Indeed, knowing the expressiveness of
a language may influence what notations are included in a heterogeneous language.
5.2.5
Second order systems
The constraint diagram language could be extended to a second order language. At the
moment derived contours must be the target of an arrow and their meaning (in the full
notation) is some set, determined by the interpretation of other parts of the diagram.
A derived contour could also be interpreted as denoting the existence of a subset of the
universal set.
Example 5.2.10 We could interpret the diagram in figure 5.11 as
∃X • X ⊆ U − A ∧ X.f1 ∈ A.
291
f1
A
Figure 5.11: Using derived contours to extend to a second order system.
Here we have used a derived contour to existentially quantify over subsets of U .
5.2.6
Automated diagram layout and theorem proving
An ambition is to implement a tool that supports modelling and reasoning with constraint
diagrams. Ideally, such a tool will also incorporate a theorem prover. If, given two
diagrams, we wish to know whether one semantically entails the other, and we have an
algorithm that establishes this, then we can implement such an algorithm. The tool (given
sufficient time and memory) will then be able to provide a proof that either a diagram
syntactically entails another or give a counterexample. If we are to present the proof to
users then the tool will need to draw concrete diagrams given the abstract syntax.
Automated diagram layout
The work in this thesis has largely been concerned with abstract diagrams as opposed to
their concrete representations. We did define a function that mapped concrete diagrams to
abstract diagrams and we illustrated that not every abstract diagram had a concrete representation, given our definition of a concrete diagram. Indeed, classifying which diagrams
have a concrete representation is challenging.
If the underlying Euler diagram can be drawn, then it follows that we can insert
spiders, shading and arrows where necessary to construct the diagram we require. We
wish to be able to automate the drawing of Euler diagrams, so classifying which diagrams
can be drawn and how to draw them is important, especially when we are reasoning. If
we automatically generate a proof then we wish to present the diagrams in the proof to
users at the concrete level, not the abstract level. The automatically generated proofs
will, almost certainly, contain diagrams that the user has not drawn.
More [45] has shown that every Venn diagram with a finite number of contours is
drawable. In [10] the authors give an algorithm for the incremental construction of Venn
diagrams using graph drawing techniques. In [5] the authors give an algorithm for drawing
292
area proportional Venn and Euler diagrams with at most three contours. The idea here
is that you can scale the size of zones so that their area represents, for example, the size
of the set that is being represented. Thus a zone, z1 , representing a set with twice the
cardinality of that represented by z2 would have twice the area in the concrete diagram.
A class of drawable abstract Euler diagrams is identified in [14]. The authors of [14] use
the dual graph of an abstract diagram to identify whether a diagram is drawable subject
to strict well-formedness conditions. These conditions ban disconnected zones and triple
(and larger) points of intersection. Using properties of the dual graph, they are able to
determine whether an abstract diagram has a concrete representation, subject to the wellformedness conditions. For those diagrams that do have a concrete representation the dual
graph is embedded in the plane and this embedding is used to draw the diagram. In [42]
the authors prove that some Euler diagrams are not drawable even if we allow concurrent
contours.
A
( { A } ,{ B } )
( { } ,{ A ,B } )
G
( { A } ,{ B } )
( { } ,{ A ,B } )
( { A ,B } ,{ } )
B
( { A ,B } ,{ } )
Figure 5.12: Automatically generating Euler diagram.
Example 5.2.11 The abstract Euler diagram, d, with zones (∅, {A, B}), ({A}, {B}) and
({A, B}, ∅) has dual graph G, shown in figure 5.12. There is one vertex in G for each zone.
Furthermore, each zone in d labels one of the vertices in G. An edge is placed between
two vertices, v1 and v2 , if the containing label set of the zones labelling v1 and v2 differ by
exactly one letter. Using G we can draw d: we place a contour around the vertices whose
labelling zone is contained by that contour. So the contour labelled A contains the vertices
of G that are labelled ({A}, {B}) and ({A, B}, ∅). The contour labelled B contains just
the vertex labelled ({A, B}, ∅).
This Euler diagram drawing algorithm has been implemented, but the output from
the tool does not look ‘pretty’. In [18] the authors show that the layout of the produced
diagrams can be improved using measures that assess the quality of the layout together
with an iterative method to change the diagram layout. Changes are made that improve
the quality according to the measures being used.
293
Automated Reasoning
The reasoning systems we have developed provide the necessary mathematical underpinning required to develop automated reasoning tools. Already one theorem proving tool,
available from [57], has been implemented based on the spider diagram language we have
developed [19]. The algorithm the tool uses to find a proof that one diagram semantically entails another or a counterexample is an improved version of that which can be
derived from the completeness proof strategy used for the spider diagram system. The
improvements reduce the number of rule applications made by using a more sophisticated
approach when comparing disjunctions of unitary diagrams. However, many of the proofs
generated by this algorithm are unnecessarily long.
In [17] a heuristic approach to generating proofs in our spider diagram language is
developed. Measures between unitary diagrams are defined that give a lower bound on
the number of proof steps required to transform the premise into the conclusion. If the
premise is to be transformed into the conclusion then their syntactic differences must be
eliminated. The measures combine to give a lower bound on the number of the syntactic
differences between the premise and the conclusion.
The reasoning rules allowed in the unitary system apply to a unitary diagram and
result in a unitary diagram. Some of the rules which are derived in the full spider diagram
system (where compound diagrams and unitary diagram are permitted) are not derived
in the unitary system (such as erasure of a spider) and are included as ‘basic’ rules in [17].
A
A
B
d
C
d
1
2
A
C
C o n to u r F o r m ( d 1,d 2)
Figure 5.13: Obtaining an optimistic estimate of proof length.
Example 5.2.12 In figure 5.13, the diagram d2 is a consequence of d1 . There are a number of syntactic differences between d1 and d2 that must be ‘corrected’ when transforming
294
d1 into d2 . Differences can occur between the contour labels, zones, shading and spiders.
We observe that there are differences between the contour label sets: B is in d1 and not
in d2 and C is in d2 but not in d1 . The only way to correct these differences in the unitary
system is to apply the introduction of a contour rule (and its reverse). A shortest proof
will require two applications of this rule (one to delete B, another to add C). We count
two differences between the contour label sets.
Next we wish to compare the zones in d1 and d2 . However, we cannot immediately
carry out this comparison because the contour label sets differ. We add the contour C to
d1 and delete B, giving ContourF orm(d1 , d2 ), a diagram with the same contour label set
as d2 . Now, ContourF orm(d1 , d2 ) has the same zone set as d2 , so we say there are no
differences between the zones of d1 and d2 . Clearly d1 and d2 have different zone sets, but
these differences can be fixed by introducing and removing contours, rather than applying
introduction of a shaded zone, or its reverse.
Next, we compare the shading. The diagrams ContourF orm(d1 , d2 ) and d2 are both
in Venn form, so we can immediately compare the shading (if these diagrams were not in
Venn form, then we would need to introduce zones to both diagrams until they are in Venn
form before we could compare the shading). We can see that ContourF orm(d1 , d2 ) has
two more shaded zones that d2 . However, this is not counted as two differences, but the
measure is capped at one. The reasoning behind this is that shading from more than one
zone in ContourF orm(d1 , d2 ) can be deleted using one application of the delete shading
rule. So far, we have detected three differences between d1 and d2 : two for the contour
label sets and one for the shading.
Finally we compare the spiders. There are two types of checks that need to be carried
out here. Firstly, how many spiders must be removed from d1 to give d2 . This calculation
is simple: the number to be removed from d1 is the number of spiders in d1 minus the
number of spiders in d2 (if this is negative we can deduce d2 does not follow from d1 ). In
this example, one spider must be deleted from d1 to give d2 . Next we must consider the
number of spiders in d1 that need their habitats changing in order to obtain d2 . This is
given by bag subtraction: the number of spiders that require their habitats to be changed is
|Bag(habitats of the spiders in d2 )−Bag(habitats of the spiders in ContourF orm(d1 , d2 ))|.
In this example, no spiders need their habitats changing. So, in addition to the three differences given by comparing the contour labels, zones and shaded zones, we must also
delete a spider giving four differences altogether. We conclude that a shortest proof from
295
d1 to d2 requires at least four steps. In this case, a shortest proof requires exactly four
steps: delete B, delete the shading in A, delete the spider outside A then introduce C to
give d2 .
Taking the lower bound provided by the measures as the heuristic function and the
number of reasoning rules applied as the cost function, the A∗ search algorithm is applied
to find a shortest proof between two unitary diagrams. The method guarantees to find
a shortest proof from the premise to the conclusion, provided a proof exists and there is
sufficient time and computer memory. However, the heuristics work so far only encompasses unitary diagrams and the implementation still relies on the improved version of the
algorithm derived from the completeness proof strategy to find proofs between compound
diagrams.
It should be possible to extend the tool to the constraint diagram language that we
have defined. Certainly, building a tool that incorporates the additional syntax and reasoning rules should be feasible. For automated theorem proving, it is possible to extract
a direct proof writing algorithm from the completeness proof for our constraint diagram
system. However, this algorithm would be very inefficient and would probably need some
improvement to its efficiency if it is to be of practical use.
296
Appendix A
Statement of the candidates
contribution
The first goal of my research was to develop a spider diagram reasoning system based on
Euler diagrams, extending the Venn diagram based SD2 system, developed by Molina. In
SD2, two levels of syntax were defined, and all reasoning was conducted at the abstract
level. I followed this two-tiered approach, but gave a simplified version of the abstract
syntax (the syntax for my spider diagram system can be contrasted with that for SD2,
which is included in the introduction). It was my idea to write zones as ordered pairs of
sets, and to use a countably infinite set of contour labels. The semantics predicate for
spider diagrams in my system combines selected conditions from Molina’s work on the
SD2 and ESD2 systems. To prove the satisfiability of all (non-false) unitary diagrams, I
extended Molina’s approach for SD2.
The informal descriptions of the reasoning rules for my spider diagram system are
largely based on those for SD2, but the formal descriptions are quite different, due to
the different syntax. As for the validity proofs for the spider diagram rules, some of the
proof strategies are my own and the others are, in parts, generalizations of proofs given
by Molina. The completeness proof strategy extends and simplifies that given for SD2
by Molina, and the approaches taken to define diagrams such as the associated contour
diagram and the associated α-diagram are my own.
It was during the first year of my PhD that I developed the spider diagram system
in this thesis. It is difficult to distinguish my first year’s work from the influence of my
supervisors. However, I can say that I chose the approaches to be taken and my supervisors
would approve these approaches or suggest that I think again. I wrote all the proofs. I
have made every attempt to indicate, throughout chapter 2, where my work extends or
modifies that of Molina’s and/or others.
297
My next goal was to develop the first sound and complete constraint diagram system.
All the work in this thesis on constraint diagrams is my own, except where mentioned in
the text. Whilst my supervisors certainly influenced my work on constraint diagrams, I
worked far more independently than when working on the spider diagram system.
I conducted the research on expressiveness very independently, and determined all the
approaches to be taken. I decided to compare spider diagrams with monadic first order
logic with equality. Professor Simon Thompson brought to my attention Dreben and
Goldforb’s work on similar structures, which proved essential to my solution. I played the
predominant role throughout all the research presented in this thesis.
298
Appendix B
Glossary
v
Indicates that d2 is an α-subdiagram associated with d1 : d2 vα d2 , p. 100, 253.
a
vD
a Indicates that d is an arrow-extended unitary component associated with d given
a d, p. 266.
D: d vD
a
v
Indicates that d2 is a β-superdiagram of d1 : d2 vβ d2 , p. 256.
vpc Indicates that d is a partial combination of d0 u d1 : d vpc d0 u d1 , p. 174.
∼
= Use to denote two diagrams are isomorphic, p. 158.
° Indicates D1 can be transformed into D2 using a single rule application: D1 ° D2 ,
p. 68, 176.
` Indicates D2 is obtainable from D2 using a sequence of rule applications: D1 ` D2 ,
p. 68 176.
² Used to denote one diagram is a logical consequence of another, p. 59, 152, 158.
|= Used to denote that an interpretation, m, is a model for a diagram, d: m |= d, p. 56.
≡` Indicates D1 and D2 are syntactically equivalent: D1 ≡` D2 , p. 68.
≡
Used to denote two diagrams are semantically equivalent, p. 56.
V
Ψ(l) =
l∈L(d)
S
Ψ(a, b) The containment condition, p. 54.
(a,b)∈Z(d)∧l∈a
V
|Ψ(r)| ≥ |S(r, d)| The distinct spiders condition, p. 53.
r∈R(d)
S
Ψ(z) = ∅ The missing zones condition, p. 54.
z∈V Z(d) Z(d)
S
Ψ(z) = U The plane tiling condition, p. 53, 150.
z∈Z(d)
299
V
|Ψ(r)| ≤ |T (r, d)| The shading condition, p. 53.
r∈R (d)
A(d) The set of arrow labels in unitary constraint diagram d, p. 142.
abstract constraint diagram Either an abstract unitary constraint diagram or a diagram formed by connecting other constraint diagrams using t or u, p. 144.
abstract spider diagram Either an abstract unitary spider diagram or a diagram formed
by connecting other spider diagrams using t or u, p. 43.
abstract unitary constraint diagram A tuple, comprising a set of labels, a set of
zones, a set of existential spiders, a habitat mapping and a set of arrows, p. 141.
abstract unitary spider diagram A tuple, comprising a set of labels, a set of zones, a
set of shaded zones and a set of spider identifiers, p. 40.
addext(d, D) The additionally-extended diagram associated with d, p. 264.
additionally-extended diagram associated with d The disjunction of all the spiderextended diagrams associated with the extended diagrams associated with d, p. 264.
AL The set of all arrow labels, p. 140.
D The α-diagram associated with D, p. 100, 254.
α-diagram A diagram where all spiders have exactly one foot, p. 65.
α-subdiagram An α-subdiagram of a diagram d is an α-diagram where feet can be added
to all spiders to give d, p. 100, 253.
α-diagram associated with D An α-diagram obtained from D by splitting all the spiders, p. 100.
arrext(d, D) An arrow-extended diagram associated with d given D, p. 267.
arrow At the abstract level an arrow is a tuple (l, s, t) where l is an arrow label, s is the
source and t is the target, p. 142.
arrow diagram associated with d Given a set of arrow labels A, the associated arrow
diagram is the disjunction of all the arrow superdiagrams, p. 242.
Arr(d, A) The arrow diagram associated with d given A, p. 242.
300
arrow-extended unitary component associated with d see p. 266.
arrow-extended diagram associated with d A disjunction of arrow-extended unitary
components associated with d given D, p. 267.
arrow superdiagram Given a set A of arrow labels, an arrow superdiagram is a copy
of a diagram d in which every existential spider, e, in d is the source of an arrow, a,
with a label in A. For each label in A, the arrow a is unique if e is not the source an
arrow with that label in d. If e is the source of an arrow with that label in d then
no new arrows are sourced on e, p. 241.
ASU P(d, A) The set of all arrow superdiagrams of d given A, p. 241.
basic region Region that is the area inside a contour, p. 38.
β-diagram An α-diagram where all zones are shaded or contain at least one spider (or
both), p. 197.
β-diagram associated with D A β-diagram obtained from D by applying excluded
middle for regions, p. 257.
β-superdiagram A β-superdiagram of d is a copy of d, with additional shading and
spiders added until a β-diagram is obtained, p. 256.
boundary rectangle Rectangle illustrating the edge of a concrete diagram, p. 38.
c(a, b) = a The set of contour labels that contain zone (a, b), p. 40.
CL The set of all contour labels, p. 39.
classifying set of models A finite set of small models for a sentence S the union of
whose cones contain precisely the models for S, p. 126.
combination The combination of two unitary α-diagrams is a single unitary α-diagram,
p. 66.
combined diagram associated with D A diagram obtained from D by removing all
the conjuncts, p. 102.
comp(D) The set of unitary components of D, p. 98.
compound diagram A unitary diagram or a diagram formed from other diagrams using
connectives, p. 43, 144.
301
concrete unitary constraint diagram A concrete unitary spider diagram together with
a collection of arrows and derived contours, p. 139, 146.
concrete unitary spider diagram A collection of contours, shading and trees (called
spiders) drawn in the plane, p. 38, 45.
cone The cone of a model, m, for sentence S is the class of all S-extensions of S and all
the structures isomorphic to those S-extensions, p. 43, 122.
containment condition Condition asserting that a contour label represents the same
set as the zones it contains in the context of a unitary diagram, p. 54.
contour Simple, closed, plane curve, p.38.
contour diagram associated with D A diagram obtained from D in which all unitary
parts have some specified contour label set, p.97, 251.
d + A The diagram d together with the arrows in A, p. 159.
d − A The diagram d with the arrows in A deleted, p. 159.
d0 ∗ d1 The combination of d0 and d1 , p. 66.
D The combined diagram associated with D, p. 102.
D L The contour diagram associated with D, p. 97, 251.
D Z The zone diagram associated with D, p. 98, 252.
D The collection of all diagrams, p. 44.
D D The set of all α-subdiagrams of D, p. 100.
Dpc (d0 u d1 ) The set of all partial combinations of d0 u d1 , p. 175.
D
The collection of all disjunctions of unitary α-diagrams, p. 114.
D0 The collection of all unitary α-diagrams, p. 114.
D A disjunctified diagram associated with D, p. 256.
DS A function that maps diagrams to expressively equivalent sentences, p. 115.
derived A reasoning rule is derived if it is not required for completeness, p. 68.
302
derived contour A contour with no label representing the image of a relation. In this
system, a derived contour represents the empty set, p. 139.
DIS(d0 , d1 ) The class of all disjunctifications of d0 and d1 , p. 175.
disjunctifications A disjunctifications of d0 u d1 is a disjunction of unitary α-diagrams
semantically equivalent to d0 u d1 , p. 175.
disjunctified diagram associated with D A disjunction of unitary α-diagrams syntactically equivalent to D, p. 256.
distinct spiders condition Condition asserting that the cardinality of a set denoted by
a region, r, contains at least as many elements as there are spiders inhabiting regions
contained by r, p. 53.
e(a, b) = b The set of contour labels that exclude zone (a, b), p. 40.
EL(d) The set of contour labels in d (including any derived contour) that contain no
spiders and are entirely shaded, p. 165.
empty hit An arrow has an empty hit when its hit contains no existential spiders, p. 153.
empty contour labels The set of contour labels in d (including any derived contour)
that contain no spiders and are entirely shaded, p. 165.
EP A(d) The set of existential semantic potential arrows for d, p. 210.
ES(d) The set of spiders in constraint diagram d, p. 142.
ES(l, d) The set of spiders inhabiting a set of zones contained by contour label l, p. 145.
η : S(d) → R(d) Function returning the habitat of each spider, p. 42, 142.
ET (l, d) The set of spiders touching zones contained by contour label l, p. 145.
ext(d, D) The extended diagram associated with d in the context of D, p. 107, 261.
excluded middle for arrows component A diagram that is a copy of d but with exactly one additional arrow, p. 171
existential arrow An arrow whose source is an existential spider, p. 151.
303
existential arrows condition Condition asserting that the image, under the relation
represented by arrow label, of the element represented by the source of the arrow is
the set represented by the target of the arrow, p. 151.
existential spider A spider denoting existential quantification, p. 132, 142.
expressively equivalent A diagram and a sentence are expressively equivalent if they
have essentially the same models, p. 113.
extended diagram associated with d in the context of D A diagram obtained from
d by applying excluded middle as determined by D, p. 107.
extra existential spiders form The extra existential spiders form of a diagram d is a
copy of d but with additional existential spiders: exactly one extra in each nonshaded zone except one, which has exactly two extra, p. 231.
feet A node of a tree that forms a spider, p. 38.
F The set of all formulae in ESD, p. 112.
hit existential spiders The set of existential spiders within the target of the arrow,
p. 153.
hit((l, s, t), d) The set of existential spiders within the target of the arrow (l, s, t in d,
p. 153.
habitat A region that a spider is placed in, p. 38 40, 42.
image The image of a relation, p. 150.
im(R) The image of R, p. 150.
inhabit A spider inhabits the region which is the set of zone that it touches, p. 38.
incompatible arrows Arrows that represent contradictory information, p. 154.
IN T The class of all interpretations, p. 112.
interpretation For spider diagrams, an interpretation is a pair (U, Ψ) where U is a set
and Ψ maps contour labels, zones and regions to subsets of U , p. 51. For constraint
diagrams, an interpretation is a triple (U, Ψ, φ) where U is a set, Ψ maps contour
labels, zones and regions to subsets of U and φ maps arrow labels to relations on U ,
p. 149.
304
L(D) The set of contour labels in D, p.40, 97.
large model A model for a sentence, S, that has a cardinality larger than some integer
determined by S, p.121.
leg An edge of a tree that forms a spider, p. 38.
logical consequence A diagram, D2 , is a logical consequence of another, D1 , if all the
models for D1 are models for D2 , p. 59, 158.
max(D) The maximal form of a diagram, p. 220, 220.
maxarr(D) The maximal arrow diagram associated with D, p. 243.
maximal arrow diagram associated with d Given a set of arrow labels A, the maximal associated arrow diagram is the maximal form of the associated arrow diagram,
p. 243.
maximal form The maximal form of a diagram D is a copy of D together with extra
shading and arrows that do not change the meaning of D, p. 220.
maximally shaded form The maximally shaded form of a unitary diagram d is a copy
of d but with shading in the shadeable zones of d, p. 199.
missing zone A zone that is not in d but is in the Venn zone set of d, p. 42.
missing zone condition Condition asserting that all the zones missing from a diagram
represent the empty set, p. 54.
model An interpretation is a model for a diagram if it satisfies the diagram, p. 56, 152.
new existential spider A spider in a spider-extended unitary component of d that is
not in d, p. 263.
obtainable One diagram, D1 , is obtainable from another, D2 , if there is a sequence of
rules applications to transform D1 into D2 , p. 68, 176.
PD (m) The semantics predicate for D, p.glos:sem pred algebra, 150.
P A(d) The set of potential arrows for diagram d, p.glos:sem pred algebra, 218.
PF(S) The set of all finite subsets of a set S, p. 40.
305
pairwise compatible arrows Arrows that are not contradictory, p. 153.
partial combination A diagram that forms part of a disjunction obtained when disjunctifying diagrams, p. 174.
P I(m, X, Y ) A predicate intersection set, p. 118.
plane tiling condition Condition asserting that all elements in the universal set are in
sets represented by the zones in a unitary diagram, p. 53, 150.
predicate intersection set The set obtained by intersecting the images of specified
predicate symbols in a structure, p. 118.
q(S) The maximum number of nested quantifiers in sentence S, p. 119.
R The set of all regions, p. 40.
R(d) The set of regions in d, p. 40.
R (d) The set of shaded regions in d, p. 40.
red(d) The reduced form of d, p. 221.
REP(m, S) A diagram representing m given S, p. 127.
reduced form The reduced form of a diagram is a copy of the diagram but without
any arrows whose source is a universal spider with a shaded, untouched habitat,
p. 221, 221.
region Concrete: an area of the plane in a unitary diagram that can be described by the
set of contours that contain it, p. 38. Abstract: a set of zones, p. 40, 142.
S The set of all sentences in ESD, p. 112.
S-extension A structure, m2 is an S-extension of another, m1 if m2 can be obtained
from m1 by adding elements subject to constraints imposed by sentence S, p. 121.
S(d) The set of spiders in diagram d, p. 42, 142.
S(r, d) The set of spiders in d whose habitat is a subset of region r provided r is in d,
otherwise the empty set, p. 42.
SD(S) A diagram expressively equivalent to S, p. 127.
306
satisfies An interpretation satisfies a diagram if the semantics predicate is true, p. 56, 152.
satisfiable A diagram, d, is satisfiable if there exists an interpretation that satisfies d,
p. 56, 152.
semantically equivalent Two diagrams are semantically equivalent if and only if they
have the same models, p. 56.
semantic potential arrow An arrow, that if added to the diagram, does not change the
meaning of the diagram, p.200.
semantics predicate A logical condition that determines whether an interpretation satisfies a diagram, p.52, 150.
SemP A(d) The set of semantic potential arrows for d, p. 201.
similar structures Structures are similar if one can be obtained from the other by adding
of removing elements subject to certain constraints, p.119.
shadeable A zone is shadeable in a unitary diagram d if shading can be introduced to
that zone in d to give a semantically equivalent diagram, p. 198.
shading condition Condition asserting that the size of the set represented by a shaded
region is at most the same size as the number of spiders touching that region,
p.53, 150.
SI(d) The set of spider identifiers in d, p. 40.
small model A model for a sentence, S, that has a finite cardinality smaller than some
integer determined by S, p.121.
spext(d) The spider-extended diagram associated with d, p. 264.
spider A tree used for indicating the presence of an element or universal quantification,
p. 38, 40, 42, 132, 139, 139.
spider-extended unitary component A copy of a diagram d, but with additional
shading and spiders, p. 262.
spider-extended diagram associated with d The maximal form of the disjunction of
all the spider-extended unitary components of d, p. 264.
307
spiders condition Condition asserting that spiders represent the existence of elements
in the set denoted by their habitats, p. 150.
spider identifier A pair indicating how many spiders have a particular habitat, p. 40.
ST R The class of all structures, p. 112.
standard model A special model constructed using the existential spiders as the universal set, p. 158.
strangers condition Condition asserting that distinct spiders represent the existence of
distinct elements, p. 150.
SynP A(d) The set of syntactic potential arrows for d, p. 201.
syntactic potential arrow An arrow, that can be syntactically added to the diagram,
p. 201.
syntactically equivalent Two diagrams are syntactically equivalent if they are both
obtainable from each other, p. 68.
SZ(d) The set of shadeable zones in d, p. 199.
T (r, d) The set of spiders in d whose habitat intersects with r provided r is in d, otherwise
the empty set, p. 43.
T (R, d) The set of spiders in d whose habitat intersects with each region in the set of
regions R, p. 43.
touches A spider touches a region if one of its feet it placed in that region, p. 38.
U P A(d) The set of universal potential arrows for diagram d, p. 218.
universal arrow An arrow whose source is a universal spider, p. 144.
universal arrows condition Condition asserting that the image, under the relation represented by arrow label, of any element in the set represented by the source of the
arrow is the set represented by the target of the arrow,, p. 151.
universal spider A spider representing universal quantification, p. 139, 142.
308
U S(d) The set of universal spiders in constraint diagram d, p. 142.
item[valid] A reasoning rule is valid if any diagram obtained by applying that rule
is a logical consequence of the premise, p. 72.
VAR The set of all variables in sdlogic, p. 112.
V Z(d) The Venn zone set of d: the set of all possible zones in d given the labels in d,
p. 42.
Venn form A diagram is in Venn form if V Z(d) = Z(d), p. 42.
Venn zone set see V Z(d).
Z The set of all zones, p. 40.
Z(d) The set of zones in d, p. 40.
Z (d) The set of shaded zones in d, p. 40.
Z(l, d) The set of zones in d that are contained by contour label l, p. 145.
ZF A function that maps zones to formulae, p. 114.
ZS A function that maps zones to sentences, p. 114.
zone Concrete: a region having no other region contained within it, p. 38. Abstract: an
ordered pair of finite sets of contour labels, p. 40.
zone diagram associated with D A diagram obtained from D in which all unitary
parts have the same zone set, p. 98, 252.
309
Bibliography
[1] G. S. Boolos and R. C. Jeffery. Computability and Logic, 3rd Edition. Cambridge
University Press, 1989.
[2] E. Borger, E. Gradel, and E. Gurevich. The Classical Decision Problem. SpringerVerlag, 1997.
[3] S. N. Burris. Logic for Mathematics and Computer Science. Prentice Hall, 1998.
[4] L. Choudhury and M. K. Chakraborty. On extending Venn diagrams by augmenting
names of individuals. In Proceedings of Diagrams 2004, Cambridge, UK, LNAI, pages
142–146. Springer-Verlag, March 2004.
[5] S. Chow and F. Ruskey. Drawing area-proportional Venn and Euler diagrams. In
Proceedings of Graph Drawing 2003, Perugia, Italy, LNCS, pages 466–477. SpringerVerlag, September 2003.
[6] R. Cori and D. Lascar. Mathematical Logic Part 1. Oxford University Press, 2000.
[7] P. Scotto di Luzio. Patching up a logic of Venn diagrams. In Proceedings 6th CSLI
WS on Logic, Language and Computation. CSLI Publications, 2000.
[8] B. Dreben and D. Goldforb. The Decision Problem. Solvable Classes of Quantificational Formulas. Addison Wesley Publishing Company Inc., 1979.
[9] H.-D. Ebbinghaus and J. Flum. Finite Model Theory. Springer-Verlag, 1991.
[10] J. Eloff and L. van Zijl. Incremental construction and drawing of Venn diagrams,
2000. citeseer.ist.psu.edu/eloff00incremental.html.
[11] L. Euler. Lettres a une princesse d’allemagne. Sur divers sujets de physique et de
philosophie, 1761. Letters No. 102-108 vol 2 Basel, Birkhauser.
310
[12] A. Fish, J. Flower, and J. Howse. A reading algorithm for constraint diagrams.
In IEEE Symposium on Human Centric Computing Languages and Environments,
Auckland, New Zealand, pages 116–168. IEEE, September 2003.
[13] A. Fish and J. Howse. Computing reading trees for constraint diagrams. In AGTIVE ’03, Applications of Graph Transformations with Industrial Relevance, Charlottesville, Virginia, September, pages 260–274. Springer-Verlag, 2003.
[14] J. Flower and J. Howse. Generating Euler diagrams. In Proceedings of Diagrams
2002, Callaway Gardens, Georgia, USA, pages 61–75. Springer-Verlag, April 2002.
[15] J. Flower, J. Howse, S. Kent, and J. Taylor. A visual framework for modelling
with heterogeneous notations. In IEEE Symposium on Human Centric Computing
Languages and Environments, pages 71–73. IEEE, 2002.
[16] J. Flower, J. Howse, and J. Taylor. Nesting in Euler diagrams: syntax, semantics and
construction. Software and Systems Modelling, 3:55–67, March 2004.
[17] J. Flower, J. Masthoff, and G. Stapleton. Generating readable proofs: A heuristic
approach to theorem proving with spider diagrams. In Proceedings of 3rd International
Conference, Diagrams 2004, Cambridge, UK, pages 166–181. Springer-Verlag, 2004.
[18] J. Flower, P. Rodgers, and P. Mutton. Layout metrics for Euler diagrams. In 7th International Conference on Information Visualisation, pages 272–280. IEEE Computer
Society Press, 2003.
[19] J. Flower and G. Stapleton. Automated theorem proving with spider diagrams.
In Proceedings of Computing: The Australasian Theory Symposium (CATS’04),
Dunedin, New Zealand, volume 91 of ENTCS, pages 16–132. Science Direct, January 2004.
[20] A. Galton. Logic for Information Technology. John Wiley and Sons, 1990.
[21] J. Gil, J. Howse, and S. Kent. Constraint diagrams: A step beyond UML. In Proceedings of TOOLS USA 1999, Santa Barbara, California, USA, pages 453–463. IEEE
Computer Science Press, August 1999.
[22] J. Gil, J. Howse, and S. Kent. Formalising spider diagrams. In Proceedings of IEEE
Symposium on Visual Languages (VL99), Tokyo, pages 130–137. IEEE Computer
Society Press, September 1999.
311
[23] J. Gil, J. Howse, and S. Kent. Towards a formalization of constraint diagrams. In
Proc IEEE Symposia on Human-Centric Computing (HCC ’01), Stresa, Italy, pages
72–79. IEEE Computer Society Press, September 2001.
[24] J. Gil, J. Howse, S. Kent, and J. Taylor. Projections in Venn-Euler diagrams. In
Proc. IEEE Symposium on Visual Languages, pages 119–126. IEEE Computer Society
Press, September 2000.
[25] J. Gil, J. Howse, and E. Tulchinsky. Positive semantics of projections. Journal of
Visual Languages and Computing, 13(2):197–227, April 2001.
[26] E. Hammer. Logic and Visual Information. CSLI Publications, 1995.
[27] E. Hammer and N. Danner. Towards a model theory of Venn diagrams. In G. Allwein
and J. Barwise, editors, Logical Reasoning with Diagrams, pages 109–127. Oxford
University Press, 1996.
[28] E. Hammer and S. J. Shin. Euler’s visual logic. History and Philosophy of Logic,
pages 1–29, 1998.
[29] W. Hodges. Logic. Penguin Books, 1977.
[30] J. Howse, F. Molina, S-J. Shin, and J. Taylor. Type-syntax and token-syntax in
diagrammatic systems. In Proceedings FOIS-2001: 2nd International Conference on
Formal Ontology in Information Systems, Maine, USA, pages 174–185. ACM Press,
2001.
[31] J. Howse, F. Molina, S-J. Shin, and J. Taylor. On diagram tokens and types. In
Proceedings of Diagrams 2002, Callaway Gardens, Georgia, USA, pages 146–160.
Springer-Verlag, April 2002.
[32] J. Howse, F. Molina, and J. Taylor. On the completeness and expressiveness of spider
diagram systems. In Proceedings of Diagrams 2000, Edinburgh, UK, pages 26–41.
Springer-Verlag, September 2000.
[33] J. Howse, F. Molina, and J. Taylor. SD2: A sound and complete diagrammatic
reasoning system. In Proceedings VL 2000: IEEE Symposium on Visual Languages,
Seattle, USA, pages 127–136. IEEE Computer Society Press, 2000.
312
[34] J. Howse, F. Molina, and J. Taylor. A sound and complete diagrammatic reasoning
system. In Proceedings. ASC 2000: 3rd IASTED International Conference on Artificial Intelligence and Soft Computing, Banff, pages 402–408. IASTED/ACTA Press,
2000.
[35] J. Howse, F. Molina, J. Taylor, and S. Kent. Reasoning with spider diagrams. In
Proceedings of IEEE Symposium on Visual Languages (VL99), Tokyo, pages 138–147.
IEEE Computer Society Press, September 1999.
[36] J. Howse, F. Molina, J. Taylor, S. Kent, and J. Gil. Spider diagrams: A diagrammatic
reasoning system. Journal of Visual Languages and Computing, 12(3):299–324, June
2001.
[37] M. Jamnik. Mathematical Reasoning with Diagrams. CSLI, 2001.
[38] C. John. Reasoning with projected contours. In Proceedings of 3rd International
Conference, Diagrams 2004, Cambridge, UK, pages 147–150. Springer-Verlag, 2004.
[39] P. T. Johnstone. Notes on Logic and Set Theory. Cambridge University Press, 1987.
[40] S. Kent. Constraint diagrams: Visualizing invariants in object oriented modelling. In
Proceedings of OOPSLA97, pages 327–341. ACM Press, October 1997.
[41] O. Lemon. Comparing the efficacy of visual languages. In D. Barker-Plummer, D. I.
Beaver, J. van Benthem, and P. Scotto di Luzio, editors, Words, Proofs and Diagrams,
pages 47–69. CSLI Publications, 2002.
[42] O. Lemon and I. Pratt. Spatial logic and the complexity of diagrammatic reasoning.
Machine GRAPHICS and VISION, 6(1):89–108, 1997.
[43] B. Meyer. Formalization of visual mathematical notations. In AAAI Symposium on
Diagrammatic Reasoning, Boston, USA, November 1997.
[44] F. Molina. Reasoning with extended Venn-Peirce diagrammatic systems. PhD thesis,
University of Brighton, 2001.
[45] T. More. On the construction of Venn diagrams. Journal of Symbolic Logic, 23:303–
304, 1959.
313
[46] P. Mutton, P. Rodgers, and J. Flower. Drawing graphs in Euler diagrams. In Proceedings of 3rd International Conference, Diagrams 2004, Cambridge, UK, pages 66–81.
Springer-Verlag, 2004.
[47] C. Peirce. Collected Papers, volume 4. Harvard University Press, 1933.
[48] F. Ruskey. A survey of Venn diagrams. Electronic Journal of Combinatorics, 1997.
www.combinatorics.org/Surveys/ds5/VennEJC.html.
[49] S.-J. Shin. The Logical Status of Diagrams. Cambridge University Press, 1994.
[50] S.-J. Shin. Situation-theoretic account of valid reasoning with Venn diagrams. In
G. Allwein and J. Barwise, editors, Logical Reasoning with Diagrams, pages 81–108.
Oxford University Press, 1996.
[51] G. Stapleton, J. Howse, J. Taylor, and S. Thompson. The expressiveness of spider
diagrams augmented with constants. In Accepted for Visual Languages and Human
Centric Computing, Rome, Italy. IEEE Computer Society Press, September 2004.
[52] N. Swoboda.
Implementing Euler/Venn reasoning systems.
In M. Anderson,
B. Meyer, and P. Olivier, editors, Diagrammatic Representation and Reasoning, pages
371–386. Springer-Verlag, 2001.
[53] N. Swoboda and G. Allwein. A case study of the design and implementation of
heterogeneous reasoning systems. In L. Magnani, N. J. Neressian, and C. Pizzi,
editors, Logical and Computational Aspects of Model-Based Reasoning, pages 1–18.
Kluwer Academic Publishers, 2002.
[54] N. Swoboda and G. Allwein. Modeling heterogeneous systems. In Proceedings of
Diagrams 2002, Callaway Gardens, Georgia, USA, pages 131–145. Springer-Verlag,
2002.
[55] N. Swoboda and G. Allwein. Using DAG transformations to verify Euler/Venn homogeneous and Euler/Venn FOL heterogeneous rules of interence. In Proceedings of
GT-VMT, ENTCS. Elsevier Science, 2002.
[56] N. Swoboda and J. Barwise. The information content of Euler/Venn diagrams. In
Proceedings LICS workshop on Logic and Diagrammatic Information, 1998.
[57] Visual Modelling Group: http://www.it.bton.ac.uk/research/vmg.
314
[58] J. Venn. On the diagrammatic and mechanical representation of propositions and
reasonings. Phil.Mag, 1880.
[59] J. Venn. Symbolic Logic. New York:Burt Franklin, 1971.
[60] A. Verroust and M.-L. Viaud. Ensuring the drawability of Euler diagrams for up
to eight sets. In Proceedings of 3rd International Conference, Diagrams 2004, Cambridge, UK, LNAI, pages 128–141. Springer-Verlag, March 2004.
[61] J. Warmer and A. Kleppe. The Object Constraint Language: Precise Modeling with
UML. Addison-Wesley, 1998.
315
© Copyright 2026 Paperzz