[developers] How to unify a type constraint onto a dag extracted from chart (LKB)

Stephan Oepen oe at ifi.uio.no
Wed Jun 26 01:10:08 CEST 2013


hi berthold,

the call into the unifier looks plausible to me, but the DAG you create
for supra_reent will not contain any information but its top-level type.

rather than create-typed-dag(), maybe try something like this

  (tdfs-indef (ltype-tdfs (get-type-entry 'supra_reent)))

i hope this will work better, or?  oe


On Tue, Jun 25, 2013 at 11:13 PM, Berthold Crysmann
<berthold.crysmann at gmail.com> wrote:
> Dear fellow sea mammals,
>
> I have a hook function that converts internal feature structure
> representations of tone and length into diacritically marked surface strings
> for generator output.
>
> For some very good reason that is a bit hard to explain, I need to
> synchronise tone and length lists in length at maximal words, in order to
> enforce latent tonal constraints.
>
> In the grammar, this is done by way of constraining dtrs in syntax rules to
> have a SUPRA value of type supra_reent  which
> introduces the necessary reentrancies.
>
> During unpacking such constraints are not enforced on the daughter edges.
> That's why I need to unify this constraint in by way of the function call.
> See code below.
>
> However, although I can test that the new type is indeed supra_reent, the
> associated constraints do not seem to get unified in. I.e. the lists that
> this type equates are apparently not equated, as I can tell from the
> underspecified list values. If I unify the supra_reent type into the chart
> edge using  the CLIM interface, list elements get xspecialised as expected.
>
> Here's the  code that I have tried:
>
>             (setf supra
>              (unify-dags
>               (get-dag-value (tdfs-indef (edge-dag daughter))
>                      'SUPRA)
>               (create-typed-dag 'SUPRA_REENT) )
>
>              )
>
> Thanks a lot in advance for your replies. I guess I am just calling the
> wrong function, but which one to call instead?
>
>
> Cheers,
>
> Berthold
>
> --
> Berthold Crysmann<crysmann at linguist.jussieu.fr>
> CNRS, Laboratoire de linguistique formelle (UMR 7110), U Paris Diderot
> Case 7031, 5 rue Thomas Mann, 75205 Paris cedex 13
> Bureau 545, bâtiment Olympe de Gouges, rue Albert Einstein, 75013 Paris



More information about the developers mailing list