1
0
forked from GitHub/gf-core

reduced overgeneration by only allowing one AdA in Phrasebook

This commit is contained in:
aarne
2010-04-04 20:44:37 +00:00
parent cdd9efa559
commit 09171eecb4
9 changed files with 219 additions and 210 deletions

View File

@@ -3,7 +3,7 @@ abstract Sentences = Numeral ** {
cat
Phrase ;
Sentence ; Question ;
Object ; Item ; Kind ; Quality ;
Object ; Item ; Kind ; Quality ; Property ;
Place ; PlaceKind ; Currency ; Price ; Language ;
Person ; Action ;
@@ -36,13 +36,15 @@ abstract Sentences = Numeral ** {
ItCost : Item -> Price -> Sentence ;
AmountCurrency : Numeral -> Currency -> Price ;
ObjItem : Item -> Object ;
ObjItem : Item -> Object ;
ObjNumber : Numeral -> Kind -> Object ;
ObjIndef : Kind -> Object ;
This, That, These, Those, The, Thes : Kind -> Item ;
SuchKind : Quality -> Kind -> Kind ;
Very : Quality -> Quality ;
Too : Quality -> Quality ;
Very : Property -> Quality ;
Too : Property -> Quality ;
PropQuality : Property -> Quality ;
ThePlace : PlaceKind -> Place ;

View File

@@ -11,6 +11,7 @@ incomplete concrete SentencesI of Sentences = Numeral **
Item = NP ;
Kind = CN ;
Quality = AP ;
Property = A ;
Object = NP ;
Place = NP ;
PlaceKind = CN ;
@@ -49,6 +50,7 @@ incomplete concrete SentencesI of Sentences = Numeral **
ObjItem i = i ;
ObjNumber n k = mkNP <lin Numeral n : Numeral> k ;
ObjIndef k = mkNP a_Quant k ;
This kind = mkNP this_Quant kind ;
That kind = mkNP that_Quant kind ;
@@ -58,8 +60,9 @@ incomplete concrete SentencesI of Sentences = Numeral **
The kind = mkNP the_Quant kind ;
Thes kind = mkNP the_Quant plNum kind ;
SuchKind quality kind = mkCN quality kind ;
Very quality = mkAP very_AdA quality ;
Too quality = mkAP too_AdA quality ;
Very property = mkAP very_AdA (mkAP property) ;
Too property = mkAP too_AdA (mkAP property) ;
PropQuality property = mkAP property ;
ThePlace kind = mkNP the_Quant kind ;
I = mkNP i_Pron ;

View File

@@ -5,7 +5,7 @@ abstract Words = Sentences ** {
Wine, Beer, Water, Coffee, Tea : Kind ;
Cheese, Fish, Pizza : Kind ;
Fresh, Warm, Italian,
Expensive, Delicious, Boring : Quality ;
Expensive, Delicious, Boring, Good : Property ;
Bar, Restaurant, Toilet : PlaceKind ;

View File

@@ -12,12 +12,13 @@ concrete WordsEng of Words = SentencesEng **
Pizza = mkCN (mkN "pizza") ;
Cheese = mkCN (mkN "cheese") ;
Fish = mkCN (mkN "fish" "fish") ;
Fresh = mkAP (mkA "fresh") ;
Warm = mkAP (mkA "warm") ;
Italian = mkAP (mkA "Italian") ;
Expensive = mkAP (mkA "expensive") ;
Delicious = mkAP (mkA "delicious") ;
Boring = mkAP (mkA "boring") ;
Fresh = mkA "fresh" ;
Warm = mkA "warm" ;
Italian = mkA "Italian" ;
Expensive = mkA "expensive" ;
Delicious = mkA "delicious" ;
Boring = mkA "boring" ;
Good = mkA "good" "better" "best" "well" ;
Restaurant = mkCN (mkN "restaurant") ;
Bar = mkCN (mkN "bar") ;

View File

@@ -12,16 +12,18 @@ concrete WordsFin of Words = SentencesFin **
Pizza = mkCN (mkN "pizza") ;
Cheese = mkCN (mkN "juusto") ;
Fish = mkCN (mkN "kala") ;
Fresh = mkAP (mkA "tuore") ;
Warm = mkAP (mkA
Fresh = mkA "tuore" ;
Warm = mkA
(mkN "lämmin" "lämpimän" "lämmintä" "lämpimänä" "lämpimään"
"lämpiminä" "lämpimiä" "lämpimien" "lämpimissä" "lämpimiin"
)
"lämpimämpi" "lämpimin") ;
Italian = mkAP (mkA "italialainen") ;
Expensive = mkAP (mkA "kallis") ;
Delicious = mkAP (mkA "herkullinen") ;
Boring = mkAP (mkA "tylsä") ;
"lämpimämpi" "lämpimin" ;
Italian = mkA "italialainen" ;
Expensive = mkA "kallis" ;
Delicious = mkA "herkullinen" ;
Boring = mkA "tylsä" ;
Good = mkA (mkN "hyvä") "parempi" "paras" ; ---- comparisons?
Restaurant = mkCN (mkN "ravintola") ;
Bar = mkCN (mkN "baari") ;

View File

@@ -1,60 +1,58 @@
-- (c) 2009 Ramona Enache and Aarne Ranta under LGPL
concrete WordsFre of Words = SentencesFre ** open
SyntaxFre,
DiffPhrasebookFre,
IrregFre,
(E = ExtraFre),
ParadigmsFre in
{
flags coding=utf8 ;
lin
Wine = mkCN (mkN "vin") ;
Beer = mkCN (mkN "bière") ;
Water = mkCN (mkN "eau" feminine) ;
Coffee = mkCN (mkN "café") ;
Tea = mkCN (mkN "thé") ;
Cheese = mkCN (mkN "fromage" masculine) ;
Fish = mkCN (mkN "poisson" masculine) ;
Pizza = mkCN (mkN "pizza" feminine) ;
Fresh = mkAP (mkA "frais" "fraîche") ;
Warm = mkAPA "chaud" ;
Italian = mkAPA "italien" ;
Expensive = mkAPA "cher" ;
Delicious = mkAPA "délicieux" ;
Boring = mkAPA "ennuyeux" ;
Restaurant = mkCN (mkN "restaurant") ;
Bar = mkCN (mkN "bar") ;
Toilet = mkCN (mkN "toilette") ;
Euro = mkCN (mkN "euro") ;
Dollar = mkCN (mkN "dollar") ;
Lei = mkCN (mkN "lei") ; ---- ?
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl item plaire_V2 p ;
AHave p kind = mkCl p have_V2 (mkNP kind) ;
ASpeak p lang = mkCl p (mkV2 (mkV "parler")) lang ;
ALove p q = mkCl p (mkV2 (mkV "aimer")) q ;
English = mkNP (mkPN "anglais") ;
Finnish = mkNP (mkPN "finnois") ;
French = mkNP (mkPN "français") ;
Romanian = mkNP (mkPN "roumain") ;
Swedish = mkNP (mkPN "suédois") ;
AHungry p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "faim" feminine))) ;
AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "soif" feminine))) ;
ATired p = mkCl p (mkA "fatigué") ;
AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "peur" feminine))) ;
AUnderstand p = mkCl p (mkV IrregFre.comprendre_V2) ;
oper
mkAPA : (_ : Str) -> AP = \x -> mkAP (mkA x) ;
}
-- (c) 2009 Ramona Enache and Aarne Ranta under LGPL
concrete WordsFre of Words = SentencesFre ** open
SyntaxFre,
DiffPhrasebookFre,
IrregFre,
(E = ExtraFre),
ParadigmsFre in
{
flags coding=utf8 ;
lin
Wine = mkCN (mkN "vin") ;
Beer = mkCN (mkN "bière") ;
Water = mkCN (mkN "eau" feminine) ;
Coffee = mkCN (mkN "café") ;
Tea = mkCN (mkN "thé") ;
Cheese = mkCN (mkN "fromage" masculine) ;
Fish = mkCN (mkN "poisson" masculine) ;
Pizza = mkCN (mkN "pizza" feminine) ;
Fresh = mkA "frais" "fraîche" "frais" "fraîchement" ;
Warm = mkA "chaud" ;
Italian = mkA "italien" ;
Expensive = mkA "cher" ;
Delicious = mkA "délicieux" ;
Boring = mkA "ennuyeux" ;
Good = prefixA (mkA "bon" "bonne" "bons" "bien") ;
Restaurant = mkCN (mkN "restaurant") ;
Bar = mkCN (mkN "bar") ;
Toilet = mkCN (mkN "toilette") ;
Euro = mkCN (mkN "euro") ;
Dollar = mkCN (mkN "dollar") ;
Lei = mkCN (mkN "lei") ; ---- ?
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl item plaire_V2 p ;
AHave p kind = mkCl p have_V2 (mkNP kind) ;
ASpeak p lang = mkCl p (mkV2 (mkV "parler")) lang ;
ALove p q = mkCl p (mkV2 (mkV "aimer")) q ;
English = mkNP (mkPN "anglais") ;
Finnish = mkNP (mkPN "finnois") ;
French = mkNP (mkPN "français") ;
Romanian = mkNP (mkPN "roumain") ;
Swedish = mkNP (mkPN "suédois") ;
AHungry p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "faim" feminine))) ;
AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "soif" feminine))) ;
ATired p = mkCl p (mkA "fatigué") ;
AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "peur" feminine))) ;
AUnderstand p = mkCl p (mkV IrregFre.comprendre_V2) ;
}

View File

@@ -1,58 +1,59 @@
-- (c) 2009 Ramona Enache and Aarne Ranta under LGPL
concrete WordsIta of Words = SentencesIta ** open
SyntaxIta,
DiffPhrasebookIta,
BeschIta,
(E = ExtraIta),
ParadigmsIta in {
lin
Wine = mkCN (mkN "vino") ;
Beer = mkCN (mkN "birra") ;
Water = mkCN (mkN "acqua") ;
Coffee = mkCN (mkN "caffè") ;
-- Tea = mkCN (mkN "té") ; ----
Cheese = mkCN (mkN "formaggio") ;
Fish = mkCN (mkN "pesce") ;
Pizza = mkCN (mkN "pizza") ;
Fresh = mkAP (mkA "fresco") ;
Warm = mkAPA "caldo" ;
Italian = mkAPA "italiano" ;
Expensive = mkAPA "caro" ;
Delicious = mkAPA "delizioso" ;
Boring = mkAPA "noioso" ;
Restaurant = mkCN (mkN "ristorante") ;
Bar = mkCN (mkN "bar") ;
Toilet = mkCN (mkN "bagno") ;
Euro = mkCN (mkN "euro" "euro" masculine) ;
Dollar = mkCN (mkN "dollar") ;
Lei = mkCN (mkN "lei") ; ---- ?
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl item (mkV2 (mkV (piacere_64 "piacere")) dative) p ;
AHave p kind = mkCl p have_V2 (mkNP kind) ;
ASpeak p lang = mkCl p (mkV2 (mkV "parlare")) lang ;
ALove p q = mkCl p (mkV2 (mkV "amare")) q ;
English = mkNP (mkPN "inglese") ;
Finnish = mkNP (mkPN "finlandese") ;
French = mkNP (mkPN "francese") ;
Romanian = mkNP (mkPN "rumeno") ;
Swedish = mkNP (mkPN "svedese") ;
AHungry p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "fame" feminine))) ;
AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "sete" feminine))) ;
ATired p = mkCl p (mkA "stanco") ;
AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "paura" feminine))) ;
AUnderstand p = mkCl p (mkV "capire") ;
oper
mkAPA : (_ : Str) -> AP = \x -> mkAP (mkA x) ;
}
-- (c) 2009 Ramona Enache and Aarne Ranta under LGPL
concrete WordsIta of Words = SentencesIta ** open
SyntaxIta,
DiffPhrasebookIta,
BeschIta,
(E = ExtraIta),
ParadigmsIta in {
lin
Wine = mkCN (mkN "vino") ;
Beer = mkCN (mkN "birra") ;
Water = mkCN (mkN "acqua") ;
Coffee = mkCN (mkN "caffè") ;
-- Tea = mkCN (mkN "té") ; ----
Cheese = mkCN (mkN "formaggio") ;
Fish = mkCN (mkN "pesce") ;
Pizza = mkCN (mkN "pizza") ;
Fresh = mkA "fresco" ;
Warm = mkA "caldo" ;
Italian = mkA "italiano" ;
Expensive = mkA "caro" ;
Delicious = mkA "delizioso" ;
Boring = mkA "noioso" ;
Good = prefixA (mkA "buono" "buona" "buoni" "buone" "bene") ;
Restaurant = mkCN (mkN "ristorante") ;
Bar = mkCN (mkN "bar") ;
Toilet = mkCN (mkN "bagno") ;
Euro = mkCN (mkN "euro" "euro" masculine) ;
Dollar = mkCN (mkN "dollar") ;
Lei = mkCN (mkN "lei") ; ---- ?
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl item (mkV2 (mkV (piacere_64 "piacere")) dative) p ;
AHave p kind = mkCl p have_V2 (mkNP kind) ;
ASpeak p lang = mkCl p (mkV2 (mkV "parlare")) lang ;
ALove p q = mkCl p (mkV2 (mkV "amare")) q ;
English = mkNP (mkPN "inglese") ;
Finnish = mkNP (mkPN "finlandese") ;
French = mkNP (mkPN "francese") ;
Romanian = mkNP (mkPN "rumeno") ;
Swedish = mkNP (mkPN "svedese") ;
AHungry p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "fame" feminine))) ;
AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "sete" feminine))) ;
ATired p = mkCl p (mkA "stanco") ;
AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "paura" feminine))) ;
AUnderstand p = mkCl p (mkV "capire") ;
oper
mkAPA : (_ : Str) -> AP = \x -> mkAP (mkA x) ;
}

View File

@@ -1,66 +1,67 @@
-- (c) 2009 Ramona Enache under LGPL
concrete WordsRon of Words = SentencesRon ** open
SyntaxRon,
ParadigmsRon,
BeschRon,
DiffPhrasebookRon in
{
flags coding=utf8 ;
lin
Wine = mkCN (mkN "vin" "vinuri" neuter) ;
Beer = mkCN (mkN "bere") ;
Water = mkCN (mkN "apă") ;
---- Coffee = mkCN (mkN "coffee") ;
---- Tea = mkCN (mkN "tea") ;
Cheese = mkCN (mkN "brânză" "brânzeturi" feminine) ;
Fish = mkCN (mkN "peşte" "peşti" masculine) ;
Pizza = mkCN (mkN "pizza" "pizze" feminine) ;
Fresh = mkAPA "proaspăt" "proaspătă" "proaspeţi" "proaspete" ;
Warm = mkAPA "cald" "caldă" "calzi" "calde" ;
Italian = mkAPA "italian" "italiană" "italieni" "italiene" ;
Expensive = mkAPA "scump" "scumpă" "scumpi" "scumpe" ;
Delicious = mkAPA "delicios" "delcioasă" "delicioşi" "delicioase" ;
Boring = mkAPA "plictisitor" "plictisitoare" "plictisitori" "plictisitoare" ;
Restaurant = mkCN (mkN "restaurant") ;
Bar = mkCN (mkNR "bar") ;
Toilet = mkCN (mkN "toaleta") ;
Euro = mkCN (mkN "euro" "euro") ;
Dollar = mkCN (mkN "dolar" masculine) ;
Lei = mkCN (mkN "leu" "lei") ;
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl p like_V2 item ;
AHave p kind = mkCl p have_V2 (SyntaxRon.mkNP kind) ;
ASpeak p lang = mkCl p (dirV2 (mkV "vorbi")) lang ;
ALove p q = mkCl p (dirV2 (mkV "iubi")) q ;
English = SyntaxRon.mkNP (mkPN "engleză") ; ---- ?
-- Finnish = mkNP (mkPN "finnois") ;
-- French = mkNP (mkPN "français") ;
Romanian = SyntaxRon.mkNP (mkPN "română") ; ---- ?
-- Swedish = mkNP (mkPN "suédois") ;
-- AHungry p = mkCl p have_V2 (SyntaxRon.mkNP a_Det (mkN "foame")) ;
-- AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "sete" feminine))) ;
-- ATired p = mkCl p (mkA "stanco") ;
-- AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "paura" feminine))) ;
AUnderstand p = mkCl p (v_besch83 "înţelege") ;
{-
GImHungry = ss "mi-e foame" ;
GImThirsty = ss "mi-e sete" ;
GImTired = ss "mi-e somn" ;
GImScared = ss "mi-e frică" ;
-}
oper
mkAPA : (_,_,_,_ : Str) -> AP = \x,y,z,u -> mkAP (mkA x y z u) ;
}
-- (c) 2009 Ramona Enache under LGPL
concrete WordsRon of Words = SentencesRon ** open
SyntaxRon,
ParadigmsRon,
BeschRon,
DiffPhrasebookRon in
{
flags coding=utf8 ;
lin
Wine = mkCN (mkN "vin" "vinuri" neuter) ;
Beer = mkCN (mkN "bere") ;
Water = mkCN (mkN "apă") ;
---- Coffee = mkCN (mkN "coffee") ;
---- Tea = mkCN (mkN "tea") ;
Cheese = mkCN (mkN "brânză" "brânzeturi" feminine) ;
Fish = mkCN (mkN "peşte" "peşti" masculine) ;
Pizza = mkCN (mkN "pizza" "pizze" feminine) ;
Fresh = mkA "proaspăt" "proaspătă" "proaspeţi" "proaspete" ;
Warm = mkA "cald" "caldă" "calzi" "calde" ;
Italian = mkA "italian" "italiană" "italieni" "italiene" ;
Expensive = mkA "scump" "scumpă" "scumpi" "scumpe" ;
Delicious = mkA "delicios" "delcioasă" "delicioşi" "delicioase" ;
Boring = mkA "plictisitor" "plictisitoare" "plictisitori" "plictisitoare" ;
Good = mkA "bun" "bună" "buni" "bune" "bine" ;
Restaurant = mkCN (mkN "restaurant") ;
Bar = mkCN (mkNR "bar") ;
Toilet = mkCN (mkN "toaleta") ;
Euro = mkCN (mkN "euro" "euro") ;
Dollar = mkCN (mkN "dolar" masculine) ;
Lei = mkCN (mkN "leu" "lei") ;
AWant p obj = mkCl p want_V2 obj ;
ALike p item = mkCl p like_V2 item ;
AHave p kind = mkCl p have_V2 (SyntaxRon.mkNP kind) ;
ASpeak p lang = mkCl p (dirV2 (mkV "vorbi")) lang ;
ALove p q = mkCl p (dirV2 (mkV "iubi")) q ;
English = SyntaxRon.mkNP (mkPN "engleză") ; ---- ?
-- Finnish = mkNP (mkPN "finnois") ;
-- French = mkNP (mkPN "français") ;
Romanian = SyntaxRon.mkNP (mkPN "română") ; ---- ?
-- Swedish = mkNP (mkPN "suédois") ;
-- AHungry p = mkCl p have_V2 (SyntaxRon.mkNP a_Det (mkN "foame")) ;
-- AThirsty p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "sete" feminine))) ;
-- ATired p = mkCl p (mkA "stanco") ;
-- AScared p = mkCl p (E.ComplCN have_V2 (mkCN (mkN "paura" feminine))) ;
AUnderstand p = mkCl p (v_besch83 "înţelege") ;
{-
GImHungry = ss "mi-e foame" ;
GImThirsty = ss "mi-e sete" ;
GImTired = ss "mi-e somn" ;
GImScared = ss "mi-e frică" ;
-}
oper
mkAPA : (_,_,_,_ : Str) -> AP = \x,y,z,u -> mkAP (mkA x y z u) ;
}

View File

@@ -12,12 +12,13 @@ concrete WordsSwe of Words = SentencesSwe **
Pizza = mkCN (mkN "pizza") ;
Cheese = mkCN (mkN "ost") ;
Fish = mkCN (mkN "fisk") ;
Fresh = mkAP (mkA "färsk") ;
Warm = mkAP (mkA "varm") ;
Italian = mkAP (mkA "italiensk") ;
Expensive = mkAP (mkA "dyr") ;
Delicious = mkAP (mkA "läcker") ;
Boring = mkAP (mkA "tråkig") ;
Fresh = mkA "färsk" ;
Warm = mkA "varm" ;
Italian = mkA "italiensk" ;
Expensive = mkA "dyr" ;
Delicious = mkA "läcker" ;
Boring = mkA "tråkig" ;
Good = mkA "god" "gott" "goda" "bättre" "bäst" ;
Restaurant = mkCN (mkN "restaurang" "restauranger") ;
Bar = mkCN (mkN "bar" "barer") ;