1
0
forked from GitHub/gf-core

added examples/SUMO

This commit is contained in:
krasimir
2010-02-17 11:07:24 +00:00
parent e54ac49769
commit 06654cbb5e
48 changed files with 73633 additions and 0 deletions

103
examples/SUMO/Basic.gf Normal file
View File

@@ -0,0 +1,103 @@
--# -path=.:englishExtended:common:prelude:abstract
abstract Basic = open Conjunction in {
cat Class;
El Class;
Ind Class;
SubClassC (c1,c2 : Class) (Var c2 -> Formula);
SubClass (c1,c2 : Class);
Inherits Class Class ;
[El Class];
[Class];
Formula;
Desc Class;
Var Class;
Stmt ;
-- inheritance between classes
data
inhz : (c : Class) -> Inherits c c;
inhs : (c1, c2, c3 : Class) -> (p : Var c2 -> Formula) -> SubClassC c1 c2 p -> Inherits c2 c3 -> Inherits c1 c3;
inhsC : (c1, c2, c3 : Class) -> SubClass c1 c2 -> Inherits c2 c3 -> Inherits c1 c3;
-- coercion from Var to El
data
var : (c1 , c2 : Class) -> Inherits c1 c2 -> Var c1 -> El c2 ;
-- coercion from Ind to El
data
el : (c1, c2 : Class) -> Inherits c1 c2 -> Ind c1 -> El c2;
-- class-forming operations
data
both : Class -> Class -> Class ;
either : Class -> Class -> Class ;
-- first-order logic operations for Formula
data
not : Formula -> Formula;
and : Formula -> Formula -> Formula;
or : Formula -> Formula -> Formula;
impl : Formula -> Formula -> Formula;
equiv : Formula -> Formula -> Formula;
-- quantification over instances of a Class
data
exists : (c : Class) -> (Var c -> Formula) -> Formula;
forall : (c : Class) -> (Var c -> Formula) -> Formula;
-- axioms for both
data
-- (both c1 c2) is subclass of c1 and of c2
bothL : (c1, c2 : Class) -> Inherits (both c1 c2) c1 ;
bothR : (c1, c2 : Class) -> Inherits (both c1 c2) c2 ;
-- relationship with other subclasses
bothC : (c1, c2, c3 : Class) -> Inherits c3 c1 -> Inherits c3 c2 -> Inherits c3 (both c1 c2);
-- axioms for either
data
-- (either c1 c2) is superclass of c1 and of c2
eitherL : (c1, c2 : Class) -> Inherits c1 (either c1 c2);
eitherR : (c1, c2 : Class) -> Inherits c2 (either c1 c2);
-- relationship with other subclasses
eitherC : (c1,c2,c3 : Class) -> Inherits c1 c3 -> Inherits c2 c3 -> Inherits (either c1 c2) c3 ;
-- Desc category
data desc : (c1,c2 : Class) -> Inherits c1 c2 -> Desc c2 ;
fun descClass : (c : Class) -> Desc c -> Class ;
def descClass _ (desc c _ _) = c ;
fun descInh : (c : Class) -> (p : Desc c) -> Inherits (descClass c p) c ;
--def descInh c1 (desc c2 c1 i) = i ;
fun desc2desc : (c1,c2 : Class) -> Inherits c1 c2 -> Desc c1 -> Desc c2 ;
--def desc2desc _ _ inh dsc = desc ? ? (plusInh ? ? ? inh (descInh ? dsc)) ;
--fun plusInh : (c1,c2,c3 : Class) -> Inherits c1 c2 -> Inherits c2 c3 -> Inherits c1 c3 ;
--def plusInh _ _ _ inhz inh2 = inh2 ;
-- plusInh _ _ _ (inhs _ _ _ sc inh1) inh2 = inhs ? ? ? sc (plusInh ? ? ? inh1 inh2) ;
-- statements
data
subClassStm : (c1,c2 : Class) -> SubClass c1 c2 -> Stmt ;
subClassCStm : (c1,c2 : Class) -> (p : Var c2 -> Formula) -> SubClassC c1 c2 p -> Stmt ;
instStm : (c : Class) -> Ind c -> Stmt ;
formStm : Formula -> Stmt ;
};

96
examples/SUMO/BasicEng.gf Normal file
View File

@@ -0,0 +1,96 @@
--# -path=.:englishExtended:abstract:common:
concrete BasicEng of Basic = CatEng - [Text] ** open DictLangEng, ParadigmsEng, ResEng, Coordination, Prelude, ParamBasic, NounEng in{
lincat
Class = CN ;
El = NP ;
Ind = NP ;
Var = PN ;
SubClass = {} ;
SubClassC = {} ;
Inherits = {} ;
Desc = CN ;
Formula = PolSentence;
[El] = [NP];
[Class] = [CN];
Stmt = SS ;
lin
BaseClass = {s1,s2 = \\_,_ => "";
g = Neutr;
lock_ListCN=<>};
ConsClass xs x = ConsCN xs x ;
BaseEl c = {s1,s2 = \\_ => "";
a = agrP3 Sg;
lock_ListNP=<>};
ConsEl c xs x = ConsNP xs x ;
and f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "and" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
or f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "or" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
not f1 = {s = \\f,c => case c of
{Neg => f1.s ! f ! Pos ;
Pos => f1.s ! Indep ! Neg };
flag = f1.flag;
lock_PolSentence = <>};
impl f1 f2 = {s = \\f,c => "if" ++ f1.s ! Indep ! c ++ "then" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "is" ++ "equivalent" ++ "to" ++ f2.s ! Indep ! c; flag = NothingS;
lock_PolSentence = <>};
el c1 c2 i e = e;
var c1 c2 i e = UsePN e;
exists C f = let np = DetCN (DetQuant IndefArt NumSg) C
in
{s = \\form,c => case <form, f.flag> of
{ <Indep, ExistS _> => "there" ++ "exists" ++ np.s ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS One> => "and" ++ np.s ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS _> => "," ++ np.s ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,_> => "there" ++ "exists" ++ np.s ! Nom ++ f.$0 ++ "such" ++ "that" ++ f.s ! Indep ! c ;
_ => "and" ++ np.s ! Nom ++ f.$0 ++ "such" ++ "that" ++ f.s ! Indep ! c };
flag = case f.flag of
{ExistS _ => ExistS Many;
_ => ExistS One };
lock_PolSentence=<>};
forall C f = {s = \\form, c => case <form,f.flag> of
{<Indep,ForallS _> => "for" ++ "every" ++ C.s ! Sg ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib,ForallS One> => "," ++ "every" ++ C.s ! Sg ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ForallS _> => "," ++ "every" ++ C.s ! Sg ! Nom ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,ExistS _> => "for" ++"every"++ C.s ! Sg ! Nom ++ f.$0 ++ f.s ! Indep ! c ;
<Indep,_> => "for" ++"every"++ C.s ! Sg ! Nom ++ f.$0 ++ "we"++"have" ++ "that" ++ f.s ! Indep ! c ;
<Attrib,ExistS _> => "and" ++ "every" ++ C.s ! Sg ! Nom ++ f.$0 ++ f.s ! Indep ! c;
_ => "and" ++ "every" ++ C.s ! Sg ! Nom ++ f.$0 ++ "we" ++ "have" ++ "that" ++f.s ! Indep ! c };
flag = case f.flag of
{ForallS _ => ForallS Many;
_ => ForallS One };
lock_PolSentence=<>};
both c1 c2 = {s = \\c,n => c1.s ! c ! n ++ "and" ++ c2.s ! c ! n;
g = c2.g; lock_CN = <>};
either c1 c2 = {s = \\c,n => c1.s ! c ! n ++ "or" ++ c2.s ! c ! n;
g = c2.g; lock_CN = <>};
desc c1 c2 i = c2 ;
descClass c dc = c;
desc2desc c1 c2 i d = d;
subClassStm c1 c2 sc = ss (c1. s ! Sg ! Nom ++ "is" ++ "a" ++ "subclass" ++ "of" ++ c2.s ! Sg ! Nom) ;
instStm c i = ss (i.s ! Nom ++ "is" ++ "an" ++ "instance" ++ "of" ++ c.s ! Sg ! Nom) ;
formStm f = ss (f.s ! Indep ! Pos) ;
subClassCStm c1 c2 constr sc= ss (c1.s ! Sg ! Nom ++ "is" ++ "a" ++ "subclass" ++ "of" ++ c2.s ! Sg ! Nom ++ "where" ++ constr.s ! Indep ! Pos) ;
-- lindef
lindef Ind = \x -> {s = \\_ => x; a = agrP3 Sg; lock_NP = <>} ;
lindef El = \x -> {s = \\_ => x; a = agrP3 Sg; lock_NP = <>} ;
lindef Class = \x -> {s = \\_,_ => x; g = Neutr; lock_CN =<>};
};

109
examples/SUMO/BasicFre.gf Normal file
View File

@@ -0,0 +1,109 @@
--# -path=.:french:romance:abstract:prelude:common
concrete BasicFre of Basic = CatFre - [Text] ** open DictLangFre, CommonRomance, Prelude, ParamBasic,Coordination, ParamX, ResFre,ParadigmsFre in{
lincat
Class = CN ;
El = NP ;
Ind = NP ;
Var = PN ;
SubClass = {} ;
SubClassC = {} ;
Inherits = {} ;
Desc = CN ;
Formula = PolSentence;
[El] = {s1,s2 : Case => Str ; a : Agr};
[Class] = {s1,s2 : Number => Str ; g : Gender};
Stmt = SS;
lin
BaseClass = {s1,s2 = \\_ => "";
g = Masc} ;
ConsClass xs x = consrTable Number comma xs x ** {g = x.g} ;
BaseEl c = {s1,s2 = \\_ => "";
a = agrP3 Masc Sg};
ConsEl cl x xs = {
s1 = \\c => (x.s ! c).comp ++ comma ++ xs.s1 ! c ;
s2 = \\c => xs.s2 ! c ;
a = conjAgr x.a xs.a
} ;
and f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "et" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
or f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "ou" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
not f1 = {s = \\f,c => case c of
{Pos => f1.s ! Indep ! Neg ;
_ => f1.s ! Indep ! Pos };
flag = NothingS; lock_PolSentence = <>};
impl f1 f2 = {s = \\f,c => "si" ++ f1.s ! Indep ! c ++ "alors" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "est" ++ "equivalent" ++ "à" ++ f2.s ! Indep ! c; flag = NothingS;
lock_PolSentence = <>};
var c1 c2 i e = let np = UsePN e in
{s = np.s;
a = agrP3 c1.g Sg;
hasClit = False; lock_NP = <>};
el c1 c2 i e = e ;
exists C f = let np = DetCN (DetQuant IndefArt NumSg) C ;
tel = case C.g of
{Masc => "tel";
_ => "telle"
}
in
{s = \\form,c => case <form, f.flag> of
{ <Indep, ExistS _> => "il" ++ "existe" ++ (np.s ! Nom).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS One> => "et" ++ (np.s ! Nom).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS _> => "," ++ (np.s ! Nom).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,_> => "il" ++ "existe" ++ (np.s ! Nom).comp ++ f.$0 ++ tel ++ "que" ++ f.s ! Indep ! c ;
_ => "et" ++ (np.s ! Nom).comp ++ f.$0 ++ tel ++ "que" ++ f.s ! Indep ! c };
flag = case f.flag of
{ExistS _ => ExistS Many;
_ => ExistS One };
lock_PolSentence=<>};
forall C f = {s = \\form, c => case <form,f.flag> of
{<Indep,ForallS _> => "pour" ++ "chaque" ++ C.s ! Sg ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib,ForallS One> => "," ++ "chaque" ++ C.s ! Sg ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ForallS _> => "," ++ "chaque" ++ C.s ! Sg ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,ExistS _> => "pour" ++"chaque"++ C.s ! Sg ++ f.$0 ++ f.s ! Indep ! c ;
<Indep,_> => "pour" ++"chaque"++ C.s ! Sg ++ f.$0 ++ "il"++ "y" ++ "a" ++ "que" ++ f.s ! Indep ! c ;
<Attrib,ExistS _> => "et" ++ "chaque" ++ C.s ! Sg ++ f.$0 ++ f.s ! Indep ! c;
_ => "and" ++ "every" ++ C.s ! Sg ++ f.$0 ++ "il" ++ "y" ++ "a" ++ "que" ++f.s ! Indep ! c };
flag = case f.flag of
{ForallS _ => ForallS Many;
_ => ForallS One };
lock_PolSentence=<>};
both c1 c2 = {s = \\n => c1.s ! n ++ "et" ++ c2.s ! n;
g = c2.g; lock_CN = <>};
either c1 c2 = {s = \\n => c1.s ! n ++ "ou" ++ c2.s ! n;
g = c2.g; lock_CN = <>};
desc c1 c2 i = c2 ;
descClass c dc = c;
desc2desc c1 c2 i d = d;
subClassStm c1 c2 sc = ss (c1. s ! Sg ++ "est" ++ "une" ++ "sous-classe" ++ "de" ++ c2.s ! Sg) ;
instStm c i = ss ((i.s ! Nom).comp ++ "est" ++ "une" ++ "instance" ++ "de" ++ c.s ! Sg) ;
formStm f = ss (f.s ! Indep ! Pos) ;
subClassCStm c1 c2 constr sc= ss (c1.s ! Sg ++ "est" ++ "une" ++ "sous-classe" ++ "de" ++ c2.s ! Sg ++ "avec" ++ constr.s ! Indep ! Pos) ;
-- lindef
lindef Ind = \x -> heavyNP {s = \\_ => x ; a = agrP3 Masc Sg} ;
lindef El = \x -> heavyNP {s = \\_ => x ; a = agrP3 Masc Sg} ;
lindef Class = \x -> {s = \\n => x;
g = Masc; lock_CN =<>};
};

116
examples/SUMO/BasicRon.gf Normal file
View File

@@ -0,0 +1,116 @@
--# -path=.:romanian:abstract:prelude:common
concrete BasicRon of Basic = CatRon - [Text] ** open DictLangRon,ResRon, Prelude, ParamBasic,Coordination, ParadigmsRon in{
lincat
Class = CN ;
El = NP ;
Ind = NP ;
Var = PN ;
SubClass = {} ;
SubClassC = {} ;
Inherits = {} ;
Desc = CN ;
Formula = PolSentence;
Stmt = SS ;
[El] = {s1,s2 : NCase => Str ; a : Agr; nForm : NForm};
[Class] = {s1,s2 : Number => Species => ACase => Str; g : NGender; a : Animacy ; isComp : Bool};
lin
BaseClass = {s1,s2 = \\_,_,_ => "";
g = NNeut; a = Inanimate; isComp = False} ;
ConsClass xs x = consrTable3 Number Species ACase comma xs x ** {g = x.g; a = x.a; isComp = x.isComp} ;
BaseEl c = {s1,s2 = \\_ => "";
a = agrP3 Masc Sg; nForm = HasRef False};
ConsEl cl x xs = {
s1 = \\c => (x.s ! c).comp ++ comma ++ xs.s1 ! c ;
s2 = \\c => xs.s2 ! c ;
a = conjAgr x.a xs.a ;
nForm = case x.nForm of
{HasClit => xs.nForm ;
_ => HasRef False}
} ;
and f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "şi" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
or f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "sau" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
not f1 = {s = \\f,c => case c of
{Pos => f1.s ! Indep ! Neg ;
_ => f1.s ! Indep ! Pos };
flag = NothingS; lock_PolSentence = <>};
impl f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "implică" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>};
equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "este" ++ "echivalent" ++ "cu" ++ f2.s ! Indep ! c; flag = NothingS;
lock_PolSentence = <>};
el c1 c2 i e = e ;
var c1 c2 i e = let np = UsePN e in
{s = np.s;
a = agrP3 (agrGender c1.g Sg) Sg; indForm = np.indForm ;
nForm = np.nForm; ss = np.ss; isComp = np.isComp ; isPronoun = False;
lock_NP = <>};
exists C f = let np = DetCN (DetQuant IndefArt NumSg) C
in
{s = \\form,c => case <form, f.flag> of
{ <Indep, ExistS _> => "există" ++ (np.s ! No).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS One> => "şi" ++ (np.s ! No).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ExistS _> => "," ++ (np.s ! No).comp ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,_> => "există" ++ (np.s ! No).comp ++ f.$0 ++ "astfel" ++ "ca" ++ f.s ! Indep ! Pos ;
_ => "şi" ++ (np.s ! No).comp ++ f.$0 ++ "astfel" ++ "ca" ++ f.s ! Indep ! Pos };
flag = case f.flag of
{ExistS _ => ExistS Many;
_ => ExistS One };
lock_PolSentence=<>};
forall C f = {s = \\form, c => case <form,f.flag> of
{<Indep,ForallS _> => "pentru" ++ "orice" ++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib,ForallS One > => "şi" ++ "orice" ++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ f.s ! Attrib ! c ;
<Attrib, ForallS _> => "," ++ "orice" ++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ f.s ! Attrib ! c ;
<Indep,ExistS _> => "pentru" ++"orice"++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ f.s ! Indep ! c ;
<Indep,_> => "pentru" ++"orice"++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ "avem" ++ "că" ++ f.s ! Indep ! c ;
<Attrib,ExistS _> => "şi" ++ "orice" ++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ f.s ! Indep ! c;
_ => "şi" ++ "orice" ++ C.s ! Sg ! Indef ! ANomAcc ++ f.$0 ++ "avem" ++ "că" ++f.s ! Indep ! c };
flag = case f.flag of
{ForallS _ => ForallS Many;
_ => ForallS One };
lock_PolSentence=<>};
both c1 c2 = {s = \\c,sp,n => c1.s ! c ! sp ! n ++ "şi" ++ c2.s ! c ! sp ! n;
g = c2.g; a = case c1.a of
{Inanimate => Inanimate;
_ => c2.a };
isComp = orB c1.isComp c2.isComp; lock_CN = <>};
either c1 c2 = {s = \\c,sp,n => c1.s ! c ! sp ! n ++ "sau" ++ c2.s ! c ! sp ! n;
g = c2.g; a = case c1.a of
{Inanimate => Inanimate;
_ => c2.a };
isComp = orB c1.isComp c2.isComp; lock_CN = <>};
subClassStm c1 c2 sc = ss (c1. s ! Sg ! Def ! ANomAcc ++ "este" ++ "o" ++ "subclasã" ++ "a" ++ c2.s ! Sg ! Def ! AGenDat) ;
instStm c i = ss ((i.s ! No).comp ++ "este" ++ "o" ++ "instanþiere" ++ "a" ++ c.s ! Sg ! Def ! AGenDat) ;
formStm f = ss (f.s ! Indep ! Pos) ;
subClassCStm c1 c2 constr sc= ss (c1.s ! Sg ! Def ! ANomAcc ++ "este" ++ "o" ++ "subclasã" ++ "a" ++ c2.s ! Sg ! Def ! AGenDat ++ "unde" ++ constr.s ! Indep ! Pos) ;
desc c1 c2 i = c2 ;
descClass c dc = c;
desc2desc c1 c2 i d = d;
-- lindef
lindef Ind = \x -> mkNP x ("lui" ++ x) x Sg Masc;
lindef El = \x -> mkNP x ("lui" ++ x) x Sg Masc;
lindef Class = \x -> {s = \\n,sp,c => case c of
{AGenDat => "lui" ++ x ;
_ => x};
g = NMasc; a = Animate; isComp=False; lock_CN =<>};
};

View File

@@ -0,0 +1,171 @@
abstract Communications = open Merge, Geography, Mid_level_ontology in{
-- An AMRadioStation is an
-- engineeringSubcomponent of an AMRadioSystem.
fun AMRadioStation : Class ;
fun AMRadioStation_Class : SubClass AMRadioStation RadioStation ;
-- An AMRadioSystem consists of Radios,
-- AMRadioStations, and other components that work together to make
-- AM radio broadcasting possible in a given area.
fun AMRadioSystem : Class ;
fun AMRadioSystem_Class : SubClass AMRadioSystem RadioSystem ;
-- An ArtificialSatellite is a Device
-- that orbits the earth in space and performs various functions such as
-- aiding in communication, photographing the earth's surface, and others.
fun ArtificialSatellite : Class ;
fun ArtificialSatellite_Class : SubClass ArtificialSatellite (both EngineeringComponent Satellite) ;
-- A BroadcastingStation is
-- an engineeringSubcomponent of either a TelevisionSystem or
-- a RadioStation.
fun BroadcastingStation : Class ;
fun BroadcastingStation_Class : SubClass BroadcastingStation (both CommunicationDevice (both EngineeringComponent StationaryArtifact)) ;
-- A CableTelevisionSystem
-- is a CommunicationSystem for cable television.
fun CableTelevisionSystem : Class ;
fun CableTelevisionSystem_Class : SubClass CableTelevisionSystem CommunicationSystem ;
fun CommunicationDevice_EngineeringComponent : SubClass CommunicationDevice EngineeringComponent ;
-- Relatively low power broadcasting
-- devices designed for voice communication among specialized groups
-- in which each receiver also has the power to transmit, unlike
-- broadcast radio where most components transmitting or receiving on
-- a given frequency or set of frequencies are receivers only. This
-- includes unlicensed walkie_talkies, public safety radios, military
-- communication systems and CB radios.
fun CommunicationRadio : Class ;
fun CommunicationRadio_Class : SubClass CommunicationRadio CommunicationDevice ;
-- A CommunicationSatellite is an
-- ArtificialSatellite that serves as one engineeringSubcomponent of a
-- CommunicationSystem.
fun CommunicationSatellite : Class ;
fun CommunicationSatellite_Class : SubClass CommunicationSatellite (both ArtificialSatellite CommunicationDevice) ;
-- An Eutelsat is one type of
-- CommunicationSatellite.
fun Eutelsat : Class ;
fun Eutelsat_Class : SubClass Eutelsat CommunicationSatellite ;
-- A FMRadioStation is an
-- engineeringSubcomponent of an FMRadioSystem.
fun FMRadioStation : Class ;
fun FMRadioStation_Class : SubClass FMRadioStation RadioStation ;
-- A FMRadioSystem consists of Radios,
-- FMRadioStations, and other components that work together to make
-- FM radio broadcasting possible in a given area.
fun FMRadioSystem : Class ;
fun FMRadioSystem_Class : SubClass FMRadioSystem RadioSystem ;
-- An Inmarsat is one type of
-- CommunicationSatellite.
fun Inmarsat : Class ;
fun Inmarsat_Class : SubClass Inmarsat CommunicationSatellite ;
-- An Intelsat is one type of
-- CommunicationSatellite.
fun Intelsat : Class ;
fun Intelsat_Class : SubClass Intelsat CommunicationSatellite ;
-- The Internet is a CommunicationSystem
-- for the rapid delivery of information between computers.
fun Internet : Ind CommunicationSystem ;
-- An InternetServiceProvider
-- serves as an engineeringSubcomponent of the Internet for a given
-- area.
fun InternetServiceProvider : Class ;
fun InternetServiceProvider_Class : SubClass InternetServiceProvider CommunicationSystem ;
-- An InternetUser is an individual who
-- uses the Internet.
fun InternetUser : Ind SocialRole ;
-- An Intersputnik is one type of
-- CommunicationSatellite.
fun Intersputnik : Class ;
fun Intersputnik_Class : SubClass Intersputnik CommunicationSatellite ;
-- A MainTelephoneLine is one
-- engineeringSubcomponent of a TelephoneSystem used for voice communication
-- or computer data transfer.
fun MainTelephoneLine : Class ;
fun MainTelephoneLine_Class : SubClass MainTelephoneLine CommunicationDevice ;
-- A Telephone that can be used without
-- connection to a MainTelephoneLine.
fun MobileCellPhone : Class ;
fun MobileCellPhone_Class : SubClass MobileCellPhone Telephone ;
-- An Orbita is one type of
-- CommunicationSatellite.
fun Orbita : Class ;
fun Orbita_Class : SubClass Orbita CommunicationSatellite ;
-- A RadioStation is an
-- engineeringSubcomponent of a RadioSystem.
fun RadioStation : Class ;
fun RadioStation_Class : SubClass RadioStation BroadcastingStation ;
-- A RadioSystem consists of Radios,
-- RadioStations, and other components that work together to make
-- radio broadcasting possible in a given area.
fun RadioSystem : Class ;
fun RadioSystem_Class : SubClass RadioSystem CommunicationSystem ;
-- A ShortwaveRadioStation
-- is an engineeringSubcomponent of a ShortwaveRadioSystem.
fun ShortwaveRadioStation : Class ;
fun ShortwaveRadioStation_Class : SubClass ShortwaveRadioStation RadioStation ;
-- A ShortwaveRadioSystem consists
-- of Radios, ShortwaveRadioStations, and other components that work
-- together to make shortwave radio broadcasting possible in a given area.
fun ShortwaveRadioSystem : Class ;
fun ShortwaveRadioSystem_Class : SubClass ShortwaveRadioSystem RadioSystem ;
-- A TelephoneSystem consists of a complete
-- interconnection of Telephones, MainTelephoneLines, and other components
-- that work together to make telephonic communication possible from point to
-- point in a given area.
fun TelephoneSystem : Class ;
fun TelephoneSystem_Class : SubClass TelephoneSystem CommunicationSystem ;
fun TelevisionReceiver_EngineeringComponent : SubClass TelevisionReceiver EngineeringComponent ;
-- A TelevisionStation is an
-- engineeringSubcomponent of a TelevisionSystem.
fun TelevisionStation : Class ;
fun TelevisionStation_Class : SubClass TelevisionStation BroadcastingStation ;
-- A system for Broadcasting and
-- receiving television signals.
fun TelevisionSystem : Class ;
fun TelevisionSystem_Class : SubClass TelevisionSystem CommunicationSystem ;
-- The expression
-- (communicationSatelliteForArea ?AREA ?SATELLITE ?INTEGER) means that
-- ?INTEGER number of CommunicationSatellites of the type ?SATELLITE serve
-- as an engineeringSubcomponent of a TelephoneSystem of the GeopoliticalArea
-- ?AREA.
fun communicationSatelliteForArea: El GeopoliticalArea -> Desc Satellite -> El Integer -> Formula ;-- replaced--
-- (internetCountryCode ?AREA ?CODE)
-- relates a GeopoliticalArea to the SymbolicString ?CODE used to
-- identify the ?AREA on internet websites.
fun internetCountryCode : El GeopoliticalArea -> El SymbolicString -> Formula ;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,852 @@
--# -path=.:englishExtended
concrete CountriesAndRegionsEng of CountriesAndRegions = BasicEng ** open ParadigmsEng,NounEng in {
lin
NewJersey = UsePN (mkPN "New Jersey") ;
NewYorkState = UsePN (mkPN "New York") ;
Texas = UsePN (mkPN "Texas") ;
AdanaTurkey = UsePN (mkPN "Adana") ;
AddisAbabaEthiopia = UsePN (mkPN "Addis Ababa") ;
AdenYemen = UsePN (mkPN "Aden") ;
AdoraWestBank = UsePN (mkPN "Adora") ;
AfulaIsrael = UsePN (mkPN "Afula") ;
AgriTurkey = UsePN (mkPN "Agri") ;
AinDeflaAlgeria = UsePN (mkPN "Ain Defla") ;
AinElHajarAlgeria = UsePN (mkPN "Ain el Hajar") ;
AjaccioFrance = UsePN (mkPN "Ajaccio") ;
AlBalamandLebanon = UsePN (mkPN "Al-Balamand ") ;
AleiSinaiGazaStrip = UsePN (mkPN "Alei Sinai") ;
AleiZahavWestBank = UsePN (mkPN "Alei Zahav") ;
AleyLebanon = UsePN (mkPN "Aley") ;
AlgiersAlgeria = UsePN (mkPN "Algiers") ;
AlkhanYurtRussia = UsePN (mkPN "Alkhan-Yurt") ;
AlonMorehWestBank = UsePN (mkPN "Alon Moreh") ;
AmbonIndonesia = UsePN (mkPN "Ambon") ;
AmmanJordan = UsePN (mkPN "Amman") ;
AnNuwaydiratBahrain = UsePN (mkPN "An Nuwaydirat") ;
AndeanSpain = UsePN (mkPN "Andean") ;
AngkorWatCambodia = UsePN (mkPN "Angkor Wat ") ;
AnkaraTurkey = UsePN (mkPN "Ankara") ;
AntalyaTurkey = UsePN (mkPN "Antalya") ;
AntioquiaColombia = UsePN (mkPN "Antioquia") ;
AntwerpBelgium = UsePN (mkPN "Antwerp") ;
ApumiracPeru = UsePN (mkPN "Apumirac") ;
ApureVenezuela = UsePN (mkPN "Apure") ;
AraucaColombia = UsePN (mkPN "Arauca") ;
ArgunRussia = UsePN (mkPN "Argun") ;
ArielWestBank = UsePN (mkPN "Ariel") ;
ArmaghNorthernIreland = UsePN (mkPN "Armagh") ;
ArzewAlgeria = UsePN (mkPN "Arzew") ;
AshdodIsrael = UsePN (mkPN "Ashdod") ;
AskelonIsrael = UsePN (mkPN "Askelon") ;
AsmaraEritrea = UsePN (mkPN "Asmara") ;
AssamIndia = UsePN (mkPN "Assam") ;
AswanEgypt = UsePN (mkPN "Aswan") ;
AsyutEgypt = UsePN (mkPN "Asyut") ;
AthensGreece = UsePN (mkPN "Athens") ;
AtrushIraq = UsePN (mkPN "Atrush") ;
AtzmonaGazaStrip = UsePN (mkPN "Atzmona") ;
AvneiHefetzIsrael = UsePN (mkPN "Avnei Hefetz") ;
AyacuchoPeru = UsePN (mkPN "Ayacucho") ;
AzorIsrael = UsePN (mkPN "Azor") ;
BadVilbelGermany = UsePN (mkPN "Bad Vilbel") ;
BaghdadIraq = UsePN (mkPN "Baghdad") ;
BagreColombia = UsePN (mkPN "Bagre") ;
BahawalpurPakistan = UsePN (mkPN "Bahawalpur") ;
BakaAlGarbiyehIsrael = UsePN (mkPN "Baka al-Garbiyeh") ;
BakkaAlSharkiyaWestBank = UsePN (mkPN "Bakka al-Sharkiya") ;
BakuAzerbaijan = UsePN (mkPN "Baku") ;
BaleEthiopia = UsePN (mkPN "Bale") ;
BanbridgeNorthernIreland = UsePN (mkPN "Banbridge") ;
BangkokThailand = UsePN (mkPN "Bangkok") ;
BangorNorthernIreland = UsePN (mkPN "Bangor") ;
BanguiCentralAfricanRepublic = UsePN (mkPN "Bangui") ;
BarcelonaSpain = UsePN (mkPN "Barcelona") ;
BarkeoCambodia = UsePN (mkPN "Barkeo") ;
BarrancabermejaColombia = UsePN (mkPN "Barrancabermeja") ;
BasraIsrael = UsePN (mkPN "Basra") ;
BatYamIsrael = UsePN (mkPN "Bat Yam") ;
BatmanTurkey = UsePN (mkPN "Batman") ;
BeasainSpain = UsePN (mkPN "Beasain") ;
BeErShevaIsrael = UsePN (mkPN "Be'er Sheva") ;
BeirutLebanon = UsePN (mkPN "Beirut") ;
BeitElWestBank = UsePN (mkPN "Beit El") ;
BeitHaggaiWestBank = UsePN (mkPN "Beit Haggai") ;
BeitSahurWestBank = UsePN (mkPN "Beit Sahur") ;
BeitSheAnIsrael = UsePN (mkPN "Beit She'an") ;
BeitShemeshIsrael = UsePN (mkPN "Beit Shemesh") ;
BeledweyneSomalia = UsePN (mkPN "Beledweyne") ;
BelfastNorthernIreland = UsePN (mkPN "Belfast") ;
BelgradeSerbiaAndMontenegro = UsePN (mkPN "Belgrade") ;
BerlinGermany = UsePN (mkPN "Berlin") ;
BetLeHiyehGazaStrip = UsePN (mkPN "Bet LeHiyeh") ;
BetLidJunctionIsrael = UsePN (mkPN "Bet Lid Junction") ;
BethElIsrael = UsePN (mkPN "Beth El") ;
BethlehemWestBank = UsePN (mkPN "Bethlehem") ;
BidyaWestBank = UsePN (mkPN "Bidya") ;
BilbaoSpain = UsePN (mkPN "Bilbao") ;
BillabonaSpain = UsePN (mkPN "Billabona") ;
BinyaminaIsrael = UsePN (mkPN "Binyamina") ;
BKaotWestBank = UsePN (mkPN "B'kaot") ;
BneiAyishIsrael = UsePN (mkPN "Bnei Ayish") ;
BogotaColombia = UsePN (mkPN "Bogota") ;
BolognaItaly = UsePN (mkPN "Bologna") ;
BonnGermany = UsePN (mkPN "Bonn") ;
BosphorousStraitsTurkey = UsePN (mkPN "BosphorousStraits") ;
BouiraAlgeria = UsePN (mkPN "Bouira") ;
BouzeGueneAlgeria = UsePN (mkPN "Bouze-guene") ;
BrusselsBelgium = UsePN (mkPN "Brussels") ;
BucaramangaColombia = UsePN (mkPN "Bucaramanga") ;
BucharestIndia = UsePN (mkPN "Bucharest") ;
BuenosAiresArgentina = UsePN (mkPN "Buenos Aires") ;
BuinakskRussia = UsePN (mkPN "Buinaksk") ;
BwindiforestUganda = UsePN (mkPN "Bwindi forest") ;
CabindaAngola = UsePN (mkPN "Cabinda") ;
CaglayanTurkey = UsePN (mkPN "Caglayan") ;
CairoEgypt = UsePN (mkPN "Cairo") ;
CalcuttaIndia = UsePN (mkPN "Calcutta") ;
CaliColombia = UsePN (mkPN "Cali") ;
CampZamaJapan = UsePN (mkPN "Camp Zama") ;
CankiriTurkey = UsePN (mkPN "Cankiri") ;
CapeTownSouthAfrica = UsePN (mkPN "Cape Town") ;
CaritasPolandChechnya = UsePN (mkPN "Caritas Poland") ;
CarmelIsrael = UsePN (mkPN "Carmel") ;
CarmenDeBolivarColombia = UsePN (mkPN "Carmen de Bolivar") ;
CarrejonColombia = UsePN (mkPN "Carrejon") ;
ChamanPakistan = UsePN (mkPN "Chaman") ;
ChararESharifIndia = UsePN (mkPN "Charar-e-Sharif ") ;
CharsaadaPakistan = UsePN (mkPN "Charsaada") ;
ChernoRechyeRussia = UsePN (mkPN "Cherno-rechye") ;
ChicagoUnitedStates = UsePN (mkPN "Chicago") ;
ChisimayuSomalia = UsePN (mkPN "Chisimayu") ;
ChittagongBangladesh = UsePN (mkPN "Chittagong") ;
ChobaAngola = UsePN (mkPN "Choba") ;
ChocoColombia = UsePN (mkPN "Choco") ;
ChorrosQueroVenezuela = UsePN (mkPN "Chorros-quero") ;
ClarkAirbasePhilippines = UsePN (mkPN "Clark Airbase") ;
CoimbatoreIndia = UsePN (mkPN "Coimbatore") ;
CologneGermany = UsePN (mkPN "Cologne") ;
ColombiaCityColombia = UsePN (mkPN "Colombia City") ;
ColombiaPanama = UsePN (mkPN "Colombia") ;
ColomboSriLanka = UsePN (mkPN "Colombo") ;
ComayaguaHonduras = UsePN (mkPN "Comayagua") ;
CopacaBanaCuba = UsePN (mkPN "Copaca-bana") ;
CopenhagenDenmark = UsePN (mkPN "Copenhagen") ;
CorsicaFrance = UsePN (mkPN "Corsica") ;
CorteFrance = UsePN (mkPN "Corte") ;
CorumTurkey = UsePN (mkPN "Corum") ;
CundiNamarcaColombia = UsePN (mkPN "Cundi-namarca") ;
CupiaguaColombia = UsePN (mkPN "Cupiagua") ;
CuzcoPeru = UsePN (mkPN "Cuzco") ;
DagestanRussia = UsePN (mkPN "Dagestan") ;
DahukIraq = UsePN (mkPN "Dahuk") ;
DangDistrictNepal = UsePN (mkPN "Dang district") ;
DarEsSalaAmTanzania = UsePN (mkPN "Dar es Sala'am") ;
DarvazTajikistan = UsePN (mkPN "Darvaz") ;
DebaSpain = UsePN (mkPN "Deba") ;
DelhiIndia = UsePN (mkPN "Delhi") ;
DhahranSaudiArabia = UsePN (mkPN "Dhahran") ;
DhakaBangladesh = UsePN (mkPN "Dhaka") ;
DinanFrance = UsePN (mkPN "Dinan") ;
DirNaballahWestBank = UsePN (mkPN "Dir Naballah") ;
DireDawaEthiopia = UsePN (mkPN "Dire Dawa") ;
DistrictOfMansehraPakistan = UsePN (mkPN "district of Mansehra") ;
DjakashariGeorgia = UsePN (mkPN "Djakashari") ;
DjerbaTunisia = UsePN (mkPN "Djerba") ;
DodaIndia = UsePN (mkPN "Doda") ;
DortmundGermany = UsePN (mkPN "Dortmund") ;
DublinIreland = UsePN (mkPN "Dublin") ;
DuesseldorfGermany = UsePN (mkPN "Duesseldorf") ;
DugitGazaStrip = UsePN (mkPN "Dugit") ;
DurangoSpain = UsePN (mkPN "Durango") ;
DushanbeTajikistan = UsePN (mkPN "Dushanbe") ;
DushanbeAirportTajikistan = UsePN (mkPN "Dushanbe airport") ;
DushanbeGarmTajikistan = UsePN (mkPN "Dushanbe Garm") ;
EastJerusalemIsrael = UsePN (mkPN "East Jerusalem") ;
EfratWestBank = UsePN (mkPN "Efrat") ;
EilatIsrael = UsePN (mkPN "Eilat") ;
EinavWestBank = UsePN (mkPN "Einav") ;
ElBagreColombia = UsePN (mkPN "El Bagre") ;
ElBirehWestBank = UsePN (mkPN "El Bireh") ;
ElPlayonColombia = UsePN (mkPN "El Playon") ;
ElRipialApureVenezuela = UsePN (mkPN "El Ripial Apure") ;
ElayoSomalia = UsePN (mkPN "Elayo") ;
ElAzzariyaWestBank = UsePN (mkPN "el-Azzariya") ;
EleiSinaiGazaStrip = UsePN (mkPN "Elei Sinai") ;
EmmanuelWestBank = UsePN (mkPN "Emmanuel") ;
ErezGazaStrip = UsePN (mkPN "Erez") ;
FethiyeAndMarmarisTurkey = UsePN (mkPN "Fethiye and Marmaris") ;
FloridaUnitedStates = UsePN (mkPN "Florida") ;
FormequeColombia = UsePN (mkPN "Formeque") ;
FrankfurtGermany = UsePN (mkPN "Frankfurt") ;
FrenchHillIsrael = UsePN (mkPN "French Hill") ;
FuengirolaSpain = UsePN (mkPN "Fuengirola") ;
FusagasusaColombia = UsePN (mkPN "Fusagasusa") ;
GaliAbkhaziaGeorgia = UsePN (mkPN "Gali Abkhazia") ;
GanimWestBank = UsePN (mkPN "Ganim") ;
GashuriIsrael = UsePN (mkPN "Gashuri ") ;
GeneralSantosPhilippines = UsePN (mkPN "General Santos") ;
GenevaSwitzerland = UsePN (mkPN "Geneva") ;
GetxoSpain = UsePN (mkPN "Getxo") ;
GhalebiehIraq = UsePN (mkPN "Ghalebieh") ;
GhaziabadUttarPradeshIndia = UsePN (mkPN "Ghaziabad Uttar Pradesh") ;
GiloIsrael = UsePN (mkPN "Gilo") ;
GivatZeEvWestBank = UsePN (mkPN "Givat Ze'ev") ;
GizaEgypt = UsePN (mkPN "Giza") ;
GonegalleSriLanka = UsePN (mkPN "Gonegalle") ;
GranadaSpain = UsePN (mkPN "Granada") ;
GrazAustria = UsePN (mkPN "Graz") ;
GroznyChechnya = UsePN (mkPN "Grozny") ;
GuilinChina = UsePN (mkPN "Guilin") ;
GujaratIndia = UsePN (mkPN "Gujarat") ;
GushEtzionWestBank = UsePN (mkPN "Gush Etzion") ;
GushKatifGazaStrip = UsePN (mkPN "Gush Katif") ;
HaderaIsrael = UsePN (mkPN "Hadera") ;
HaifaIsrael = UsePN (mkPN "Haifa") ;
HamburgGermany = UsePN (mkPN "Hamburg") ;
HamisMiliyanaAlgeria = UsePN (mkPN "Hamis Miliyana") ;
HamraWestBank = UsePN (mkPN "Hamra") ;
HannoverGermany = UsePN (mkPN "Hannover") ;
HarBrachaWestBank = UsePN (mkPN "Har Bracha") ;
HarerEthiopia = UsePN (mkPN "Harer") ;
HavanaCuba = UsePN (mkPN "Havana") ;
HawanaIraq = UsePN (mkPN "Hawana") ;
HeartAfghanistan = UsePN (mkPN "Heart") ;
HebronWestBank = UsePN (mkPN "Hebron") ;
HermeshIsrael = UsePN (mkPN "Hermesh") ;
HernaniSpain = UsePN (mkPN "Hernani") ;
HerzliyaIsrael = UsePN (mkPN "Herzliya") ;
HilversumNetherlands = UsePN (mkPN "Hilversum") ;
HizmaWestBank = UsePN (mkPN "Hizma") ;
HodayaJunctionIsrael = UsePN (mkPN "Hodaya Junction") ;
HolonJunctionIsrael = UsePN (mkPN "Holon Junction") ;
HuallgaPeru = UsePN (mkPN "Huallga") ;
HurghadaEgypt = UsePN (mkPN "Hurghada") ;
HyderabadPakistan = UsePN (mkPN "Hyderabad") ;
IbsrilIraq = UsePN (mkPN "Ibsril") ;
IncirlikAirbaseTurkey = UsePN (mkPN "Incirlik Airbase") ;
IpilPhilippines = UsePN (mkPN "Ipil") ;
IrbilIraq = UsePN (mkPN "Irbil") ;
IslamabadPakistan = UsePN (mkPN "Islamabad") ;
IslandOfBaliIndonesia = UsePN (mkPN "Island of Bali") ;
IstanbulTurkey = UsePN (mkPN "Istanbul") ;
ItamarWestBank = UsePN (mkPN "Itamar") ;
IzmirTurkey = UsePN (mkPN "Izmir") ;
JaffaIsrael = UsePN (mkPN "Jaffa") ;
JaffnaSriLanka = UsePN (mkPN "Jaffna") ;
JakartaIndonesia = UsePN (mkPN "Jakarta") ;
JalahIndia = UsePN (mkPN "Jalah") ;
JalpaiguriRailwayStationIndia = UsePN (mkPN "Jalpaiguri Railway Station") ;
JammuIndia = UsePN (mkPN "Jammu") ;
JangasPeru = UsePN (mkPN "Jangas") ;
JeninWestBank = UsePN (mkPN "Jenin") ;
JerusalemIsrael = UsePN (mkPN "Jerusalem") ;
JMainWestBank = UsePN (mkPN "J'main") ;
JohannesburgSouthAfrica = UsePN (mkPN "Johannesburg") ;
JoloPhilippines = UsePN (mkPN "Jolo") ;
JubialSaudiArabia = UsePN (mkPN "Jubial") ;
JullundurIndia = UsePN (mkPN "Jullundur") ;
KabacanPhilippines = UsePN (mkPN "Kabacan") ;
KabulAfghanistan = UsePN (mkPN "Kabul") ;
KafrAkabWestBank = UsePN (mkPN "Kafr Akab") ;
KafrIdnaWestBank = UsePN (mkPN "Kafr Idna") ;
KalkilyaWestBank = UsePN (mkPN "Kalkilya") ;
KalmunaiSriLanka = UsePN (mkPN "Kalmunai") ;
KampalaUganda = UsePN (mkPN "Kampala") ;
KandySriLanka = UsePN (mkPN "Kandy") ;
KanihamaIndia = UsePN (mkPN "Kanihama") ;
KarachiPakistan = UsePN (mkPN "Karachi") ;
KarkurIsrael = UsePN (mkPN "Karkur") ;
KarmeiTzurWestBank = UsePN (mkPN "Karmei Tzur") ;
KarneiShomronWestBank = UsePN (mkPN "Karnei Shomron") ;
KashmirIndia = UsePN (mkPN "Kashmir") ;
KatmanduAirportNepal = UsePN (mkPN "Katmandu Airport") ;
KedumimWestBank = UsePN (mkPN "Kedumim") ;
KedumimSettlementWestBank = UsePN (mkPN "Kedumim Settlement") ;
KfarBaAnehIsrael = UsePN (mkPN "Kfar Ba'aneh") ;
KfarDaromGazaStrip = UsePN (mkPN "Kfar Darom") ;
KfarHessIsrael = UsePN (mkPN "Kfar Hess") ;
KfarSabaIsrael = UsePN (mkPN "Kfar Saba") ;
KfarTzurifWestBank = UsePN (mkPN "Kfar Tzurif") ;
KfarYamGazaStrip = UsePN (mkPN "Kfar Yam") ;
KfarDaromNetzarimIsrael = UsePN (mkPN "Kfar-Darom Netzarim") ;
KhankalaChechnya = UsePN (mkPN "Khankala") ;
KhartoumSudan = UsePN (mkPN "Khartoum") ;
KhelilAlgeria = UsePN (mkPN "Khelil") ;
KhobarSaudiArabia = UsePN (mkPN "Khobar") ;
KibbutzGalEdIsrael = UsePN (mkPN "Kibbutz Gal 'Ed") ;
KibbutzMeravIsrael = UsePN (mkPN "Kibbutz Merav") ;
KibbutzSheluhotIsrael = UsePN (mkPN "Kibbutz Sheluhot") ;
KidapawanPhilippines = UsePN (mkPN "Kidapawan") ;
KigaliRwanda = UsePN (mkPN "Kigali") ;
KirikkaleTurkey = UsePN (mkPN "Kirikkale") ;
KiryatArbaWestBank = UsePN (mkPN "Kiryat Arba") ;
KiryatMotzkinIsrael = UsePN (mkPN "Kiryat Motzkin") ;
KiryatNetafimWestBank = UsePN (mkPN "Kiryat Netafim") ;
KissufimGazaStrip = UsePN (mkPN "Kissufim") ;
KiursehirBoztepTurkey = UsePN (mkPN "Kiursehir-Boztep") ;
KlaiyatLebanon = UsePN (mkPN "Klaiyat") ;
KohlanYemen = UsePN (mkPN "Kohlan") ;
KomsomoLabadTajikistan = UsePN (mkPN "Komsomo-labad") ;
KuwaitCityKuwait = UsePN (mkPN "Kuwait City") ;
LaCeibaHonduras = UsePN (mkPN "La Ceiba") ;
LaGabarraVenezuela = UsePN (mkPN "La Gabarra") ;
LaGuajiraColombia = UsePN (mkPN "La Guajira") ;
LaPazBolivia = UsePN (mkPN "La Paz") ;
LaVictoriaVenezuela = UsePN (mkPN "La Victoria") ;
LahorePakistan = UsePN (mkPN "Lahore") ;
LarbaAlgeria = UsePN (mkPN "Larba") ;
LarnacaCyprus = UsePN (mkPN "Larnaca") ;
LasarteSpain = UsePN (mkPN "Lasarte") ;
LeizaSpain = UsePN (mkPN "Leiza") ;
LesEucalyptusDistrictAlgeria = UsePN (mkPN "Les Eucalyptus district") ;
LibertadorVenezuela = UsePN (mkPN "Libertador") ;
LiceTurkey = UsePN (mkPN "Lice") ;
LIleRousseFrance = UsePN (mkPN "L'Ile-Rousse") ;
LimaPeru = UsePN (mkPN "Lima") ;
LindosRhodes = UsePN (mkPN "Lindos") ;
LinzAustralia = UsePN (mkPN "Linz") ;
LockerbieUnitedKingdom = UsePN (mkPN "Lockerbie") ;
LogornoSpain = UsePN (mkPN "Logorno") ;
LondonUnitedKingdom = UsePN (mkPN "London") ;
LondonberryNorthernIreland = UsePN (mkPN "Londonberry") ;
LosAngelesUnitedStates = UsePN (mkPN "Los Angeles") ;
LosAngelesInternationalAirportUnitedStates = UsePN (mkPN "Los Angeles International Airport") ;
LosBancosVenezuela = UsePN (mkPN "Los Bancos") ;
LosKatiosNationalParkColombia = UsePN (mkPN "Los Katios National Park") ;
LuandaAngola = UsePN (mkPN "Luanda") ;
LuebeckGermany = UsePN (mkPN "Luebeck") ;
LundaNorteAngola = UsePN (mkPN "Lunda Norte") ;
LuxorEgypt = UsePN (mkPN "Luxor") ;
LyonsFrance = UsePN (mkPN "Lyons") ;
MaAlehMichmashWestBank = UsePN (mkPN "Ma'aleh Michmash") ;
MaccabimIsrael = UsePN (mkPN "Maccabim ") ;
MadhuSriLanka = UsePN (mkPN "Madhu") ;
MadrasIndia = UsePN (mkPN "Madras") ;
MadridSpain = UsePN (mkPN "Madrid") ;
MagdalenaColombia = UsePN (mkPN "Magdalena") ;
MaidanSharAfghanistan = UsePN (mkPN "Maidan Shar") ;
MakhachkalaRussia = UsePN (mkPN "Makhachkala") ;
MalagaSpain = UsePN (mkPN "Malaga") ;
MalukkaIslandsIndonesia = UsePN (mkPN "Malukka islands") ;
ManaguaNigeria = UsePN (mkPN "Managua") ;
ManamaBahrain = UsePN (mkPN "Manama") ;
ManchesterUnitedKingdom = UsePN (mkPN "Manchester") ;
MangalsenAndSanpheBagarNepal = UsePN (mkPN "Mangalsen and Sanphe Bagar ") ;
ManilaPhilippines = UsePN (mkPN "Manila") ;
MaonIsrael = UsePN (mkPN "Maon") ;
MapourditSudan = UsePN (mkPN "Mapourdit") ;
MarSabaWestBank = UsePN (mkPN "Mar Saba") ;
MarawiPhilippines = UsePN (mkPN "Marawi") ;
MardanPakistan = UsePN (mkPN "Mardan") ;
MarmarisTurkey = UsePN (mkPN "Marmaris") ;
MarseillesFrance = UsePN (mkPN "Marseilles") ;
MashaWestBank = UsePN (mkPN "Masha") ;
MatsumotoJapan = UsePN (mkPN "Matsumoto") ;
MawdiyahYemen = UsePN (mkPN "Mawdiyah") ;
MeaShearimIsrael = UsePN (mkPN "Mea Shearim") ;
MeccaSaudiArabia = UsePN (mkPN "Mecca") ;
MechoraWestBank = UsePN (mkPN "Mechora") ;
MedanIndonesia = UsePN (mkPN "Medan") ;
MedellinColombia = UsePN (mkPN "Medellin") ;
MegidoIsrael = UsePN (mkPN "Megido") ;
MeholaIsrael = UsePN (mkPN "Mehola") ;
MekholahIsrael = UsePN (mkPN "Mekholah") ;
MersinTurkey = UsePN (mkPN "Mersin") ;
MetaColombia = UsePN (mkPN "Meta") ;
MetullaIsrael = UsePN (mkPN "Metulla") ;
MetzerIsrael = UsePN (mkPN "Metzer") ;
MilanItaly = UsePN (mkPN "Milan") ;
MindanaoPhilippines = UsePN (mkPN "Mindanao") ;
MinharotRoadWestBank = UsePN (mkPN "Minharot Road") ;
MiranShahPakistan = UsePN (mkPN "Miran Shah ") ;
MituColombia = UsePN (mkPN "Mitu") ;
ModiinIllitWestBank = UsePN (mkPN "Modiin Illit") ;
MombassaKenya = UsePN (mkPN "Mombassa") ;
MoragJunctionGazaStrip = UsePN (mkPN "Morag Junction") ;
MoscowRussia = UsePN (mkPN "Moscow") ;
MoshavHagorIsrael = UsePN (mkPN "Moshav Hagor") ;
MoshavTomerWestBank = UsePN (mkPN "Moshav Tomer") ;
MukallahAdenYemen = UsePN (mkPN "Mukallah-Aden") ;
MunchenGladbachGermany = UsePN (mkPN "Munchen-Gladbach") ;
MunsterGermany = UsePN (mkPN "Munster") ;
MurloughNorthernIreland = UsePN (mkPN "Murlough") ;
MusMusIsrael = UsePN (mkPN "Mus Mus") ;
MutataColombia = UsePN (mkPN "Mutata") ;
MutturSriLanka = UsePN (mkPN "Muttur") ;
NaAlinWestBank = UsePN (mkPN "Na'alin") ;
NablusWestBank = UsePN (mkPN "Nablus") ;
NahalOzGazaStrip = UsePN (mkPN "Nahal Oz") ;
NaharaimIsrael = UsePN (mkPN "Naharaim") ;
NahariyaIsrael = UsePN (mkPN "Nahariya") ;
NairobiKenya = UsePN (mkPN "Nairobi") ;
NajafIraq = UsePN (mkPN "Najaf") ;
NallurAreaSriLanka = UsePN (mkPN "Nallur Area") ;
NaquraLebanon = UsePN (mkPN "Naqura") ;
NarayangangBangladesh = UsePN (mkPN "Narayangang") ;
NetanyaIsrael = UsePN (mkPN "Netanya") ;
NetzarimGazaStrip = UsePN (mkPN "Netzarim") ;
NetzerHazaniGazaStrip = UsePN (mkPN "Netzer Hazani") ;
NeveDanielWestBank = UsePN (mkPN "Neve Daniel") ;
NeveYaminIsrael = UsePN (mkPN "Neve Yamin") ;
NewDelhiIndia = UsePN (mkPN "New Delhi") ;
NewYorkCityUnitedStates = UsePN (mkPN "New York City") ;
NeztarimSettlementGazaStrip = UsePN (mkPN "Neztarim Settlement") ;
NiameyNiger = UsePN (mkPN "Niamey") ;
NissanitGazaStrip = UsePN (mkPN "Nissanit") ;
NitzaneiOzWestBank = UsePN (mkPN "Nitzanei Oz") ;
NitzanimIsrael = UsePN (mkPN "Nitzanim") ;
NokdimTekoaRdWestBank = UsePN (mkPN "Nokdim-Tekoa Rd.") ;
NorteDeSantanderColombia = UsePN (mkPN "Norte de Santander") ;
NorthernCaucasiusChechnya = UsePN (mkPN "Northern Caucasius") ;
NovogroznyRussia = UsePN (mkPN "Novogrozny") ;
NovyyAtagiRussia = UsePN (mkPN "Novyy Atagi ") ;
OberwartAustria = UsePN (mkPN "Oberwart") ;
OfraWestBank = UsePN (mkPN "Ofra") ;
OilbaseAlgeria = UsePN (mkPN "Oil base") ;
oilfieldsVenezuela = UsePN (mkPN "oilfields") ;
OkaraPakistan = UsePN (mkPN "Okara") ;
OlayaHerreraColombia = UsePN (mkPN "Olaya Herrera") ;
OmaghNorthernIreland = UsePN (mkPN "Omagh") ;
OrYehudaIsrael = UsePN (mkPN "Or Yehuda") ;
OranAlgeria = UsePN (mkPN "Oran") ;
OsakaJapan = UsePN (mkPN "Osaka") ;
OsloNorway = UsePN (mkPN "Oslo") ;
OssnabruckGermany = UsePN (mkPN "Ossnabruck") ;
OthnielJunctionIsrael = UsePN (mkPN "Othniel Junction") ;
OtnielWestBank = UsePN (mkPN "Otniel") ;
OtzarinWestBank = UsePN (mkPN "Otzarin") ;
OzamisPhilippines = UsePN (mkPN "Ozamis") ;
PahalgamIndia = UsePN (mkPN "Pahalgam") ;
PalorinyaUganda = UsePN (mkPN "Palorinya") ;
PamplonaSpain = UsePN (mkPN "Pamplona") ;
PanamaCityPanama = UsePN (mkPN "Panama City") ;
PantrasGreece = UsePN (mkPN "Pantras") ;
PapayinColombia = UsePN (mkPN "Papayin") ;
PapuaIndonesia = UsePN (mkPN "Papua") ;
ParisFrance = UsePN (mkPN "Paris") ;
PatikulPhilippines = UsePN (mkPN "Patikul") ;
PauFrance = UsePN (mkPN "Pau") ;
PeAtSadehGazaStrip = UsePN (mkPN "Pe'at Sadeh") ;
PeshawarPakistan = UsePN (mkPN "Peshawar") ;
PetahTikvahIsrael = UsePN (mkPN "Petah Tikvah") ;
PhnomPenhCambodia = UsePN (mkPN "Phnom Penh") ;
PortadownIreland = UsePN (mkPN "Portadown") ;
PragueCzechRepublic = UsePN (mkPN "Prague") ;
PuertoAlviraColombia = UsePN (mkPN "Puerto Alvira") ;
PuertoLlerasColombia = UsePN (mkPN "Puerto Lleras") ;
PunjabPakistan = UsePN (mkPN "Punjab") ;
QuettaPakistan = UsePN (mkPN "Quetta") ;
QuitoEcuador = UsePN (mkPN "Quito") ;
RadaAmanYemen = UsePN (mkPN "Rada-Aman") ;
RafahGazaStrip = UsePN (mkPN "Rafah") ;
RamaJunctionWestBank = UsePN (mkPN "Rama Junction") ;
RamalDeAspusanaPeru = UsePN (mkPN "Ramal de Aspusana") ;
RamallahWestBank = UsePN (mkPN "Ramallah") ;
RamatGanIsrael = UsePN (mkPN "Ramat Gan") ;
RaminWestBank = UsePN (mkPN "Ramin") ;
RamleIsrael = UsePN (mkPN "Ramle") ;
RawalpindiPakistan = UsePN (mkPN "Rawalpindi") ;
ReusSpain = UsePN (mkPN "Reus") ;
RigaLatvia = UsePN (mkPN "Riga") ;
RijekaCroatia = UsePN (mkPN "Rijeka") ;
RimalDistrictGazaStrip = UsePN (mkPN "Rimal district") ;
RishonLeZionIsrael = UsePN (mkPN "Rishon Le Zion") ;
RiyadhSaudiArabia = UsePN (mkPN "Riyadh") ;
RoermondNetherlands = UsePN (mkPN "Roermond") ;
RomeItaly = UsePN (mkPN "Rome") ;
RosasSpain = UsePN (mkPN "Rosas") ;
RostovOnDonRussia = UsePN (mkPN "Rostov-on-Don") ;
RuhengeriRwanda = UsePN (mkPN "Ruhengeri") ;
SaadaYemen = UsePN (mkPN "Saada") ;
SabatenaColombia = UsePN (mkPN "Sabatena") ;
SacramentoUnitedStates = UsePN (mkPN "Sacramento") ;
SaintAvoldFrance = UsePN (mkPN "Saint Avold") ;
SaintSebastianSpain = UsePN (mkPN "Saint Sebastian") ;
SaintJeanDeLuzFrance = UsePN (mkPN "Saint-Jean-de-Luz") ;
SairanbarIraq = UsePN (mkPN "Sairanbar") ;
SajaIAGazaStrip = UsePN (mkPN "Saja'i'a ") ;
SallentDeGallegoSpain = UsePN (mkPN "Sallent de Gallego") ;
SamariaWestBank = UsePN (mkPN "Samaria") ;
SamashkiRussia = UsePN (mkPN "Samashki") ;
SanDiegoColombia = UsePN (mkPN "San Diego") ;
SanJoseCostaRica = UsePN (mkPN "San Jose") ;
SanLuisColombia = UsePN (mkPN "San Luis") ;
SanMiguelElSalvador = UsePN (mkPN "San Miguel") ;
SanPabloColombia = UsePN (mkPN "San Pablo") ;
SanSabatianSpain = UsePN (mkPN "San Sabatian") ;
SanaaYemen = UsePN (mkPN "Sanaa") ;
SangaldanIndia = UsePN (mkPN "Sangaldan") ;
SantaMartaColombia = UsePN (mkPN "Santa Marta") ;
SantaPolaSpain = UsePN (mkPN "Santa Pola") ;
SantaRitaMountainsPanama = UsePN (mkPN "Santa Rita Mountains") ;
SantiagoChile = UsePN (mkPN "Santiago") ;
SanurIsrael = UsePN (mkPN "Sanur") ;
SarajevoBosniaAndHerzegovina = UsePN (mkPN "Sarajevo") ;
SatkhiraBangladesh = UsePN (mkPN "Satkhira") ;
SegoviaColombia = UsePN (mkPN "Segovia") ;
SeoulSouthKorea = UsePN (mkPN "Seoul") ;
SevilleSpain = UsePN (mkPN "Seville") ;
ShadmotMeholaWestBank = UsePN (mkPN "Shadmot Mehola") ;
ShaveiShomronWestBank = UsePN (mkPN "Shavei Shomron") ;
SheikhAjlunGazaStrip = UsePN (mkPN "Sheikh Ajlun") ;
ShiloWestBank = UsePN (mkPN "Shilo") ;
ShimiEcuador = UsePN (mkPN "Shimi") ;
ShlomiIsrael = UsePN (mkPN "Shlomi") ;
SidiHalifahLibya = UsePN (mkPN "Sidi Halifah") ;
SidonLebanon = UsePN (mkPN "Sidon") ;
SiirtTurkey = UsePN (mkPN "Siirt") ;
SilatADaharWestBank = UsePN (mkPN "Silat a-Dahar") ;
SipadanIslandMalaysia = UsePN (mkPN "Sipadan Island") ;
SitrahBahrain = UsePN (mkPN "Sitrah") ;
SoporeIndia = UsePN (mkPN "Sopore") ;
SrinagarIndia = UsePN (mkPN "Srinagar") ;
SrinigarIndia = UsePN (mkPN "Srinigar") ;
SriperumbudurIndia = UsePN (mkPN "Sriperumbudur") ;
StewartstownNorthernIreland = UsePN (mkPN "Stewartstown") ;
StockholmSweden = UsePN (mkPN "Stockholm") ;
StrasbourgFrance = UsePN (mkPN "Strasbourg") ;
SukaimaniyahIraq = UsePN (mkPN "Sukai-maniyah") ;
SulawesiIndonesia = UsePN (mkPN "Sulawesi") ;
SulaymaniyahIraq = UsePN (mkPN "Sulaymaniyah") ;
SumayrYemen = UsePN (mkPN "Sumayr") ;
SusiyaWestBank = UsePN (mkPN "Susiya") ;
TailaPakistan = UsePN (mkPN "Taila") ;
TamezGuidaAlgeria = UsePN (mkPN "Tamez-guida") ;
TandySriLanka = UsePN (mkPN "Tandy") ;
TaxilaPakistan = UsePN (mkPN "Taxila") ;
TBilisiGeorgia = UsePN (mkPN "T'bilisi") ;
TegucigalpaHonduras = UsePN (mkPN "Tegucigalpa") ;
TeheranIran = UsePN (mkPN "Teheran") ;
TekoaWestBank = UsePN (mkPN "Tekoa") ;
TelAvivIsrael = UsePN (mkPN "Tel Aviv") ;
--TelAvivIsrael = UsePN (mkPN "Tel-Aviv") ;
TelHaShomerJunctionIsrael = UsePN (mkPN "Tel HaShomer Junction") ;
TelQateifaGazaStrip = UsePN (mkPN "Tel Qateifa") ;
TelRumeiydaIsrael = UsePN (mkPN "Tel Rumeiyda") ;
TelemIsrael = UsePN (mkPN "Telem") ;
TenaWestBank = UsePN (mkPN "Tena") ;
TheHagueNetherlands = UsePN (mkPN "The Hague") ;
TheKyrgyzCapitalBishkekChina = UsePN (mkPN "The Kyrgyz capital Bishkek.") ;
ThekraguriIndia = UsePN (mkPN "Thekraguri") ;
TiaretAlgeria = UsePN (mkPN "Tiaret") ;
TiratAlgeria = UsePN (mkPN "Tirat") ;
TokyoJapan = UsePN (mkPN "Tokyo") ;
TolosaSpain = UsePN (mkPN "Tolosa") ;
TopkakiTurkey = UsePN (mkPN "Topkaki") ;
TrabzonTurkey = UsePN (mkPN "Trabzon") ;
TrincomaleeHarborSriLanka = UsePN (mkPN "Trincomalee Harbor") ;
TripoliLibya = UsePN (mkPN "Tripoli") ;
TulkaremWestBank = UsePN (mkPN "Tulkarem") ;
TulkarmWestBank = UsePN (mkPN "Tulkarm") ;
TunceliTurkey = UsePN (mkPN "Tunceli") ;
TurbatPakistan = UsePN (mkPN "Turbat") ;
UmAlFahmIsrael = UsePN (mkPN "Um al-Fahm") ;
UmmQasrIraq = UsePN (mkPN "Umm Qasr") ;
UrenaVenezuela = UsePN (mkPN "Urena") ;
UrraColombia = UsePN (mkPN "Urra") ;
UrsMartanRussia = UsePN (mkPN "Urs-Martan") ;
UWaIndianReservationColombia = UsePN (mkPN "U'wa Indian reservation") ;
ValenciaSpain = UsePN (mkPN "Valencia") ;
ValleduparColombia = UsePN (mkPN "Valledupar") ;
VanTurkey = UsePN (mkPN "Van") ;
VavuniyaSriLanka = UsePN (mkPN "Vavuniya") ;
ViennaAustria = UsePN (mkPN "Vienna") ;
VientianeLaos = UsePN (mkPN "Vientiane") ;
VillavicencioColombia = UsePN (mkPN "Villavicencio") ;
VitoriaSpain = UsePN (mkPN "Vitoria") ;
VitrollesFrance = UsePN (mkPN "Vitrolles") ;
VladikavkazRussia = UsePN (mkPN "Vladikavkaz") ;
VladivostokRussia = UsePN (mkPN "Vladivostok") ;
VolgodonskRussia = UsePN (mkPN "Volgodonsk") ;
WadiAlDabaatYemen = UsePN (mkPN "Wadi al-Dabaat") ;
WadiAraIsrael = UsePN (mkPN "Wadi Ara") ;
WadiKeltWestBank = UsePN (mkPN "Wadi Kelt") ;
WarsawPoland = UsePN (mkPN "Warsaw") ;
WashingtonDCUnitedStates = UsePN (mkPN "Washington DC.") ;
WattyanBahrain = UsePN (mkPN "Wattyan") ;
WestBeirutLebanon = UsePN (mkPN "West Beirut") ;
XiAnChina = UsePN (mkPN "Xi'an") ;
YaAbadWestBank = UsePN (mkPN "Ya'abad") ;
YagurJunctionIsrael = UsePN (mkPN "Yagur Junction") ;
YehudIsrael = UsePN (mkPN "Yehud") ;
YerevanArmenia = UsePN (mkPN "Yerevan") ;
YitzharWestBank = UsePN (mkPN "Yitzhar") ;
YokotaJapan = UsePN (mkPN "Yokota") ;
YopalColombia = UsePN (mkPN "Yopal") ;
YuksekovaTurkey = UsePN (mkPN "Yuksekova") ;
ZaitaIsrael = UsePN (mkPN "Zaita") ;
ZamarYemen = UsePN (mkPN "Zamar") ;
ZamboangaPhilippines = UsePN (mkPN "Zamboanga") ;
ZaragozaSpain = UsePN (mkPN "Zaragoza") ;
ZarauzSpain = UsePN (mkPN "Zarauz") ;
ZeifIntersectionWestBank = UsePN (mkPN "Zeif intersection") ;
ZekharyaIsrael = UsePN (mkPN "Zekharya") ;
ZuliaColombia = UsePN (mkPN "Zulia") ;
ZumaiaSpain = UsePN (mkPN "Zumaia") ;
ZumarragaSpain = UsePN (mkPN "Zumarraga") ;
Burundi = UsePN (mkPN "Burundi") ;
CentralAfricanRepublic = UsePN (mkPN "Central African Republic") ;
Chad = UsePN (mkPN "Chad") ;
DemocraticRepublicOfTheCongo = UsePN (mkPN "Democratic Republic of the Congo") ;
Rwanda = UsePN (mkPN "Rwanda") ;
Djibouti = UsePN (mkPN "Djibouti") ;
Eritrea = UsePN (mkPN "Eritrea") ;
Ethiopia = UsePN (mkPN "Ethiopia") ;
Kenya = UsePN (mkPN "Kenya") ;
Seychelles = UsePN (mkPN "Seychelles") ;
Somalia = UsePN (mkPN "Somalia") ;
Tanzania = UsePN (mkPN "Tanzania") ;
Uganda = UsePN (mkPN "Uganda") ;
Algeria = UsePN (mkPN "Algeria") ;
Egypt = UsePN (mkPN "Egypt") ;
Libya = UsePN (mkPN "Libya") ;
Mauritania = UsePN (mkPN "Mauritania") ;
Morocco = UsePN (mkPN "Morocco") ;
Sudan = UsePN (mkPN "Sudan") ;
Tunisia = UsePN (mkPN "Tunisia") ;
WesternSahara = UsePN (mkPN "Western Sahara") ;
Angola = UsePN (mkPN "Angola") ;
BassasDaIndia = UsePN (mkPN "Bassas da India") ;
Botswana = UsePN (mkPN "Botswana") ;
BouvetIsland = UsePN (mkPN "Bouvet Island") ;
Comoros = UsePN (mkPN "Comoros") ;
EuropaIsland = UsePN (mkPN "Europa Island") ;
GloriosoIslands = UsePN (mkPN "Glorioso Islands") ;
HeardIslandAndMcDonaldIslands = UsePN (mkPN "Heard Island and McDonald Islands") ;
JuanDeNovaIsland = UsePN (mkPN "Juan de Nova Island") ;
Lesotho = variants (UsePN (mkPN "Lesotho")) (UsePN (mkPN "Basutoland")) ;
Madagascar = UsePN (mkPN "Madagascar") ;
Malawi = UsePN (mkPN "Malawi") ;
Mauritius = UsePN (mkPN "Mauritius") ;
Mayotte = UsePN (mkPN "Mayotte") ;
Mozambique = UsePN (mkPN "Mozambique") ;
Namibia = UsePN (mkPN "Namibia") ;
Reunion = UsePN (mkPN "Reunion") ;
SouthAfrica = UsePN (mkPN "South Africa") ;
Swaziland = UsePN (mkPN "Swaziland") ;
TromelinIsland = UsePN (mkPN "Tromelin Island") ;
Zambia = UsePN (mkPN "Zambia") ;
Zimbabwe = UsePN (mkPN "Zimbabwe") ;
Benin = UsePN (mkPN "Benin") ;
BurkinaFaso = UsePN (mkPN "Burkina Faso") ;
Cameroon = UsePN (mkPN "Cameroon") ;
CapeVerde = UsePN (mkPN "Cape Verde") ;
CoteDIvoire = UsePN (mkPN "Cote d'Ivoire") ;
EquatorialGuinea = UsePN (mkPN "Equatorial Guinea") ;
Gabon = UsePN (mkPN "Gabon") ;
Gambia = UsePN (mkPN "Gambia") ;
Ghana = UsePN (mkPN "Ghana") ;
Guinea = UsePN (mkPN "Guinea") ;
GuineaBissau = UsePN (mkPN "Guinea Bissau") ;
Liberia = UsePN (mkPN "Liberia") ;
Mali = UsePN (mkPN "Mali") ;
Niger = UsePN (mkPN "Niger") ;
Nigeria = UsePN (mkPN "Nigeria") ;
SaoTomeAndPrincipe = UsePN (mkPN "Sao Tome and Principe") ;
Senegal = UsePN (mkPN "Senegal") ;
SierraLeone = UsePN (mkPN "Sierra Leone") ;
Togo = UsePN (mkPN "Togo") ;
SaintHelena = UsePN (mkPN "Saint Helena") ;
Bahrain = UsePN (mkPN "Bahrain") ;
Cyprus = UsePN (mkPN "Cyprus") ;
GazaStrip = UsePN (mkPN "Gaza Strip") ;
Iran = UsePN (mkPN "Iran") ;
Iraq = UsePN (mkPN "Iran") ;
Israel = UsePN (mkPN "Israel") ;
Jordan = UsePN (mkPN "Jordan") ;
Kuwait = UsePN (mkPN "Kuwait") ;
Lebanon = UsePN (mkPN "Lebanon") ;
Oman = UsePN (mkPN "Oman") ;
Qatar = UsePN (mkPN "Qatar") ;
SaudiArabia = UsePN (mkPN "Saudi Arabia") ;
Syria = UsePN (mkPN "Syria") ;
UnitedArabEmirates = UsePN (mkPN "United Arab Emirates") ;
WestBank = UsePN (mkPN "West Bank") ;
Yemen = UsePN (mkPN "Yemen") ;
Austria = UsePN (mkPN "Austria") ;
CzechRepublic = UsePN (mkPN "Czech Republic") ;
Germany = UsePN (mkPN "Germany") ;
Hungary = UsePN (mkPN "Hungary") ;
Liechtenstein = UsePN (mkPN "Liechtenstein") ;
Poland = UsePN (mkPN "Poland") ;
Slovakia = UsePN (mkPN "Slovakia") ;
Slovenia = UsePN (mkPN "Slovenia") ;
Switzerland = UsePN (mkPN "Switzerland") ;
Belarus = UsePN (mkPN "Belarus") ;
Estonia = UsePN (mkPN "Estonia") ;
Latvia = UsePN (mkPN "Latvia") ;
Lithuania = UsePN (mkPN "Lithuania") ;
Moldova = UsePN (mkPN "Moldova") ;
Ukraine = UsePN (mkPN "Ukraine") ;
Denmark = UsePN (mkPN "Denmark") ;
FaroeIslands = UsePN (mkPN "Faroe Islands") ;
Finland = UsePN (mkPN "Finland") ;
Iceland = UsePN (mkPN "Iceland") ;
JanMayenIsland = UsePN (mkPN "Jan Mayen Island") ;
Norway = UsePN (mkPN "Norway") ;
Svalbard = UsePN (mkPN "Svalbard") ;
Sweden = UsePN (mkPN "Sweden") ;
Greece = UsePN (mkPN "Greece") ;
HolySee = UsePN (mkPN "Holy See") ;
Italy = UsePN (mkPN "Italy") ;
Malta = UsePN (mkPN "Malta") ;
SanMarino = UsePN (mkPN "San Marino") ;
Belgium = UsePN (mkPN "Belgium") ;
France = UsePN (mkPN "France") ;
Guernsey = UsePN (mkPN "Guernsey") ;
Ireland = UsePN (mkPN "Ireland") ;
Jersey = UsePN (mkPN "Jersey") ;
Luxembourg = UsePN (mkPN "Luxembourg") ;
IsleOfMan = UsePN (mkPN "Isle of Man") ;
Monaco = UsePN (mkPN "Monaco") ;
Netherlands = UsePN (mkPN "Netherlands") ;
UnitedKingdom = UsePN (mkPN "United Kingdom of Great Britain and Northern Ireland") ;
--UnitedKingdom = UsePN (mkPN "United Kingdom") ;
--UnitedKingdom = UsePN (mkPN "Great Britain") ;
Albania = UsePN (mkPN "Albania") ;
BosniaAndHerzegovina = UsePN (mkPN "Bosnia and Herzegovina") ;
Bulgaria = UsePN (mkPN "Bulgaria") ;
Croatia = UsePN (mkPN "Croatia") ;
Macedonia = UsePN (mkPN "Macedonia") ;
Romania = UsePN (mkPN "Romania") ;
Turkey = UsePN (mkPN "Turkey") ;
SerbiaAndMontenegro = UsePN (mkPN "Serbia and Montenegro") ;
Andorra = UsePN (mkPN "Andorra") ;
Gibraltar = UsePN (mkPN "Gibraltar") ;
Portugal = UsePN (mkPN "Portugal") ;
Spain = UsePN (mkPN "Spain") ;
Bermuda = UsePN (mkPN "Bermuda") ;
UnitedStates = UsePN (mkPN "United States") ;
Canada = UsePN (mkPN "Canada") ;
Greenland = UsePN (mkPN "Greenland") ;
SaintPierreAndMiquelon = UsePN (mkPN "Saint Pierre and Miquelon") ;
Anguilla = UsePN (mkPN "Anguilla") ;
AntiguaAndBarbuda = UsePN (mkPN "Antigua and Barbuda") ;
Aruba = UsePN (mkPN "Aruba") ;
TheBahamas = UsePN (mkPN "Bahamas") ;
Barbados = UsePN (mkPN "Barbados") ;
BritishVirginIslands = UsePN (mkPN "British Virgin Islands") ;
CaymanIslands = UsePN (mkPN "Cayman Islands") ;
Cuba = UsePN (mkPN "Cuba") ;
Dominica = UsePN (mkPN "Dominica") ;
DominicanRepublic = UsePN (mkPN "Dominican Republic") ;
Grenada = UsePN (mkPN "Grenada") ;
Guadeloupe = UsePN (mkPN "Guadeloupe") ;
Haiti = UsePN (mkPN "Haiti") ;
Jamaica = UsePN (mkPN "Jamaica") ;
Martinique = UsePN (mkPN "Martinique") ;
Montserrat = UsePN (mkPN "Montserrat") ;
NavassaIsland = UsePN (mkPN "Navassa Island") ;
NetherlandsAntilles = UsePN (mkPN "Netherlands Antilles") ;
PuertoRico = UsePN (mkPN "Puerto Rico") ;
SaintKittsAndNevis = UsePN (mkPN "Saint Kitts and Nevis") ;
SaintLucia = UsePN (mkPN "Saint Lucia") ;
SaintVincentAndTheGrenadines = UsePN (mkPN "Saint Vincent and the Grenadines") ;
TrinidadAndTobago = UsePN (mkPN "Trinidad and Tobago") ;
TurksAndCaicosIslands = UsePN (mkPN "Turks and Caicos Islands") ;
VirginIslands = UsePN (mkPN "Virgin Islands") ;
Belize = UsePN (mkPN "Belize") ;
ClippertonIsland = UsePN (mkPN "Clipperton Island") ;
CostaRica = UsePN (mkPN "Costa Rica") ;
ElSalvador = UsePN (mkPN "El Salvador") ;
Guatemala = UsePN (mkPN "Guatemala") ;
Honduras = UsePN (mkPN "Honduras") ;
Mexico = UsePN (mkPN "Mexico") ;
Nicaragua = UsePN (mkPN "Nicaragua") ;
Panama = UsePN (mkPN "Panama") ;
Bolivia = UsePN (mkPN "Bolivia") ;
Paraguay = UsePN (mkPN "Paraguay") ;
Brazil = UsePN (mkPN "Brazil") ;
Colombia = UsePN (mkPN "Colombia") ;
FrenchGuiana = UsePN (mkPN "French Guiana") ;
Guyana = UsePN (mkPN "Guyana") ;
Suriname = UsePN (mkPN "Suriname") ;
Venezuela = UsePN (mkPN "Venezuela") ;
Argentina = UsePN (mkPN "Argentina") ;
Chile = UsePN (mkPN "Chile") ;
FalklandIslands = UsePN (mkPN "Falkland Islands") ;
SouthGeorgiaAndTheSouthSandwichIslands = UsePN (mkPN "South Georgia and the South Sandwich Islands") ;
Uruguay = UsePN (mkPN "Uruguay") ;
Ecuador = UsePN (mkPN "Ecuador") ;
Peru = UsePN (mkPN "Peru") ;
Kazakhstan = UsePN (mkPN "Kazakhstan") ;
Kyrgyzstan = UsePN (mkPN "Kyrgyzstan") ;
Tajikistan = UsePN (mkPN "Tajikistan") ;
Turkmenistan = UsePN (mkPN "Turkmenistan") ;
Uzbekistan = UsePN (mkPN "Uzbekistan") ;
China = UsePN (mkPN "China") ;
HongKong = UsePN (mkPN "Hong Kong") ;
Japan = UsePN (mkPN "Japan") ;
NorthKorea = UsePN (mkPN "NorthKorea") ;
SouthKorea = UsePN (mkPN "SouthKorea") ;
Macau = UsePN (mkPN "Macau") ;
Taiwan = UsePN (mkPN "Taiwan") ;
--Taiwan = UsePN (mkPN "Republic of China") ;
Mongolia = UsePN (mkPN "Mongolia") ;
Russia = UsePN (mkPN "Russia") ;
Afghanistan = UsePN (mkPN "Afghanistan") ;
Bangladesh = UsePN (mkPN "Bangladesh") ;
Bhutan = UsePN (mkPN "Bhutan") ;
BritishIndianOceanTerritory = UsePN (mkPN "British Indian Ocean Territory") ;
India = UsePN (mkPN "India") ;
Maldives = UsePN (mkPN "Maldives") ;
Nepal = UsePN (mkPN "Nepal") ;
Pakistan = UsePN (mkPN "Pakistan") ;
SriLanka = UsePN (mkPN "Sri Lanka") ;
FrenchSouthernAndAntarcticLands = UsePN (mkPN "French Southern and Antarctic Lands") ;
AshmoreAndCartierIslands = UsePN (mkPN "Ashmore and Cartier Islands") ;
Brunei = UsePN (mkPN "Brunei") ;
Cambodia = UsePN (mkPN "Cambodia") ;
ChristmasIsland = UsePN (mkPN "Christmas Island") ;
CocosKeelingIslands = UsePN (mkPN "Cocos Keeling Islands") ;
EastTimor = UsePN (mkPN "East Timor") ;
Indonesia = UsePN (mkPN "Indonesia") ;
Laos = UsePN (mkPN "Laos") ;
Malaysia = UsePN (mkPN "Malaysia") ;
Myanmar = UsePN (mkPN "Myanmar") ;
PapuaNewGuinea = UsePN (mkPN "Papua New Guinea") ;
ParacelIslands = UsePN (mkPN "Paracel Islands") ;
Philippines = UsePN (mkPN "Philippines") ;
Singapore = UsePN (mkPN "Singapore") ;
SpratlyIslands = UsePN (mkPN "Spratly Islands") ;
Thailand = UsePN (mkPN "Thailand") ;
Vietnam = UsePN (mkPN "Vietnam") ;
Armenia = UsePN (mkPN "Armenia") ;
Azerbaijan = UsePN (mkPN "Azerbaijan") ;
RepublicOfGeorgia = UsePN (mkPN "Republic Of Georgia") ;
AmericanSamoa = UsePN (mkPN "American Samoa") ;
Australia = UsePN (mkPN "Australia") ;
BakerIsland = UsePN (mkPN "Baker Island") ;
CookIslands = UsePN (mkPN "Cook Islands") ;
CoralSeaIslands = UsePN (mkPN "Coral Sea Islands") ;
Fiji = UsePN (mkPN "Fiji") ;
FrenchPolynesia = UsePN (mkPN "French Polynesia") ;
Guam = UsePN (mkPN "Guam") ;
HowlandIsland = UsePN (mkPN "Howland Island") ;
JarvisIsland = UsePN (mkPN "Jarvis Island") ;
JohnstonAtoll = UsePN (mkPN "Johnston Atoll") ;
KingmanReef = UsePN (mkPN "Kingman Reef") ;
Kiribati = UsePN (mkPN "Kiribati") ;
MarshallIslands = UsePN (mkPN "Marshall Islands") ;
Micronesia = UsePN (mkPN "Micronesia") ;
MidwayIslands = UsePN (mkPN "Midway Islands") ;
Nauru = UsePN (mkPN "Nauru") ;
NewCaledonia = UsePN (mkPN "New Caledonia") ;
NewZealand = UsePN (mkPN "New Zealand") ;
Niue = UsePN (mkPN "Niue") ;
NorfolkIsland = UsePN (mkPN "Norfolk Island") ;
NorthernMarianaIslands = UsePN (mkPN "Northern Mariana Islands") ;
Palau = UsePN (mkPN "Palau") ;
PalmyraAtoll = UsePN (mkPN "Palmyra Atoll") ;
PitcairnIslands = UsePN (mkPN "Pitcairn Islands") ;
Samoa = UsePN (mkPN "Samoa") ;
SolomonIslands = UsePN (mkPN "Solomon Islands") ;
Tokelau = UsePN (mkPN "Tokelau") ;
Tonga = UsePN (mkPN "Tonga") ;
Tuvalu = UsePN (mkPN "Tuvalu") ;
Vanuatu = UsePN (mkPN "Vanuatu") ;
WakeIsland = UsePN (mkPN "Wake Island") ;
WallisAndFutuna = UsePN (mkPN "Wallis and Futuna") ;
};

2373
examples/SUMO/Economy.gf Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

3062
examples/SUMO/Geography.gf Normal file

File diff suppressed because it is too large Load Diff

1856
examples/SUMO/Government.gf Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,98 @@
--# -path=.:englishExtended
abstract HigherOrder = Merge ** {
fun SingleValuedRelation : (c : Class) -> (El c -> Formula) -> Formula;
def SingleValuedRelation c f = forall c (\x -> forall c (\y -> impl (and (f (var c c ? x)) (f (var c c ? y))) (equal (var c Entity ? x) (var c Entity ? y))));
fun AntisymmetricRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def AntisymmetricRelation c f = forall c (\x -> forall c (\y -> impl (and (f (var c c ? x) (var c c ? y)) (f (var c c ? y) (var c c ? x))) (equal (var c Entity ? x) (var c Entity ? y))));
fun IntentionalRelation : (c1,c2 : Class) -> (El c1 -> El c2 -> Formula) -> Formula ;
def IntentionalRelation c1 c2 f = forall c1 (\x -> forall c2 (\y -> inScopeOfInterest (var c1 CognitiveAgent ? x) (var c2 Entity ? y)));
-- assume binary predicate, since it is mostly used for that
fun ReflexiveRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def ReflexiveRelation c f = forall c (\x -> f (var c c ? x) (var c c ? x));
fun SymmetricRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def SymmetricRelation c f = forall c (\x -> forall c(\y -> impl (f (var c c ? x) (var c c ? y)) (f (var c c ? y) (var c c ? x))));
fun EquivalenceRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def EquivalenceRelation c f = and (and (ReflexiveRelation c f) (SymmetricRelation c f)) (TransitiveRelation c f);
fun TransitiveRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def TransitiveRelation c f = forall c (\x -> forall c (\y -> forall c(\z -> impl (and (f (var c c ? x) (var c c ? y)) (f (var c c ? y) (var c c ? z))) (f (var c c ? x) (var c c ? z)))));
fun IrreflexiveRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def IrreflexiveRelation c f = forall c (\x -> not (f (var c c ? x) (var c c ? x)));
fun AsymmetricRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def AsymmetricRelation c f = and (AntisymmetricRelation c f) (IrreflexiveRelation c f);
fun PropositionalAttitude : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def PropositionalAttitude c f = (AsymmetricRelation c f);
fun ObjectAttitude : (c1,c2 : Class) -> (El c1 -> El c2 -> Formula) -> Formula ;
def ObjectAttitude c1 c2 f = IntentionalRelation c1 c2 f ;
fun IntransitiveRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def IntransitiveRelation c f = forall c (\x -> forall c (\y -> forall c(\z -> impl (and (f (var c c ? x) (var c c ? y)) (f (var c c ? y) (var c c ? z))) (not (f (var c c ? x) (var c c ? z))))));
fun PartialOrderingRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def PartialOrderingRelation c f = and (and (TransitiveRelation c f) (AntisymmetricRelation c f)) (ReflexiveRelation c f);
fun TrichotomizingRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def TrichotomizingRelation c f = forall c (\x -> forall c (\y ->
or
(or
(and
(and (f (var c c ? x) (var c c ? y))
(not (equal (var c Entity ? x) (var c Entity ? y))))
(not (f (var c c ? y) (var c c ? x))))
(and
(and (not (f (var c c ? x) (var c c ? y)))
(equal (var c Entity ? x) (var c Entity ? y)))
(not (f (var c c ? y) (var c c ? x)))))
(and
(and (f (var c c ? y) (var c c ? x))
(not (equal (var c Entity ? x) (var c Entity ? y))))
(not (f (var c c ? x) (var c c ? y))))));
fun TotalOrderingRelation : (c : Class) -> (El c -> El c -> Formula) -> Formula ;
def TotalOrderingRelation c f = and (PartialOrderingRelation c f) (TrichotomizingRelation c f) ;
fun OneToOneFunction : (c1, c2 : Class) -> (El c1 -> Ind c2) -> Formula ;
def OneToOneFunction c1 c2 f = forall c1(\x ->
forall c1(\y -> impl (not(equal (var c1 Entity ? x) (var c1 Entity ? y))) (not (equal (el c2 Entity ? (f (var c1 c1 ? x))) (el c2 Entity ? (f (var c1 c1 ? y)))))));
fun SequenceFunction : (c : Class) -> (El Integer -> Ind c) -> Formula ;
def SequenceFunction c f = OneToOneFunction Integer c f ;
fun AssociativeFunction : (c : Class) -> (El c -> El c -> Ind c) -> Formula ;
def AssociativeFunction c f = forall c(\x ->
forall c(\y ->
forall c(\z -> equal (el c Entity ? (f (var c c ? x) (el c c ? (f (var c c ? y) (var c c ? z))))) (el c Entity ? (f (el c c ? (f (var c c ? x) (var c c ? y))) (var c c ? z))))));
fun CommutativeFunction : (c1,c2 : Class) -> (El c1 -> El c1 -> Ind c2) -> Formula ;
def CommutativeFunction c1 c2 f = forall c1 (\x ->
forall c1 (\y ->
equal (el c2 Entity ? (f (var c1 c1 ? x) (var c1 c1 ? y))) (el c2 Entity ? (f (var c1 c1 ? y) (var c1 c1 ? y)))));
fun identityElement : (c : Class) -> (El c -> El c -> Ind c) -> El c -> Formula ;
def identityElement c f elem = forall c(\x -> equal (el c Entity ? (f (var c c ? x) elem)) (var c Entity ? x));
fun distributes : (c : Class) -> (El c -> El c -> Ind c) -> (El c -> El c -> Ind c) -> Formula ;
def distributes c f g = forall c (\x -> forall c (\y -> forall c (\z -> equal (el c Entity ? (g (el c c ? (f (var c c ? x) (var c c ? y))) (var c c ? z))) (el c Entity ? (f (el c c ? (g (var c c ? x) (var c c ? z))) (el c c ? (g (var c c ? y) (var c c ? z))))))));
fun inverse : (c : Class) -> (El c -> El c -> Formula) -> (El c -> El c -> Formula) -> Formula ;
def inverse c f g = forall c (\x -> forall c (\y -> equiv (f (var c c ? x) (var c c ? y)) (g (var c c ? y) (var c c ? x))));
fun subRelation2El : (c1,c2,c3,c4 : Class) -> (El c1 -> El c2 -> Formula) -> (El c3 -> El c4 -> Formula) -> Formula ;
def subRelation2El c1 c2 c3 c4 f g = forall c1 (\x -> forall c2 (\y -> impl (f (var c1 c1 ? x) (var c2 c2 ? y)) (g (var c1 c3 ? x) (var c2 c4 ? y))));
fun KappaFn : (c : Class) -> (Ind c -> Formula) -> Class ;
};

View File

@@ -0,0 +1,21 @@
--# -path=.:englishExtended
concrete HigherOrderEng of HigherOrder = BasicEng ** open DictLangEng, DictEng, ParadigmsEng, ResEng, ParamBasic in {
lin
AsymmetricRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA asymmetric_A) (UseN relation_N)))))) ;
EquivalenceRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN equivalence_N) (MassNP (UseN relation_N))))))) ;
IntransitiveRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA intransitive_A) (UseN relation_N)))))) ;
-- OneToOneFunction c1 c2 f = mkPolSent(PredVP f (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdvCN (UseN one_N) (PrepNP to_Prep (DetCN (DetQuant IndefArt (NumCard (NumNumeral (num (pot2as3 (pot1as2 (pot0as1 pot01))))))) (UseN function_N)))))))) ;
PartialOrderingRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA partial_A) (ApposCN (UseN2 (VerbToNounV2 order_V2)) (MassNP (UseN relation_N)))))))) ;
SequenceFunction c f = mkPolSent(PredVP f (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sequence_N) (MassNP (UseN function_N))))))) ;
ReflexiveRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA reflexive_A) (UseN relation_N)))))) ;
SymmetricRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA symmetric_A) (UseN relation_N)))))) ;
TotalOrderingRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA total_A) (ApposCN (UseN2 (VerbToNounV2 order_V2)) (MassNP (UseN relation_N)))))))) ;
TransitiveRelation c f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA transitive_A) (UseN relation_N)))))) ;
IntentionalRelation c1 c2 f = mkPolSent(PredVP (sentToNoun f) (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA intentional_A) (UseN relation_N)))))) ;
subRelation2El c1 c2 c3 c4 f g = mkPolSent (PredVP (sentToNoun f) (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN relation_N)))))) (PrepNP part_Prep (sentToNoun g)))) ;
identityElement c f elem = mkPolSent (PredVP elem (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN identity_N) (MassNP (UseN element_N)))))) (PrepNP part_Prep f))) ;
inverse c f g = mkPolSent (PredVP (sentToNoun f) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN inverse_N)))) (PrepNP part_Prep (sentToNoun g)))) ;
};

6829
examples/SUMO/Merge.gf Normal file

File diff suppressed because it is too large Load Diff

990
examples/SUMO/MergeEng.gf Normal file
View File

@@ -0,0 +1,990 @@
concrete MergeEng of Merge = BasicEng ** open DictLangEng, DictEng, ParadigmsEng, ResEng, ParamBasic in {
lin
-- single instances
AngularDegree = MassNP (AdjCN (PositA angular_A) (UseN degree_N)) ;
AtomGram = MassNP (ApposCN (UseN atom_N) (MassNP (UseN gram_N))) ;
Bit = MassNP (UseN bit_N) ;
Black = MassNP (UseN black_N) ;
Blue = MassNP (UseN blue_N) ;
BritishThermalUnit = MassNP (AdjCN (PositA british_A) (AdjCN (PositA thermal_A) (UseN unit_N))) ;
Calorie = MassNP (UseN calorie_N) ;
Ampere = MassNP (UseN ampere_N) ;
Joule = MassNP (UseN joule_N) ;
Watt = MassNP (UseN watt_N) ;
Volt = MassNP (UseN volt_N) ;
Ohm = MassNP (UseN ohm_N) ;
Gray = MassNP (UseN gray_N) ;
ElectronVolt = MassNP (ApposCN (UseN electron_N) (MassNP (UseN volt_N))) ;
Gram = MassNP (UseN gram_N) ;
Hertz = DetCN (DetQuant IndefArt NumSg) (UseN hertz_N) ;
Kilogram = MassNP (UseN kilogram_N) ;
Meter = MassNP (UseN meter_N) ;
Mole = MassNP (UseN mole_N) ;
SecondDuration = MassNP (AdjCN (AdjOrd (OrdNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))))) (UseN duration_N)) ;
Left = MassNP (UseN left_N) ;
Right = MassNP (UseN right_N) ;
CentralTimeZone = MassNP (AdjCN (PositA central_A) (ApposCN (UseN time_N) (MassNP (UseN zone_N)))) ;
Cup = MassNP (UseN cup_N) ;
Damp = MassNP (UseN damp_N) ;
DayDuration = MassNP (ApposCN (UseN day_N) (MassNP (UseN duration_N))) ;
East = MassNP (UseN east_N) ;
EasternTimeZone = MassNP (AdjCN (PositA eastern_A) (ApposCN (UseN time_N) (MassNP (UseN zone_N)))) ;
ElectronVolt = MassNP (ApposCN (UseN electron_N) (MassNP (UseN volt_N))) ;
Female = MassNP (UseN female_N) ;
Fluid = MassNP (UseN fluid_N) ;
FootLength = MassNP (ApposCN (UseN foot_N) (MassNP (UseN length_N))) ;
Gas = MassNP (UseN gas_N) ;
Horsepower = DetCN (DetQuant IndefArt NumSg) (UseN horsepower_N) ;
HourDuration = MassNP (ApposCN (UseN hour_N) (MassNP (UseN duration_N))) ;
Inch = MassNP (UseN inch_N) ;
InchMercury = MassNP (ApposCN (UseN inch_N) (MassNP (UseN mercury_N))) ;
Liquid = MassNP (UseN liquid_N) ;
Living = DetCN (DetQuant IndefArt NumSg) (UseN2 (VerbToNounV2 live_V2)) ;
Male = MassNP (UseN male_N) ;
Mile = MassNP (UseN mile_N) ;
MinuteDuration = MassNP (AdjCN (PositA minute_A) (UseN duration_N)) ;
MmMercury = DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN mm_N) (MassNP (UseN mercury_N))) ;
MonthDuration = MassNP (ApposCN (UseN month_N) (MassNP (UseN duration_N))) ;
MountainTimeZone = MassNP (ApposCN (ApposCN (UseN mountain_N) (MassNP (UseN time_N))) (MassNP (UseN zone_N))) ;
Necessity = MassNP (UseN necessity_N) ;
NegativeInfinity = MassNP (AdjCN (PositA negative_A) (UseN infinity_N)) ;
North = MassNP (UseN north_N) ;
NullList = MassNP (AdjCN (PositA null_A) (UseN list_N)) ;
Obligation = MassNP (UseN obligation_N) ;
Ounce = MassNP (UseN ounce_N) ;
PacificTimeZone = MassNP (AdjCN (PositA pacific_A) (ApposCN (UseN time_N) (MassNP (UseN zone_N)))) ;
Permission = MassNP (UseN permission_N) ;
Pi = MassNP (UseN pi_N) ;
Pint = MassNP (UseN pint_N) ;
Plasma = MassNP (UseN plasma_N) ;
PositiveInfinity = MassNP (AdjCN (PositA positive_A) (UseN infinity_N)) ;
Possibility = MassNP (UseN possibility_N) ;
PoundForce = MassNP (ApposCN (UseN pound_N) (MassNP (UseN force_N))) ;
PoundMass = MassNP (ApposCN (UseN pound_N) (MassNP (UseN mass_N))) ;
Prohibition = MassNP (UseN prohibition_N) ;
Quart = MassNP (UseN quart_N) ;
Red = MassNP (UseN red_N) ;
Rough = MassNP (UseN rough_N) ;
Sitting = DetCN (DetQuant IndefArt NumSg) (UseN2 (VerbToNounV2 sit_V2)) ;
Slug = MassNP (UseN slug_N) ;
Smooth = MassNP (UseN smooth_N) ;
Solid = MassNP (UseN solid_N) ;
South = MassNP (UseN south_N) ;
Standing = DetCN (DetQuant IndefArt NumSg) (UseN2 (VerbToNounV2 stand_V2)) ;
True = MassNP (UseN true_N) ;
Unconscious = MassNP (UseN unconscious_N) ;
UnitedKingdomGallon = MassNP (AdjCN (PositA united_A) (ApposCN (UseN kingdom_N) (MassNP (UseN gallon_N)))) ;
UnitedStatesCent = DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA united_A) (ApposCN (UseN state_N) (MassNP (UseN cent_N)))) ;
UnitedStatesDollar = DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA united_A) (ApposCN (UseN state_N) (MassNP (UseN dollar_N)))) ;
UnitedStatesGallon = DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA united_A) (ApposCN (UseN state_N) (MassNP (UseN gallon_N)))) ;
Vertical = MassNP (UseN vertical_N) ;
WeekDuration = MassNP (ApposCN (UseN week_N) (MassNP (UseN duration_N))) ;
West = MassNP (UseN west_N) ;
Wet = MassNP (UseN wet_N) ;
White = MassNP (UseN white_N) ;
YearDuration = MassNP (ApposCN (UseN year_N) (MassNP (UseN duration_N))) ;
Yellow = MassNP (UseN yellow_N) ;
Law = MassNP (UseN law_N) ;
Promise = MassNP (UseN promise_N) ;
PurchaseContract = MassNP (ApposCN (UseN purchase_N) (MassNP (UseN contract_N))) ;
Warranty = MassNP (UseN warranty_N) ;
NakedPromise = MassNP (AdjCN (PositA naked_A) (UseN promise_N)) ;
-- subclass declarations :
AbnormalAnatomicalStructure = AdjCN (PositA abnormal_A) (AdjCN (PositA anatomical_A) (UseN structure_N)) ;
Abstract = UseN abstract_N ;
Adjective = UseN adjective_N ;
Adverb = UseN adverb_N ;
Advertising = UseN2 (VerbToNounV2 advertise_V2) ;
AgeGroup = ApposCN (UseN age_N) (MassNP (UseN group_N)) ;
Agent = UseN agent_N ;
Air = UseN air_N ;
Alga = UseN alga_N ;
Amphibian = UseN amphibian_N ;
AnatomicalStructure = AdjCN (PositA anatomical_A) (UseN structure_N) ;
AngleMeasure = ApposCN (UseN angle_N) (MassNP (UseN measure_N)) ;
Animal = UseN animal_N ;
AnimalAnatomicalStructure = ApposCN (UseN animal_N) (MassNP (AdjCN (PositA anatomical_A) (UseN structure_N))) ;
AnimalLanguage = ApposCN (UseN animal_N) (MassNP (UseN language_N)) ;
AnimalSubstance = ApposCN (UseN animal_N) (MassNP (UseN substance_N)) ;
Ape = UseN ape_N ;
April = UseN april_N ;
AquaticMammal = AdjCN (PositA aquatic_A) (UseN mammal_N) ;
Arachnid = UseN arachnid_N ;
AreaMeasure = ApposCN (UseN area_N) (MassNP (UseN measure_N)) ;
Argument = UseN argument_N ;
ArtWork = ApposCN (UseN art_N) (MassNP (UseN work_N)) ;
Article = UseN article_N ;
Artifact = UseN artifact_N ;
ArtificialLanguage = AdjCN (PositA artificial_A) (UseN language_N) ;
AsexualReproduction = AdjCN (PositA asexual_A) (UseN reproduction_N) ;
AstronomicalBody = AdjCN (PositA astronomical_A) (UseN body_N) ;
Atom = UseN atom_N ;
AtomicNucleus = AdjCN (PositA atomic_A) (UseN nucleus_N) ;
Attaching = UseN2 (VerbToNounV2 attach_V2) ;
AttachingDevice = ApposCN (UseN2 (VerbToNounV2 attach_V2)) (MassNP (UseN device_N)) ;
Attack = UseN attack_N ;
Attribute = UseN attribute_N ;
August = UseN august_N ;
Bacterium = UseN bacterium_N ;
Battle = UseN battle_N ;
BeliefGroup = ApposCN (UseN belief_N) (MassNP (UseN group_N)) ;
Betting = UseN2 (VerbToNounV2 bet_V2) ;
Beverage = UseN beverage_N ;
BinaryNumber = AdjCN (PositA binary_A) (UseN number_N) ;
BiologicalAttribute = AdjCN (PositA biological_A) (UseN attribute_N) ;
BiologicalProcess = AdjCN (PositA biological_A) (UseN process_N) ;
Bird = UseN bird_N ;
Birth = UseN birth_N ;
Blood = UseN blood_N ;
BodyCavity = ApposCN (UseN body_N) (MassNP (UseN cavity_N)) ;
BodyCovering = ApposCN (UseN body_N) (DetCN (DetQuant IndefArt NumSg) (UseN2 (VerbToNounV2 cover_V2))) ;
BodyJunction = ApposCN (UseN body_N) (MassNP (UseN junction_N)) ;
BodyMotion = ApposCN (UseN body_N) (MassNP (UseN motion_N)) ;
BodyPart = AdvCN (UseN body_N) part_Adv ;
BodyPosition = ApposCN (UseN body_N) (MassNP (UseN position_N)) ;
BodySubstance = ApposCN (UseN body_N) (MassNP (UseN substance_N)) ;
BodyVessel = ApposCN (UseN body_N) (MassNP (UseN vessel_N)) ;
Boiling = UseN2 (VerbToNounV2 boil_V2) ;
Bone = UseN bone_N ;
Book = UseN book_N ;
Borrowing = UseN2 (VerbToNounV2 borrow_V2) ;
Breathing = UseN breathing_N ;
Building = UseN building_N ;
Buying = UseN2 (VerbToNounV2 buy_V2) ;
Calculating = UseN2 (VerbToNounV2 calculate_V2) ;
Carbohydrate = UseN carbohydrate_N ;
Carnivore = UseN carnivore_N ;
Carrying = UseN2 (VerbToNounV2 carry_V2) ;
Cell = UseN cell_N ;
Certificate = UseN certificate_N ;
ChangeOfPossession = AdvCN (UseN change_N) (PrepNP part_Prep (MassNP (UseN possession_N))) ;
Character = UseN character_N ;
ChemicalDecomposition = AdjCN (PositA chemical_A) (UseN decomposition_N) ;
ChemicalProcess = AdjCN (PositA chemical_A) (UseN process_N) ;
ChemicalSynthesis = AdjCN (PositA chemical_A) (UseN synthesis_N) ;
Circle = UseN circle_N ;
City = UseN city_N ;
Classifying = UseN2 (VerbToNounV2 classify_V2) ;
ClosedTwoDimensionalFigure = AdjCN (PositA (VerbToParticipeA close_V)) (AdjCN (PositA (compoundA (regA "two-dimensional"))) (UseN figure_N)) ;
Clothing = UseN clothing_N ;
Cloud = UseN cloud_N ;
Collection = UseN collection_N ;
Combining = UseN2 (VerbToNounV2 combine_V2) ;
Combustion = UseN combustion_N ;
CommercialAgent = AdjCN (PositA commercial_A) (UseN agent_N) ;
CommercialService = AdjCN (PositA commercial_A) (UseN service_N) ;
Committing = UseN2 (VerbToNounV2 commit_V2) ;
Communication = UseN communication_N ;
Comparing = UseN2 (VerbToNounV2 compare_V2) ;
ComplexNumber = AdjCN (PositA complex_A) (UseN number_N) ;
CompositeUnitOfMeasure = AdjCN (PositA composite_A) (AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN measure_N)))) ;
CompoundSubstance = AdjCN (PositA compound_A) (UseN substance_N) ;
ComputerLanguage = ApposCN (UseN computer_N) (MassNP (UseN language_N)) ;
ComputerProgram = ApposCN (UseN computer_N) (MassNP (UseN program_N)) ;
ComputerProgramming = ApposCN (UseN computer_N) (DetCN (DetQuant IndefArt NumSg) (UseN2 (VerbToNounV2 program_V2))) ;
Condensing = UseN2 (VerbToNounV2 condense_V2) ;
Confining = UseN2 (VerbToNounV2 confine_V2) ;
ConsciousnessAttribute = ApposCN (UseN consciousness_N) (MassNP (UseN attribute_N)) ;
ConstantQuantity = AdjCN (PositA constant_A) (UseN quantity_N) ;
Constructing = UseN2 (VerbToNounV2 construct_V2) ;
ContentBearingObject = AdjCN (PositA content_A) (AdjCN (PositA (VerbToGerundA bear_V2)) (UseN object_N)) ;
ContentBearingProcess = AdjCN (PositA content_A) (AdjCN (PositA (VerbToGerundA bear_V)) (UseN process_N)) ;
ContentDevelopment = AdjCN (PositA content_A) (UseN development_N) ;
Contest = UseN contest_N ;
ContestAttribute = ApposCN (UseN contest_N) (MassNP (UseN attribute_N)) ;
Continent = UseN continent_N ;
Cooking = UseN cooking_N ;
Cooling = UseN2 (VerbToNounV2 cool_V2) ;
Cooperation = UseN cooperation_N ;
Corporation = UseN corporation_N ;
Counting = UseN2 (VerbToNounV2 count_V2) ;
County = UseN county_N ;
Covering = UseN covering_N ;
Creation = UseN creation_N ;
Crustacean = UseN crustacean_N ;
Currency = UseN currency_N ;
CurrencyMeasure = ApposCN (UseN currency_N) (MassNP (UseN measure_N)) ;
Cutting = UseN cutting_N ;
Damaging = UseN2 (VerbToNounV2 damage_V2) ;
Dancing = UseN dancing_N ;
Day = UseN day_N ;
Death = UseN death_N ;
December = UseN december_N ;
Deciding = UseN2 (VerbToNounV2 decide_V2) ;
Declaring = UseN2 (VerbToNounV2 declare_V2) ;
Decoding = UseN2 (VerbToNounV2 decode_V2) ;
Decreasing = UseN2 (VerbToNounV2 decrease_V2) ;
DeductiveArgument = AdjCN (PositA deductive_A) (UseN argument_N) ;
Demonstrating = UseN2 (VerbToNounV2 demonstrate_V2) ;
Designing = UseN designing_N ;
Destruction = UseN destruction_N ;
Detaching = UseN2 (VerbToNounV2 detach_V2) ;
Device = UseN device_N ;
DiagnosticProcess = AdjCN (PositA diagnostic_A) (UseN process_N) ;
Digesting = UseN2 (VerbToNounV2 digest_V2) ;
DirectedGraph = AdjCN (PositA (VerbToParticipeA direct_V)) (UseN graph_N) ;
Directing = UseN2 (VerbToNounV2 direct_V2) ;
DirectionChange = ApposCN (UseN direction_N) (MassNP (UseN change_N)) ;
DirectionalAttribute = AdjCN (PositA directional_A) (UseN attribute_N) ;
Discovering = UseN2 (VerbToNounV2 discover_V2) ;
DiseaseOrSyndrome = ConjCN or_Conj (BaseCN (UseN disease_N) (UseN syndrome_N)) ;
Disseminating = UseN2 (VerbToNounV2 disseminate_V2) ;
Drinking = UseN drinking_N ;
Driving = UseN2 (VerbToNounV2 drive_V2) ;
Drying = UseN2 (VerbToNounV2 dry_V2) ;
DualObjectProcess = AdjCN (PositA dual_A) (ApposCN (UseN object_N) (MassNP (UseN process_N))) ;
Eating = UseN2 (VerbToNounV2 eat_V2) ;
EducationalOrganization = AdjCN (PositA educational_A) (UseN organization_N) ;
EducationalProcess = AdjCN (PositA educational_A) (UseN process_N) ;
Egg = UseN egg_N ;
Election = UseN election_N ;
Electron = UseN electron_N ;
ElementalSubstance = AdjCN (PositA elemental_A) (UseN substance_N) ;
EmotionalState = AdjCN (PositA emotional_A) (UseN state_N) ;
Encoding = UseN2 (VerbToNounV2 encode_V2) ;
EngineeringComponent = AdjCN (PositA (VerbToGerundA engineer_V)) (UseN component_N) ;
EngineeringConnection = AdjCN (PositA (VerbToGerundA engineer_V)) (UseN connection_N) ;
Entity = UseN entity_N ;
Enzyme = UseN enzyme_N ;
EthnicGroup = AdjCN (PositA ethnic_A) (UseN group_N) ;
Evaporating = UseN2 (VerbToNounV2 evaporate_V2) ;
EvenInteger = AdjCN (PositA even_A) (UseN integer_N) ;
Experimenting = UseN (VerbToNoun experiment_V) ;
Explanation = UseN explanation_N ;
Expressing = UseN2 (VerbToNounV2 express_V2) ;
Fabric = UseN fabric_N ;
FactualText = AdjCN (PositA factual_A) (UseN text_N) ;
Falling = UseN2 (VerbToNounV2 befall_V2) ;
FamilyGroup = ApposCN (UseN family_N) (MassNP (UseN group_N)) ;
FatTissue = AdjCN (PositA fat_A) (UseN tissue_N) ;
February = UseN february_N ;
Fern = UseN fern_N ;
FictionalText = AdjCN (PositA fictional_A) (UseN text_N) ;
FieldOfStudy = AdvCN (UseN field_N) (PrepNP part_Prep (MassNP (UseN study_N))) ;
FinancialInstrument = AdjCN (PositA financial_A) (UseN instrument_N) ;
FinancialTransaction = AdjCN (PositA financial_A) (UseN transaction_N) ;
FiniteSet = AdjCN (PositA finite_A) (UseN set_N) ;
Fish = UseN fish_N ;
FlowRegion = ApposCN (UseN flow_N) (MassNP (UseN region_N)) ;
FloweringPlant = AdjCN (PositA (VerbToGerundA flower_V)) (UseN plant_N) ;
Food = UseN food_N ;
Freezing = UseN2 (VerbToNounV2 deep_freeze_V2) ;
FrequencyMeasure = ApposCN (UseN frequency_N) (MassNP (UseN measure_N)) ;
FreshWaterArea = AdjCN (PositA fresh_A) (ApposCN (UseN water_N) (MassNP (UseN area_N))) ;
Friday = UseN friday_N ;
FruitOrVegetable = ConjCN or_Conj (BaseCN (UseN fruit_N) (UseN vegetable_N)) ;
FunctionQuantity = ApposCN (UseN function_N) (MassNP (UseN quantity_N)) ;
Funding = UseN2 (VerbToNounV2 fund_V2) ;
Fungus = UseN fungus_N ;
Game = UseN game_N ;
GasMixture = ApposCN (UseN gas_N) (MassNP (UseN mixture_N)) ;
GasMotion = ApposCN (UseN gas_N) (MassNP (UseN motion_N)) ;
GeologicalProcess = AdjCN (PositA geological_A) (UseN process_N) ;
GeometricFigure = AdjCN (PositA geometric_A) (UseN figure_N) ;
GeometricPoint = AdjCN (PositA geometric_A) (UseN point_N) ;
Gesture = UseN gesture_N ;
Getting = UseN2 (VerbToNounV2 beget_V2) ;
Giving = UseN2 (VerbToNounV2 give_V2) ;
GivingBack = AdjCN (PositA (VerbToGerundA give_V)) (UseN back_N) ;
Gland = UseN gland_N ;
Government = UseN government_N ;
GovernmentOrganization = ApposCN (UseN government_N) (MassNP (UseN organization_N)) ;
Grabbing = UseN2 (VerbToNounV2 grab_V2) ;
Graduation = UseN graduation_N ;
Graph = UseN graph_N ;
GraphArc = ApposCN (UseN graph_N) (MassNP (UseN arc_N)) ;
GraphCircuit = ApposCN (UseN graph_N) (MassNP (UseN circuit_N)) ;
GraphElement = ApposCN (UseN graph_N) (MassNP (UseN element_N)) ;
GraphLoop = ApposCN (UseN graph_N) (MassNP (UseN loop_N)) ;
GraphNode = ApposCN (UseN graph_N) (MassNP (UseN node_N)) ;
GraphPath = ApposCN (UseN graph_N) (MassNP (UseN path_N)) ;
Group = UseN group_N ;
GroupOfPeople = AdvCN (UseN group_N) (PrepNP part_Prep (MassNP (UseN people_N))) ;
Growth = UseN growth_N ;
Guiding = UseN2 (VerbToNounV2 guide_V2) ;
Hearing = UseN hearing_N ;
Heating = UseN heating_N ;
Hiring = UseN2 (VerbToNounV2 hire_V2) ;
Hole = UseN hole_N ;
Hormone = UseN hormone_N ;
Hour = UseN hour_N ;
House = UseN house_N ;
Human = UseN human_N ;
HumanLanguage = AdjCN (PositA human_A) (UseN language_N) ;
Hunting = UseN hunting_N ;
Icon = UseN icon_N ;
ImaginaryNumber = AdjCN (PositA imaginary_A) (UseN number_N) ;
Impacting = UseN2 (VerbToNounV2 impact_V2) ;
Impelling = UseN2 (VerbToNounV2 impel_V2) ;
Increasing = UseN2 (VerbToNounV2 increase_V2) ;
InductiveArgument = AdjCN (PositA inductive_A) (UseN argument_N) ;
InformationMeasure = ApposCN (UseN information_N) (MassNP (UseN measure_N)) ;
Ingesting = UseN2 (VerbToNounV2 ingest_V2) ;
Injecting = UseN2 (VerbToNounV2 inject_V2) ;
Injuring = UseN2 (VerbToNounV2 injure_V2) ;
Insect = UseN insect_N ;
Inserting = UseN2 (VerbToNounV2 insert_V2) ;
Integer = UseN integer_N ;
IntentionalProcess = AdjCN (PositA intentional_A) (UseN process_N) ;
IntentionalPsychologicalProcess = AdjCN (PositA intentional_A) (AdjCN (PositA psychological_A) (UseN process_N)) ;
InternalAttribute = AdjCN (PositA internal_A) (UseN attribute_N) ;
InternalChange = AdjCN (PositA internal_A) (UseN change_N) ;
Interpreting = UseN2 (VerbToNounV2 interpret_V2) ;
InvalidDeductiveArgument = AdjCN (PositA invalid_A) (AdjCN (PositA deductive_A) (UseN argument_N)) ;
Invertebrate = UseN invertebrate_N ;
Investigating = UseN2 (VerbToNounV2 investigate_V2) ;
IrrationalNumber = AdjCN (PositA irrational_A) (UseN number_N) ;
Island = UseN island_N ;
January = UseN january_N ;
JoiningAnOrganization = ApposCN (UseN2 (VerbToNounV2 join_V2)) (DetCN (DetQuant IndefArt NumSg) (UseN organization_N)) ;
Judging = UseN2 (VerbToNounV2 judge_V2) ;
JudicialOrganization = AdjCN (PositA judicial_A) (UseN organization_N) ;
JudicialProcess = AdjCN (PositA judicial_A) (UseN process_N) ;
July = UseN july_N ;
June = UseN june_N ;
Keeping = UseN keeping_N ;
Killing = UseN killing_N ;
LandArea = ApposCN (UseN land_N) (MassNP (UseN area_N)) ;
Language = UseN language_N ;
LeapYear = ApposCN (UseN leap_N) (MassNP (UseN year_N)) ;
Learning = UseN learning_N ;
LeavingAnOrganization = ApposCN (UseN2 (VerbToNounV2 leave_V2)) (DetCN (DetQuant IndefArt NumSg) (UseN organization_N)) ;
LegalAction = AdjCN (PositA legal_A) (UseN action_N) ;
LegalDecision = AdjCN (PositA legal_A) (UseN decision_N) ;
Lending = UseN2 (VerbToNounV2 lend_V2) ;
LengthMeasure = ApposCN (UseN length_N) (MassNP (UseN measure_N)) ;
LinguisticCommunication = AdjCN (PositA linguistic_A) (UseN communication_N) ;
LinguisticExpression = AdjCN (PositA linguistic_A) (UseN expression_N) ;
LiquidMixture = AdjCN (PositA liquid_A) (UseN mixture_N) ;
LiquidMotion = AdjCN (PositA liquid_A) (UseN motion_N) ;
List = UseN list_N ;
Listening = UseN (VerbToNoun listen_V) ;
LogicalOperator = AdjCN (PositA logical_A) (UseN operator_N) ;
Looking = UseN2 (VerbToNounV2 look_V2) ;
Machine = UseN machine_N ;
Maintaining = UseN2 (VerbToNounV2 maintain_V2) ;
Making = UseN making_N ;
Mammal = UseN mammal_N ;
Man = UseN man_N ;
Managing = UseN2 (VerbToNounV2 manage_V2) ;
ManualHumanLanguage = AdjCN (PositA manual_A) (AdjCN (PositA human_A) (UseN language_N)) ;
Manufacture = UseN manufacture_N ;
Manufacturer = UseN manufacturer_N ;
March = UseN march_N ;
Marsupial = UseN marsupial_N ;
MassMeasure = ApposCN (UseN mass_N) (MassNP (UseN measure_N)) ;
Matriculation = UseN matriculation_N ;
May = UseN may_N ;
Measuring = UseN2 (VerbToNounV2 measure_V2) ;
MeasuringDevice = AdjCN (PositA (VerbToGerundA measure_V)) (UseN device_N) ;
Meat = UseN meat_N ;
Meeting = UseN meeting_N ;
Melting = UseN2 (VerbToNounV2 melt_V2) ;
MercantileOrganization = AdjCN (PositA mercantile_A) (UseN organization_N) ;
Metal = UseN metal_N ;
MilitaryForce = AdjCN (PositA military_A) (UseN force_N) ;
MilitaryOrganization = AdjCN (PositA military_A) (UseN organization_N) ;
MilitaryProcess = AdjCN (PositA military_A) (UseN process_N) ;
Mineral = UseN mineral_N ;
Minute = UseN minute_N ;
Mixture = UseN mixture_N ;
Molecule = UseN molecule_N ;
Monday = UseN monday_N ;
Monkey = UseN monkey_N ;
Month = UseN month_N ;
Morpheme = UseN morpheme_N ;
Moss = UseN moss_N ;
Motion = UseN motion_N ;
MotionDownward = AdvCN (UseN motion_N) downward_Adv ;
MotionPicture = ApposCN (UseN motion_N) (MassNP (UseN picture_N)) ;
MotionUpward = AdvCN (UseN motion_N) upward_Adv ;
Muscle = UseN muscle_N ;
Music = UseN music_N ;
MusicalInstrument = AdjCN (PositA musical_A) (UseN instrument_N) ;
Naming = UseN2 (VerbToNounV2 name_V2) ;
Nation = UseN nation_N ;
NaturalLanguage = AdjCN (PositA natural_A) (UseN language_N) ;
NaturalProcess = AdjCN (PositA natural_A) (UseN process_N) ;
NaturalSubstance = AdjCN (PositA natural_A) (UseN substance_N) ;
NegativeInteger = AdjCN (PositA negative_A) (UseN integer_N) ;
NegativeRealNumber = AdjCN (PositA negative_A) (AdjCN (PositA real_A) (UseN number_N)) ;
Neutron = UseN neutron_N ;
NormativeAttribute = AdjCN (PositA normative_A) (UseN attribute_N) ;
Noun = UseN noun_N ;
NounPhrase = ApposCN (UseN noun_N) (MassNP (UseN phrase_N)) ;
November = UseN november_N ;
NullSet = AdjCN (PositA null_A) (UseN set_N) ;
Number = UseN number_N ;
Nutrient = UseN nutrient_N ;
Object = UseN object_N ;
ObjectiveNorm = AdjCN (PositA objective_A) (UseN norm_N) ;
October = UseN october_N ;
OddInteger = AdjCN (PositA odd_A) (UseN integer_N) ;
Offering = UseN offering_N ;
OlfactoryAttribute = AdjCN (PositA olfactory_A) (UseN attribute_N) ;
OneDimensionalFigure = AdjCN (PositA (compoundA (regA "two-dimensional"))) (UseN figure_N) ;
OpenTwoDimensionalFigure = AdjCN (PositA open_A) (AdjCN (PositA (compoundA (regA "two-dimensional"))) (UseN figure_N)) ;
Ordering = UseN ordering_N ;
Organ = UseN organ_N ;
OrganOrTissueProcess = ApposCN (ConjCN or_Conj (BaseCN (UseN organ_N) (UseN tissue_N))) (MassNP (UseN process_N)) ;
OrganicObject = AdjCN (PositA organic_A) (UseN object_N) ;
Organism = UseN organism_N ;
OrganismProcess = ApposCN (UseN organism_N) (MassNP (UseN process_N)) ;
Organization = UseN organization_N ;
OrganizationalProcess = AdjCN (PositA organizational_A) (UseN process_N) ;
Oval = UseN oval_N ;
ParamilitaryOrganization = AdjCN (PositA paramilitary_A) (UseN organization_N) ;
ParticleWord = ApposCN (UseN particle_N) (MassNP (UseN word_N)) ;
Patent = UseN patent_N ;
Perception = UseN perception_N ;
PerceptualAttribute = AdjCN (PositA perceptual_A) (UseN attribute_N) ;
Periodical = UseN periodical_N ;
PermanentResidence = AdjCN (PositA permanent_A) (UseN residence_N) ;
Phrase = UseN phrase_N ;
PhysicalAttribute = AdjCN (PositA physical_A) (UseN attribute_N) ;
PhysicalQuantity = AdjCN (PositA physical_A) (UseN quantity_N) ;
PhysicalState = AdjCN (PositA physical_A) (UseN state_N) ;
PhysicalSystem = AdjCN (PositA physical_A) (UseN system_N) ;
Plan = UseN plan_N ;
PlaneAngleMeasure = ApposCN (ApposCN (UseN plane_N) (MassNP (UseN angle_N))) (MassNP (UseN measure_N)) ;
Planning = UseN2 (VerbToNounV2 plan_V2) ;
Plant = UseN plant_N ;
PlantAnatomicalStructure = ApposCN (UseN plant_N) (MassNP (AdjCN (PositA anatomical_A) (UseN structure_N))) ;
PlantSubstance = ApposCN (UseN plant_N) (MassNP (UseN substance_N)) ;
Poisoning = UseN2 (VerbToNounV2 poison_V2) ;
Poking = UseN2 (VerbToNounV2 poke_V2) ;
PoliticalOrganization = AdjCN (PositA political_A) (UseN organization_N) ;
PoliticalProcess = AdjCN (PositA political_A) (UseN process_N) ;
Pollen = UseN pollen_N ;
Position = UseN position_N ;
PositiveInteger = AdjCN (PositA positive_A) (UseN integer_N) ;
PositiveRealNumber = AdjCN (PositA positive_A) (AdjCN (PositA real_A) (UseN number_N)) ;
Precipitation = UseN precipitation_N ;
Predicting = UseN2 (VerbToNounV2 predict_V2) ;
PrepositionalPhrase = AdjCN (PositA prepositional_A) (UseN phrase_N) ;
Pretending = UseN2 (VerbToNounV2 pretend_V2) ;
Primate = UseN primate_N ;
PrimeNumber = AdjCN (PositA prime_A) (UseN number_N) ;
ProbabilityAttribute = ApposCN (UseN probability_N) (MassNP (UseN attribute_N)) ;
Procedure = UseN procedure_N ;
Process = UseN process_N ;
Product = UseN product_N ;
Proposition = UseN proposition_N ;
Protein = UseN protein_N ;
Proton = UseN proton_N ;
PseudoGraph = AdjCN (PositA pseudo_A) (UseN graph_N) ;
PsychologicalAttribute = AdjCN (PositA psychological_A) (UseN attribute_N) ;
PsychologicalProcess = AdjCN (PositA psychological_A) (UseN process_N) ;
Publication = UseN publication_N ;
PureSubstance = AdjCN (PositA pure_A) (UseN substance_N) ;
Pursuing = UseN2 (VerbToNounV2 pursue_V2) ;
Putting = UseN2 (VerbToNounV2 put_V2) ;
Quantity = UseN quantity_N ;
QuantityChange = ApposCN (UseN quantity_N) (MassNP (UseN change_N)) ;
Questioning = UseN2 (VerbToNounV2 question_V2) ;
Radiating = UseN2 (VerbToNounV2 radiate_V2) ;
RadiatingLight = AdjCN (PositA (VerbToGerundA radiate_V)) (UseN light_N) ;
RadiatingSound = AdjCN (PositA (VerbToGerundA radiate_V)) (UseN sound_N) ;
RationalNumber = AdjCN (PositA rational_A) (UseN number_N) ;
Reading = UseN reading_N ;
RealNumber = AdjCN (PositA real_A) (UseN number_N) ;
Reasoning = UseN reasoning_N ;
RecreationOrExercise = ConjCN or_Conj (BaseCN (UseN recreation_N) (UseN exercise_N)) ;
Region = UseN region_N ;
Releasing = UseN2 (VerbToNounV2 release_V2) ;
ReligiousOrganization = AdjCN (PositA religious_A) (UseN organization_N) ;
ReligiousProcess = AdjCN (PositA religious_A) (UseN process_N) ;
Remembering = UseN2 (VerbToNounV2 remember_V2) ;
Removing = UseN2 (VerbToNounV2 remove_V2) ;
Repairing = UseN2 (VerbToNounV2 repair_V2) ;
ReproductiveBody = AdjCN (PositA reproductive_A) (UseN body_N) ;
Reptile = UseN reptile_N ;
Requesting = UseN2 (VerbToNounV2 request_V2) ;
Residence = UseN residence_N ;
ResidentialBuilding = AdjCN (PositA residential_A) (UseN building_N) ;
Roadway = UseN roadway_N ;
Rodent = UseN rodent_N ;
Room = UseN room_N ;
Running = UseN running_N ;
SaltWaterArea = AdjCN (PositA salt_A) (ApposCN (UseN water_N) (MassNP (UseN area_N))) ;
SaturationAttribute = ApposCN (UseN saturation_N) (MassNP (UseN attribute_N)) ;
Saturday = UseN saturday_N ;
Second = UseN second_N ;
Seed = UseN seed_N ;
Seeing = UseN2 (VerbToNounV2 foresee_V2) ;
Selecting = UseN2 (VerbToNounV2 select_V2) ;
SelfConnectedObject = ApposCN (UseN self_N) (MassNP (AdjCN (PositA (VerbToParticipeA connect_V)) (UseN object_N))) ;
Selling = UseN selling_N ;
Sentence = UseN sentence_N ;
SentientAgent = AdjCN (PositA sentient_A) (UseN agent_N) ;
Separating = UseN2 (VerbToNounV2 separate_V2) ;
September = UseN september_N ;
Series = UseN series_N ;
ServiceProcess = ApposCN (UseN service_N) (MassNP (UseN process_N)) ;
Set = UseN set_N ;
SetOrClass = ConjCN or_Conj (BaseCN (UseN set_N) (UseN class_N)) ;
SexAttribute = ApposCN (UseN sex_N) (MassNP (UseN attribute_N)) ;
SexualReproduction = AdjCN (PositA sexual_A) (UseN reproduction_N) ;
ShapeAttribute = ApposCN (UseN shape_N) (MassNP (UseN attribute_N)) ;
ShapeChange = ApposCN (UseN shape_N) (MassNP (UseN change_N)) ;
Shooting = UseN shooting_N ;
ShoreArea = ApposCN (UseN shore_N) (MassNP (UseN area_N)) ;
Singing = UseN singing_N ;
SingleAgentProcess = AdjCN (PositA single_A) (ApposCN (UseN agent_N) (MassNP (UseN process_N))) ;
SingleFamilyResidence = AdjCN (PositA single_A) (ApposCN (UseN family_N) (MassNP (UseN residence_N))) ;
Smelling = UseN2 (VerbToNounV2 smell_V2) ;
Smoke = UseN smoke_N ;
SocialInteraction = AdjCN (PositA social_A) (UseN interaction_N) ;
SocialRole = AdjCN (PositA social_A) (UseN role_1_N) ;
SocialUnit = AdjCN (PositA social_A) (UseN unit_N) ;
SolidAngleMeasure = AdjCN (PositA solid_A) (ApposCN (UseN angle_N) (MassNP (UseN measure_N))) ;
Solution = UseN solution_N ;
SoundAttribute = AdjCN (PositA sound_A) (UseN attribute_N) ;
Speaking = UseN2 (VerbToNounV2 bespeak_V2) ;
SpokenHumanLanguage = AdjCN (PositA (VerbToParticipeA speak_V)) (AdjCN (PositA human_A) (UseN language_N)) ;
Spore = UseN spore_N ;
Sport = UseN sport_N ;
StateChange = ApposCN (UseN state_N) (MassNP (UseN change_N)) ;
StateOfMind = AdvCN (UseN state_N) (PrepNP part_Prep (MassNP (UseN mind_N))) ;
StateOrProvince = ConjCN or_Conj (BaseCN (UseN state_N) (UseN province_N)) ;
StaticWaterArea = AdjCN (PositA static_A) (ApposCN (UseN water_N) (MassNP (UseN area_N))) ;
Stating = UseN2 (VerbToNounV2 state_V2) ;
StationaryArtifact = AdjCN (PositA stationary_A) (UseN artifact_N) ;
StreamWaterArea = ApposCN (ApposCN (UseN stream_N) (MassNP (UseN water_N))) (MassNP (UseN area_N)) ;
SubatomicParticle = AdjCN (PositA subatomic_A) (UseN particle_N) ;
SubjectiveAssessmentAttribute = AdjCN (PositA subjective_A) (ApposCN (UseN assessment_N) (MassNP (UseN attribute_N))) ;
Substance = UseN substance_N ;
Substituting = UseN2 (VerbToNounV2 substitute_V2) ;
Summary = UseN summary_N ;
Sunday = UseN sunday_N ;
Supposing = UseN2 (VerbToNounV2 suppose_V2) ;
SurfaceChange = ApposCN (UseN surface_N) (MassNP (UseN change_N)) ;
Surgery = UseN surgery_N ;
Suspension = UseN suspension_N ;
Swimming = UseN swimming_N ;
SymbolicString = AdjCN (PositA symbolic_A) (UseN string_N) ;
SyntheticSubstance = AdjCN (PositA synthetic_A) (UseN substance_N) ;
TactilePerception = AdjCN (PositA tactile_A) (UseN perception_N) ;
TasteAttribute = ApposCN (UseN taste_N) (MassNP (UseN attribute_N)) ;
Tasting = UseN2 (VerbToNounV2 taste_V2) ;
TemperatureMeasure = ApposCN (UseN temperature_N) (MassNP (UseN measure_N)) ;
TemporaryResidence = AdjCN (PositA temporary_A) (UseN residence_N) ;
TerminatingEmployment = AdjCN (PositA (VerbToGerundA terminate_V)) (UseN employment_N) ;
Text = UseN text_N ;
TextureAttribute = ApposCN (UseN texture_N) (MassNP (UseN attribute_N)) ;
TherapeuticProcess = AdjCN (PositA therapeutic_A) (UseN process_N) ;
ThreeDimensionalFigure = AdjCN (PositA (compoundA (regA "three-dimensional"))) (UseN figure_N) ;
Thursday = UseN thursday_N ;
TimeDependentQuantity = ApposCN (ApposCN (UseN time_N) (MassNP (UseN dependent_N))) (MassNP (UseN quantity_N)) ;
TimeDuration = ApposCN (UseN time_N) (MassNP (UseN duration_N)) ;
TimeInterval = ApposCN (UseN time_N) (MassNP (UseN interval_N)) ;
TimeMeasure = ApposCN (UseN time_N) (MassNP (UseN measure_N)) ;
TimePoint = ApposCN (UseN time_N) (MassNP (UseN point_N)) ;
TimePosition = ApposCN (UseN time_N) (MassNP (UseN position_N)) ;
TimeZone = ApposCN (UseN time_N) (MassNP (UseN zone_N)) ;
Tissue = UseN tissue_N ;
Touching = UseN2 (VerbToNounV2 touch_V2) ;
TraitAttribute = ApposCN (UseN trait_N) (MassNP (UseN attribute_N)) ;
Transaction = UseN transaction_N ;
Transfer = UseN transfer_N ;
Translating = UseN2 (VerbToNounV2 translate_V2) ;
Transportation = UseN transportation_N ;
TransportationDevice = ApposCN (UseN transportation_N) (MassNP (UseN device_N)) ;
Tree = UseN tree_N ;
TruthValue = ApposCN (UseN truth_N) (MassNP (UseN value_N)) ;
Tuesday = UseN tuesday_N ;
TwoDimensionalAngle = AdjCN (PositA (compoundA (regA "two-dimensional"))) (UseN angle_N) ;
TwoDimensionalFigure = AdjCN (PositA (compoundA (regA "two-dimensional"))) (UseN figure_N) ;
Uncovering = UseN2 (VerbToNounV2 uncover_V2) ;
UnilateralGetting = AdjCN (PositA unilateral_A) (UseN2 (VerbToNounV2 beget_V2)) ;
UnilateralGiving = AdjCN (PositA unilateral_A) (UseN2 (VerbToNounV2 give_V2)) ;
UniqueList = AdjCN (PositA unique_A) (UseN list_N) ;
UnitOfAngularMeasure = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (AdjCN (PositA angular_A) (UseN measure_N)))) ;
UnitOfArea = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN area_N))) ;
UnitOfAtmosphericPressure = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (AdjCN (PositA atmospheric_A) (UseN pressure_N)))) ;
UnitOfCurrency = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN currency_N))) ;
UnitOfDuration = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN duration_N))) ;
UnitOfFrequency = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN frequency_N))) ;
UnitOfInformation = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN information_N))) ;
UnitOfLength = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN length_N))) ;
UnitOfMass = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN mass_N))) ;
UnitOfMeasure = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN measure_N))) ;
UnitOfTemperature = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN temperature_N))) ;
UnitOfVolume = AdvCN (UseN unit_N) (PrepNP part_Prep (MassNP (UseN volume_N))) ;
ValidDeductiveArgument = AdjCN (PositA valid_A) (AdjCN (PositA deductive_A) (UseN argument_N)) ;
Vehicle = UseN vehicle_N ;
Verb = UseN verb_N ;
VerbPhrase = ApposCN (UseN verb_N) (MassNP (UseN phrase_N)) ;
Vertebrate = UseN vertebrate_N ;
ViolentContest = AdjCN (PositA violent_A) (UseN contest_N) ;
Virus = UseN virus_N ;
VisualAttribute = AdjCN (PositA visual_A) (UseN attribute_N) ;
Vitamin = UseN vitamin_N ;
VocalCords = AdjCN (PositA vocal_A) (UseN cord_N) ;
Vocalizing = UseN2 (VerbToNounV2 vocalize_V2) ;
VolumeMeasure = ApposCN (UseN volume_N) (MassNP (UseN measure_N)) ;
Voting = UseN2 (VerbToNounV2 vote_V2) ;
Walking = UseN walking_N ;
War = UseN war_N ;
Water = UseN water_N ;
WaterArea = ApposCN (UseN water_N) (MassNP (UseN area_N)) ;
WaterCloud = ApposCN (UseN water_N) (MassNP (UseN cloud_N)) ;
WaterMotion = ApposCN (UseN water_N) (MassNP (UseN motion_N)) ;
Weapon = UseN weapon_N ;
WearableItem = AdjCN (PositA wearable_A) (UseN item_N) ;
WeatherProcess = ApposCN (UseN weather_N) (MassNP (UseN process_N)) ;
Wedding = UseN wedding_N ;
Wednesday = UseN wednesday_N ;
Week = UseN week_N ;
Wetting = UseN wetting_N ;
Wind = UseN wind_N ;
Woman = UseN woman_N ;
Word = UseN word_N ;
Worm = UseN worm_N ;
Writing = UseN writing_N ;
Year = UseN year_N ;
-- nullary functions
GreatestCommonDivisorFn ob = AdvNP (DetCN (DetQuantOrd DefArt NumSg (OrdSuperl great_A)) (AdjCN (PositA common_A) (UseN divisor_N))) (PrepNP part_Prep (ConjNP and_Conj ob)) ;
LeastCommonMultipleFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA least_A) (AdjCN (PositA common_A) (UseN multiple_N)))) (PrepNP part_Prep (ConjNP and_Conj ob)) ;
ListFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN list_N)) (PrepNP part_Prep (ConjNP and_Conj ob)) ;
-- unary functions
AbsoluteValueFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA absolute_A) (UseN value_N))) (PrepNP part_Prep ob) ;
AbstractionFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN abstraction_N)) (PrepNP part_Prep (MassNP ob)) ;
BackFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN back_N)) (PrepNP part_Prep ob) ;
BeginFn ob = AdvNP (DetCN (DetQuant DefArt NumPl) (UseN2 (VerbToNounV2 begin_V2))) (PrepNP part_Prep ob) ;
BeginNodeFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA initial_A) (UseN node_N))) (PrepNP part_Prep ob) ;
CeilingFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN ceiling_N)) (PrepNP part_Prep ob) ;
CenterOfCircleFn ob = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN centre_N)) (PrepNP part_Prep (MassNP (UseN circle_N)))) (PrepNP part_Prep ob) ;
ComplementFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN complement_N)) (PrepNP part_Prep ob) ;
CosineFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN cosine_N)) (PrepNP part_Prep ob) ;
CutSetFn ob = AdvCN (AdjCN (PositA (VerbToParticipeA cut_V)) (UseN set_N)) (PrepNP part_Prep ob) ;
DenominatorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN denominator_N)) (PrepNP part_Prep ob) ;
EndFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN end_N)) (PrepNP part_Prep ob) ;
EndNodeFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN end_N) (MassNP (UseN node_N)))) (PrepNP part_Prep ob) ;
ExtensionFn ob = AdvCN (UseN extension_N) (PrepNP part_Prep ob) ;
FloorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN floor_N)) (PrepNP part_Prep ob) ;
FrontFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN front_N)) (PrepNP part_Prep ob) ;
FutureFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN future_N)) (PrepNP part_Prep ob) ;
GeneralizedIntersectionFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA (VerbToParticipeA generalize_V)) (UseN intersection_N))) (PrepNP part_Prep (MassNP ob)) ;
GeneralizedUnionFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA (VerbToParticipeA generalize_V)) (UseN union_N))) (PrepNP part_Prep (MassNP ob)) ;
GovernmentFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN government_N)) (PrepNP part_Prep ob) ;
HoleHostFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN hole_N) (MassNP (UseN host_N)))) (PrepNP part_Prep ob) ;
HoleSkinFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN hole_N) (MassNP (UseN skin_N)))) (PrepNP part_Prep ob) ;
ImaginaryPartFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA imaginary_A) (UseN part_N))) (PrepNP part_Prep ob) ;
ImmediateFamilyFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA immediate_A) (UseN family_N))) (PrepNP part_Prep ob) ;
ImmediateFutureFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA immediate_A) (UseN future_N))) (PrepNP part_Prep ob) ;
ImmediatePastFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA immediate_A) (UseN past_N))) (PrepNP part_Prep ob) ;
InitialNodeFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA initial_A) (UseN node_N))) (PrepNP part_Prep ob) ;
IntegerSquareRootFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (AdvCN (UseN integer_N) square_Adv) (MassNP (UseN root_N)))) (PrepNP part_Prep ob) ;
MagnitudeFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN magnitude_N)) (PrepNP part_Prep ob) ;
MinimalCutSetFn ob = AdvCN (AdjCN (PositA minimal_A) (AdjCN (PositA (VerbToParticipeA cut_V)) (UseN set_N))) (PrepNP part_Prep ob) ;
NumeratorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN numerator_N)) (PrepNP part_Prep ob) ;
PastFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN past_N)) (PrepNP part_Prep ob) ;
PathWeightFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN path_N) (MassNP (UseN weight_N)))) (PrepNP part_Prep ob) ;
PowerSetFn ob = AdvCN (ApposCN (UseN power_N) (MassNP (UseN set_N))) (PrepNP part_Prep ob) ;
PredecessorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN predecessor_N)) (PrepNP part_Prep ob) ;
PremisesFn ob = AdvNP (DetCN (DetQuant DefArt NumPl) (UseN premise_N)) (PrepNP part_Prep ob) ;
ProbabilityFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN probability_N)) (PrepNP part_Prep (sentToNoun ob)) ;
PropertyFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN property_N)) (PrepNP part_Prep ob) ;
RationalNumberFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA rational_A) (UseN number_N))) (PrepNP part_Prep ob) ;
RealNumberFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA real_A) (UseN number_N))) (PrepNP part_Prep ob) ;
ReciprocalFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN reciprocal_N)) (PrepNP part_Prep ob) ;
RoundFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA round_A) (UseN value_N))) (PrepNP part_Prep ob) ;
SineFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN sine_N)) (PrepNP part_Prep ob) ;
SquareRootFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA square_A) (UseN root_N))) (PrepNP part_Prep ob) ;
SuccessorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN successor_N)) (PrepNP part_Prep ob) ;
TangentFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN tangent_N)) (PrepNP part_Prep ob) ;
TerminalNodeFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA terminal_A) (UseN node_N))) (PrepNP part_Prep ob) ;
UnitFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN unit_N)) (PrepNP part_Prep ob) ;
WealthFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN wealth_N)) (PrepNP part_Prep ob) ;
WhenFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN time_N)) (PrepNP part_Prep ob) ;
YearFn ob = AdvCN (UseN year_N) (PrepNP part_Prep ob) ;
KiloFn ob = AdvNP (MassNP (UseN kilo_N)) (PrepNP part_Prep ob) ;
ListLengthFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN length_N)) (PrepNP part_Prep ob) ;
SignumFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN sign_N)) (PrepNP part_Prep ob) ;
-- binary functions
AdditionFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN addition_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
DayFn ob1 ob2 = AdvCN (ApposCN (UseN day_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
DivisionFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN division_N)) (PrepNP part_Prep ob1)) (PrepNP to_Prep ob2) ;
EditionFn ob1 ob2 = AdvCN (ApposCN (UseN edition_N) (MassNP ob1)) (PrepNP part_Prep ob2) ;
ExponentiationFn ob1 ob2 = AdvNP (AdvNP ob1 (PrepNP to_Prep (DetCN (DetQuant DefArt NumSg) (UseN power_N)))) (PrepNP part_Prep ob2) ;
GraphPathFn ob1 ob2 = AdvCN (UseN path_N) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
HourFn ob1 ob2 = AdvCN (ApposCN (UseN hour_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
IntersectionFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN intersection_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
IntervalFn ob1 ob2 = AdvCN (AdvCN (UseN interval_N) (PrepNP from_Prep ob1)) (PrepNP to_Prep ob2) ;
KappaFn ob1 ob2 = ApposCN (AdvCN (AdvCN (UseN class_N) (PrepNP part_Prep ob1)) where_Adv) (sentToNoun ob2) ;
ListConcatenateFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN concatenation_N)) (PrepNP part_Prep ob1)) (PrepNP to_Prep ob2) ;
ListOrderFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN element_N)) (PrepNP with_Prep (MassNP (ApposCN (UseN number_N) ob2)))) (PrepNP in_Prep ob1) ;
LogFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN logarithm_N)) (PrepNP part_Prep ob1)) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN base_N) ob2))) ;
MaxFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN maximum_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
MaximalWeightedPathFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN path_N)) (PrepNP part_Prep (MassNP (AdjCN (PositA maximal_A) (UseN weight_N))))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
MinFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN minimum_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
MinimalWeightedPathFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN path_N)) (PrepNP part_Prep (MassNP (AdjCN (PositA minimal_A) (UseN weight_N))))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
MinuteFn ob1 ob2 = AdvCN (ApposCN (UseN minute_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
MonthFn ob1 ob2 = AdvCN (ApposCN (UseN month_N) (MassNP ob1)) (PrepNP part_Prep (MassNP ob2)) ;
MultiplicationFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN multiplication_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
PerFn ob1 ob2 = AdvNP ob1 (PrepNP per_Prep ob2) ;
PeriodicalIssueFn ob1 ob2 = AdvCN (AdvCN (AdjCN (PositA periodical_A) (UseN issue_N)) (PrepNP part_Prep (MassNP ob1))) (PrepNP with_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN number_N) ob2))) ;
RecurrentTimeIntervalFn ob1 ob2 = AdvCN (AdjCN (PositA recurrent_A) (ApposCN (UseN time_N) (MassNP (UseN interval_N)))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP (MassNP ob1) (MassNP ob2)))) ;
RelativeComplementFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (AdvCN (UseN complement_N) (PrepNP part_Prep ob2)) (MassNP (UseN relative_N)))) (PrepNP to_Prep ob1) ;
RelativeTimeFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (ApposCN (UseN time_N) ob1) (MassNP (UseN relative_N)))) (PrepNP to_Prep ob2) ;
RemainderFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN remainder_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
SecondFn ob1 ob2 = AdvCN (ApposCN (UseN second_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
SeriesVolumeFn ob1 ob2 = AdvCN (ApposCN (UseN volume_N) ob2) (PrepNP in_Prep (DetCN (DetQuant DefArt NumPl) (ApposCN (UseN series_N) (MassNP ob1)))) ;
SubtractionFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN subtraction_N)) (PrepNP part_Prep ob2)) (PrepNP from_Prep ob1) ;
TemporalCompositionFn ob1 ob2 = AdvCN (AdjCN (PositA temporal_A) (UseN composition_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 (MassNP ob2)))) ;
TimeIntervalFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN time_N) (MassNP (UseN interval_N)))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
UnionFn ob1 ob2 = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN union_N)) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))) ;
WhereFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN location_N)) (PrepNP part_Prep ob1)) (PrepNP at_Prep ob2) ;
DensityFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant IndefArt NumSg) (UseN density_N)) (PrepNP part_Prep ob1)) (PrepNP per_Prep ob2) ;
SpeedFn ob1 ob2 = AdvNP (AdvNP (DetCN (DetQuant IndefArt NumSg) (UseN speed_N)) (PrepNP part_Prep ob1)) (PrepNP per_Prep ob2) ;
-- quaternary functions
VelocityFn ob1 ob2 ob3 ob4 = AdvNP (AdvNP (AdvNP (AdvNP (DetCN (DetQuant DefArt NumSg) (UseN velocity_N)) (PrepNP part_Prep ob1)) (PrepNP per_Prep ob2)) (PrepNP part_Prep ob3)) (PrepNP to_Prep ob4) ;
-- nullary predicates
contraryAttribute ob1 = mkPolSent (PredVP (ConjNP and_Conj ob1) (UseComp (CompNP (MassNP (AdjCN (PositA contrary_A) (UseN attribute_N)))))) ;
exhaustiveAttribute ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj ob2) (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA exhaustive_A) (UseN decomposition_N))))) (PrepNP part_Prep (MassNP ob1))) (PrepNP in_Prep (DetCN (DetQuant IndefArt NumPl) (UseN instance_N))))) ;
exhaustiveDecomposition ob1 ob2 = mkPolSent (PredVP (MassNP (ConjCN and_Conj ob2)) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA exhaustive_A) (UseN decomposition_N))))) (PrepNP part_Prep (MassNP ob1)))) ;
partition ob1 ob2 = mkPolSent (PredVP (MassNP (ConjCN and_Conj ob2)) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN partition_N)))) (PrepNP part_Prep (MassNP ob1)))) ;
-- binary predicates
abstractCounterpart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA abstract_A) (UseN counterpart_N))))) (PrepNP part_Prep ob2))) ;
acquaintance ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN acquaintance_N)))) (PrepNP part_Prep ob2))) ;
atomicNumber ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA atomic_A) (UseN number_N))))) (PrepNP part_Prep ob2))) ;
authors ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN author_N)))) (PrepNP part_Prep (MassNP ob2)))) ;
average ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN average_N)))) (PrepNP part_Prep ob2))) ;
barometricPressure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA barometric_A) (UseN pressure_N))))) (PrepNP part_Prep ob2))) ;
believes ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a believe_V2) (sentToNoun ob2))) ;
boilingPoint ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumPl) (ApposCN (UseN2 (VerbToNounV2 boil_V2)) (MassNP (UseN point_N)))))) (PrepNP part_Prep ob2))) ;
causes ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a cause_V2) ob2)) ;
causesProposition ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (ComplSlash (SlashV2a cause_V2) (sentToNoun ob2))) ;
causesSubclass ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (ComplSlash (SlashV2a cause_V2) (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN class_N))))) (PrepNP part_Prep (MassNP ob2)))) ;
citizen ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN citizen_N)))) (PrepNP part_Prep ob2))) ;
conclusion ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN conclusion_N)))) (PrepNP part_Prep ob2))) ;
connected ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (PassV2 connect_V2) (PrepNP to_Prep ob2))) ;
considers ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a consider_V2) (sentToNoun ob2))) ;
consistent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (PositA consistent_A))) (PrepNP with_Prep ob2))) ;
containsInformation ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a contain_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN information_N) ob2)))) ;
cooccur ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (AdvVP (UseV occur_V) (PositAdvAdj simultaneous_A)) (PrepNP with_Prep ob2))) ;
copy ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN copy_N)))) (PrepNP part_Prep ob2))) ;
date ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN date_N)))) (PrepNP part_Prep ob2))) ;
decreasesLikelihood ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (AdvVP (ComplSlash (SlashV2a decrease_V2) (DetCN (DetQuant DefArt NumSg) (UseN possibility_N))) (PrepNP part_Prep (sentToNoun ob2)))) ;
desires ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a desire_V2) (sentToNoun ob2))) ;
diameter ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN diameter_N)))) (PrepNP part_Prep ob2))) ;
duration ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN duration_N)))) (PrepNP part_Prep ob2))) ;
earlier ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA early_A ob2)))) ;
editor ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN editor_N)))) (PrepNP part_Prep (MassNP ob2)))) ;
element ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN element_N)))) (PrepNP part_Prep ob2))) ;
employs ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a employ_V2) ob2)) ;
entails ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (ComplSlash (SlashV2a entail_V2) (sentToNoun ob2))) ;
equal ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (PositA equal_A))) (PrepNP to_Prep ob2))) ;
exploits ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a exploit_V2) ob2)) ;
expressedInLanguage ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (PassV2 express_V2) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob2))))) ;
faces ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a face_V2) ob2)) ;
familyRelation ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN family_N) (MassNP (UseN relation_N)))))) (PrepNP part_Prep ob2))) ;
frequency ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN frequency_N)))) (PrepNP part_Prep ob2))) ;
geometricPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA geometric_A) (UseN part_N))))) (PrepNP part_Prep ob2))) ;
graphMeasure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN measure_N)))) (PrepNP part_Prep ob2))) ;
graphPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN part_N)))) (PrepNP part_Prep ob2))) ;
hasPurpose ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN purpose_N) (sentToNoun ob2))))) ;
hasSkill ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN skill_N) ob2)))) ;
holdsDuring ob1 ob2 = mkPolSent (PredVP (sentToNoun ob2) (AdvVP (UseV hold_V) (PrepNP during_Prep ob1))) ;
holdsObligation ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (ComplSlash (SlashV2a behold_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN obligation_N) ob2)))) ;
holdsRight ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (ComplSlash (SlashV2a behold_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN right_N) ob2)))) ;
hole ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN hole_N)))) (PrepNP part_Prep ob2))) ;
identicalListItems ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA identical_A) (UseN item_N))))) ;
inList ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN element_N)))) (PrepNP part_Prep ob2))) ;
increasesLikelihood ob1 ob2 = mkPolSent (PredVP (sentToNoun ob1) (AdvVP (ComplSlash (SlashV2a increase_V2) (DetCN (DetQuant DefArt NumSg) (UseN possibility_N))) (PrepNP part_Prep (sentToNoun ob2)))) ;
independentProbability ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP (sentToNoun ob1) (sentToNoun ob2))) (ComplSlash (SlashV2a have_V2) (MassNP (AdjCN (PositA independent_A) (UseN probability_N))))) ;
inhabits ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a inhabit_V2) ob2)) ;
inhibits ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (ComplSlash (SlashV2a inhibit_V2) (MassNP ob2))) ;
knows ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a know_V2) (sentToNoun ob2))) ;
larger ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA large_A ob2)))) ;
leader ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN leader_N)))) (PrepNP part_Prep ob2))) ;
legalRelation ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA legal_A) (UseN relation_N))))) (PrepNP part_Prep ob2))) ;
lessThanOrEqualTo ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (ConjAP or_Conj (BaseAP (PositA less_A) (PositA equal_A))))) (PrepNP to_Prep ob2))) ;
lineMeasure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN measure_N)))) (PrepNP part_Prep ob2))) ;
material ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN material_N)))) (PrepNP part_Prep ob2))) ;
measure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN measure_N)))) (PrepNP part_Prep ob2))) ;
meltingPoint ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumPl) (ApposCN (UseN2 (VerbToNounV2 melt_V2)) (MassNP (UseN point_N)))))) (PrepNP part_Prep ob2))) ;
multiplicativeFactor ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN factor_N)))) (PrepNP part_Prep ob2))) ;
mutualAcquaintance ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (UseComp (CompNP (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA mutual_A) (UseN acquaintance_N)))))) ;
needs ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a need_V2) ob2)) ;
parallel ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (PositA parallel_A))) (PrepNP to_Prep ob2))) ;
parent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN parent_N)))) (PrepNP part_Prep ob2))) ;
partialOrderingOn ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA partial_A) (UseN ordering_N))))) (PrepNP on_Prep ob2))) ;
pathLength ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN length_N)))) (PrepNP part_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN path_N) ob2))))) ;
possesses ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a possess_V2) ob2)) ;
precondition ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN precondition_N)))) (PrepNP part_Prep (MassNP ob2)))) ;
premise ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN premise_N)))) (PrepNP part_Prep ob2))) ;
prevents ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (ComplSlash (SlashV2a prevent_V2) (MassNP ob2))) ;
property ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN property_N)))) (PrepNP part_Prep ob2))) ;
publishes ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a publish_V2) (MassNP ob2))) ;
radius ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN radius_N)))) (PrepNP part_Prep ob2))) ;
refers ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseV refer_V) (PrepNP to_Prep ob2))) ;
reflexiveOn ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (PositA reflexive_A))) (PrepNP on_Prep ob2))) ;
relatedEvent ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (UseComp (CompNP (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA (VerbToParticipeA relate_V)) (UseN event_N)))))) ;
relatedInternalConcept ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (UseComp (CompNP (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA (VerbToParticipeA relate_V)) (AdjCN (PositA internal_A) (UseN concept_N))))))) ;
relative ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN relative_N)))) (PrepNP part_Prep ob2))) ;
sibling ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN sibling_N)))) (PrepNP part_Prep ob2))) ;
smaller ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA small_A ob2)))) ;
subAttribute ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN attribute_N)))))) (PrepNP part_Prep ob2))) ;
subCollection ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN collection_N)))))) (PrepNP part_Prep ob2))) ;
subGraph ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN graph_N)))))) (PrepNP part_Prep ob2))) ;
subList ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN list_N)))))) (PrepNP part_Prep ob2))) ;
subProcess ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN process_N)))))) (PrepNP part_Prep ob2))) ;
subProposition ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN proposition_N)))))) (PrepNP part_Prep ob2))) ;
subSystem ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN system_N)))))) (PrepNP part_Prep ob2))) ;
subclass ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN class_N)))))) (PrepNP part_Prep ob2))) ;
subsumesContentClass ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (ComplSlash (SlashV2a subsume_V2) (DetCN (DetQuant DefArt NumSg) (UseN content_N))) (PrepNP part_Prep (MassNP ob2)))) ;
subsumesContentInstance ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a subsume_V2) (DetCN (DetQuant DefArt NumSg) (UseN content_N))) (PrepNP part_Prep ob2))) ;
successorAttribute ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN successor_N) (MassNP (UseN attribute_N)))))) (PrepNP part_Prep ob2))) ;
systemPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN part_N)))) (PrepNP part_Prep ob2))) ;
temporalPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA temporal_A) (UseN part_N))))) (PrepNP part_Prep ob2))) ;
time ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN time_N)))) (PrepNP part_Prep ob2))) ;
totalOrderingOn ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA total_A) (UseN ordering_N))))) (PrepNP on_Prep ob2))) ;
traverses ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a traverse_V2) ob2)) ;
uses ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a use_V2) ob2)) ;
version ob1 ob2 = mkPolSent (PredVP (MassNP ob1) (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN version_N)))) (PrepNP part_Prep (MassNP ob2)))) ;
wants ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a want_V2) ob2)) ;
wears ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a outwear_V2) ob2)) ;
weight ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN weight_N)))) (PrepNP part_Prep ob2))) ;
age ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN age_N)))) (PrepNP part_Prep ob2))) ;
agent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN agent_N)))) (PrepNP part_Prep ob2))) ;
ancestor ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN ancestor_N)))) (PrepNP part_Prep ob2))) ;
angleOfFigure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN angle_N)))) (PrepNP part_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN figure_N) ob2))))) ;
attends ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a attend_V2) ob2)) ;
attribute ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN attribute_N)))) (PrepNP part_Prep ob2))) ;
before ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAdv (PrepNP before_Prep ob2)))) ;
bottom ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN bottom_N)))) (PrepNP part_Prep ob2))) ;
side ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN side_N)))) (PrepNP part_Prep ob2))) ;
surface ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN surface_N)))) (PrepNP part_Prep ob2))) ;
top ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN top_N)))) (PrepNP part_Prep ob2))) ;
brother ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN brother_N)))) (PrepNP part_Prep ob2))) ;
fills ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a fill_V2) ob2)) ;
completelyFills ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj complete_A)) (ComplSlash (SlashV2a fill_V2) ob2)) ;
properlyFills ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj proper_A)) (ComplSlash (SlashV2a fill_V2) ob2)) ;
exactlyLocated ob1 ob2 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA exact_A) (UseN location_N))))) (PrepNP part_Prep ob1))) ;
partiallyFills ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj partial_A)) (ComplSlash (SlashV2a fill_V2) ob2)) ;
component ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN component_N)))) (PrepNP part_Prep ob2))) ;
contains ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a contain_V2) ob2)) ;
crosses ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a cross_V2) ob2)) ;
destination ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN destination_N)))) (PrepNP part_Prep ob2))) ;
direction ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN direction_N)))) (PrepNP part_Prep ob2))) ;
during ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseV happen_V) (PrepNP during_Prep ob2))) ;
equivalentContentClass ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP (MassNP ob1) (MassNP ob2))) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA equivalent_A) (UseN content_N))))) ;
finishes ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a finish_V2) ob2)) ;
grasps ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a grasp_V2) ob2)) ;
penetrates ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a penetrate_V2) ob2)) ;
height ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN height_N)))) (PrepNP part_Prep ob2))) ;
length ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN length_N)))) (PrepNP part_Prep ob2))) ;
width ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN width_N)))) (PrepNP part_Prep ob2))) ;
home ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN home_N)))) (PrepNP part_Prep ob2))) ;
husband ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN husband_N)))) (PrepNP part_Prep ob2))) ;
wife ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN wife_N)))) (PrepNP part_Prep ob2))) ;
instrument ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN instrument_N)))) (PrepNP part_Prep ob2))) ;
result ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN result_N)))) (PrepNP part_Prep ob2))) ;
interiorPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN interior_N)))) part_Adv) (PrepNP part_Prep ob2))) ;
linearExtent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA linear_A) (UseN extent_N))))) (PrepNP part_Prep ob2))) ;
located ob1 ob2 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN location_N)))) (PrepNP part_Prep ob1))) ;
manner ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN manner_N)))) (PrepNP part_Prep ob2))) ;
member ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN member_N)))) (PrepNP part_Prep ob2))) ;
monetaryValue ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA monetary_A) (UseN value_N))))) (PrepNP part_Prep ob2))) ;
names ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN name_N)))) (PrepNP part_Prep ob2))) ;
origin ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN origin_N)))) (PrepNP part_Prep ob2))) ;
part ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN part_N)))) (PrepNP part_Prep ob2))) ;
path ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN path_N)))) (PrepNP part_Prep ob2))) ;
mother ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN mother_N)))) (PrepNP part_Prep ob2))) ;
father ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN father_N)))) (PrepNP part_Prep ob2))) ;
daughter ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN daughter_N)))) (PrepNP part_Prep ob2))) ;
son ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN son_N)))) (PrepNP part_Prep ob2))) ;
patient ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN patient_N)))) (PrepNP part_Prep ob2))) ;
piece ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN piece_N)))) (PrepNP part_Prep ob2))) ;
pointOfFigure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN point_N)))) (PrepNP part_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN figure_N) ob2))))) ;
properPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA proper_A) (UseN part_N))))) (PrepNP part_Prep ob2))) ;
realization ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (UseN realization_N)))) (PrepNP part_Prep ob2))) ;
represents ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a represent_V2) ob2)) ;
sister ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN sister_N)))) (PrepNP part_Prep ob2))) ;
spouse ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN spouse_N)))) (PrepNP part_Prep ob2))) ;
starts ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a start_V2) ob2)) ;
stays ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a stay_V2) ob2)) ;
subOrganization ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN organization_N)))))) (PrepNP part_Prep ob2))) ;
subPlan ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN plan_N)))))) (PrepNP part_Prep ob2))) ;
superficialPart ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA superficial_A) (UseN part_N))))) (PrepNP part_Prep ob2))) ;
truth ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN truth_N) (MassNP (UseN value_N)))))) (PrepNP part_Prep ob2))) ;
angularMeasure ob1 ob2 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA angular_A) (UseN measure_N))))) (PrepNP part_Prep ob1))) ;
arcWeight ob1 ob2 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN weight_N)))) (PrepNP part_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN arc_N) ob1))))) ;
geographicSubregion ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN region_N)))))) (PrepNP part_Prep ob2))) ;
involvedInEvent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (PassV2 involve_V2) (PrepNP in_Prep ob2))) ;
meetsTemporally ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj temporal_A)) (ComplSlash (SlashV2a meet_V2) ob2)) ;
partlyLocated ob1 ob2 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA partial_A) (UseN location_N))))) (PrepNP part_Prep ob1))) ;
geopoliticalSubdivision ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN division_N)))))) (PrepNP part_Prep ob2))) ;
immediateSubclass ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA immediate_A) (ApposCN (UseN sub_N) (MassNP (UseN class_N))))))) (PrepNP part_Prep ob2))) ;
meetsSpatially ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj spatial_A)) (ComplSlash (SlashV2a meet_V2) ob2)) ;
overlapsPartially ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj partial_A)) (ComplSlash (SlashV2a overlap_V2) ob2)) ;
overlapsSpatially ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj spatial_A)) (ComplSlash (SlashV2a overlap_V2) ob2)) ;
subset ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN set_N)))))) (PrepNP part_Prep ob2))) ;
greaterThan ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA great_A ob2)))) ;
greaterThanOrEqualTo ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompAP (ConjAP or_Conj (BaseAP (UseComparA great_A) (PositA equal_A))))) (PrepNP to_Prep ob2))) ;
inScopeOfInterest ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (PassV2 interest_V2) (PrepNP in_Prep ob2))) ;
overlapsTemporally ob1 ob2 = mkPolSent (PredVP (AdvNP ob1 (PositAdvAdj temporal_A)) (ComplSlash (SlashV2a overlap_V2) ob2)) ;
engineeringSubcomponent ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (ApposCN (UseN sub_N) (MassNP (UseN component_N)))))) (PrepNP part_Prep ob2))) ;
equivalentContentInstance ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA equivalent_A) (UseN content_N))))) ;
successorAttributeClosure ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (ApposCN (UseN successor_N) (MassNP (UseN attribute_N))) (MassNP (UseN closure_N)))))) (PrepNP part_Prep ob2))) ;
transactionAmount ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN amount_N)))) (PrepNP part_Prep ob2))) ;
connectedEngineeringComponents ob1 ob2 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (PassV2 connect_V2)) ;
-- ternary predicate
between ob1 ob2 ob3 = mkPolSent (PredVP ob2 (UseComp (CompAdv (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob3)))))) ;
conditionalProbability ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN probability_N)))) (PrepNP part_Prep (PPartNP (sentToNoun ob1) condition_V2))) (PrepNP by8agent_Prep (sentToNoun ob2)))) ;
confersNorm ob1 ob2 ob3 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a confer_V2) (ConjNP and_Conj (BaseNP ob3 (sentToNoun ob2))))) ;
confersObligation ob1 ob2 ob3 = mkPolSent (PredVP (sentToNoun ob1) (AdvVP (AdvVP (ComplSlash (SlashV2a confer_V2) (DetCN (DetQuant DefArt NumSg) (UseN obligation_N))) (PrepNP part_Prep ob3)) (PrepNP to_Prep ob2))) ;
confersRight ob1 ob2 ob3 = mkPolSent (PredVP (sentToNoun ob1) (AdvVP (AdvVP (ComplSlash (SlashV2a confer_V2) (DetCN (DetQuant DefArt NumSg) (UseN right_N))) (PrepNP part_Prep ob3)) (PrepNP to_Prep ob2))) ;
connects ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a connect_V2) ob2) (PrepNP to_Prep ob3))) ;
deprivesNorm ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a deprive_V2) ob3) (PrepNP to_Prep ( sentToNoun ob2)))) ;
distance ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN distance_N)))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))))) ;
documentation ob1 ob2 ob3 = mkPolSent (PredVP ob2 (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN documentation_N)))) (PrepNP part_Prep ob1)) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob2))))) ;
geometricDistance ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA geometric_A) (UseN distance_N))))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob2))))) ;
hasPurposeForAgent ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN purpose_N) (sentToNoun ob2)))) (PrepNP for_Prep (MassNP (ApposCN (UseN agent_N) ob3))))) ;
links ob1 ob2 ob3 = mkPolSent (PredVP ob3 (ComplSlash (SlashV2a link_V2) (ConjNP and_Conj (BaseNP ob1 ob2)))) ;
occupiesPosition ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a occupy_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN position_N) ob2))) (PrepNP in_Prep ob3))) ;
orientation ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN orientation_N)))) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))))) ;
pointOfIntersection ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN point_N)))) (PrepNP part_Prep (MassNP (UseN intersection_N)))) (PrepNP part_Prep (ConjNP and_Conj (BaseNP ob1 ob2))))) ;
relatedExternalConcept ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA (VerbToParticipeA relate_V)) (AdjCN (PositA external_A) (UseN concept_N)))))) (PrepNP part_Prep ob2)) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob3))))) ;
representsForAgent ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a represent_V2) ob2) (PrepNP for_Prep ob3))) ;
representsInLanguage ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a represent_V2) ob2) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob3))))) ;
temporallyBetween ob1 ob2 ob3 = mkPolSent (PredVP ob2 (AdvVP (UseComp (CompAdv (PositAdvAdj temporal_A))) (PrepNP between_Prep (ConjNP and_Conj (BaseNP ob1 ob3))))) ;
temporallyBetweenOrEqual ob1 ob2 ob3 = mkPolSent (PredVP ob2 (AdvVP (AdvVP (UseComp (CompAdv (PositAdvAdj temporal_A))) (ConjAdv or_Conj (BaseAdv between_Adv (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA same_A) (UseN time_N))))))) (PrepNP with_Prep (ConjNP or_Conj (BaseNP ob1 ob3))))) ;
altitude ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (AdvCN (UseN altitude_N) (PrepNP part_Prep ob1)) (MassNP (UseN relative_N)))))) (PrepNP to_Prep ob2))) ;
connectsEngineeringComponents ob1 ob2 ob3 = mkPolSent (PredVP ob3 (ComplSlash (SlashV2a connect_V2) (ConjNP and_Conj (BaseNP ob2 ob3)))) ;
depth ob1 ob2 ob3 = mkPolSent (PredVP ob3 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (ApposCN (AdvCN (UseN depth_N) (PrepNP part_Prep ob1)) (MassNP (UseN relative_N)))))) (PrepNP to_Prep ob2))) ;
synonymousExternalConcept ob1 ob2 ob3 = mkPolSent (PredVP (ConjNP and_Conj (BaseNP ob1 ob2)) (AdvVP (UseComp (CompNP (DetCN (DetQuant IndefArt NumPl) (AdjCN (PositA synonymous_A) (AdjCN (PositA external_A) (UseN concept_N)))))) (PrepNP in_Prep (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob3))))) ;
greaterThanByQuality ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (AdvVP (AdvVP (UseV (mkV "have")) more_Adv) (PrepNP part_Prep (PPartNP ob3 compare_V2))) (PrepNP to_Prep ob2))) ;
prefers ob1 ob2 ob3 = mkPolSent (PredVP ob1 (AdvVP (ComplSlash (SlashV2a prefer_V2) (sentToNoun ob2)) (PrepNP to_Prep (sentToNoun ob3)))) ;
--others
toInt x = {s = \\c => x.s; a = agrP3 Sg; lock_NP = <>} ;
toRealNum x = {s = \\c => x.s; a = agrP3 Sg; lock_NP = <>} ;
};

51
examples/SUMO/MergeFre.gf Normal file
View File

@@ -0,0 +1,51 @@
--# -path=.:french:romance:abstract:prelude:common
concrete MergeFre of Merge = BasicFre ** open DictLangFre, ParadigmsFre, ResFre, LexiconFre, ExtraLexiconFre, ParamBasic,StructuralFre in {
lin
-- single instances
-- subclass declarations :
Animal = UseN animal_N ;
AnimalLanguage = ApposCN (UseN animal_N) (MassNP (UseN language_N)) ;
Blood = UseN blood_N ;
Bone = UseN bone_N ;
Book = UseN book_N ;
Buying = UseN2 (VerbToNounV2 buy_V2) ;
Day = UseN day_N ;
Eating = UseN2 (VerbToNounV2 eat_V2) ;
Egg = UseN egg_N ;
House = UseN house_N ;
Man = UseN man_N ;
Meat = UseN meat_N ;
WaterCloud = ApposCN (UseN water_N) (MassNP (UseN cloud_N)) ;
Wind = UseN wind_N ;
Woman = UseN woman_N ;
Worm = UseN worm_N ;
Year = UseN year_N ;
-- unary functions
FloorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN floor_N)) (PrepNP part_Prep ob) ;
YearFn ob = AdvCN (UseN year_N) (PrepNP part_Prep ob) ;
SquareRootFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA square_A) (UseN root_N))) (PrepNP part_Prep ob) ;
RoundFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA round_A) (UseN value_N))) (PrepNP possess_Prep ob) ;
-- binary functions
DayFn ob1 ob2 = AdvCN (ApposCN (UseN day_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
knows ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a know_V2) (sentToNoun ob2))) ;
smaller ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA small_A ob2)))) ;
husband ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN husband_N)))) (PrepNP part_Prep ob2))) ;
wife ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN wife_N)))) (PrepNP part_Prep ob2))) ;
sister ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN sister_N)))) (PrepNP part_Prep ob2))) ;
-- ternary predicate
};

54
examples/SUMO/MergeRon.gf Normal file
View File

@@ -0,0 +1,54 @@
--# -path=.:romanian:abstract:prelude:common
concrete MergeRon of Merge = BasicRon ** open DictLangRon, ParadigmsRon, ResRon, LexiconRon, ExtraLexiconRon, ParamBasic,StructuralRon in {
lin
-- single instances
-- subclass declarations :
Animal = UseN animal_N ;
AnimalLanguage = ApposCN (UseN animal_N) (MassNP (UseN language_N)) ;
Blood = UseN blood_N ;
Bone = UseN bone_N ;
Book = UseN book_N ;
Buying = UseN2 (VerbToNounV2 buy_V2) ;
Day = UseN day_N ;
Eating = UseN2 (VerbToNounV2 eat_V2) ;
Egg = UseN egg_N ;
House = UseN house_N ;
Man = UseN man_N ;
Meat = UseN meat_N ;
WaterCloud = ApposCN (UseN water_N) (MassNP (UseN cloud_N)) ;
Wind = UseN wind_N ;
Woman = UseN woman_N ;
Worm = UseN worm_N ;
Year = UseN year_N ;
-- unary functions
FloorFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (UseN floor_N)) (PrepNP part_Prep ob) ;
YearFn ob = AdvCN (UseN year_N) (PrepNP part_Prep ob) ;
SquareRootFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA square_A) (UseN root_N))) (PrepNP part_Prep ob) ;
RoundFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA round_A) (UseN value_N))) (PrepNP possess_Prep ob) ;
-- binary functions
DayFn ob1 ob2 = AdvCN (ApposCN (UseN day_N) ob1) (PrepNP part_Prep (MassNP ob2)) ;
knows ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a know_V2) (sentToNoun ob2))) ;
smaller ob1 ob2 = mkPolSent (PredVP ob1 (UseComp (CompAP (ComparA small_A ob2)))) ;
husband ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN husband_N)))) (PrepNP part_Prep ob2))) ;
wife ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN wife_N)))) (PrepNP part_Prep ob2))) ;
sister ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN sister_N)))) (PrepNP part_Prep ob2))) ;
-- ternary predicate
--others
toInt x = mkNP x.s ("lui" ++ x.s) x.s Sg Masc;
toRealNum x = mkNP x.s ("lui" ++ x.s) x.s Sg Masc;
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,42 @@
--# -path=.:french:romance:abstract:prelude:common
concrete Mid_level_ontologyFre of Mid_level_ontology = MergeFre ** open DictLangFre, ParadigmsFre, LexiconFre, ExtraLexiconFre in{
lin
-- individual instances :
Student = MassNP (UseN student_N) ;
Teacher = MassNP (UseN teacher_N) ;
-- subclasses
Apple = UseN apple_N ;
ArtSchool = ApposCN (UseN art_N) (MassNP (UseN school_N)) ;
Beer = UseN beer_N ;
BirdEgg = ApposCN (UseN bird_N) (MassNP (UseN egg_N)) ;
Boy = UseN boy_N ;
Closing = UseN2 (VerbToNounV2 close_V2) ;
DaySchool = ApposCN (UseN day_N) (MassNP (UseN school_N)) ;
Eye = UseN eye_N ;
Girl = UseN girl_N ;
Grass = UseN grass_N ;
Head = UseN head_N ;
Heart = UseN heart_N ;
Knee = UseN knee_N ;
Milk = UseN milk_N ;
Restaurant = UseN restaurant_N ;
-- unary functions :
FirstFn ob = AdvNP (DetCN (DetQuantOrd DefArt NumSg (OrdNumeral (num (pot2as3 (pot1as2 (pot0as1 pot01)))))) (UseN element_N)) (PrepNP part_Prep ob) ;
--bespeak_V2
speaksLanguage ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a speak_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob2)))) ;
student ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN student_N)))) (PrepNP part_Prep ob2))) ;
teacher ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN teacher_N)))) (PrepNP part_Prep ob2))) ;
friend ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN friend_N)))) (PrepNP part_Prep ob2))) ;
cousin ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN cousin_N)))) (PrepNP part_Prep ob2))) ;
fears ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a fear_V2) (sentToNoun ob2))) ;
};

View File

@@ -0,0 +1,43 @@
--# -path=.:romanian:abstract:prelude:common
concrete Mid_level_ontologyRon of Mid_level_ontology = MergeRon ** open DictLangRon, ParadigmsRon, LexiconRon, ExtraLexiconRon in{
lin
-- individual instances :
Student = MassNP (UseN student_N) ;
Teacher = MassNP (UseN teacher_N) ;
-- subclasses
Apple = UseN apple_N ;
ArtSchool = ApposCN (UseN art_N) (MassNP (UseN school_N)) ;
Beer = UseN beer_N ;
BirdEgg = ApposCN (UseN bird_N) (MassNP (UseN egg_N)) ;
Boy = UseN boy_N ;
Closing = UseN2 (VerbToNounV2 close_V2) ;
DaySchool = ApposCN (UseN day_N) (MassNP (UseN school_N)) ;
Eye = UseN eye_N ;
Girl = UseN girl_N ;
Grass = UseN grass_N ;
Head = UseN head_N ;
Heart = UseN heart_N ;
Knee = UseN knee_N ;
Milk = UseN milk_N ;
Restaurant = UseN restaurant_N ;
-- unary functions :
FirstFn ob = AdvNP (DetCN (DetQuantOrd DefArt NumSg (OrdNumeral (num (pot2as3 (pot1as2 (pot0as1 pot01)))))) (UseN element_N)) (PrepNP part_Prep ob) ;
--LastFn ob = AdvNP (DetCN (DetQuant DefArt NumSg) (AdjCN (PositA last_A) (UseN element_N))) (PrepNP part_Prep ob);
--bespeak_V2
speaksLanguage ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a speak_V2) (DetCN (DetQuant DefArt NumSg) (ApposCN (UseN language_N) ob2)))) ;
student ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN student_N)))) (PrepNP part_Prep ob2))) ;
teacher ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN teacher_N)))) (PrepNP part_Prep ob2))) ;
friend ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN friend_N)))) (PrepNP part_Prep ob2))) ;
cousin ob1 ob2 = mkPolSent (PredVP ob1 (AdvVP (UseComp (CompNP (DetCN (DetQuant DefArt NumSg) (UseN cousin_N)))) (PrepNP part_Prep ob2))) ;
fears ob1 ob2 = mkPolSent (PredVP ob1 (ComplSlash (SlashV2a fear_V2) (sentToNoun ob2))) ;
};

431
examples/SUMO/Military.gf Normal file
View File

@@ -0,0 +1,431 @@
abstract Military = open Merge, Mid_level_ontology in {
-- A modern nation_states' air forces
-- (the whole branch of service) and not a subdivision thereof.
fun AirForce_BranchOfService : Class ;
fun AirForce_BranchOfService_Class : SubClass AirForce_BranchOfService MilitaryOrganization ;
-- (AvailableForMilitaryServiceMaleFn
-- ?AREA) denotes the Integer that represents the count of the population of
-- males of military age in the GeopoliticalArea ?AREA.
fun AvailableForMilitaryServiceMaleFn : El GeopoliticalArea -> Ind Integer ;
-- In military terminology, a battalion consists of
-- two to six companies typically commanded by a lieutenant colonel. The
-- nomenclature varies by nationality and by branch of arms, e.g. some
-- armies organize their infantry into battalions, but call battalion_sized
-- cavalry, reconnaissance, or tank units a squadron or a regiment instead.
-- There may even be subtle distinctions within a nation's branches of arms,
-- such a distinction between a tank battalion and an armored squadron,
-- depending on how the unit's operational role is perceived to fit into the
-- army's historical organization. A battalion is potentially the smallest
-- military unit capable of independent operations (i.e. not attached to a
-- higher command), but is usually part of a regiment or a brigade or both,
-- depending on the organizational model used by that service. Battalions
-- are ordinarily homogeneous with respect to type (e.g. an infantry
-- battalion or a tank battalion), although there are occasional
-- exceptions. (from Wikipedia)
fun Battalion : Class ;
fun Battalion_Class : SubClass Battalion MilitaryUnit ;
-- Brigade is a term from military science which
-- refers to a group of several battalions (typically two to four), and
-- directly attached supporting units (normally including at least an
-- artillery battery and additional logistic support). A brigade is smaller
-- than a division and roughly equal to or a little larger than a regiment.
-- Strength typically ranges between 1,500 and 3,500 personnel. (from Wikipedia)
fun Brigade : Class ;
fun Brigade_Class : SubClass Brigade MilitaryUnit ;
-- In military organizations, an officer
-- is a member of the service who holds a position of responsibility.
-- Commissioned officers derive authority directly from a sovereign power
-- and, as such, hold a commission charging them with the duties and
-- responsibilities of a specific office or position. Commissioned officers
-- are typically the only persons in a military able to exercise command
-- (according to the most technical definition of the word) over a military
-- unit. Non_commissioned officers in positions of authority can be said to
-- have control or charge rather than command per se, although the use of the
-- word command to describe any use of authority is widespread and often
-- official. (from Wikipedia)
fun CommissionedOfficerRank : Class ;
fun CommissionedOfficerRank_Class : SubClass CommissionedOfficerRank MilitaryRank ;
-- The ranks of junior officers are the
-- three or four lowest ranks of officers, possibily complicated by the
-- status of trainee officers. Their units are generally not expected to
-- operate independently for any significant length of time. Typical ranks
-- for this level are captains, who typically lead companies and smaller
-- units Lieutenant. Company grade officers will also fill staff roles in
-- some units. (from Wikipedia)
fun CompanyGradeRank : Class ;
fun CompanyGradeRank_Class : SubClass CompanyGradeRank CommissionedOfficerRank ;
-- A company is a military unit, typically
-- consisting of 100_200 soldiers. Most companies are formed of three or
-- four platoons although the exact number may vary by country, unit type and
-- structure. (from Wikipedia)
fun Company_Military : Class ;
fun Company_Military_Class : SubClass Company_Military MilitaryUnit ;
-- Soldiers who are enlisted in some
-- military and have no command.
fun EnlistedSoldierRank : Class ;
fun EnlistedSoldierRank_Class : SubClass EnlistedSoldierRank MilitaryRank ;
-- Senior officers who typically
-- command units that can be expected to operate independently for short
-- periods of time (battalions and regiments, large warships). Field Grade
-- officers also commonly fill staff positions. (from Wikipedia)
fun FieldGradeOfficerRank : Class ;
fun FieldGradeOfficerRank_Class : SubClass FieldGradeOfficerRank CommissionedOfficerRank ;
-- (FitForMilitaryServiceMaleFn
-- ?AREA) denotes the Integer that represents the count of the population of
-- males of military age in the GeopoliticalArea ?AREA that is also capable
-- of being a member of the military.
fun FitForMilitaryServiceMaleFn : El GeopoliticalArea -> Ind Integer ;
-- Admirals (Navy), Generals (Army) and
-- Marshals who typically command units that are expected to operate
-- independently for extended periods of time (brigades and larger, fleets of
-- ships). (from Wikipedia)
fun FlagOfficerRank : Class ;
fun FlagOfficerRank_Class : SubClass FlagOfficerRank CommissionedOfficerRank ;
-- Military operations conducted to
-- distribute food to the friendly force. (from FM 100_40)
fun FoodDistributionOperation : Class ;
fun FoodDistributionOperation_Class : SubClass FoodDistributionOperation (both Getting (both Giving MilitaryOperation)) ;
-- A MilitaryUnit composed primarily of Soldiers
-- who fight on foot, i.e. without the use of heavy artillery.
fun InfantryUnit : Class ;
fun InfantryUnit_Class : SubClass InfantryUnit MilitaryUnit ;
-- Ranks with grade E5 or E6.
fun JuniorNCORank : Class ;
fun JuniorNCORank_Class : SubClass JuniorNCORank NonCommissionedOfficerRank ;
-- Modern nation_states' marine units (the
-- whole branch of service) and not a subdivision thereof.
fun Marines_BranchOfService : Class ;
fun Marines_BranchOfService_Class : SubClass Marines_BranchOfService MilitaryOrganization ;
-- A Convoy of MilitaryVehicles, travelling to the same
-- at least intermediate destination, in relatively close proximity.
fun MilitaryConvoy : Class ;
fun MilitaryConvoy_Class : SubClass MilitaryConvoy Convoy ;
-- Trucks used by a military to transport food.
fun MilitaryFoodTruck : Class ;
fun MilitaryFoodTruck_Class : SubClass MilitaryFoodTruck MilitarySupportVehicle ;
-- A MilitaryOperation is distinguished
-- from the broader class of MilitaryProcess in that it is planned in
-- advance.
fun MilitaryOperation : Class ;
fun MilitaryOperation_Class : SubClass MilitaryOperation MilitaryProcess ;
-- Military platforms. These are usually mobile
-- entities which can carry military equipment such as Weapons and
-- communications equipment. Often, as with a tank outfitted with a gun, a
-- MilitaryPlatform carrying some Weapon comprises a WeaponSystem.
fun MilitaryPlatform : Class ;
fun MilitaryPlatform_Class : SubClass MilitaryPlatform TransportationDevice ;
-- The class of Positions in a Military. Rank
-- is usually commensurate with degrees of power, prestige and
-- pay.
fun MilitaryRank : Class ;
fun MilitaryRank_Class : SubClass MilitaryRank SkilledOccupation ;
-- Trucks used by a military to transport supplies.
fun MilitarySupplyTruck : Class ;
fun MilitarySupplyTruck_Class : SubClass MilitarySupplyTruck (both MilitarySupportVehicle Truck) ;
-- Vehicles meant to be used for support, rather
-- than combat in a military context.
fun MilitarySupportVehicle : Class ;
fun MilitarySupportVehicle_Class : SubClass MilitarySupportVehicle MilitaryVehicle ;
fun MilitaryVehicle_MilitaryPlatform : SubClass MilitaryVehicle MilitaryPlatform ;
-- Modern nation_states' naval air
-- forces (the whole branch of service) and not a subdivision thereof.
fun NavalAirForce_BranchOfService : Class ;
fun NavalAirForce_BranchOfService_Class : SubClass NavalAirForce_BranchOfService MilitaryOrganization ;
-- MilitaryOrganizations that are sea forces.
fun Navy_BranchOfService : Class ;
fun Navy_BranchOfService_Class : SubClass Navy_BranchOfService MilitaryOrganization ;
-- Non_commissioned officers, or NCOs, in
-- positions of authority can be said to have control or charge rather than
-- command per se, although the use of the word command to describe any use
-- of authority is widespread and often official. This is distinguished from
-- the official responsibility for command entrusted to a
-- CommissionedOfficer. NCOs are enlisted positions. (from Wikipedia)
fun NonCommissionedOfficerRank : Class ;
fun NonCommissionedOfficerRank_Class : SubClass NonCommissionedOfficerRank EnlistedSoldierRank ;
-- A MilitaryUnit, the purpose of which is
-- to prevent violent actions but providing deterrent to such actions through
-- the threat of overwhelming retaliation.
fun PeacekeepingUnit : Class ;
fun PeacekeepingUnit_Class : SubClass PeacekeepingUnit MilitaryUnit ;
-- Platoon is a term from military science. In an
-- army, a platoon is a unit of thirty to forty soldiers typically commanded
-- by a Lieutenant assisted by a non_commissioned officer. A platoon is
-- formed by at least two squads (usually 3 or 4) and is smaller than a
-- company (typically there are 3 or 4 platoons per company). Most platoons
-- are infantry platoons, some carry other designations such as mortar or
-- heavy weapons platoons. A platoon is the smallest military unit led by a
-- commissioned officer. (from Wikipedia)
fun Platoon : Class ;
fun Platoon_Class : SubClass Platoon MilitaryUnit ;
-- The lowest group of ranks in the military
-- (Grade E1 through E4). These Soldiers usually have no authority
-- based on their ranks.
fun PrivateRank : Class ;
fun PrivateRank_Class : SubClass PrivateRank EnlistedSoldierRank ;
-- (equal
-- (ReachingMilitaryAgeAnnuallyMaleFn ?AREA ?YEAR) ?COUNT) means that in the
-- GeopoliticalArea ?AREA, there are ?COUNT number of male individuals who for
-- that year ?YEAR come to be of militaryAge.
fun ReachingMilitaryAgeAnnuallyMaleFn : El GeopoliticalArea -> El Year -> Ind Integer ;
-- Military operations conducted to protect the friendly
-- force by providing early and accurate warning of enemy operations, to provide the force
-- being protected with time and maneuver space within which to react to the enemy, and to
-- develop the situation to allow the commander to effectively use the protected force.
-- Security operations orient on the force or facility to be protected, rather than on the
-- enemy. (from FM 100_40).
fun SecurityOperation : Class ;
fun SecurityOperation_Class : SubClass SecurityOperation MilitaryOperation ;
-- Ranks with grade E7 through E9.
fun SeniorNCORank : Class ;
fun SeniorNCORank_Class : SubClass SeniorNCORank NonCommissionedOfficerRank ;
-- Any Soldier who is tasked with
-- carrying the colors of his/her unit in Battles and parades.
fun StandardBearer : Class ;
fun StandardBearer_Class : SubClass StandardBearer Soldier ;
-- Any Soldier who served during the
-- American Civil War
fun USCivilWarSoldier : Ind Soldier ;
-- The class of Positions in the USMilitary.
fun USMilitaryRank : Class ;
fun USMilitaryRank_Class : SubClass USMilitaryRank MilitaryRank ;
-- A USMilitaryRank that is variously called
-- Airman Basic in the Air Force, Private in the USArmy,
-- Private in the USMarineCorps, and Seaman Recruit in the USNavy.
fun USMilitaryRankE1 : Ind (both PrivateRank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Airman in the Air Force, Private in the USArmy,
-- Private First Class in the USMarineCorps, and Seaman Apprentice in the USNavy.
fun USMilitaryRankE2 : Ind (both PrivateRank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Airman First Class in the Air Force, Private First Class in the USArmy,
-- Lance Corporal in the USMarineCorps, and Seaman in the USNavy.
fun USMilitaryRankE3 : Ind (both PrivateRank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Senior Airman in the Air Force, Specialist or Corporal in the USArmy,
-- Corporal in the USMarineCorps, and Petty Officer 3rd Class in the USNavy.
fun USMilitaryRankE4 : Ind (both PrivateRank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Staff Sergeant in the Air Force, Sergeant in the USArmy,
-- Sergeant in the USMarineCorps, and Petty Officer 2nd Class in the USNavy.
fun USMilitaryRankE5 : Ind (both JuniorNCORank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Technical Sergeant in the Air Force, Staff Sergeant in the USArmy,
-- Staff Sergeant in the USMarineCorps, and Petty Officer 1st Class in the USNavy.
fun USMilitaryRankE6 : Ind (both JuniorNCORank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Master Sergeant in the Air Force, Sergeant First Class in the USArmy,
-- Gunnery Sergeant in the USMarineCorps, and Chief Petty Officer in the USNavy.
fun USMilitaryRankE7 : Ind (both SeniorNCORank USMilitaryRank) ;
-- A USMilitaryRank that is variously called
-- Senior Master Sergeant in the Air Force, Master Sergeant or First Sergeant in the USArmy,
-- Master Sergeant or First Sergeant in the USMarineCorps, and Senior Chief Petty Officer in the USNavy.
fun USMilitaryRankE8 : Ind (both SeniorNCORank USMilitaryRank) ;
-- A USMilitaryRank that is variously
-- called Chief Master Sergeant or Command Chief Master Sergeant or Chief
-- Master Sergeant of the Air Force in the Air Force, Sergeant Major or
-- Command Sergeant Major or Sergeant Major of the Army in the USArmy,
-- Master Gunnery Sergeant or Sergeant Major or Sergeant Major of the Marine
-- Corps in the USMarineCorps, and Master Chief Petty Officer or Command
-- Master Chief Petty Officer or Master Chief Petty Officer of the Navy in
-- the USNavy.
fun USMilitaryRankE9 : Ind (both SeniorNCORank USMilitaryRank) ;
-- A special USMilitaryRank
-- above E9 that marks usually the end of carrier of non_commissioned
-- officers.
fun USMilitaryRankE9special : Ind (both USMilitaryRank SeniorNCORank) ;
fun USMilitaryRankO1 : Ind (both CompanyGradeRank USMilitaryRank) ;
fun USMilitaryRankO10 : Ind (both FlagOfficerRank USMilitaryRank) ;
fun USMilitaryRankO2 : Ind (both CompanyGradeRank USMilitaryRank) ;
fun USMilitaryRankO3 : Ind (both CompanyGradeRank USMilitaryRank) ;
fun USMilitaryRankO4 : Ind (both FieldGradeOfficerRank USMilitaryRank) ;
fun USMilitaryRankO5 : Ind (both FieldGradeOfficerRank USMilitaryRank) ;
fun USMilitaryRankO6 : Ind (both FieldGradeOfficerRank USMilitaryRank) ;
fun USMilitaryRankO7 : Ind (both FlagOfficerRank USMilitaryRank) ;
fun USMilitaryRankO8 : Ind (both FlagOfficerRank USMilitaryRank) ;
fun USMilitaryRankO9 : Ind (both FlagOfficerRank USMilitaryRank) ;
fun USMilitaryRankSpecial : Ind (both FlagOfficerRank USMilitaryRank) ;
fun USMilitaryRankWO1 : Ind (both USWarrantOfficerRank USMilitaryRank) ;
fun USMilitaryRankWO2 : Ind (both USWarrantOfficerRank (both USMilitaryRank CommissionedOfficerRank)) ;
fun USMilitaryRankWO3 : Ind (both USWarrantOfficerRank (both USMilitaryRank CommissionedOfficerRank)) ;
fun USMilitaryRankWO4 : Ind (both USWarrantOfficerRank (both USMilitaryRank CommissionedOfficerRank)) ;
fun USMilitaryRankWO5 : Ind (both USWarrantOfficerRank (both USMilitaryRank CommissionedOfficerRank)) ;
-- Any Soldier who served
-- during the American Revolutionary War
fun USRevolutionaryWarSoldier : Ind Soldier ;
-- In the United States military, a
-- warrant officer was originally, and strictly, a highly skilled,
-- single_track specialty officer. But as many chief warrant officers assume
-- positions as officer in charge or department head, along with the high
-- number of bachelor's and masters degrees held within the community, their
-- contribution and expertise as a community is ever_increasing. There are
-- no 'warrant officers' per se in the U.S. Navy, but rather the term 'chief
-- warrant officer' is correct. In the U.S. Navy, a sailor must be in one
-- of the top three enlisted ranks to be eligible to become a Chief Warrant
-- Officer. In the U.S. Army, a person can progress to the warrant officer
-- rank at a grade lower than E_7 thus having a longer career and greater
-- opportunity to serve and grow. In the U.S. Marine Corps, after serving
-- at least eight years of enlisted service, and reaching the grade of E_5
-- (sergeant), an enlisted Marine can apply for the Warrant Officer program.
-- Upon the initial appointment to WO1 a warrant is given by the secretary of
-- the service, and upon promotion to chief warrant officer (CW2 and above)
-- they are commissioned by the President of the United States, take the same
-- oath and receive the same commission and charges as commissioned officers,
-- thus deriving their authority from the same source.
fun USWarrantOfficerRank : Class ;
fun USWarrantOfficerRank_Class : SubClass USWarrantOfficerRank CommissionedOfficerRank ;
-- (betweenOnPath ?OBJ1 ?OBJ2 ?OBJ3 ?PATH)
-- means that ?OBJ2 is spatially located between ?OBJ1 and ?OBJ3 on the path
-- ?PATH. Note that this is a more specialized relation of between since any
-- object that is between others with respect to a particular path is also
-- simply between them.
fun betweenOnPath : El Object -> El Object -> El Object -> Formula ;
-- The typical MilitaryRank of
-- the leader of an instance of the given MilitaryEchelon.
fun commandRankOfEchelon: Desc MilitaryUnit -> El MilitaryRank -> Formula ;
-- (fitForMilitaryService ?AGENT ?PROCESS)
-- means that ?AGENT is capable of carrying out the MilitaryProcess ?PROCESS as
-- the agent of the ?PROCESS.
fun fitForMilitaryService: El CognitiveAgent -> Desc MilitaryProcess -> Formula ;
-- (militaryAge ?AREA ?AGE) means that in the
-- GeopoliticalArea ?AREA, a person must be ?AGE or older in order to be a
-- member of the military of the ?AREA.
fun militaryAge : El GeopoliticalArea -> El TimeDuration -> Formula ;
-- (militaryExpendituresFractionOfGDP ?AREA ?FRACTION) means
-- that the estimated military spending of the GeopoliticalArea ?AREA is
-- ?FRACTION of the gross domestic product (GDP) of that area.
fun militaryExpendituresFractionOfGDP : El GeopoliticalArea -> El RationalNumber -> Formula ;
-- (militaryExpendituresFractionOfGDPInPeriod ?AREA ?FRACTION ?PERIOD)
-- means that the estimated military spending of the GeopoliticalArea ?AREA
-- was ?FRACTION of the gross domestic product (GDP) of that area during the
-- TimeInterval indicated by ?PERIOD.
fun militaryExpendituresFractionOfGDPInPeriod : El GeopoliticalArea -> El RationalNumber -> El TimeInterval -> Formula ;
-- (militaryExpendituresInUSDollars ?AREA ?AMOUNT) means that the
-- estimated military spending of the GeopoliticalArea ?AREA is ?AMOUNT
-- in UnitedStatesDollars. Note: This predicate was created to represent
-- data from the CIA World Fact Book, which calculates ?AMOUNT by multiplying
-- estimated percentage of ?AREA's budget spent on defense by its gross
-- domestic product (GDP) expressed in U.S. dollars. Note that this GDP is
-- calculated by the exchange rate method rather than by
-- PPPBasedEconomicValuation. Military expenditures data is approximate.
fun militaryExpendituresInUSDollars : El GeopoliticalArea -> El CurrencyMeasure -> Formula ;
-- (militaryExpendituresInUSDollarsInPeriod ?AREA ?AMOUNT ?PERIOD) means
-- that the estimated military spending of the GeopoliticalArea ?AREA was
-- ?AMOUNT in UnitedStatesDollars during the TimeInterval indicated by
-- ?PERIOD. Note: This predicate was created to represent data from the CIA
-- World Fact Book, which calculates ?AMOUNT by multiplying estimated defense
-- spending of an ?AREA in percentage terms by the gross domestic product (GDP)
-- for ?PERIOD. Note that for this figure, GDP is calculated by the exchange
-- rate method rather than by PPPBasedEconomicValuation. In any case,
-- military expenditures data should be treated as only approximate.
fun militaryExpendituresInUSDollarsInPeriod : El GeopoliticalArea -> El CurrencyMeasure -> El TimeInterval -> Formula ;
-- (militaryOfArea ?MILITARY ?AREA)
-- denotes that ?MILITARY is a MilitaryOrganization serving in defense of
-- the GeopoliticalArea ?AREA.
fun militaryOfArea : El MilitaryOrganization -> El GeopoliticalArea -> Formula ;
-- A subEchelon is a relationship between
-- named organizational unit types in which a unit of one type is a
-- subOrganization of the other.
fun subEchelon: Desc MilitaryUnit -> Desc MilitaryUnit -> Formula ;
}

1354
examples/SUMO/QoSontology.gf Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,13 @@
--1 Lang: a Test Module for the Resource Grammar
-- This grammar is for testing the resource as included in the
-- language-independent API, consisting of a grammar and a lexicon.
-- The grammar without a lexicon is [``Grammar`` Grammar.html],
-- which may be more suitable to open in applications.
abstract DictLang =
Grammar,
Extension
** {
-- flags startcat=NP ;
} ;

View File

@@ -0,0 +1,9 @@
--# -path=.:../../../lib/src/abstract:../../../lib/src/english:../../../lib/src/common
concrete DictLangEng of DictLang =
GrammarEng,
ExtensionEng ** {
flags unlexer = text ; lexer = text ;
} ;

View File

@@ -0,0 +1,10 @@
--# -path=.:../abstract:../common:../prelude:../romance:
concrete DictLangFre of DictLang =
GrammarFre,
ExtensionFre
** {
flags unlexer = text ; lexer = text ;
} ;

View File

@@ -0,0 +1,10 @@
--# -path=.:../abstract:../common:../prelude
concrete DictLangRon of DictLang =
GrammarRon,
ExtensionRon
** {
flags unlexer = text ; lexer = text ;
} ;

View File

@@ -0,0 +1,32 @@
-- other functions needed for parsing
abstract Extension = Cat ** {
cat
PolSentence;
StmtS ;
[CN]{2};
fun
VerbToNounV2 : V2 -> N2 ; -- discovering
VerbToNoun : V -> N ; -- walking is healthy
VerbToGerundA : V -> A ; -- singing bird
VerbToParticipeA : V -> A ; -- the required number
ConjCN : Conj -> [CN] -> CN ; -- set or class
mkPolSent : Cl -> PolSentence ;
sentToNoun : PolSentence -> NP ;
UsePolSentence : Pol -> PolSentence -> StmtS ;
at_Prep : Prep ;
per_Prep : Prep ;
O1 : NP ;
O2 : NP ;
O3 : NP ;
O4 : NP ;
O5 : NP ;
};

View File

@@ -0,0 +1,58 @@
concrete ExtensionEng of Extension = CatEng ** open MorphoEng, ResEng, ConjunctionEng, StructuralEng, Prelude, ParadigmsEng, Coordination,ParamBasic in {
lincat
PolSentence = {s : SentForm => Polarity => Str ; flag : Flag};
[CN] = {s1,s2 : Number => Case => Str ; g : Gender} ;
StmtS = {s : Str};
lin
VerbToNounV2 vs = VerbToNoun vs ** {c2 = vs.c2};
VerbToNoun v = {s = \\_,_ => v.s ! VPresPart;
g = Masc};
VerbToGerundA v = {s = \\_ => v.s ! VPresPart};
VerbToParticipeA v = {s = \\_ => v.s ! VPPart};
mkPolSent cl = {s = \\f,b => case b of
{Pos => cl.s ! Pres ! Simul ! CPos ! ODir;
_ => cl.s ! Pres ! Simul ! CNeg False ! ODir};
flag = NothingS ;
lock_PolSentence = <>};
sentToNoun ps = {s = \\_ => "\"" ++ ps.s ! Indep ! Pos ++ "\"";
a = agrP3 Sg};
ConjCN conj ss = conjunctDistrTable2 Number Case conj ss ** {g = ss.g};
BaseCN x y ={s1 = \\n,c => x.s ! n ! c ;
s2 = \\n,c => y.s ! n ! c ;
g = x.g} ;
ConsCN xs x = consrTable2 Number Case comma xs x ** {g = Masc} ;
UsePolSentence p ps = {s = ps.s ! Indep ! p.p};
at_Prep = mkPrep "at" ;
per_Prep = mkPrep "per" ;
O1 = {s = \\_ => "o1" ;
a = agrP3 Sg};
O2 = {s = \\_ => "o2" ;
a = agrP3 Sg};
O3 = {s = \\_ => "o3" ;
a = agrP3 Sg};
O4 = {s = \\_ => "o4" ;
a = agrP3 Sg};
O5 = {s = \\_ => "o5" ;
a = agrP3 Sg};
}

View File

@@ -0,0 +1,64 @@
--# -path=.:../romance:../common:../abstract:../prelude:
concrete ExtensionFre of Extension = CatFre ** open MorphoFre, Prelude, Coordination,ParamBasic, ResFre, GrammarFre, ParadigmsFre in {
lincat
PolSentence = {s : SentForm => Polarity => Str ; flag : Flag};
[CN] = {s1,s2 : Number => Str ; g : Gender} ;
SS = {s : Str};
lin
VerbToNoun v = {s = \\_ => v.s ! (VInfin True);
g = Masc};
VerbToNounV2 v2 = VerbToNoun v2 ** {c2 = v2.c2};
VerbToGerundA v = {s = \\_,af => case af of
{AF g n => v.s ! VGer; -- need more data for feminine and plural forms
AA => "en" ++ v.s ! VGer
};
isPre = False};
VerbToParticipeA v = {s = \\_,af => case af of
{AF g n => v.s ! (VPart g n);
AA => "en" ++ v.s ! VGer
};
isPre = False} ;
mkPolSent cl = {s = \\f,b => cl.s ! DDir ! RPres ! Simul ! b ! Indic ;
flag = NothingS ;
lock_PolSentence = <>
};
sentToNoun ps = heavyNP {s = \\_ => "\"" ++ ps.s ! Indep ! Pos ++ "\"";
a = agrP3 Masc Sg
};
at_Prep = mkPreposition "à" ;
per_Prep = mkPreposition "per" ;
ConjCN conj ss = conjunctDistrTable Number conj ss ** {
g = ss.g
};
BaseCN x y ={
s1 = \\n => x.s ! n ;
s2 = \\n => y.s ! n ;
g = x.g};
ConsCN xs x = consrTable Number comma xs x ** {g = x.g} ;
UsePolSentence p ps = {s = ps.s ! Indep ! p.p};
O1 = UsePN (mkPN "o1") ;
O2 = UsePN (mkPN "o2") ;
O3 = UsePN (mkPN "o3") ;
O4 = UsePN (mkPN "o4") ;
O5 = UsePN (mkPN "o5") ;
}

View File

@@ -0,0 +1,61 @@
concrete ExtensionRon of Extension = CatRon ** open MorphoRon, ResRon, ConjunctionRon, StructuralRon, Prelude, Coordination,ParamBasic, ParadigmsRon, NounRon in {
lincat
PolSentence = {s : SentForm => Polarity => Str ; flag : Flag};
[CN] = {s1,s2 : Number => Species => ACase => Str; g : NGender; a : Animacy ; isComp : Bool} ;
StmtS = {s : Str};
lin
VerbToNounV2 v2 = VerbToNoun v2 ** {c2 = v2.c2};
VerbToNoun vp = { s = \\n,sp,c => vp.s ! PPasse Masc n sp c ;
g = NNeut ; a = Inanimate };
VerbToGerundA vp = {s = \\af => vp.s ! Ger;
isPre = False
};
VerbToParticipeA v = {s = \\af => case af of
{AF g n sp c => v.s ! PPasse g n sp c;
AA => v.s ! PPasse Masc Sg Indef ANomAcc
};
isPre = False
};
mkPolSent cl = {s = \\f,b => cl.s ! DDir ! RPres ! Simul ! b ! Indic ;
flag = NothingS ;
lock_PolSentence = <>
};
sentToNoun ps = heavyNP {s = \\_ => "\"" ++ ps.s ! Indep ! Pos ++ "\"";
a = agrP3 Masc Sg; hasClit = HasClit ; isComp = True ;
ss = "\"" ++ ps.s ! Indep ! Pos ++ "\""
};
ConjCN conj ss = conjunctDistrTable3 Number Species ACase conj ss ** {
g = ss.g; a = ss.a; isComp = ss.isComp
};
BaseCN x y ={
s1 = \\n,sp,c => x.s ! n ! sp ! c ;
s2 = \\n,sp,c => y.s ! n ! sp ! c ;
g = x.g; a = x.a ; isComp = x.isComp};
ConsCN xs x = consrTable3 Number Species ACase comma xs x ** {g = x.g; a = x.a; isComp = x.isComp} ;
at_Prep = mkPrep "la" Ac True;
per_Prep = mkPrep "per" Ac True;
UsePolSentence p ps = {s = ps.s ! Indep ! p.p};
O1 = UsePN (mkPN "o1") ;
O2 = UsePN (mkPN "o2") ;
O3 = UsePN (mkPN "o3") ;
O4 = UsePN (mkPN "o4") ;
O5 = UsePN (mkPN "o5") ;
}

View File

@@ -0,0 +1,7 @@
abstract ExtraLexicon = Cat ** {
fun
time_N : N ;
square_A : A ;
value_N : N ;
element_N : N ;
}

View File

@@ -0,0 +1,18 @@
--# -path=.:../romance:../common:../abstract:../../prelude
concrete ExtraLexiconFre of ExtraLexicon = CatFre **
open ParadigmsFre,MorphoFre,BeschFre in {
flags
optimize=values ;
lin
value_N = regGenN "valeur" feminine ;
square_A = regA "caré" ;
time_N = regN "heure" ;
element_N = mkN "élément" ;
} ;

View File

@@ -0,0 +1,18 @@
--# -path=.:../romance:../common:../abstract:../../prelude
concrete ExtraLexiconRon of ExtraLexicon = CatRon **
open ParadigmsRon,MorphoRon,BeschRon in {
flags
optimize=values ;
lin
value_N = mkN "valoare" "valori" ;
square_A = regA "patrat" ;
time_N = mkNR "timp" ;
element_N = mkN "element" ;
} ;

View File

@@ -0,0 +1,5 @@
resource ParamBasic = {
param Flag = ExistS NumQuant | ForallS NumQuant | NothingS ;
param SentForm = Indep | Attrib ;
param NumQuant = One | Many ;
}

25
examples/SUMO/SUMO.gf Normal file
View File

@@ -0,0 +1,25 @@
abstract SUMO =
Basic,
Merge,
Communications,
CountriesAndRegions,
Economy,
elements,
engineering,
FinancialOntology,
Geography,
Government,
Mid_level_ontology,
Military,
mondial,
QoSontology,
Transportation,
WMD,
WorldAirportsA_K,
WorldAirportsL_Z,
HigherOrder
** {
flags startcat = Stmt ;
}

14
examples/SUMO/SUMOEng.gf Normal file
View File

@@ -0,0 +1,14 @@
--# -path=.:RGLExt:../../lib/src/abstract:../../lib/src/english:../../lib/src/common
concrete SUMOEng of SUMO =
BasicEng,
MergeEng,
Mid_level_ontologyEng,
mondialEng,
elementsEng,
HigherOrderEng
** {
flags unlexer = text ; lexer = text ;
} ;

11
examples/SUMO/SUMOFre.gf Normal file
View File

@@ -0,0 +1,11 @@
--# -path=.:RGLExt:../../lib/src/abstract:../../lib/src/romance:../../lib/src/french:../../lib/src/common
concrete SUMOFre of SUMO =
MergeFre,
Mid_level_ontologyFre
** {
flags startcat = NP ; unlexer = text ; lexer = text ;
} ;

11
examples/SUMO/SUMORon.gf Normal file
View File

@@ -0,0 +1,11 @@
--# -path=.:RGLExt:../../lib/src/abstract:../../lib/src/romanian:../../lib/src/common
concrete SUMORon of SUMO =
MergeRon,
Mid_level_ontologyRon
** {
flags unlexer = text ; lexer = text ;
} ;

File diff suppressed because it is too large Load Diff

1041
examples/SUMO/WMD.gf Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

931
examples/SUMO/elements.gf Normal file
View File

@@ -0,0 +1,931 @@
abstract elements = open Merge in {
-- Silvery radioactive metallic element, belongs to
-- group 3 of the periodic table. The most stable isotope, Ac_227, has a
-- half_life of 217 years. Ac_228 (half_life of 6.13 hours) also occurs in
-- nature. There are 22 other artificial isotopes, all radioactive and
-- having very short half_lives. Chemistry similar to lanthanum. Used as a
-- source of alpha particles. Discovered by A. Debierne in 1899.
fun Actinium : Class ;
fun Actinium_Class : SubClass Actinium ElementalSubstance ;
-- Silvery_white lustrous metallic element of group
-- 3 of the periodic table. Highly reactive but protected by a thin
-- transparent layer of the oxide which quickly forms in air. There are many
-- alloys of aluminum, as well as a good number of industrial uses. Makes up
-- 8.1 percent of the Earth's crust, by weight. Isolated in 1825 by H.C.
-- Oersted.
fun Aluminum : Class ;
fun Aluminum_Class : SubClass Aluminum ElementalSubstance ;
-- Radioactive metallic transuranic element,
-- belongs to the actinoids. Ten known isotopes. Am_243 is the most stable
-- isotope, with a half_life of 7.95*10^3 years. Discovered by Glenn T.
-- Seaborg and associates in 1945, it was obtained by bombarding
-- {uranium}_238 with alpha particles.
fun Americium : Class ;
fun Americium_Class : SubClass Americium ElementalSubstance ;
-- Element of group 15. Multiple allotropic forms.
-- The stable form of antimony is a blue_white metal. Yellow and black
-- antimony are unstable non_metals. Used in flame_proofing, paints,
-- ceramics, enamels, and rubber. Attacked by oxidizing acids and halogens.
-- First reported by Tholden in 1450.
fun Antimony : Class ;
fun Antimony_Class : SubClass Antimony ElementalSubstance ;
-- Monatomic noble gas. Makes up 0.93 percent of the
-- air. Colourless, odorless. Is inert and has no true compounds. Lord
-- Rayleigh and Sir william Ramsey identified argon in 1894.
fun Argon : Class ;
fun Argon_Class : SubClass Argon ElementalSubstance ;
-- Metalloid element of group 15. There are three
-- allotropes, yellow, black, and grey. Reacts with halogens, concentrated
-- oxidizing acids and hot alkalis. Albertus Magnus is believed to have been
-- the first to isolate the element in 1250.
fun Arsenic : Class ;
fun Arsenic_Class : SubClass Arsenic ElementalSubstance ;
-- Radioactive halogen element. Occurs naturally
-- from uranium and thorium decay. At least 20 known isotopes. At_210, the
-- most stable, has a half_life of 8.3 hours. Synthesized by nuclear
-- bombardment in 1940 by D.R. Corson, K.R. MacKenzie and E. Segre at the
-- University of California.
fun Astatine : Class ;
fun Astatine_Class : SubClass Astatine ElementalSubstance ;
-- Silvery_white reactive element, belonging to group
-- 2 of the periodic table. Soluble barium compounds are extremely
-- poisonous. Identified in 1774 by Karl Scheele and extracted in 1808 by
-- Humphry Davy.
fun Barium : Class ;
fun Barium_Class : SubClass Barium ElementalSubstance ;
-- Radioactive metallic transuranic element.
-- Belongs to actinoid series. Eight known isotopes, the most common Bk_247,
-- has a half_life of 1.4*10^3 years. First produced by Glenn T. Seaborg
-- and associates in 1949 by bombarding americium_241 with alpha
-- particles.
fun Berkelium : Class ;
fun Berkelium_Class : SubClass Berkelium ElementalSubstance ;
-- Grey metallic element of group 2 of the periodic
-- table. Is toxic and can cause severe lung diseases and dermatitis. Shows
-- high covalent character. It was isolated independently by F. Wohler and
-- A.A. Bussy in 1828.
fun Beryllium : Class ;
fun Beryllium_Class : SubClass Beryllium ElementalSubstance ;
-- White crystalline metal with a pink tinge, belongs
-- to group 15. Most diamagnetic of all metals and has the lowest thermal
-- conductivity of all the elements except mercury. Lead_free bismuth
-- compounds are used in cosmetics and medical procedures. Burns in the air
-- and produces a blue flame. In 1753, C.G. Junine first demonstrated that
-- it was different from lead.
fun Bismuth : Class ;
fun Bismuth_Class : SubClass Bismuth ElementalSubstance ;
-- An element of group 13 of the periodic table. There
-- are two allotropes, amorphous boron is a brown power, but metallic boron
-- is black. The metallic form is hard (9.3 on Mohs' scale) and a bad
-- conductor in room temperatures. It is never found free in nature.
-- Boron_10 is used in nuclear reactor control rods and shields. It was
-- discovered in 1808 by Sir Humphry Davy and by J.L. Gay_Lussac and L.J.
-- Thenard.
fun Boron : Class ;
fun Boron_Class : SubClass Boron ElementalSubstance ;
-- Halogen element. Red volatile liquid at room
-- temperature. Its reactivity is somewhere between chlorine and iodine.
-- Harmful to human tissue in a liquid state, the vapour irritates eyes and
-- throat. Discovered in 1826 by Antoine Balard.
fun Bromine : Class ;
fun Bromine_Class : SubClass Bromine ElementalSubstance ;
-- Soft bluish metal belonging to group 12 of the
-- periodic table. Extremely toxic even in low concentrations. Chemically
-- similar to zinc, but lends itself to more complex compounds. Discovered
-- in 1817 by F. Stromeyer.
fun Cadmium : Class ;
fun Cadmium_Class : SubClass Cadmium ElementalSubstance ;
-- Soft silvery_white metallic element belonging to
-- group 1 of the periodic table. One of the three metals which are liquid
-- at room temperature. Cs_133 is the natural, and only stable, isotope.
-- Fifteen other radioisotopes exist. Caesium reacts explosively with cold
-- water, and ice at temperatures above 157K. Caesium hydroxide is the
-- strongest base known. Caesium is the most electropositive, most alkaline
-- and has the least ionization potential of all the elements. Known uses
-- include the basis of atomic clocks, catalyst for the hydrogenation of some
-- organic compounds, and in photoelectric cells. Caesium was discovered by
-- Gustav Kirchoff and Robert Bunsen in Germany in 1860 spectroscopically.
-- Its identification was based upon the bright blue lines in its spectrum.
-- The name comes from the latin word caesius, which means sky blue. Caesium
-- should be considered highly toxic. Some of the radioisotopes are even
-- more toxic.
fun Caesium : Class ;
fun Caesium_Class : SubClass Caesium ElementalSubstance ;
-- Soft grey metallic element belonging to group 2 of
-- the periodic table. Used a reducing agent in the extraction of thorium,
-- zirconium and uranium. Essential element for living organisms.
fun Calcium : Class ;
fun Calcium_Class : SubClass Calcium ElementalSubstance ;
-- Radioactive metallic transuranic element.
-- Belongs to actinoid series. Cf_251 has a half life of about 700 years.
-- Nine isotopes are known. Cf_252 is an intense {neutron} source, which
-- makes it an intense {neutron} source and gives it a use in {neutron}
-- activation analysis and a possible use as a radiation source in medicine.
-- First produced by Glenn T. Seaborg and associates in 1950.
fun Californium : Class ;
fun Californium_Class : SubClass Californium ElementalSubstance ;
-- Carbon is a member of group 14 of the periodic
-- table. It has three allotropic forms of it, diamonds, graphite and
-- fullerite. Carbon_14 is commonly used in radioactive dating. Carbon
-- occurs in all organic life and is the basis of organic chemistry. Carbon
-- has the interesting chemical property of being able to bond with itself,
-- and a wide variety of other elements.
fun Carbon : Class ;
fun Carbon_Class : SubClass Carbon ElementalSubstance ;
-- Silvery metallic element, belongs to the
-- lanthanoids. Four natural isotopes exist, and fifteen radioactive
-- isotopes have been identified. Used in some rare_earth alloys. The
-- oxidized form is used in the glass industry. Discovered by Martin .H.
-- Klaproth in 1803.
fun Cerium : Class ;
fun Cerium_Class : SubClass Cerium ElementalSubstance ;
-- Halogen element. Poisonous greenish_yellow gas.
-- Occurs widely in nature as sodium chloride in seawater. Reacts directly
-- with many elements and compounds, strong oxidizing agent. Discovered by
-- Karl Scheele in 1774. Humphrey David confirmed it as an element in
-- 1810.
fun Chlorine : Class ;
fun Chlorine_Class : SubClass Chlorine ElementalSubstance ;
-- Hard silvery transition element. Used in
-- decorative electroplating. Discovered in 1797 by Vauquelin.
fun Chromium : Class ;
fun Chromium_Class : SubClass Chromium ElementalSubstance ;
-- Light grey transition element. Some meteorites
-- contain small amounts of metallic cobalt. Generally alloyed for use.
-- Mammals require small amounts of cobalt salts. Cobalt_60, an artificially
-- produced radioactive isotope of Cobalt is an important radioactive tracer
-- and cancer_treatment agent. Discovered by G. Brandt in 1737.
fun Cobalt : Class ;
fun Cobalt_Class : SubClass Cobalt ElementalSubstance ;
-- Red_brown transition element. Known by the Romans
-- as 'cuprum.' Extracted and used for thousands of years. Malleable,
-- ductile and an excellent conductor of heat and electricity. When in moist
-- conditions, a greenish layer forms on the outside.
fun Copper : Class ;
fun Copper_Class : SubClass Copper ElementalSubstance ;
-- Radioactive metallic transuranic element. Belongs
-- to actinoid series. Nine known isotopes, Cm_247 has a half_life of
-- 1.64*10^7 years. First identified by Glenn T. Seaborg and associates in
-- 1944, first produced by L.B. Werner and I. Perlman in 1947 by bombarding
-- americium_241 with {neutron}s. Named for Marie Curie.
fun Curium : Class ;
fun Curium_Class : SubClass Curium ElementalSubstance ;
-- Metallic with a bright silvery_white lustre.
-- Dysprosium belongs to the lanthanoids. It is relatively stable in air at
-- room temperatures, it will however dissolve in mineral acids, evolving
-- hydrogen. It is found in from rare_earth minerals. There are seven
-- natural isotopes of dysprosium, and eight radioisotopes, Dy_154 being the
-- most stable with a half_life of 3*10^6 years. Dysprosium is used as a
-- neutron absorber in nuclear fission reactions, and in compact disks. It
-- was discovered by Paul Emile Lecoq de Boisbaudran in 1886 in France. Its
-- name comes from the Greek word dysprositos, which means hard to obtain.
fun Dysprosium : Class ;
fun Dysprosium_Class : SubClass Dysprosium ElementalSubstance ;
-- Appearance is unknown, however it is most
-- probably metallic and silver or gray in color. Radioactive metallic
-- transuranic element belonging to the actinoids. Es_254 has the longest
-- half_life of the eleven known isotopes at 270 days. First identified by
-- Albert Ghiorso and associates in the debris of the 1952 hydrogen bomb
-- explosion. In 1961 the first microgram quantities of Es_232 were
-- separated. While einsteinium never exists naturally, if a sufficient
-- amount was assembled, it would pose a radiation hazard.
fun Einsteinium : Class ;
fun Einsteinium_Class : SubClass Einsteinium ElementalSubstance ;
-- Soft silvery metallic element which belongs to the
-- lanthanoids. Six natural isotopes that are stable. Twelve artificial
-- isotopes are known. Used in nuclear technology as a neutron absorber. It
-- is being investigated for other possible uses. Discovered by Carl G.
-- Mosander in 1843.
fun Erbium : Class ;
fun Erbium_Class : SubClass Erbium ElementalSubstance ;
-- Soft silvery metallic element belonging to the
-- lanthanoids. Eu_151 and Eu_153 are the only two stable isotopes, both of
-- which are {neutron} absorbers. Discovered in 1889 by Sir William
-- Crookes.
fun Europium : Class ;
fun Europium_Class : SubClass Europium ElementalSubstance ;
-- Radioactive metallic transuranic element, belongs
-- to the actinoids. Ten known isotopes, most stable is Fm_257 with a
-- half_life of 10 days. First identified by Albert Ghiorso and associates
-- in the debris of the first hydrogen_bomb explosion in 1952.
fun Fermium : Class ;
fun Fermium_Class : SubClass Fermium ElementalSubstance ;
-- A poisonous pale yellow gaseous element belonging
-- to group 17 of the periodic table (The halogens). It is the most
-- chemically reactive and electronegative element. It is highly dangerous,
-- causing severe chemical burns on contact with flesh. Fluorine was
-- identified by Scheele in 1771 and first isolated by Moissan in 1886.
fun Fluorine : Class ;
fun Fluorine_Class : SubClass Fluorine ElementalSubstance ;
-- Radioactive element, belongs to group 1 of the
-- periodic table. Found in uranium and thorium ores. The 22 known isotopes
-- are all radioactive, with the most stable being Fr_223. Its existence was
-- confirmed in 1939 by Marguerite Perey.
fun Francium : Class ;
fun Francium_Class : SubClass Francium ElementalSubstance ;
-- Soft silvery metallic element belonging to the
-- lanthanoids. Seven natural, stable isotopes are known in addition to
-- eleven artificial isotopes. Gd_155 and Gd_157 and the best neutron
-- absorbers of all elements. Gadolinium compounds are used in electronics.
-- Discovered by J.C.G Marignac in 1880.
fun Gadolinium : Class ;
fun Gadolinium_Class : SubClass Gadolinium ElementalSubstance ;
-- Soft silvery metallic element, belongs to group 13
-- of the periodic table. The two stable isotopes are Ga_69 and Ga_71.
-- Eight radioactive isotopes are known, all having short half_lives.
-- Gallium Arsenide is used as a semiconductor. Corrodes most other metals
-- by diffusing into their lattice. First identified by Francois Lecoq de
-- Boisbaudran in 1875.
fun Gallium : Class ;
fun Gallium_Class : SubClass Gallium ElementalSubstance ;
-- Lustrous hard metalloid element, belongs to
-- group 14 of the periodic table. Forms a large number of organometallic
-- compounds. Predicted by Mendeleev in 1871, it was actually found in 1886
-- by Winkler.
fun Germanium : Class ;
fun Germanium_Class : SubClass Germanium ElementalSubstance ;
-- Gold is gold colored. It is the most malleable and
-- ductile metal known. There is only one stable isotope of gold, and five
-- radioisotopes of gold, Au_195 being the most stable with a half_life of
-- 186 days. Gold is used as a monetary standard, in jewelry, dentistry,
-- electronics. Au_198 is used in treating cancer and some other medical
-- conditions. Gold has been known to exist as far back as 2600 BC. Gold
-- comes from the Anglo_Saxon word gold. Its symbol, Au, comes from the
-- Latin word aurum, which means gold. Gold is not particularly toxic,
-- however it is known to cause damage to the liver and kidneys in some.
fun Gold : Class ;
fun Gold_Class : SubClass Gold ElementalSubstance ;
-- Silvery lustrous metallic transition element.
-- Used in tungsten alloys in filaments and electrodes, also acts as a
-- neutron absorber. First reported by Urbain in 1911, existence was finally
-- established in 1923 by D. Coster, G.C. de Hevesy in 1923.
fun Hafnium : Class ;
fun Hafnium_Class : SubClass Hafnium ElementalSubstance ;
-- Colourless, odourless gaseous nonmetallic element.
-- Belongs to group 18 of the periodic table. Lowest boiling point of all
-- elements and can only be solidified under pressure. Chemically inert, no
-- known compounds. Discovered in the solar spectrum in 1868 by Lockyer.
fun Helium : Class ;
fun Helium_Class : SubClass Helium ElementalSubstance ;
-- Relatively soft and malleable silvery_white
-- metallic element, which is stable in dry air at room temperature. It
-- oxidizes in moist air and at high temperatures. It belongs to the
-- lanthanoids. A rare_earth metal, it is found in the minerals monazite and
-- gadolinite. It possesses unusual magnetic properties. One natural
-- isotope, Ho_165 exists, six radioisotopes exist, the most stable being
-- Ho_163 with a half_life of 4570 years. Holmium is used in some metal
-- alloys, it is also said to stimulate the metabolism. Discovered by Per
-- Theodor Cleve and J.L. Soret in Switzerland in 1879. The name homium
-- comes from the Greek word Holmia which means Sweden. While all holmium
-- compounds should be considered highly toxic, initial evidence seems to
-- indicate that they do not pose much danger. The metal's dust however, is
-- a fire hazard.
fun Holmium : Class ;
fun Holmium_Class : SubClass Holmium ElementalSubstance ;
-- Colourless, odourless gaseous chemical element.
-- Lightest and most abundant element in the universe. Present in water and
-- in all organic compounds. Chemically reacts with most elements.
-- Discovered by Henry Cavendish in 1776.
fun Hydrogen : Class ;
fun Hydrogen_Class : SubClass Hydrogen ElementalSubstance ;
-- Soft silvery element belonging to group 13 of the
-- periodic table. The most common natural isotope is In_115, which has a
-- half_life of 6*10^4 years. Five other radioisotopes exist. Discovered in
-- 1863 by Reich and Richter.
fun Indium : Class ;
fun Indium_Class : SubClass Indium ElementalSubstance ;
-- Dark violet nonmetallic element, belongs to group
-- 17 of the periodic table. Insoluble in water. Required as a trace
-- element for living organisms. One stable isotope, I_127 exists, in
-- addition to fourteen radioactive isotopes. Chemically the least reactive
-- of the halogens, and the most electropositive metallic halogen.
-- Discovered in 1812 by Courtois.
fun Iodine : Class ;
fun Iodine_Class : SubClass Iodine ElementalSubstance ;
-- Very hard and brittle, silvery metallic transition
-- element. It has a yellowish cast to it. Salts of iridium are highly
-- colored. It is the most corrosion resistant metal known, not attacked by
-- any acid, but is attacked by molten salts. There are two natural isotopes
-- of iridium, and 4 radioisotopes, the most stable being Ir_192 with a
-- half_life of 73.83 days. Ir_192 decays into {platinum}, while the other
-- radioisotopes decay into {osmium}. Iridium is used in high temperature
-- apparatus, electrical contacts, and as a hardening agent for platinum.
-- Discovered in 1803 by Smithson Tennant in England. The name comes from
-- the Greek word iris, which means rainbow. Iridium metal is generally
-- non_toxic due to its relative unreactivity, but iridium compounds should
-- be considered highly toxic.
fun Iridium : Class ;
fun Iridium_Class : SubClass Iridium ElementalSubstance ;
-- Silvery malleable and ductile metallic transition
-- element. Has nine isotopes and is the fourth most abundant element in the
-- earth's crust. Required by living organisms as a trace element (used in
-- hemoglobin in humans.) Quite reactive, oxidizes in moist air, displaces
-- hydrogen from dilute acids and combines with nonmetallic elements.
fun Iron : Class ;
fun Iron_Class : SubClass Iron ElementalSubstance ;
-- Colorless gaseous element, belongs to the noble
-- gases. Occurs in the air, 0.0001 percent by volume. It can be extracted
-- from liquid air by fractional distillation. Generally not isolated, but
-- used with other inert gases in fluorescent lamps. Five natural isotopes,
-- and five radioactive isotopes. Kr_85, the most stable radioactive
-- isotope, has a half_life of 10.76 years and is produced in fission
-- reactors. Practically inert, though known to form compounds with
-- {fluorine}.
fun Krypton : Class ;
fun Krypton_Class : SubClass Krypton ElementalSubstance ;
-- (From the Greek word lanthanein, to line hidden)
-- Silvery metallic element belonging to group 3 of the periodic table and
-- oft considered to be one of the lanthanoids. Found in some rare_earth
-- minerals. Twenty_five natural isotopes exist. La_139 which is stable,
-- and La_138 which has a half_life of 10^10 to 10^15 years. The other
-- twenty_three isotopes are radioactive. It resembles the lanthanoids
-- chemically. Lanthanum has a low to moderate level of toxicity, and should
-- be handled with care. Discovered in 1839 by C.G. Mosander.
fun Lanthanum : Class ;
fun Lanthanum_Class : SubClass Lanthanum ElementalSubstance ;
-- Appearance unknown, however it is most likely
-- silvery_white or grey and metallic. Lawrencium is a synthetic rare_earth
-- metal. There are eight known radioisotopes, the most stable being Lr_262
-- with a half_life of 3.6 hours. Due to the short half_life of lawrencium,
-- and its radioactivity, there are no known uses for it. Identified by
-- Albert Ghiorso in 1961 at Berkeley. It was produced by bombarding
-- californium with boron ions. The name is temporary {IUPAC} nomenclature,
-- the origin of the name comes from Ernest O. Lawrence, the inventor of the
-- cyclotron. If sufficient amounts of lawrencium were produced, it would
-- pose a radiation hazard.
fun Lawrencium : Class ;
fun Lawrencium_Class : SubClass Lawrencium ElementalSubstance ;
-- Heavy dull grey ductile metallic element, belongs to
-- group 14. Used in building construction, lead_place accumulators, bullets
-- and shot, and is part of solder, pewter, bearing metals, type metals and
-- fusible alloys.
fun Lead : Class ;
fun Lead_Class : SubClass Lead ElementalSubstance ;
-- Socket silvery metal. First member of group 1 of
-- the periodic table. Lithium salts are used in psychomedicine.
fun Lithium : Class ;
fun Lithium_Class : SubClass Lithium ElementalSubstance ;
-- Silvery_white rare_earth metal which is
-- relatively stable in air. It happens to be the most expensive rare_earth
-- metal. Its found with almost all rare_earth metals, but is very difficult
-- to separate from other elements. Least abundant of all natural elements.
-- Used in metal alloys, and as a catalyst in various processes. There are
-- two natural, stable isotopes, and seven radioisotopes, the most stable
-- being Lu_174 with a half_life of 3.3 years. The separation of lutetium
-- from {ytterbium} was described by Georges Urbain in 1907. It was
-- discovered at approximately the same time by Carl Auer von Welsbach. The
-- name comes from the Greek word lutetia which means Paris.
fun Lutetium : Class ;
fun Lutetium_Class : SubClass Lutetium ElementalSubstance ;
-- Silvery metallic element belonging to group 2 of
-- the periodic table (alkaline_earth metals). It is essential for living
-- organisms, and is used in a number of light alloys. Chemically very
-- reactive, it forms a protective oxide coating when exposed to air and
-- burns with an intense white flame. It also reacts with sulphur, nitrogen
-- and the halogens. First isolated by Bussy in 1828.
fun Magnesium : Class ;
fun Magnesium_Class : SubClass Magnesium ElementalSubstance ;
-- Grey brittle metallic transition element.
-- Rather electropositive, combines with some non_metals when heated.
-- Discovered in 1774 by Scheele.
fun Manganese : Class ;
fun Manganese_Class : SubClass Manganese ElementalSubstance ;
-- Half_life of approximately 5ms. The creation
-- of this element demonstrated that fusion techniques could indeed be used
-- to make new, heavy nuclei. Made and identified by physicists of the Heavy
-- Ion Research Laboratory, Darmstadt, West Germany in 1982. Named in honor
-- of Lise Meitner the Austrian physicist.
fun Meitnerium : Class ;
fun Meitnerium_Class : SubClass Meitnerium ElementalSubstance ;
-- Radioactive metallic transuranic element.
-- Belongs to the actinoid series. Only known isotope, Md_256 has a
-- half_life of 1.3 hours. First identified by Glenn T. Seaborg, Albert
-- Ghiorso and associates in 1955. Alternative name {unnilunium} has been
-- proposed. Named after the 'inventor' of the periodic table, Dmitri
-- Mendeleev.
fun Mendelevium : Class ;
fun Mendelevium_Class : SubClass Mendelevium ElementalSubstance ;
-- Heavy silvery liquid metallic element, belongs to
-- the zinc group. Used in thermometers, barometers and other scientific
-- apparatus. Less reactive than zinc and cadmium, does not displace
-- hydrogen from acids. Forms a number of complexes and organomercury
-- compounds.
fun Mercury : Class ;
fun Mercury_Class : SubClass Mercury ElementalSubstance ;
-- Silvery_white, hard metallic transition
-- element. It is chemically unreactive and is not affected by most acids.
-- It oxidizes at high temperatures. There are seven natural isotopes, and
-- four radioisotopes, Mo_93 being the most stable with a half_life of 3500
-- years. Molybdenum is used in almost all high_strength steels, it has
-- nuclear applications, and is a catalyst in petroleum refining. Discovered
-- in 1778 by Carl Welhelm Scheele of Sweden. Impure metal was prepared in
-- 1782 by Peter Jacob Hjelm. The name comes from the Greek word molybdos
-- which means lead. Trace amounts of molybdenum are required for all known
-- forms of life. All molybdenum compounds should be considered highly
-- toxic, and will also cause severe birth defects.
fun Molybdenum : Class ;
fun Molybdenum_Class : SubClass Molybdenum ElementalSubstance ;
-- Soft bright silvery metallic element, belongs to
-- the lanthanoids. Seven natural isotopes, Nd_144 being the only
-- radioactive one with a half_life of 10^10 to 10^15 years. Six artificial
-- radioisotopes have been produced. The metal is used in glass works to
-- color class a shade of violet_purple and make it dichroic. One of the
-- more reactive rare_earth metals, quickly reacts with air. Used in some
-- rare_earth alloys. Neodymium is used to color the glass used in welder's
-- glasses. Neodymium is also used in very powerful, permanent magnets
-- (Nd2Fe14B). Discovered by Carl F. Auer von Welsbach in Austria in 1885
-- by separating didymium into its elemental components {praseodymium} and
-- neodymium. The name comes from the Greek words 'neos didymos' which means
-- 'new twin'. Neodymium should be considered highly toxic, however evidence
-- would seem to show that it acts as little more than a skin and eye
-- irritant. The dust however, presents a fire and explosion hazard.
fun Neodymium : Class ;
fun Neodymium_Class : SubClass Neodymium ElementalSubstance ;
-- Colourless gaseous element of group 18 on the
-- periodic table (noble gases). Neon occurs in the atmosphere, and
-- comprises 0.0018 percent of the volume of the atmosphere. It has a
-- distinct reddish glow when used in discharge tubes and neon based lamps.
-- It forms almost no chemical compounds. Neon was discovered in 1898 by Sir
-- William Ramsey and M.W. Travers.
fun Neon : Class ;
fun Neon_Class : SubClass Neon ElementalSubstance ;
-- Radioactive metallic transuranic element,
-- belongs to the actinoids. Np_237, the most stable isotope, has a
-- half_life of 2.2*10^6 years and is a by product of nuclear reactors. The
-- other known isotopes have mass numbers 229 through 236, and 238 through
-- 241. Np_236 has a half_life of 5*10^3 years. First produced by Edwin M.
-- McMillan and P.H. Abelson in 1940.
fun Neptunium : Class ;
fun Neptunium_Class : SubClass Neptunium ElementalSubstance ;
-- Malleable ductile silvery metallic transition
-- element. Discovered by A.F. Cronstedt in 1751.
fun Nickel : Class ;
fun Nickel_Class : SubClass Nickel ElementalSubstance ;
-- Soft, ductile grey_blue metallic transition
-- element. Used in special steels and in welded joints to increase
-- strength. Combines with halogens and oxidizes in air at 200 degrees
-- celsius. Discovered by Charles Hatchett in 1801 and isolated by
-- Blomstrand in 1864. Called {columbium} originally.
fun Niobium : Class ;
fun Niobium_Class : SubClass Niobium ElementalSubstance ;
-- Colourless, gaseous element which belongs to
-- group 15 of the periodic table. Constitutes ~78 percent of the atmosphere
-- and is an essential part of the ecosystem. Nitrogen for industrial
-- purposes is acquired by the fractional distillation of liquid air.
-- Chemically inactive, reactive generally only at high temperatures or in
-- electrical discharges. It was discovered in 1772 by D. Rutherford.
fun Nitrogen : Class ;
fun Nitrogen_Class : SubClass Nitrogen ElementalSubstance ;
-- Radioactive metallic transuranic element, belongs
-- to the actinoids. Seven known isotopes exist, the most stable being
-- No_254 with a half_life of 255 seconds. First identified with certainty
-- by Albert Ghiorso and Glenn T. Seaborg in 1966. {Unnilbium} has been
-- proposed as an alternative name.
fun Nobelium : Class ;
fun Nobelium_Class : SubClass Nobelium ElementalSubstance ;
-- Hard blue_white metallic transition element. Found
-- with platinum and used in some alloys with platinum and iridium.
fun Osmium : Class ;
fun Osmium_Class : SubClass Osmium ElementalSubstance ;
-- A colourless, odourless gaseous element belonging
-- to group 16 of the periodic table. It is the most abundant element
-- present in the earth's crust. It also makes up 20.8 percent of the
-- Earth's atmosphere. For industrial purposes, it is separated from liquid
-- air by fractional distillation. It is used in high temperature welding,
-- and in breathing. It commonly comes in the form of Oxygen, but is found
-- as Ozone in the upper atmosphere. It was discovered by Priestley in
-- 1774.
fun Oxygen : Class ;
fun Oxygen_Class : SubClass Oxygen ElementalSubstance ;
-- Soft white ductile transition element. Found
-- with some copper and nickel ores. Does not react with oxygen at normal
-- temperatures. Dissolves slowly in hydrochloric acid. Discovered in 1803
-- by W.H. Wollaston.
fun Palladium : Class ;
fun Palladium_Class : SubClass Palladium ElementalSubstance ;
-- Non_metallic element belonging to group 15 of
-- the periodic table. Has a multiple allotropic forms. Essential element
-- for living organisms. It was discovered by Brandt in 1669.
fun Phosphorus : Class ;
fun Phosphorus_Class : SubClass Phosphorus ElementalSubstance ;
-- Attractive greyish_white metal. When pure, it is
-- malleable and ductile. Does not oxidize in air, insoluble in hydrochloric
-- and nitric acid. Corroded by halogens, cyandies, sulphur and alkalis.
-- {Hydrogen} and {oxygen} react explosively in the presence of platinum.
-- There are six stable isotopes and three radioisotopes, the most stable
-- being Pt_193 with a half_life of 60 years. Platinum is used in jewelry,
-- laboratory equipment, electrical contacts, dentistry, and anti_pollution
-- devices in cars. PtCl2(NH3)2 is used to treat some forms of cancer.
-- Platinum_{cobalt} alloys have magnetic properties. It is also used in the
-- definition of the Standard Hydrogen Electrode. Discovered by Antonio de
-- Ulloa in South America in 1735. The name comes from the Spanish word
-- platina which means silver. Platinum metal is generally not a health
-- concern due to its unreactivity, however platinum compounds should be
-- considered highly toxic.
fun Platinum : Class ;
fun Platinum_Class : SubClass Platinum ElementalSubstance ;
-- Dense silvery radioactive metallic transuranic
-- element, belongs to the actinoids. Pu_244 is the most stable isotope with
-- a half_life of 7.6*10^7 years. Thirteen isotopes are known. Pu_239 is
-- the most important, it undergoes nuclear fission with slow neutrons and is
-- hence important to nuclear weapons and reactors. Plutonium production is
-- monitored down to the gram to prevent military misuse. First produced by
-- Gleen T. Seaborg, Edwin M. McMillan, J.W. Kennedy and A.C. Wahl in
-- 1940.
fun Plutonium : Class ;
fun Plutonium_Class : SubClass Plutonium ElementalSubstance ;
-- Rare radioactive metallic element, belongs to
-- group 16 of the periodic table. Over 30 known isotopes exist, the most of
-- all elements. Po_209 has a half_life of 103 years. Possible uses in
-- heating spacecraft. Discovered by Marie Curie in 1898 in a sample of
-- pitchblende.
fun Polonium : Class ;
fun Polonium_Class : SubClass Polonium ElementalSubstance ;
-- Soft silvery metallic element belonging to group
-- 1 of the periodic table (alkali metals). Occurs naturally in seawater and
-- a many minerals. Highly reactive, chemically, it resembles sodium in its
-- behavior and compounds. Discovered by Sir Humphry Davy in 1807.
fun Potassium : Class ;
fun Potassium_Class : SubClass Potassium ElementalSubstance ;
-- Soft silvery metallic element, belongs to the
-- lanthanoids. Only natural isotope is Pr_141 which is not radioactive.
-- Fourteen radioactive isotopes have been artificially produced. Used in
-- rare_earth alloys. Discovered in 1885 by C.A. von Welsbach.
fun Praseodymium : Class ;
fun Praseodymium_Class : SubClass Praseodymium ElementalSubstance ;
-- Soft silvery metallic element, belongs to the
-- lanthanoids. Pm_147, the only natural isotope, is radioactive and has a
-- half_life of 252 years. Eighteen radioisotopes have been produced, but
-- all have very short half_lives. Found only in nuclear decay waste.
-- Pm_147 is of interest as a beta_decay source, however Pm_146 and Pm_148
-- have to be removed from it first, as they generate gamma radiation.
-- Discovered by J.A. Marinsky, L.E. Glendenin and C.D. Coryell in
-- 1947.
fun Promethium : Class ;
fun Promethium_Class : SubClass Promethium ElementalSubstance ;
-- Radioactive metallic element, belongs to the
-- actinoids. The most stable isotope, Pa_231 has a half_life of 2.43*10^4
-- years. At least 10 other radioactive isotopes are known. No practical
-- applications are known. Discovered in 1917 by Lise Meitner and Otto
-- Hahn.
fun Protactinium : Class ;
fun Protactinium_Class : SubClass Protactinium ElementalSubstance ;
-- Radioactive metallic transuranic element, belongs
-- to group 2 of the periodic table. Most stable isotope, Ra_226 has a
-- half_life of 1602 years, which decays into radon. Isolated from
-- pitchblende in 1898 Marie and Pierre Curie.
fun Radium : Class ;
fun Radium_Class : SubClass Radium ElementalSubstance ;
-- Colorless radioactive gaseous element, belongs to
-- the noble gases. Of the twenty known isotopes, the most stable is Rn_222
-- with a half_life of 3.8 days. Formed by the radioactive decay of
-- {Radium}_226. Radon itself decays into {polonium}. Used in radiotherapy.
-- As a noble gas, it is effectively inert, though radon fluoride has been
-- synthesized. First isolated in 1908 by Ramsey and Gray.
fun Radon : Class ;
fun Radon_Class : SubClass Radon ElementalSubstance ;
-- Silvery_white metallic transition element.
-- Obtained as a by_product of molybdenum refinement. Rhenium_molybdenum
-- alloys are superconducting.
fun Rhenium : Class ;
fun Rhenium_Class : SubClass Rhenium ElementalSubstance ;
-- Silvery white metallic transition element. Found
-- with platinum and used in some platinum alloys. Not attacked by acids,
-- dissolves only in aqua regia. Discovered in 1803 by W.H. Wollaston.
fun Rhodium : Class ;
fun Rhodium_Class : SubClass Rhodium ElementalSubstance ;
-- Soft silvery metallic element, belongs to group 1
-- of the periodic table. Rb_97, the naturally occurring isotope, is
-- radioactive. It is highly reactive, with properties similar to other
-- elements in group 1, like igniting spontaneously in air. Discovered
-- spectroscopically in 1861 by W. Bunsen and G.R. Kirchoff.
fun Rubidium : Class ;
fun Rubidium_Class : SubClass Rubidium ElementalSubstance ;
-- Hard white metallic transition element. Found
-- with platinum, used as a catalyst in some platinum alloys. Dissolves in
-- fused alkalis, and is not attacked by acids. Reacts with halogens and
-- oxygen at high temperatures. Isolated in 1844 by K.K. Klaus.
fun Ruthenium : Class ;
fun Ruthenium_Class : SubClass Ruthenium ElementalSubstance ;
-- Soft silvery metallic element, belongs to the
-- lanthanoids. Seven natural isotopes, Sm_147 is the only radioisotope, and
-- has a half_life of 2.5*10^11 years. Used for making special alloys needed
-- in the production of nuclear reactors. Also used as a neutron absorber.
-- Small quantities of samarium oxide is used in special optical glasses.
-- The largest use of the element is its ferromagnetic alloy which produces
-- permanent magnets that are five times stronger than magnets produced by
-- any other material. Discovered by Francois Lecoq de Boisbaudran in
-- 1879.
fun Samarium : Class ;
fun Samarium_Class : SubClass Samarium ElementalSubstance ;
-- Rare soft silvery metallic element belonging to
-- group 3 of the periodic table. There are ten isotopes, nine of which are
-- radioactive and have short half_lives. Predicted in 1869 by Mendeleev,
-- isolated by Nilson in 1879.
fun Scandium : Class ;
fun Scandium_Class : SubClass Scandium ElementalSubstance ;
-- Metalloid element, belongs to group 16 of the
-- periodic table. Multiple allotropic forms exist. Chemically resembles
-- sulphur. Discovered in 1817 by Jons J. Berzelius.
fun Selenium : Class ;
fun Selenium_Class : SubClass Selenium ElementalSubstance ;
-- Metalloid element belonging to group 14 of the
-- periodic table. It is the second most abundant element in the Earth's
-- crust, making up 25.7 percent of it by weight. Chemically less reactive
-- than carbon. First identified by Lavoisier in 1787 and first isolated in
-- 1823 by Berzelius.
fun Silicon : Class ;
fun Silicon_Class : SubClass Silicon ElementalSubstance ;
-- White lustrous soft metallic transition element.
-- Found in both its elemental form and in minerals. Used in jewellery,
-- tableware and so on. Less reactive than silver, chemically.
fun Silver : Class ;
fun Silver_Class : SubClass Silver ElementalSubstance ;
-- Soft silvery reactive element belonging to group 1
-- of the periodic table (alkali metals). It is highly reactive, oxidizing
-- in air and reacting violently with water, forcing it to be kept under oil.
-- It was first isolated by Humphrey Davy in 1807.
fun Sodium : Class ;
fun Sodium_Class : SubClass Sodium ElementalSubstance ;
-- Soft yellowish metallic element, belongs to
-- group 2 of the periodic table. Highly reactive chemically. Sr_90 is
-- present in radioactive fallout and has a half_life of 28 years.
-- Discovered in 1798 by Klaproth and Hope, isolated in 1808 by Humphry
-- Davy.
fun Strontium : Class ;
fun Strontium_Class : SubClass Strontium ElementalSubstance ;
-- Yellow, nonmetallic element belonging to group 16
-- of the periodic table. It is an essential element in living organisms,
-- needed in the amino acids cysteine and methionine, and hence in many
-- proteins. Absorbed by plants from the soil as sulphate ion.
fun Sulphur : Class ;
fun Sulphur_Class : SubClass Sulphur ElementalSubstance ;
-- Heavy blue_grey metallic transition element.
-- Ta_181 is a stable isotope, and Ta_180 is a radioactive isotope, with a
-- half_life in excess of 10^7 years. Used in surgery as it is unreactive.
-- Forms a passive oxide layer in air. Identified in 1802 by Ekeberg and
-- isolated in 1820 by Jons J. Berzelius.
fun Tantalum : Class ;
fun Tantalum_Class : SubClass Tantalum ElementalSubstance ;
-- Radioactive metallic transition element. Can
-- be detected in some stars and the fission products of uranium. First made
-- by Perrier and Segre by bombarding molybdenum with deutrons, giving them
-- Tc_97. Tc_99 is the most stable isotope with a half_life of 2.6*10^6
-- years. Sixteen isotopes are known. Organic technetium compounds are used
-- in bone imaging. Chemical properties are intermediate between rhenium and
-- manganese.
fun Technetium : Class ;
fun Technetium_Class : SubClass Technetium ElementalSubstance ;
-- Silvery metalloid element of group 16. Eight
-- natural isotopes, nine radioactive isotopes. Used in semiconductors and
-- to a degree in some steels. Chemistry is similar to {sulphur}.
-- Discovered in 1782 by Franz Miller.
fun Tellurium : Class ;
fun Tellurium_Class : SubClass Tellurium ElementalSubstance ;
-- Silvery metallic element belonging to the
-- lanthanoids. Tb_159 is the only stable isotope, there are seventeen
-- artificial isotopes. Discovered by G.G. Mosander in 1843.
fun Terbium : Class ;
fun Terbium_Class : SubClass Terbium ElementalSubstance ;
-- Pure, unreacted thallium appears silvery_white
-- and exhibits a metallic lustre. Upon reacting with air, it begins to turn
-- bluish_grey and looks like lead. It is very malleable, and can be cut
-- with a knife. There are two stable isotopes, and four radioisotopes,
-- Tl_204 being the most stable with a half_life of 3.78 years. Thallium
-- sulphate was used as a rodenticide. Thallium sulphine's conductivity
-- changes with exposure to infrared light, this gives it a use in infrared
-- detectors. Discovered by Sir William Crookes via spectroscopy. Its name
-- comes from the Greek word thallos, which means green twig. Thallium and
-- its compounds are toxic and can cause cancer.
fun Thallium : Class ;
fun Thallium_Class : SubClass Thallium ElementalSubstance ;
-- Grey radioactive metallic element. Belongs to
-- actinoids. Found in monazite sand in Brazil, India and the US.
-- Thorium_232 has a half_life of 1.39x10^10 years. Can be used as a nuclear
-- fuel for breeder reactors. Thorium_232 captures slow {neutron}s and
-- breeds uranium_233. Discovered by Jons J. Berzelius in 1829.
fun Thorium : Class ;
fun Thorium_Class : SubClass Thorium ElementalSubstance ;
-- Soft grey metallic element that belongs to the
-- lanthanoids. One natural isotope exists, Tm_169, and seventeen artificial
-- isotopes have been produced. No known uses for the element. Discovered
-- in 1879 by Per Theodor Cleve.
fun Thulium : Class ;
fun Thulium_Class : SubClass Thulium ElementalSubstance ;
-- Silvery malleable metallic element belonging to group
-- 14 of the periodic table. Twenty_six isotopes are known, five of which
-- are radioactive. Chemically reactive. Combines directly with chlorine
-- and oxygen and displaces hydrogen from dilute acids.
fun Tin : Class ;
fun Tin_Class : SubClass Tin ElementalSubstance ;
-- White metallic transition element. Occurs in
-- numerous minerals. Used in strong, light corrosion_resistant alloys.
-- Forms a passive oxide coating when exposed to air. First discovered by
-- Gregor in 1789.
fun Titanium : Class ;
fun Titanium_Class : SubClass Titanium ElementalSubstance ;
-- White or grey metallic transition element,
-- formerly called {wolfram}. Forms a protective oxide in air and can be
-- oxidized at high temperature. First isolated by Jose and Fausto de
-- Elhuyer in 1783.
fun Tungsten : Class ;
fun Tungsten_Class : SubClass Tungsten ElementalSubstance ;
-- Half_life of approximately 10ms. Reported in
-- 1994 by German researchers at Darmstadt, Germany.
fun Unnildecium : Class ;
fun Unnildecium_Class : SubClass Unnildecium ElementalSubstance ;
-- Half_life of 0.9 +/_ 0.2 s. Discovered by the
-- Joint Institute for Nuclear Research at Dubna (U.S.S.R.) in June of 1974.
-- Its existence was confirmed by the Lawrence Berkeley Laboratory and
-- Livermore National Laboratory in September of 1974.
fun Unnilhexium : Class ;
fun Unnilhexium_Class : SubClass Unnilhexium ElementalSubstance ;
-- Radioactive transition metal.
fun Unniloctium : Class ;
fun Unniloctium_Class : SubClass Unniloctium ElementalSubstance ;
-- Radioactive transactinide element. Half_life
-- of 1.6s. Discovered in 1970 by Berkeley researchers. So far, seven
-- isotopes have been discovered.
fun Unnilpentium : Class ;
fun Unnilpentium_Class : SubClass Unnilpentium ElementalSubstance ;
-- Radioactive transactinide element. Expected
-- to have similar chemical properties to those displayed by hafnium. Rf_260
-- was discovered by the Joint Nuclear Research Institute at Dubna (U.S.S.R.)
-- in 1964. Researchers at Berkeley discovered Unq_257 and Unq_258 in
-- 1964.
fun Unnilquadium : Class ;
fun Unnilquadium_Class : SubClass Unnilquadium ElementalSubstance ;
-- Radioactive transition metal. Half_life of
-- approximately 1/500 s. Discovered by the Joint Institute for Nuclear
-- Research at Dubna (U.S.S.R.) in 1976. Confirmed by West German physicists
-- at the Heavy Ion Research Laboratory at Darmstadt.
fun Unnilseptium : Class ;
fun Unnilseptium_Class : SubClass Unnilseptium ElementalSubstance ;
-- White radioactive metallic element belonging to
-- the actinoids. Three natural isotopes, U_238, U_235 and U_234.
-- Uranium_235 is used as the fuel for nuclear reactors and weapons.
-- Discovered by Martin H. Klaproth in 1789.
fun Uranium : Class ;
fun Uranium_Class : SubClass Uranium ElementalSubstance ;
-- Soft and ductile, bright white metal. Good
-- resistance to corrosion by alkalis, sulphuric and hydrochloric acid. It
-- oxidizes readily about 933K. There are two naturally occurring isotopes
-- of vanadium, and 5 radioisotopes, V_49 having the longest half_life at 337
-- days. Vanadium has nuclear applications, the foil is used in cladding
-- titanium to steel, and vanadium_gallium tape is used to produce a
-- superconductive magnet. Originally discovered by Andres Manuel del Rio of
-- Mexico City in 1801. His discovery went unheeded, however, and in 1820,
-- Nils Gabriel Sefstron of Sweden rediscovered it. Metallic vanadium was
-- isolated by Henry Enfield Roscoe in 1867. The name vanadium comes from
-- {Vanadis}, a goddess of Scandinavian mythology. Silvery_white metallic
-- transition element. Vanadium is essential to {ascidian}s. Rats and
-- chickens are also known to require it. Metal powder is a fire hazard, and
-- vanadium compounds should be considered highly toxic. May cause lung
-- cancer if inhaled.
fun Vanadium : Class ;
fun Vanadium_Class : SubClass Vanadium ElementalSubstance ;
-- Colourless, odourless gas belonging to group 18 on
-- the periodic table (the noble gases.) Nine natural isotopes and seven
-- radioactive isotopes are known. Xenon was part of the first noble_gas
-- compound synthesized. Several others involving Xenon have been found
-- since then. Xenon was discovered by Ramsey and Travers in 1898.
fun Xenon : Class ;
fun Xenon_Class : SubClass Xenon ElementalSubstance ;
-- Silvery metallic element of the lanthanoids.
-- Seven natural isotopes and ten artificial isotopes are known. Used in
-- certain steels. Discovered by J.D.G. Marignac in 1878.
fun Ytterbium : Class ;
fun Ytterbium_Class : SubClass Ytterbium ElementalSubstance ;
-- Silvery_grey metallic element of group 3 on the
-- periodic table. Found in uranium ores. The only natural isotope is Y_89,
-- there are 14 other artificial isotopes. Chemically resembles the
-- lanthanoids. Stable in the air below 400 degrees, celsius. Discovered in
-- 1828 by Friedrich Wohler.
fun Yttrium : Class ;
fun Yttrium_Class : SubClass Yttrium ElementalSubstance ;
-- Blue_white metallic element. Occurs in multiple
-- compounds naturally. Five stable isotopes are six radioactive isotopes
-- have been found. Chemically a reactive metal, combines with oxygen and
-- other non_metals, reacts with dilute acids to release hydrogen.
fun Zinc : Class ;
fun Zinc_Class : SubClass Zinc ElementalSubstance ;
-- Grey_white metallic transition element. Five
-- natural isotopes and six radioactive isotopes are known. Used in nuclear
-- reactors for a {neutron} absorber. Discovered in 1789 by Martin Klaproth,
-- isolated in 1824 by Berzelius.
fun Zirconium : Class ;
fun Zirconium_Class : SubClass Zirconium ElementalSubstance ;
}

View File

@@ -0,0 +1,117 @@
--# -path=.:englishExtended
concrete elementsEng of elements = BasicEng ** open ParadigmsEng,NounEng in {
lin
Hydrogen = UseN (mkN "Hydrogen") ;
Helium = UseN (mkN "Helium") ;
Lithium = UseN (mkN "Lithium") ;
Beryllium = UseN (mkN "Beryllium") ;
Boron = UseN (mkN "Boron") ;
Carbon = UseN (mkN "Carbon") ;
Nitrogen = UseN (mkN "Nitrogen") ;
Oxygen = UseN (mkN "Oxygen") ;
Fluorine = UseN (mkN "Fluorine") ;
Neon = UseN (mkN "Neon") ;
Sodium = UseN (mkN "Sodium") ;
Magnesium = UseN (mkN "Magnesium") ;
Aluminum = UseN (mkN "Aluminum") ;
Silicon = UseN (mkN "Silicon") ;
Phosphorus = UseN (mkN "Phosphorus") ;
Sulphur = UseN (mkN "Sulphur") ;
Chlorine = UseN (mkN "Chlorine") ;
Argon = UseN (mkN "Argon") ;
Potassium = UseN (mkN "Potassium") ;
Calcium = UseN (mkN "Calcium") ;
Scandium = UseN (mkN "Scandium") ;
Titanium = UseN (mkN "Titanium") ;
Vanadium = UseN (mkN "Vanadium") ;
Chromium = UseN (mkN "Chromium") ;
Manganese = UseN (mkN "Manganese") ;
Iron = UseN (mkN "Iron") ;
Cobalt = UseN (mkN "Cobalt") ;
Nickel = UseN (mkN "Nickel") ;
Copper = UseN (mkN "Copper") ;
Zinc = UseN (mkN "Zinc") ;
Gallium = UseN (mkN "Gallium") ;
Germanium = UseN (mkN "Germanium") ;
Arsenic = UseN (mkN "Arsenic") ;
Selenium = UseN (mkN "Selenium") ;
Bromine = UseN (mkN "Bromine") ;
Krypton = UseN (mkN "Krypton") ;
Rubidium = UseN (mkN "Rubidium") ;
Strontium = UseN (mkN "Strontium") ;
Yttrium = UseN (mkN "Yttrium") ;
Zirconium = UseN (mkN "Zirconium") ;
Niobium = UseN (mkN "Niobium") ;
Molybdenum = UseN (mkN "Molybdenum") ;
Technetium = UseN (mkN "Technetium") ;
Ruthenium = UseN (mkN "Ruthenium") ;
Rhodium = UseN (mkN "Rhodium") ;
Palladium = UseN (mkN "Palladium") ;
Silver = UseN (mkN "Silver") ;
Cadmium = UseN (mkN "Cadmium") ;
Indium = UseN (mkN "Indium") ;
Tin = UseN (mkN "Tin") ;
Antimony = UseN (mkN "Antimony") ;
Tellurium = UseN (mkN "Tellurium") ;
Iodine = UseN (mkN "Iodine") ;
Xenon = UseN (mkN "Xenon") ;
Caesium = UseN (mkN "Caesium") ;
Barium = UseN (mkN "Barium") ;
Lanthanum = UseN (mkN "Lanthanum") ;
Cerium = UseN (mkN "Cerium") ;
Praseodymium = UseN (mkN "Praseodymium") ;
Neodymium = UseN (mkN "Neodymium") ;
Promethium = UseN (mkN "Promethium") ;
Samarium = UseN (mkN "Samarium") ;
Europium = UseN (mkN "Europium") ;
Gadolinium = UseN (mkN "Gadolinium") ;
Terbium = UseN (mkN "Terbium") ;
Dysprosium = UseN (mkN "Dysprosium") ;
Holmium = UseN (mkN "Holmium") ;
Erbium = UseN (mkN "Erbium") ;
Thulium = UseN (mkN "Thulium") ;
Ytterbium = UseN (mkN "Ytterbium") ;
Lutetium = UseN (mkN "Lutetium") ;
Hafnium = UseN (mkN "Hafnium") ;
Tantalum = UseN (mkN "Tantalum") ;
Tungsten = UseN (mkN "Tungsten") ;
Rhenium = UseN (mkN "Rhenium") ;
Osmium = UseN (mkN "Osmium") ;
Iridium = UseN (mkN "Iridium") ;
Platinum = UseN (mkN "Platinum") ;
Gold = UseN (mkN "Gold") ;
Mercury = UseN (mkN "Mercury") ;
Thallium = UseN (mkN "Thallium") ;
Lead = UseN (mkN "Lead") ;
Bismuth = UseN (mkN "Bismuth") ;
Polonium = UseN (mkN "Polonium") ;
Astatine = UseN (mkN "Astatine") ;
Radon = UseN (mkN "Radon") ;
Francium = UseN (mkN "Francium") ;
Radium = UseN (mkN "Radium") ;
Actinium = UseN (mkN "Actinium") ;
Thorium = UseN (mkN "Thorium") ;
Protactinium = UseN (mkN "Protactinium") ;
Uranium = UseN (mkN "Uranium") ;
Neptunium = UseN (mkN "Neptunium") ;
Plutonium = UseN (mkN "Plutonium") ;
Americium = UseN (mkN "Americium") ;
Curium = UseN (mkN "Curium") ;
Berkelium = UseN (mkN "Berkelium") ;
Californium = UseN (mkN "Californium") ;
Einsteinium = UseN (mkN "Einsteinium") ;
Fermium = UseN (mkN "Fermium") ;
Mendelevium = UseN (mkN "Mendelevium") ;
Nobelium = UseN (mkN "Nobelium") ;
Lawrencium = UseN (mkN "Lawrencium") ;
Unnilquadium = UseN (mkN "Unnilquadium") ;
Unnilpentium = UseN (mkN "Unnilpentium") ;
Unnilhexium = UseN (mkN "Unnilhexium") ;
Unnilseptium = UseN (mkN "Unnilseptium") ;
Unniloctium = UseN (mkN "Unniloctium") ;
Meitnerium = UseN (mkN "Meitnerium") ;
Unnildecium = UseN (mkN "Unnildecium") ;
};

1082
examples/SUMO/engineering.gf Normal file

File diff suppressed because it is too large Load Diff

11117
examples/SUMO/mondial.gf Normal file

File diff suppressed because it is too large Load Diff

5558
examples/SUMO/mondialEng.gf Normal file

File diff suppressed because it is too large Load Diff