ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] Common Logic Controlled English (CLCE)

To: "Horning, Jim" <Jim.Horning@xxxxxxxxxx>
Cc: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: "John F. Sowa" <sowa@xxxxxxxxxxx>
Date: Mon, 19 Mar 2007 18:03:52 -0500
Message-id: <45FF16D8.10305@xxxxxxxxxxx>
Jim,    (01)

The last constraint in the employee.txt file covers that:    (02)

> Reading this, a thought popped into my head: If every employee directly
> reports to a manager, who does the CEO directly report to?  Not the
> Board, because it is not an employee.  There's probably a constraint
> somewhere against cycles in the reporting graph, so not to him/herself.
> Is directly reports a partial function?    (03)

The last constraint at the bottom of the file excludes the CEO:    (04)

    For every company,
    exactly one manager in the company is the CEO of the company;
    every employee of the company except the CEO reports to the CEO;
    the CEO of the company does not report to any employee of the
       company.    (05)

> I trust that you are familiar with I.D. Hill's wonderful paper "Wouldn't
> it be nice if we could write computer programs in ordinary English--or
> would it?"  BCS, The Computer Bulletin, vol. 16, no. 6, June 1972, pp.
> 306--312.     (06)

I saw that many years ago, and unfortunately, I don't have access
to it now.  But have no fear, writing precise statements in CLCE is
definitely nontrivial.  CLCE is really very close to what professional
mathematicians write in explaining their axioms and proofs.    (07)

In fact, we have implemented a version of CLCE, which is being used
for two purposes:    (08)

  1. Enabling experts (such as me) to type statements in Common Logic
     in a format that is easier to read than CGIF or CLIF.  I find it
     much easier to detect (and avoid) errors in CLCE than in any
     other notation for logic.  Furthermore, I can't type any
     mathematical notation as fast as I can type English.    (09)

  2. Even more important than using CLCE for input is to use it for
     *output*.  It's extremely useful for debugging and monitoring
     a system of interacting agents if any or all of their messages
     can be translated to a readable form.  Even trained logicians
     can read English faster than predicate calculus.    (010)

We have a system in which all agents pass messages written in some
dialect of Common Logic, and for debugging purposes, it's important
to be able to read what they're saying to one another.  Therefore,
we're putting as much emphasis on generating CLCE as parsing it.    (011)

John    (012)

_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (013)

<Prev in Thread] Current Thread [Next in Thread>