A Foundation for Domain Engineering
Dines Bjørner
Fredsvej 11, DK-2840 Holte, Denmark bjorner@gmail.com – www.imm.dtu.dk/~db
Begun: Monday November 1, 2010. Compiled: February 21, 2011: 12:29
Abstract
On the background of some twenty years of domain modelling we venture to suggest a number of topics of an emerging theory of domain descriptions.
Contents
1 Background 7
2 Describability 8
2.1 Informal Versus Formal Descriptions . . . . 8
2.2 On ‘What Are Percepts and Concepts’ . . . . 8
2.2.1 Percepts . . . . 8
2.2.2 Human Senses . . . . 9
Traditional Human Senses:. . . . 9
Some Additional Human Senses: . . . . 9
2.2.3 Technological Senses . . . . 9
2.2.4 Discovery of Abstractions and Types . . . . 9
2.2.5 On ‘What Can Be Perceived’ . . . . 10
2.2.6 Phenomena, Percepts and Observations . . . . 10
Phenomena: . . . . 10
Observations:. . . . 10
2.2.7 Concepts . . . . 10
2.2.8 On Phenomena and Related Concepts . . . . 10
2.3 On ‘What Can Be Described’ . . . . 11
2.3.1 A Characterisation. . . . 11
2.3.2 Problems I: Inconsistency . . . . 11
Two Kinds of Inconsistency: . . . . 11
Remedy for Problem I, Stake-holder Validation: . . . . 11
Domain Validation: . . . . 11
2.3.3 Problems II: Means of Description: Languages . . . . 12
2.3.4 Problems III: Source of Description: Stake-holder Groups. . . . 12
2.3.5 Problems IV: Incompleteness . . . . 12
2.4 Domain Analysis . . . . 12
2.5 Ontology of Domain Description Techniques . . . . 12
2.6 . . . . 12
2.7 . . . . 12
2.8 Discussion. . . . 12
3 Entities 13 3.1 What is an Entity ? . . . . 13
3.1.1 Object. . . . 13
3.1.2 Entity . . . . 13
Entity Class: . . . . 13
Entity Relations: . . . . 13
Entity Objects:. . . . 14
3.1.3 Discussion . . . . 14
3.2 Our Concept of Entity – A Preview . . . . 14
3.2.1 Entity Categories . . . . 14
3.2.2 . . . . 14
3.2.3 Simple Entities versus Actions, Events and Behaviours . . . . 14
3.2.4 Simple Entities. . . . 15
3.2.5 Actions . . . . 15
3.2.6 Agents . . . . 15
3.2.7 Events. . . . 15
3.2.8 Behaviours . . . . 15
3.3 Atomic and Composite Entities . . . . 16
3.4 Simple Entities . . . . 16
3.5 Actions . . . . 16
3.6 Events. . . . 16
3.6.1 Different Theories of Events . . . . 16
Kim’s Property-Exemplification Account of Events: . . . . 16
Davidson’s Theories of Events: . . . . 16
Lewis’ Theory of Events: . . . . 16
Badiou’s Theory of Events:. . . . 16
3.7 Behaviours . . . . 16
3.8 Discussion. . . . 16
4 Invariants 17 5 Uniqueness 18 6 Mereology 19 6.1 Introduction . . . . 19
6.1.1 Physics and Societal Infrastructures . . . . 19
Physics . . . . 19
6.1.2 In Nature . . . . 19
Structure of This Paper . . . . 20
6.2 A Syntactic Model of a Class of Mereologies . . . . 21
6.2.1 Systems, Assemblies, Units . . . . 21
6.2.2 ‘Adjacency’ and ‘Within’ Relations . . . . 22
6.2.3 Transitive ‘Within’ Relations . . . . 23
6.2.4 Transitive ‘Adjacency’. . . . 23
Mereology, Part I . . . . 23
A Syntactic Model of a Class of Mereologies . . . . 25
6.2.5 Connectors . . . . 25
Mereology, Part II . . . . 26
6.2.6 Summary . . . . 27
Extensions . . . . 27
6.2.7 Comments . . . . 27
6.3 Discussion & Interpretation . . . . 28
What We have Done So Far ?. . . . 28
Six Interpretations. . . . 28
6.3.1 Air Traffic. . . . 28
6.3.2 Buildings . . . . 29
6.3.3 Financial Service Industry . . . . 29
6.3.4 Machine Assemblies. . . . 30
6.3.5 Oil Industry. . . . 31
“The” Overall Assembly . . . . 31
A Concretised Assembly Unit . . . . 31
6.3.6 Railway Nets . . . . 32
Discussion . . . . 32
Mereology, Part III . . . . 33
Discussion . . . . 33
6.3.7 Modelling Simple Entities . . . . 34
6.4 A Semantic Model of a Class of Mereologies . . . . 34
6.4.1 The Mereology Entities. . . . 34
6.4.2 Channels . . . . 34
Process Definitions . . . . 34
Mereology, Part III . . . . 35
Discussion . . . . 35
Partial Evaluation . . . . 35
6.4.3 Generalised Channel Processes . . . . 36
6.5 “Connectability” cum “Overlap” in Other Computing Models . . . . 36
7 Laws of Descriptions 37 8 Laws of Domain Facets 38 8.1 Intrinsics . . . . 38
8.2 Support Technologies . . . . 38
8.2.1 A Generic Example . . . . 38
8.2.2 General . . . . 39
8.3 Rules and Regulations. . . . 39
8.4 Scripts: Licenses and Contracts . . . . 41
8.5 Management and Organisation . . . . 41
8.6 Human Behaviour . . . . 41
8.7 Discussion. . . . 41
9 An Aside: Domain Engineering 42 10 Conclusion 43 11 Bibliographical Notes 44 11.1 References . . . . 44
12 Air Traffic 40
13 Financial Service Industry 41
13.1 Financial Service Industry Business Processes . . . . 41
13.1.1 Financial Service Industry Business Processes . . . . 41
13.2 Banking . . . . 41
13.2.1 Atomic Component — A Bank Account . . . . 41
13.2.2 Composite Component — A Bank . . . . 42
13.2.3 One-Way Composite Component Interaction . . . . 43
13.2.4 Multiple, Diverse Component Interaction . . . . 44
13.2.5 Examples Continued. . . . 46
Two-Way Component Interaction . . . . 46
13.2.6 A Bank System Context and State . . . . 48
The Context . . . . 48
The State. . . . 48
13.2.7 A Model . . . . 48
13.2.8 Bank Scripts . . . . 49
Bank Scripts: A Denotational, Ideal Description . . . . 49
13.3 Bank Scripts: A Customer Language . . . . 53
13.3.1 Syntax of Bank Script Language . . . . 58
Routine Headers . . . . 58
Example Statements . . . . 58
Example Expressions . . . . 59
13.3.2 Abstract Syntax for Syntactic Types . . . . 59
13.3.3 Semantics of Bank Script Language . . . . 60
Semantic Types Abstract Syntax . . . . 60
Semantic Functions . . . . 61
13.4 Financial Service Industry. . . . 66
13.4.1 Banking . . . . 67
Domain Analysis . . . . 67
Account Analysis: . . . . 67
—Account Types: . . . . 67
—Contract Rules & Regulations: . . . . 67
—Transactions:. . . . 67
—Immediate & Deferred Transaction Handling:. . . . 68
—Summary . . . . 68
Abstraction of Immediate and Deferred Transaction Processing . . . . 69
—Account Temporality: . . . . 70
Summary:. . . . 70
Modelling . . . . 71
Client Transactions: . . . . 72
—Insert One Transaction: . . . . 72
—Insertion of Arbitrary Number of Transactions: . . . . 72
—Merge of Jobs: Client Transactions:. . . . 73
—The Banking Cycle: . . . . 73
—Auxiliary Repository Inspection Functions: . . . . 74
—Merging the Client and the Bank Cycles: . . . . 74
13.5 Securities Trading . . . . 75
13.5.1 “What is a Securities Industry ?” . . . . 75
13.5.2 Synopsis. . . . 76
13.5.3 A Stock Exchange “Grand” State. . . . 76
13.5.4 Observers and State Structure. . . . 77
13.5.5 Main State Generator Signatures . . . . 78
13.5.6 A Next State Function . . . . 79
13.5.7 Next State Auxiliary Predicates . . . . 79
13.5.8 Next State Auxiliary Function . . . . 80
13.5.9 Auxiliary Generator Functions . . . . 82
13.5.10Discussion . . . . 82
13.6 The Tokyo Stock Exchange . . . . 82
13.6.1 The Problem . . . . 83
13.6.2 A Domain Description . . . . 84
Market and Limit Offers and Bids. . . . 84
Order Books . . . . 84
Aggregate Offers . . . . 85
The TSE Itayose “Algorithm” . . . . 87
13.6.3 Match Executions . . . . 92
13.6.4 Order Handling . . . . 92
14 Pipeline Systems 93 14.1 Non-Temporal Aspects of Pipelines . . . . 94
14.1.1 Nets of Pipes, Valves, Pumps, Forks and Joins . . . . 94
14.1.2 Unit Identifiers and Unit Type Predicates . . . . 95
14.1.3 Unit Connections . . . . 95
14.1.4 Net Observers and Unit Connections . . . . 96
14.1.5 Well-formed Nets, Actual Connections . . . . 97
14.1.6 Well-formed Nets, No Circular Nets . . . . 97
14.1.7 Well-formed Nets, Special Pairs, wfN SP . . . . 98
14.1.8 Special Routes, I. . . . 98
14.1.9 Special Routes, II . . . . 99
14.2 State Attributes of Pipeline Units . . . . 100
14.2.1 Flow Laws . . . . 100
14.2.2 Possibly Desirable Properties . . . . 102
14.3 Pipeline Actions . . . . 103
14.3.1 Simple Pump and Valve Actions. . . . 103
14.3.2 Events. . . . 104
Unit Handling Events . . . . 104
Foreseeable Accident Events . . . . 105
14.3.3 Well-formed Operational Nets . . . . 105
14.3.4 Orderly Action Sequences . . . . 106
Initial Operational Net . . . . 106
Oil Pipeline Preparation and Engagement . . . . 106
14.3.5 Emergency Actions . . . . 107
14.4 Connectors . . . . 107
14.5 Temporal Aspects of Pipelines . . . . 109
14.6 ACSPModel of Pipelines . . . . 109
14.7 Photos of Pipeline Units and Diagrams of Pipeline Systems. . . . 111
15 Railways 116 15.1 Hierarchical Presentation . . . . 116
15.2 Configurational Presentation . . . . 119
15.3 Discussion. . . . 120
16 Transport Nets 123
16.1 Nets . . . . 123
16.1.1 Hubs and Links . . . . 123
16.1.2 Hub and Link Identifiers . . . . 123
16.1.3 Observability of Hub and Link Identifiers. . . . 124
16.1.4 Net Descriptors . . . . 124
16.1.5 Routes . . . . 125
16.2 Buses, Bus Stops and Bus Schedules . . . . 127
16.2.1 Buses . . . . 127
16.2.2 Bus Stops. . . . 128
16.2.3 Bus Stop Lists and Routes . . . . 128
16.2.4 Bus Schedules . . . . 129
16.3 Timetables . . . . 130
16.3.1 Denotations . . . . 130
16.4 Bus Traffic . . . . 130
16.4.1 Bus Traffic versus Bus Timetable . . . . 131
16.4.2 “Generating” Bus Traffics from Bus Timetables . . . . 132
1 Background
22 Describability
32.1 Informal Versus Formal Descriptions
4There is the domain (• A); the “real world”, the observed phenomena. And there is our informal, narrative description of it (•B); a textual abstraction of the domain. Then there may be a formal description of that domain ( C); expressed in some mathematical form.
And finally there are zero, one or an infinity of (mathematical) models of the formalisation ( D). See Fig. 1.
5
[D] Model(s) Informal
Correspondance
Correspondance
Informal
Informal Correspondance
[B] Narrative [C] Formalisation
[A] The Domain
Formal
Correspondance
Figure 1: Informal versus formal descriptions
The blue items (labelled ‘Narrative’, ‘Formalisation’) stand for “man-made” descriptions.
They are of syntactic nature. The blue labels (‘Informal’ Correspondence) stand for infor- mal relations. The red items (labelled ‘The Domain’, ‘Models’) stand for denotations of the blue items from which a dashed arrow is incident upon the red item. The red label (‘Formal’ Correspondence) stand for a formal relation. The dashed line between the red items stand for a relation that cannot be formalised. That is, there can only be informal
6
relations between ([B↔A]) narratives and “their” domain, ([B↔C]) narrative and for- mal descriptions and ([A↔D]) domains and formal models; whereas ([C→D]) the relation between a formal description and its models is a formal one.
7
“The more” a formal model (colloquially, a formal description) can “verify” and “pre- dict” actual domain properties “the more” the formalisation can be said to be a model of the domain.
2.2 On ‘What Are Percepts and Concepts’
82.2.1 Percepts
We shall take percepts to be that which can be perceived by humans. Perception is the process of attaining awareness or understanding of sensory information.
2.2.2 Human Senses
Traditional Human Senses: The traditional five senses are usually taken to be sight, hearing, touch, smell and taste. a classification attributed to Aristotle. 9 Some Additional Human Senses: In addition to the percepts, which can be observed by means of these five traditional senses, humans appear to have at least six additional senses: pain, balance, sense of time, thermoception. direction and joint motion and accel- eration, Further internal (human body) senses are left out of consideration being of interest primarily (or only) for the domain of physiology.
2.2.3 Technological Senses 10
By a technological sensory apparatus we mean a way of measuring physical units. The base physical units are:
metre m length ℓ
kilogram kg mass m
second s second s
ampere A electric current I
kelvin K thermodynamic temperature T candela cd luminous intensity Iv
mole1 mol chemical amount n
These base physical units can be combined, for example, a farad: ms42×A×kg2, into derived physical units.
2.2.4 Discovery of Abstractions and Types 11
A major taskfor the describer of human made domains, for example, air traffic, financial industry, health care, manufacturing, transport, etc., is to construct type systems. For example, banks with subtypes accounts, cash (monies), clients, commands, transaction lists, etc.; or transport nets with subtypes hubs, links, routes, states, timetables etc.; etc.
12
Another way of formulating the above is: a major task for the domain engineeristo discover and formalise appropriate abstractions.
The abstractions to be discovered and the types to be formulated are those of simple entities and actions. By extension abstractions and types of events and behaviours follow.
13
Initially we favour types of simple entities to be expressed as sorts and
1The mole is defined as the amount of substance that contains as many elementary entities (e.g., atoms, molecules, ions, electrons) as there are atoms in 12 g of the isotope carbon-12 (12C). A mole quantity designator may therefore be suffixed by one of the 118 known chemical elements or be a composite of such, that is a chemical alloy, i.e., a chemical.
type A, B, C, D,...
types of actions to be functions from simple entities to simple entities, value act1: A → B, act2: C →∼ D
but more on that later.
2.2.5 On ‘What Can Be Perceived’ 14
What one perceives appears to be a result of interplays between what can be sensed by any of the sensory apparati alluded to above, past experiences, including one’s culture, and the interpretation of the perceived.
So we shall limit our domains to be such which can be perceived through the senses listed above This clearly is a limitation. But then the describer can add any additional senses as long as they are physiologically justified, that is, can be ‘objectively measured’.
2.2.6 Phenomena, Percepts and Observations 15
Phenomena: A phenomenon is usually taken to be an observable occurrence of a percept.
We shall take a phenomenon to be synonymous with a percept.
Observations: An observation is either an activity of a living being (such as a human), consisting of receiving knowledge of the outside world through the senses, or the recording of data using scientific instrument.
2.2.7 Concepts 16
We shall limit our understanding of a domain concept to be that of an abstraction of a percept or a class of percepts, or an abstraction of a domain concept or a class of domain concepts.
2.2.8 On Phenomena and Related Concepts
A particular phenomenon, say a specifically designated road segment between specifically designated neighbouring street intersections, and a related concept, namely that of a link, may be described in two “steps” First the concept of a link is introduced. It is to be
17
a concept of a road segment. The link concept may be described byits length cadestral (geographic) location, street (or road) name, as ell as other, essential attributes, a reference to the uniqueness of each link, and references to the two unique hubs that are connected by the link — where hubs are abstractions of street intersections. Then each specifically
18
designated road segment phenomenon is uniquely identified bythe values of length, location, name and (all) other attributes, the specific unique link identifier, and the specific two distinct and unique hub identifiers. It is in this way we may understand the relation between a concept and a phenomenon. The link concept designates a class of phenomena.
2.3 On ‘What Can Be Described’
192.3.1 A Characterisation
We shall take adescriptionto besome text put forward by a group of persons (‘the authors’) where that text characterises a phenomenon or a concept, derived from phenomena, in such a way that any other, therefrom distinct, group of persons (‘readers’) can recognise exactly the same percepts (respectively concepts) as being identified by the description as those intended by the ‘authors’.
2.3.2 Problems I: Inconsistency 20
The above characterisation of “what can be described” does not give a precise, objective prescription for testing whether a text constitutes a ‘description’.
The problem lies in or characterisation of perception:“perception appears to be a result of interplays between(1) what can be sensed, (2) past experiences, including one’s culture, and (3) the interpretation of the perceived.”
This is so since the sensory systems, the experiences (culture), and interpretation of any two ‘readers’ cannot be guaranteed to be identical, that is, to lead to exactly the same
identifications. 21
Two Kinds of Inconsistency: Two or more stake-holders from the same stake-holder group express inconsistent properties of ‘the domain: This form of inconsistency must be resolved by the domain describer in dialogue with stake-holder group members. Two or more stake-holders from the distinct stake-holder group express inconsistent properties of the domain: This form of inconsistency must be resolved by dialogues between the
“conflicting” stake-holder groups. 22
Remedy for Problem I, Stake-holder Validation: We propose that a domain description be validated by “readers”. We may assume that these ‘readers’ are themselves stake- holders in, or of the domain. That is, that they represent one or another reasonably clear delineated group of persons more-or-less strongly related to the domain, Examples of groups of domain stake-holders for an example domain of transportation nets could be owners, managers, maintainers, users, builders, regulators, etc. The idea of
‘reasonably clear delineated group’ will be reviewed below. 23 Domain Validation: Validation is then a process in which domain writers (domain en- gineers) and reader (domain stake-holder) groups together read the domain description narrative, agreeing, line-by-line, on the formulation of a domain phenomenon or concept.
Consensus is of either of two kinds either one or more readers, from a reasonably clearly de- lineated group of stake-holders, or two ‘readers’, from two distinct, but reasonably clearly delineated groups of stake-holders, agree or disagree with the formulation of a domain phenomenon or concept.
2.3.3 Problems II: Means of Description: Languages 24 We need language with which to describe.
2.3.4 Problems III: Source of Description: Stake-holder Groups 25
2.3.5 Problems IV: Incompleteness 26
2.4 Domain Analysis
272.5 Ontology of Domain Description Techniques
282.6
292.7
302.8 Discussion
313 Entities
323.1 What is an Entity ?
The issue of this section is what is an entity ?
A number of technical terms are used more-or-less synonymously, or with strongly overlapping meanings, by different authors: object, entity, entity class, entity relationship and entity object. Let us examine these terms.
3.1.1 Object 33
From various sources and with respect to different domains we have different uses of the term ‘object’.
[Philosophy:] “An object, a thing, being or concept; an entity, something that is tan- gible and within the grasp of the senses” [http://en.wikipedia.org/wiki/Object].
[Charles S. Peirce:] “An object is anything that we can think or talk about.”
[Mathematics:] “An object is an abstract notion which does not exist at any par- ticular time or place”. A mathematical object, by some mathematicians, are consid- 34 ered to be like a universal algebra: a possibly infinite set of “things” (often called en- tities: E : {ei, ej, . . . , ek, . . .}) and a usually finite set of functions over these things (F : {fa, fb, . . . , fc}) such that the functions (of various arities, f : En → E) apply to entities yielding other entities in the algebra A:E-set×F-set. 35
[Software Engineering:] An object (now with reference to a special branch of computing science called “object-oriented programming”) is syntactically seen as a set of procedures (functions and/or subroutines) and a set of data structures such that (in a simplified semantics) the procedures of the object apply to values of data structures of either the same or possibly of different objects, to yield values of either the same or possibly of different objects.
3.1.2 Entity 36
[Philosophy:] “An entity is something, a phenomenon or a concept, that has a distinct, separate existence.”
[Software Engineering:] An entity may be defined as a thing which is recognized as being capable of an independent existence and which can be uniquely identified.
Below we shall elaborate further on this notion of entity. 37 Entity Class: An entity class is a set of (data) values (i.e., a set of entities).
Entity Relations: An entity class relationship model consists of a number of entity classes and a number of relations between these classes. A relation between an entity of one class and a number of one or more (saym) entities of one or more (sayn) other classes expresses
how these entities are related. 38
Entity Objects: The concept of an ‘entity object’ is a software engineering (SE) concept.
Basically that SE concept tries to combine the SE ‘object’ concept with that of the entity class relationship concept.
3.1.3 Discussion 39
We shall follow more the [Philosophy] characterisation than [Charles S. Peirce]’s charac- terisation of what an entity is. Sentiments, moods and other somewhat intangible notions seems to be included in Peirce’s characterisation and may wish to not include such intangi- ble notions. In fact, we shall follow, very much so, the [Universal Algebra] characterisation of entities as being subjectable to function applications. In our subsequent treatment of entities we shall introduce the notions of atomic and composite entities. In relating com-
40
posite entities to mereology we shall focus very much on entity relations — so we shall not go further into entity class relations (ER) in the sense of classical ER models nor into entity objects.
3.2 Our Concept of Entity – A Preview
41On the basis of what we have put forward so far, we conclude: an entity is something, a phenomenon or a concept, that has a distinct, separate existence; something that can be sensed by external or internal human senses, or measured in physical units.
3.2.1 Entity Categories 42
Following the mathematical notion of an algebra we view entities as being either simple entities oractions— where we consider some actions, from various points of emphasis, to additionally being either events or behaviours.
3.2.2 43
3.2.3 Simple Entities versus Actions, Events and Behaviours 44
From [10] we extract: “We shall think of simple entities as existing and actions (events and behaviours) as occurring; and we shall think ofsimple entities as having clear spa- tial boundaries and unclear temporal boundaries; and actions (events and behaviours) as having unclear spatial boundaries and clear temporal boundaries. Simple entities
45
are invidiously located in space – they occupy theirspatial location whereas events (ac- tions, behaviours)tolerate co-location[1, 29]. Simple entitiescan movewhereasevents cannot move [24]. Simple entities are continuants — they are in time and they persist through time by being wholly present at every time at which they exist whereasevents(ac- tions, behaviours) are occurrents– they take up time and they persist by having different parts (or “stages”) at different times [28].”
3.2.4 Simple Entities 46
Simple entities are inert entities, that is, entities which do not change their properties at their own discretion and are not actions.
Some simple entities play the rˆole of states.
3.2.5 Actions 47
Actions are the results of applying functions to simple entities, including state entities.
Actions usually change the state, that is, change the value of one or more simple entities.
Thus, for every observable action, “behind it, so-to-speak, there is a function. Functions can be considered simple entities. The same function may give rise, over time, and/or at the same time, to several actions. All actions are distinct in that they occur in time and,
if “simultaneously” then at distinct locations.2 48
Donald Davidson [13, essay 3] asserted that an action is something an agentdoes. An agent is an entity which is capable of action.
3.2.6 Agents 49
3.2.7 Events 50
Events are actions. But, for pragmatic reasons, we do not consider all actions to be events — see further five lines below. As a matter of principle we must distinguish be- tweendescribable eventsandchaotic events. Adescribable eventis an event which can be characterised as follows:there is a predicate, PE, over pairs of states there is a time point or interval, te, at or during which the “event occurs”, and there are two states,σb, σa
(before an after), such that PE(σb, σa)(t) holds.3 A chaotic event is an event for which we can not (yet) find an appropriate description, i.e., a predicate. We wish to single out, 51 as events, only such actions which are not commonly expected or commonly desired, or which “originate” (have their cause in actions) “outside” the domain being considered.
Examples of not commonly expected or desired events are: the insolvency of a firm when 52 it is unable to honour its debts as they fall due; the overdraft situation on a bank account when attempting to withdraw monies exceeding the account balance; and the bankruptcy, say of an individual, that is, the legally declared inability to its creditors — an event that may be caused by a bank insolvency event. Examplesof “outside” events are: the blocking 53 of a road due to a collapsing bridge; and the blocking of a street intersection due to too many vehicles at that intersection.
3.2.8 Behaviours 54
2Two or more time-distinct actions may occur at same or at different locations.
3Note that we do not necessarily require that an event be located.
Behaviours are sequences of zero or more actions (including events). So a single action is a behaviour. For technical reasons we include the “null”behaviour (of no actions) as a behaviour.
• • •
After this introductory survey we shall now examine the entity concept in detail.
3.3 Atomic and Composite Entities
553.4 Simple Entities
563.5 Actions
573.6 Events
583.6.1 Different Theories of Events 59
60
Kim’s Property-Exemplification Account of Events:
Davidson’s Theories of Events: Davidson and Lemmon proposed a theory of events that had two major conditions, respectively: a causal criterion and a spatio-temporal criterion.
The causal criterion defines an event as two events being the same if and only if they have the same cause and effect. The spatio-temporal criterion defines an event as two events being the same if and only if they occur in the same space at the same time.
61
Lewis’ Theory of Events: David Lewis theorized that events are merely spatio-temporal regions and properties (i.e. membership of a class). It defines an event as e is an event only if it is a class of spatio-temporal regions, both this-worldly (assuming it occurs in the actual world) and other-worldly.
62
Badiou’s Theory of Events:
3.7 Behaviours
633.8 Discussion
644 Invariants
655 Uniqueness
666 Mereology
67In this section we discuss the following problems:
• to give a formal model of a large class of mereologies, with simple entities modelled as parts and their relations by connectors;
• to show that that class applies to a wide variety of societal infrastructure component domains;
• we show that there is a class of CSPchannel and process structures that correspond to the class of mereologies where mereology parts becomeCSPprocesses and connectors become channels; and where simple entity attributes become process states.
68
We have yet to prove to what extent the models satisfy the axiom systems for mereologies of, for example, [9] and a calculus of individuals [11]. Mereology is the study, knowledge and practice of part-hood relations: of the relations of part to whole and the relations of part to part within a whole. By parts we shall here understand simple entities — of the
kind illustrated in this paper. 69
Manifest simple entities of domains are either continuous (fluid, gaseous) or discrete (solid, fixed), and if the latter, then either atomic or composite. It is how the sub-entities of a composite entity are “put together” that “makes up” a mereology of that composite entity — at least such as we shall study the mereology concept. In this paper we shall study some ways of modelling the mereology of composite entities. 70
One way of modelling mereologies is using sorts, observer functionsand axioms(Mc- Carthy style), another is using CSP.
6.1 Introduction
716.1.1 Physics and Societal Infrastructures
Physics Physicists study that of nature which can be measured within us, around us and between ‘within’ and ‘around’ ! To make mathematical models of physics phenomena, physics has helped develop and uses mathematics, notably calculus and statistics. 72
Domain engineersprimarily studies societal infrastructure components which can be reasoned about, built and manipulated by humans. To make domain models of infrastruc- ture components, domain engineering makes use of formal specification languages, their reasoning systems: formal testing, model checking and verification, and their tools.
6.1.2 In Nature 73
Physiciststurns to algebra in order to handle structures in nature. Algebra appears to be useful in a number of applications, to wit: the abstract modelling of chemical compounds.
But there seems to be many structures in nature that cannot be captured in a satisfac- tory way by mathematics, including algebra and when captured in discrete mathematical
disciplines such as sets, graph theory and combinatorics the “integration” of these mathe- matically represented — structures with calculus (etc.) — becomes awkward; it seems so much so that I know of no successful attempts.
74
Domain engineers turns to discrete mathematics — as embodied in formal specifi- cation languages and as “implementable” in programming languages — in order to handle structures in societal infrastructure components. These languages allow (a) the expression of arbitrarily complicated structures, (b) the evaluation of properties over such structures, (c) the “building & demolition” of such structures, and (d) the reasoning over such struc- tures. They also allow the expression of dynamically varying structures — something mathematics is “not so good at” ! But the specification languages have two problems: (i)
75
they do not easily, if at all, handle continuity, that is, they do not embody calculus, or, for example, statistical concepts, etc., and (ii) they handle actual structures of societal infras- tructure components and attributes of atomic and composite entities of these – usually by identical techniques thereby blurring what we think is an important distinction.
76
We shall first consider the structural components of societal infrastructures as simple entities, without considering any operations on these entities. In fact, in this paper we shall not consider operations on entities at all. This is possible, we claim, and in a sense in clear defiance of algebraic approaches — say as embodied in OO-methodologies — since, as we are claiming, that “world” of societal infrastructure components can be understood to quite some depth without considering their operations.
77
We shall then “map” parts and wholes into processes ! By an “ontological trick”
we re-interpret simple entities as processes and their connections, i.e., how they are put together, as channels between processes.
It is all very simple, or, at least, we need to first make it simple before we complicate things. In this paper we will only present the easy picture.
78
Structure of This Paper The rest of the paper is organised as follows. First, in Sect. 6.2, we give a first main, a meta-example, of syntactic aspects of a class of mereologies. It narrates and formalises an abstraction of what is here called ‘parts’: ‘assemblies’ and
‘units’. That is, structures of units with connectors that may be used to provide connections between parts. So an assembly has a mereology represented by units and sub-assemblies and their actual connections.
In Sect. 6.3 we informally show that the assembly/unit structures of Sect. 6.2 indeed model structures of a variety of infrastructure components.
Then, in Sect. ??, we discuss concepts of atomic and composite simple entities. With atomic simple entities we associate attributes, and these may exhibit conceptual structures, and with composite simple entities we associate attributes, any number of simple sub- entities and their mereology. We discuss notational and semantic means of expressing attributes and their possible structures, and sub-entities, and their mereologies. And we relate our presentation to the wider concept of mereology.
79
Section 6.4 “performs” the ontological trick of mapping the assembly and unit entities and their connections exemplified in Sect. 6.2 into CSP processes and channels, respectively
— the second and last main — meta-example and now of semantic aspects of a class of mereologies.
The paper does not discuss relations between what is presented here and other ap- proaches. As such we have renounced on the paper being a proper attempt at a proper scientific paper. We apologise.
6.2 A Syntactic Model of a Class of Mereologies
806.2.1 Systems, Assemblies, Units
We speak of systems as assemblies. From an assembly we can immediately observe a set of parts. Parts are either assemblies or units. We do not further define what assemblies and units are.
type
S = A, A, U, P = A | U value
obs Ps: (S|A) → P-set
Parts observed from an assembly are said to be immediately embedded in, that is, within, that assembly. Two or more different parts of an assembly are said to be immediately
adjacent to one another. 81
"outermost" Assembly
A
D311 D312
C31
B3 C12
B1
Units
Assemblies B4 C11
C21
C32
B2
C33
System = Environment
Figure 2: Assemblies and Units “embedded” in an Environment
A system includes its environment. And we do not worry, so far, about the semiotics
of all this ! 82
Embeddedness and adjacency generalise to transitive relations.
Givenobs Pswe can define a function, xtr Ps, which applies to an assemblyaand which extracts all parts embedded in a and including a. The functions obs Ps and xtr Ps define the meaning of embeddedness.
value
xtr Ps: (S|A) → P-set xtr Ps(a) ≡
let ps = {a} ∪obs Ps(a) in ps∪ union{xtr Ps(a′)|a′:A•a′ ∈ps} end
unionis the distributed union operator. Parts have unique identifiers. All parts observable
83
from a system are distinct.
type AUI value
obs AUI: P → AUI axiom
∀ a:A •
let ps = obs Ps(a) in
∀ p′,p′′:P •{p′,p′′}⊆ps∧ p′6=p′′⇒ obs AUI(p′)6=obs AUI(p′′) ∧
∀ a′,a′′:A •{a′,a′′}⊆ps ∧a′6=a′′ ⇒ xtr Ps(a′)∩xtr Ps(a′′)={}end
6.2.2 ‘Adjacency’ and ‘Within’ Relations 84
Two parts, p,p′, are said to be immediately next to, i.e., i next to(p,p′)(a), one another in an assembly a if there exists an assembly,a′ equal to or embedded ina such that pand p′ are observable in that assembly a′.
value
i next to: P × P → A →∼ Bool, prei next to(p,p′)(a): p6=p′
i next to(p,p′)(a) ≡ ∃a′:A• a′=a ∨a′ ∈xtr Ps(a) •{p,p′}⊆obs Ps(a′)
85
One part, p, is said to be immediately within another part, p′in an assembly a if there exists an assembly, a′ equal to or embedded in a such that p is observable ina′.
value
i within: P ×P → A →∼ Bool i within(p,p′)(a) ≡
∃ a′:A • (a=a′ ∨ a′ ∈ xtr Ps(a)) • p′=a′ ∧ p ∈ obs Ps(a′)
6.2.3 Transitive ‘Within’ Relations 86
We can generalise the immediate ‘within’ property. A part,p, is (transitively) within a part p′, within(p,p′)(a), of an assembly, a, either if p, is immediately within p′ of that assembly, a, or if there exists a (proper) part p′′ of p′ such that within(p′′,p)(a).
value
within: P × P → A →∼ Bool within(p,p′)(a) ≡
i within(p,p′)(a) ∨ ∃ p′′:P • p′′ ∈ obs Ps(p) ∧ within(p′′,p′)(a)
The functionwithin can be defined, alternatively, usingxtr Psandi withininstead of obs Ps 87
and within : value
within′: P × P→ A →∼ Bool within′(p,p′)(a) ≡
i within(p,p′)(a) ∨ ∃ p′′:P • p′′ ∈ xtr Ps(p) ∧ i within(p′′,p′)(a) lemma: within≡ within′
6.2.4 Transitive ‘Adjacency’ 88
We can generalise the immediate ‘next to’ property. Two parts,p, p′ of an assembly, a, are adjacent if they are either ‘next to’ one another or if there are two parts po, p′o such that p, p′ are embedded in respectively po and p′o and such thatpo, p′o are immediately next to
one another. 89
value
adjacent: P × P →A →∼ Bool adjacent(p,p′)(a) ≡
i next to(p,p′)(a) ∨
∃ p′′,p′′′:P• {p′′,p′′′}⊆xtr Ps(a)∧ i next to(p′′,p′′′)(a) ∧ ((p=p′′)∨within(p,p′′)(a)) ∧ ((p′=p′′′)∨within(p′,p′′′)(a))
90
Mereology, Part I So far we have built a ground mereology model, MGround. Let ⊑ denote parthood, x is part of y,x⊑y.
∀x(x⊑x)4 (1)
∀x, y(x⊑y)∧(y ⊑x)⇒(x=y) (2)
∀x, y, z(x⊑y)∧(y ⊑z)⇒(x⊑z) (3)
Let⊏denoteproper parthood, x is part of y,x⊏y. Formula 4 definesx⊏y. Equivalence 5 can be proven to hold.
∀x⊏y =def x(x⊑y)∧ ¬(x=y) (4)
∀∀x, y(x⊑y) ⇔ (x⊏y)∨(x=y) (5)
91
The proper part (x⊏y) relation is a strict partial ordering:
∀x¬(x⊏x) (6)
∀x, y(x⊏y)⇒ ¬(y⊏x) (7)
∀x, y, z(x⊏y)∧(y ⊏z)⇒(x⊏z) (8) Overlap,•, is also a relation of parts: Two individuals overlap if they have parts in common:
x•y =def ∃z(z ⊏x)∧(z ⊏y) (9)
∀x(x•x) (10)
∀x, y(x•y)⇒(y•x) (11)
92
Proper overlap, ◦, can be defined:
x◦y =def (x•x)∧ ¬(x⊑y)∧ ¬(y⊑x) (12) Whereas Formulas (1-11) holds of the model of mereology we have shown so far, For- mula (12) does not. In the next section we shall repair that situation.
The proper part relation, ⊏, reflects the within relation. The disjoint relation, H , reflects the adjacency relation.
x I
y =def ¬(x•y) (13)
93 Disjointness is symmetric:
∀x, y(x I
y)⇒(y I
x) (14)
The weak supplementation relation, Formula 15, expresses that if y is a proper part of x then there exists a part z such that z is a proper part of x and z and y are disjoint That is, whenever an individual has one proper part then it has more than one.
∀x, y(y⊏x) ⇒ ∃z(z ⊏x)∧(z I
y) (15)
94 Formulas 1–3 and 15 together determine the minimal mereology, MMinimal. Formula 15 does not hold of the model of mereology we have shown so far. We shall comment on this
in Sect. 6.3.6. 95
A Syntactic Model of a Class of Mereologies 6.2.5 Connectors
So far we have only covered notions of parts being next to other parts or within one another.
We shall now add to this a rather general notion of parts being otherwise related. That
notion is one of connectors. 96
Connectors provide for connections between parts. A connector is an ability be be connected. A connection is the actual fulfillment of that ability. Connections are relations between pairs of parts. Connections “cut across” the “classical” parts being part of the (or a) whole and parts being related by embeddedness or adjacency. 97
A
D311 D312
C31
B3 C12
B1
Units
Assemblies B4 C11
C21
C32
"outermost" Assembly K2
B2
C33 K1
System = Environment
Figure 3: Assembly and Unit Connectors: Internal and External
For now, we do not “ask” for the meaning of connectors ! 98 Figure 3 “adds” connectors to Fig. 2 on page 21. The idea is that connectors allow an assembly to be connected to any embedded part, and allow two adjacent parts to be connected.
4Our notation now is notRSLbut some conventional first-order predicate logic notation.
In Fig. 3 on the previous page the environment is connected, by K2, (without, as we shall later see, interfering with assemblies Aand B1), to partC11; the “external world” is connected, by K1, toB1; etcetera. Later we shall discuss more general forms of connectors.
99
From a system we can observe all its connectors. From a connector we can observe its unique connector identifier and the set of part identifiers of the parts that the connec- tor connects. All part identifiers of system connectors identify parts of the system. All observable connector identifiers of parts identify connectors of the system.
100
type K value
obs Ks: S → K-set obs KI: K → KI obs Is: K → AUI-set obs KIs: P → KI-set axiom
∀ k:K •card obs Is(k)=2,
∀ s:S,k:K • k ∈ obs Ks(s)⇒
∃ p:P •p ∈ xtr Ps(s)⇒ obs AUI(p) ∈ obs Is(k),
∀ s:S,p:P •∀ ki:KI • ki ∈obs KIs(p) ⇒
∃! k:K •k ∈ obs Ks(s) ∧ ki=obs KI(k)
101 This model allows for a rather “free-wheeling” notion of connectors one that allows internal connectors to “cut across” embedded and adjacent parts; and one that allows external connectors to “penetrate” from an outside to any embedded part.
102
We need define an auxiliary function. xtr∀KIs(p) applies to a system and yields all its connector identifiers.
value
xtr∀KIs: S → KI-set
xtr∀Ks(s) ≡ {obs KI(k)|k:K•k ∈ obs Ks(s)}
103
Mereology, Part II We shall interpret connections as follows: A connection between parts pi and pj that enjoy a piadjacent topj relationship, means pi ◦ pj, that is, although parts pi and pj are adjacent they do share “something”, i.e., have something in common. What that “something” is we shall comment on in Sect. 6.4.2. A connection between parts pi
and pj that enjoy a piwithinpj relationship, does not add other meaning than commented upon in Sect. 6.4.2 on page 35.
104
With the above interpretation we may arrive at the following, perhaps somewhat
“awkward-looking” case: a connection connects two adjacent partspi andpj where part pi
is within partpio and partpj is within partpjo where partspio and pjo are adjacent but not otherwise connected. How are we to explain that ! Since we have not otherwise interpreted
the meaning of parts, we can just postulate that “so it is” ! We shall, in Sect. 6.4.2 on page 35, give a more satisfactory explanation.
105
In Sect. 6.2.4 we introduced the following operators: ⊑,⊏,•,◦, and H
In some of the mereology literature [11, 12, 9] these operators are symbolised with caligraphic letters:
⊑:P: part,⊏:PP: proper part, •:O: overlap and H
:U: underlap.
6.2.6 Summary 106
This ends our first model of a concept of mereology. The parts are those of assemblies and units. The relations between parts and the whole are, on one hand, those of embedded- ness i.e. within, and adjacency, i.e., adjacent, and on the other hand, those expressed by connectors: relations between arbitrary parts and between arbitrary parts and the exterior. 107
Extensions A number of extensions are possible: one can add “mobile” parts and “free”
connectors, and one can further add operations that allow such mobile parts to move from one assembly to another along routes of connectors. Free connectors and mobility assumes static versus dynamic parts and connectors: a free connector is one which allows a mobile part to be connected to another part, fixed or mobile; and the potentiality of a move of a mobile part introduces a further dimension of dynamics of a mereology. 108
Environment System =
A
D311 D312
C31
B3 C12
B1
Units
Assemblies B4 C11
C21
C32
"outermost" Assembly
External Connectors K2
B2
K5 Ma
Mc Mb
Mobile Part Free Connector
C33 K1
Figure 4: Mobile Parts and Free Connectors
6.2.7 Comments 109
We shall leave the modelling of free connectors and mobile parts to another time. Suffice it now to indicate that the mereology model given so far is relevant: that it applies to a
somewhat wide range of application domain structures, and that it thus affords a uniform treatment of proper formal models of these application domain structures.
6.3 Discussion & Interpretation
110Before a semantic treatment of the concept of mereology let us review what we have done and let us interpret our abstraction (i.e., relate it to actual societal infrastructure components).
111
What We have Done So Far ? We have presented a model that is claimed to abstract essential mereological properties of machine assemblies, railway nets, the oil industry, oil pipelines, buildings and their installations, hospitals, etcetera.
112
Six Interpretations Let us substantiate the claims made in the previous paragraph. We will do so, albeit informally, in the next many paragraphs. Our substantiation is a form of diagrammatic reasoning. Subsets of diagrams will be claimed to represent parts, while Other subsets will be claimed to represent connectors. The reasoning is incomplete.
6.3.1 Air Traffic 113
Ground Control Tower
Aircraft
Control Tower
Continental
Control Control Control
Control ContinentalControl
Tower Tower
Ground Control
1..k..t 1..m..r
1..n..c 1..n..c
1..j..a
1..i..g 1..m..r 1..k..t 1..i..g
This right 1/2 is a "mirror image" of left 1/2 of figure ac/ca[k,n]:AC|CA
cc[n,n’]:CC rc/cr[m,n]:RC|CR
ac/ca[k,n]:AC|CA rc/cr[m,n]:RC|CR
ga/ag[i,j]:GA|AG ga/ag[i,j]:GA|AG
at/ta[k,j]:AT|TA at/ta[k,j]:AT|TA
gc/cg[i,n]:GC|CG
ar/ra[m,j]:AR|RA ar/ra[m,j]:AR|RA
gc/cg[i,n]:GC|CG
Terminal Area Area Terminal
Centre Centre
Centre Centre
Figure 5: An air traffic system. Black boxes and lines are units;red boxes are connec- tions
114
Figure 5 shows nine (9) boxes and eighteen (18) lines. Together they form an assembly.
Individually boxes and lines represent units. The rounded corner boxes denote buildings.
The sharp corner box denote an aircraft. Lines denote radio telecommunication. Only where lines touch boxes do we have connections. These are shown as red horisontal or vertical boxes at both ends of the double-headed arrows, overlapping both the arrows and the boxes. The index ranges shown attached to, i.e., labelling each unit, shall indicate that there are a multiple of the “single” (thus representative) unit shown. Notice that the
‘box’ units are fixed installations and that the double-headed arrows designate the ether where radio waves may propagate. We could, for example, assume that each such line is characterised by a combination of location and (possibly encrypted) radio communication frequency. That would allow us to consider all line for not overlapping. And if they were overlapping, then that must have been a decision of the air traffic system.
6.3.2 Buildings 115
A
H I
J
L M
K C
F G E
B
D
Door Connector Door Connection
Installation Connector
(1 Unit) Installation Room
(1 Unit)
Sub−room of Room Sharing walls (1 Unit) Adjacent Rooms Sharing (one) wall (2 Units)
κ γ
ε
ι ω
Figure 6: A building plan with installation
116
Figure 6 shows a building plan — as an assembly of two neighbouring, common wall- sharing buildings, Aand H, probably built at different times; with room sections B, C, D andE contained withinA, and room sectionsI, JandKwithinH; with room sectionsLand M within K, and F and G within C. Connector γ provides means of a connection between 117 A and B. Connection κ provides “access” between B and F. Connectors ι and ω enable input, respectively output adaptors (receptor, resp. outlet) for electricity (or water, or oil), connectionǫ allow electricity (or water, or oil) to be conducted through a wall. Etcetera.
6.3.3 Financial Service Industry 118
119
Figure 7 on the following page shows seven (7) larger boxes [6 of which are shown by dashed lines] and twelve (12) double-arrowed lines. Where double-arrowed lines touch upon (dashed) boxes we have connections (also to inner boxes). Six (6) of the boxes, the dashed line boxes, are assemblies, five (5) of them consisting of a variable number of units;
five (5) are here shown as having three units each with bullets “between” them to designate