# r_morph_verb.gra - AGFL grammar defining verbal morphology. # # This file is a module of the Russian Parser for Information Retrieval (RuForIR) AGFL grammar, # version 2.1, 25.10.2002. # It can be processed using the AGFL parser generator to generate the RuForIR parser. # # The grammar is based on the Affix Grammar for Basic Russian. # Original version 1997 # Updated by I. Azarova, 2002 # # Copyright 1997-2002 Saint-Petersburg University # present active forms for non-reflexive imperfect verbs verbf (pres, imperf, GENDER, first, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first); verbst_pr(non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first); verbst_prfste (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first); verbst_prfsti (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first). verbf (pres, imperf, GENDER, first, pl, TRANS, non, active, LEMMA): verbst (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first); verbst_pr(non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first); verbst_prothe (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first); verbst_prothi (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first). verbf (pres, imperf, GENDER, second, NUMBER, TRANS, non, active, LEMMA): verbst (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second); verbst_pr(non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second); verbst_prothe (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second); verbst_prothi (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second). verbf (pres, imperf, GENDER, third, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second); verbst_pr(non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second); verbst_prothe (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, third); verbst_prothi (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, third). verbf (pres, imperf, GENDER, third, pl, TRANS, non, active, LEMMA): verbst (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third); verbst_pr(non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third); verbst_prfste (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third); verbst_prothi (non, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third). # present active forms for reflexive imperfect verbs verbf (pres, imperf, GENDER, first, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first), postfx (refl, pres, sg, first); verbst_pr(refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first), postfx (refl, pres, sg, first); verbst_prfste (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first), postfx (refl, pres, sg, first); verbst_prfsti (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, first), postfx (refl, pres, sg, first). verbf (pres, imperf, GENDER, first, pl, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first), postfx (refl, pres, pl, first); verbst_pr(refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first), postfx (refl, pres, pl, first); verbst_prothe (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first), postfx (refl, pres, pl, first); verbst_prothi (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, first), postfx (refl, pres, pl, first). verbf (pres, imperf, GENDER, second, NUMBER, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, NUMBER, second); verbst_pr(refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, NUMBER, second); verbst_prothe (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, NUMBER, second); verbst_prothi (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, NUMBER, second). verbf (pres, imperf, GENDER, third, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, sg, third); verbst_pr(refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, NUMBER, second), postfx (refl, pres, sg, third); verbst_prothe (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, third), postfx (refl, pres, sg, third); verbst_prothi (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, sg, third), postfx (refl, pres, sg, third). verbf (pres, imperf, GENDER, third, pl, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third), postfx (refl, pres, pl, third); verbst_pr(refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third), postfx (refl, pres, pl, third); verbst_prfste (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third), postfx (refl, pres, pl, third); verbst_prothi (refl, VBTYPE, imperf, TRANS, LEMMA), inflsv (pres, VBTYPE, pl, third), postfx (refl, pres, pl, third). # present passive forms for non-reflexive imperfect verbs verbf (pres, imperf, GENDER, PERSON, NUMBER, TRANS, non, passive, LEMMA): verbf (pres, imperf, GENDER, PERSON, NUMBER, TRANS, non, active, LEMMA), postfx (refl, pres, NUMBER, PERSON). verbf (pres, imperf, GENDER, PERSON, NUMBER, tran, non, passive, LEMMA): participle_stem (non, imperf, pres, passive, tran, LEMMA), inflspr (NUMBER, GENDER). # present passive forms for non-reflexive perfect verbs verbf (pres, perf, GENDER, PERSON, NUMBER, tran, non, passive, LEMMA): participle_stem (non, perf, past, passive, tran, LEMMA), inflspr (NUMBER, GENDER). # present|future active forms for non-reflexive perfect verbs verbf (presfut, perf, GENDER, first, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first); verbst_pr (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first); verbst_prfste (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first); verbst_prfsti (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first). verbf (presfut, perf, GENDER, first, pl, TRANS, non, active, LEMMA): verbst (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first); verbst_pr (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first); verbst_prothe (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first); verbst_prothi (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first). verbf (presfut, perf, GENDER, second, NUMBER, TRANS, non, active, LEMMA): verbst (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second); verbst_pr (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second); verbst_prothe (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second); verbst_prothi (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second). verbf (presfut, perf, GENDER, third, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third); verbst_pr (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third); verbst_prothe (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third); verbst_prothi (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third). verbf (presfut, perf, GENDER, third, pl, TRANS, non, active, LEMMA): verbst (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third); verbst_pr (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third); verbst_prfste (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third); verbst_prothi (non, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third). # present|future active forms for reflexive perfect verbs verbf (presfut, perf, GENDER, first, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first), postfx (refl, presfut, sg, first); verbst_pr (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first), postfx (refl, presfut, sg, first); verbst_prfste (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first), postfx (refl, presfut, sg, first); verbst_prfsti (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, first), postfx (refl, presfut, sg, first). verbf (presfut, perf, GENDER, first, pl, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first), postfx (refl, presfut, pl, first); verbst_pr (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first), postfx (refl, presfut, pl, first); verbst_prothe (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first), postfx (refl, presfut, pl, first); verbst_prothi (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, first), postfx (refl, presfut, pl, first). verbf (presfut, perf, GENDER, second, NUMBER, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second), postfx (refl, presfut, NUMBER, second); verbst_pr (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second), postfx (refl, presfut, NUMBER, second); verbst_prothe (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second), postfx (refl, presfut, NUMBER, second); verbst_prothi (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, NUMBER, second), postfx (refl, presfut, NUMBER, second). verbf (presfut, perf, GENDER, third, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third), postfx (refl, presfut, sg, third); verbst_pr (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third), postfx (refl, presfut, sg, third); verbst_prothe (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third), postfx (refl, presfut, sg, third); verbst_prothi (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, sg, third), postfx (refl, presfut, sg, third). verbf (presfut, perf, GENDER, third, pl, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third), postfx (refl, presfut, pl, third); verbst_pr (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third), postfx (refl, presfut, pl, third); verbst_prfste (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third), postfx (refl, presfut, pl, third); verbst_prothi (refl, VBTYPE, perf, TRANS, LEMMA), inflsv (presfut, VBTYPE, pl, third), postfx (refl, presfut, pl, third). # future passive forms for non-reflexive perfect verbs verbf (fut, perf, GENDER, PERSON, NUMBER, tran, non, passive, LEMMA): aux (fut, PERSON, NUMBER), participle_stem (non, perf, past, passive, tran, LEMMA), inflspr (NUMBER, GENDER). # future active forms for non-reflexive imperfect verbs verbf (fut, imperf, GENDER, PERSON, NUMBER, TRANS, non, active, LEMMA): aux (fut, PERSON, NUMBER), infinitive (non, imperf, active, TRANS, LEMMA). # future passive forms for non-reflexive imperfect verbs verbf (fut, imperf, GENDER, third, NUMBER, tran, non, passive, LEMMA): aux (fut, PERSON NUMBER), infinitive (non, imperf, passive, tran, LEMMA). verbf (fut, imperf, GENDER, PERSON, NUMBER, TRANS, non, passive, LEMMA): aux (fut, PERSON, NUMBER), participle_stem (non, imperf, pres, passive, tran, LEMMA), inflspr (NUMBER, GENDER); aux (fut, PERSON, NUMBER), participle_stem (non, imperf, past, passive, tran, LEMMA), inflspr (NUMBER, GENDER). # future active forms for reflexive imperfect verbs verbf (fut, imperf, GENDER, PERSON, NUMBER, TRANS, refl, active, LEMMA): aux (fut, PERSON, NUMBER), infinitive (refl, imperf, active, TRANS, LEMMA). # past active forms for non-reflexive perfect/imperfect verbs verbf (past, ASPECT, masc, PERSON, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, sg, masc); verbst_ps (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, masc); verbst_psms (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, masc). verbf (past, ASPECT, GENFN, PERSON, sg, TRANS, non, active, LEMMA): verbst (non, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, sg, GENFN); verbst_ps (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, GENFN); verbst_psoth (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, GENFN). verbf (past, ASPECT, GENDER, PERSON, pl, TRANS, non, active, LEMMA): verbst (non, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, pl, GENDER); verbst_ps (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, pl, GENDER); verbst_psoth (non, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, pl, GENDER). # past active forms for reflexive perfect/imperfect verbs verbf (past, ASPECT, masc, PERSON, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, sg, masc), postfx (refl, past, sg, masc); verbst_ps (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, masc), postfx (refl, past, sg, masc); verbst_psms (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, masc), postfx (refl, past, sg, masc). verbf (past, ASPECT, GENFN, PERSON, sg, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, sg, GENFN), postfx (refl, past, sg, GENFN); verbst_ps (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, GENFN), postfx (refl, past, sg, GENFN); verbst_psoth (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, sg, GENFN), postfx (refl, past, sg, GENFN). verbf (past, ASPECT, GENDER, PERSON, pl, TRANS, refl, active, LEMMA): verbst (refl, VBTYPE, ASPECT, TRANS, LEMMA), inflsv (past, VBTYPE, pl, GENDER), postfx (refl, past, pl, GENDER); verbst_ps (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, pl, GENDER), postfx (refl, past, pl, GENDER); verbst_psoth (refl, PASTYPE, ASPECT, TRANS, LEMMA), inflsv (past, PASTYPE, pl, GENDER), postfx (refl, past, pl, GENDER). # past passive forms for non-reflexive imperfect verbs verbf (past, imperf, GENDER, PERSON, NUMBER, tran, non, passive, LEMMA): verbf (past, imperf, GENDER, PERSON, NUMBER, tran, non, active, LEMMA), postfx (refl, past, NUMBER, GENDER). # imperative active 2nd forms for reflexive/non-reflexive perfect/imperfect verbs verbf (imper, ASPECT, second, PERSON, NUMBER, TRANS, REFL, active, LEMMA): verbst (REFL, VBTYPE, ASPECT, TRANS, LEMMA), suff (imper, VBTYPE), postfx (REFL, imper, NUMBER, second); verbst_pr (REFL, VBTYPE, ASPECT, TRANS, LEMMA), suff (imper, VBTYPE), postfx (REFL, imper, NUMBER, second); verbst_prothe (REFL, VBTYPE, ASPECT, TRANS, LEMMA), suff (imper, VBTYPE), postfx (REFL, imper, NUMBER, second); verbst_prothi (REFL, VBTYPE, ASPECT, TRANS, LEMMA), suff (imper, VBTYPE), postfx (REFL, imper, NUMBER, second). # imperative active 1st forms for reflexive/non-reflexive perfect/imperfect verbs verbf (imper, perf, first, PERSON, NUMBER, TRANS, REFL, active, LEMMA): [aux_imp (NUMBER)], verbst (REFL, VBTYPE, perf, TRANS, LEMMA), inflsv (pres| presfut, VBTYPE, pl, first), postfx (REFL, imper, NUMBER, first); [aux_imp (NUMBER)], verbst_pr (REFL, VBTYPE, perf, TRANS, LEMMA), inflsv (pres| presfut, VBTYPE, pl, first), postfx (REFL, imper, NUMBER, first); [aux_imp (NUMBER)], verbst_prothe (REFL, VBTYPE, perf, TRANS, LEMMA), inflsv (pres| presfut, VBTYPE, pl, first), postfx (REFL, imper, NUMBER, first); [aux_imp (NUMBER)], verbst_prothi (REFL, VBTYPE, perf, TRANS, LEMMA), inflsv (pres| presfut, VBTYPE, pl, first), postfx (REFL, imper, NUMBER, first). verbf (imper, imperf, first, PERSON, NUMBER, TRANS, REFL, active, LEMMA): aux_imp (NUMBER), infinitive (REFL, imperf, active, TRANS, LEMMA). # infinitive forms infinitive (non, ASPECT, active, TRANS, LEMMA): verbst (non, VBTYPE, ASPECT, TRANS, LEMMA), "-ть"; verbst_ps (non, VOW, ASPECT, TRANS, LEMMA), "-ть"; verbst_ps (non, cons, ASPECT, TRANS, LEMMA), "-ти"; verbst_inf (non, noinf, ASPECT, TRANS, LEMMA). infinitive (non, imperf, passive, tran, LEMMA): verbst (non, VBTYPE, imperf, tran, LEMMA), "-ться"; verbst_ps (non, VOW, imperf, tran, LEMMA), "-ться"; verbst_ps (non, cons, imperf, tran, LEMMA), "-тись"; verbst_inf (non, noinf, imperf, tran, LEMMA), "-ся". infinitive (refl, ASPECT, active, TRANS, LEMMA): verbst (refl, VBTYPE, ASPECT, TRANS, LEMMA), "-ться"; verbst_ps (refl, VOW, ASPECT, TRANS, LEMMA), "-ться"; verbst_ps (refl, cons, ASPECT, TRANS, LEMMA), "-тись"; verbst_inf (refl, noinf, ASPECT, TRANS, LEMMA), "-ся". # particle predicate forms for non-reflexive perfect/imperfect verbs participle_stem (non, imperf, pres, passive, tran, LEMMA): verbst (non, VBTYPE, imperf, tran, LEMMA), suff_part (passive, pres, VBTYPE); verbst_pr (non, VBTYPE, imperf, tran, LEMMA), suff_part (passive, pres, VBTYPE). participle_stem (non, ASPECT, past, passive, tran, LEMMA): verbst (non, ETYP, ASPECT, tran, LEMMA), suff_part (passive, past, ETYP); verbst_ps (non, sut, ASPECT, tran, LEMMA), suff_part (passive, past, sut); verbst_ps (non, vow, ASPECT, tran, LEMMA), suff_part (passive, past, vow); verbst_pr (non, ITYP, ASPECT, tran, LEMMA), suff_part (passive, past, ITYP).