forked from GitHub/gf-core
conjunction of AdV
This commit is contained in:
@@ -22,6 +22,7 @@ abstract Conjunction = Cat ** {
|
|||||||
ConjAP : Conj -> [AP] -> AP ; -- "cold and warm"
|
ConjAP : Conj -> [AP] -> AP ; -- "cold and warm"
|
||||||
ConjNP : Conj -> [NP] -> NP ; -- "she or we"
|
ConjNP : Conj -> [NP] -> NP ; -- "she or we"
|
||||||
ConjAdv : Conj -> [Adv] -> Adv ; -- "here or there"
|
ConjAdv : Conj -> [Adv] -> Adv ; -- "here or there"
|
||||||
|
ConjAdV : Conj -> [AdV] -> AdV ;
|
||||||
ConjIAdv : Conj -> [IAdv] -> IAdv ; -- "where and with whom"
|
ConjIAdv : Conj -> [IAdv] -> IAdv ; -- "where and with whom"
|
||||||
ConjCN : Conj -> [CN] -> CN ; -- "man and woman"
|
ConjCN : Conj -> [CN] -> CN ; -- "man and woman"
|
||||||
|
|
||||||
@@ -32,7 +33,8 @@ abstract Conjunction = Cat ** {
|
|||||||
cat
|
cat
|
||||||
[S]{2} ;
|
[S]{2} ;
|
||||||
[RS]{2} ;
|
[RS]{2} ;
|
||||||
[Adv]{2} ;
|
[Adv]{2} ;
|
||||||
|
[AdV]{2} ;
|
||||||
[NP]{2} ;
|
[NP]{2} ;
|
||||||
[AP]{2} ;
|
[AP]{2} ;
|
||||||
[IAdv]{2} ;
|
[IAdv]{2} ;
|
||||||
|
|||||||
@@ -14,6 +14,10 @@ concrete ConjunctionBul of Conjunction =
|
|||||||
s = (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj;
|
s = (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
ConjAdV conj ss = {
|
||||||
|
s = (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj;
|
||||||
|
} ;
|
||||||
|
|
||||||
ConjIAdv conj ss = {
|
ConjIAdv conj ss = {
|
||||||
s = \\qform => (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj!qform;
|
s = \\qform => (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj!qform;
|
||||||
} ;
|
} ;
|
||||||
@@ -45,6 +49,9 @@ concrete ConjunctionBul of Conjunction =
|
|||||||
BaseAdv x y = {s = \\d,t=>x.s++linCoord!t++ y.s} ;
|
BaseAdv x y = {s = \\d,t=>x.s++linCoord!t++ y.s} ;
|
||||||
ConsAdv x xs = {s = \\d,t=>x.s++(linCoordSep comma)!d!t++xs.s!d!t} ;
|
ConsAdv x xs = {s = \\d,t=>x.s++(linCoordSep comma)!d!t++xs.s!d!t} ;
|
||||||
|
|
||||||
|
BaseAdV x y = {s = \\d,t=>x.s++linCoord!t++ y.s} ;
|
||||||
|
ConsAdV x xs = {s = \\d,t=>x.s++(linCoordSep comma)!d!t++xs.s!d!t} ;
|
||||||
|
|
||||||
BaseIAdv x y = {s = \\d,t,qform=>x.s!qform++linCoord!t++ y.s!qform} ;
|
BaseIAdv x y = {s = \\d,t,qform=>x.s!qform++linCoord!t++ y.s!qform} ;
|
||||||
ConsIAdv x xs = {s = \\d,t,qform=>x.s!qform++(linCoordSep comma)!d!t++xs.s!d!t!qform} ;
|
ConsIAdv x xs = {s = \\d,t,qform=>x.s!qform++(linCoordSep comma)!d!t++xs.s!d!t!qform} ;
|
||||||
|
|
||||||
@@ -79,6 +86,7 @@ concrete ConjunctionBul of Conjunction =
|
|||||||
lincat
|
lincat
|
||||||
[S] = {s : Bool => Ints 2 => Str} ;
|
[S] = {s : Bool => Ints 2 => Str} ;
|
||||||
[Adv] = {s : Bool => Ints 2 => Str} ;
|
[Adv] = {s : Bool => Ints 2 => Str} ;
|
||||||
|
[AdV] = {s : Bool => Ints 2 => Str} ;
|
||||||
[IAdv] = {s : Bool => Ints 2 => QForm => Str} ;
|
[IAdv] = {s : Bool => Ints 2 => QForm => Str} ;
|
||||||
[NP] = {s : Bool => Ints 2 => Role => Str; a : Agr} ;
|
[NP] = {s : Bool => Ints 2 => Role => Str; a : Agr} ;
|
||||||
[AP] = {s : Bool => Ints 2 => AForm => Str; adv : Bool => Ints 2 => Str; isPre : Bool} ;
|
[AP] = {s : Bool => Ints 2 => AForm => Str; adv : Bool => Ints 2 => Str; isPre : Bool} ;
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ concrete ConjunctionEng of Conjunction =
|
|||||||
ConjS = conjunctDistrSS ;
|
ConjS = conjunctDistrSS ;
|
||||||
|
|
||||||
ConjAdv = conjunctDistrSS ;
|
ConjAdv = conjunctDistrSS ;
|
||||||
|
ConjAdV = conjunctDistrSS ;
|
||||||
|
|
||||||
ConjNP conj ss = conjunctDistrTable NPCase conj ss ** {
|
ConjNP conj ss = conjunctDistrTable NPCase conj ss ** {
|
||||||
a = conjAgr (agrP3 conj.n) ss.a
|
a = conjAgr (agrP3 conj.n) ss.a
|
||||||
@@ -31,6 +32,8 @@ concrete ConjunctionEng of Conjunction =
|
|||||||
ConsS = consrSS comma ;
|
ConsS = consrSS comma ;
|
||||||
BaseAdv = twoSS ;
|
BaseAdv = twoSS ;
|
||||||
ConsAdv = consrSS comma ;
|
ConsAdv = consrSS comma ;
|
||||||
|
BaseAdV = twoSS ;
|
||||||
|
ConsAdV = consrSS comma ;
|
||||||
BaseNP x y = twoTable NPCase x y ** {a = conjAgr x.a y.a} ;
|
BaseNP x y = twoTable NPCase x y ** {a = conjAgr x.a y.a} ;
|
||||||
ConsNP xs x = consrTable NPCase comma xs x ** {a = conjAgr xs.a x.a} ;
|
ConsNP xs x = consrTable NPCase comma xs x ** {a = conjAgr xs.a x.a} ;
|
||||||
BaseAP x y = twoTable Agr x y ** {isPre = andB x.isPre y.isPre} ;
|
BaseAP x y = twoTable Agr x y ** {isPre = andB x.isPre y.isPre} ;
|
||||||
@@ -45,6 +48,7 @@ concrete ConjunctionEng of Conjunction =
|
|||||||
lincat
|
lincat
|
||||||
[S] = {s1,s2 : Str} ;
|
[S] = {s1,s2 : Str} ;
|
||||||
[Adv] = {s1,s2 : Str} ;
|
[Adv] = {s1,s2 : Str} ;
|
||||||
|
[AdV] = {s1,s2 : Str} ;
|
||||||
[IAdv] = {s1,s2 : Str} ;
|
[IAdv] = {s1,s2 : Str} ;
|
||||||
[NP] = {s1,s2 : NPCase => Str ; a : Agr} ;
|
[NP] = {s1,s2 : NPCase => Str ; a : Agr} ;
|
||||||
[AP] = {s1,s2 : Agr => Str ; isPre : Bool} ;
|
[AP] = {s1,s2 : Agr => Str ; isPre : Bool} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user