diff options
Diffstat (limited to 'old-lib/resource/abstract')
21 files changed, 1431 insertions, 0 deletions
diff --git a/old-lib/resource/abstract/Adjective.gf b/old-lib/resource/abstract/Adjective.gf new file mode 100644 index 000000000..4255b7eee --- /dev/null +++ b/old-lib/resource/abstract/Adjective.gf @@ -0,0 +1,30 @@ +--1 Adjective: Adjectives and Adjectival Phrases + +abstract Adjective = Cat ** { + + fun + +-- The principal ways of forming an adjectival phrase are +-- positive, comparative, relational, reflexive-relational, and +-- elliptic-relational. +-- (The superlative use is covered in [Noun Noun.html].$SuperlA$.) + + PositA : A -> AP ; -- warm + ComparA : A -> NP -> AP ; -- warmer than I + ComplA2 : A2 -> NP -> AP ; -- married to her + ReflA2 : A2 -> AP ; -- married to itself + UseA2 : A2 -> A ; -- married + +-- Sentence and question complements defined for all adjectival +-- phrases, although the semantics is only clear for some adjectives. + + SentAP : AP -> SC -> AP ; -- good that she is here + +-- An adjectival phrase can be modified by an *adadjective*, such as "very". + + AdAP : AdA -> AP -> AP ; -- very warm + +-- The formation of adverbs from adjective (e.g. "quickly") is covered +-- in [Adverb Adverb.html]. + +} diff --git a/old-lib/resource/abstract/Adverb.gf b/old-lib/resource/abstract/Adverb.gf new file mode 100644 index 000000000..3199d6888 --- /dev/null +++ b/old-lib/resource/abstract/Adverb.gf @@ -0,0 +1,32 @@ +--1 Adverb: Adverbs and Adverbial Phrases + +abstract Adverb = Cat ** { + + fun + +-- The two main ways of forming adverbs are from adjectives and by +-- prepositions from noun phrases. + + PositAdvAdj : A -> Adv ; -- warmly + PrepNP : Prep -> NP -> Adv ; -- in the house + +-- Comparative adverbs have a noun phrase or a sentence as object of +-- comparison. + + ComparAdvAdj : CAdv -> A -> NP -> Adv ; -- more warmly than John + ComparAdvAdjS : CAdv -> A -> S -> Adv ; -- more warmly than he runs + +-- Adverbs can be modified by 'adadjectives', just like adjectives. + + AdAdv : AdA -> Adv -> Adv ; -- very quickly + +-- Subordinate clauses can function as adverbs. + + SubjS : Subj -> S -> Adv ; -- when she sleeps + +-- Comparison adverbs also work as numeral adverbs. + + AdnCAdv : CAdv -> AdN ; -- less (than five) + + +} diff --git a/old-lib/resource/abstract/Backward.gf b/old-lib/resource/abstract/Backward.gf new file mode 100644 index 000000000..458fb3010 --- /dev/null +++ b/old-lib/resource/abstract/Backward.gf @@ -0,0 +1,63 @@ +--1 Obsolete constructs included for backward-compatibility + +abstract Backward = Cat ** { + + +-- from Cat + +cat + Slash ; + +fun + +-- from Verb 19/4/2008 + + ComplV2 : V2 -> NP -> VP ; -- use it + ComplV3 : V3 -> NP -> NP -> VP ; -- send a message to her + ComplV2V : V2V -> NP -> VP -> VP ; -- cause it to burn + ComplV2S : V2S -> NP -> S -> VP ; -- tell me that it rains + ComplV2Q : V2Q -> NP -> QS -> VP ; -- ask me who came + ComplV2A : V2A -> NP -> AP -> VP ; -- paint it red + + ReflV2 : V2 -> VP ; -- use itself + + UseVQ : VQ -> V2 ; -- ask (a question) + UseVS : VS -> V2 ; -- know (a secret) + + +-- from Sentence 19/4/2008 + + SlashV2 : NP -> V2 -> Slash ; -- (whom) he sees + SlashVVV2 : NP -> VV -> V2 -> Slash; -- (whom) he wants to see + +-- from Noun 19/4/2008 + + NumInt : Int -> Num ; -- 51 + OrdInt : Int -> Ord ; -- 51st (DEPRECATED) + NoOrd : Ord ; + + -- 20/4 + DetSg : Quant -> Ord -> Det ; -- the best man + DetPl : Quant -> Num -> Ord -> Det ; -- the five best men + NoNum : Num ; + + -- 22/4 + DefArt : Quant ; -- the (house), the (houses) + IndefArt : Quant ; -- a (house), (houses) + MassDet : Quant ; -- (beer) + +-- from Structural 19/4/2008 + + that_NP : NP ; + these_NP : NP ; + this_NP : NP ; + those_NP : NP ; + + whichPl_IDet : IDet ; + whichSg_IDet : IDet ; + +-- from Adverb + + AdvSC : SC -> Adv ; -- that he arrives ---- REMOVE? + +} diff --git a/old-lib/resource/abstract/Cat.gf b/old-lib/resource/abstract/Cat.gf new file mode 100644 index 000000000..23b8f3b0e --- /dev/null +++ b/old-lib/resource/abstract/Cat.gf @@ -0,0 +1,134 @@ +--1 Cat: the Category System + +-- The category system is central to the library in the sense +-- that the other modules ($Adjective$, $Adverb$, $Noun$, $Verb$ etc) +-- communicate through it. This means that a e.g. a function using +-- $NP$s in $Verb$ need not know how $NP$s are constructed in $Noun$: +-- it is enough that both $Verb$ and $Noun$ use the same type $NP$, +-- which is given here in $Cat$. +-- +-- Some categories are inherited from [``Common`` Common.html]. +-- The reason they are defined there is that they have the same +-- implementation in all languages in the resource (typically, +-- just a string). These categories are +-- $AdA, AdN, AdV, Adv, Ant, CAdv, IAdv, PConj, Phr$, +-- $Pol, SC, Tense, Text, Utt, Voc$. +-- +-- Moreover, the list categories $ListAdv, ListAP, ListNP, ListS$ +-- are defined on $Conjunction$ and only used locally there. + + +abstract Cat = Common ** { + + cat + +--2 Sentences and clauses + +-- Constructed in [Sentence Sentence.html], and also in +-- [Idiom Idiom.html]. + + S ; -- declarative sentence e.g. "she lived here" + QS ; -- question e.g. "where did she live" + RS ; -- relative e.g. "in which she lived" + Cl ; -- declarative clause, with all tenses e.g. "she looks at this" + ClSlash;-- clause missing NP (S/NP in GPSG) e.g. "she looks at" + SSlash ;-- sentence missing NP e.g. "she has looked at" + Imp ; -- imperative e.g. "look at this" + +--2 Questions and interrogatives + +-- Constructed in [Question Question.html]. + + QCl ; -- question clause, with all tenses e.g. "why does she walk" + IP ; -- interrogative pronoun e.g. "who" + IComp ; -- interrogative complement of copula e.g. "where" + IDet ; -- interrogative determiner e.g. "how many" + IQuant; -- interrogative quantifier e.g. "which" + +--2 Relative clauses and pronouns + +-- Constructed in [Relative Relative.html]. + + RCl ; -- relative clause, with all tenses e.g. "in which she lives" + RP ; -- relative pronoun e.g. "in which" + +--2 Verb phrases + +-- Constructed in [Verb Verb.html]. + + VP ; -- verb phrase e.g. "is very warm" + Comp ; -- complement of copula, such as AP e.g. "very warm" + VPSlash ; -- verb phrase missing complement e.g. "give to John" + +--2 Adjectival phrases + +-- Constructed in [Adjective Adjective.html]. + + AP ; -- adjectival phrase e.g. "very warm" + +--2 Nouns and noun phrases + +-- Constructed in [Noun Noun.html]. +-- Many atomic noun phrases e.g. "everybody" +-- are constructed in [Structural Structural.html]. +-- The determiner structure is +-- ``` Predet (QuantSg | QuantPl Num) Ord +-- as defined in [Noun Noun.html]. + + CN ; -- common noun (without determiner) e.g. "red house" + NP ; -- noun phrase (subject or object) e.g. "the red house" + Pron ; -- personal pronoun e.g. "she" + Det ; -- determiner phrase e.g. "those seven" + Predet ; -- predeterminer (prefixed Quant) e.g. "all" + Quant ; -- quantifier ('nucleus' of Det) e.g. "this/these" + Art ; -- article e.g. "the" + Num ; -- number determining element e.g. "seven" + Card ; -- cardinal number e.g. "seven" + Ord ; -- ordinal number (used in Det) e.g. "seventh" + +--2 Numerals + +-- Constructed in [Numeral Numeral.html]. + + Numeral ; -- cardinal or ordinal in words e.g. "five/fifth" + Digits ; -- cardinal or ordinal in digits e.g. "1,000/1,000th" + +--2 Structural words + +-- Constructed in [Structural Structural.html]. + + Conj ; -- conjunction e.g. "and" +---b DConj ; -- distributed conjunction e.g. "both - and" + Subj ; -- subjunction e.g. "if" + Prep ; -- preposition, or just case e.g. "in" + +--2 Words of open classes + +-- These are constructed in [Lexicon Lexicon.html] and in +-- additional lexicon modules. + + V ; -- one-place verb e.g. "sleep" + V2 ; -- two-place verb e.g. "love" + V3 ; -- three-place verb e.g. "show" + VV ; -- verb-phrase-complement verb e.g. "want" + VS ; -- sentence-complement verb e.g. "claim" + VQ ; -- question-complement verb e.g. "wonder" + VA ; -- adjective-complement verb e.g. "look" + V2V ; -- verb with NP and V complement e.g. "cause" + V2S ; -- verb with NP and S complement e.g. "tell" + V2Q ; -- verb with NP and Q complement e.g. "ask" + V2A ; -- verb with NP and AP complement e.g. "paint" + + A ; -- one-place adjective e.g. "warm" + A2 ; -- two-place adjective e.g. "divisible" + + N ; -- common noun e.g. "house" + N2 ; -- relational noun e.g. "son" + N3 ; -- three-place relational noun e.g. "connection" + PN ; -- proper name e.g. "Paris" + +-- DEPRECATED: QuantSg, QuantPl +--- QuantSg ;-- quantifier ('nucleus' of sing. Det) e.g. "every" +--- QuantPl ;-- quantifier ('nucleus' of plur. Det) e.g. "many" + +} diff --git a/old-lib/resource/abstract/Common.gf b/old-lib/resource/abstract/Common.gf new file mode 100644 index 000000000..76bfd9cf4 --- /dev/null +++ b/old-lib/resource/abstract/Common.gf @@ -0,0 +1,61 @@ +--1 Common: Structures with Common Implementations. + +-- This module defines the categories that uniformly have the linearization +-- ${s : Str}$ in all languages. + +-- Moreover, this module defines the abstract parameters of tense, polarity, and +-- anteriority, which are used in [``Phrase`` Phrase.html] to generate different +-- forms of sentences. Together they give 4 x 2 x 2 = 16 sentence forms. + +-- These tenses are defined for all languages in the library. More tenses +-- can be defined in the language extensions, e.g. the "passé simple" of +-- Romance languages in [``ExtraRomance`` ../romance/ExtraRomance.gf]. + +abstract Common = { + + cat + +--2 Top-level units + +-- Constructed in [``Text`` Text.html]: $Text$. + + Text ; -- text consisting of several phrases e.g. "He is here. Why?" + +-- Constructed in [``Phrase`` Phrase.html]: + + Phr ; -- phrase in a text e.g. "but be quiet please" + Utt ; -- sentence, question, word... e.g. "be quiet" + Voc ; -- vocative or "please" e.g. "my darling" + PConj ; -- phrase-beginning conjunction e.g. "therefore" + +-- Constructed in [``Sentence`` Sentence.html]: + + SC ; -- embedded sentence or question e.g. "that it rains" + +--2 Adverbs + +-- Constructed in [``Adverb`` Adverb.html]. +-- Many adverbs are constructed in [``Structural`` Structural.html]. + + Adv ; -- verb-phrase-modifying adverb e.g. "in the house" + AdV ; -- adverb directly attached to verb e.g. "always" + AdA ; -- adjective-modifying adverb e.g. "very" + AdN ; -- numeral-modifying adverb e.g. "more than" + IAdv ; -- interrogative adverb e.g. "why" + CAdv ; -- comparative adverb e.g. "more" + +--2 Tense, polarity, and anteriority + + Tense ; -- tense e.g. present, past, future + Pol ; -- polarity e.g. positive, negative + Ant ; -- anteriority e.g. simultaneous, anterior + + fun + PPos, PNeg : Pol ; -- I sleep/don't sleep + + TPres : Tense ; + ASimul : Ant ; + TPast, TFut, TCond : Tense ; -- I slept/will sleep/would sleep --# notpresent + AAnter : Ant ; -- I have slept --# notpresent + +} diff --git a/old-lib/resource/abstract/Compatibility.gf b/old-lib/resource/abstract/Compatibility.gf new file mode 100644 index 000000000..a4af7d4f5 --- /dev/null +++ b/old-lib/resource/abstract/Compatibility.gf @@ -0,0 +1,9 @@ +abstract Compatibility = Cat ** { + +-- from Noun 19/4/2008 + +fun + NumInt : Int -> Num ; -- 57 + OrdInt : Int -> Ord ; -- 57 + +} diff --git a/old-lib/resource/abstract/Conjunction.gf b/old-lib/resource/abstract/Conjunction.gf new file mode 100644 index 000000000..4c2183919 --- /dev/null +++ b/old-lib/resource/abstract/Conjunction.gf @@ -0,0 +1,52 @@ +--1 Conjunction: Coordination + +-- Coordination is defined for many different categories; here is +-- a sample. The rules apply to *lists* of two or more elements, +-- and define two general patterns: +-- - ordinary conjunction: X,...X and X +-- - distributed conjunction: both X,...,X and X +-- +-- +-- $VP$ conjunctions are not covered here, because their applicability +-- depends on language. Some special cases are defined in +-- [``Extra`` ../abstract/Extra.gf]. + + +abstract Conjunction = Cat ** { + +--2 Rules + + fun + ConjS : Conj -> [S] -> S ; -- "he walks and she runs" + ConjAP : Conj -> [AP] -> AP ; -- "cold and warm" + ConjNP : Conj -> [NP] -> NP ; -- "she or we" + ConjAdv : Conj -> [Adv] -> Adv ; -- "here or there" + +---b DConjS : DConj -> [S] -> S ; -- "either he walks or she runs" +---b DConjAP : DConj -> [AP] -> AP ; -- "both warm and cold" +---b DConjNP : DConj -> [NP] -> NP ; -- "either he or she" +---b DConjAdv : DConj -> [Adv] -> Adv; -- "both here and there" + +--2 Categories + +-- These categories are only used in this module. + + cat + [S]{2} ; + [Adv]{2} ; + [NP]{2} ; + [AP]{2} ; + +--2 List constructors + +-- The list constructors are derived from the list notation and therefore +-- not given explicitly. But here are their type signatures: + + -- BaseC : C -> C -> [C] ; -- for C = S, AP, NP, Adv + -- ConsC : C -> [C] -> [C] ; +} + +--. +-- *Note*. This module uses right-recursive lists. If backward +-- compatibility with API 0.9 is needed, use +-- [SeqConjunction SeqConjunction.html]. diff --git a/old-lib/resource/abstract/Extra.gf b/old-lib/resource/abstract/Extra.gf new file mode 100644 index 000000000..b0601019f --- /dev/null +++ b/old-lib/resource/abstract/Extra.gf @@ -0,0 +1,30 @@ +--1 More syntax rules + +-- This module defines syntax rules that are not implemented in all +-- languages, but in more than one, so that it makes sense to offer a +-- common API. + +abstract Extra = Cat ** { + + fun + GenNP : NP -> Quant ; -- this man's + ComplBareVS : VS -> S -> VP ; -- know you go + + StrandRelSlash : RP -> ClSlash -> RCl ; -- that he lives in + EmptyRelSlash : RP -> ClSlash -> RCl ; -- he lives in + StrandQuestSlash : IP -> ClSlash -> QCl ; -- whom does John live with + +-- $VP$ conjunction, which has different fragments implemented in +-- different languages - never a full $VP$, though. + + cat + VPI ; + [VPI] {2} ; + + fun + MkVPI : VP -> VPI ; + ConjVPI : Conj -> [VPI] -> VPI ; + ComplVPIVV : VV -> VPI -> VP ; + + +} diff --git a/old-lib/resource/abstract/Grammar.gf b/old-lib/resource/abstract/Grammar.gf new file mode 100644 index 000000000..a1edd59df --- /dev/null +++ b/old-lib/resource/abstract/Grammar.gf @@ -0,0 +1,22 @@ +--1 Grammar: the Main Module of the Resource Grammar + +-- This grammar is a collection of the different grammar modules, +-- To test the resource, import [``Lang`` Lang.html], which also contains +-- a lexicon. + +abstract Grammar = + Noun, + Verb, + Adjective, + Adverb, + Numeral, + Sentence, + Question, + Relative, + Conjunction, + Phrase, + Text, + Structural, + Idiom ; + + diff --git a/old-lib/resource/abstract/Idiom.gf b/old-lib/resource/abstract/Idiom.gf new file mode 100644 index 000000000..6b012becc --- /dev/null +++ b/old-lib/resource/abstract/Idiom.gf @@ -0,0 +1,22 @@ +--1 Idiom: Idiomatic Expressions + +abstract Idiom = Cat ** { + +-- This module defines constructions that are formed in fixed ways, +-- often different even in closely related languages. + + fun + ImpersCl : VP -> Cl ; -- it is hot + GenericCl : VP -> Cl ; -- one sleeps + + CleftNP : NP -> RS -> Cl ; -- it is I who did it + CleftAdv : Adv -> S -> Cl ; -- it is here she slept + + ExistNP : NP -> Cl ; -- there is a house + ExistIP : IP -> QCl ; -- which houses are there + + ProgrVP : VP -> VP ; -- be sleeping + + ImpPl1 : VP -> Utt ; -- let's go + +} diff --git a/old-lib/resource/abstract/Lang.gf b/old-lib/resource/abstract/Lang.gf new file mode 100644 index 000000000..978d970ad --- /dev/null +++ b/old-lib/resource/abstract/Lang.gf @@ -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 Lang = + Grammar, + Lexicon + ** { + flags startcat=Phr ; + } ; diff --git a/old-lib/resource/abstract/Lexicon.gf b/old-lib/resource/abstract/Lexicon.gf new file mode 100644 index 000000000..59b844ec9 --- /dev/null +++ b/old-lib/resource/abstract/Lexicon.gf @@ -0,0 +1,356 @@ +abstract Lexicon = Cat ** { +fun + add_V3 : V3 ; + airplane_N : N ; + already_Adv : Adv ; + animal_N : N ; + answer_V2S : V2S ; + apartment_N : N ; + apple_N : N ; + art_N : N ; + ashes_N : N ; + ask_V2Q : V2Q ; + baby_N : N ; + back_N : N ; + bad_A : A ; + bank_N : N ; + bark_N : N ; + beautiful_A : A ; + become_VA : VA ; + beer_N : N ; + beg_V2V : V2V ; + belly_N : N ; + big_A : A ; + bike_N : N ; + bird_N : N ; + bite_V2 : V2 ; + black_A : A ; + blood_N : N ; + blow_V : V ; + blue_A : A ; + boat_N : N ; + bone_N : N ; + book_N : N ; + boot_N : N ; + boss_N : N ; + boy_N : N ; + bread_N : N ; + break_V2 : V2 ; + breast_N : N ; + breathe_V : V ; + broad_A : A ; + brother_N2 : N2 ; + brown_A : A ; + burn_V : V ; + butter_N : N ; + buy_V2 : V2 ; + camera_N : N ; + cap_N : N ; + car_N : N ; + carpet_N : N ; + cat_N : N ; + ceiling_N : N ; + chair_N : N ; + cheese_N : N ; + child_N : N ; + church_N : N ; + city_N : N ; + clean_A : A ; + clever_A : A ; + close_V2 : V2 ; + cloud_N : N ; + coat_N : N ; + cold_A : A ; + come_V : V ; + computer_N : N ; + correct_A : A ; + country_N : N ; + count_V2 : V2 ; + cousin_N : N ; + cow_N : N ; + cut_V2 : V2 ; + day_N : N ; + die_V : V ; + dig_V : V ; + dirty_A : A ; + distance_N3 : N3 ; + doctor_N : N ; + dog_N : N ; + door_N : N ; + do_V2 : V2 ; + drink_V2 : V2 ; + drink_V2 : V2 ; + dry_A : A ; + dull_A : A ; + dust_N : N ; + ear_N : N ; + earth_N : N ; + easy_A2V : A2 ; + eat_V2 : V2 ; + eat_V2 : V2 ; + egg_N : N ; + empty_A : A ; + enemy_N : N ; + eye_N : N ; + factory_N : N ; + fall_V : V ; + far_Adv : Adv ; + father_N2 : N2 ; + fat_N : N ; + fear_VS : VS ; + fear_V2 : V2 ; + feather_N : N ; + fight_V2 : V2 ; + find_V2 : V2 ; + fingernail_N : N ; + fire_N : N ; + fish_N : N ; + float_V : V ; + floor_N : N ; + flower_N : N ; + flow_V : V ; + fly_V : V ; + fog_N : N ; + foot_N : N ; + forest_N : N ; + forget_V2 : V2 ; + freeze_V : V ; + fridge_N : N ; + friend_N : N ; + fruit_N : N ; + full_A : A ; + fun + fun_AV : A ; + garden_N : N ; + girl_N : N ; + give_V3 : V3 ; + glove_N : N ; + gold_N : N ; + good_A : A ; + go_V : V ; + grammar_N : N ; + grass_N : N ; + green_A : A ; + guts_N : N ; + hair_N : N ; + hand_N : N ; + harbour_N : N ; + hate_V2 : V2 ; + hat_N : N ; + have_V2 : V2 ; + head_N : N ; + heart_N : N ; + hear_V2 : V2 ; + hear_V2 : V2 ; + heavy_A : A ; + hill_N : N ; + hit_V2 : V2 ; + hold_V2 : V2 ; + hope_VS : VS ; + horn_N : N ; + horse_N : N ; + hot_A : A ; + house_N : N ; + hunt_V2 : V2 ; + husband_N : N ; + ice_N : N ; + important_A : A ; + industry_N : N ; + iron_N : N ; + john_PN : PN ; + jump_V : V ; + kill_V2 : V2 ; + king_N : N ; + knee_N : N ; + know_V2 : V2 ; + know_V2 : V2 ; + lake_N : N ; + lamp_N : N ; + language_N : N ; + laugh_V : V ; + leaf_N : N ; + learn_V2 : V2 ; + leather_N : N ; + leave_V2 : V2 ; + left_Ord : Ord ; + leg_N : N ; + lie_V : V ; + like_V2 : V2 ; + listen_V2 : V2 ; + liver_N : N ; + live_V : V ; + long_A : A ; + lose_V2 : V2 ; + louse_N : N ; + love_N : N ; + love_V2 : V2 ; + man_N : N ; + married_A2 : A2 ; + meat_N : N ; + milk_N : N ; + moon_N : N ; + mother_N2 : N2 ; + mountain_N : N ; + mouth_N : N ; + music_N : N ; + name_N : N ; + narrow_A : A ; + near_A : A ; + neck_N : N ; + new_A : A ; + newspaper_N : N ; + night_N : N ; + nose_N : N ; + now_Adv : Adv ; + number_N : N ; + oil_N : N ; + old_A : A ; + open_V2 : V2 ; + paint_V2A : V2A ; + paper_N : N ; + paris_PN : PN ; + peace_N : N ; + pen_N : N ; + person_N : N ; + planet_N : N ; + plastic_N : N ; + play_V2 : V2 ; + play_V : V ; + policeman_N : N ; + priest_N : N ; + probable_AS : A ; + pull_V2 : V2 ; + push_V2 : V2 ; + put_V2 : V2 ; + queen_N : N ; + question_N : N ; + radio_N : N ; + rain_N : N ; + rain_V0 : V ; + read_V2 : V2 ; + ready_A : A ; + reason_N : N ; + red_A : A ; + religion_N : N ; + restaurant_N : N ; + right_Ord : Ord ; + river_N : N ; + road_N : N ; + rock_N : N ; + roof_N : N ; + root_N : N ; + rope_N : N ; + rotten_A : A ; + round_A : A ; + rubber_N : N ; + rub_V2 : V2 ; + rule_N : N ; + run_V : V ; + salt_N : N ; + sand_N : N ; + say_VS : VS ; + school_N : N ; + science_N : N ; + scratch_V2 : V2 ; + sea_N : N ; + seed_N : N ; + seek_V2 : V2 ; + see_V2 : V2 ; + see_V2 : V2 ; + sell_V3 : V3 ; + send_V3 : V3 ; + sew_V : V ; + sharp_A : A ; + sheep_N : N ; + ship_N : N ; + shirt_N : N ; + shoe_N : N ; + shop_N : N ; + short_A : A ; + silver_N : N ; + sing_V : V ; + sister_N : N ; + sit_V : V ; + skin_N : N ; + sky_N : N ; + sleep_V : V ; + small_A : A ; + smell_V : V ; + smoke_N : N ; + smooth_A : A ; + snake_N : N ; + snow_N : N ; + sock_N : N ; + song_N : N ; + speak_V2 : V2 ; + spit_V : V ; + split_V2 : V2 ; + squeeze_V2 : V2 ; + stab_V2 : V2 ; + stand_V : V ; + star_N : N ; + steel_N : N ; + stick_N : N ; + stone_N : N ; + stop_V : V ; + stove_N : N ; + straight_A : A ; + student_N : N ; + stupid_A : A ; + suck_V2 : V2 ; + sun_N : N ; + swell_V : V ; + swim_V : V ; + switch8off_V2 : V2 ; + switch8on_V2 : V2 ; + table_N : N ; + tail_N : N ; + talk_V3 : V3 ; + teacher_N : N ; + teach_V2 : V2 ; + television_N : N ; + thick_A : A ; + thin_A : A ; + think_V : V ; + throw_V2 : V2 ; + tie_V2 : V2 ; + today_Adv : Adv ; + tongue_N : N ; + tooth_N : N ; + train_N : N ; + travel_V : V ; + tree_N : N ; + turn_V : V ; + ugly_A : A ; + uncertain_A : A ; + understand_V2 : V2 ; + university_N : N ; + village_N : N ; + vomit_V : V ; + wait_V2 : V2 ; + walk_V : V ; + warm_A : A ; + war_N : N ; + wash_V2 : V2 ; + watch_V2 : V2 ; + water_N : N ; + wet_A : A ; + white_A : A ; + wide_A : A ; + wife_N : N ; + wind_N : N ; + window_N : N ; + wine_N : N ; + wing_N : N ; + win_V2 : V2 ; + wipe_V2 : V2 ; + woman_N : N ; + wonder_VQ : VQ ; + wood_N : N ; + worm_N : N ; + write_V2 : V2 ; + year_N : N ; + yellow_A : A ; + young_A : A ; + +} diff --git a/old-lib/resource/abstract/Noun.gf b/old-lib/resource/abstract/Noun.gf new file mode 100644 index 000000000..9e93f053e --- /dev/null +++ b/old-lib/resource/abstract/Noun.gf @@ -0,0 +1,144 @@ +--1 Noun: Nouns, noun phrases, and determiners + +abstract Noun = Cat ** { + + +--2 Noun phrases + +-- The three main types of noun phrases are +-- - common nouns with determiners +-- - proper names +-- - pronouns +-- +-- + fun + DetCN : Det -> CN -> NP ; -- the man + UsePN : PN -> NP ; -- John + UsePron : Pron -> NP ; -- he + +-- Pronouns are defined in the module [``Structural`` Structural.html]. + +-- A noun phrase already formed can be modified by a $Predet$erminer. + + PredetNP : Predet -> NP -> NP; -- only the man + +-- A noun phrase can also be postmodified by the past participle of a +-- verb, by an adverb, or by a relative clause + + PPartNP : NP -> V2 -> NP ; -- the man seen + AdvNP : NP -> Adv -> NP ; -- Paris today + RelNP : NP -> RS -> NP ; -- Paris, which is here + +-- Determiners can form noun phrases directly. + + DetNP : Det -> NP ; -- these five + + +--2 Determiners + +-- The determiner has a fine-grained structure, in which a 'nucleus' +-- quantifier and two optional parts can be discerned: a cardinal and +-- an ordinal numeral. + + DetQuantOrd : Quant -> Num -> Ord -> Det ; -- these five best + DetQuant : Quant -> Num -> Det ; -- these five + +-- Whether the resulting determiner is singular or plural depends on the +-- cardinal. + +-- All parts of the determiner can be empty, except $Quant$, which is +-- the "kernel" of a determiner. It is, however, the $Num$ that determines +-- the inherent number. + + NumSg : Num ; + NumPl : Num ; + NumCard : Card -> Num ; + +-- $Card$ consists of either digits or numeral words. + + NumDigits : Digits -> Card ; -- 51 + NumNumeral : Numeral -> Card ; -- fifty-one + +-- The construction of numerals is defined in [Numeral Numeral.html]. + +-- A $Card$ can be modified by certain adverbs. + + AdNum : AdN -> Card -> Card ; -- almost 51 + +-- An $Ord$ consists of either digits or numeral words. +-- Also superlative forms of adjectives behave syntactically like ordinals. + + OrdDigits : Digits -> Ord ; -- 51st + OrdNumeral : Numeral -> Ord ; -- fifty-first + OrdSuperl : A -> Ord ; -- warmest + +-- Definite and indefinite noun phrases are sometimes realized as +-- neatly distinct words (Spanish "un, unos ; el, los") but also without +-- any particular word (Finnish; Swedish definites). + + DetArtOrd : Art -> Num -> Ord -> Det ; -- the (five) best + DetArtCard : Art -> Card -> Det ; -- the five + + IndefArt : Art ; + DefArt : Art ; + +-- Articles cannot alone form noun phrases, but need a noun. + + DetArtSg : Art -> CN -> NP ; -- the man + DetArtPl : Art -> CN -> NP ; -- the men + +-- Nouns can be used without an article as mass nouns. The resource does +-- not distinguish mass nouns from other common nouns, which can result +-- in semantically odd expressions. + + MassNP : CN -> NP ; -- (beer) + +-- Pronouns have possessive forms. Genitives of other kinds +-- of noun phrases are not given here, since they are not possible +-- in e.g. Romance languages. They can be found in $Extra$ modules. + + PossPron : Pron -> Quant ; -- my (house) + +-- Other determiners are defined in [Structural Structural.html]. + + + +--2 Common nouns + +-- Simple nouns can be used as nouns outright. + + UseN : N -> CN ; -- house + +-- Relational nouns take one or two arguments. + + ComplN2 : N2 -> NP -> CN ; -- mother of the king + ComplN3 : N3 -> NP -> N2 ; -- distance from this city (to Paris) + +-- Relational nouns can also be used without their arguments. +-- The semantics is typically derivative of the relational meaning. + + UseN2 : N2 -> CN ; -- mother + Use2N3 : N3 -> N2 ; -- distance (from this city) + Use3N3 : N3 -> N2 ; -- distance (to Paris) + +-- Nouns can be modified by adjectives, relative clauses, and adverbs +-- (the last rule will give rise to many 'PP attachment' ambiguities +-- when used in connection with verb phrases). + + AdjCN : AP -> CN -> CN ; -- big house + RelCN : CN -> RS -> CN ; -- house that John bought + AdvCN : CN -> Adv -> CN ; -- house on the hill + +-- Nouns can also be modified by embedded sentences and questions. +-- For some nouns this makes little sense, but we leave this for applications +-- to decide. Sentential complements are defined in [Verb Verb.html]. + + SentCN : CN -> SC -> CN ; -- question where she sleeps + +--2 Apposition + +-- This is certainly overgenerating. + + ApposCN : CN -> NP -> CN ; -- city Paris (, numbers x and y) + +} ; diff --git a/old-lib/resource/abstract/Numeral.gf b/old-lib/resource/abstract/Numeral.gf new file mode 100644 index 000000000..43c6f8111 --- /dev/null +++ b/old-lib/resource/abstract/Numeral.gf @@ -0,0 +1,60 @@ +--1 Numerals + +-- This grammar defines numerals from 1 to 999999. +-- The implementations are adapted from the +-- [numerals library http://www.cs.chalmers.se/~aarne/GF/examples/numerals/] +-- which defines numerals for 88 languages. +-- The resource grammar implementations add to this inflection (if needed) +-- and ordinal numbers. +-- +-- *Note* 1. Number 1 as defined +-- in the category $Numeral$ here should not be used in the formation of +-- noun phrases, and should therefore be removed. Instead, one should use +-- [Structural Structural.html]$.one_Quant$. This makes the grammar simpler +-- because we can assume that numbers form plural noun phrases. +-- +-- *Note* 2. The implementations introduce spaces between +-- parts of a numeral, which is often incorrect - more work on +-- (un)lexing is needed to solve this problem. + +abstract Numeral = Cat ** { + +cat + Digit ; -- 2..9 + Sub10 ; -- 1..9 + Sub100 ; -- 1..99 + Sub1000 ; -- 1..999 + Sub1000000 ; -- 1..999999 + +fun + num : Sub1000000 -> Numeral ; + + n2, n3, n4, n5, n6, n7, n8, n9 : Digit ; + + pot01 : Sub10 ; -- 1 + pot0 : Digit -> Sub10 ; -- d * 1 + pot110 : Sub100 ; -- 10 + pot111 : Sub100 ; -- 11 + pot1to19 : Digit -> Sub100 ; -- 10 + d + pot0as1 : Sub10 -> Sub100 ; -- coercion of 1..9 + pot1 : Digit -> Sub100 ; -- d * 10 + pot1plus : Digit -> Sub10 -> Sub100 ; -- d * 10 + n + pot1as2 : Sub100 -> Sub1000 ; -- coercion of 1..99 + pot2 : Sub10 -> Sub1000 ; -- m * 100 + pot2plus : Sub10 -> Sub100 -> Sub1000 ; -- m * 100 + n + pot2as3 : Sub1000 -> Sub1000000 ; -- coercion of 1..999 + pot3 : Sub1000 -> Sub1000000 ; -- m * 1000 + pot3plus : Sub1000 -> Sub1000 -> Sub1000000 ; -- m * 1000 + n + +-- Numerals as sequences of digits have a separate, simpler grammar + + cat + Dig ; -- single digit 0..9 + + fun + IDig : Dig -> Digits ; -- 8 + IIDig : Dig -> Digits -> Digits ; -- 876 + + D_0, D_1, D_2, D_3, D_4, D_5, D_6, D_7, D_8, D_9 : Dig ; + +} diff --git a/old-lib/resource/abstract/Phrase.gf b/old-lib/resource/abstract/Phrase.gf new file mode 100644 index 000000000..3606c2d76 --- /dev/null +++ b/old-lib/resource/abstract/Phrase.gf @@ -0,0 +1,44 @@ +--1 Phrase: Phrases and Utterances + +abstract Phrase = Cat ** { + +-- When a phrase is built from an utterance it can be prefixed +-- with a phrasal conjunction (such as "but", "therefore") +-- and suffixing with a vocative (typically a noun phrase). + + fun + PhrUtt : PConj -> Utt -> Voc -> Phr ; -- but come here, my friend + +-- Utterances are formed from sentences, questions, and imperatives. + + UttS : S -> Utt ; -- John walks + UttQS : QS -> Utt ; -- is it good + UttImpSg : Pol -> Imp -> Utt; -- (don't) love yourself + UttImpPl : Pol -> Imp -> Utt; -- (don't) love yourselves + UttImpPol : Pol -> Imp -> Utt ; -- (don't) sleep (polite) + +-- There are also 'one-word utterances'. A typical use of them is +-- as answers to questions. +-- *Note*. This list is incomplete. More categories could be covered. +-- Moreover, in many languages e.g. noun phrases in different cases +-- can be used. + + UttIP : IP -> Utt ; -- who + UttIAdv : IAdv -> Utt ; -- why + UttNP : NP -> Utt ; -- this man + UttAdv : Adv -> Utt ; -- here + UttVP : VP -> Utt ; -- to sleep + +-- The phrasal conjunction is optional. A sentence conjunction +-- can also used to prefix an utterance. + + NoPConj : PConj ; + PConjConj : Conj -> PConj ; -- and + +-- The vocative is optional. Any noun phrase can be made into vocative, +-- which may be overgenerating (e.g. "I"). + + NoVoc : Voc ; + VocNP : NP -> Voc ; -- my friend + +} diff --git a/old-lib/resource/abstract/Question.gf b/old-lib/resource/abstract/Question.gf new file mode 100644 index 000000000..6b2e3c01d --- /dev/null +++ b/old-lib/resource/abstract/Question.gf @@ -0,0 +1,41 @@ +--1 Question: Questions and Interrogative Pronouns + +abstract Question = Cat ** { + +-- A question can be formed from a clause ('yes-no question') or +-- with an interrogative. + + fun + QuestCl : Cl -> QCl ; -- does John walk + QuestVP : IP -> VP -> QCl ; -- who walks + QuestSlash : IP -> ClSlash -> QCl ; -- whom does John love + QuestIAdv : IAdv -> Cl -> QCl ; -- why does John walk + QuestIComp : IComp -> NP -> QCl ; -- where is John + +-- Interrogative pronouns can be formed with interrogative +-- determiners, with or without a noun. + + IdetCN : IDet -> CN -> IP ; -- which five songs + IdetIP : IDet -> IP ; -- which five + +-- They can be modified with adverbs. + + AdvIP : IP -> Adv -> IP ; -- who in Paris + +-- Interrogative quantifiers have number forms and can take number modifiers. + + IdetQuant : IQuant -> Num -> IDet ; -- which (five) + +-- Interrogative adverbs can be formed prepositionally. + + PrepIP : Prep -> IP -> IAdv ; -- with whom + +-- Interrogative complements to copulas can be both adverbs and +-- pronouns. + + CompIAdv : IAdv -> IComp ; -- where (is it) + CompIP : IP -> IComp ; -- who (is it) + +-- More $IP$, $IDet$, and $IAdv$ are defined in $Structural$. + +} diff --git a/old-lib/resource/abstract/Relative.gf b/old-lib/resource/abstract/Relative.gf new file mode 100644 index 000000000..6db45d085 --- /dev/null +++ b/old-lib/resource/abstract/Relative.gf @@ -0,0 +1,26 @@ +--1 Relative clauses and pronouns + +abstract Relative = Cat ** { + + fun + +-- The simplest way to form a relative clause is from a clause by +-- a pronoun similar to "such that". + + RelCl : Cl -> RCl ; -- such that John loves her + +-- The more proper ways are from a verb phrase +-- (formed in [``Verb`` Verb.html]) or a sentence +-- with a missing noun phrase (formed in [``Sentence`` Sentence.html]). + + RelVP : RP -> VP -> RCl ; -- who loves John + RelSlash : RP -> ClSlash -> RCl ; -- whom John loves + +-- Relative pronouns are formed from an 'identity element' by prefixing +-- or suffixing (depending on language) prepositional phrases. + + IdRP : RP ; -- which + FunRP : Prep -> NP -> RP -> RP ; -- the mother of whom + +} + diff --git a/old-lib/resource/abstract/Sentence.gf b/old-lib/resource/abstract/Sentence.gf new file mode 100644 index 000000000..1f771e12c --- /dev/null +++ b/old-lib/resource/abstract/Sentence.gf @@ -0,0 +1,95 @@ +--1 Sentence: Sentences, Clauses, and Imperatives + +abstract Sentence = Cat ** { + +--2 Clauses + +-- The $NP VP$ predication rule form a clause whose linearization +-- gives a table of all tense variants, positive and negative. +-- Clauses are converted to $S$ (with fixed tense) with the +-- $UseCl$ function below. + + fun + PredVP : NP -> VP -> Cl ; -- John walks + +-- Using an embedded sentence as a subject is treated separately. +-- This can be overgenerating. E.g. "whether you go" as subject +-- is only meaningful for some verb phrases. + + PredSCVP : SC -> VP -> Cl ; -- that she goes is good + +--2 Clauses missing object noun phrases + +-- This category is a variant of the 'slash category' $S/NP$ of +-- GPSG and categorial grammars, which in turn replaces +-- movement transformations in the formation of questions +-- and relative clauses. Except $SlashV2$, the construction +-- rules can be seen as special cases of function composition, in +-- the style of CCG. +-- *Note* the set is not complete and lacks e.g. verbs with more than 2 places. + + SlashVP : NP -> VPSlash -> ClSlash ; -- (whom) he sees + AdvSlash : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today + SlashPrep : Cl -> Prep -> ClSlash ; -- (with whom) he walks + SlashVS : NP -> VS -> SSlash -> ClSlash ; -- (whom) she says that he loves + +--2 Imperatives + +-- An imperative is straightforwardly formed from a verb phrase. +-- It has variation over positive and negative, singular and plural. +-- To fix these parameters, see [Phrase Phrase.html]. + + ImpVP : VP -> Imp ; -- love yourselves + +--2 Embedded sentences + +-- Sentences, questions, and infinitival phrases can be used as +-- subjects and (adverbial) complements. + + EmbedS : S -> SC ; -- that she goes + EmbedQS : QS -> SC ; -- who goes + EmbedVP : VP -> SC ; -- to go + +--2 Sentences + +-- These are the 2 x 4 x 4 = 16 forms generated by different +-- combinations of tense, polarity, and +-- anteriority, which are defined in [``Common`` Common.html]. + + fun + UseCl : Tense -> Ant -> Pol -> Cl -> S ; + UseQCl : Tense -> Ant -> Pol -> QCl -> QS ; + UseRCl : Tense -> Ant -> Pol -> RCl -> RS ; + UseSlash : Tense -> Ant -> Pol -> ClSlash -> SSlash ; + +-- An adverb can be added to the beginning of a sentence. + + AdvS : Adv -> S -> S ; -- today, I will go home + +-- A sentence can be modified by a relative clause referring to its contents. + + RelS : S -> RS -> S ; -- she sleeps, which is good + +} + +--. + +-- Examples for English $S$/$Cl$: +{- + Pres Simul Pos ODir : he sleeps + Pres Simul Neg ODir : he doesn't sleep + Pres Anter Pos ODir : he has slept + Pres Anter Neg ODir : he hasn't slept + Past Simul Pos ODir : he slept + Past Simul Neg ODir : he didn't sleep + Past Anter Pos ODir : he had slept + Past Anter Neg ODir : he hadn't slept + Fut Simul Pos ODir : he will sleep + Fut Simul Neg ODir : he won't sleep + Fut Anter Pos ODir : he will have slept + Fut Anter Neg ODir : he won't have slept + Cond Simul Pos ODir : he would sleep + Cond Simul Neg ODir : he wouldn't sleep + Cond Anter Pos ODir : he would have slept + Cond Anter Neg ODir : he wouldn't have slept +-} diff --git a/old-lib/resource/abstract/Structural.gf b/old-lib/resource/abstract/Structural.gf new file mode 100644 index 000000000..d616ba9d5 --- /dev/null +++ b/old-lib/resource/abstract/Structural.gf @@ -0,0 +1,111 @@ +--1 Structural: Structural Words +-- +-- Here we have some words belonging to closed classes and appearing +-- in all languages we have considered. +-- Sometimes more distinctions are needed, e.g. $we_Pron$ in Spanish +-- should be replaced by masculine and feminine variants, found in +-- [``ExtraSpa`` ../spanish/ExtraSpa.gf]. + +abstract Structural = Cat ** { + + fun + +-- This is an alphabetical list of structural words + + above_Prep : Prep ; + after_Prep : Prep ; + all_Predet : Predet ; + almost_AdA : AdA ; + almost_AdN : AdN ; + although_Subj : Subj ; + always_AdV : AdV ; + and_Conj : Conj ; + because_Subj : Subj ; + before_Prep : Prep ; + behind_Prep : Prep ; + between_Prep : Prep ; + both7and_DConj : Conj ; -- both...and +---b both7and_DConj : DConj ; + but_PConj : PConj ; + by8agent_Prep : Prep ; -- by (agent) + by8means_Prep : Prep ; -- by (means of) + can8know_VV : VV ; -- can (capacity) + can_VV : VV ; -- can (possibility) + during_Prep : Prep ; + either7or_DConj : Conj ; -- either...or +---b either7or_DConj : DConj ; + every_Det : Det ; + everybody_NP : NP ; -- everybody + everything_NP : NP ; + everywhere_Adv : Adv ; +--- first_Ord : Ord ; DEPRECATED + few_Det : Det ; + for_Prep : Prep ; + from_Prep : Prep ; + he_Pron : Pron ; + here_Adv : Adv ; + here7to_Adv : Adv ; -- to here + here7from_Adv : Adv ; -- from here + how_IAdv : IAdv ; + how8many_IDet : IDet ; + i_Pron : Pron ; + if_Subj : Subj ; + in8front_Prep : Prep ; -- in front of + in_Prep : Prep ; + it_Pron : Pron ; + less_CAdv : CAdv ; + many_Det : Det ; + more_CAdv : CAdv ; + most_Predet : Predet ; + much_Det : Det ; + must_VV : VV ; +---b no_Phr : Phr ; + no_Utt : Utt ; + on_Prep : Prep ; +--- one_Quant : QuantSg ; DEPRECATED + only_Predet : Predet ; + or_Conj : Conj ; + otherwise_PConj : PConj ; + part_Prep : Prep ; + please_Voc : Voc ; + possess_Prep : Prep ; -- of (possessive) + quite_Adv : AdA ; + she_Pron : Pron ; + so_AdA : AdA ; + someSg_Det : Det ; + somePl_Det : Det ; + somebody_NP : NP ; + something_NP : NP ; + somewhere_Adv : Adv ; + that_Quant : Quant ; + there_Adv : Adv ; + there7to_Adv : Adv ; -- to there + there7from_Adv : Adv ; -- from there + therefore_PConj : PConj ; + they_Pron : Pron ; + this_Quant : Quant ; + through_Prep : Prep ; + to_Prep : Prep ; + too_AdA : AdA ; + under_Prep : Prep ; + very_AdA : AdA ; + want_VV : VV ; + we_Pron : Pron ; + whatPl_IP : IP ; -- what (plural) + whatSg_IP : IP ; -- what (singular) + when_IAdv : IAdv ; + when_Subj : Subj ; + where_IAdv : IAdv ; + which_IQuant : IQuant ; + whoPl_IP : IP ; -- who (plural) + whoSg_IP : IP ; -- who (singular) + why_IAdv : IAdv ; + with_Prep : Prep ; + without_Prep : Prep ; +---b yes_Phr : Phr ; + yes_Utt : Utt ; + youSg_Pron : Pron ; -- you (singular) + youPl_Pron : Pron ; -- you (plural) + youPol_Pron : Pron ; -- you (polite) + +} diff --git a/old-lib/resource/abstract/Text.gf b/old-lib/resource/abstract/Text.gf new file mode 100644 index 000000000..d3cfac16f --- /dev/null +++ b/old-lib/resource/abstract/Text.gf @@ -0,0 +1,15 @@ +--1 Text: Texts + +-- Texts are built from an empty text by adding $Phr$ases, +-- using as constructors the punctuation marks ".", "?", and "!". +-- Any punctuation mark can be attached to any kind of phrase. + +abstract Text = Common ** { + + fun + TEmpty : Text ; -- + TFullStop : Phr -> Text -> Text ; -- John walks. ... + TQuestMark : Phr -> Text -> Text ; -- Are they here? ... + TExclMark : Phr -> Text -> Text ; -- Let's go! ... + +} diff --git a/old-lib/resource/abstract/Verb.gf b/old-lib/resource/abstract/Verb.gf new file mode 100644 index 000000000..c1462acc7 --- /dev/null +++ b/old-lib/resource/abstract/Verb.gf @@ -0,0 +1,71 @@ +--1 The construction of verb phrases + +abstract Verb = Cat ** { + +--2 Complementization rules + +-- Verb phrases are constructed from verbs by providing their +-- complements. There is one rule for each verb category. + + fun + UseV : V -> VP ; -- sleep + + ComplVV : VV -> VP -> VP ; -- want to run + ComplVS : VS -> S -> VP ; -- say that she runs + ComplVQ : VQ -> QS -> VP ; -- wonder who runs + ComplVA : VA -> AP -> VP ; -- they become red + + SlashV2a : V2 -> VPSlash ; -- love (it) + Slash2V3 : V3 -> NP -> VPSlash ; -- give it (to her) + Slash3V3 : V3 -> NP -> VPSlash ; -- give (it) to her + + SlashV2V : V2V -> VP -> VPSlash ; -- beg (her) to go + SlashV2S : V2S -> S -> VPSlash ; -- answer (to him) that it is good + SlashV2Q : V2Q -> QS -> VPSlash ; -- ask (him) who came + SlashV2A : V2A -> AP -> VPSlash ; -- paint (it) red + + ComplSlash : VPSlash -> NP -> VP ; -- love it + + SlashVV : VV -> VPSlash -> VPSlash ; -- want to buy + SlashV2VNP : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy + +--2 Other ways of forming verb phrases + +-- Verb phrases can also be constructed reflexively and from +-- copula-preceded complements. + + ReflVP : VPSlash -> VP ; -- love himself + UseComp : Comp -> VP ; -- be warm + +-- Passivization of two-place verbs is another way to use +-- them. In many languages, the result is a participle that +-- is used as complement to a copula ("is used"), but other +-- auxiliary verbs are possible (Ger. "wird angewendet", It. +-- "viene usato"), as well as special verb forms (Fin. "käytetään", +-- Swe. "används"). +-- +-- *Note*. the rule can be overgenerating, since the $V2$ need not +-- take a direct object. + + PassV2 : V2 -> VP ; -- be loved + +-- Adverbs can be added to verb phrases. Many languages make +-- a distinction between adverbs that are attached in the end +-- vs. next to (or before) the verb. + + AdvVP : VP -> Adv -> VP ; -- sleep here + AdVVP : AdV -> VP -> VP ; -- always sleep + +-- *Agents of passives* are constructed as adverbs with the +-- preposition [Structural Structural.html]$.8agent_Prep$. + + +--2 Complements to copula + +-- Adjectival phrases, noun phrases, and adverbs can be used. + + CompAP : AP -> Comp ; -- (be) small + CompNP : NP -> Comp ; -- (be) a man + CompAdv : Adv -> Comp ; -- (be) here + +} |
