Heavy NP Shift

Help
J Moore
2011-05-23
2013-04-08
  • J Moore

    J Moore - 2011-05-23

    Hello Mike and company,

    I'm trying to reproduce a derivation illustrating Heavy NP Shift in Steedman & Baldridge's introductory article on CCG (top of Page 20):

    I persuaded to take a bath my very heavy friends.

    The parser agrees that "I persuaded to take_a_bath" is a s/!np and "my_very_heavy_friends" is a np, but it won't accept their application.  Does this have something to do with the exclamation point in front of the argument of the 's/!np' for "I persuaded to take_a_bath"?  Can anyone see what I'm doing wrong?  Here is the simplified grammar:

    ##### features #####
    feature {
        tense<1>: finite {pres past fut} inf;
    }
    #####  words  #####
    word I:NP;
    word my_very_heavy_friends: NP;
    word take_a_bath:IntransV;
    word persuaded:ObjControlV;
    word to:TenseV (pred=inf);
    ##### categories #####
    family NP {
      entry: np<2>[X]: X(*);
    }
    family IntransV {
      entry: s<1>[E] \ np<2>[X] : E(* <Actor>X);
    }
    family TenseV (indexRel="*NoSem*"){
        entry:  (s<~1> [E tense=*] \ np<2> [X]) / (s<1> [E] \ np<2> [X]);
    }
    family ObjControlV {
      entry: s<~1> [E finite] \ np<2> [X] / ( s<1> [F tense=inf] \ np<3> [Y] ) / np<3> [Y] :
        E (* <Theme>F <Actor>X <Patient>Y);
    }
    ##### rules #####
    rule {
      app +-;
      comp +;
      xcomp -;
      typeraise +- $;
      typeraise - $: s\np => s;
    }
    ##### examples #####
    testbed {
      I persuaded my_very_heavy_friends to take_a_bath: 1;
      ! I persuaded to take_a_bath my_very_heavy_friends: 1;
    }
    
     
  • J Moore

    J Moore - 2011-05-23

    sorry, it's actually on the top of p.22 in that article…

     
  • Michael White

    Michael White - 2011-05-24

    Yes, the problem is that "I persuaded to take_a_bath" has category s/!np, which means the slash is inert.  The point of the inert slash (as I understand it) is to allow "person who(m) John gave a book", where "John gave a book" is s/!np, without also allowing "*John gave a book Fred" (meaning "John gave Fred a book").  You can get this example to work by using the least restrictive modality for the slash that goes with the infinitival-vp (indicated by a dot):

    family ObjControlV {
     entry: s<~1> [E finite] \ np<2> [X] /. ( s<1> [F tense=inf] \ np<3> [Y] ) / np<3> [Y] :
           E (* <Theme>F <Actor>X <Patient>Y);
    }
    

    What I'm still unsure about is how to choose the appropriate modalities in a general way.

    Jason, can you comment?

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks