Prepositional Maps

Active maps are used to implement the meaning of prepositions, to manipulate structure for collocations, and to connect multiple clauses in a compound sentence. The maps match and build structure, and are provided with the relevant parameters – the objects either side of a preposition, for instance.

The map first sets up a new level of hypothesising - if it fails, all its housekeeping, including any building, will be undone by backtracking. If it succeeds, it is cleaned ready for re-use.

The operations that active maps support are:

A link between variables in the map must either directly exist, or be inheritable. A typical use for Match is to check that a node has a specified parent. Most maps fail when used – there may be fifty maps for the different ways that "of" can be used, only one of which should succeed for any particular use.
An attribute may be actualised (that is, an inherited property is realised if it does not directly exist), and then given a value. Actualisation can extend over multiple levels – a component is actualised, then an attribute of that component, and so on.
Structure is built directly from the template given in the map, usually after detailed checking that it is appropriate. This allows for the creation of new structure that is not directly inheritable.
One object replaces another. A map may build a relation with an unknown object as the subject. Another map then replaces the unknown object with a known object. There is a consistency check, which must succeed if the Replace operation is to proceed (an Unknown object will match with anything).
Two objects are merged together, the new object acquiring the properties of both predecessor objects. The objects need not be strictly consistent, but must not be inconsistent with each other. Merging is a common operation in a dynamic network structure, as new identity bridges form (one thing is seen to be the same as another - Bill Bloggs is seen as "the man wanted in relation to...", so the objects are merged - a good alibi would have seen them as inconsistent).
Change Object
An incoming object (one of the parameters) is changed to another object. The usual case is for the incoming parameters to remain as they were in the text, as in "A OF B", the A remains the object of relevance to the rest of the sentence. Sometimes this needs to change - "3% of the cars" will produce a new object "cars" with a different count - it needs to replace the 3% in the sentence.
The value of a numeric or string variable is pushed along the link. The value is not followed, but if an inconsistency occurs as a result of pushing, the object is removed from the set of alternatives. It is commonly used with SELECT.
Do nothing.

Operators within maps operate on objects rather than values - see Map Functions.

As soon as the map succeeds in matching and it builds the structure, the objects, states and values are pushed into (and out of) the new structure, which may cause switching, cutting of ranges or further building.

Example Preposition

Take "by" as an example

The house by the lake – location

The man was shot by the robber – provides subject for passive verb

He was forced to run by the Mafia – skips over an infinitive to connect to the subject of a causative verb (" run by the lake" would have been handled differently)

An option exercisable by written notice

This is a little more complicated – only a person can exercise an option, so attempting to make "written notice" the subject of the ToExercise relation will fail. The "by" here is short for "by means of", or "using". So the fragment becomes

An unknown person can exercise the option by means of a written notice.

Use is one of the trickiest things a preposition does –

He cut the rope with a knife

is transformed into

He used a knife to cut the rope

Where ToUse is a three connection relation (a causative verb) –

Person ToUse Action
        Used Thing

The prepositional mechanism is also used to handle noun phrases –

Business operations

Property asset

A map can include building a script joining the parameters and any newly constructed objects – the script can do things like adding an object to the dictionary or checking a clause reference or calculating a day number (a DateTime).

The number of different maps for each preposition needs to be kept to a minimum, as it is time consuming for the machine to go through them each time. "Of" may end up with fifty, "by" with ten, "under" with five. Many prepositions share maps – "of" and GermanPossessive, for instance.

Sample Maps

The noun phrase "Business Operations" is handled by


objectOfRelation.jpg (81312 bytes)

In this map, the right hand parameter is matched as a child of Relation2 (the PARENT operator on the right), then a relation structure (RELATION2 on the left of the diagram) is actualised, with the left hand parameter becoming the object of the relation. An Unknown is built as the subject of the relation.

Tenant’s business operations

The map for this (GermanPossessive) either actualises a relation, or inserts its left hand object as the subject of an existing relation. If the phrase had been

Tenant’s operations

the relation structure would not have been actualised yet.

Map Sequence

Maps are arranged in sequence, with maps that will return true or false existence encountered first. In searching through maps, any that will return a true or false for existence will terminate the search. This means less time taken up in searching, and no need to protect a possible map against being included in a set with a true map – so no need to protect against the characteristics that select for the other map.

Part of the sequence of maps for "of"


ofstructure.jpg (102332 bytes)

Joining Clauses

Maps are used as a general way of combining the rich variety of subordinate/superordinate and superordinate/subordinate clauses.

A map for joining a subordinate If and a superordinate Then clause. An inverted AND operator is inserted, to represent exactly what logical implication implies (existence is handled separately).

subsuper.jpg (103360 bytes)


Map Functions

Meanings of With

More on Chains