diff --git a/lib/doc/MkExxTable.hs b/lib/doc/MkExxTable.hs index 19b057d2e..5580fa86b 100644 --- a/lib/doc/MkExxTable.hs +++ b/lib/doc/MkExxTable.hs @@ -71,7 +71,7 @@ prApiEx apexx = case M.toList apexx of [l ++ ": //" ++ mkEx l e ++ "//" | (l,e) <- lexx] mkEx l = unws . bind . mkE . words where - unws = if l == "Tha" then concat else unwords + unws = if elem l ["Jap","Tha"] then concat else unwords -- remove spaces mkE e = case e of "atomic":"term":_ -> ["*"] "[]":_ -> ["''"] diff --git a/lib/doc/api-examples.txt b/lib/doc/api-examples.txt index 782e13f17..f058cdd86 100644 --- a/lib/doc/api-examples.txt +++ b/lib/doc/api-examples.txt @@ -12,8 +12,8 @@ mkText (mkQS pastTense (mkQCl (mkCl she_NP sleep_V))) mkText negativePol (mkImp sleep_V) mkText : Text -> Text -> Text -- Where? Here. When? Now! mkText (mkText (mkPhr (mkUtt where_IAdv)) questMarkPunct (mkText (mkPhr (mkUtt here_Adv)))) (mkText (mkPhr (mkUtt when_IAdv)) questMarkPunct (mkText (mkPhr (mkUtt now_Adv)) exclMarkPunct)) --- emptyText : Text -- (empty text) ---emptyText +-- emptyText : Text -- (empty text) +--emptyText) fullStopPunct : Punct -- . mkText (mkPhr yes_Utt) fullStopPunct questMarkPunct : Punct -- ? @@ -63,21 +63,21 @@ mkUtt (mkCard (mkNumeral n5_Unit)) lets_Utt : VP -> Utt -- let's sleep mkPhr (lets_Utt (mkVP sleep_V)) positivePol : Pol -- she sleeps [default] -mkS positivePol (mkCl she_NP sleep_V) +mkUtt (mkS positivePol (mkCl she_NP sleep_V)) negativePol : Pol -- she doesn't sleep -mkS negativePol (mkCl she_NP sleep_V) +mkUtt (mkS negativePol (mkCl she_NP sleep_V)) simultaneousAnt : Ant -- she sleeps [default] -mkS simultaneousAnt (mkCl she_NP sleep_V) +mkUtt (mkS simultaneousAnt (mkCl she_NP sleep_V)) anteriorAnt : Ant -- she has slept --# notpresent -mkS anteriorAnt (mkCl she_NP sleep_V) +mkUtt (mkS anteriorAnt (mkCl she_NP sleep_V)) presentTense : Tense -- she sleeps [default] -mkS presentTense (mkCl she_NP sleep_V) +mkUtt (mkS presentTense (mkCl she_NP sleep_V)) pastTense : Tense -- she slept --# notpresent -mkS pastTense (mkCl she_NP sleep_V) +mkUtt (mkS pastTense (mkCl she_NP sleep_V)) futureTense : Tense -- she will sleep --# notpresent -mkS futureTense (mkCl she_NP sleep_V) +mkUtt (mkS futureTense (mkCl she_NP sleep_V)) conditionalTense : Tense -- she would sleep --# notpresent -mkS conditionalTense (mkCl she_NP sleep_V) +mkUtt (mkS conditionalTense (mkCl she_NP sleep_V)) singularImpForm : ImpForm -- be a man [default] mkUtt singularImpForm (mkImp (mkVP man_N)) pluralImpForm : ImpForm -- be men @@ -85,75 +85,75 @@ mkUtt pluralImpForm (mkImp (mkVP man_N)) politeImpForm : ImpForm -- be a man [polite singular] mkUtt politeImpForm (mkImp (mkVP man_N)) mkS : (Tense) -> (Ant) -> (Pol) -> Cl -> S -- she wouldn't have slept -mkS conditionalTense anteriorAnt negativePol (mkCl she_NP sleep_V) +mkUtt (mkS conditionalTense anteriorAnt negativePol (mkCl she_NP sleep_V)) mkS : Conj -> S -> S -> S -- she sleeps and I run -mkS and_Conj (mkS (mkCl she_NP sleep_V)) (mkS (mkCl i_NP run_V)) +mkUtt (mkS and_Conj (mkS (mkCl she_NP sleep_V)) (mkS (mkCl i_NP run_V))) mkS : Conj -> ListS -> S -- she sleeps, I run and you walk -mkS and_Conj (mkListS (mkS (mkCl she_NP sleep_V)) (mkListS (mkS (mkCl i_NP run_V)) (mkS (mkCl (mkNP youSg_Pron) walk_V)))) +mkUtt (mkS and_Conj (mkListS (mkS (mkCl she_NP sleep_V)) (mkListS (mkS (mkCl i_NP run_V)) (mkS (mkCl (mkNP youSg_Pron) walk_V))))) mkS : Adv -> S -> S -- today, she sleeps -mkS today_Adv (mkS (mkCl she_NP sleep_V)) +mkUtt (mkS today_Adv (mkS (mkCl she_NP sleep_V))) mkCl : NP -> V -> Cl -- she sleeps -mkCl she_NP sleep_V +mkUtt (mkCl she_NP sleep_V) mkCl : NP -> V2 -> NP -> Cl -- she loves him -mkCl she_NP love_V2 he_NP +mkUtt (mkCl she_NP love_V2 he_NP) mkCl : NP -> V3 -> NP -> NP -> Cl -- she sends it to him -mkCl she_NP send_V3 it_NP he_NP +mkUtt (mkCl she_NP send_V3 it_NP he_NP) mkCl : NP -> VV -> VP -> Cl -- she wants to sleep -mkCl she_NP want_VV (mkVP sleep_V) +mkUtt (mkCl she_NP want_VV (mkVP sleep_V)) mkCl : NP -> VS -> S -> Cl -- she says that I sleep -mkCl she_NP say_VS (mkS (mkCl i_NP sleep_V)) +mkUtt (mkCl she_NP say_VS (mkS (mkCl i_NP sleep_V))) mkCl : NP -> VQ -> QS -> Cl -- she wonders who sleeps -mkCl she_NP wonder_VQ (mkQS (mkQCl who_IP sleep_V)) +mkUtt (mkCl she_NP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkCl : NP -> VA -> A -> Cl -- she becomes old -mkCl she_NP become_VA old_A +mkUtt (mkCl she_NP become_VA old_A) mkCl : NP -> VA -> AP -> Cl -- she becomes very old -mkCl she_NP become_VA (mkAP very_AdA old_A) +mkUtt (mkCl she_NP become_VA (mkAP very_AdA old_A)) mkCl : NP -> V2A -> NP -> A -> Cl -- she paints it red -mkCl she_NP paint_V2A it_NP red_A +mkUtt (mkCl she_NP paint_V2A it_NP red_A) mkCl : NP -> V2A -> NP -> AP -> Cl -- she paints it very red -mkCl she_NP paint_V2A it_NP (mkAP red_A) +mkUtt (mkCl she_NP paint_V2A it_NP (mkAP red_A)) mkCl : NP -> V2S -> NP -> S -> Cl -- she answers to him that we sleep -mkCl she_NP answer_V2S he_NP (mkS (mkCl we_NP sleep_V)) +mkUtt (mkCl she_NP answer_V2S he_NP (mkS (mkCl we_NP sleep_V))) mkCl : NP -> V2Q -> NP -> QS -> Cl -- she asks him who sleeps -mkCl she_NP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V)) +mkUtt (mkCl she_NP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V))) mkCl : NP -> V2V -> NP -> VP -> Cl -- she begs him to sleep -mkCl she_NP beg_V2V he_NP (mkVP sleep_V) +mkUtt (mkCl she_NP beg_V2V he_NP (mkVP sleep_V)) mkCl : NP -> A -> Cl -- she is old -mkCl she_NP old_A +mkUtt (mkCl she_NP old_A) mkCl : NP -> A -> NP -> Cl -- she is older than he -mkCl she_NP old_A he_NP +mkUtt (mkCl she_NP old_A he_NP) mkCl : NP -> A2 -> NP -> Cl -- she is married to him -mkCl she_NP married_A2 he_NP +mkUtt (mkCl she_NP married_A2 he_NP) mkCl : NP -> AP -> Cl -- she is very old -mkCl she_NP (mkAP very_AdA old_A) +mkUtt (mkCl she_NP (mkAP very_AdA old_A)) mkCl : NP -> NP -> Cl -- she is the woman -mkCl she_NP (mkNP the_Det woman_N) +mkUtt (mkCl she_NP (mkNP the_Det woman_N)) mkCl : NP -> N -> Cl -- she is a woman -mkCl she_NP woman_N +mkUtt (mkCl she_NP woman_N) mkCl : NP -> CN -> Cl -- she is an old woman -mkCl she_NP (mkCN old_A woman_N) +mkUtt (mkCl she_NP (mkCN old_A woman_N)) mkCl : NP -> Adv -> Cl -- she is here -mkCl she_NP here_Adv +mkUtt (mkCl she_NP here_Adv) mkCl : NP -> VP -> Cl -- she always sleeps -mkCl she_NP (mkVP always_AdV (mkVP sleep_V)) +mkUtt (mkCl she_NP (mkVP always_AdV (mkVP sleep_V))) mkCl : N -> Cl -- there is a house -mkCl house_N ---- mkCl : CN -> Cl -- there is an old house ---- mkCl (mkCN old_A house_N) +mkUtt (mkCl house_N) + mkCl : CN -> Cl -- there is an old house +mkUtt (mkCl (mkCN old_A house_N)) mkCl : NP -> Cl -- there are many houses -mkCl (mkNP many_Det house_N) +mkUtt (mkCl (mkNP many_Det house_N) ) mkCl : NP -> RS -> Cl -- it is she who sleeps -mkCl she_NP (mkRS (mkRCl which_RP (mkVP sleep_V))) +mkUtt (mkCl she_NP (mkRS (mkRCl which_RP (mkVP sleep_V)))) mkCl : Adv -> S -> Cl -- it is here that she sleeps -mkCl here_Adv (mkS (mkCl she_NP sleep_V)) +mkUtt (mkCl here_Adv (mkS (mkCl she_NP sleep_V)) ) mkCl : V -> Cl -- it rains -mkCl rain_V0 +mkUtt (mkCl rain_V0 ) mkCl : VP -> Cl -- it is raining -mkCl (progressiveVP (mkVP rain_V0)) +mkUtt (mkCl (progressiveVP (mkVP rain_V0))) mkCl : SC -> VP -> Cl -- that she sleeps is good -mkCl (mkSC (mkS (mkCl she_NP sleep_V))) (mkVP good_A) +mkUtt (mkCl (mkSC (mkS (mkCl she_NP sleep_V))) (mkVP good_A)) genericCl : VP -> Cl -- one sleeps -mkS (genericCl (mkVP sleep_V)) +mkUtt (mkS (genericCl (mkVP sleep_V)) ) mkVP : V -> VP -- sleep mkUtt (mkVP sleep_V) mkVP : V2 -> NP -> VP -- love him @@ -213,11 +213,11 @@ mkUtt (passiveVP love_V2 she_NP) progressiveVP : VP -> VP -- be sleeping mkUtt (progressiveVP (mkVP sleep_V)) mkComp : AP -> Comp -- very old -mkComp (mkAP old_A) +mkUtt (mkVP (mkComp (mkAP old_A))) mkComp : NP -> Comp -- this man -mkComp (mkNP this_Det man_N) +mkUtt (mkVP (mkComp (mkNP this_Det man_N))) mkComp : Adv -> Comp -- here -mkComp here_Adv +mkUtt (mkVP (mkComp here_Adv)) mkSC : S -> SC -- that she sleeps mkSC (mkS (mkCl she_NP sleep_V)) mkSC : QS -> SC -- who sleeps @@ -225,11 +225,11 @@ mkSC (mkQS (mkQCl who_IP sleep_V)) mkSC : VP -> SC -- to sleep mkSC (mkVP sleep_V) mkImp : VP -> Imp -- come to my house -mkImp (mkVP (mkVP come_V) (mkAdv to_Prep (mkNP i_Pron house_N))) +mkUtt (mkImp (mkVP (mkVP come_V) (mkAdv to_Prep (mkNP i_Pron house_N)))) mkImp : V -> Imp -- come -mkImp come_V +mkUtt (mkImp come_V) mkImp : V2 -> NP -> Imp -- take it -mkImp buy_V2 it_NP +mkUtt (mkImp buy_V2 it_NP) mkNP : Quant -> N -> NP -- this man mkUtt (mkNP this_Quant man_N) mkNP : Quant -> CN -> NP -- this old man @@ -250,8 +250,8 @@ mkUtt (mkNP (mkNumeral (tenfoldSub100 n5_Unit)) man_N) mkUtt (mkNP (mkDigits n5_Dig (mkDigits n1_Dig)) (mkCN old_A man_N)) mkNP : Digits -> N -> NP -- 51 men mkUtt (mkNP (mkDigits n5_Dig (mkDigits n1_Dig)) man_N) --- mkNP : Card -> CN -> NP -- forty-five old men --- mkNP : Card -> N -> NP -- forty-five men +-- mkNP : Card -> CN -> NP -- forty-five old men +-- mkNP : Card -> N -> NP -- forty-five men mkNP : Pron -> CN -> NP -- my old man mkUtt (mkNP i_Pron (mkCN old_A man_N)) mkNP : Pron -> N -> NP -- my man @@ -301,7 +301,7 @@ mkUtt youPl_NP they_NP : NP -- they mkUtt they_NP mkDet : Quant -> Det -- this -mkDet this_Quant +mkUtt (mkNP (mkDet this_Quant)) this_NP : NP mkUtt this_NP that_NP : NP @@ -311,22 +311,22 @@ mkUtt these_NP those_NP : NP mkUtt those_NP mkDet : Quant -> Card -> Det -- these five -mkDet this_Quant (mkCard (mkNumeral n5_Unit)) +mkUtt (mkNP (mkDet this_Quant (mkCard (mkNumeral n5_Unit)))) mkDet : Quant -> Ord -> Det -- the best -mkDet the_Quant (mkOrd (mkNumeral n5_Unit)) +mkUtt (mkNP (mkDet the_Quant (mkOrd (mkNumeral n5_Unit)))) mkDet : Quant -> Num -> Ord -> Det -- these five best -mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A) +mkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A))) mkDet : Quant -> Num -> Det -- these five -mkDet this_Quant pluralNum +mkUtt (mkNP (mkDet this_Quant pluralNum)) mkDet : Card -> Det -- forty -mkDet (mkCard (mkNumeral n5_Unit)) +mkUtt (mkNP (mkDet (mkCard (mkNumeral n5_Unit)))) -- mkDet : Digits -> Det -- 51 --- mkDet : Numeral -> Det -- five -mkDet (mkNumeral n5_Unit) +-- mkDet : Numeral -> Det -- five +mkUtt (mkNP (mkDet (mkNumeral n5_Unit))) mkDet : Pron -> Det -- my -mkDet i_Pron +mkUtt (mkNP (mkDet i_Pron)) mkDet : Pron -> Num -> Det -- my five -mkDet i_Pron (mkNum (mkNumeral n5_Unit)) +mkUtt (mkNP (mkDet i_Pron (mkNum (mkNumeral n5_Unit)))) the_Det : Det -- the (house) mkUtt (mkNP the_Det house_N) a_Det : Det -- a (house) @@ -353,394 +353,394 @@ mkUtt (mkNP (mkQuant i_Pron) house_N) mkUtt (mkNP the_Quant house_N) a_Quant : Quant -- a mkUtt (mkNP a_Quant house_N) --- mkNum : Str -> Num -- thirty-five (given by "35") +-- mkNum : Str -> Num -- thirty-five (given by "35") mkNum : Numeral -> Num -- twenty mkNum (mkNumeral (tenfoldSub100 n2_Unit)) mkNum : Digits -> Num -- 21 mkNum (mkDigits n2_Dig (mkDigits n1_Dig)) --- mkNum : Digit -> Num -- five +-- mkNum : Digit -> Num -- five) mkNum : Card -> Num -- almost ten -mkNum (mkCard almost_AdN (mkCard (mkNumeral n5_Unit))) +mkNum (mkCard almost_AdN (mkCard (mkNumeral n5_Unit))) mkNum : AdN -> Card -> Num -- almost ten mkNum (mkCard almost_AdN (mkCard (mkNumeral n5_Unit))) --- singularNum : Num -- singular --- pluralNum : Num -- plural --- mkCard : Str -> Card -- thirty-five (given as "35") +-- singularNum : Num -- singular ) +-- pluralNum : Num -- plural ) +-- mkCard : Str -> Card -- thirty-five (given as "35")) mkCard : Numeral -> Card -- twenty -mkCard (mkNumeral n7_Unit) --- mkCard : Digits -> Card -- 51 --- mkCard : AdN -> Card -> Card -- almost fifty --- mkOrd : Numeral -> Ord -- twentieth --- mkOrd : Digits -> Ord -- 51st --- mkOrd : Digit -> Ord -- fifth +mkUtt (mkCard (mkNumeral n7_Unit)) +-- mkCard : Digits -> Card -- 51 ) +-- mkCard : AdN -> Card -> Card -- almost fifty) +-- mkOrd : Numeral -> Ord -- twentieth ) +-- mkOrd : Digits -> Ord -- 51st ) +-- mkOrd : Digit -> Ord -- fifth ) mkOrd : A -> Ord -- largest -mkOrd small_A +mkUtt (mkAP (mkOrd small_A)) mkAdN : CAdv -> AdN -- more than -mkCard (mkAdN more_CAdv) (mkCard (mkNumeral n8_Unit)) +mkUtt (mkCard (mkAdN more_CAdv) (mkCard (mkNumeral n8_Unit))) mkNumeral : Sub1000 -> Numeral -- coerce 1..999 -mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) +mkUtt (mkCard (mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)))) mkNumeral : Sub1000 -> Sub1000 -> Numeral -- 1000m + n -mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) --- mkNumeral : Str -> Numeral -- thirty-five (given by "35") +mkUtt (mkCard (mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)))) +-- mkNumeral : Str -> Numeral -- thirty-five (given by "35") ) thousandfoldNumeral : Sub1000 -> Numeral -- 1000n -thousandfoldNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) +mkUtt (mkCard (thousandfoldNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)))) mkSub1000 : Sub100 -> Sub1000 -- coerce 1..99 -mkNumeral (mkSub1000 (mkSub100 n9_Unit n9_Unit)) +mkUtt (mkCard (mkNumeral (mkSub1000 (mkSub100 n9_Unit n9_Unit)))) mkSub1000 : Unit -> Sub1000 -- 100n -mkNumeral (mkSub1000 n9_Unit) +mkUtt (mkCard (mkNumeral (mkSub1000 n9_Unit))) mkSub1000 : Unit -> Sub100 -> Sub1000 -- 100m + n -mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)) +mkUtt (mkCard (mkNumeral (mkSub1000 n9_Unit (mkSub100 n9_Unit n9_Unit)))) mkSub100 : Unit -> Sub100 -- eight (coerce 1..9) -mkSub100 n8_Unit +mkUtt (mkCard (mkNumeral (mkSub100 n8_Unit))) mkSub100 : Unit -> Unit -> Sub100 -- 10m + n -mkSub100 n8_Unit n3_Unit +mkUtt (mkCard (mkNumeral (mkSub100 n8_Unit n3_Unit))) tenfoldSub100 : Unit -> Sub100 -- 10n -mkSub100 n8_Unit +mkUtt (mkCard (mkNumeral (mkSub100 n8_Unit))) n1_Unit : Unit -- one -mkNumeral n1_Unit +mkUtt (mkCard (mkNumeral n1_Unit)) n2_Unit : Unit -- two -mkNumeral n2_Unit +mkUtt (mkCard (mkNumeral n2_Unit)) n3_Unit : Unit -- three -mkNumeral n3_Unit +mkUtt (mkCard (mkNumeral n3_Unit)) n4_Unit : Unit -- four -mkNumeral n4_Unit +mkUtt (mkCard (mkNumeral n4_Unit)) n5_Unit : Unit -- five -mkNumeral n5_Unit +mkUtt (mkCard (mkNumeral n5_Unit)) n6_Unit : Unit -- six -mkNumeral n6_Unit +mkUtt (mkCard (mkNumeral n6_Unit)) n7_Unit : Unit -- seven -mkNumeral n7_Unit +mkUtt (mkCard (mkNumeral n7_Unit)) n8_Unit : Unit -- eight -mkNumeral n8_Unit +mkUtt (mkCard (mkNumeral n8_Unit)) n9_Unit : Unit -- nine -mkNumeral n9_Unit --- mkDigits : Str -> Digits -- 35 (from string "35") +mkUtt (mkCard (mkNumeral n9_Unit)) +-- mkDigits : Str -> Digits -- 35 (from string "35")) mkDigits : Dig -> Digits -- 4 -mkDigits n4_Dig +mkUtt (mkCard (mkDigits n4_Dig)) mkDigits : Dig -> Digits -> Digits -- 1,233,486 -mkDigits n1_Dig (mkDigits n2_Dig (mkDigits n3_Dig (mkDigits n3_Dig (mkDigits n4_Dig (mkDigits n8_Dig (mkDigits n6_Dig)))))) --- n0_Dig : Dig -- 0 --- n1_Dig : Dig -- 1 --- n2_Dig : Dig -- 2 --- n3_Dig : Dig -- 3 --- n4_Dig : Dig -- 4 --- n5_Dig : Dig -- 5 --- n6_Dig : Dig -- 6 --- n7_Dig : Dig -- 7 --- n8_Dig : Dig -- 8 --- n9_Dig : Dig -- 9 +mkUtt (mkCard (mkDigits n1_Dig (mkDigits n2_Dig (mkDigits n3_Dig (mkDigits n3_Dig (mkDigits n4_Dig (mkDigits n8_Dig (mkDigits n6_Dig)))))))) +-- n0_Dig : Dig -- 0 ) +-- n1_Dig : Dig -- 1 ) +-- n2_Dig : Dig -- 2 ) +-- n3_Dig : Dig -- 3 ) +-- n4_Dig : Dig -- 4 ) +-- n5_Dig : Dig -- 5 ) +-- n6_Dig : Dig -- 6 ) +-- n7_Dig : Dig -- 7 ) +-- n8_Dig : Dig -- 8 ) +-- n9_Dig : Dig -- 9 ) mkCN : N -> CN -- house -mkCN house_N +mkUtt (mkCN house_N ) mkCN : N2 -> NP -> CN -- mother of the king -mkCN mother_N2 (mkNP the_Det king_N) +mkUtt (mkCN mother_N2 (mkNP the_Det king_N)) mkCN : N3 -> NP -> NP -> CN -- distance from this city to Paris -mkCN distance_N3 (mkNP this_Det city_N) (mkNP paris_PN) +mkUtt (mkCN distance_N3 (mkNP this_Det city_N) (mkNP paris_PN) ) mkCN : N2 -> CN -- mother -mkCN mother_N2 +mkUtt (mkCN mother_N2) mkCN : N3 -> CN -- distance -mkCN distance_N3 +mkUtt (mkCN distance_N3) mkCN : A -> N -> CN -- big house -mkCN big_A house_N +mkUtt (mkCN big_A house_N ) mkCN : A -> CN -> CN -- big blue house -mkCN big_A (mkCN blue_A house_N) +mkUtt (mkCN big_A (mkCN blue_A house_N)) mkCN : AP -> N -> CN -- very big house -mkCN (mkAP very_AdA big_A) house_N +mkUtt (mkCN (mkAP very_AdA big_A) house_N ) mkCN : AP -> CN -> CN -- very big blue house -mkCN (mkAP very_AdA big_A) (mkCN blue_A house_N) +mkUtt (mkCN (mkAP very_AdA big_A) (mkCN blue_A house_N) ) mkCN : N -> RS -> CN -- man whom she loves -mkCN man_N (mkRS (mkRCl which_RP she_NP love_V2)) +mkUtt (mkCN man_N (mkRS (mkRCl which_RP she_NP love_V2))) mkCN : CN -> RS -> CN -- old man whom she loves -mkCN (mkCN old_A man_N) (mkRS (mkRCl which_RP she_NP love_V2)) +mkUtt (mkCN (mkCN old_A man_N) (mkRS (mkRCl which_RP she_NP love_V2)) ) mkCN : N -> Adv -> CN -- house on the hill -mkCN house_N (mkAdv on_Prep (mkNP the_Det hill_N)) +mkUtt (mkCN house_N (mkAdv on_Prep (mkNP the_Det hill_N))) mkCN : CN -> Adv -> CN -- big house on the hill -mkCN (mkCN big_A house_N) (mkAdv on_Prep (mkNP the_Det hill_N)) +mkUtt (mkCN (mkCN big_A house_N) (mkAdv on_Prep (mkNP the_Det hill_N))) mkCN : CN -> S -> CN -- rule that she sleeps -mkNum (mkCard almost_AdN (mkCard (mkNumeral n5_Unit))) +mkUtt (mkCN (mkCN rule_N) (mkS (mkCl she_NP sleep_V))) mkCN : CN -> QS -> CN -- question if she sleeps -mkNum (mkCard almost_AdN (mkCard (mkNumeral n5_Unit))) +mkUtt (mkCN (mkCN question_N) (mkQS (mkQCl (mkCl she_NP sleep_V)))) mkCN : CN -> VP -> CN -- reason to sleep -mkCN (mkCN reason_N) (mkVP sleep_V) +mkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkCN : CN -> SC -> CN -- reason to sleep -mkCN (mkCN reason_N) (mkVP sleep_V) +mkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkCN : N -> NP -> CN -- king John -mkCN king_N (mkNP john_PN) +mkUtt (mkCN king_N (mkNP john_PN) ) mkCN : CN -> NP -> CN -- old king John -mkCN (mkCN old_A king_N) (mkNP john_PN) +mkUtt (mkCN (mkCN old_A king_N) (mkNP john_PN)) mkAP : A -> AP -- warm -mkAP warm_A +mkUtt (mkAP warm_A) mkAP : A -> NP -> AP -- warmer than Paris -mkAP warm_A (mkNP paris_PN) +mkUtt (mkAP warm_A (mkNP paris_PN)) mkAP : A2 -> NP -> AP -- married to her -mkAP married_A2 she_NP +mkUtt (mkAP married_A2 she_NP ) mkAP : A2 -> AP -- married -mkAP married_A2 +mkUtt (mkAP married_A2) mkAP : AP -> S -> AP -- probable that she sleeps -mkCl (mkVP (mkAP (mkAP good_A) (mkS (mkCl she_NP sleep_V)))) +mkUtt (mkCl (mkVP (mkAP (mkAP good_A) (mkS (mkCl she_NP sleep_V))))) mkAP : AP -> QS -> AP -- uncertain who sleeps -mkCl (mkVP (mkAP (mkAP uncertain_A) (mkQS (mkQCl who_IP sleep_V)))) +mkUtt (mkCl (mkVP (mkAP (mkAP uncertain_A) (mkQS (mkQCl who_IP sleep_V))))) mkAP : AP -> VP -> AP -- ready to go -mkCl she_NP (mkAP (mkAP ready_A) (mkVP sleep_V)) +mkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkVP sleep_V))) mkAP : AP -> SC -> AP -- ready to go -mkCl she_NP (mkAP (mkAP ready_A) (mkSC (mkVP sleep_V))) +mkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkSC (mkVP sleep_V)))) mkAP : AdA -> A -> AP -- very old -mkAP very_AdA old_A +mkUtt (mkAP very_AdA old_A) mkAP : AdA -> AP -> AP -- very very old -mkAP very_AdA (mkAP very_AdA old_A) +mkUtt (mkAP very_AdA (mkAP very_AdA old_A)) mkAP : Conj -> AP -> AP -> AP -- old and big -mkAP or_Conj (mkAP old_A) (mkAP young_A) +mkUtt (mkAP or_Conj (mkAP old_A) (mkAP young_A)) mkAP : Conj -> ListAP -> AP -- old, big and warm -mkAP and_Conj (mkListAP (mkAP old_A) (mkListAP (mkAP big_A) (mkAP warm_A))) +mkUtt (mkAP and_Conj (mkListAP (mkAP old_A) (mkListAP (mkAP big_A) (mkAP warm_A)))) mkAP : Ord -> AP -- oldest -mkAP (mkOrd old_A) +mkUtt (mkAP (mkOrd old_A)) mkAP : CAdv -> AP -> NP -> AP -- as old as she -mkAP as_CAdv (mkAP old_A) she_NP +mkUtt (mkAP as_CAdv (mkAP old_A) she_NP) reflAP : A2 -> AP -- married to himself mkUtt (reflAP married_A2) comparAP : A -> AP -- warmer mkUtt (comparAP warm_A) mkAdv : A -> Adv -- warmly -mkAdv warm_A +mkUtt (mkAdv warm_A) mkAdv : Prep -> NP -> Adv -- in the house -mkAdv in_Prep (mkNP the_Det house_N) +mkUtt (mkAdv in_Prep (mkNP the_Det house_N)) mkAdv : Subj -> S -> Adv -- when she sleeps -mkAdv when_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv when_Subj (mkS (mkCl she_NP sleep_V))) mkAdv : CAdv -> A -> NP -> Adv -- more warmly than he -mkAdv more_CAdv warm_A he_NP +mkUtt (mkAdv more_CAdv warm_A he_NP ) mkAdv : CAdv -> A -> S -> Adv -- more warmly than he runs -mkAdv more_CAdv warm_A (mkS (mkCl he_NP run_V)) +mkUtt (mkAdv more_CAdv warm_A (mkS (mkCl he_NP run_V)) ) mkAdv : AdA -> Adv -> Adv -- very warmly -mkAdv very_AdA (mkAdv warm_A) +mkUtt (mkAdv very_AdA (mkAdv warm_A) ) mkAdv : Conj -> Adv -> Adv -> Adv -- here and now -mkAdv and_Conj here_Adv now_Adv +mkUtt (mkAdv and_Conj here_Adv now_Adv) mkAdv : Conj -> ListAdv -> Adv -- with her, here and now -mkAdv and_Conj (mkListAdv (mkAdv with_Prep she_NP) (mkListAdv here_Adv now_Adv)) +mkUtt (mkAdv and_Conj (mkListAdv (mkAdv with_Prep she_NP) (mkListAdv here_Adv now_Adv))) mkQS : (Tense) -> (Ant) -> (Pol) -> QCl -> QS -- who wouldn't have slept -mkQS conditionalTense anteriorAnt negativePol (mkQCl who_IP sleep_V) +mkUtt (mkQS conditionalTense anteriorAnt negativePol (mkQCl who_IP sleep_V)) mkQS : Cl -> QS -- -mkQS (mkCl she_NP sleep_V) +mkUtt (mkQS (mkCl she_NP sleep_V)) mkQCl : Cl -> QCl -- does she sleep -mkQCl (mkCl she_NP sleep_V) +mkUtt (mkQCl (mkCl she_NP sleep_V)) mkQCl : IP -> VP -> QCl -- who sleeps -mkQCl who_IP (mkVP (mkVP sleep_V) here_Adv) +mkUtt (mkQCl who_IP (mkVP (mkVP sleep_V) here_Adv)) mkQCl : IP -> V -> QCl -- who sleeps -mkQCl who_IP sleep_V +mkUtt (mkQCl who_IP sleep_V) mkQCl : IP -> V2 -> NP -> QCl -- who loves her -mkQCl who_IP love_V2 she_NP +mkUtt (mkQCl who_IP love_V2 she_NP) mkQCl : IP -> V3 -> NP -> NP -> QCl -- who sends it to her -mkQCl who_IP send_V3 it_NP she_NP +mkUtt (mkQCl who_IP send_V3 it_NP she_NP) mkQCl : IP -> VV -> VP -> QCl -- who wants to sleep -mkQCl who_IP want_VV (mkVP sleep_V) +mkUtt (mkQCl who_IP want_VV (mkVP sleep_V)) mkQCl : IP -> VS -> S -> QCl -- who says that I sleep -mkQCl who_IP say_VS (mkS (mkCl i_NP sleep_V)) +mkUtt (mkQCl who_IP say_VS (mkS (mkCl i_NP sleep_V))) mkQCl : IP -> VQ -> QS -> QCl -- who wonders who sleeps -mkQCl who_IP wonder_VQ (mkQS (mkQCl who_IP sleep_V)) +mkUtt (mkQCl who_IP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkQCl : IP -> VA -> A -> QCl -- who becomes old -mkQCl who_IP become_VA old_A +mkUtt (mkQCl who_IP become_VA old_A) mkQCl : IP -> VA -> AP -> QCl -- who becomes very old -mkQCl who_IP become_VA (mkAP very_AdA old_A) +mkUtt (mkQCl who_IP become_VA (mkAP very_AdA old_A)) mkQCl : IP -> V2A -> NP -> A -> QCl -- who paints it red -mkQCl who_IP paint_V2A it_NP red_A +mkUtt (mkQCl who_IP paint_V2A it_NP red_A) mkQCl : IP -> V2A -> NP -> AP -> QCl -- who paints it very red -mkQCl who_IP paint_V2A it_NP (mkAP very_AdA red_A) +mkUtt (mkQCl who_IP paint_V2A it_NP (mkAP very_AdA red_A)) mkQCl : IP -> V2S -> NP -> S -> QCl -- who answers to him that we sleep -mkQCl who_IP answer_V2S he_NP (mkS (mkCl we_NP sleep_V)) +mkUtt (mkQCl who_IP answer_V2S he_NP (mkS (mkCl we_NP sleep_V))) mkQCl : IP -> V2Q -> NP -> QS -> QCl -- who asks him who sleeps -mkQCl who_IP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V)) +mkUtt (mkQCl who_IP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V))) mkQCl : IP -> V2V -> NP -> VP -> QCl -- who begs him to sleep -mkQCl who_IP beg_V2V he_NP (mkVP sleep_V) +mkUtt (mkQCl who_IP beg_V2V he_NP (mkVP sleep_V)) mkQCl : IP -> A -> QCl -- who is old -mkQCl who_IP old_A +mkUtt (mkQCl who_IP old_A) mkQCl : IP -> A -> NP -> QCl -- who is older than he -mkQCl who_IP old_A he_NP +mkUtt (mkQCl who_IP old_A he_NP) mkQCl : IP -> A2 -> NP -> QCl -- who is married to him -mkQCl who_IP married_A2 he_NP +mkUtt (mkQCl who_IP married_A2 he_NP) mkQCl : IP -> AP -> QCl -- who is very old -mkQCl who_IP (mkAP very_AdA old_A) +mkUtt (mkQCl who_IP (mkAP very_AdA old_A)) mkQCl : IP -> NP -> QCl -- who is the woman -mkQCl who_IP (mkNP the_Det woman_N) +mkUtt (mkQCl who_IP (mkNP the_Det woman_N)) mkQCl : IP -> N -> QCl -- who is a woman -mkQCl who_IP woman_N +mkUtt (mkQCl who_IP woman_N) mkQCl : IP -> CN -> QCl -- who is an old woman -mkQCl who_IP (mkCN old_A woman_N) +mkUtt (mkQCl who_IP (mkCN old_A woman_N)) mkQCl : IP -> Adv -> QCl -- who is here -mkQCl who_IP here_Adv +mkUtt (mkQCl who_IP here_Adv) mkQCl : IP -> VP -> QCl -- who always sleeps -mkQCl who_IP (mkVP always_AdV (mkVP sleep_V)) +mkUtt (mkQCl who_IP (mkVP always_AdV (mkVP sleep_V))) mkQCl : IAdv -> Cl -> QCl -- why does she sleep -mkQCl why_IAdv (mkCl she_NP sleep_V) +mkUtt (mkQCl why_IAdv (mkCl she_NP sleep_V) ) mkQCl : Prep -> IP -> Cl -> QCl -- with whom does she sleep -mkQCl with_Prep who_IP (mkCl she_NP sleep_V) +mkUtt (mkQCl with_Prep who_IP (mkCl she_NP sleep_V) ) mkQCl : IAdv -> NP -> QCl -- where is she -mkQCl where_IAdv she_NP +mkUtt (mkQCl where_IAdv she_NP ) mkQCl : IComp -> NP -> QCl -- who is this man -mkQCl (mkIComp who_IP) (mkNP this_Det man_N) +mkUtt (mkQCl (mkIComp who_IP) (mkNP this_Det man_N)) mkQCl : IP -> QCl -- which cities are there -mkQCl (mkIP which_IQuant city_N) +mkUtt (mkQCl (mkIP which_IQuant city_N)) mkQCl : IP -> NP -> V2 -> QCl -- who does she love -mkQCl who_IP she_NP +mkUtt (mkQCl who_IP she_NP) mkQCl : IP -> ClSlash -> QCl -- who does she love today --: -mkQCl who_IP (mkClSlash (mkClSlash she_NP love_V2) today_Adv) +mkUtt (mkQCl who_IP (mkClSlash (mkClSlash she_NP love_V2) today_Adv)) mkIP : IDet -> CN -> IP -- which five big cities -mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit))) (mkCN big_A city_N) +mkUtt (mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit))) (mkCN big_A city_N) ) mkIP : IDet -> N -> IP -- which five cities -mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit))) city_N +mkUtt (mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit))) city_N ) mkIP : IDet -> IP -- which five -mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit))) +mkUtt (mkIP (mkIDet which_IQuant (mkNum (mkNumeral n5_Unit)))) mkIP : IQuant -> CN -> IP -- which big city -mkIP which_IQuant (mkCN big_A city_N) +mkUtt (mkIP which_IQuant (mkCN big_A city_N) ) mkIP : IQuant -> Num -> CN -> IP -- which five big cities -mkIP which_IQuant (mkNum (mkNumeral n5_Unit)) (mkCN big_A city_N) +mkUtt (mkIP which_IQuant (mkNum (mkNumeral n5_Unit)) (mkCN big_A city_N) ) mkIP : IQuant -> N -> IP -- which city -mkIP which_IQuant city_N +mkUtt (mkIP which_IQuant city_N) mkIP : IP -> Adv -> IP -- who in Paris -mkIP who_IP (mkAdv in_Prep (mkNP paris_PN)) +mkUtt (mkIP who_IP (mkAdv in_Prep (mkNP paris_PN))) what_IP : IP -- what (singular) mkUtt what_IP who_IP : IP -- who (singular) mkUtt who_IP mkIAdv : Prep -> IP -> IAdv -- in which city -mkIAdv in_Prep (mkIP which_IQuant city_N) +mkUtt (mkIAdv in_Prep (mkIP which_IQuant city_N)) mkIAdv : IAdv -> Adv -> IAdv -- where in Paris -mkIAdv where_IAdv (mkAdv in_Prep (mkNP paris_PN)) +mkUtt (mkIAdv where_IAdv (mkAdv in_Prep (mkNP paris_PN)) ) mkIDet : IQuant -> Num -> IDet -- which (songs) -mkIP (mkIDet which_IQuant pluralNum) house_N +mkUtt (mkIP (mkIDet which_IQuant pluralNum) house_N) mkIDet : IQuant -> IDet -mkIP (mkIDet which_IQuant) house_N +mkUtt (mkIP (mkIDet which_IQuant) house_N ) which_IDet : IDet -mkIP which_IDet house_N +mkUtt (mkIP which_IDet house_N) whichPl_IDet : IDet -mkIP whichPl_IDet house_N +mkUtt (mkIP whichPl_IDet house_N) mkRS : (Tense) -> (Ant) -> (Pol) -> RCl -> RS -- that wouldn't have slept -mkCN woman_N (mkRS conditionalTense anteriorAnt negativePol (mkRCl which_RP sleep_V)) +mkUtt (mkCN woman_N (mkRS conditionalTense anteriorAnt negativePol (mkRCl which_RP sleep_V))) mkRS : RCl -> RS -- -mkCN woman_N (mkRS (mkRCl which_RP sleep_V)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP sleep_V))) mkRS : Conj -> RS -> RS -> RS -- -mkCN woman_N (mkRS or_Conj (mkRS (mkRCl which_RP sleep_V)) (mkRS (mkRCl which_RP we_NP love_V2))) +mkUtt (mkCN woman_N (mkRS or_Conj (mkRS (mkRCl which_RP sleep_V)) (mkRS (mkRCl which_RP we_NP love_V2)))) mkRCl : RP -> VP -> RCl -- who sleeps -mkCN woman_N (mkRS (mkRCl which_RP (mkVP (mkVP sleep_V) here_Adv))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkVP (mkVP sleep_V) here_Adv)))) mkRCl : RP -> V -> RCl -- who sleeps -mkCN woman_N (mkRS (mkRCl which_RP sleep_V)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP sleep_V))) mkRCl : RP -> V2 -> NP -> RCl -- who loves her -mkCN woman_N (mkRS (mkRCl which_RP love_V2 he_NP)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP love_V2 he_NP))) mkRCl : RP -> V3 -> NP -> NP -> RCl -- who sends it to her -mkCN woman_N (mkRS (mkRCl which_RP send_V3 it_NP he_NP)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP send_V3 it_NP he_NP))) mkRCl : RP -> VV -> VP -> RCl -- who wants to sleep -mkCN woman_N (mkRS (mkRCl which_RP want_VV (mkVP sleep_V))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP want_VV (mkVP sleep_V)))) mkRCl : RP -> VS -> S -> RCl -- who says that I sleep -mkCN woman_N (mkRS (mkRCl which_RP say_VS (mkS (mkCl i_NP sleep_V)))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP say_VS (mkS (mkCl i_NP sleep_V))))) mkRCl : RP -> VQ -> QS -> RCl -- who wonders who sleeps -mkCN woman_N (mkRS (mkRCl which_RP wonder_VQ (mkQS (mkQCl who_IP sleep_V)))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP wonder_VQ (mkQS (mkQCl who_IP sleep_V))))) mkRCl : RP -> VA -> A -> RCl -- who becomes old -mkCN woman_N (mkRS (mkRCl which_RP become_VA old_A)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP become_VA old_A))) mkRCl : RP -> VA -> AP -> RCl -- who becomes very old -mkCN woman_N (mkRS (mkRCl which_RP become_VA (mkAP very_AdA old_A))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP become_VA (mkAP very_AdA old_A)))) mkRCl : RP -> V2A -> NP -> A -> RCl -- who paints it red -mkCN woman_N (mkRS (mkRCl which_RP paint_V2A it_NP red_A)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP paint_V2A it_NP red_A))) mkRCl : RP -> V2A -> NP -> AP -> RCl -- who paints it very red -mkCN woman_N (mkRS (mkRCl which_RP paint_V2A it_NP (mkAP very_AdA red_A))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP paint_V2A it_NP (mkAP very_AdA red_A)))) mkRCl : RP -> V2S -> NP -> S -> RCl -- who answers to him that we sleep -mkCN woman_N (mkRS (mkRCl which_RP answer_V2S he_NP (mkS (mkCl we_NP sleep_V)))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP answer_V2S he_NP (mkS (mkCl we_NP sleep_V))))) mkRCl : RP -> V2Q -> NP -> QS -> RCl -- who asks him who sleeps -mkCN woman_N (mkRS (mkRCl which_RP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V)))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V))))) mkRCl : RP -> V2V -> NP -> VP -> RCl -- who begs him to sleep -mkCN woman_N (mkRS (mkRCl which_RP beg_V2V he_NP (mkVP sleep_V))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP beg_V2V he_NP (mkVP sleep_V)))) mkRCl : RP -> A -> RCl -- who is old -mkCN woman_N (mkRS (mkRCl which_RP old_A)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP old_A))) mkRCl : RP -> A -> NP -> RCl -- who is older than he -mkCN woman_N (mkRS (mkRCl which_RP old_A he_NP)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP old_A he_NP))) mkRCl : RP -> A2 -> NP -> RCl -- who is married to him -mkCN woman_N (mkRS (mkRCl which_RP married_A2 he_NP)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP married_A2 he_NP))) mkRCl : RP -> AP -> RCl -- who is very old -mkCN woman_N (mkRS (mkRCl which_RP (mkAP very_AdA old_A))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkAP very_AdA old_A)))) mkRCl : RP -> NP -> RCl -- who is the woman -mkCN woman_N (mkRS (mkRCl which_RP (mkNP the_Det woman_N))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkNP the_Det woman_N)))) mkRCl : RP -> N -> RCl -- who is a woman -mkCN student_N (mkRS (mkRCl which_RP woman_N)) +mkUtt (mkCN student_N (mkRS (mkRCl which_RP woman_N))) mkRCl : RP -> CN -> RCl -- who is an old woman -mkCN student_N (mkRS (mkRCl which_RP (mkCN old_A woman_N))) +mkUtt (mkCN student_N (mkRS (mkRCl which_RP (mkCN old_A woman_N)))) mkRCl : RP -> Adv -> RCl -- who is here -mkCN woman_N (mkRS (mkRCl which_RP here_Adv)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP here_Adv))) mkRCl : RP -> VP -> RCl -- who always sleeps -mkCN woman_N (mkRS (mkRCl which_RP (mkVP always_AdV (mkVP sleep_V)))) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkVP always_AdV (mkVP sleep_V))))) mkRCl : RP -> NP -> V2 -> RCl -- who she loves -mkCN woman_N (mkRS (mkRCl which_RP we_NP love_V2)) +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP we_NP love_V2))) mkRCl : RP -> ClSlash -> RCl -- who she loves today --: -mkCN woman_N (mkRS (mkRCl which_RP (mkClSlash (mkClSlash she_NP love_V2) today_Adv))) --- which_RP : RP -- which/who ---which_RP +mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkClSlash (mkClSlash she_NP love_V2) today_Adv)))) + which_RP : RP -- which/who ) +which_RP mkRP : Prep -> NP -> RP -> RP -- all the cities in which mkRP in_Prep (mkNP all_Predet (mkNP the_Quant pluralNum city_N)) which_RP mkSSlash : Temp -> Pol -> ClSlash -> SSlash mkSSlash (mkTemp pastTense anteriorAnt) negativePol (mkClSlash she_NP (mkVPSlash see_V2)) mkClSlash : NP -> VPSlash -> ClSlash -- (whom) he sees here -mkQCl who_IP (mkClSlash she_NP (mkVPSlash see_V2)) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash see_V2))) mkClSlash : NP -> V2 -> ClSlash -- (whom) he sees -mkQCl who_IP (mkClSlash she_NP see_V2) +mkUtt (mkQCl who_IP (mkClSlash she_NP see_V2)) mkClSlash : NP -> VV -> V2 -> ClSlash -- (whom) he wants to see -mkQCl who_IP (mkClSlash she_NP want_VV see_V2) +mkUtt (mkQCl who_IP (mkClSlash she_NP want_VV see_V2)) mkClSlash : Cl -> Prep -> ClSlash -- (with whom) he sleeps -mkQCl who_IP (mkClSlash (mkCl she_NP sleep_V) with_Prep) +mkUtt (mkQCl who_IP (mkClSlash (mkCl she_NP sleep_V) with_Prep)) mkClSlash : ClSlash -> Adv -> ClSlash -- (whom) he sees tomorrow -mkQCl who_IP (mkClSlash (mkClSlash she_NP see_V2) today_Adv) +mkUtt (mkQCl who_IP (mkClSlash (mkClSlash she_NP see_V2) today_Adv)) mkClSlash : NP -> VS -> SSlash -> ClSlash -- (whom)she says that he s -mkQCl who_IP (mkClSlash she_NP know_VS (mkSSlash (mkTemp pastTense anteriorAnt) negativePol (mkClSlash we_NP (mkVPSlash see_V2)))) +mkUtt (mkQCl who_IP (mkClSlash she_NP know_VS (mkSSlash (mkTemp pastTense anteriorAnt) negativePol (mkClSlash we_NP (mkVPSlash see_V2))))) mkVPSlash : V2 -> VPSlash -- (whom) (she) loves -mkQCl who_IP (mkClSlash she_NP (mkVPSlash see_V2)) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash see_V2))) mkVPSlash : V3 -> NP -> VPSlash -- (whom) (she) gives an apple -mkQCl who_IP (mkClSlash she_NP (mkVPSlash send_V3 it_NP)) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash send_V3 it_NP)) ) mkVPSlash : V2A -> AP -> VPSlash -- (whom) (she) paints red -mkQCl who_IP (mkClSlash she_NP (mkVPSlash paint_V2A (mkAP red_A))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash paint_V2A (mkAP red_A))) ) mkVPSlash : V2Q -> QS -> VPSlash -- (whom) (she) asks who sleeps -mkQCl who_IP (mkClSlash she_NP (mkVPSlash ask_V2Q (mkQS (mkQCl where_IAdv (mkCl i_NP sleep_V))))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash ask_V2Q (mkQS (mkQCl where_IAdv (mkCl i_NP sleep_V))))) ) mkVPSlash : V2S -> S -> VPSlash -- (whom) (she) tells that we sleep -mkQCl who_IP (mkClSlash she_NP (mkVPSlash answer_V2S (mkS (mkCl i_NP sleep_V)))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash answer_V2S (mkS (mkCl i_NP sleep_V)))) ) mkVPSlash : V2V -> VP -> VPSlash -- (whom) (she) forces to sleep -mkQCl who_IP (mkClSlash she_NP (mkVPSlash beg_V2V (mkVP sleep_V))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash beg_V2V (mkVP sleep_V)))) mkVPSlash : VV -> VPSlash -> VPSlash -- want always to buy -mkQCl who_IP (mkClSlash she_NP (mkVPSlash want_VV (mkVPSlash see_V2))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash want_VV (mkVPSlash see_V2)))) mkVPSlash : V2V -> NP -> VPSlash -> VPSlash -- beg me always to buy -mkQCl who_IP (mkClSlash she_NP (mkVPSlash beg_V2V i_NP (mkVPSlash see_V2))) +mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash beg_V2V i_NP (mkVPSlash see_V2)))) above_Prep : Prep -mkAdv above_Prep it_NP +mkUtt (mkAdv above_Prep it_NP) after_Prep : Prep -mkAdv after_Prep it_NP +mkUtt (mkAdv after_Prep it_NP) all_Predet : Predet mkUtt (mkNP all_Predet (mkNP thePl_Det man_N)) almost_AdA : AdA -mkAP almost_AdA red_A +mkUtt (mkAP almost_AdA red_A) almost_AdN : AdN -mkCard almost_AdN (mkCard (mkNumeral n8_Unit)) +mkUtt (mkCard almost_AdN (mkCard (mkNumeral n8_Unit)) ) although_Subj : Subj -mkAdv although_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv although_Subj (mkS (mkCl she_NP sleep_V))) always_AdV : AdV always_AdV and_Conj : Conj -mkAdv and_Conj here_Adv now_Adv +mkUtt (mkAdv and_Conj here_Adv now_Adv) because_Subj : Subj -mkAdv because_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv because_Subj (mkS (mkCl she_NP sleep_V))) before_Prep : Prep -mkAdv before_Prep it_NP +mkUtt (mkAdv before_Prep it_NP) behind_Prep : Prep -mkAdv behind_Prep it_NP +mkUtt (mkAdv behind_Prep it_NP) between_Prep : Prep -mkAdv between_Prep (mkNP and_Conj you_NP i_NP) +mkUtt (mkAdv between_Prep (mkNP and_Conj you_NP i_NP)) both7and_DConj : Conj -- both...and -mkAdv both7and_DConj here_Adv there_Adv +mkUtt (mkAdv both7and_DConj here_Adv there_Adv) but_PConj : PConj but_PConj by8agent_Prep : Prep -- by (agent) -mkAdv by8agent_Prep it_NP +mkUtt (mkAdv by8agent_Prep it_NP) by8means_Prep : Prep -- by (means of) -mkAdv by8means_Prep it_NP +mkUtt (mkAdv by8means_Prep it_NP) can8know_VV : VV -- can (capacity) mkUtt (mkVP can8know_VV (mkVP sleep_V)) can_VV : VV -- can (possibility) mkUtt (mkVP can_VV (mkVP sleep_V)) during_Prep : Prep -mkAdv during_Prep it_NP +mkUtt (mkAdv during_Prep it_NP) either7or_DConj : Conj -- either...or -mkAdv either7or_DConj here_Adv there_Adv +mkUtt (mkAdv either7or_DConj here_Adv there_Adv) every_Det : Det mkUtt (mkNP every_Det woman_N) everybody_NP : NP -- everybody @@ -748,21 +748,21 @@ mkUtt everybody_NP everything_NP : NP mkUtt everything_NP everywhere_Adv : Adv -everywhere_Adv +mkUtt (everywhere_Adv) few_Det : Det mkUtt (mkNP few_Det woman_N) for_Prep : Prep -mkAdv for_Prep it_NP +mkUtt (mkAdv for_Prep it_NP) from_Prep : Prep -mkAdv from_Prep it_NP +mkUtt (mkAdv from_Prep it_NP) he_Pron : Pron mkUtt (mkNP he_Pron) here_Adv : Adv -here_Adv +mkUtt (here_Adv) here7to_Adv : Adv -- to here -here7to_Adv +mkUtt (here7to_Adv) here7from_Adv : Adv -- from here -here7from_Adv +mkUtt (here7from_Adv) how_IAdv : IAdv mkUtt how_IAdv how8many_IDet : IDet @@ -772,11 +772,11 @@ mkUtt how8much_IAdv i_Pron : Pron mkUtt (mkNP i_Pron) if_Subj : Subj -mkAdv if_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv if_Subj (mkS (mkCl she_NP sleep_V))) in8front_Prep : Prep -- in front of -mkAdv in8front_Prep it_NP +mkUtt (mkAdv in8front_Prep it_NP) in_Prep : Prep -mkAdv in_Prep it_NP +mkUtt (mkAdv in_Prep it_NP) it_Pron : Pron mkUtt (mkNP it_Pron) less_CAdv : CAdv @@ -794,25 +794,25 @@ must_VV no_Utt : Utt no_Utt on_Prep : Prep -mkAdv on_Prep it_NP +mkUtt (mkAdv on_Prep it_NP) only_Predet : Predet only_Predet or_Conj : Conj -mkAdv or_Conj here_Adv there_Adv +mkUtt (mkAdv or_Conj here_Adv there_Adv) otherwise_PConj : PConj otherwise_PConj part_Prep : Prep -mkAdv part_Prep it_NP +mkUtt (mkAdv part_Prep it_NP) please_Voc : Voc please_Voc possess_Prep : Prep -- of (possessive) -mkAdv possess_Prep it_NP +mkUtt (mkAdv possess_Prep it_NP) quite_Adv : AdA quite_Adv she_Pron : Pron mkUtt (mkNP she_Pron) so_AdA : AdA -so_AdA +mkUtt (mkAP so_AdA warm_A) someSg_Det : Det mkUtt (mkNP someSg_Det wine_N) somePl_Det : Det @@ -822,17 +822,17 @@ mkUtt somebody_NP something_NP : NP mkUtt something_NP somewhere_Adv : Adv -somewhere_Adv +mkUtt (somewhere_Adv) that_Quant : Quant mkUtt (mkNP that_Quant house_N) that_Subj : Subj -mkAdv that_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv that_Subj (mkS (mkCl she_NP sleep_V))) there_Adv : Adv -there_Adv +mkUtt (there_Adv) there7to_Adv : Adv -- to there -there7to_Adv +mkUtt (there7to_Adv) there7from_Adv : Adv -- from there -there7from_Adv +mkUtt (there7from_Adv) therefore_PConj : PConj therefore_PConj they_Pron : Pron @@ -840,41 +840,41 @@ mkUtt (mkNP they_Pron) this_Quant : Quant mkUtt (mkNP this_Quant house_N) through_Prep : Prep -mkAdv through_Prep it_NP +mkUtt (mkAdv through_Prep it_NP) to_Prep : Prep -mkAdv to_Prep it_NP +mkUtt (mkAdv to_Prep it_NP) too_AdA : AdA -too_AdA +mkUtt (mkAP too_AdA warm_A) under_Prep : Prep -mkAdv under_Prep it_NP +mkUtt (mkAdv under_Prep it_NP) very_AdA : AdA -very_AdA +mkUtt (mkAP very_AdA warm_A) want_VV : VV -want_VV +mkUtt (mkVP want_VV (mkVP sleep_V)) we_Pron : Pron mkUtt (mkNP we_Pron) whatPl_IP : IP -- what (plural) -whatPl_IP +mkUtt (whatPl_IP) whatSg_IP : IP -- what (singular) -whatSg_IP +mkUtt (whatSg_IP) when_IAdv : IAdv mkUtt when_IAdv when_Subj : Subj -mkAdv when_Subj (mkS (mkCl she_NP sleep_V)) +mkUtt (mkAdv when_Subj (mkS (mkCl she_NP sleep_V))) where_IAdv : IAdv mkUtt where_IAdv which_IQuant : IQuant -mkIP which_IQuant house_N +mkUtt (mkIP which_IQuant house_N) whoPl_IP : IP -- who (plural) -whoPl_IP +mkUtt (whoPl_IP) whoSg_IP : IP -- who (singular) -whoSg_IP +mkUtt (whoSg_IP) why_IAdv : IAdv mkUtt why_IAdv with_Prep : Prep -mkAdv with_Prep it_NP +mkUtt (mkAdv with_Prep it_NP) without_Prep : Prep -mkAdv without_Prep it_NP +mkUtt (mkAdv without_Prep it_NP) yes_Utt : Utt yes_Utt youSg_Pron : Pron -- you (singular) @@ -888,17 +888,17 @@ mkUtt (mkNP no_Quant house_N) not_Predet : Predet mkUtt (mkNP not_Predet everybody_NP) if_then_Conj : Conj -mkAdv if_then_Conj here_Adv there_Adv +mkUtt (mkAdv if_then_Conj here_Adv there_Adv) at_least_AdN : AdN -mkCard at_least_AdN (mkCard (mkNumeral n8_Unit)) +mkUtt (mkCard at_least_AdN (mkCard (mkNumeral n8_Unit))) at_most_AdN : AdN -mkCard at_most_AdN (mkCard (mkNumeral n8_Unit)) +mkUtt (mkCard at_most_AdN (mkCard (mkNumeral n8_Unit))) nobody_NP : NP mkUtt nobody_NP nothing_NP : NP mkUtt nothing_NP except_Prep : Prep -mkAdv except_Prep it_NP +mkUtt (mkAdv except_Prep it_NP) as_CAdv : CAdv as_CAdv have_V2 : V2 diff --git a/lib/doc/synopsis-intro.txt b/lib/doc/synopsis-intro.txt index eb1770287..1f8fd6d74 100644 --- a/lib/doc/synopsis-intro.txt +++ b/lib/doc/synopsis-intro.txt @@ -23,12 +23,12 @@ constructing trees in them. - [Chapter 2 #toc5]: syntactic construction functions, with cross-links and examples. - [Chapter 3 #toc83]: morphological paradigms. -- [Chapter 4 #toc105]: additional libraries. -- [Chapter 5 #toc111]: how to "browse" the library by +- [Chapter 4 #toc108]: additional libraries. +- [Chapter 5 #toc114]: how to "browse" the library by loading the grammars into the ``gf`` command editor. -- [Chapter 6 #toc112]: a brief example of how application grammars can +- [Chapter 6 #toc115]: a brief example of how application grammars can use the resource modules. -- [Detailed table of contents #toc113]. +- [Detailed table of contents #toc116]. Other relevant documents: @@ -36,6 +36,7 @@ Other relevant documents: the internals of the resource grammar - [The RGL Status Document ./status.html]: the current status of different languages and the authors of each grammar +- [RGL Source Browser ./browse]: look up functions and their source code - [Resource Grammar Tutorial http://www.grammaticalframework.org/doc/gf-lrec-2010.pdf] as presented in LREC-2010. - Paper "The GF Resource Grammar Library" by A. Ranta diff --git a/lib/doc/synopsis.html b/lib/doc/synopsis.html index f3334a543..8960b0522 100644 --- a/lib/doc/synopsis.html +++ b/lib/doc/synopsis.html @@ -37,12 +37,12 @@ constructing trees in them.
  • Chapter 2: syntactic construction functions, with cross-links and examples.
  • Chapter 3: morphological paradigms. -
  • Chapter 4: additional libraries. -
  • Chapter 5: how to "browse" the library by +
  • Chapter 4: additional libraries. +
  • Chapter 5: how to "browse" the library by loading the grammars into the gf command editor. -
  • Chapter 6: a brief example of how application grammars can +
  • Chapter 6: a brief example of how application grammars can use the resource modules. -
  • Detailed table of contents. +
  • Detailed table of contents.

    @@ -54,6 +54,7 @@ Other relevant documents: the internals of the resource grammar

  • The RGL Status Document: the current status of different languages and the authors of each grammar +
  • RGL Source Browser: look up functions and their source code
  • Resource Grammar Tutorial as presented in LREC-2010.
  • Paper "The GF Resource Grammar Library" by A. Ranta @@ -527,82 +528,82 @@ Lexical category, constructors given in comparAP A -> AP -
    warmer
    +
    warmer
    mkAP A -> AP -
    warm
    +
    warm
    mkAP A -> NP -> AP -
    warmer than Paris
    +
    warmer than Paris
    mkAP A2 -> NP -> AP -
    married to her
    +
    married to her
    mkAP A2 -> AP -
    married
    +
    married
    mkAP AP -> S -> AP -
    it is good that she sleeps
    +
    it is good that she sleeps
    mkAP AP -> QS -> AP -
    it is uncertain who sleeps
    +
    it is uncertain who sleeps
    mkAP AP -> VP -> AP -
    she is ready to sleep
    +
    she is ready to sleep
    mkAP AP -> SC -> AP -
    she is ready to sleep
    +
    she is ready to sleep
    mkAP AdA -> A -> AP -
    very old
    +
    very old
    mkAP AdA -> AP -> AP -
    very very old
    +
    very very old
    mkAP Conj -> AP -> AP -> AP -
    old or young
    +
    old or young
    mkAP Conj -> ListAP -> AP -
    old , big and warm
    +
    old , big and warm
    mkAP Ord -> AP -
    oldest
    +
    oldest
    mkAP CAdv -> AP -> NP -> AP -
    as old as she
    +
    as old as she
    reflAP A2 -> AP -
    married to itself
    +
    married to itself
    @@ -618,7 +619,7 @@ Lexical category, constructors given in almost_AdA AdA -
    almost red
    +
    almost red
    quite_Adv @@ -628,17 +629,17 @@ Lexical category, constructors given in so_AdA AdA -
    so
    +
    so warm
    too_AdA AdA -
    too
    +
    too warm
    very_AdA AdA -
    very
    +
    very warm
    @@ -654,22 +655,22 @@ Lexical category, constructors given in almost_AdN AdN -
    almost eight
    +
    almost eight
    at_least_AdN AdN -
    at least eight
    +
    at least eight
    at_most_AdN AdN -
    at most eight
    +
    at most eight
    mkAdN CAdv -> AdN -
    more than eight
    +
    more than eight
    @@ -701,82 +702,82 @@ Lexical category, constructors given in everywhere_Adv Adv -
    everywhere
    +
    everywhere
    here7from_Adv Adv -
    from here
    +
    from here
    here7to_Adv Adv -
    to here
    +
    to here
    here_Adv Adv -
    here
    +
    here
    mkAdv A -> Adv -
    warmly
    +
    warmly
    mkAdv Prep -> NP -> Adv -
    in the house
    +
    in the house
    mkAdv Subj -> S -> Adv -
    when she sleeps
    +
    when she sleeps
    mkAdv CAdv -> A -> NP -> Adv -
    more warmly than he
    +
    more warmly than he
    mkAdv CAdv -> A -> S -> Adv -
    more warmly than he runs
    +
    more warmly than he runs
    mkAdv AdA -> Adv -> Adv -
    very warmly
    +
    very warmly
    mkAdv Conj -> Adv -> Adv -> Adv -
    here and now
    +
    here and now
    mkAdv Conj -> ListAdv -> Adv -
    with her , here and now
    +
    with her , here and now
    somewhere_Adv Adv -
    somewhere
    +
    somewhere
    there7from_Adv Adv -
    from there
    +
    from there
    there7to_Adv Adv -
    there
    +
    there
    there_Adv Adv -
    there
    +
    there
    @@ -792,12 +793,12 @@ Lexical category, constructors given in anteriorAnt Ant -
    she has slept
    +
    she has slept
    simultaneousAnt Ant -
    she sleeps
    +
    she sleeps
    @@ -839,97 +840,97 @@ Lexical category, constructors given in mkCN N -> CN -
    house
    +
    house
    mkCN N2 -> NP -> CN -
    mother of the king
    +
    mother of the king
    mkCN N3 -> NP -> NP -> CN -
    distance from this city to Paris
    +
    distance from this city to Paris
    mkCN N2 -> CN -
    mother
    +
    mother
    mkCN N3 -> CN -
    distance
    +
    distance
    mkCN A -> N -> CN -
    big house
    +
    big house
    mkCN A -> CN -> CN -
    big blue house
    +
    big blue house
    mkCN AP -> N -> CN -
    very big house
    +
    very big house
    mkCN AP -> CN -> CN -
    very big blue house
    +
    very big blue house
    mkCN N -> RS -> CN -
    man whom she loves
    +
    man whom she loves
    mkCN CN -> RS -> CN -
    old man whom she loves
    +
    old man whom she loves
    mkCN N -> Adv -> CN -
    house on the hill
    +
    house on the hill
    mkCN CN -> Adv -> CN -
    big house on the hill
    +
    big house on the hill
    mkCN CN -> S -> CN -
    almost five
    +
    rule that she sleeps
    mkCN CN -> QS -> CN -
    almost five
    +
    question if she sleeps
    mkCN CN -> VP -> CN -
    reason to sleep
    +
    reason to sleep
    mkCN CN -> SC -> CN -
    reason to sleep
    +
    reason to sleep
    mkCN N -> NP -> CN -
    king John
    +
    king John
    mkCN CN -> NP -> CN -
    old king John
    +
    old king John
    @@ -950,7 +951,7 @@ Lexical category, constructors given in mkCard Numeral -> Card -
    seven
    +
    seven
    mkCard @@ -976,157 +977,157 @@ Lexical category, constructors given in genericCl VP -> Cl -
    one sleeps
    +
    one sleeps
    mkCl NP -> V -> Cl -
    she sleeps
    +
    she sleeps
    mkCl NP -> V2 -> NP -> Cl -
    she loves him
    +
    she loves him
    mkCl NP -> V3 -> NP -> NP -> Cl -
    she sends it to him
    +
    she sends it to him
    mkCl NP -> VV -> VP -> Cl -
    she wants to sleep
    +
    she wants to sleep
    mkCl NP -> VS -> S -> Cl -
    she says that I sleep
    +
    she says that I sleep
    mkCl NP -> VQ -> QS -> Cl -
    she wonders who sleeps
    +
    she wonders who sleeps
    mkCl NP -> VA -> A -> Cl -
    she becomes old
    +
    she becomes old
    mkCl NP -> VA -> AP -> Cl -
    she becomes very old
    +
    she becomes very old
    mkCl NP -> V2A -> NP -> A -> Cl -
    she paints it red
    +
    she paints it red
    mkCl NP -> V2A -> NP -> AP -> Cl -
    she paints it red
    +
    she paints it red
    mkCl NP -> V2S -> NP -> S -> Cl -
    she answers to him that we sleep
    +
    she answers to him that we sleep
    mkCl NP -> V2Q -> NP -> QS -> Cl -
    she asks him who sleeps
    +
    she asks him who sleeps
    mkCl NP -> V2V -> NP -> VP -> Cl -
    she begs him to sleep
    +
    she begs him to sleep
    mkCl NP -> A -> Cl -
    she is old
    +
    she is old
    mkCl NP -> A -> NP -> Cl -
    she is older than he
    +
    she is older than he
    mkCl NP -> A2 -> NP -> Cl -
    she is married to him
    +
    she is married to him
    mkCl NP -> AP -> Cl -
    she is very old
    +
    she is very old
    mkCl NP -> NP -> Cl -
    she is the woman
    +
    she is the woman
    mkCl NP -> N -> Cl -
    she is a woman
    +
    she is a woman
    mkCl NP -> CN -> Cl -
    she is an old woman
    +
    she is an old woman
    mkCl NP -> Adv -> Cl -
    she is here
    +
    she is here
    mkCl NP -> VP -> Cl -
    she always sleeps
    +
    she always sleeps
    mkCl N -> Cl -
    there is a house
    +
    there is a house
    mkCl CN -> Cl -there is an old house +
    there is an old house
    mkCl NP -> Cl -
    there are many houses
    +
    there are many houses
    mkCl NP -> RS -> Cl -
    it is she who sleeps
    +
    it is she who sleeps
    mkCl Adv -> S -> Cl -
    it is here that she sleeps
    +
    it is here that she sleeps
    mkCl V -> Cl -
    it rains
    +
    it rains
    mkCl VP -> Cl -
    it is raining
    +
    it is raining
    mkCl SC -> VP -> Cl -
    that she sleeps is good
    +
    that she sleeps is good
    @@ -1142,32 +1143,32 @@ Lexical category, constructors given in mkClSlash NP -> VPSlash -> ClSlash -
    whom does she see
    +
    whom does she see
    mkClSlash NP -> V2 -> ClSlash -
    whom does she see
    +
    whom does she see
    mkClSlash NP -> VV -> V2 -> ClSlash -
    whom does she want to see
    +
    whom does she want to see
    mkClSlash Cl -> Prep -> ClSlash -
    with whom does she sleep
    +
    with whom does she sleep
    mkClSlash ClSlash -> Adv -> ClSlash -
    whom does she see today
    +
    whom does she see today
    mkClSlash NP -> VS -> SSlash -> ClSlash -
    whom does she know that we hadn't seen
    +
    whom does she know that we hadn't seen
    @@ -1183,17 +1184,17 @@ Lexical category, constructors given in mkComp AP -> Comp -
    old
    +
    to be old
    mkComp NP -> Comp -
    this man
    +
    to be this man
    mkComp Adv -> Comp -
    here
    +
    to be here
    @@ -1209,27 +1210,27 @@ Lexical category, constructors given in and_Conj Conj -
    here and now
    +
    here and now
    both7and_DConj Conj -
    both here and there
    +
    both here and there
    either7or_DConj Conj -
    either here or there
    +
    either here or there
    if_then_Conj Conj -
    if here then there
    +
    if here then there
    or_Conj Conj -
    here or there
    +
    here or there
    @@ -1260,47 +1261,47 @@ Lexical category, constructors given in every_Det Det -
    every woman
    +
    every woman
    few_Det Det -
    few women
    +
    few women
    many_Det Det -
    many houses
    +
    many houses
    mkDet Quant -> Det -
    this
    +
    this
    mkDet Quant -> Card -> Det -
    these five
    +
    these five
    mkDet Quant -> Ord -> Det -
    the fifth
    +
    the fifth
    mkDet Quant -> Num -> Ord -> Det -
    the five best
    +
    the five best
    mkDet Quant -> Num -> Det -
    these
    +
    these
    mkDet Card -> Det -
    five
    +
    five
    mkDet @@ -1320,27 +1321,27 @@ Lexical category, constructors given in mkDet Pron -> Num -> Det -
    my five
    +
    my five
    much_Det Det -
    much wine
    +
    much wine
    somePl_Det Det -
    some women
    +
    some women
    someSg_Det Det -
    some wine
    +
    some wine
    that_Det Det -
    that woman
    +
    that woman
    thePl_Det @@ -1360,17 +1361,17 @@ Lexical category, constructors given in these_Det Det -
    these women
    +
    these women
    this_Det Det -
    this woman
    +
    this woman
    those_Det Det -
    those women
    +
    those women
    @@ -1452,12 +1453,12 @@ Lexical category, constructors given in mkDigits Dig -> Digits -
    4
    +
    4
    mkDigits Dig -> Digits -> Digits -
    1 , 2 3 3 , 4 8 6
    +
    1 , 2 3 3 , 4 8 6
    @@ -1473,37 +1474,37 @@ Lexical category, constructors given in how8much_IAdv IAdv -
    how much
    +
    how much
    how_IAdv IAdv -
    how
    +
    how
    mkIAdv Prep -> IP -> IAdv -
    in which city
    +
    in which city
    mkIAdv IAdv -> Adv -> IAdv -
    where in Paris
    +
    where in Paris
    when_IAdv IAdv -
    when
    +
    when
    where_IAdv IAdv -
    where
    +
    where
    why_IAdv IAdv -
    why
    +
    why
    @@ -1540,27 +1541,27 @@ Lexical category, constructors given in how8many_IDet IDet -
    how many houses
    +
    how many houses
    mkIDet IQuant -> Num -> IDet -
    which houses
    +
    which houses
    mkIDet IQuant -> IDet -
    which house
    +
    which house
    whichPl_IDet IDet -
    which houses
    +
    which houses
    which_IDet IDet -
    which house
    +
    which house
    @@ -1576,67 +1577,67 @@ Lexical category, constructors given in mkIP IDet -> CN -> IP -
    which five big cities
    +
    which five big cities
    mkIP IDet -> N -> IP -
    which five cities
    +
    which five cities
    mkIP IDet -> IP -
    which five
    +
    which five
    mkIP IQuant -> CN -> IP -
    which big city
    +
    which big city
    mkIP IQuant -> Num -> CN -> IP -
    which five big cities
    +
    which five big cities
    mkIP IQuant -> N -> IP -
    which city
    +
    which city
    mkIP IP -> Adv -> IP -
    who in Paris
    +
    who in Paris
    whatPl_IP IP -
    what
    +
    what
    whatSg_IP IP -
    what
    +
    what
    what_IP IP -
    what
    +
    what
    whoPl_IP IP -
    who
    +
    who
    whoSg_IP IP -
    who
    +
    who
    who_IP IP -
    who
    +
    who
    @@ -1652,7 +1653,7 @@ Lexical category, constructors given in which_IQuant IQuant -
    which house
    +
    which house
    @@ -1668,17 +1669,17 @@ Lexical category, constructors given in mkImp VP -> Imp -
    come to my house
    +
    come to my house
    mkImp V -> Imp -
    come
    +
    come
    mkImp V2 -> NP -> Imp -
    buy it
    +
    buy it
    @@ -1694,17 +1695,17 @@ Lexical category, constructors given in pluralImpForm ImpForm -
    be men
    +
    be men
    politeImpForm ImpForm -
    be a man
    +
    be a man
    singularImpForm ImpForm -
    be a man
    +
    be a man
    @@ -1872,7 +1873,7 @@ Lexical category, constructors given in i_NP NP -
    I
    +
    I
    it_NP @@ -1882,52 +1883,52 @@ Lexical category, constructors given in mkNP Quant -> N -> NP -
    this man
    +
    this man
    mkNP Quant -> CN -> NP -
    this old man
    +
    this old man
    mkNP Quant -> Num -> CN -> NP -
    these five old men
    +
    these five old men
    mkNP Quant -> Num -> N -> NP -
    these five men
    +
    these five men
    mkNP Det -> CN -> NP -
    the five old men
    +
    the five old men
    mkNP Det -> N -> NP -
    the five men
    +
    the five men
    mkNP Numeral -> CN -> NP -
    fifty old men
    +
    fifty old men
    mkNP Numeral -> N -> NP -
    fifty men
    +
    fifty men
    mkNP Digits -> CN -> NP -
    5 1 old men
    +
    5 1 old men
    mkNP Digits -> N -> NP -
    5 1 men
    +
    5 1 men
    mkNP @@ -1942,12 +1943,12 @@ Lexical category, constructors given in mkNP Pron -> CN -> NP -
    my old man
    +
    my old man
    mkNP Pron -> N -> NP -
    my man
    +
    my man
    mkNP @@ -1967,17 +1968,17 @@ Lexical category, constructors given in mkNP Quant -> Num -> NP -
    these five
    +
    these five
    mkNP Det -> NP -
    the five best
    +
    the five best
    mkNP CN -> NP -
    old beer
    +
    old beer
    mkNP @@ -1987,32 +1988,32 @@ Lexical category, constructors given in mkNP Predet -> NP -> NP -
    only this woman
    +
    only this woman
    mkNP NP -> V2 -> NP -
    the man seen
    +
    the man seen
    mkNP NP -> Adv -> NP -
    Paris today
    +
    Paris today
    mkNP NP -> RS -> NP -
    John , who walks
    +
    John , who walks
    mkNP Conj -> NP -> NP -> NP -
    this woman or John
    +
    this woman or John
    mkNP Conj -> ListNP -> NP -
    this woman , John or I
    +
    this woman , John or I
    nobody_NP @@ -2082,7 +2083,7 @@ Lexical category, constructors given in you_NP NP -
    you
    +
    you
    @@ -2103,12 +2104,12 @@ Lexical category, constructors given in mkNum Numeral -> Num -
    twenty
    +
    twenty
    mkNum Digits -> Num -
    2 1
    +
    2 1
    mkNum @@ -2118,12 +2119,12 @@ Lexical category, constructors given in mkNum Card -> Num -
    almost five
    +
    almost five
    mkNum AdN -> Card -> Num -
    almost five
    +
    almost five
    pluralNum @@ -2159,12 +2160,12 @@ Lexical category, constructors given in mkNumeral Sub1000 -> Numeral -
    nine hundred and ninety - nine
    +
    nine hundred and ninety - nine
    mkNumeral Sub1000 -> Sub1000 -> Numeral -
    nine hundred and ninety - nine thousand nine hundred and ninety - nine
    +
    nine hundred and ninety - nine thousand nine hundred and ninety - nine
    mkNumeral @@ -2174,7 +2175,7 @@ Lexical category, constructors given in thousandfoldNumeral Sub1000 -> Numeral -
    nine hundred and ninety - nine thousand
    +
    nine hundred and ninety - nine thousand
    @@ -2205,7 +2206,7 @@ Lexical category, constructors given in mkOrd A -> Ord -
    smallest
    +
    smallest
    @@ -2226,7 +2227,7 @@ Lexical category, constructors given in mkPConj Conj -> PConj -
    and now
    +
    and now
    otherwise_PConj @@ -2260,27 +2261,27 @@ Lexical category, constructors given in mkPhr (PConj) -> Utt -> (Voc) -> Phr -
    but sleep , my friend
    +
    but sleep , my friend
    mkPhr S -> Phr -
    she won't sleep
    +
    she won't sleep
    mkPhr Cl -> Phr -
    she sleeps
    +
    she sleeps
    mkPhr QS -> Phr -
    would she sleep
    +
    would she sleep
    mkPhr Imp -> Phr -
    sleep
    +
    sleep
    @@ -2296,12 +2297,12 @@ Lexical category, constructors given in negativePol Pol -
    she doesn't sleep
    +
    she doesn't sleep
    positivePol Pol -
    she sleeps
    +
    she sleeps
    @@ -2317,7 +2318,7 @@ Lexical category, constructors given in all_Predet Predet -
    all the men
    +
    all the men
    most_Predet @@ -2348,107 +2349,107 @@ Lexical category, constructors given in above_Prep Prep -
    above it
    +
    above it
    after_Prep Prep -
    after it
    +
    after it
    before_Prep Prep -
    before it
    +
    before it
    behind_Prep Prep -
    behind it
    +
    behind it
    between_Prep Prep -
    between you and me
    +
    between you and me
    by8agent_Prep Prep -
    by it
    +
    by it
    by8means_Prep Prep -
    by it
    +
    by it
    during_Prep Prep -
    during it
    +
    during it
    except_Prep Prep -
    except it
    +
    except it
    for_Prep Prep -
    for it
    +
    for it
    from_Prep Prep -
    from it
    +
    from it
    in8front_Prep Prep -
    in front of it
    +
    in front of it
    in_Prep Prep -
    in it
    +
    in it
    on_Prep Prep -
    on it
    +
    on it
    part_Prep Prep -
    of it
    +
    of it
    possess_Prep Prep -
    of it
    +
    of it
    through_Prep Prep -
    through it
    +
    through it
    to_Prep Prep -
    to it
    +
    to it
    under_Prep Prep -
    under it
    +
    under it
    with_Prep Prep -
    with it
    +
    with it
    without_Prep Prep -
    without it
    +
    without it
    @@ -2469,7 +2470,7 @@ Lexical category, constructors given in i_Pron Pron -
    I
    +
    I
    it_Pron @@ -2504,7 +2505,7 @@ Lexical category, constructors given in youSg_Pron Pron -
    you
    +
    you
    @@ -2520,17 +2521,17 @@ Lexical category, constructors given in exclMarkPunct Punct -
    yes !
    +
    yes !
    fullStopPunct Punct -
    yes .
    +
    yes .
    questMarkPunct Punct -
    yes ?
    +
    yes ?
    @@ -2546,152 +2547,152 @@ Lexical category, constructors given in mkQCl Cl -> QCl -
    does she sleep
    +
    does she sleep
    mkQCl IP -> VP -> QCl -
    who always sleeps
    +
    who always sleeps
    mkQCl IP -> V -> QCl -
    who sleeps
    +
    who sleeps
    mkQCl IP -> V2 -> NP -> QCl -
    who loves her
    +
    who loves her
    mkQCl IP -> V3 -> NP -> NP -> QCl -
    who sends it to her
    +
    who sends it to her
    mkQCl IP -> VV -> VP -> QCl -
    who wants to sleep
    +
    who wants to sleep
    mkQCl IP -> VS -> S -> QCl -
    who says that I sleep
    +
    who says that I sleep
    mkQCl IP -> VQ -> QS -> QCl -
    who wonders who sleeps
    +
    who wonders who sleeps
    mkQCl IP -> VA -> A -> QCl -
    who becomes old
    +
    who becomes old
    mkQCl IP -> VA -> AP -> QCl -
    who becomes very old
    +
    who becomes very old
    mkQCl IP -> V2A -> NP -> A -> QCl -
    who paints it red
    +
    who paints it red
    mkQCl IP -> V2A -> NP -> AP -> QCl -
    who paints it very red
    +
    who paints it very red
    mkQCl IP -> V2S -> NP -> S -> QCl -
    who answers to him that we sleep
    +
    who answers to him that we sleep
    mkQCl IP -> V2Q -> NP -> QS -> QCl -
    who asks him who sleeps
    +
    who asks him who sleeps
    mkQCl IP -> V2V -> NP -> VP -> QCl -
    who begs him to sleep
    +
    who begs him to sleep
    mkQCl IP -> A -> QCl -
    who is old
    +
    who is old
    mkQCl IP -> A -> NP -> QCl -
    who is older than he
    +
    who is older than he
    mkQCl IP -> A2 -> NP -> QCl -
    who is married to him
    +
    who is married to him
    mkQCl IP -> AP -> QCl -
    who is very old
    +
    who is very old
    mkQCl IP -> NP -> QCl -
    who is the woman
    +
    who is the woman
    mkQCl IP -> N -> QCl -
    who is a woman
    +
    who is a woman
    mkQCl IP -> CN -> QCl -
    who is an old woman
    +
    who is an old woman
    mkQCl IP -> Adv -> QCl -
    who is here
    +
    who is here
    mkQCl IP -> NP -> V2 -> QCl -
    who is her
    +
    who is her
    mkQCl IP -> ClSlash -> QCl -
    whom does she love today
    +
    whom does she love today
    mkQCl IAdv -> Cl -> QCl -
    why does she sleep
    +
    why does she sleep
    mkQCl Prep -> IP -> Cl -> QCl -
    with whom does she sleep
    +
    with whom does she sleep
    mkQCl IAdv -> NP -> QCl -
    where is she
    +
    where is she
    mkQCl IComp -> NP -> QCl -
    who is this man
    +
    who is this man
    mkQCl IP -> QCl -
    which city is there
    +
    which city is there
    @@ -2707,12 +2708,12 @@ Lexical category, constructors given in mkQS (Tense) -> (Ant) -> (Pol) -> QCl -> QS -
    who wouldn't have slept
    +
    who wouldn't have slept
    mkQS Cl -> QS -
    does she sleep
    +
    does she sleep
    @@ -2733,7 +2734,7 @@ Lexical category, constructors given in mkQuant Pron -> Quant -
    my house
    +
    my house
    no_Quant @@ -2743,7 +2744,7 @@ Lexical category, constructors given in that_Quant Quant -
    that house
    +
    that house
    the_Quant @@ -2753,7 +2754,7 @@ Lexical category, constructors given in this_Quant Quant -
    this house
    +
    this house
    @@ -2769,122 +2770,122 @@ Lexical category, constructors given in mkRCl RP -> VP -> RCl -
    woman who always sleeps
    +
    woman who always sleeps
    mkRCl RP -> V -> RCl -
    woman who sleeps
    +
    woman who sleeps
    mkRCl RP -> V2 -> NP -> RCl -
    woman who loves him
    +
    woman who loves him
    mkRCl RP -> V3 -> NP -> NP -> RCl -
    woman who sends it to him
    +
    woman who sends it to him
    mkRCl RP -> VV -> VP -> RCl -
    woman who wants to sleep
    +
    woman who wants to sleep
    mkRCl RP -> VS -> S -> RCl -
    woman who says that I sleep
    +
    woman who says that I sleep
    mkRCl RP -> VQ -> QS -> RCl -
    woman who wonders who sleeps
    +
    woman who wonders who sleeps
    mkRCl RP -> VA -> A -> RCl -
    woman who becomes old
    +
    woman who becomes old
    mkRCl RP -> VA -> AP -> RCl -
    woman who becomes very old
    +
    woman who becomes very old
    mkRCl RP -> V2A -> NP -> A -> RCl -
    woman who paints it red
    +
    woman who paints it red
    mkRCl RP -> V2A -> NP -> AP -> RCl -
    woman who paints it very red
    +
    woman who paints it very red
    mkRCl RP -> V2S -> NP -> S -> RCl -
    woman who answers to him that we sleep
    +
    woman who answers to him that we sleep
    mkRCl RP -> V2Q -> NP -> QS -> RCl -
    woman who asks him who sleeps
    +
    woman who asks him who sleeps
    mkRCl RP -> V2V -> NP -> VP -> RCl -
    woman who begs him to sleep
    +
    woman who begs him to sleep
    mkRCl RP -> A -> RCl -
    woman who is old
    +
    woman who is old
    mkRCl RP -> A -> NP -> RCl -
    woman who is older than he
    +
    woman who is older than he
    mkRCl RP -> A2 -> NP -> RCl -
    woman who is married to him
    +
    woman who is married to him
    mkRCl RP -> AP -> RCl -
    woman who is very old
    +
    woman who is very old
    mkRCl RP -> NP -> RCl -
    woman who is the woman
    +
    woman who is the woman
    mkRCl RP -> N -> RCl -
    student who is a woman
    +
    student who is a woman
    mkRCl RP -> CN -> RCl -
    student who is an old woman
    +
    student who is an old woman
    mkRCl RP -> Adv -> RCl -
    woman who is here
    +
    woman who is here
    mkRCl RP -> NP -> V2 -> RCl -
    woman whom we love
    +
    woman whom we love
    mkRCl RP -> ClSlash -> RCl -
    woman whom she loves today
    +
    woman whom she loves today
    mkRCl @@ -2905,12 +2906,12 @@ Lexical category, constructors given in mkRP Prep -> NP -> RP -> RP -
    all the cities in whom
    +
    all the cities in whom
    which_RP RP -which/who +
    RelativeEng.IdRP
    @@ -2926,7 +2927,7 @@ Lexical category, constructors given in mkRS (Tense) -> (Ant) -> (Pol) -> RCl -> RS -
    woman who wouldn't have slept
    +
    woman who wouldn't have slept
    mkRS @@ -2936,7 +2937,7 @@ Lexical category, constructors given in mkRS Conj -> RS -> RS -> RS -
    woman who sleeps or whom we love
    +
    woman who sleeps or whom we love
    mkRS @@ -2957,7 +2958,7 @@ Lexical category, constructors given in mkS (Tense) -> (Ant) -> (Pol) -> Cl -> S -
    she wouldn't have slept
    +
    she wouldn't have slept
    mkS @@ -2967,17 +2968,17 @@ Lexical category, constructors given in mkS Conj -> S -> S -> S -
    she sleeps and I run
    +
    she sleeps and I run
    mkS Conj -> ListS -> S -
    she sleeps , I run and you walk
    +
    she sleeps , I run and you walk
    mkS Adv -> S -> S -
    today she sleeps
    +
    today she sleeps
    @@ -2993,12 +2994,12 @@ Lexical category, constructors given in mkSC S -> SC -
    that she sleeps
    +
    that she sleeps
    mkSC QS -> SC -
    who sleeps
    +
    who sleeps
    mkSC @@ -3019,7 +3020,7 @@ Lexical category, constructors given in mkSSlash Temp -> Pol -> ClSlash -> SSlash -
    she hadn't seen
    +
    she hadn't seen
    @@ -3035,17 +3036,17 @@ Lexical category, constructors given in mkSub100 Unit -> Sub100 -
    eight
    +
    eight
    mkSub100 Unit -> Unit -> Sub100 -
    eighty - three
    +
    eighty - three
    tenfoldSub100 Unit -> Sub100 -
    eight
    +
    eight
    @@ -3061,17 +3062,17 @@ Lexical category, constructors given in mkSub1000 Sub100 -> Sub1000 -
    ninety - nine
    +
    ninety - nine
    mkSub1000 Unit -> Sub1000 -
    nine hundred
    +
    nine hundred
    mkSub1000 Unit -> Sub100 -> Sub1000 -
    nine hundred and ninety - nine
    +
    nine hundred and ninety - nine
    @@ -3087,27 +3088,27 @@ Lexical category, constructors given in although_Subj Subj -
    although she sleeps
    +
    although she sleeps
    because_Subj Subj -
    because she sleeps
    +
    because she sleeps
    if_Subj Subj -
    if she sleeps
    +
    if she sleeps
    that_Subj Subj -
    that she sleeps
    +
    that she sleeps
    when_Subj Subj -
    when she sleeps
    +
    when she sleeps
    @@ -3139,22 +3140,22 @@ Lexical category, constructors given in conditionalTense Tense -
    she would sleep
    +
    she would sleep
    futureTense Tense -
    she will sleep
    +
    she will sleep
    pastTense Tense -
    she slept
    +
    she slept
    presentTense Tense -
    she sleeps
    +
    she sleeps
    @@ -3175,37 +3176,37 @@ Lexical category, constructors given in mkText Phr -> (Punct) -> (Text) -> Text -
    does she sleep ? yes .
    +
    does she sleep ? yes .
    mkText Utt -> Text -
    yes .
    +
    yes .
    mkText S -> Text -
    she slept .
    +
    she slept .
    mkText Cl -> Text -
    she sleeps .
    +
    she sleeps .
    mkText QS -> Text -
    did she sleep ?
    +
    did she sleep ?
    mkText (Pol) -> Imp -> Text -
    don't sleep !
    +
    don't sleep !
    mkText Text -> Text -> Text -
    where ? here . when ? now !
    +
    where ? here . when ? now !
    @@ -3221,47 +3222,47 @@ Lexical category, constructors given in n1_Unit Unit -
    one
    +
    one
    n2_Unit Unit -
    two
    +
    two
    n3_Unit Unit -
    three
    +
    three
    n4_Unit Unit -
    four
    +
    four
    n5_Unit Unit -
    five
    +
    five
    n6_Unit Unit -
    six
    +
    six
    n7_Unit Unit -
    seven
    +
    seven
    n8_Unit Unit -
    eight
    +
    eight
    n9_Unit Unit -
    nine
    +
    nine
    @@ -3277,47 +3278,47 @@ Lexical category, constructors given in lets_Utt VP -> Utt -
    let's sleep
    +
    let's sleep
    mkUtt S -> Utt -
    she slept
    +
    she slept
    mkUtt Cl -> Utt -
    she sleeps
    +
    she sleeps
    mkUtt QS -> Utt -
    who didn't sleep
    +
    who didn't sleep
    mkUtt QCl -> Utt -
    who sleeps
    +
    who sleeps
    mkUtt (ImpForm) -> (Pol) -> Imp -> Utt -
    don't be men
    +
    don't be men
    mkUtt IP -> Utt -
    who
    +
    who
    mkUtt IAdv -> Utt -
    why
    +
    why
    mkUtt NP -> Utt -
    this man
    +
    this man
    mkUtt @@ -3327,7 +3328,7 @@ Lexical category, constructors given in mkUtt VP -> Utt -
    to sleep
    +
    to sleep
    mkUtt @@ -3376,7 +3377,7 @@ Lexical category, constructors given in have_V2 V2 -
    to have it
    +
    to have it
    @@ -3465,142 +3466,142 @@ Lexical category, constructors given in mkVP V -> VP -
    to sleep
    +
    to sleep
    mkVP V2 -> NP -> VP -
    to love him
    +
    to love him
    mkVP V3 -> NP -> NP -> VP -
    to send it to him
    +
    to send it to him
    mkVP VV -> VP -> VP -
    to want to sleep
    +
    to want to sleep
    mkVP VS -> S -> VP -
    to know that she sleeps
    +
    to know that she sleeps
    mkVP VQ -> QS -> VP -
    to wonder who sleeps
    +
    to wonder who sleeps
    mkVP VA -> AP -> VP -
    to become red
    +
    to become red
    mkVP V2A -> NP -> AP -> VP -
    to paint it red
    +
    to paint it red
    mkVP V2S -> NP -> S -> VP -
    to answer to him that she sleeps
    +
    to answer to him that she sleeps
    mkVP V2Q -> NP -> QS -> VP -
    to ask him who sleeps
    +
    to ask him who sleeps
    mkVP V2V -> NP -> VP -> VP -
    to beg him to sleep
    +
    to beg him to sleep
    mkVP A -> VP -
    to be old
    +
    to be old
    mkVP A -> NP -> VP -
    to be older than he
    +
    to be older than he
    mkVP A2 -> NP -> VP -
    to be married to him
    +
    to be married to him
    mkVP AP -> VP -
    to be very old
    +
    to be very old
    mkVP N -> VP -
    to be a woman
    +
    to be a woman
    mkVP CN -> VP -
    to be an old woman
    +
    to be an old woman
    mkVP NP -> VP -
    to be the woman
    +
    to be the woman
    mkVP Adv -> VP -
    to be here
    +
    to be here
    mkVP VP -> Adv -> VP -
    to sleep here
    +
    to sleep here
    mkVP AdV -> VP -> VP -
    always to sleep
    +
    always to sleep
    mkVP VPSlash -> NP -> VP -
    to paint it black
    +
    to paint it black
    mkVP VPSlash -> VP -
    to paint itself black
    +
    to paint itself black
    mkVP Comp -> VP -
    to be warm
    +
    to be warm
    passiveVP V2 -> VP -
    to be loved
    +
    to be loved
    passiveVP V2 -> NP -> VP -
    to be loved by her
    +
    to be loved by her
    progressiveVP VP -> VP -
    to be sleeping
    +
    to be sleeping
    reflexiveVP V2 -> VP -
    to love itself
    +
    to love itself
    reflexiveVP @@ -3621,42 +3622,42 @@ Lexical category, constructors given in mkVPSlash V2 -> VPSlash -
    whom does she see
    +
    whom does she see
    mkVPSlash V3 -> NP -> VPSlash -
    to whom does she send it
    +
    to whom does she send it
    mkVPSlash V2A -> AP -> VPSlash -
    whom does she paint red
    +
    whom does she paint red
    mkVPSlash V2Q -> QS -> VPSlash -
    whom does she ask where I sleep
    +
    whom does she ask where I sleep
    mkVPSlash V2S -> S -> VPSlash -
    to whom does she answer that I sleep
    +
    to whom does she answer that I sleep
    mkVPSlash V2V -> VP -> VPSlash -
    whom does she beg to sleep
    +
    whom does she beg to sleep
    mkVPSlash VV -> VPSlash -> VPSlash -
    whom does she want to see
    +
    whom does she want to see
    mkVPSlash V2V -> NP -> VPSlash -> VPSlash -
    whom does she beg me to see
    +
    whom does she beg me to see
    @@ -3688,12 +3689,12 @@ Lexical category, constructors given in can8know_VV VV -
    to be able to sleep
    +
    to be able to sleep
    can_VV VV -
    to be able to sleep
    +
    to be able to sleep
    must_VV @@ -3703,7 +3704,7 @@ Lexical category, constructors given in want_VV VV -
    want
    +
    to want to sleep
    @@ -3719,7 +3720,7 @@ Lexical category, constructors given in mkVoc NP -> Voc -
    yes , my friend
    +
    yes , my friend
    please_Voc