tef-innu

Transducteur à états finis de l’innu
git clone git://git.asteride.xyz/tef-innu.git
Journaux | Fichiers | Références

morphologique.xfst (18909B)


      1 # ====================
      2 # MODULE MORPHOLOGIQUE
      3 # ====================
      4 #
      5 # Passer du niveau positionnel au niveau morphologique.
      6 
      7 load defined tf/orthographe.def
      8 load defined tf/traits.def
      9 load defined tf/morphemes.def
     10 
     11 define Positionnel @"tf/verbes/positionnel.fst";
     12 
     13 define MorphologiqueIndep $["+Indép"] .o. Positionnel
     14 
     15 	# Hors tiroirs
     16 	.o. [[..] -> "<IndirPasLc>" ||
     17 		_ "[SPers]" $["+VTA"] $["+Percep" "+Pas"]
     18 			[$[["+2"|"+1"] "+Sg"] $["+Obv"]]]
     19 	.o. [[..] -> "<IndirPasLc2>" ||
     20 		_ "[SPers]" $["+VTA"] $["+Percep" "+Pas"]
     21 			$[["+2"|"+1"] "+Sg"] $["+3"] $["+Ntr"]]
     22 	.o. [[..] -> "<IndirPasLc2>" ||
     23 		_ "[Tir]" $["+VTA"] $["+Percep" "+Pas"]
     24 			[[$[["+2"|"+1"] "+Pl"] $["+3" "+Pl" "+Ntr"]]
     25 			|[$["+3" "+Pl" "+Ntr"] $["+2"|"+1"]]]]
     26 	.o. [[..] -> "<IndirPasLc3>" ||
     27 		_ "[Tir]" $["+VTA"] $["+Percep" "+Pas"]
     28 			[$[["+2"|"+1"] "+Pl"] & $["+Obv"]]]
     29 
     30 	.o. [[..] -> "<IndirPasNLc>" ||
     31 		_ "[SPers]" $["+VII"|"+VAI"|"+VTI"] $["+Percep" "+Pas"]
     32 			$["+3"]]
     33 	.o. [[..] -> "<IndirPasNLc>" ||
     34 		_ "[SPers]" $["+VTA"] $["+Percep" "+Pas"]
     35 			[[$["+3"] $["+3"]]
     36 			|[$["+Obv"] $[["+2"|"+1"] "+Sg"]]]]
     37 
     38 	.o. [[..] -> "<2Pl>" ||
     39 		"[NbLc]" _ $["+VTA"] $["+Ind" "+Pas"]
     40 			$["+2" "+Pl"] $["+3"] $["+Obv"]]
     41 
     42 	# Préfixes de personne.
     43 	.o. ["[PPers]" -> "<2>" || _ [$["+2"] | $["+In"]]]
     44 	.o. ["[PPers]" -> "<1>" || _ [$["+1"] - $["+In"]]]
     45 
     46 	# Racines
     47 	.o. [[..] -> "<Racine>" || Lettre+ _ \Lettre]
     48 	.o. [[..] -> "<RacineIdItau>" ||
     49 		_ "<Racine>" $["+IdItau"] $["+2"|"+1"]]
     50 	.o. ["<Racine>" -> "<RacineUA>" ||
     51 		_ [[$["+Rua"]
     52 			[[$["+1"] $["+2"]] |
     53 			[$["+3"] [$["+1"|"+2"]]] |
     54 			[$["+3"] $["+Obv"] $["+3"] $["+Ntr"]] |
     55 			[$["+3"] $["+Obv2"] $["+3"] $["+Obv"]]]] -
     56 				[$["+Ouest"] $["+Obv"] $["+2"|"+1"]]]]
     57 	.o. ["<Racine>" -> "<RacineU>" ||
     58 		_ [[$["+Ru"]
     59 			[[$["+1"] $["+2"]] |
     60 			[$["+3"] [$["+1"|"+2"]]] |
     61 			[$["+3"] $["+Obv"] $["+3"] $["+Ntr"]] |
     62 			[$["+3"] $["+Obv2"] $["+3"] $["+Obv"]]]] -
     63 				[$["+Ouest"] $["+Obv"] $["+2"|"+1"]]]]
     64 	.o. ["<Racine>" -> "<RacineT>" ||
     65 		_ [$["+Rsh"] & ~[$["+2"] $["+1"]]] .#.]
     66 
     67 	# Thème de décalage
     68 	.o. ["[ThDéc]" -> "<ThDéc>" ||
     69 		_ $["+VTA"] $["+2"|"+1"] $["+Obv"]]
     70 	.o. ["[ThDéc]" -> "<ThDéc>" ||
     71 		_ $["+VTA"] $["+Ntr"]    $["+Obv2"]]
     72 	.o. ["[ThDéc]" -> "<ThDéc>" ||
     73 		_ $["+VTA"] $["+Obv"]    $["+Obv3"]]
     74 	.o. ["[ThDéc]" -> "<ThDéc>" ||
     75 		_ $["+VTA"] $["+Ouest"]  $["+Obv"] $["+2"|"+1"]]
     76 
     77 	# Thèmes de direction
     78 	.o. ["[ThDir]" -> "<ThLcI>"  || _ $["+VTA"] $["+1"] $["+2"]]
     79 	.o. ["[ThDir]" -> "<ThMxt>"  || _ $["+VTA"] $["+1"|"+2"] $["+3"]]
     80 	.o. ["[ThDir]" -> "<ThI>"    ||
     81 		_ $["+VTA"] [$["+3"] $["+1"|"+2"] |
     82 			     $["+Obv3"] $["+Obv2"|"+Obv"|"+Ntr"] |
     83 			     $["+Obv2"] $["+Obv"|"+Ntr"] |
     84 			     $["+Obv"] $["+Ntr"]]]
     85 	.o. ["[ThDir]" -> "<ThNLc>" || _ $["+VTI"] ["+2"|"+1"]]
     86 	.o. ["[ThDir]" -> "<ThNLc>"  ||
     87 		_ $["+VTA"] [$["+Ntr"] $["+Obv"|"+Obv2"|"+Obv3"] |
     88 			     $["+Obv"] $["+Obv2"|"+Obv3"] |
     89 			     $["+Obv2"] $["+Obv3"]]]
     90 	.o. ["[ThDir]" -> "<ThAmu>" || _ $["+VTI"] "+3"]
     91 
     92 	# Obviatif
     93 	.o. ["[Obv]" -> "<Obv>" || _ $["+VII"|"+VAI"|"+VTI"] "+Obv"]
     94 	.o. ["[Obv]" -> "<Obv>" ||
     95 		_ $["+VTA"] [[$["+3"] $["+3"]] - $["+Ntr"]] .#.]
     96 	.o. ["[Obv]" -> "<Obv>" ||
     97 		_ $["+VTA"] $["+Est"] $["+Indép"]
     98 			$["+Obv"] $["+2"|"+1"] $["+Sg"]]
     99 
    100 	# Suffixes de personne
    101 	.o. ["[SPers]" -> "<Lc>" ||
    102 		_ $["+VAI"|"+VTI"]
    103 			$[[["+Ind"|"+Déd"] "+Prés"]|"+Indir"|"+Percep"]
    104 				["+2"|"+1"]]
    105 	.o. ["[SPers]" -> "<Lc>" ||
    106 		_ $["+VTA"] $[[["+Ind"|"+Déd"|"+Percep"] "+Prés"]|"+Indir"|"+Percep"]
    107 			$[[$["+1"] & $["+2"]] | "+1" "+Pl"]]
    108 	.o. ["[SPers]" -> "<Lc>" ||
    109 		_ $["+VTA"] $["+Ouest"] $["+Indir"] $["+Obv"] $["+2" "+Pl"]]
    110 	.o. ["[SPers]" -> "<Lc>" ||
    111 		_ $["+VTA"] $["+Est"] $["+Déd" "+Pas"] $["+Obv"] $["+1" "+Pl"]]
    112 
    113 	.o. ["[SPers]" -> [] || _ $["+VTI"] $["+Prés"] $["+3"] ["+Ntr"]]
    114 	.o. ["[SPers]" -> "<NLc>" ||
    115 		_ $["+VII"|"+VAI"|"+VTI"] $[["+Ind" "+Prés"]|"+Percep"]
    116 			$["+3"]]
    117 	.o. ["[SPers]" -> "<NLc>" ||
    118 		_ [[$["+VTA"] $[["+Ind" "+Prés"]|"+Percep"]]
    119 			- [$["+Ntr"] $["+2"|"+1"]]] .#.]
    120 	.o. ["[SPers]" -> "<NLc>" ||
    121 		_ $["+VTA"] $["+Est"] $["+Ind" "+Prés"]
    122 			$["+Obv"] $["+2"|"+1"] $["+Sg"]]
    123 	.o. ["[SPers]" -> "<NLc>" ||
    124 		_ $["+VTA"] $["+Est"] $["+Déd" "+Pas"] $["+Obv"] $["+2" "+Pl"]]
    125 	.o. ["[SPers]" -> "<NLc>" ||
    126 		_ $["+VTA"] $["+Indir"|"+Déd" "+Prés"] [$["+2" "+Pl"] & $["+3"]]]
    127 
    128 	.o. ["[SPers]" -> "<LcPas>" ||
    129 		_ $["+VAI"|"+VTI"] $[["+Ind"|"+Déd"] "+Pas"]
    130 			["+2"|"+1"]]
    131 	.o. ["[SPers]" -> [] ||
    132 		_ $["+VTA"] $["+Est"] $[["+Ind"|"+Déd"] "+Pas"]
    133 			$["+Obv"] $["+2"|"+1"] $["+Sg"]]
    134 	.o. ["[SPers]" -> "<LcPas>" ||
    135 		_ $["+VTA"] $[["+Ind"|"+Déd"] "+Pas"]
    136 			$["+2"|"+1"]]
    137 
    138 	.o. ["[SPers]" -> "<NLcPas>" ||
    139 		_ $["+VII"|"+VAI"|"+VTI"] $["+Ind" "+Pas"] $["+3"]]
    140 	.o. ["[SPers]" -> "<NLcPas>" || _ $["+VTA"] $["+Ind" "+Pas"]]
    141 
    142 	# Nombre de personne locale
    143 	.o. ["[NbLc]" -> "<2Pl>"  || _ [$["+2" "+Pl"] - $["+Ex"]] .#.]
    144 	.o. ["[NbLc]" -> "<1Pl2>" || _ $["+Indép"] $["+Percep" "+Prés"]
    145 		[$["+1" "+Pl"] & $["+3" ~$[">"] ["+Pl"|"+Obv"]]]]
    146 	.o. ["[NbLc]" -> "<1Pl>"  || _ [$["+1" "+Pl"] | $["+Ex"]] .#.]
    147 
    148 	# Tiroir
    149 	.o. ["[Tir]" -> "<IndirPrésLc>" ||
    150 		_ [[$["+Indir" "+Prés"] $["+2"|"+1"]]
    151 			- [$["+Est"] $["+Obv"] $[["+2"|"+1"] "+Sg"]]] .#.]
    152 	.o. ["[Tir]" -> "<IndirPrésNLc>" || _ $["+Indir" "+Prés"] $["+3"]]
    153 
    154 	.o. ["[Tir]" -> "<IndirPasLc>" ||
    155 		_ [[$["+Indir" "+Pas"] $["+2"|"+1"]]
    156 			- [$["+Est"] $["+Obv"] $[["+2"|"+1"] "+Sg"]]] .#.]
    157 	.o. ["[Tir]" -> "<IndirPasLc>" ||
    158 		_ $["+VAI"|"+VTI"] $["+Percep" "+Pas"] $["+2"|"+1"]]
    159 	.o. ["[Tir]" -> "<IndirPasLc>" ||
    160 		_ $["+Percep" "+Pas"]
    161 			[[$["+2"] & $["+1"]]
    162 			|[$[["+2"|"+1"] "+Pl"] $["+3" "+Sg" "+Ntr"]]
    163 			|[$["+3" "+Sg" "+Ntr"] $["+2"|"+1"]]]]
    164 	.o. ["[Tir]" -> "<IndirPasNLc>" || _ $["+Indir" "+Pas"] $["+3"]]
    165 
    166 	.o. ["[Tir]" -> "<DédPrésLc>" ||
    167 		_ [[$["+Déd" "+Prés"] $["+2"|"+1"]]
    168 			- [$["+Est"] $["+Obv"] $[["+2"|"+1"] "+Sg"]]] .#.]
    169 	.o. ["[Tir]" -> "<DédPrésNLc>" || _ $["+Déd" "+Prés"] $["+3"]]
    170 
    171 	.o. ["[Tir]" -> "<DédPasLc>" ||
    172 		_ [[$["+Déd" "+Pas"] $["+2"|"+1"]]
    173 			- [$["+Est"] $["+Obv"] $[["+2"|"+1"] "+Sg"]]] .#.]
    174 	.o. ["[Tir]" -> "<DédPasNLc>" || _ $["+Déd" "+Pas"] $["+3"]]
    175 
    176 	.o. ["[Tir]" -> "<PercepPrés>" ||
    177 		_ $["+VAI"|"+VTI"|"+VTA"] $["+Ouest"]
    178 			$["+Percep"] $["+Pl" "+Ntr"]]
    179 
    180 	# Nombre de personne non-locale
    181 	.o. ["[NbNLc]" -> "<NtrPl>" ||
    182 		_ $["+Ind" "+Prés"] $["+3" "+Pl" "+Ntr"]]
    183 	.o. ["[NbNLc]" -> "<ObvSg>" ||
    184 		_ ?* "+Ind" "+Prés" [$["+3" "+Sg"] - $["+Ntr"]] .#.]
    185 	.o. ["[NbNLc]" -> "<ObvPl>" ||
    186 		_ ?* "+Ind" "+Prés" [$["+3" "+Pl"] - $["+Ntr"]] .#.]
    187 
    188 	.o. ["[NbNLc]" -> [] ||
    189 		_ $["+Ouest"] $["+Percep"] $["+Pl" "+Ntr"] $["+Obv2"]]
    190 	.o. ["[NbNLc]" -> "<NtrPlPercep>" ||
    191 		_ $["+Percep"] $["+Pl" "+Ntr"] $["+Obv2"]]
    192 
    193 	.o. ["[NbNLc]" -> "<NtrPl2>" || _ $["+3" "+Pl" "+Ntr"]]
    194 	.o. ["[NbNLc]" -> "<ObvSg2>" || _ [$["+3" "+Sg"] - $["+Ntr"]] .#.]
    195 	.o. ["[NbNLc]" -> "<ObvPl2>" || _ [$["+3" "+Pl"] - $["+Ntr"]] .#.]
    196 
    197 	# Perceptif
    198 	.o. ["[Percep]" -> "<Percep2>" ||
    199 		_ [$["+VAI"] $["+Percep"] | $["+VTI"] $["+Percep" "+Prés"]]
    200 			$["+2"|"+1"]]
    201 	.o. ["[Percep]" -> "<Percep2>" || _ $["+VTA"] $["+Percep" "+Prés"]
    202 		[[$["+2"] & $["+1"]] | [$["+1" "+Pl"] & $["+3" "+Sg" "+Ntr"]]]]
    203 	.o. ["[Percep]" -> "<Percep2>" || _ $["+VTA"] $["+Percep" "+Pas"]
    204 		[[$["+2"] & $["+1"]]
    205 		|[$[["+2"|"+1"] "+Pl"] $["+3" "+Sg" "+Ntr"]]
    206 		|[$["+3" "+Sg" "+Ntr"] $["+2"|"+1"]]]]
    207 
    208 	.o. ["[Percep]" -> [] || $["<PercepPrés>"] _]
    209 	.o. ["[Percep]" -> "<Percep>" ||
    210 		_ $["+VII"|"+VAI"|"+VTI"] $["+Percep"] $["+3"]]
    211 	.o. ["[Percep]" -> "<Percep>"  || _ $["+VTA"] $["+Percep"]]
    212 
    213 	.o. ["[Percep]" -> "<Percep3>" ||
    214 		_ $["+VTI"] $["+Percep" "+Pas"] $["+2"|"+1"]];
    215 
    216 define MorphologiqueConj $["+Conj"] .o. Positionnel
    217 
    218 	# Hors tiroirs
    219 	.o. [[..] -> "<ThDéc>" ||
    220 		_ "[ThDéc]" $["+VTA"] $["+Ouest"] $["+Obv"] $["+Ex"]]
    221 
    222 	# Racines
    223 	.o. [[..] -> "<Racine>" || Lettre+ _ \Lettre]
    224 
    225 	.o. [[..] -> "<FChangée>" || _ MRacine $["+FChangée"]]
    226 
    227 	.o. ["<Racine>" -> "<RacineT>" ||
    228 		_ [$["+Rsh"] & ~[$["+2"] $["+1"]]
    229 		& ~[$["+3"] $["+1"] $["+Sg"|"+Ex"]]] .#.]
    230 
    231 	.o. ["<Racine>" -> "<RacineU>" ||
    232 		_ $["+Ru"] $["+1"] $["+2"]]
    233 	.o. ["<Racine>" -> "<RacineU>" ||
    234 		_ $["+Ru"] $["+Ntr"] $["+2"|"+In"]]
    235 	.o. ["<Racine>" -> "<RacineU>" ||
    236 		_ $["+Ru"] $["+In"] $["+Ntr"]]
    237 	.o. ["<Racine>" -> "<RacineU>" ||
    238 		_ $["+Ru"] $["+Est"] $["+Obv"] $["+2"|"+In"]]
    239 	.o. ["<Racine>" -> "<RacineU>" ||
    240 		_ $["+Ru"] $["+Obv"] $["+Sg" "+Ntr"]]
    241 	.o. ["<Racine>" -> "<RacineU>" ||
    242 		_ $["+Ru"] $["+Ind"|"+Indir"|"+Irr"]
    243 			$["+Obv"] $["+3" "+Pl" "+Ntr"]]
    244 
    245 	.o. ["<Racine>" -> "<RacineUA>" ||
    246 		_ $["+Rua"] $["+1"] $["+2"]]
    247 	.o. ["<Racine>" -> "<RacineUA>" ||
    248 		_ $["+Rua"] $["+Ntr"] $["+2"|"+In"]]
    249 	.o. ["<Racine>" -> "<RacineUA>" ||
    250 		_ $["+Rua"] $["+Obv"] $["+Ntr"]]
    251 	.o. ["<Racine>" -> "<RacineUA>" ||
    252 		_ $["+Rua"] $["+Est"] $["+Obv"] $["+2"|"+In"]]
    253 
    254 	# Thème de décalage
    255 	.o. ["[ThDéc]" -> "<ThDéc2>" ||
    256 		_ ~$["<ThDéc>"] "+Rua" ~$["+2"] ">" $["+Ex"]]
    257 	.o. ["[ThDéc]" -> "<ThDéc2>" ||
    258 		_ $["+Ru"] $["+Ntr"] $["+Ex"]]
    259 	.o. ["[ThDéc]" -> "<ThDéc2>" ||
    260 		_ $["+Ru"] $["+Est"] $["+Obv"] $["+Ex"]]
    261 
    262 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    263 		_ $["+VTA"] $["+2"|"+1"] $["+Obv"]]
    264 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    265 		_ $["+VTA"] $["+3"] $["+Ntr"] $["+Ex"]]
    266 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    267 		_ $["+VTA"] $[["+2"|"+1"] "+Pl"] $["+Obv"]]
    268 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    269 		_ $["+VTA"] $["+3"] $["+Ntr"] $[">"] $["+Obv2"|"+Obv3"]]
    270 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    271 		_ $["+VTA"] $["+Obv"] $["+Obv3"]]
    272 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    273 		_ $["+VTA"] $["+Est"] $["+Obv"] $["+Ex"]]
    274 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    275 		_ $["+VTA"] $["+Ouest"] $["+Obv"] $["+2"|"+1"]]
    276 
    277 	# Thèmes de direction
    278 	.o. ["[ThDir]" -> "<ThLcI>" || _ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"]
    279 		[[$["+1"] $["+2"]]
    280 		|[$["+3"] $["+1"|"+2"]]]]
    281 	.o. ["[ThDir]" -> "<ThLcI>" || _ $["+VTA"] $["+Indir"]
    282 		[[$["+1"] $["+2"]]
    283 		|[$["+3"] $["+2"|"+1"]]]]
    284 
    285 	.o. ["[ThDir]" -> "<ThI2>"   ||
    286 		_ $["+Ru"] $["+VTA"] $["+Subj"]
    287 			$["+Obv"] $["+Pl" "+Ntr"]]
    288 
    289 	.o. ["[ThDir]" -> "<ThI>" ||
    290 		_ $["+VTA"] [$["+Obv3"] $["+Obv2"|"+Obv"|"+Ntr"] |
    291 			     $["+Obv2"] $["+Obv"|"+Ntr"] |
    292 			     $["+Obv"] $["+Ntr"]]]
    293 
    294 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"]
    295 		$["+Ntr"|"+Obv"] $["+Obv"|"+Obv2"|"+Obv3"]]
    296 
    297 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTA"] $["+Indir"]
    298 		[[$["+Ntr"|"+Obv"] $["+Obv"|"+Obv2"|"+Obv3"]]
    299 		|[$["+1"|"+2" "+Sg"] $["+3"]]]]
    300 
    301 	.o. ["[ThDir]" -> "<ThNLc>" || _ $["+VTA"] $["+Indir"]
    302 		$["+2" "+Pl"] $["+3"]]
    303 
    304 	.o. ["[ThDir]" -> "<ThAmu2>" ||
    305 		_ $["+VTI"] $["+Indir"]]
    306 	.o. ["[ThDir]" -> "<ThAm>" ||
    307 		_ $["+VTI"] $["+Ind"|"+Subj"|"+Irr"] $["+2"|"+1"|"+Obv"]]
    308 
    309 	# Obviatif
    310 	.o. ["[Obv]" -> "<Obv>" || _ $["+VII"|"+VAI"|"+VTI"] "+Obv"]
    311 	.o. ["[Obv]" -> "<Obv>" ||
    312 		_ $["+VTA"] [[$["+3"] $["+3"]] - $["+Ntr"]] .#.]
    313 
    314 	# Suffixes de personne
    315 	.o. ["[SPers]" -> "<1SgConj>" || _ $["+VAI"] $["+Ind"|"+Subj"|"+Irr"] $["+1" "+Sg"]]
    316 	.o. ["[SPers]" -> "<1SgConj2>" || _ $["+VTI"] $["+1" "+Sg"]]
    317 	.o. ["[SPers]" -> "<1SgConj2>" ||
    318 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+1" "+Sg"] $["+2" "+Sg"]]
    319 	.o. ["[SPers]" -> "<1SgConjIndir>" ||
    320 		_ $["+VAI"] $["+Indir"] $["+1" "+Sg"]]
    321 	.o. ["[SPers]" -> "<1SgConjIndir>" ||
    322 		_ $["+VTA"] $["+Indir"] $["+1" "+Sg"] $["+2" "+Sg"]]
    323 
    324 	.o. ["[SPers]" -> "<1Sg2PlConj>" ||
    325 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Sg"] $["+2"] $["+Pl"]]
    326 
    327 	.o. ["[SPers]" -> "<21Sg3ConjIndir>" ||
    328 		_ $["+VTA"] $["+Indir"] $[["+2"|"+1"] "+Sg"] $["+3"]]
    329 
    330 	.o. ["[SPers]" -> "<2SgConj>" ||
    331 		_ $["+VAI"|"+VTI"] $["+Ind"|"+Subj"|"+Irr"] $["+2"] $["+Sg"]]
    332 	.o. ["[SPers]" -> "<2SgConj>" ||
    333 		_ $["+VTA"] $["+Ind"] $["+2"] $["+Sg"] $["+1"] $["+Sg"]]
    334 	.o. ["[SPers]" -> "<2SgConj2>" ||
    335 		_ $["+VTA"] $["+Subj"|"+Irr"] $["+2"] $["+Sg"] $["+1"] $["+Sg"]]
    336 	.o. ["[SPers]" -> "<2SgConjIndir>" ||
    337 		_ $["+VAI"|"+VTI"] $["+Indir"] $["+2"] $["+Sg"]]
    338 	.o. ["[SPers]" -> "<2SgConjIndir>" ||
    339 		_ $["+VTA"] $["+Indir"] $["+2" "+Sg"] $["+1" "+Sg"]]
    340 	.o. ["[SPers]" -> "<1Sg2PlConjIndir>" ||
    341 		_ $["+VTA"] $["+Indir"] $["+1" "+Sg"] $["+2" "+Pl"]]
    342 
    343 	.o. ["[SPers]" -> "<NLcConj2>" || _ $["+VTI"] $["+Ntr"]]
    344 	.o. ["[SPers]" -> "<NLcConj>" || _ $["+VII"|"+VAI"|"+VTI"] $["+3"]]
    345 	.o. ["[SPers]" -> "<NLc>" ||
    346 		_ $["+VII"|"+VAI"|"+VTI"] $[["+Ind" "+Prés"]|"+Percep"]
    347 			$["+3"]]
    348 	.o. ["[SPers]" -> "<NLcConj2>" ||
    349 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Sg"] $["+3"] $["+Ntr"|"+Obv"]]
    350 	.o. ["[SPers]" -> "<NLcConj3>" || _ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"]
    351 		[[[$["+2"] $["+Sg"]|$["+1"] $["+Ex"]] $["+3"]]
    352 		|[$["+Ntr"] $["+Obv"|"+Obv2"]]]]
    353 	.o. ["[SPers]" -> "<NLcConj>" || _ $["+VTA"] $["+Obv"] $["+Ntr"|"+Obv2"|"+Obv3"]]
    354 	.o. ["[SPers]" -> "<NLcConj>" || _ $["+VTA"] $["+Obv2"] $["+Obv"]]
    355 
    356 	.o. ["[SPers]" -> "<1PlExConj>" ||
    357 		_ $["+VAI"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Pl"] $["+Ex"]]
    358 	.o. ["[SPers]" -> "<1PlExConj>" ||
    359 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] ["+2"] $["+1"] $["+Ex"]]
    360 	.o. ["[SPers]" -> "<1PlExConj2>" ||
    361 		_ $["+VTI"] $["+1"] $["+Pl"] $["+Ex"]]
    362 	.o. ["[SPers]" -> "<1PlExConj2>" ||
    363 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Ex"] [$["+2"]|$["+3"]]]
    364 	.o. ["[SPers]" -> "<1PlExConjIndir>" ||
    365 		_ $["+VAI"|"+VTI"] $["+Indir"] $["+1"] $["+Pl"] $["+Ex"]]
    366 	.o. ["[SPers]" -> "<1PlExConjIndir>" ||
    367 		_ $["+VTA"] $["+Indir"]
    368 			[[$["+Ex"] $["+2"|"+1"|"+3"]]
    369 			|[$["+2"|"+1"] $[">"] $["+Ex"]]]]
    370 
    371 	.o. ["[SPers]" -> "<1PlInConj>" ||
    372 		_ $["+VAI"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Pl"] $["+In"]]
    373 	.o. ["[SPers]" -> "<1PlInConj2>" ||
    374 		_ $["+VTI"] $["+Ind"|"+Subj"|"+Irr"] $["+1"] $["+Pl"] $["+In"]]
    375 	.o. ["[SPers]" -> "<1PlInConj2>" || _ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"]
    376 		[[$["+3"] [$["+In"]|$["+2" "+Pl"]]]
    377 		|[$["+1"] $["+In"] $["+3"]]]]
    378 	.o. ["[SPers]" -> "<1PlInConj2>" || _ $["+VTA"] $["+Indir"]
    379 		$["+3"] $["+2" "+Pl"|"+In"]]
    380 	.o. ["[SPers]" -> "<1PlInConjIndir>" ||
    381 		_ $["+VAI"|"+VTI"] $["+Indir"] $["+1"] $["+Pl"] $["+In"]]
    382 	.o. ["[SPers]" -> "<1PlInConjIndir>" ||
    383 		_ $["+VTA"] $["+Indir"] $["+In"] $["+3"]]
    384 
    385 	.o. ["[SPers]" -> "<2PlConj>" ||
    386 		_ $["+VAI"] $["+Ind"|"+Subj"|"+Irr"] $["+2"] $["+Pl"]]
    387 	.o. ["[SPers]" -> "<2PlConj2>" ||
    388 		_ $["+VTI"] $["+Ind"|"+Subj"|"+Irr"] $["+2"] $["+Pl"]]
    389 	.o. ["[SPers]" -> "<2PlConj2>" ||
    390 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+2"] $["+Pl"] $["+3"]]
    391 	.o. ["[SPers]" -> "<2PlConj>" ||
    392 		_ $["+VTA"] $["+Ind"|"+Subj"|"+Irr"] $["+2"] $["+Pl"] $["+1"] $["+Sg"]]
    393 	.o. ["[SPers]" -> "<2PlConjIndir>" ||
    394 		_ $["+VAI"|"+VTI"] $["+Indir"] $["+2"] $["+Pl"]]
    395 	.o. ["[SPers]" -> "<2PlConjIndir>" ||
    396 		_ $["+VTA"] $["+Indir"] $["+2" "+Pl" ">"]]
    397 
    398 	.o. ["[SPers]" -> "<32SgConj>" ||
    399 		_ $["+VTA"] $["+3"] $["+2"] $["+Sg"]]
    400 
    401 	# Nombre de personne locale
    402 	.o. ["[NbLc]" -> "<1PlEx3Conj>" || _ $["+1"] $["+Ex"] $["+3"]]
    403 
    404 	# Tiroir
    405 	.o. ["[Tir]" -> "<IndirLcConj>" ||
    406 		_ $["+VAI"|"+VTI"] $["+Indir"] $["+1"|"+2"]]
    407 	.o. ["[Tir]" -> "<IndirLcConj>" ||
    408 		_ $["+VTA"] $["+Indir"] $["+2"|"+1"] $["+1"|"+2"|"+3"]]
    409 	.o. ["[Tir]" -> "<IndirNLcConj>" ||
    410 		_ $["+VII"|"+VAI"|"+VTI"] $["+Indir"] $["+3"]]
    411 	.o. ["[Tir]" -> "<IndirNLcConj>" ||
    412 		_ $["+VTA"] $["+Indir"] $["+3"] $["+2"|"+1"|"+3"]]
    413 	.o. ["[Tir]" -> "<ConjIrr>" || _ $["+Conj"] $["+Irr"]]
    414 
    415 	# Nombre de personne non-locale
    416 	.o. ["[NbNLc]" -> "<NtrPlConj3>" ||
    417 		_ $["+VTA"] $["+Subj"]
    418 			$["+1" "+Pl" "+In"|"+2" "+Pl"] $["+3" "+Pl" "+Ntr"]]
    419 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    420 		_ $["+Ind"] $[["+2"|"+1"] "+Sg"] $["+3" "+Pl" "+Ntr"]]
    421 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    422 		_ $["+Ind"] $["+3" "+Pl" "+Ntr"] $["+2" "+Sg"]]
    423 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    424 		_ $["+Ind"] $["+Obv"] $["+Pl" "+Ntr"]]
    425 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    426 		_ $["+VII"] $["+Subj"] $["+3" "+Pl"]]
    427 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    428 		_ $["+VAI"|"+VTI"] $["+Subj"] $["+3" "+Pl" "+Ntr"]]
    429 	.o. ["[NbNLc]" -> "<NtrPlConj2>" ||
    430 		_ $["+VTA"] $["+Subj"]
    431 			[[$["+2"|"+1"] $["+3" "+Pl" "+Ntr"]]
    432 			|[$["+3" "+Pl" "+Ntr"] $["+2"|"+1"] $["+Sg"|"+Ex"]]
    433 			|[$["+3" "+Pl" "+Ntr"] $["+Obv"|"+Obv2"]]
    434 			|[$["+Obv"] $["+3" "+Pl" "+Ntr"]]]]
    435 
    436 	.o. ["[NbNLc]" -> [] ||
    437 		_ $["+VTA"] $["+Subj"]
    438 			$["+3" "+Pl" "+Ntr"] $["+2" "+Pl"|"+1" "+Pl" "+In"]]
    439 
    440 	.o. ["[NbNLc]" -> "<NtrPlConj>" || _  $["+3" "+Pl" "+Ntr"]]
    441 	.o. ["[NbNLc]" -> "<ObvSgConj>" || _ [$["+3" "+Sg"] - $["+Ntr"]] .#.]
    442 	.o. ["[NbNLc]" -> "<ObvPlConj>" || _ [$["+3" "+Pl"] - $["+Ntr"]] .#.]
    443 
    444 	# Tiroir 2
    445 	.o. ["[Percep]" -> "<ConjSubj>" || _ $["+Subj"]];
    446 
    447 define MorphologiqueImp $["+Imp"] .o. Positionnel
    448 
    449 	# Hors tiroirs
    450 	.o. [[..] -> "<ImpIndir>" || _ "[SPers]" ?* "+Indir" ~[$["+2"] $["+Ex"]] .#.]
    451 	.o. [[..] -> "<ImpIndir>" || "[NbLc]" _ $["+Indir"] $["+2" ?* "+Ex"]]
    452 	.o. ["<ImpIndir>" -> "<ImpIndir2>" || _ $["+VTA"] $["+2"] $["+1"]]
    453 
    454 	# Racines
    455 	.o. [[..] -> "<Racine>" || Lettre+ _ \Lettre]
    456 
    457 	.o. ["<Racine>" -> "<RacineT>" ||
    458 		_ $["+Rsh"] $["+Prés"]
    459 			[[$["+1"|"+2" "+Pl"] $["+3"]]
    460 			|[$["+2" "+Sg"] $["+Obv"]]]]
    461 	.o. ["<Racine>" -> "<RacineT>" ||
    462 		_ $["+Rsh"] $["+Pas"|"+Indir"] $["+2"] $["+3"]]
    463 
    464 	# Thème de décalage
    465 	.o. ["[ThDéc]" -> "<ThDéc>" ||
    466 		_ $["+VTA"] $["+Prés"|"+Pas"] ["+2"|"+1"] $["+Obv"]]
    467 
    468 	# Thème de direction
    469 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTI"] $["+Prés"] $["+2" "+Sg"]]
    470 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTI"] $["+Indir"]]
    471 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTA"] $["+Prés"] $["+1"] $["+3"]]
    472 	.o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTA"] $["+Pas"] $["+3"]]
    473 
    474 	.o. ["[ThDir]" -> "<ThNLc>" || _ $["+VTI"] $["+Ouest"] $["+In"]]
    475 	.o. ["[ThDir]" -> "<ThNLc>" || _ $["+VTA"] $["+Prés"|"+Pas"] $["+2" "+Pl"] $["+3"]]
    476 
    477 	.o. ["[ThDir]" -> "<ThAmu>" || _ $["+VTI"] $["+Est"] $["+In"]]
    478 	.o. ["[ThDir]" -> "<ThAmu>" || _ $["+VTI"] $["+2" "+Pl"]]
    479 	.o. ["[ThDir]" -> "<ThAmu>" || _ $["+VTI"] $["+Pas"] $["+2" "+Sg"]]
    480 
    481 	.o. ["[ThDir]" -> "<ThLcImp>" || _ $["+VAI"] $["+Prés"] $["+2"|"+1"]]
    482 	.o. ["[ThDir]" -> "<ThLcImp2>" || _ $["+VTA"] $["+Prés"] $["+2"] $["+1"]]
    483 	.o. ["[ThDir]" -> "<ThLcImp3>" || _ $["+Ru"|"+Rua"] $["+VTA"] $["+Indir"] $["+2"] $["+Ex"]]
    484 	.o. ["[ThDir]" -> "<ThLcImp2>" || _ $["+VTA"] $["+Indir"] $["+2"] $["+Ex"]]
    485 
    486 	.o. ["[ThDir]" -> "<ThLcImpPas>" || _ $["+VAI"] $["+Pas"] $["+2"|"+1"]]
    487 	.o. ["[ThDir]" -> "<ThLcImpPas2>" ||
    488 		_ $["+Ru"|"+Rua"] $["+VTA"] $["+Pas"] $["+2"] $["+1"]]
    489 	.o. ["[ThDir]" -> "<ThLcImpPas>" || _ $["+VTA"] $["+Pas"] $["+2"] $["+1"]]
    490 
    491 	# Suffixe de personne
    492 	.o. ["[SPers]" -> "<LcSgPasImp>" || _ $["+VAI"|"+VTI"] $["+Pas"] $["+Sg"]]
    493 	.o. ["[SPers]" -> "<LcSgPasImp>" || _ $["+VTA"] $["+Pas"] $["+Sg"] $[">"]]
    494 
    495 	.o. ["[SPers]" -> "<LcPlPasImp>" || _ $["+VAI"|"+VTI"] $["+Pas"] $["+Pl"]]
    496 	.o. ["[SPers]" -> "<LcPlPasImp>" || _ $["+VTA"] $["+Pas"] $["+Pl"] $[">"]]
    497 
    498 	# Nombre de personne locale
    499 	.o. ["[NbLc]" -> "<1Pl>"  || _ $["+VTA"] $["+2"] $["+Ex"]]
    500 
    501 	.o. ["[NbLc]" -> "<1PlImp>" || _ $["+1" "+Pl"]]
    502 	.o. ["[NbLc]" -> "<2PlImp>" || _ $["+2" "+Pl"]]
    503 
    504 	# Nombre de personne non locale
    505 	.o. ["[NbNLc]" -> "<NtrPlImp>" || _ $["+3" "+Pl" "+Ntr"]]
    506 	.o. ["[NbNLc]" -> "<ObvSg>" || _ $["+3" "+Sg" "+Obv"]]
    507 	.o. ["[NbNLc]" -> "<ObvPl>" || _ $["+3" "+Pl" "+Obv"]];
    508 
    509 read regex [[MorphologiqueIndep | MorphologiqueConj | MorphologiqueImp]
    510 	.P. Positionnel]
    511 
    512 	# Supprimer les positions et les traits grammaticaux
    513 	.o. [Position|TGrm|">" -> []];