Scott--
The algorithm that HC uses for unapplying (most) phonological rules is
to change any phonological features that are assigned in the output of
the rule to "unknown". When those features are referred to by a rule
that applies earlier in the derivation (but of course after during
unapplication), unknown features are treated as perhaps having the
appropriate value. This does not cause those earlier rules to
over-apply in most cases; only in opaque rule orders (counter-feeding or
counter-bleeding) can they cause over-application. Any such
over-application is caught when HC applies the rules to actual lexical
forms (i.e. going in the opposite direction).
In the case of your metathesis rule, there are two ways HC might unapply
the rule. I don't remember how I did it back in the 90s when I wrote
the original HC, and of course it's possible the new HC does things
slightly differently. The two ways it might unapply the rule are:
1) The first is the way I described above for "ordinary" phonological
rules. That is, HC might remove the [-back] and [-round] feature values
of the surface /i/ and the [+back] and [+round] feature values of the
surface /u/, giving a form that is ambiguous among /ui/, /iu/, /ii/ and
/uu/ (assuming /u/ and /i/ are the only high vowels in your language).
This ought to work, because both an underlying /iu/ and an underlying
/ui/ would match that.
2) The other way is that HC might be doing something special for
metathesis rules. Metathesis rules can do funny things, like reverse a
consonant and a vowel. Since consonants and vowels differ in virtually
every feature (in most feature systems), simply removing feature values
of a C and a V that metathesize could result in a form that matches lots
of words in the lexicon (or words + affixes), slowing things down a lot.
So I might have put some special handling in for metathesis rules that
avoids the cost of this naive approach. The way this ought to work for
a surface /iu/ is that HC now tries two search paths: one in which the
metathesis rule is unapplied in a more literal way, by swapping the two
phonemes to give an intermediate /ui/; and one in which the metathesis
rule is not unapplied, leaving the intermediate /iu/.
From your description, it sounds like (2) is the case, but that only
the first search path is tried.
Unfortunately, that's as far as I can take it, because I haven't been
involved in HC for over a decade. (I wrote it for LinguaLinks in Prolog
and C, and someone else has since reprogrammed it in easier-to-maintain
languages.) Andy Black, are you out there?
Also, Scott, you mention that it fail "in a few cases." Are all the
cases metathesis rules?
--
Mike Maxwell
max...@umiacs.umd.edu
"I cannot believe that our existence in this universe
is a mere quirk of fate, an accident of history, an
incidental blip in the great cosmic drama. Our
involvement is too intimate. The physical species
Homo may count for nothing, but the existence of
mind in some organism on some planet in the universe
is surely a fact of fundamental significance. Through
conscious beings the universe has generated
self-awareness." --Paul Davies