home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / science / macpckim.sit / PCKIMMO.DOC < prev    next >
Text File  |  1990-10-30  |  12KB  |  294 lines

  1. PC-KIMMO: A Two-level Processor for Morphological Analysis
  2.  
  3. This file accompanies the demo copy of PC-KIMMO available for
  4. downloading from various network sites. The complete software
  5. release for PC-KIMMO is packaged with the book "PC-KIMMO: a
  6. two-level processor for morphological analysis" by Evan L.
  7. Antworth, published by the Summer Institute of Linguistics
  8. (1990). The book with release diskette(s) is available for $23.00
  9. from:
  10.  
  11.     International Academic Bookstore
  12.     7500 W. Camp Wisdom Road
  13.     Dallas TX, 75236
  14.     phone 214/709-2404
  15.  
  16. The PC-KIMMO software is copyrighted by the Summer Institute of
  17. Linguistics but is made freely available to the general public
  18. under the condition that it not be resold or used for commercial
  19. purposes.
  20.  
  21. For information on how to install and run PC-KIMMO on your
  22. system, see the disk file ReadMe.
  23.  
  24. After using UnStuffIt to restore the PC-KIMMO demo copy, you 
  25. should have the following files and subdirectories:
  26.  
  27.     MacPC-KIMMO        the executable PC-KIMMO program
  28.     PCKIMMO.DOC        the file you are reading now
  29.     ReadMe.DOC           instructions on installing and running PC-KIMMO
  30.     DEMO.TAK              a brief demo (see the ReadMe file)
  31.     ENGLISH <DIR>       a subdirectory of English files
  32.     JAPANESE <DIR>    a subdirectory of Japanese files
  33.  
  34. WHAT IS PC-KIMMO?
  35.  
  36. PC-KIMMO is a new implementation for microcomputers of a program
  37. dubbed KIMMO after its inventor Kimmo Koskenniemi (see
  38. Koskenniemi 1983). It is of interest to computational linguists,
  39. descriptive linguists, and those developing natural language
  40. processing systems. The program is designed to generate (produce)
  41. and/or recognize (parse) words using a two-level model of word
  42. structure in which a word is represented as a correspondence
  43. between its lexical level form and its surface level form.
  44.  
  45. Work on PC-KIMMO began in 1985, following the specifications of
  46. the LISP implementation of Koskenniemi's model described in
  47. Karttunen 1983. The coding has been done in Microsoft C by David
  48. Smith and Stephen McConnel under the direction of Gary Simons and
  49. under the auspices of the Summer Institute of Linguistics. The
  50. aim was to develop a version of the two-level processor that
  51. would run on an IBM PC compatible computer and that would include
  52. an environment for testing and debugging a linguistic
  53. description. The PC-KIMMO program is actually a shell program
  54. that serves as an interactive user interface to the primitive
  55. PC-KIMMO functions. These functions are available as a C-language
  56. source code library that can be included in a program written by
  57. the user.
  58.  
  59. A PC-KIMMO description of a language consists of two files
  60. provided by the user:
  61.  
  62.     (1) a rules file, which specifies the alphabet and the
  63. phonological (or spelling) rules, and
  64.  
  65.     (2) a lexicon file, which lists lexical items (words and
  66. morphemes) and their glosses, and encodes morphotactic
  67. constraints.
  68.  
  69. The theoretical model of phonology embodied in PC-KIMMO is called
  70. two-level phonology. In the two-level approach, phonology is
  71. treated as the correspondence between the lexical level of
  72. underlying representation of words and their realization on the
  73. surface level. For example, to account for the rules of English
  74. spelling, the surface form spies must be related to its lexical
  75. form `spy+s as follows (where ` indicates stress, + indicates a
  76. morpheme boundary, and 0 indicates a null element):
  77.  
  78.     Lexical Representation:   `  s p y + 0 s
  79.     Surface Representation:  0 s p i  0 e s
  80.  
  81. Rules must be written to account for the special correspondences
  82. `:0, y:i, +:0, and 0:e.
  83.  
  84. The two functional components of PC-KIMMO are the generator and
  85. the recognizer. The generator accepts as input a lexical form,
  86. applies the phonological rules, and returns the corresponding
  87. surface form. It does not use the lexicon. The recognizer accepts
  88. as input a surface form, applies the phonological rules, consults
  89. the lexicon, and returns the corresponding lexical form with its
  90. gloss. Figure 1 shows the main components of the PC-KIMMO system.
  91.  
  92. Figure 1:  Main components of PC-KIMMO
  93.  
  94.            +-----------+        +-----------+
  95.            |  RULES         |         |  LEXICON      |
  96.            +----+------+        +------+----+
  97.                     |-------+      +-------|
  98.                                   |      |
  99.                                  v      v
  100.     Surface Form:  +------------------+      Lexical Form:
  101.      spies ------->|    Recognizer            |----> `spy+s
  102.                             +----+-------------+         [N(spy)+PLURAL]
  103.                                      |
  104.                                     v
  105.                             +------------------+
  106.      spies <-------|    Generator              |<----- `spy+s
  107.                             +------------------+
  108.  
  109.  
  110. Around the components of PC-KIMMO shown in figure 1 is an
  111. interactive shell program that serves as a user interface. When
  112. the PC-KIMMO shell is run, a command-line prompt appears on the
  113. screen. The user types in commands which PC-KIMMO executes. The
  114. shell is designed to provide an environment for developing,
  115. testing, and debugging two-level descriptions. Among the features
  116. available in the user shell are:
  117.  
  118.     * on-line help;
  119.  
  120.     * commands for loading the rules and lexicon files;
  121.  
  122.     * ability to generate and recognize forms entered
  123. interactively from the keyboard;
  124.  
  125.     * a mechanism for reading input forms from a test list on a
  126. disk file and comparing the output of the processor to the
  127. correct results supplied in the test list;
  128.  
  129.     * provision for logging user sessions to disk files;
  130.  
  131.     * a facility to trace execution of the processor in order to
  132. debug the rules and lexicon;
  133.  
  134.     * other debugging facilities including the ability to turn
  135. off selected rules, show the internal representation of rules,
  136. and show the contents of selected parts of the lexicon; and
  137.  
  138.     * a batch processing mode that allows the shell to read and
  139. execute commands from a disk file.
  140.  
  141. Because the PC-KIMMO user shell is intended to facilitate
  142. development of a description, its data-processing capabilities
  143. are limited. This is in keeping with our focus on doing field
  144. analysis with PC-KIMMO. However, PC-KIMMO can also be put to
  145. practical use by those engaged in natural language processing.
  146. The PC-KIMMO functions are available as a source code library
  147. that can be included in another program. This means that the user
  148. can develop and debug a two-level description using the PC-KIMMO
  149. shell and then link PC-KIMMO's functions into his own program.
  150.  
  151. WHO IS PC-KIMMO FOR?
  152.  
  153. PC-KIMMO is a significant development for the field of applied
  154. natural language processing. Up until now, implementations of the
  155. two-level model have been available only on large computers
  156. housed at academic or industrial research centers. As an
  157. implementation of the two-level model, PC-KIMMO is important
  158. because it makes the two-level processor available to individuals
  159. using personal computers. Computational linguists can use
  160. PC-KIMMO to investigate for themselves the properties of the
  161. two-level processor. Theoretical linguists can explore the
  162. implications of two-level phonology, while descriptive linguists
  163. can use PC-KIMMO as a field tool for developing and testing their
  164. phonological and morphological descriptions. Finally, because the
  165. source code for the PC-KIMMO's generator and recognizer functions
  166. is being made available, those developing natural language
  167. processing language processing applications (such as a syntactic
  168. parser) can use PC-KIMMO as a morphological front end to their
  169. own programs.
  170.  
  171. VERSIONS AVAILABLE
  172.  
  173. PC-KIMMO will run on the following systems:
  174.     MS-DOS or PC-DOS (any IBM PC compatible)
  175.     UNIX System V (SCO UNIX V/386 and A/UX) and 4.2 BSD UNIX
  176.     Macintosh
  177.  
  178. It should be noted that the Macintosh version retains the
  179. DOS/UNIX command-line interface rather than using the graphical
  180. user interface one expects from Macintosh programs. Also, a few
  181. commands are not available in the Macintosh version; see the
  182. README file on the Macintosh version of the PC-KIMMO release
  183. diskette for detailed information.
  184.  
  185. There are two versions of the PC-KIMMO release diskette, one for
  186. IBM PC compatibles and one for the Macintosh. Each contains the
  187. executable PC-KIMMO program, examples of language descriptions,
  188. and the source code library for the primitive PC-KIMMO functions.
  189. The PC-KIMMO executable program and the source code library are
  190. copyrighted but are made freely available to the general public
  191. under the condition that they not be resold or used for
  192. commercial purposes.
  193.  
  194. For those who wish to compile PC-KIMMO for their UNIX system, it
  195. is necessary to first obtain either the DOS or Macintosh version
  196. and then contact us at the address given at the end of this
  197. document to request the source code.
  198.  
  199. The PC-KIMMO release diskette contains the executable PC-KIMMO
  200. program, the function library, and examples of PC-KIMMO
  201. descriptions for various languages, including English, Finnish,
  202. Japanese, Hebrew, Kasem, Tagalog, and Turkish. These are not
  203. comprehensive linguistic descriptions, rather they cover only a
  204. selected set of data.
  205.  
  206. THE PC-KIMMO BOOK
  207.  
  208. The complete PC-KIMMO release software is included with the book
  209. "PC-KIMMO: a two-level processor for morphological analysis" by
  210. Evan L. Antworth, published by the Summer Institute of
  211. Linguistics (1990).  The book is a full-length tutorial on
  212. writing two-level linguistic descriptions with PC-KIMMO. It also
  213. fully documents the PC-KIMMO user interface and the source code
  214. function library. The book with release diskette(s) is available
  215. for $23.00 (plus postage) from:
  216.  
  217.     International Academic Bookstore
  218.     7500 W. Camp Wisdom Road
  219.     Dallas TX, 75236
  220.     phone 214/709-2404
  221.  
  222. A partial listing of the contents of the book is as follows:
  223.  
  224. 1. Introduction
  225.    1.1 What is PC-KIMMO
  226.    1.2 The history of PC-KIMMO
  227.    1.3 The significance of PC-KIMMO
  228. 2. A sample user session with PC-KIMMO
  229. 3. Developing the rules component
  230.    3.1 Understanding two-level rules
  231.    3.2 Implementing two-level rules as finite state machines
  232.    3.3 Compiling two-level rules into state tables
  233.    3.4 Writing the rules file
  234. 4. Developing the lexical component
  235.    4.1 Structure of the lexical component
  236.    4.2 Encoding morphotactics as a finite state machine
  237.    4.3 Writing the lexicon file
  238. 5. Testing a two-level description
  239.    5.1 Types of errors in two-level descriptions
  240.    5.2 Strategies for debugging a two-level description
  241. 6. A sampler of two-level rules
  242.    6.1 Assimilation
  243.    6.2 Deletion
  244.    6.3 Insertion
  245.    6.4 Nonconcatenative processes
  246.        [gemination, metathesis, infixation, reduplication]
  247. 7. Reference manual
  248.    7.1 Introduction and technical specifications
  249.    7.2 Installing PC-KIMMO
  250.    7.3 Starting PC-KIMMO
  251.    7.4 Entering commands and getting on-line help
  252.    7.5 Command reference by function
  253.    7.6 Alphabetic list of commands
  254.    7.7 File formats
  255.    7.8 Trace formats
  256.    7.9 Algorithms
  257.    7.10 Error messages
  258. Appendix A. Developing a description of English
  259. Appendix B. Other applications of the two-level processor, by G. Simons
  260. Appendix C. Using the PC-KIMMO functions in a C program, by S. McConnel
  261. References
  262. Index
  263.  
  264. HOW TO CONTACT US
  265.  
  266. PC-KIMMO is a research project in progress, not a finished
  267. commercial product. In this spirit, we invite your response to
  268. the software and the book. Please direct your comments to:
  269.  
  270.     Academic Computing Department
  271.     PC-KIMMO project
  272.     7500 W. Camp Wisdom Road
  273.     Dallas, TX 75236
  274.  
  275.     phone: 214/709-2418
  276.  
  277.     Internet: evan@txsil.lonestar.org (Evan Antworth)
  278.  
  279.  
  280. REFERENCES
  281.  
  282. Antworth, Evan L. 1990. PC-KIMMO: a two-level processor for
  283.     morphological analysis. Occasional Publications in Academic
  284.     Computing No. 16. Dallas, TX: Summer Institute of Linguistics.
  285.  
  286. Karttunen, Lauri. 1983. KIMMO: a general morphological processor.
  287.     Texas Linguistic Forum 22:163-186.
  288.  
  289. Koskenniemi, Kimmo. 1983. Two-level morphology: a general
  290.     computational model for word-form recognition and production.
  291.     Publication No. 11. University of Helsinki: Department of
  292.     General Linguistics.
  293.  
  294.