Also beware the temptation to design a grand hierarchy of all meanings. There have been many attempts in the last 300 years: [Eco95] often as part of the design of a universal or perfect language. None of them have stuck. On the other hand you can use these attempts as a source of ideas to model specific application domains and user concepts. There is a well tested classification system for English called Roget's Thesaurus.
Each application domain has its own languages and these need to be understood when developing software. There is some evidence that constructing a clear and precise model of such a domain is a step in the direction of better software. Mathematics and logic can be very helpful with eliminating the "goo and dribble" and boiling things down[Asimov].
What follows here are some examples drawn from the twentieth century. By the end of the twentieth century and start of the twenty-first century there were several logical models of natural language placed on the web in the form of ontologies. Below are some examples of one way the MATHS notation could be used to express these hierarchies but they are not intended to be a complete and finished description. Professionals have been working on these, see [ Ontologies in index ] [ lookup.php?search=ontolog ] for more.
This page gives examples of how to use the logical fragment of MATHS to construct models of natural world phenomena like dogs, cats, rocks, and parents(STUFF). This is the best approach when we want to express properties of the objects or entities in a domain.
An alternative would be to use Sets and Relations instead of Nets of variables and axioms. This is close to the way that abstract algebras like groups are modeled in MATHS [ notn_6_Algebra.html ] [ math_43_Algebras.html ] [ notn_7_OO_vs_Algebra.html ] for example. The SUMO ontology is also best modeled this way. See [ Suggested Upper Merged Ontology ] at the end of this page.
A statement like
either A or B.asserts the existence of two Boolean variables A and B and the property that precisely one of them is true. The above is short hand for:
A::@,
B::@,
|- A or B.
|- not(A and B).Similarly,
either A, B, or C.asserts the three conditions, but only one is true at a time. If A is true then B and C are false.
.RoadWorksAhead
I may be moving the following sample into my directory of samples: [ http://cse.csusb.edu/dick/samples/ ] before September 2004.
Source: Chi 92, Michelene T H Chi, Figure on page 41 in "The Science & Learning Math and Science", NSF Mosaic V23n2(Summer 92)p37..43
Mistakes in learning science:
.RoadWorksAhead
Source: Leech, "Semantics", Penguin Books 1974 [Leech 74] however this kind of hierarchy goes back a long way to the Tree of Porphyry [ Tree_of_Porphyry ] (Wikipedia) and [ PorphyryTree.html ] at the University of Washington.
Leech [Leech74] preents the idea (from anthropology) that terms in natural language can be given meaning in terms of components:
man +HUMAN+ADULT+MALE
woman +HUMAN+ADULT-MALE
boy +HUMAN-ADULT+MALE
girl +HUMAN-ADULT-MALEComponents match the idea of attributes in a MATHS Net.
The following Nets translate Leech's diagram on page 121 of his book.
The above creates a net with Boolean attributes: countable, mass, concrete, abstract, singular, plural, ... and so on.
We can now express Leech's example above:
. . . . . . . . . ( end of section Stuff) <<Contents | End>>
}
For more on natural spatial relations see [ math_93_Graphics.html ]
Source: Leech pp234-237.
Source: Anthropology??
For R: {father, mother, son,daughter, child_of, sister, brother, ....}, x R y::=x is a R of y.
ownership:@OWNERSHIP. for x,y:$ STUFF, x owns y ::= x /owner;ownership;owned y.
Let
Here is my second draft at transmogrifying the top of SUMO into MATHS. Because it is expressed in terms of sets of objects and the properties of the sets (not the properties of the objects in the sets) it best to express it as a net of set definitions and axioms about these sets.
. . . . . . . . . ( end of section Sampler of Ontologies) <<Contents | End>>
First here [ ../samples/tenses.html ] is a list of English tenses with examples of the syntax and Reichenbach's semantics.
Some developments from this and The classical (2000 year old) approach has beeen reborn in software engineering research. This is the study of temporal logics and can be found in [ logic_9_Modalities.html ] (Modal logic).
Another direction in MATHS is to use Dynamic Predicates that directly express changes as relations between a past and a future state by putting a prime(') on future variables. For more on this see [ intro_dynamics.html ] and [ math_14_Dynamics.html ] in this set of pages. This is further based on the theory and notation of relationships [ logic_41_HomogenRelations.html#Paths and Trajectories ] and general systems [ maths/math_71_Auto...Systems.html#Discrete_Dynamic_System ] and automata theory.
A fluent is a predicate that changes value with time. It is quite feasible to express this in first-order logic by adding an extra argument. Thus the proposition "It is raining" might be rendered as
Thus
Properties of objects -- for example the cat is on the mat -- might be expressed as a predicate with three arguments
Thus
In MATHS we can write something like this
So that
The following "box" is a direct quote from [ #2 ] (Stanford Encyclopedi of Philosophy).
The inference above is cast in logical form as
Also see the Event Calculus of Kowalski and Sergot (1986).
Partly Baked Ideas
Net
Very flexible -- allows the same logic to handle many different temporal epistimologies by adjusting Time and Place.
Also... event tokens could act as objects:
Also compare "Babel 17"[Delaney] where events are given a verbal tag for future reference.
The next level of generality is to reify the verbs:
This then permits statements at the meta level:
Perhaps we need to define
The precise time of an event is never known, but is often known to lie in a range. For example, the 12th of January 1945 is a range of 24 hours. So define,
Modelling places we need to notice that (1) they are regions (not points) in a space, and (2) they change in time. For example the place Rome has changed its boundaries many time in the last 3 thousand years. So, I start by postulating a Space inwhich we can specify places...
Probably this will have some kind of topology -- which makes the study of events dependent on some deep and abstract mathematics (see Topology below if you want details).
The Events being discussed could be real events or events in a piece of fiction or even might have beens. These are distinguished by the different Spaces -- we can have rain occuring in a real place, like Manchester, England, and in a fictional place like Bree in the Middle Earth.
Sample descriptions
Jim sees Mary
MEB gives birth to RJB
rain
Example: it is always raining in Manchester (given that manchester isa Place):
Now an even more speculative development of what a Description moght be:
OR define
How to express change?
But
. . . . . . . . . ( end of section Tenses, Time, and Temporal modalities) <<Contents | End>>
The first atteempt below creates a new syntax for facts about systems but leaves the semantics undefined. The second attempt defines a set of natural predicates with MATHS that cover the commonest statements made about systems.
P3Basic English -- a subset of Basic English that uses the present tense(P) and third person only(3).
SASS is a `Simple ASsembler System`
Pass1 is a process in SASS
Pass2 is a process in SASS
Symbols is a store in SASS
SASS gets input from source_code
SASS sends output to object_code
object_code is output from SASS
Pass1 gets lines from source_code
Pass1 sends labels and addresses to Symbols
Pass2 gets instructions from source_code
Pass2 gets addresses from symbols
Pass2 gives object_code to output
Example Queries
A semantic approach is to use natural predicates.
Or infix operators with structures
. . . . . . . . . ( end of section Systems English -- a subset of Basic English) <<Contents | End>>
. . . . . . . . . ( end of section Semantics of English) <<Contents | End>>
Proofs follow a natural deduction style that start with assumptions ("Let") and continue to a consequence ("Close Let") and then discard the assumptions and deduce a conclusion. Look here [ Block Structure in logic_25_Proofs ] for more on the structure and rules.
The notation also allows you to create a new network of variables and constraints. A "Net" has a number of variables (including none) and a number of properties (including none) that connect variables. You can give them a name and then reuse them. The schema, formal system, or an elementary piece of documentation starts with "Net" and finishes "End of Net". For more, see [ notn_13_Docn_Syntax.html ] for these ways of defining and reusing pieces of logic and algebra in your documents. A quick example: a circle might be described by Net{radius:Positive Real, center:Point, area:=π*radius^2, ...}.
For a complete listing of pages in this part of my site by topic see [ home.html ]
For a more rigorous description of the standard notations see