Knowledge Explorer News
No. 13
July 8, 1999

report generation; execution time

1. recent changes
I have made many improvements to KE in the last month.
All significant changes are logged in KEHOME/doc/version.rel.
Here's a quick summary of the changes which affect the
user interface.
!cc infon -- sets $1,$2,... -- good for report generation
meaning = { sentence } -- avoids nested quote problems
name *= value -- set intersection -- all values are now sets
product := sentence. and the value is saved in $product
variable length argument list for method -- e.g. KEHOME/family/tree.ku
!timestamp message -- new command for execution timing
improved printout of actions & events
revised verbs for generators -- isa, ism, in
renamed parameters
isastar -> automatic
hseparator -> hoseparator
rseparator -> relseparator

2. report generation
The !print command, combined with $variables, provides a simple way
to create customized reports. As a trivial example, you can generate a
phonebook from a knowledge base as follows. Given that phone numbers
are specified in the form

Dick McCullough isa person
Dick McCullough has phone=209-295-1365

the phonebook is generated by

echo = off
every p isa person do
!cc $p;
!print "$p; $phone";
done
echo = on

To produce a phonebook relation as output, all you have to do is add

phonebook is relation with
format = "person:1; phone:2",
meaning = "$1 has phone = $2"

phonebook is ?
!print "!begin relation phonebook"
...
!print "!end relation phonebook"

3. execution time
My own family history knowledge base has now grown to 700 people
and 1800 infons (relation units). Using the relations defined in the
KEHOME/family directory, I have measured the following results
for my 133 MHz pentium running Windows 98

initialize tabula_rasa: 20 seconds
input knowledge base: 2 seconds / infon
output summary: 2 seconds / person

It took 69 minutes to load my KB, and 25 minutes to generate a summary.
Some of my future effort will be devoted to reducing these times.
The output summary is 17380 lines (about 290 pages).