Language, logic and truth

Copyright 2016 Graham Berrisford. One of about 300 papers at http://avancier.website. Last updated 17/09/2017 02:08

 

Enterprise architecture is about business system planning, and is underpinned by general system theory

Before we get to general system theory - what theory underpins that?

Systems are islands of orderly behaviour, in which the logic of interactions is describable.

This paper is the fourth in a series on description, communication, language and logic.

 

To apply system theory is to observe or envisage an island of orderly behaviour in the real world.

And describe it logically using a verbal language, or a model that is a graphical representation of verbal language.

The aim must be to create a clear, unambiguous and testable description of a system.

This paper discusses the use of language to describe things, along with the nature of logic and truth.

 

Contents                                  

Using language to name and typify things. 1

Vocabulary. 3

Grammar. 5

Asides on ambiguities. 7

Vocabularies and grammars in enterprise data/information management 8

 

Using language to name and typify things

An infinity of unknown, unnamed and unclassified realities existed before people observed them.

When people first noticed some wandering stars, they named them Venus, Mars and so on.

We use names not only to identify particular things but also to describe their qualities.

In “Venus is a planet”, the word “planet” is the name of a man-made generalisation.

It is the name of a type (a concept, quality, property or attribute) used to describe things like Venus and Mars.

 

Notice that to use a descriptive word is to go beyond the immediate thing and typify it.

“In describing a situation, one is not merely registering a [perception],

one is classifying it in some way, and this means going beyond what is immediately given.”

Chapter 5 of “Language, truth and logic” A J Ayer.

 

That’s how language works; we identify particular things and describe them with reference to general types.

We use words to name things and describe them using type names such as “planet”, “dangerous”, “tall”, blue” and “beautiful”.

We could use other kinds of symbol in place of words, but words come so naturally to us, we can’t get them out of our minds.

 

Don’t run ahead with the idea that all types are named verbally, or defined by humans

Descriptive types were not invented by man; they were invented by biological evolution..

How do we know an animal recognises a given type?

We ask: Does it repeatedly react to particular things of that type in the same or appropriate way?

If yes, then that type must somehow be encoded/symbolised in the animal’s biochemistry (the “how” is irrelevant).

 

Most animals recognise and react to a situation that is of the general type we call “dangerous”.

Some animals communicate this to others by sounding an alarm, a signal that symbolises all situations of that type.

The “others” are usually members of the same species, sometimes members of different species.

 

Have you ever engaged a kitten by wiggling a piece of string?

Then you know the type we might call “mouse tail like” is somehow encoded in a cat’s biochemistry.

It may be relevant that Hubel and Wiesel (1959) showed cat’s brains have cells dedicated to detecting movement in slit-shaped spots of light.

 

Honey bees must recognise things of the type we might name “pollen source”.

You may know they also communicate about pollen sources by performing and observing dances.

For a particular pollen source, honey bees communicate particular values for its “distance” and “direction”.

They encode/decode values for the universal types “distance” and “direction” in/from the form of a dance.

The proof that bees “know” the symbols for these two types is that bees do find pollen where it was described.

The dance-form symbols that bees use for these types must correspond to models encoded in their internal biochemistry.

We don’t know, and it doesn’t matter, what form those internal mental models take.

 

Far beyond other animals, humans have increased and refined the creation and use of mental models.

Our ability to do this depends on our uniquely-well developed ability to symbolise types using words.

We say that particular things instantiate (manifest, exemplify, or give values to) universal concepts or qualities.

Shouting “Danger!” informs others that the current situation is an instance of the general type “dangerous”.

Saying “The sky is blue” informs people that the sky exhibits the color widely known as “blue”.

 

We humans evolved to communicate information by using words to name and describe things.

Then, we learnt to record speech, and formalise it, in written records (and later, in digital messages and memories).

Moreover, we play with the very idea of a type; we use words to create new types and change them.

Note the recursion here.

·         A description can be described.

·         A type is defined using types.

·         A language is defined using a language.

Vocabulary

A language is made of up a vocabulary and a grammar.

How to define a vocabulary? This section discusses three ways: informal, formal and semi-formal.

 

Informal natural language dictionaries

We naturally define words in a circular way using other words.

We try to define a word using widely-understood other words.

The convention used in ordinary dictionary definition is “genus plus difference”.

This table contains two examples (note the generalisation “A body in space” is not in the dictionary).

Term

Genus

Difference

Type

Super type

Additional properties/types

Word

More generic concept

More specific characteristics

Star

A body in space

Large, remote, incandescent

Planet

A body in space

Largish, orbits a star

 

Thus, we use words to define words, types to define types.

It is in the nature of human discourse to use language in circular, fuzzy and fluid ways.

Dictionaries are designed for ease of use, meaning each entry should be understandable on its own.

They must continually be updated and modified to reflect changes in how words are used.

 

Our brains connect ideas loosely, akin to a natural language dictionary.

We continually work with and around the synonyms and ambiguities of natural language.

But natural language is too ambiguous and inconsistent for business systems that formalise communications, perhaps with millions of customers.

So, when formalising systems we have to be more precise about the meanings of words used in those communications.

 

Formal domain-specific ontologies

Within a stable domain of knowledge, it may be possible to build a formal hierarchical ontology.

At the top are a few axiomatic words/types (e.g. entities and events).

Second level words are defined a subtypes that inherit from the axiomatic words

Other words are defined a subtypes of second level words, and so on.

The end product is a top-down hierarchical vocabulary of this kind.

 

Thing: a describable element of the universe.

Event: a thing that is a transient behavior, occurs in time.

Entity: a thing that is a persistent structure, locatable in space.

Organism: an entity that is an individual life form.

Plant: an organism that consumes carbon dioxide, produces oxygen.

Rose: a plant that is flowering, woody, thorny.

 

One trouble is that multiple inheritance is common, meaning a type inherits properties from several super types.

Another is that position of a term in the hierarchy can change over time (c.f. fragile inheritance trees in OO programming).

Even the top level classifying types may be called into question.

E.g. entities and events may appear to be mutually exclusive, yet sometimes an event is seen as an entity, or vice-versa.

Outside of mathematics and the like, language is often too fuzzy and fluid for a deep classification hierarchy.

It is difficult to impose one hierarchical ontology across several domains of knowledge.

 

Semi-formal vocabularies and data dictionaries

In formal documents, especially legal ones, it is important that terms are used in a precise, unambiguous, consistent and coherent way.

To this end, terms are defined in some kind of preface or glossary.

 

Enterprise data managers build vocabularies and data dictionaries with the same aim.

To begin with, business people may have various (private, internal) mental models of what a business term means.

Terms like “Customer”, “Account” and “Policy” can mean surprisingly different things to different people.

So, how to build a semi-formal dictionary of terms?

The approach might be formalised along these lines:

 

1.      Form a panel of business people.

2.      Define and agree some axiomatic/base/root terms (say Party, Person, Process, Product, Place, Point in time, Purpose).

3.      Introduce a term (say Customer) and perhaps give it a draft definition

4.      Ask the panel to vote on the heading that best fits the new term.

5.      Each person inspects their own model of the term and chooses the best fitting base term.

6.      Place the word where the majority agree it fits best (though it may inherit also from other base terms).

 

At step 5, if only intuitively, people look for nameable properties that overlap with the properties of the base terms.

Taking Customer as an example: perhaps a minority vote to classify it under Person and the majority vote for Party.

 

The result is semi-formal dictionary organised under a shallow and informal ontology.

The meaning of a term does not require exploration of a deep hierarchical ontology.

The term’s definition should be understandable on its own, supplemented by reference to its base term heading.

Grammar

A language is made of up a vocabulary and a grammar.

How to define a grammar?

 

Take this particular sentence: The cat sat on the mat last night, in the living room, for a rest.  

The table below maps elements of that sentence to universal types in different schools of thought.

Schools of thought

Object of thought

Systems analysis

System theory

Predicate logic

Grammar

A sentence

Who?

Active structure

Subject

Noun

The cat

How?

Process or behavior

Predicate

Verb

sat on

What?

Passive structure

Object

Noun

the mat

When?

Position in time

 

Adverb

last night

Where?

Position in space

 

Adverb

in the living room

Why?

Purpose or aim

 

Adverb

for a rest.

 

(In grammar, adverbs include phrases that qualify the meaning of a verb, e.g. by expressing its time, place and purpose.)

 

John Gorman’s definition of an answer to the question ‘Who?’ is along these lines:

Who? a person or organization that takes an active role and can make a change.

The types “person” and “organisation” are generalised to “actor” in the international system modelling standard called ArchiMate.

Making that small simplification, John’s definition can be re-expressed using other theories.

 

Type theory might lead us to this definition:

Type name: Who.

Type definition: an “actor” that is a “role taker” and “change maker”.

Notice how a type is defined by listing other types, each being a property that things of the first type share.

(However, types in nature and natural language are often polythetic, meaning not all properties need be shared by every typified thing.)

 

General system theory might lead us to this definition:

Who: an “active structure instance” that is a “person” or “organisation”.

Active structure instance: a “system actor or component” that can perform “behaviors”.

 

Predicate logic might lead us to this definition:

Who <is an> actor that <can take a> role, and <can make a> change.

 

Predicate logic is a simple grammar for forming sentences.

We are far from Spock, from Vulcans who think purely logically.

Experiments have shown people do not instinctively or readily understand formal logic.

Biological evolution did not create that capability in human beings.

Natural language is loose, uncertain and ambiguous.

Nevertheless, we can form natural language sentences that can be tested as either true or false.

 

In mathematics, the predicate on X may be expressed as P: X→ {true, false}.

In natural language, a predicate is a verbal phrase, with or without an object, which states something about a subject.

A statement may be expressed in the form of a proposition or definition called a triple.

·         Subject: the particular thing (think noun) or general type (think adjective) that is described.

·         Predicate: a verb or verbal phrase that either stands alone or relates the subject to the object

·         Object: a particular thing or general type that is related to the subject, by the predicate.

 

A predicate verb can be used to describe a particular thing on its own or its relationship to another thing.

·         Subject <predicate> object.

·         Mary <was driving>.

·         Mary <was driving> the car.

·         He <stole> the phone Mary bought last week.

·         My mother <is associated with> my father.

 

A predicate verb can be used to relate general types to each other.

·         Subject <predicate> object.

·         “Mother” <is logically associated with> “father”.

·         “Customer” <is logically associated with> “invoice”.

·         “Person” <is an> “actor”.

·         “Rectangle” <is a> “quadrilateral”.

·         “Square” <is a> “rectangle”.

 

A predicate verb can be used to relate a particular thing to a general type.

·         Subject <predicate> object.

·         The man on the moped <is a> “thief”.

·         This rectangle <is> “square”.

·         This rectangle <is a> “square”.

·         The current situation <is> “dangerous”.

·         Pluto <is a> “planet”.

 

How to decide whether any statement listed above is true or false?

You may choose from the following options:

·         test by logical analysis that the subject relates as described to the predicated object

·         test by physical measurement that the subject relates as described to the predicated object

·         devise test cases, run tests, and compare results with predictions

·         ask a judge or jury to examine the subject, and give a verdict.

 

Note that in the statements above, general types are distinguished (from particular things) using italics, thus “type”.

In spoken language, the distinction rarely troubles us; and in written language it can be distracting.

So what follows puts types in italics only where it seems helpful, in the particular context.

Asides on ambiguities

 

The “is a” relationship

The ambiguity of the <is a> relationship is notorious, since it appears in two kinds of proposition.

·         A thing <is an> instance of a type.

·         A type <is a> subtype of another type.

 

Consider: This rectangle <is a> “square”.

Here, <is a> means <is an instance of> or <embodies> or <gives values to the properties of> the type named “square”.

Consider: “Square” <is a> “rectangle”.

Here, <is a> means <is a subtype of> or <is a kind of> or <shares or extends the properties of> the type named “rectangle”.

 

The “is” relationship

The <is> relationship is also ambiguous since it appears in two kinds of proposition.

·         A Thing <is> Value (meaning – the thing has an attribute with that value, instantiates an attribute type with that value).

·         A Thing <is> Type (meaning – the thing embodies that type)

 

Consider: The sky <is> blue.

Here, <is> means the sky has a colour attribute with the value blue.

Consider: This rectangle <is> “square”.

Here, <is> means this rectangle instantiates the type named “square”.

 

On states of a finite state automata as types

Consider a natural thing you know that has four states typified as: egg, caterpillar, pupae and butterfly.

This is a Finite State Automaton (FSA); meaning it is has one state at a time, but two or more states over time.

We can define this as one type with four different states.

Or else define it as four different types (so one thing changes from one type to the next).

And if we design an FSA, then modify it during the life of a thing that instantiates it, then that thing must adopt the behavior of the second, different, type.

Vocabularies and grammars in enterprise data/information management

The vocabulary of an enterprise.

Data dictionaries are vocabularies.

They list and define business terms for enterprise data/information management purposes.

 

Semi-formal categorisation of terms

In his Q6 framework, John Gorman categorises terms using the questions: Who? How? What? When? Where? Why

See the discussion of semi-formal vocabulary definition above.

 

Naming terms

Data managers usually develop a naming standard for terms

The standard dictates how terms may be constructed from multiple words, linked by separators etc. E.g. Supplier-Purchase-Order-Number.

 

Defining terms

Standards may constrain definitions to ensure they are more precise, unambiguous, consistent and coherent.

Definitions may be supplemented and formalised by associating that term to other terms in an entity-attribute-relationship model.

 

Creating new terms

Business people may work with and around the synonyms and ambiguities of natural language.

But when digitising a business system, people often have to invent new terms to disambiguate business language.

 

Scope

Expanding any semi-formal dictionary to cover several domains of knowledge is difficult

Administration of the dictionary becomes untenable.

However there are architectural strategies that can be adopted to alleviate the problem.

 

Data management

Data Stewards may be appointed not only to maintain the definitions of terms within designated knowledge domains.

But also to manage the confidentiality, integrity and availability of data values held by the organisation.  

The grammar of a shared memory space

You can use predicate logic to define the data structure in a shared memory space

 

The semantic web

The semantic web is based on using predicate logic to relate web resources.

The idea is that the subject, the predicate (and perhaps the object also) are identified using domain names or URIs.

 

The vision of a world-wide semantic web (implying a stable global vocabulary or dictionary) seems incredible.

“The reality isn't a linked data web of interconnected resources.

More real is a set of linkable data - marked up or stored in some queryable format, selectively findable and accessible via tools”

https://www.informationweek.com/software/information-management/semantic-web-business-going-nowhere-slowly/d/d-id/1113323

 

Entity-attribute-relationship models (aka logical data models)

These models embody the conventions of predicate logic to describe stored data.

A predicate verb can be used to describe a particular entity.

·         An entity instance <has or relates to> an attribute value or entity instance.

·         The customer 999 <has> the address 30 High Street.

·         The customer 999 <is due to pay> invoice 9999.

 

A predicate verb can be used to relate general types to each other.

·         An entity type <has or relates to> an attribute type or entity type.

·         “Customer” <has> the attribute type “address”.

·         “Customer” <is a kind of> “business party”.

·         One “customer” <may place> many “orders”.

·         One “order” <is placed by> one and only one “customer”.

 

A predicate verb can be used to relate a particular thing to a general type

·         An entity instance <has or relates to> an attribute type or entity type.

·         The customer 999 <has> the attributes “name” and “address”.

·         The customer 999 <pays> “invoices”.

The grammar of a message

You can use a regular expression to define the data structure in a message.

 

tbd

 

 

All free-to-read materials on the Avancier web site are paid for out of income from Avancier’s training courses and methods licences.

If you find them helpful, please spread the word and link to the site in whichever social media you use.