Gregory Golberg
Lab 1b
6.863
Spring 06

Rules:spanish.rul
Lexicon:spanish.lex
Output:spanish.out

Description of the project:

  1. Underlying character J is introduced, for the handling of "g-j mutation".

  2. BACK and FRONT subsets for vowels, and CONS subset for consonants are introduced, as described in the lab. BACK and FRONT vowel subsets are used to handle "g-j mutation" and "z-c mutation" respectively, to decide when the mutation happens. The CONS subset is needed to handle the pluralization rule.

  3. Conjugation rules are handled by the three V_SUFFIXn definitions in the lexicon, and NUMBER is used for indication of whether a noun is singular or plural.

The interaction of "z-c mutation" with "pluralization" rule was reminiscent of Lab 1a. It was fixed similarly to the fix in lab 1a, by modifying the automata to introduce +:e arcs.

Adding more nouns and verbs would not increase the complexity of the system; though increasing rules (conjugation, e.g.) may increase it a bit. As far as the complexity for myself, it would be more of a challenge to figure out the correct roots to include; but this is a challenge for the developer of the system (perhaps there are helper tools) but does not increase system complexity.