mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
added quantifier ambiguity in the NLG example
This commit is contained in:
@@ -12,11 +12,13 @@ cat
|
|||||||
NP ((Ind -> Prop) -> Prop);
|
NP ((Ind -> Prop) -> Prop);
|
||||||
AP (Ind -> Prop);
|
AP (Ind -> Prop);
|
||||||
VP (Ind -> Prop);
|
VP (Ind -> Prop);
|
||||||
|
VPSlash (Ind -> Ind -> Prop);
|
||||||
V (Ind -> Prop);
|
V (Ind -> Prop);
|
||||||
V2 (Ind -> Ind -> Prop);
|
V2 (Ind -> Ind -> Prop);
|
||||||
Comp (Ind -> Prop);
|
Comp (Ind -> Prop);
|
||||||
Pol (Prop -> Prop);
|
Pol (Prop -> Prop);
|
||||||
Cl Prop;
|
Cl Prop;
|
||||||
|
ClSlash (Ind -> Prop);
|
||||||
S Prop;
|
S Prop;
|
||||||
Utt;
|
Utt;
|
||||||
|
|
||||||
@@ -32,10 +34,21 @@ fun
|
|||||||
UseV : ({v} : Ind -> Prop) ->
|
UseV : ({v} : Ind -> Prop) ->
|
||||||
V v -> VP v ;
|
V v -> VP v ;
|
||||||
|
|
||||||
ComplV2 : ({v2} : Ind -> Ind -> Prop) ->
|
ComplSlash : ({v2} : Ind -> Ind -> Prop) ->
|
||||||
({np} : (Ind -> Prop) -> Prop) ->
|
({np} : (Ind -> Prop) -> Prop) ->
|
||||||
V2 v2 -> NP np -> VP (\i -> np (v2 i)) ;
|
VPSlash v2 -> NP np -> VP (\i -> np (v2 i)) ;
|
||||||
|
|
||||||
|
SlashV2a : ({v2} : Ind -> Ind -> Prop) ->
|
||||||
|
V2 v2 -> VPSlash v2 ;
|
||||||
|
|
||||||
|
SlashVP : ({np} : (Ind -> Prop) -> Prop) ->
|
||||||
|
({v2} : Ind -> Ind -> Prop) ->
|
||||||
|
NP np -> VPSlash v2 -> ClSlash (\x -> np (v2 x));
|
||||||
|
|
||||||
|
ComplClSlash : ({sl} : Ind -> Prop) ->
|
||||||
|
({np} : (Ind -> Prop) -> Prop) ->
|
||||||
|
ClSlash sl -> NP np -> Cl (np sl);
|
||||||
|
|
||||||
UseComp : ({c} : Ind -> Prop) ->
|
UseComp : ({c} : Ind -> Prop) ->
|
||||||
Comp c -> VP c ;
|
Comp c -> VP c ;
|
||||||
|
|
||||||
|
|||||||
@@ -10,11 +10,13 @@ lincat
|
|||||||
NP = Eng.NP;
|
NP = Eng.NP;
|
||||||
AP = Eng.AP;
|
AP = Eng.AP;
|
||||||
VP = Eng.VP;
|
VP = Eng.VP;
|
||||||
|
VPSlash = Eng.VPSlash;
|
||||||
V2 = Eng.V2;
|
V2 = Eng.V2;
|
||||||
V = Eng.V;
|
V = Eng.V;
|
||||||
Comp=Eng.Comp;
|
Comp=Eng.Comp;
|
||||||
Pol= Eng.Pol;
|
Pol= Eng.Pol;
|
||||||
Cl = Eng.Cl;
|
Cl = Eng.Cl;
|
||||||
|
ClSlash = Eng.ClSlash;
|
||||||
S = Eng.S;
|
S = Eng.S;
|
||||||
Utt= Eng.Utt;
|
Utt= Eng.Utt;
|
||||||
Conj = Eng.Conj;
|
Conj = Eng.Conj;
|
||||||
@@ -25,7 +27,13 @@ lin
|
|||||||
DetCN _ _ = Eng.DetCN;
|
DetCN _ _ = Eng.DetCN;
|
||||||
UseN _ = Eng.UseN;
|
UseN _ = Eng.UseN;
|
||||||
UsePN _ = Eng.UsePN;
|
UsePN _ = Eng.UsePN;
|
||||||
ComplV2 _ _ v2 np = Eng.ComplSlash (Eng.SlashV2a v2) np;
|
SlashV2a _ = Eng.SlashV2a;
|
||||||
|
ComplSlash _ _ = Eng.ComplSlash;
|
||||||
|
SlashVP _ _ = Eng.SlashVP;
|
||||||
|
ComplClSlash _ _ cl np = lin Cl {
|
||||||
|
s = \\t,a,p,o => cl.s ! t ! a ! p ! o ++ cl.c2 ++ np.s ! NCase Nom
|
||||||
|
} ;
|
||||||
|
|
||||||
UseComp _ = Eng.UseComp ;
|
UseComp _ = Eng.UseComp ;
|
||||||
CompAP _ = Eng.CompAP ;
|
CompAP _ = Eng.CompAP ;
|
||||||
CompNP _ = Eng.CompNP ;
|
CompNP _ = Eng.CompNP ;
|
||||||
|
|||||||
Reference in New Issue
Block a user