ONT Re: Zeroth Order Theories (ZOT's)
¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤
Example. Molly's World
I think that we are finally ready to tackle a more respectable example.
The Example known as "Molly's World" is borrowed from the literature on
computational learning theory, adapted with a few changes from the example
called "Molly’s Problem" in the paper "Learning With Hints" by Dana Angluin.
By way of setting up the problem, I quote Angluin's motivational description:
| Imagine that you have become acquainted with an alien named Molly from the
| planet Ornot, who is currently employed in a day-care center. She is quite
| good at propositional logic, but a bit weak on knowledge of Earth. So you
| decide to formulate the beginnings of a propositional theory to help her
| label things in her immediate environment.
|
| Angluin, Dana, "Learning With Hints", pages 167-181, in:
| David Haussler & Leonard Pitt (eds.), 'Proceedings of the 1988 Workshop
| on Computational Learning Theory', Morgan Kaufmann, San Mateo, CA, 1989.
The purpose of this quaint pretext is, of course, to make sure that the
reader appreciates the constraints of the problem: that no extra savvy
is fair, all facts must be presumed or deduced on the immediate premises.
My use of this example is not directly relevant to the purposes of the
discussion from which it is taken, so I simply give my version of it
without comment on those issues.
Here is my rendition of the initial knowledge base delimiting Molly’s World:
Logical Input File: Molly.Log
o---------------------------------------------------------------------o
| |
| ( object ,( toy ),( vehicle )) |
| (( small_size ),( medium_size ),( large_size )) |
| (( two_wheels ),( three_wheels ),( four_wheels )) |
| (( no_seat ),( one_seat ),( few_seats ),( many_seats )) |
| ( object ,( scooter ),( bike ),( trike ),( car ),( bus ),( wagon )) |
| ( two_wheels no_seat ,( scooter )) |
| ( two_wheels one_seat pedals ,( bike )) |
| ( three_wheels one_seat pedals ,( trike )) |
| ( four_wheels few_seats doors ,( car )) |
| ( four_wheels many_seats doors ,( bus )) |
| ( four_wheels no_seat handle ,( wagon )) |
| ( scooter ( toy small_size )) |
| ( wagon ( toy small_size )) |
| ( trike ( toy small_size )) |
| ( bike small_size ( toy )) |
| ( bike medium_size ( vehicle )) |
| ( bike large_size ) |
| ( car ( vehicle large_size )) |
| ( bus ( vehicle large_size )) |
| ( toy ( object )) |
| ( vehicle ( object )) |
| |
o---------------------------------------------------------------------o
All of the logical forms that are used in the preceding Log file
will probably be familiar from earlier discussions. The purpose
of one or two constructions may, however, be a little obscure,
so I will insert a few words of additional explanation here:
The rule "( bike large_size )", for example, merely
says that nothing can be both a bike and large_size.
The rule "( three_wheels one_seat pedals ,( trike ))" says that anything
with all the features of three_wheels, one_seat, and pedals is excluded
from being anything but a trike. In short, anything with just those
three features is equivalent to a trike.
Recall that the form "( p , q )" may be interpreted to assert either
the exclusive disjunction or the logical inequivalence of p and q.
The rules have been stated in this particular way simply
to imitate the style of rules in the reference example.
This last point does bring up an important issue, the question
of "rhetorical" differences in expression and their potential
impact on the "pragmatics" of computation. Unfortunately,
I will have to abbreviate my discussion of this topic for
now, and only mention in passing the following facts.
Logically equivalent expressions, even though they must lead
to logically equivalent normal forms, may have very different
characteristics when it comes to the efficiency of processing.
For instance, consider the following four forms:
| 1. (( p , q ))
|
| 2. ( p ,( q ))
|
| 3. (( p ), q )
|
| 4. (( p , q ))
All of these are equally succinct ways of maintaining that
p is logically equivalent to q, yet each can have different
effects on the route that Model takes to arrive at an answer.
Apparently, some equalities are more equal than others.
These effects occur partly because the algorithm chooses to make cases
of variables on a basis of leftmost shallowest first, but their impact
can be complicated by the interactions that each expression has with
the context that it occupies. The main lesson to take away from all
of this, at least, for the time being, is that it is probably better
not to bother too much about these problems, but just to experiment
with different ways of expressing equivalent pieces of information
until you get a sense of what works best in various situations.
I think that you will be happy to see only the
ultimate Sense of Molly’s World, so here it is:
Sense Outline: Molly.Sen
o------------------------o
| object |
| two_wheels |
| no_seat |
| scooter |
| toy |
| small_size |
| one_seat |
| pedals |
| bike |
| small_size |
| toy |
| medium_size |
| vehicle |
| three_wheels |
| one_seat |
| pedals |
| trike |
| toy |
| small_size |
| four_wheels |
| few_seats |
| doors |
| car |
| vehicle |
| large_size |
| many_seats |
| doors |
| bus |
| vehicle |
| large_size |
| no_seat |
| handle |
| wagon |
| toy |
| small_size |
o------------------------o
This outline is not the Sense of the unconstrained Log file,
but a result of running Model with a query on the single
feature "object". Using this focus helps the Modeler
to make more relevant Sense of Molly’s World.
Jon Awbrey
¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤~~~~~~~~~¤