diff --git a/lib/doc/MkExxTable.hs b/lib/doc/MkExxTable.hs index 600b40a96..a7b8a47ca 100644 --- a/lib/doc/MkExxTable.hs +++ b/lib/doc/MkExxTable.hs @@ -94,8 +94,10 @@ mkEx l = unws . bind . mkE . words where bind ws = case ws of w : "&+" : u : ws2 -> bind ((w ++ u) : ws2) w : "Predef.BIND" : u : ws2 -> bind ((w ++ u) : ws2) + w : "Predef.SOFT_BIND" : u : ws2 -> bind ((w ++ u) : ws2) "&+":ws2 -> bind ws2 "Predef.BIND":ws2 -> bind ws2 + "Predef.SOFT_BIND":ws2 -> bind ws2 w : ws2 -> w : bind ws2 w : "++" : ws2 -> w : bind ws2 _ -> ws diff --git a/lib/doc/synopsis.html b/lib/doc/synopsis.html index 428d59c42..9a6472981 100644 --- a/lib/doc/synopsis.html +++ b/lib/doc/synopsis.html @@ -568,7 +568,7 @@ Lexical category, constructors given in
comparAP-> APmkUtt (comparAP warm_A) mkUtt (comparAP warm_A) mkAPmkAP-> NP -> APmkUtt (mkAP warm_A (mkNP paris_PN)) mkUtt (mkAP warm_A (mkNP paris_PN)) mkAPmkAP-> S -> APmkUtt (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))))) mkAPmkAP-> VP -> APmkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkVP sleep_V))) mkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkVP sleep_V))) mkAP-> SC -> APmkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkSC (mkVP sleep_V)))) mkUtt (mkCl she_NP (mkAP (mkAP ready_A) (mkSC (mkVP sleep_V)))) mkAPmkAP-> AP -> AP -> APmkUtt (mkAP or_Conj (mkAP old_A) (mkAP young_A)) mkUtt (mkAP or_Conj (mkAP old_A) (mkAP young_A)) mkAP-> ListAP -> APmkUtt (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-> APmkUtt (mkAP (mkOrd old_A)) mkUtt (mkAP (mkOrd old_A)) mkAPmkAdN-> AdNmkUtt (mkCard (mkAdN more_CAdv) (mkCard (mkNumeral n8_Unit))) mkUtt (mkCard (mkAdN more_CAdv) (mkCard (mkNumeral n8_Unit))) mkAdv-> NP -> AdvmkUtt (mkAdv in_Prep (mkNP the_Det house_N)) mkUtt (mkAdv in_Prep (mkNP the_Det house_N)) mkAdvmkAdv-> A -> NP -> AdvmkUtt (mkAdv more_CAdv warm_A he_NP ) mkUtt (mkAdv more_CAdv warm_A he_NP ) mkAdv-> A -> S -> AdvmkUtt (mkAdv more_CAdv warm_A (mkS (mkCl he_NP run_V)) ) mkUtt (mkAdv more_CAdv warm_A (mkS (mkCl he_NP run_V)) ) mkAdvmkAdv-> Adv -> Adv -> AdvmkUtt (mkAdv and_Conj here_Adv now_Adv) mkUtt (mkAdv and_Conj here_Adv now_Adv) mkAdv-> ListAdv -> AdvmkUtt (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))) somewhere_AdvmkCN-> NP -> CNmkUtt (mkCN mother_N2 (mkNP the_Det king_N)) mkUtt (mkCN mother_N2 (mkNP the_Det king_N)) mkCN-> NP -> NP -> CNmkUtt (mkCN distance_N3 (mkNP this_Det city_N) (mkNP paris_PN) ) mkUtt (mkCN distance_N3 (mkNP this_Det city_N) (mkNP paris_PN) ) mkCNmkCN-> RS -> CNmkUtt (mkCN man_N (mkRS (mkRCl which_RP she_NP love_V2))) mkUtt (mkCN man_N (mkRS (mkRCl which_RP she_NP love_V2))) mkCN-> RS -> CNmkUtt (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-> Adv -> CNmkUtt (mkCN house_N (mkAdv on_Prep (mkNP the_Det hill_N))) mkUtt (mkCN house_N (mkAdv on_Prep (mkNP the_Det hill_N))) mkCN-> Adv -> CNmkUtt (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-> S -> CNmkUtt (mkCN (mkCN rule_N) (mkS (mkCl she_NP sleep_V))) mkUtt (mkCN (mkCN rule_N) (mkS (mkCl she_NP sleep_V))) mkCNmkCN-> VP -> CNmkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkCN-> SC -> CNmkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkUtt (mkCN (mkCN reason_N) (mkVP sleep_V)) mkCNmkCN-> NP -> CNmkUtt (mkCN (mkCN old_A king_N) (mkNP john_PN)) mkUtt (mkCN (mkCN old_A king_N) (mkNP john_PN)) mkCl-> V2 -> NP -> ClmkUtt (mkCl she_NP love_V2 he_NP) mkUtt (mkCl she_NP love_V2 he_NP) mkCl-> V3 -> NP -> NP -> ClmkUtt (mkCl she_NP send_V3 it_NP he_NP) mkUtt (mkCl she_NP send_V3 it_NP he_NP) mkClmkCl-> VS -> S -> ClmkUtt (mkCl she_NP say_VS (mkS (mkCl i_NP sleep_V))) mkUtt (mkCl she_NP say_VS (mkS (mkCl i_NP sleep_V))) mkCl-> VQ -> QS -> ClmkUtt (mkCl she_NP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkUtt (mkCl she_NP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkClmkCl-> V2A -> NP -> A -> ClmkUtt (mkCl she_NP paint_V2A it_NP red_A) mkUtt (mkCl she_NP paint_V2A it_NP red_A) mkCl-> V2A -> NP -> AP -> ClmkUtt (mkCl she_NP paint_V2A it_NP (mkAP red_A)) mkUtt (mkCl she_NP paint_V2A it_NP (mkAP red_A)) mkCl-> V2S -> NP -> S -> ClmkUtt (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))) mkClmkCl-> V2V -> NP -> VP -> ClmkUtt (mkCl she_NP beg_V2V he_NP (mkVP sleep_V)) mkUtt (mkCl she_NP beg_V2V he_NP (mkVP sleep_V)) mkClmkCl-> A -> NP -> ClmkUtt (mkCl she_NP old_A he_NP) mkUtt (mkCl she_NP old_A he_NP) mkClmkCl-> NP -> ClmkUtt (mkCl she_NP (mkNP the_Det woman_N)) mkUtt (mkCl she_NP (mkNP the_Det woman_N)) mkCl-> N -> ClmkUtt (mkCl she_NP woman_N) mkUtt (mkCl she_NP woman_N) mkCl-> CN -> ClmkUtt (mkCl she_NP (mkCN old_A woman_N)) mkUtt (mkCl she_NP (mkCN old_A woman_N)) mkClmkCl-> ClmkUtt (mkCl house_N) mkUtt (mkCl house_N) mkCl-> ClmkUtt (mkCl (mkCN old_A house_N)) mkUtt (mkCl (mkCN old_A house_N)) mkCl-> ClmkUtt (mkCl (mkNP many_Det house_N) ) mkUtt (mkCl (mkNP many_Det house_N) ) mkCl-> RS -> ClmkUtt (mkCl she_NP (mkRS (mkRCl which_RP (mkVP sleep_V)))) mkUtt (mkCl she_NP (mkRS (mkRCl which_RP (mkVP sleep_V)))) mkCl-> S -> ClmkUtt (mkCl here_Adv (mkS (mkCl she_NP sleep_V)) ) mkUtt (mkCl here_Adv (mkS (mkCl she_NP sleep_V)) ) mkClmkCl-> ClmkUtt (mkCl (progressiveVP (mkVP rain_V0))) mkUtt (mkCl (progressiveVP (mkVP rain_V0))) mkCl-> VP -> ClmkUtt (mkCl (mkSC (mkS (mkCl she_NP sleep_V))) (mkVP good_A)) mkUtt (mkCl (mkSC (mkS (mkCl she_NP sleep_V))) (mkVP good_A)) mkClSlash-> Prep -> ClSlashmkUtt (mkQCl who_IP (mkClSlash (mkCl she_NP sleep_V) with_Prep)) mkUtt (mkQCl who_IP (mkClSlash (mkCl she_NP sleep_V) with_Prep)) mkClSlashmkClSlash-> VS -> SSlash -> ClSlashmkUtt (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))))) mkComp-> CompmkUtt (mkVP (mkComp (mkAP old_A))) mkUtt (mkVP (mkComp (mkAP old_A))) mkComp-> CompmkUtt (mkVP (mkComp (mkNP this_Det man_N))) mkUtt (mkVP (mkComp (mkNP this_Det man_N))) mkComp-> CompmkUtt (mkVP (mkComp here_Adv)) mkUtt (mkVP (mkComp here_Adv)) and_ConjmkUtt (mkAdv and_Conj here_Adv now_Adv) mkUtt (mkAdv and_Conj here_Adv now_Adv) both7and_DConjmkUtt (mkAdv both7and_DConj here_Adv there_Adv) mkUtt (mkAdv both7and_DConj here_Adv there_Adv) either7or_DConjaSg_DetmkUtt (mkNP aSg_Det woman_N) mkUtt (mkNP aSg_Det woman_N) a_DetmkUtt (mkNP a_Det house_N) mkUtt (mkNP a_Det house_N) every_Detfew_DetmkUtt (mkNP few_Det woman_N) mkUtt (mkNP few_Det woman_N) many_DetmkDet-> Card -> DetmkUtt (mkNP (mkDet this_Quant (mkCard (mkNumeral n5_Unit)))) mkUtt (mkNP (mkDet this_Quant (mkCard (mkNumeral n5_Unit)))) mkDet-> Ord -> DetmkUtt (mkNP (mkDet the_Quant (mkOrd (mkNumeral n5_Unit)))) mkUtt (mkNP (mkDet the_Quant (mkOrd (mkNumeral n5_Unit)))) mkDet-> Num -> Ord -> DetmkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A))) mkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A))) mkDet-> Num -> DetmkUtt (mkNP (mkDet this_Quant pluralNum)) mkUtt (mkNP (mkDet this_Quant pluralNum)) mkDet-> DetmkUtt (mkNP (mkDet (mkCard (mkNumeral n5_Unit)))) mkUtt (mkNP (mkDet (mkCard (mkNumeral n5_Unit)))) mkDetmkDet-> Num -> DetmkUtt (mkNP (mkDet i_Pron (mkNum (mkNumeral n5_Unit)))) mkUtt (mkNP (mkDet i_Pron (mkNum (mkNumeral n5_Unit)))) much_DetmkUtt (mkNP much_Det wine_N) mkUtt (mkNP much_Det wine_N) somePl_Detthat_DetmkUtt (mkNP that_Det woman_N) mkUtt (mkNP that_Det woman_N) thePl_DetmkUtt (mkNP thePl_Det house_N) mkUtt (mkNP thePl_Det house_N) theSg_DetmkUtt (mkNP theSg_Det house_N) mkUtt (mkNP theSg_Det house_N) the_DetmkUtt (mkNP the_Det house_N) mkUtt (mkNP the_Det house_N) these_DetmkUtt (mkNP these_Det woman_N) mkUtt (mkNP these_Det woman_N) this_DetmkUtt (mkNP this_Det woman_N) mkUtt (mkNP this_Det woman_N) those_DetmkUtt (mkNP those_Det woman_N) mkUtt (mkNP those_Det woman_N) mkDigits-> Digits -> DigitsmkUtt (mkCard (mkDigits n1_Dig (mkDigits n2_Dig (mkDigits n3_Dig (mkDigits n3_Dig (mkDigits n4_Dig (mkDigits n8_Dig (mkDigits n6_Dig)))))))) mkUtt (mkCard (mkDigits n1_Dig (mkDigits n2_Dig (mkDigits n3_Dig (mkDigits n3_Dig (mkDigits n4_Dig (mkDigits n8_Dig (mkDigits n6_Dig)))))))) mkIAdv-> IP -> IAdvmkUtt (mkIAdv in_Prep (mkIP which_IQuant city_N)) mkUtt (mkIAdv in_Prep (mkIP which_IQuant city_N)) mkIAdv-> Adv -> IAdvmkUtt (mkIAdv where_IAdv (mkAdv in_Prep (mkNP paris_PN)) ) mkUtt (mkIAdv where_IAdv (mkAdv in_Prep (mkNP paris_PN)) ) when_IAdvhow8many_IDetmkUtt (mkIP how8many_IDet house_N) mkUtt (mkIP how8many_IDet house_N) mkIDetmkIP-> Adv -> IPmkUtt (mkIP who_IP (mkAdv in_Prep (mkNP paris_PN))) mkUtt (mkIP who_IP (mkAdv in_Prep (mkNP paris_PN))) whatPl_IPmkImp-> ImpmkUtt (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)))) mkImppoliteImpFormmkUtt politeImpForm (mkImp (mkVP man_N)) mkUtt politeImpForm (mkImp (mkVP man_N)) singularImpFormmkUtt singularImpForm (mkImp (mkVP man_N)) mkUtt singularImpForm (mkImp (mkVP man_N)) mkNP-> N -> NPmkUtt (mkNP this_Quant man_N) mkUtt (mkNP this_Quant man_N) mkNP-> CN -> NPmkUtt (mkNP this_Quant (mkCN old_A man_N)) mkUtt (mkNP this_Quant (mkCN old_A man_N)) mkNP-> Num -> CN -> NPmkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit)) (mkCN old_A man_N)) mkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit)) (mkCN old_A man_N)) mkNP-> Num -> N -> NPmkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit)) man_N) mkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit)) man_N) mkNP-> CN -> NPmkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit))) (mkCN old_A man_N)) mkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit))) (mkCN old_A man_N)) mkNP-> N -> NPmkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit))) man_N) mkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit))) man_N) mkNPmkNP-> CN -> NPmkUtt (mkNP i_Pron (mkCN old_A man_N)) mkUtt (mkNP i_Pron (mkCN old_A man_N)) mkNP-> N -> NPmkUtt (mkNP i_Pron man_N) mkUtt (mkNP i_Pron man_N) mkNPmkNP-> Num -> NPmkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit))) mkUtt (mkNP this_Quant (mkNum (mkNumeral n5_Unit))) mkNP-> NPmkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A))) mkUtt (mkNP (mkDet the_Quant (mkNum (mkNumeral n5_Unit)) (mkOrd good_A))) mkNP-> NPmkUtt (mkNP (mkCN old_A beer_N)) mkUtt (mkNP (mkCN old_A beer_N)) mkNP-> NPmkUtt (mkNP beer_N) mkUtt (mkNP beer_N) mkNP-> NP -> NPmkUtt (mkNP only_Predet (mkNP this_Det woman_N)) mkUtt (mkNP only_Predet (mkNP this_Det woman_N)) mkNP-> V2 -> NPmkUtt (mkNP (mkNP the_Det man_N) see_V2) mkUtt (mkNP (mkNP the_Det man_N) see_V2) mkNPmkNP-> RS -> NPmkUtt (mkNP (mkNP john_PN) (mkRS (mkRCl which_RP (mkVP walk_V)))) mkUtt (mkNP (mkNP john_PN) (mkRS (mkRCl which_RP (mkVP walk_V)))) mkNP-> NP -> NP -> NPmkUtt (mkNP or_Conj (mkNP this_Det woman_N) (mkNP john_PN)) mkUtt (mkNP or_Conj (mkNP this_Det woman_N) (mkNP john_PN)) mkNP-> ListNP -> NPmkUtt (mkNP or_Conj (mkListNP (mkNP this_Det woman_N) (mkListNP (mkNP john_PN) i_NP))) mkUtt (mkNP or_Conj (mkListNP (mkNP this_Det woman_N) (mkListNP (mkNP john_PN) i_NP))) nobody_NPthese_NPmkUtt these_NP mkUtt these_NP they_NPthose_NPmkUtt those_NP mkUtt those_NP we_NPmkOrd-> OrdmkUtt (mkAP (mkOrd small_A)) mkUtt (mkAP (mkOrd small_A)) mkPConj-> PConjmkPhr (mkPConj and_Conj) (mkUtt now_Adv) mkPhr (mkPConj and_Conj) (mkUtt now_Adv) otherwise_PConjmkPhr-> Utt -> (Voc) -> PhrmkPhr but_PConj (mkUtt (mkImp sleep_V)) (mkVoc (mkNP i_Pron friend_N)) mkPhr but_PConj (mkUtt (mkImp sleep_V)) (mkVoc (mkNP i_Pron friend_N)) mkPhr-> PhrmkPhr (mkS futureTense negativePol (mkCl she_NP sleep_V)) mkPhr (mkS futureTense negativePol (mkCl she_NP sleep_V)) mkPhrnegativePolmkUtt (mkS negativePol (mkCl she_NP sleep_V)) mkUtt (mkS negativePol (mkCl she_NP sleep_V)) positivePolall_PredetmkUtt (mkNP all_Predet (mkNP thePl_Det man_N)) mkUtt (mkNP all_Predet (mkNP thePl_Det man_N)) most_Predetabove_PrepmkUtt (mkAdv above_Prep it_NP) mkUtt (mkAdv above_Prep it_NP) after_PrepmkUtt (mkAdv after_Prep it_NP) mkUtt (mkAdv after_Prep it_NP) before_PrepmkUtt (mkAdv before_Prep it_NP) mkUtt (mkAdv before_Prep it_NP) behind_PrepmkUtt (mkAdv behind_Prep it_NP) mkUtt (mkAdv behind_Prep it_NP) between_PrepmkUtt (mkAdv between_Prep (mkNP and_Conj you_NP i_NP)) mkUtt (mkAdv between_Prep (mkNP and_Conj you_NP i_NP)) by8agent_Prepfrom_PrepmkUtt (mkAdv from_Prep it_NP) mkUtt (mkAdv from_Prep it_NP) in8front_PrepmkUtt (mkAdv in8front_Prep it_NP) mkUtt (mkAdv in8front_Prep it_NP) in_PrepmkUtt (mkAdv in_Prep it_NP) mkUtt (mkAdv in_Prep it_NP) on_PrepmkUtt (mkAdv on_Prep it_NP) mkUtt (mkAdv on_Prep it_NP) part_PrepmkUtt (mkAdv part_Prep it_NP) mkUtt (mkAdv part_Prep it_NP) possess_PrepmkUtt (mkAdv possess_Prep it_NP) mkUtt (mkAdv possess_Prep it_NP) through_Prepto_PrepmkUtt (mkAdv to_Prep it_NP) mkUtt (mkAdv to_Prep it_NP) under_Prepwith_PrepmkUtt (mkAdv with_Prep it_NP) mkUtt (mkAdv with_Prep it_NP) without_PrepmkQCl-> V2 -> NP -> QClmkUtt (mkQCl who_IP love_V2 she_NP) mkUtt (mkQCl who_IP love_V2 she_NP) mkQCl-> V3 -> NP -> NP -> QClmkUtt (mkQCl who_IP send_V3 it_NP she_NP) mkUtt (mkQCl who_IP send_V3 it_NP she_NP) mkQClmkQCl-> VS -> S -> QClmkUtt (mkQCl who_IP say_VS (mkS (mkCl i_NP sleep_V))) mkUtt (mkQCl who_IP say_VS (mkS (mkCl i_NP sleep_V))) mkQCl-> VQ -> QS -> QClmkUtt (mkQCl who_IP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkUtt (mkQCl who_IP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkQClmkQCl-> V2A -> NP -> A -> QClmkUtt (mkQCl who_IP paint_V2A it_NP red_A) mkUtt (mkQCl who_IP paint_V2A it_NP red_A) mkQCl-> V2A -> NP -> AP -> QClmkUtt (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-> V2S -> NP -> S -> QClmkUtt (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))) mkQClmkQCl-> V2V -> NP -> VP -> QClmkUtt (mkQCl who_IP beg_V2V he_NP (mkVP sleep_V)) mkUtt (mkQCl who_IP beg_V2V he_NP (mkVP sleep_V)) mkQClmkQCl-> A -> NP -> QClmkUtt (mkQCl who_IP old_A he_NP) mkUtt (mkQCl who_IP old_A he_NP) mkQClmkQCl-> NP -> QClmkUtt (mkQCl who_IP (mkNP the_Det woman_N)) mkUtt (mkQCl who_IP (mkNP the_Det woman_N)) mkQCl-> N -> QClmkUtt (mkQCl who_IP woman_N) mkUtt (mkQCl who_IP woman_N) mkQCl-> CN -> QClmkUtt (mkQCl who_IP (mkCN old_A woman_N)) mkUtt (mkQCl who_IP (mkCN old_A woman_N)) mkQClmkQCl-> IP -> Cl -> QClmkUtt (mkQCl with_Prep who_IP (mkCl she_NP sleep_V) ) mkUtt (mkQCl with_Prep who_IP (mkCl she_NP sleep_V) ) mkQClmkQCl-> NP -> QClmkUtt (mkQCl (mkIComp who_IP) (mkNP this_Det man_N)) mkUtt (mkQCl (mkIComp who_IP) (mkNP this_Det man_N)) mkQCl-> QClmkUtt (mkQCl (mkIP which_IQuant city_N)) mkUtt (mkQCl (mkIP which_IQuant city_N)) mkQS-> (Ant) -> (Pol) -> QCl -> QSmkUtt (mkQS conditionalTense anteriorAnt negativePol (mkQCl who_IP sleep_V)) mkUtt (mkQS conditionalTense anteriorAnt negativePol (mkQCl who_IP sleep_V)) mkQSa_QuantmkUtt (mkNP a_Quant house_N) mkUtt (mkNP a_Quant house_N) mkQuant-> QuantmkUtt (mkNP (mkQuant i_Pron) house_N) mkUtt (mkNP (mkQuant i_Pron) house_N) no_QuantmkUtt (mkNP no_Quant house_N) mkUtt (mkNP no_Quant house_N) that_QuantmkUtt (mkNP that_Quant house_N) mkUtt (mkNP that_Quant house_N) the_QuantmkUtt (mkNP the_Quant house_N) mkUtt (mkNP the_Quant house_N) this_QuantmkUtt (mkNP this_Quant house_N) mkUtt (mkNP this_Quant house_N) mkRCl-> V2 -> NP -> RClmkUtt (mkCN woman_N (mkRS (mkRCl which_RP love_V2 he_NP))) mkUtt (mkCN woman_N (mkRS (mkRCl which_RP love_V2 he_NP))) mkRCl-> V3 -> NP -> NP -> RClmkUtt (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))) mkRClmkRCl-> VS -> S -> RClmkUtt (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-> VQ -> QS -> RClmkUtt (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))))) mkRClmkRCl-> V2A -> NP -> A -> RClmkUtt (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-> V2A -> NP -> AP -> RClmkUtt (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-> V2S -> NP -> S -> RClmkUtt (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))))) mkRClmkRCl-> V2V -> NP -> VP -> RClmkUtt (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)))) mkRClmkRCl-> A -> NP -> RClmkUtt (mkCN woman_N (mkRS (mkRCl which_RP old_A he_NP))) mkUtt (mkCN woman_N (mkRS (mkRCl which_RP old_A he_NP))) mkRClmkRCl-> NP -> RClmkUtt (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-> N -> RClmkUtt (mkCN student_N (mkRS (mkRCl which_RP woman_N))) mkUtt (mkCN student_N (mkRS (mkRCl which_RP woman_N))) mkRCl-> CN -> RClmkUtt (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)))) mkRClmkRCl-> NP -> V2 -> RClmkUtt (mkCN woman_N (mkRS (mkRCl which_RP we_NP love_V2))) mkUtt (mkCN woman_N (mkRS (mkRCl which_RP we_NP love_V2))) mkRCl-> ClSlash -> RClmkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkClSlash (mkClSlash she_NP love_V2) today_Adv)))) mkUtt (mkCN woman_N (mkRS (mkRCl which_RP (mkClSlash (mkClSlash she_NP love_V2) today_Adv)))) mkRClmkRP-> NP -> RP -> RPmkRP in_Prep (mkNP all_Predet (mkNP the_Quant pluralNum city_N)) which_RP mkRP in_Prep (mkNP all_Predet (mkNP the_Quant pluralNum city_N)) which_RP which_RPmkRS-> (Ant) -> (Pol) -> RCl -> RSmkUtt (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))) mkRSmkRS-> RS -> RS -> RSmkUtt (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)))) mkRSmkS-> (Ant) -> (Pol) -> Cl -> SmkUtt (mkS conditionalTense anteriorAnt negativePol (mkCl she_NP sleep_V)) mkUtt (mkS conditionalTense anteriorAnt negativePol (mkCl she_NP sleep_V)) mkSmkS-> S -> S -> SmkUtt (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-> ListS -> SmkUtt (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))))) mkSmkSC-> SCmkSC (mkS (mkCl she_NP sleep_V)) mkSC (mkS (mkCl she_NP sleep_V)) mkSCmkSC-> SCmkSC (mkVP sleep_V) mkSC (mkVP sleep_V) mkSSlash-> Pol -> ClSlash -> SSlashmkSSlash (mkTemp pastTense anteriorAnt) negativePol (mkClSlash she_NP (mkVPSlash see_V2)) mkSSlash (mkTemp pastTense anteriorAnt) negativePol (mkClSlash she_NP (mkVPSlash see_V2)) although_SubjmkUtt (mkAdv although_Subj (mkS (mkCl she_NP sleep_V))) mkUtt (mkAdv although_Subj (mkS (mkCl she_NP sleep_V))) because_SubjmkUtt (mkAdv because_Subj (mkS (mkCl she_NP sleep_V))) mkUtt (mkAdv because_Subj (mkS (mkCl she_NP sleep_V))) if_SubjmkUtt (mkAdv if_Subj (mkS (mkCl she_NP sleep_V))) mkUtt (mkAdv if_Subj (mkS (mkCl she_NP sleep_V))) that_SubjmkUtt (mkAdv that_Subj (mkS (mkCl she_NP sleep_V))) mkUtt (mkAdv that_Subj (mkS (mkCl she_NP sleep_V))) when_SubjmkText-> Imp -> TextmkText negativePol (mkImp sleep_V) mkText negativePol (mkImp sleep_V) mkTextn1_UnitmkUtt (mkCard (mkNumeral n1_Unit)) mkUtt (mkCard (mkNumeral n1_Unit)) n2_UnitmkUtt-> UttmkUtt (mkQS pastTense negativePol (mkQCl who_IP sleep_V)) mkUtt (mkQS pastTense negativePol (mkQCl who_IP sleep_V)) mkUttmkUtt-> (Pol) -> Imp -> UttmkUtt pluralImpForm negativePol (mkImp (mkVP man_N)) mkUtt pluralImpForm negativePol (mkImp (mkVP man_N)) mkUttmkUtt-> UttmkUtt (mkNP this_Det man_N) mkUtt (mkNP this_Det man_N) mkUttmkUtt-> UttmkUtt (mkVP sleep_V) mkUtt (mkVP sleep_V) mkUtthave_V2mkUtt (mkVP have_V2 it_NP) mkUtt (mkVP have_V2 it_NP) mkVP-> VPmkUtt (mkVP sleep_V) mkUtt (mkVP sleep_V) mkVP-> NP -> VPmkUtt (mkVP love_V2 he_NP) mkUtt (mkVP love_V2 he_NP) mkVP-> NP -> NP -> VPmkUtt (mkVP send_V3 it_NP he_NP) mkUtt (mkVP send_V3 it_NP he_NP) mkVP-> VP -> VPmkUtt (mkVP want_VV (mkVP sleep_V)) mkUtt (mkVP want_VV (mkVP sleep_V)) mkVP-> S -> VPmkUtt (mkVP know_VS (mkS (mkCl she_NP sleep_V))) mkUtt (mkVP know_VS (mkS (mkCl she_NP sleep_V))) mkVP-> QS -> VPmkUtt (mkVP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkUtt (mkVP wonder_VQ (mkQS (mkQCl who_IP sleep_V))) mkVP-> AP -> VPmkUtt (mkVP become_VA (mkAP red_A)) mkUtt (mkVP become_VA (mkAP red_A)) mkVP-> NP -> AP -> VPmkUtt (mkVP paint_V2A it_NP (mkAP red_A)) mkUtt (mkVP paint_V2A it_NP (mkAP red_A)) mkVP-> NP -> S -> VPmkUtt (mkVP answer_V2S he_NP (mkS (mkCl she_NP sleep_V))) mkUtt (mkVP answer_V2S he_NP (mkS (mkCl she_NP sleep_V))) mkVP-> NP -> QS -> VPmkUtt (mkVP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V))) mkUtt (mkVP ask_V2Q he_NP (mkQS (mkQCl who_IP sleep_V))) mkVP-> NP -> VP -> VPmkUtt (mkVP beg_V2V he_NP (mkVP sleep_V)) mkUtt (mkVP beg_V2V he_NP (mkVP sleep_V)) mkVP-> VPmkUtt (mkVP old_A) mkUtt (mkVP old_A) mkVP-> NP -> VPmkUtt (mkVP old_A he_NP) mkUtt (mkVP old_A he_NP) mkVP-> NP -> VPmkUtt (mkVP married_A2 he_NP) mkUtt (mkVP married_A2 he_NP) mkVP-> VPmkUtt (mkVP (mkAP very_AdA old_A)) mkUtt (mkVP (mkAP very_AdA old_A)) mkVP-> VPmkUtt (mkVP woman_N) mkUtt (mkVP woman_N) mkVP-> VPmkUtt (mkVP (mkCN old_A woman_N)) mkUtt (mkVP (mkCN old_A woman_N)) mkVP-> VPmkUtt (mkVP (mkNP the_Det woman_N)) mkUtt (mkVP (mkNP the_Det woman_N)) mkVP-> VPmkUtt (mkVP here_Adv) mkUtt (mkVP here_Adv) mkVP-> Adv -> VPmkUtt (mkVP (mkVP sleep_V) here_Adv) mkUtt (mkVP (mkVP sleep_V) here_Adv) mkVP-> VP -> VPmkUtt (mkVP always_AdV (mkVP sleep_V)) mkUtt (mkVP always_AdV (mkVP sleep_V)) mkVP-> NP -> VPmkUtt (mkVP (mkVPSlash paint_V2A (mkAP black_A)) it_NP) mkUtt (mkVP (mkVPSlash paint_V2A (mkAP black_A)) it_NP) mkVP-> VPmkUtt (reflexiveVP (mkVPSlash paint_V2A (mkAP black_A))) mkUtt (reflexiveVP (mkVPSlash paint_V2A (mkAP black_A))) mkVP-> VPmkUtt (mkVP (mkComp (mkAP warm_A))) mkUtt (mkVP (mkComp (mkAP warm_A))) passiveVP-> VPmkUtt (passiveVP love_V2) mkUtt (passiveVP love_V2) passiveVP-> NP -> VPmkUtt (passiveVP love_V2 she_NP) mkUtt (passiveVP love_V2 she_NP) progressiveVP-> VPmkUtt (progressiveVP (mkVP sleep_V)) mkUtt (progressiveVP (mkVP sleep_V)) reflexiveVP-> VPmkUtt (reflexiveVP love_V2) mkUtt (reflexiveVP love_V2) reflexiveVPmkVPSlash-> NP -> VPSlashmkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash send_V3 it_NP)) ) mkUtt (mkQCl who_IP (mkClSlash she_NP (mkVPSlash send_V3 it_NP)) ) mkVPSlashmkVPSlash-> QS -> VPSlashmkUtt (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-> S -> VPSlashmkUtt (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)))) ) mkVPSlashmkVPSlash-> NP -> VPSlash -> VPSlashmkUtt (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)))) can8know_VVmkUtt (mkVP can8know_VV (mkVP sleep_V)) mkUtt (mkVP can8know_VV (mkVP sleep_V)) can_VVmkUtt (mkVP can_VV (mkVP sleep_V)) mkUtt (mkVP can_VV (mkVP sleep_V)) must_VVwant_VVmkUtt (mkVP want_VV (mkVP sleep_V)) mkUtt (mkVP want_VV (mkVP sleep_V)) mkVoc-> VocmkPhr yes_Utt (mkVoc (mkNP i_Pron friend_N)) mkPhr yes_Utt (mkVoc (mkNP i_Pron friend_N)) please_VocmkV(aai,aait,aait,aaien,aaide,aaide,aaiden,geaaid : Str) -> V-> V3
-dirV3-> Prep -> V3mkV3-> V3mkV3-> Str -> A
+mkA2-> Prep -> A2