<div dir="ltr">Thanks, Berthold, for the explanation.  This may turn out to be useful<div>for Lushootseed and Nuu-chah-nulth, though the situation there is somewhat</div><div>different.  In particular, I&#39;m intrigued that you are treating __REDUP__ and</div><div>the base as separate lexical items.  Is this because of the whitespace</div><div>conventions of the language?  Or because it was easier to do things this</div><div>way than completely within the morphology?  </div><div><br></div><div>Also, you said (in a separate exchange we had) that the older solution was </div><div>non-compositional ... presumably because you were using the native lex entry </div><div>for the redup form and then squashing its EPs.  Am I understanding correctly </div><div>that this current solution is compositional because the ersatz item is </div><div>semantically empty?</div><div><br></div><div>Emily</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Sep 13, 2015 at 6:45 PM, Francis Bond <span dir="ltr">&lt;<a href="mailto:bond@ieee.org" target="_blank">bond@ieee.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks Berthold (and Woodley).<br>
<br>
This looks very promising, if a bit daunting (my mastery of the chart<br>
mapping machinery is still shaky).   We will try it out, and probably<br>
pester<br>
 you with more questions.<br>
<div class="HOEnZb"><div class="h5"><br>
On Mon, Sep 14, 2015 at 8:00 AM, Berthold Crysmann<br>
&lt;<a href="mailto:berthold.crysmann@gmail.com">berthold.crysmann@gmail.com</a>&gt; wrote:<br>
&gt; Hi Francis, Emily, and who else might be listening on this,<br>
&gt;<br>
&gt; I have now got a version of my revised analysis working (thanks also to<br>
&gt; Woodley for fixing a critical issue in ace for me).<br>
&gt;<br>
&gt; Here&#39;s a brief description (for more details look at the HaG code<br>
&gt; $LOGONROOT/llf/hag, or ask me):<br>
&gt;<br>
&gt; Hausa has some 4 inflectional classes that use total reduplication. While<br>
&gt; tonal patterns may differ between base and reduplicant, the reduplicant does<br>
&gt; not undergo inflection different from the base. Thus, on the string level<br>
&gt; (once we have dealt with suprasegmental markings), the reduplicant is<br>
&gt; faithful to the base (lucky for me). We do get further inflectional marking<br>
&gt; on the base, however.<br>
&gt;<br>
&gt; E.g. in plural class 12, we get<br>
&gt;<br>
&gt; nâs nâs `nurses&#39;<br>
&gt; sìkêt sìkêt `skirts&#39;<br>
&gt; jōjì jōjì `judges&#39;<br>
&gt;<br>
&gt; The latter can be morphologically possessed, yielding &quot;jōjì jōjiìnmù&quot; (our<br>
&gt; judges).<br>
&gt;<br>
&gt; So in this class, the reduplicant is just a copy of the base lexeme&#39;s orth<br>
&gt; value (+ tone + length).<br>
&gt;<br>
&gt; A more interesting case are augmentative adjectives. Here the base for the<br>
&gt; productive formation is partially reduplicated in the masc and fem singular,<br>
&gt; but one drops the partial reduplication in the plural, to have total<br>
&gt; reduplication of a clipped base instead.<br>
&gt;<br>
&gt; E.g. class 14:<br>
&gt;<br>
&gt; mālàm bundumēmḕ -&gt;  mā̀làmai bundumā bùndùmā̀<br>
&gt;<br>
&gt; Which can also undergo type raising, giving<br>
&gt;<br>
&gt; bundumā bùndùmàn mā̀làmai<br>
&gt;<br>
&gt; Note that the inflection -n on the base does not get copied to the<br>
&gt; reduplicant.<br>
&gt;<br>
&gt;<br>
&gt; As for the analysis, here is what I now do (in ace):<br>
&gt;<br>
&gt; 1. Parsing<br>
&gt;<br>
&gt; As a first step, I trigger an ersatz, in token mapping, on every item in the<br>
&gt; chart that is followed by some other item.<br>
&gt; The surface string I substitute is __REDUP__, which corresponds to exactly<br>
&gt; one lexical item (redup_n).<br>
&gt; I tried filtering already on this first step on partial identity of form<br>
&gt; (with regexps), but that did not seem to work. The ersatzing records the<br>
&gt; original string in +CARG. The rule applies after processing of<br>
&gt; suprasegmentals (tone and length), and copies that information over as well.<br>
&gt; See tmr/redup.tdl.<br>
&gt;<br>
&gt; In a second step, I shall use lexical filtering, which applies after lookup<br>
&gt; and morphological processing, to get rid of unlicensed reduplication entries<br>
&gt; in the chart. I&#39;ll probably implement that beginning of next week.<br>
&gt;<br>
&gt; During morphological processing, I introduce constraints for the reduplicant<br>
&gt; as part of the morphological rules applying to the base. In particular, this<br>
&gt; enables me to select precisely at which step in the derivation I want to<br>
&gt; memoise the identity of the base. All the constraints on the reduplicant are<br>
&gt; collected in MORPH.MCLASS.--REDUP. See rule n_pl12_lr (irules.tdl), or, even<br>
&gt; better, n_pl14_lr.<br>
&gt;<br>
&gt; In syntax, I use a binary rule to combine the reduplicant ersatz with the<br>
&gt; base and impose all the constraints the base has for the shape of the<br>
&gt; reduplicant (rule n-pl-reduplication in rules.tdl).<br>
&gt;<br>
&gt; Different plural formation patterns require different levels of identity:<br>
&gt; e.g. class 12 copies the segments and suprasegmentals of the lexeme, whereas<br>
&gt; class 14 copies the segments of the derived plural and imposes a fixed H+<br>
&gt; pattern on the reduplicant, and a fixed L+ tone pattern on the base. Either<br>
&gt; of them exempts further inflectional markings from reduplication.<br>
&gt;<br>
&gt; This is all done by the  morphological rules applying to  the base, which<br>
&gt; also store the constraints re the reduplicant in MORPH.--REDUP, having a<br>
&gt; value for orthography (--STEM string) and suprasegmentals (--SUPRA supra).<br>
&gt; See the rules for class 12 and class 14 in irules.tdl. The binary<br>
&gt; reduplication rule then imposes these constraints on the reduplicant.<br>
&gt;<br>
&gt; Some sample sentences for you to test:<br>
&gt;<br>
&gt; joji jojinmu sun zo<br>
&gt; joji jojin sun zo<br>
&gt; malamai bunduma bunduma sun zo<br>
&gt;<br>
&gt; In the hag directory, you can test with<br>
&gt;<br>
&gt; ace -l -g ace/hausa.dat<br>
&gt;<br>
&gt; for parsing<br>
&gt;<br>
&gt; or with<br>
&gt;<br>
&gt; ace -T -g ace/hausa.dat|ace -e -l --show-gen-chart -g ace/hausa.g.dat<br>
&gt;<br>
&gt; for generation.<br>
&gt;<br>
&gt;<br>
&gt; 2. Generation<br>
&gt;<br>
&gt; Using a single generic entry for all reduplicants, I can now trigger the one<br>
&gt; I need based on very general properties, i.e. plural in Hausa. Look at<br>
&gt; reduplication.mtr for reference. Since there&#39;s only one rule left now, it is<br>
&gt; soon going to move into the main trigger.mtr.<br>
&gt;<br>
&gt; Using an ersatz, I have to replace the generic __REDUP__ phonology with<br>
&gt; something sensible at some point: I use post-generation chart mapping to<br>
&gt; copy over the relevant string from the base. The relevant rule is the third<br>
&gt; or fourth one down in tmr/post-generation.tdl. Likewise, I copy over the<br>
&gt; constraints on tone and vowel length (SUPRA) as well, which are imposed in<br>
&gt; the --REDUP.--SUPRA features.<br>
&gt;<br>
&gt;<br>
&gt; 3. Conclusion<br>
&gt;<br>
&gt; To summarise, the new solution scales up to open classes, and it is fully<br>
&gt; supported in ace. As for the LKB, you can test with the ersatz as input,<br>
&gt; e.g. &quot;__redup__ joji sun zo&quot; parses and generates. Generation will only use<br>
&gt; the ersatz. I shall look into refining my user function to get proper<br>
&gt; generation output.<br>
&gt;<br>
&gt; For the moment, I kept the old analysis alive for testing in the LKB: if you<br>
&gt; type in &quot;nas nas sun zo&quot;, you should still get an analysis, and you can even<br>
&gt; generate from it (using the ersatz). In ace, this &quot;native&quot; analysis is<br>
&gt; disabled by requiring an empty RELS on the reduplicant (as a type addendum<br>
&gt; on the phrasal type), which will filter out the native contentful entry, and<br>
&gt; keep the semantically empty one (the ersatz), thus avoiding any spurious<br>
&gt; ambiguity. Since the LKB analyses are a superset of the ace analyses, there<br>
&gt; will not be any issue w.r.t. treebanking.<br>
&gt;<br>
&gt; As I feel about it, total reduplication is the killer argument for having<br>
&gt; chart mapping in the LKB, or else for having a complete ace-based<br>
&gt; development environment.<br>
&gt;<br>
&gt; 4. Outlook: Chinese and Indonesian<br>
&gt;<br>
&gt; As far as I can tell, my approach for Hausa should be straightforward to<br>
&gt; port to these two languages. There is the question of the X: you would<br>
&gt; probably treat that as a morphophonological effect of some rule application<br>
&gt; (I guess). So, given our technologies, the most straightforward thing to do<br>
&gt; is place all morphophonological changes on the base. That leaves you free to<br>
&gt; impose simple total identity on the reduplicant: just choose the right<br>
&gt; moment in the derivation (thanks to Woodley who has just fixed the recording<br>
&gt; of orth values in ace an hour or two ago). If that should not be viable<br>
&gt; (there are languages like that), one needs to replicate some of the<br>
&gt; morphology in token mapping. For reference, look at how the ERG deals with<br>
&gt; plurals of unknown words.<br>
&gt;<br>
&gt;<br>
&gt; All the best,<br>
&gt;<br>
&gt; Berthold<br>
&gt;<br>
&gt;<br>
&gt; On 08/09/15 16:26, Berthold Crysmann wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi Francis,<br>
&gt;&gt;<br>
&gt;&gt; I guess you only worry about total reduplication. While in principle in<br>
&gt;&gt; Chinese you could get away with using string unification (thanks to the<br>
&gt;&gt; script, word length is limited), but specifying the letter set will not be<br>
&gt;&gt; much for for either humans or machines....<br>
&gt;&gt;<br>
&gt;&gt; I am currently working on total reduplication in my Hausa grammar. I had a<br>
&gt;&gt; first solution that is non-compositional in the semantics. I.e. I just use a<br>
&gt;&gt; binary rule that glues the stuff together, conditioned on identity of<br>
&gt;&gt; predicates, but throws away the semantic contribution in the reduplicant.<br>
&gt;&gt; Works in parsing, but needs *item-specific* trigger rules in generation.<br>
&gt;&gt;<br>
&gt;&gt; Right now, I am exploring with ersatzing. Things should work well as long<br>
&gt;&gt; as only one of the reduplicants undergoes additional morphology. Otherwise,<br>
&gt;&gt; you&#39;ll have to memoise parts of the original string, so you can apply<br>
&gt;&gt; regular morphophonological changes to the reduplicant. Seems to work in the<br>
&gt;&gt; LKB.<br>
&gt;&gt;<br>
&gt;&gt; I shall commit that new analysis very soon. I shall also send you a<br>
&gt;&gt; detailed description.<br>
&gt;&gt;<br>
&gt;&gt; Cheers,<br>
&gt;&gt;<br>
&gt;&gt; Berthold<br>
&gt;&gt;<br>
&gt;&gt; On 08/09/15 15:28, Francis Bond wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; G&#39;day,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; we are working with a couple of languages where we would like to be<br>
&gt;&gt;&gt; able to write lexical rules that do things like:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Take a two character word in Chinese (AB)<br>
&gt;&gt;&gt; AB -&gt; ABAB<br>
&gt;&gt;&gt; AB -&gt; AABB<br>
&gt;&gt;&gt; AB -&gt; AAB<br>
&gt;&gt;&gt; AB -&gt; ABXAB (where X is fixed by the rule)<br>
&gt;&gt;&gt; AB -&gt; AXAB<br>
&gt;&gt;&gt; AB -&gt; AXB<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Take a one character word (A):<br>
&gt;&gt;&gt; A -&gt; AA<br>
&gt;&gt;&gt; A -&gt; AXA<br>
&gt;&gt;&gt; A -&gt; AAX<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; In Indonesian we want to take an arbitrary word and produce a duplicate<br>
&gt;&gt;&gt; w -&gt; w-w   (kasus -&gt; kasus-kasus)<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; More examples here:<br>
&gt;&gt;&gt; <a href="http://moin.delph-in.net/LADChineseReduplication" rel="noreferrer" target="_blank">http://moin.delph-in.net/LADChineseReduplication</a><br>
&gt;&gt;&gt; and<br>
&gt;&gt;&gt; <a href="http://moin.delph-in.net/LADChineseAnotA" rel="noreferrer" target="_blank">http://moin.delph-in.net/LADChineseAnotA</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Is this (or some of this) possible with the DELPH-IN tools?  If so,<br>
&gt;&gt;&gt; can someone explain how to do it (or point to a paper or website that<br>
&gt;&gt;&gt; tells us how to do it)?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Thanks in advance,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Berthold Crysmann&lt;<a href="mailto:crysmann@linguist.jussieu.fr">crysmann@linguist.jussieu.fr</a>&gt;<br>
&gt; CNRS, Laboratoire de linguistique formelle (UMR 7110), U Paris Diderot<br>
&gt; Case 7031, 5 rue Thomas Mann, 75205 Paris cedex 13<br>
&gt; Bureau 545, bâtiment Olympe de Gouges, rue Albert Einstein, 75013 Paris<br>
&gt;<br>
<br>
<br>
<br>
</div></div><div class="HOEnZb"><div class="h5">--<br>
Francis Bond &lt;<a href="http://www3.ntu.edu.sg/home/fcbond/" rel="noreferrer" target="_blank">http://www3.ntu.edu.sg/home/fcbond/</a>&gt;<br>
Division of Linguistics and Multilingual Studies<br>
Nanyang Technological University<br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Emily M. Bender<br>Professor, Department of Linguistics<br>Check out CLMS on facebook! <a href="http://www.facebook.com/uwclma" target="_blank">http://www.facebook.com/uwclma</a><br></div></div>
</div>