tef-innu

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

commit 8b2fe93e86125f4b85ab69af6e30b2568bcb6ca8
parent 9b8a5a4f696aa1a92466ee7c554ebe91c6c75b48
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date:   Mon, 17 Nov 2025 23:41:30 -0500

[tst] Modifier le programme de test

La précision et le rappel est maintenant calculée, de même que la F1.

Diffstat:
Mbin/rapport.py | 178+++++++++++++++++++++++++++++++++++++++++++++----------------------------------
Dverbes/verbes.pre | 498-------------------------------------------------------------------------------
2 fichiers modifiés, 102 insertions(+), 574 suppressions(-)

diff --git a/bin/rapport.py b/bin/rapport.py @@ -2,108 +2,134 @@ # # rapport.py -- Produire un rapport sur la performance du modèle. # -# $1 - chemin vers l’extension -# $2 - chemin vers un échantillon -# $3 - chemin vers les préfixes +# $1 - Chemin vers l’extension +# $2 - Chemin vers l’échantillon +# $3 - Chemin vers les préfixes import sys -# Charger dans un ensemble les lignes contenues dans un fichier. -def charger_lignes(fichier): - with open(fichier, "r") as f: - lignes = {ligne.rstrip() for ligne in f} - return lignes - -# Charger dans un dictionnaire les paires contenues dans un fichier. Ces paires -# doivent figurer une par ligne et leurs éléments doivent être séparés par un -# caractère de tabulation. +# Charger dans un ensemble de tuples les paires contenues dans un fichier. Ces +# paires doivent figurer une par ligne et leurs éléments doivent être séparés +# par un caractère de tabulation. def charger_paires(fichier): - paires = {} + paires = set() with open(fichier, "r") as f: for ligne in f: champs = ligne.rstrip().split("\t") if len(champs) != 2: - raise ValueError("{}: {} plutôt que 2".format(fichier, len(champs))) - paires[champs[0]] = champs[1] + raise ValueError(f"{fichier}: {len(champs)} champ(s) plutôt que 2.") + paires.add((champs[0], champs[1])) return paires -# Le test d’inclusion vérifie si l’échantillon est un sous-ensemble de -# l’extension. Il rapporte l’identité des paires de l’échantillon qui ne sont -# pas incluses dans l’extension. -def inclusion(echantillon, extension): - excluses = {} - for f in echantillon: - if f not in extension: - excluses[f] = (echantillon[f], None) - elif echantillon[f] != extension[f]: - excluses[f] = (echantillon[f], extension[f]) - return excluses +def charger_lignes(fichier): + lignes = set() + with open(fichier, "r") as f: + lignes = {ligne.rstrip() for ligne in f} + return lignes + +# Convertir les paires d’un ensembe de couples à un dictionnaire dont la clé en +# est le premier élément et la valeur le second. Aucune information n’est +# perdue si le transducteur est séquentiel. +def paires_vers_dict(paires): + return {paire[0]:paire[1] for paire in paires} + +# Tester la séquentialité de l’extension dans le sens de la génération. Une +# description abstraite doit correspondre à une seule forme. Renvoie un +# ensemble contenant les descriptions abstraites qui rendent l’extension +# non-séquentielle. +def tester_sequentialite(extension): + desc = set() + doublons = set() + for paire in extension: + if paire[0] not in desc: + desc.add(paire[0]) + else: + doublons.add(paire[0]) + return doublons + +# Renvoyer les formes générés correctes. +def vrais_positifs(echantillon, extension): + vp = set() + for c in echantillon: + if c in extension and echantillon[c] == extension[c]: + vp.add(c) + return vp + +# Renvoyer les formes générées incorrectes. +def faux_positifs(echantillon, extension): + fp = set() + for c in echantillon: + if c in extension and echantillon[c] != extension[c]: + fp.add(c) + return fp -# Le test de retenue vérifie si le modèle de surgénère pas. Il rapporte -# l’identité des paires de l’extension qui ne sont pas incluses dans -# l’échantillon. Cependant, puisque, par définition, l’échantillon est un -# sous-ensemble des formes correctes et que l’extension doit tendre à inclure -# toutes les formes correctes, il faut que le test ne porte que sur un -# sous-ensemble de l’extension, sous-ensemble qui doit être inclus dans -# l’échantillon. Ce sous-ensemble est déterminé par l’ensemble _prefixe_, qui -# cause l’exclusion des formes dont il n’est pas le préfixe. -def retenue(echantillon, extension, prefixes): +# Renvoyer les formes non générées qui auraient dû l’être. +def faux_negatifs(echantillon, extension): + fn = set() + for c in echantillon: + if c not in extension: + fn.add(c) + return fn - def filtrer(extension, prefixes): - extfiltre = {} - for c in extension: - for pref in prefixes: - if c.startswith(pref): - extfiltre[c] = extension[c] - return extfiltre +def precision(vp, fp): + return len(vp) / (len(vp) + len(fp)) * 100 - extfiltre = filtrer(extension, prefixes) +def rappel(vp, fn): + return len(vp) / (len(vp) + len(fn)) * 100 - return (inclusion(extfiltre, echantillon), len(extfiltre)) +def f1(pre, rap): + return 2 * (pre * rap) / (pre + rap) -# Afficher un petit rapport en sortie standard. -def rapporter(echantillon, extension, prefixes): +# Afficher le rapport un sortie standard. +def rapporter (echantillon, extension): print("=== RAPPORT ===") print() - print("Nombre de formes générées: {}".format(len(extension))) - funiques = {extension[c] for c in extension} - print("Nombre de formes uniques générées: {}".format(len(funiques))) - print("Taille de l’échantillon: {}".format(len(echantillon))) + res = tester_sequentialite(extension) + if res: + print("NON SÉQUENTIEL!") + for desc in res: + print(desc) + return + # Convertir les paires + echantillon = paires_vers_dict(echantillon) + extension = paires_vers_dict(extension) + print(f"Nombre de formes générées: {len(extension)}") + res = len({extension[c] for c in extension}) + print("Nombre de formes uniques générées: " + f"{res} ({res/len(extension)*100:.2f}%)") + print(f"Taille de l’échantillon: {len(echantillon)} " + f"({len(echantillon)/len(extension)*100:.2f}%)") print() - print("--- INCLUSION ---") + vp = vrais_positifs(echantillon, extension) + fp = faux_positifs(echantillon, extension) + fn = faux_negatifs(echantillon, extension) + print("--- FAUX POSITIFS ---") print() - excluses = inclusion(echantillon, extension) - stat = [0,0] - for e in excluses: - if excluses[e][1] == None: - print("{}: {}".format(e, excluses[e][0])) - stat[0] = stat[0] + 1 - else: - print("{}: {} ({})".format(e, excluses[e][0], excluses[e][1])) - stat[1] = stat[1] + 1 - if excluses: # Afficher une ligne vide seulement si nécessaire + for f in fp: + print(f"{f}: {echantillon[f]} ({extension[f]})") + if fp: print() - print("Nombre de formes manquantes: {}".format(stat[0])) - print("Nombre de formes erronnées: {}".format(stat[1])) - print("Performance: {:.2f}%".format((1 - (len(excluses) / len(extension))) * 100)) - print() - print("--- RETENUE ---") + print("--- FAUX NÉGATIFS ---") print() - surgenerees, n = retenue(echantillon, extension, prefixes) - for s in surgenerees: - print("{}: {}".format(s, surgenerees[s][0])) - if surgenerees: # Afficher une ligne vide seulement si nécessaire + for f in fn: + print(f"{f}: {echantillon[f]}") + if fn: print() - print("Nombre de formes surgénérées: {}".format(len(surgenerees))) - print("Couverture: {:.2f}%".format(n / len(extension) * 100)) - print("Performance: {:.2f}%".format((1 - (len(surgenerees) / len(extension))) * 100)) + print(f"Nombre de vrais positifs: {len(vp)}") + print(f"Nombre de faux positifs: {len(fp)}") + print(f"Nombre de faux négatifs: {len(fn)}") + pre = precision(vp, fp) + print(f"Précision: {pre:.2f}") + rap = rappel(vp, fn) + print(f"Rappel: {rap:.2f}") + f = f1(pre, rap) + print(f"F1: {f:.2f}") if __name__ == "__main__": - if len(sys.argv) != 4: + if len(sys.argv) != 3: raise RuntimeError("Mauvais arguments.") ext = charger_paires(sys.argv[1]) ech = charger_paires(sys.argv[2]) - pre = charger_lignes(sys.argv[3]) - rapporter(ech, ext, pre) + rapporter(ech, ext) diff --git a/verbes/verbes.pre b/verbes/verbes.pre @@ -1,498 +0,0 @@ -akushu+VAI+Est+Indép+Dub+Prés -akushu+VAI+Est+Indép+Ind+Pas -akushu+VAI+Est+Indép+Ind+Prés -akushu+VAI+Est+Indép+Indir+Pas -akushu+VAI+Est+Indép+Indir+Prés -akushu+VAI+Ouest+Indép+Dub+Prés -akushu+VAI+Ouest+Indép+Ind+Pas -akushu+VAI+Ouest+Indép+Ind+Prés -akushu+VAI+Ouest+Indép+Indir+Pas -akushu+VAI+Ouest+Indép+Indir+Prés -apashtau+VAI+Est+Indép+Dub+Prés -apashtau+VAI+Est+Indép+Ind+Pas -apashtau+VAI+Est+Indép+Ind+Prés -apashtau+VAI+Est+Indép+Indir+Pas -apashtau+VAI+Est+Indép+Indir+Prés -apashtau+VAI+Ouest+Indép+Dub+Prés -apashtau+VAI+Ouest+Indép+Ind+Pas -apashtau+VAI+Ouest+Indép+Ind+Prés -apashtau+VAI+Ouest+Indép+Indir+Pas -apashtau+VAI+Ouest+Indép+Indir+Prés -apatan+VII+Est+Indép+Dub+Prés -apatan+VII+Est+Indép+Ind+Pas -apatan+VII+Est+Indép+Ind+Prés -apatan+VII+Est+Indép+Indir+Pas -apatan+VII+Est+Indép+Indir+Prés -apatan+VII+Ouest+Indép+Dub+Prés -apatan+VII+Ouest+Indép+Ind+Pas -apatan+VII+Ouest+Indép+Ind+Prés -apatan+VII+Ouest+Indép+Indir+Pas -apatan+VII+Ouest+Indép+Indir+Prés -apishashu+VII+Est+Indép+Dub+Prés -apishashu+VII+Est+Indép+Ind+Pas -apishashu+VII+Est+Indép+Ind+Prés -apishashu+VII+Est+Indép+Indir+Pas -apishashu+VII+Est+Indép+Indir+Prés -apishashu+VII+Ouest+Indép+Dub+Prés -apishashu+VII+Ouest+Indép+Ind+Pas -apishashu+VII+Ouest+Indép+Ind+Prés -apishashu+VII+Ouest+Indép+Indir+Pas -apishashu+VII+Ouest+Indép+Indir+Prés -ashtueimᵘ+VTI+Est+Indép+Ind+Prés -ashtueimᵘ+VTI+Ouest+Indép+Ind+Prés -atusseu+VAI+Est+Indép+Dub+Prés -atusseu+VAI+Est+Indép+Ind+Pas -atusseu+VAI+Est+Indép+Ind+Prés -atusseu+VAI+Est+Indép+Indir+Pas -atusseu+VAI+Est+Indép+Indir+Prés -atusseu+VAI+Ouest+Indép+Dub+Prés -atusseu+VAI+Ouest+Indép+Ind+Pas -atusseu+VAI+Ouest+Indép+Ind+Prés -atusseu+VAI+Ouest+Indép+Indir+Pas -atusseu+VAI+Ouest+Indép+Indir+Prés -auassiu+VAI+Est+Indép+Dub+Prés -auassiu+VAI+Est+Indép+Ind+Pas -auassiu+VAI+Est+Indép+Ind+Prés -auassiu+VAI+Est+Indép+Indir+Pas -auassiu+VAI+Est+Indép+Indir+Prés -auassiu+VAI+Ouest+Indép+Dub+Prés -auassiu+VAI+Ouest+Indép+Ind+Pas -auassiu+VAI+Ouest+Indép+Ind+Prés -auassiu+VAI+Ouest+Indép+Indir+Pas -auassiu+VAI+Ouest+Indép+Indir+Prés -ishikapau+VAI+Est+Indép+Dub+Prés -ishikapau+VAI+Est+Indép+Ind+Pas -ishikapau+VAI+Est+Indép+Ind+Prés -ishikapau+VAI+Est+Indép+Indir+Pas -ishikapau+VAI+Est+Indép+Indir+Prés -ishikapau+VAI+Ouest+Indép+Dub+Prés -ishikapau+VAI+Ouest+Indép+Ind+Pas -ishikapau+VAI+Ouest+Indép+Ind+Prés -ishikapau+VAI+Ouest+Indép+Indir+Pas -ishikapau+VAI+Ouest+Indép+Indir+Prés -itishaueu+VTA+Est+Indép+Dub+Prés -itishaueu+VTA+Est+Indép+Ind+Pas -itishaueu+VTA+Est+Indép+Ind+Prés -itishaueu+VTA+Est+Indép+Indir+Pas -itishaueu+VTA+Est+Indép+Indir+Prés -itishaueu+VTA+Ouest+Indép+Dub+Prés -itishaueu+VTA+Ouest+Indép+Ind+Pas -itishaueu+VTA+Ouest+Indép+Ind+Prés -itishaueu+VTA+Ouest+Indép+Indir+Pas -itishaueu+VTA+Ouest+Indép+Indir+Prés -katueu+VTA+Est+Indép+Dub+Prés -katueu+VTA+Est+Indép+Ind+Pas -katueu+VTA+Est+Indép+Ind+Prés -katueu+VTA+Est+Indép+Indir+Pas -katueu+VTA+Est+Indép+Indir+Prés -katueu+VTA+Ouest+Indép+Dub+Prés -katueu+VTA+Ouest+Indép+Ind+Pas -katueu+VTA+Ouest+Indép+Ind+Prés -katueu+VTA+Ouest+Indép+Indir+Pas -katueu+VTA+Ouest+Indép+Indir+Prés -minu+VAI+Est+Indép+Dub+Prés -minu+VAI+Est+Indép+Ind+Pas -minu+VAI+Est+Indép+Ind+Prés -minu+VAI+Ouest+Indép+Dub+Prés -minu+VAI+Ouest+Indép+Ind+Pas -minu+VAI+Ouest+Indép+Ind+Prés -mishishtu+VAI+Est+Indép+Dub+Prés -mishishtu+VAI+Est+Indép+Ind+Pas -mishishtu+VAI+Est+Indép+Ind+Prés -mishishtu+VAI+Est+Indép+Indir+Pas -mishishtu+VAI+Est+Indép+Indir+Prés -mishishtu+VAI+Ouest+Indép+Dub+Prés -mishishtu+VAI+Ouest+Indép+Ind+Pas -mishishtu+VAI+Ouest+Indép+Ind+Prés -mishishtu+VAI+Ouest+Indép+Indir+Pas -mishishtu+VAI+Ouest+Indép+Indir+Prés -mińeu+VTA+Est+Indép+Dub+Prés -mińeu+VTA+Est+Indép+Ind+Pas -mińeu+VTA+Est+Indép+Ind+Prés -mińeu+VTA+Est+Indép+Indir+Pas -mińeu+VTA+Est+Indép+Indir+Prés -mińeu+VTA+Ouest+Indép+Dub+Prés -mińeu+VTA+Ouest+Indép+Ind+Pas -mińeu+VTA+Ouest+Indép+Ind+Prés -mińeu+VTA+Ouest+Indép+Indir+Pas -mińeu+VTA+Ouest+Indép+Indir+Prés -mińuateu+VTA+Est+Indép+Dub+Prés -mińuateu+VTA+Est+Indép+Ind+Pas -mińuateu+VTA+Est+Indép+Ind+Prés -mińuateu+VTA+Est+Indép+Indir+Pas -mińuateu+VTA+Est+Indép+Indir+Prés -mińuateu+VTA+Ouest+Indép+Dub+Prés -mińuateu+VTA+Ouest+Indép+Ind+Pas -mińuateu+VTA+Ouest+Indép+Ind+Prés -mińuateu+VTA+Ouest+Indép+Indir+Pas -mińuateu+VTA+Ouest+Indép+Indir+Prés -napessiu+VAI+Est+Indép+Ind+Prés -napessiu+VAI+Ouest+Indép+Ind+Prés -natau+VAI+Est+Indép+Dub+Prés -natau+VAI+Est+Indép+Ind+Pas -natau+VAI+Est+Indép+Ind+Prés -natau+VAI+Est+Indép+Indir+Pas -natau+VAI+Est+Indép+Indir+Prés -natau+VAI+Ouest+Indép+Dub+Prés -natau+VAI+Ouest+Indép+Ind+Pas -natau+VAI+Ouest+Indép+Ind+Prés -natau+VAI+Ouest+Indép+Indir+Pas -natau+VAI+Ouest+Indép+Indir+Prés -natutamᵘ+VTI+Est+Indép+Dub+Prés -natutamᵘ+VTI+Est+Indép+Ind+Pas -natutamᵘ+VTI+Est+Indép+Ind+Prés -natutamᵘ+VTI+Est+Indép+Indir+Pas -natutamᵘ+VTI+Est+Indép+Indir+Prés -natutamᵘ+VTI+Ouest+Indép+Dub+Prés -natutamᵘ+VTI+Ouest+Indép+Ind+Pas -natutamᵘ+VTI+Ouest+Indép+Ind+Prés -natutamᵘ+VTI+Ouest+Indép+Indir+Pas -natutamᵘ+VTI+Ouest+Indép+Indir+Prés -nikamu+VAI+Est+Indép+Dub+Prés -nikamu+VAI+Est+Indép+Ind+Pas -nikamu+VAI+Est+Indép+Ind+Prés -nikamu+VAI+Est+Indép+Indir+Pas -nikamu+VAI+Est+Indép+Indir+Prés -nikamu+VAI+Ouest+Indép+Dub+Prés -nikamu+VAI+Ouest+Indép+Ind+Pas -nikamu+VAI+Ouest+Indép+Ind+Prés -nikamu+VAI+Ouest+Indép+Indir+Pas -nikamu+VAI+Ouest+Indép+Indir+Prés -nipau+VAI+Est+Indép+Dub+Prés -nipau+VAI+Est+Indép+Ind+Pas -nipau+VAI+Est+Indép+Ind+Prés -nipau+VAI+Est+Indép+Indir+Pas -nipau+VAI+Est+Indép+Indir+Prés -nipau+VAI+Ouest+Indép+Dub+Prés -nipau+VAI+Ouest+Indép+Ind+Pas -nipau+VAI+Ouest+Indép+Ind+Prés -nipau+VAI+Ouest+Indép+Indir+Pas -nipau+VAI+Ouest+Indép+Indir+Prés -nipiu+VII+Est+Indép+Dub+Prés -nipiu+VII+Est+Indép+Ind+Pas -nipiu+VII+Est+Indép+Ind+Prés -nipiu+VII+Est+Indép+Indir+Pas -nipiu+VII+Est+Indép+Indir+Prés -nipiun+VII+Ouest+Indép+Dub+Prés -nipiun+VII+Ouest+Indép+Ind+Pas -nipiun+VII+Ouest+Indép+Ind+Prés -nipiun+VII+Ouest+Indép+Indir+Pas -nipiun+VII+Ouest+Indép+Indir+Prés -papatau+VAI+Est+Indép+Dub+Prés -papatau+VAI+Est+Indép+Ind+Pas -papatau+VAI+Est+Indép+Ind+Prés -papatau+VAI+Est+Indép+Indir+Pas -papatau+VAI+Est+Indép+Indir+Prés -papatau+VAI+Ouest+Indép+Dub+Prés -papatau+VAI+Ouest+Indép+Ind+Pas -papatau+VAI+Ouest+Indép+Ind+Prés -papatau+VAI+Ouest+Indép+Indir+Pas -papatau+VAI+Ouest+Indép+Indir+Prés -pashteu+VII+Est+Indép+Dub+Prés -pashteu+VII+Est+Indép+Ind+Pas -pashteu+VII+Est+Indép+Ind+Prés -pashteu+VII+Est+Indép+Indir+Pas -pashteu+VII+Est+Indép+Indir+Prés -pashteu+VII+Ouest+Indép+Dub+Prés -pashteu+VII+Ouest+Indép+Ind+Pas -pashteu+VII+Ouest+Indép+Ind+Prés -pashteu+VII+Ouest+Indép+Indir+Pas -pashteu+VII+Ouest+Indép+Indir+Prés -peshueu+VTA+Est+Indép+Dub+Prés -peshueu+VTA+Est+Indép+Ind+Pas -peshueu+VTA+Est+Indép+Ind+Prés -peshueu+VTA+Est+Indép+Indir+Pas -peshueu+VTA+Est+Indép+Indir+Prés -peshueu+VTA+Ouest+Indép+Dub+Prés -peshueu+VTA+Ouest+Indép+Ind+Pas -peshueu+VTA+Ouest+Indép+Ind+Prés -peshueu+VTA+Ouest+Indép+Indir+Pas -peshueu+VTA+Ouest+Indép+Indir+Prés -petamᵘ+VTI+Est+Indép+Dub+Prés -petamᵘ+VTI+Est+Indép+Ind+Pas -petamᵘ+VTI+Est+Indép+Ind+Prés -petamᵘ+VTI+Est+Indép+Indir+Pas -petamᵘ+VTI+Est+Indép+Indir+Prés -petamᵘ+VTI+Ouest+Indép+Dub+Prés -petamᵘ+VTI+Ouest+Indép+Ind+Pas -petamᵘ+VTI+Ouest+Indép+Ind+Prés -petamᵘ+VTI+Ouest+Indép+Indir+Pas -petamᵘ+VTI+Ouest+Indép+Indir+Prés -petueu+VTA+Est+Indép+Dub+Prés -petueu+VTA+Est+Indép+Ind+Pas -petueu+VTA+Est+Indép+Ind+Prés -petueu+VTA+Est+Indép+Indir+Pas -petueu+VTA+Est+Indép+Indir+Prés -petueu+VTA+Ouest+Indép+Dub+Prés -petueu+VTA+Ouest+Indép+Ind+Pas -petueu+VTA+Ouest+Indép+Ind+Prés -petueu+VTA+Ouest+Indép+Indir+Pas -petueu+VTA+Ouest+Indép+Indir+Prés -pikupańu+VII+Est+Indép+Dub+Prés -pikupańu+VII+Est+Indép+Ind+Pas -pikupańu+VII+Est+Indép+Ind+Prés -pikupańu+VII+Est+Indép+Indir+Pas -pikupańu+VII+Est+Indép+Indir+Prés -pikupańu+VII+Ouest+Indép+Dub+Prés -pikupańu+VII+Ouest+Indép+Ind+Pas -pikupańu+VII+Ouest+Indép+Ind+Prés -pikupańu+VII+Ouest+Indép+Indir+Pas -pikupańu+VII+Ouest+Indép+Indir+Prés -pimiu+VII+Est+Indép+Ind+Prés -pimiun+VII+Ouest+Indép+Ind+Prés -puamu+VAI+Est+Indép+Dub+Prés -puamu+VAI+Est+Indép+Ind+Pas -puamu+VAI+Est+Indép+Ind+Prés -puamu+VAI+Est+Indép+Indir+Pas -puamu+VAI+Est+Indép+Indir+Prés -puamu+VAI+Ouest+Indép+Dub+Prés -puamu+VAI+Ouest+Indép+Ind+Pas -puamu+VAI+Ouest+Indép+Ind+Prés -puamu+VAI+Ouest+Indép+Indir+Pas -puamu+VAI+Ouest+Indép+Indir+Prés -sheimᵘ+VTI+Est+Indép+Dub+Prés -sheimᵘ+VTI+Est+Indép+Ind+Pas -sheimᵘ+VTI+Est+Indép+Ind+Prés -sheimᵘ+VTI+Est+Indép+Indir+Pas -sheimᵘ+VTI+Est+Indép+Indir+Prés -sheimᵘ+VTI+Ouest+Indép+Dub+Prés -sheimᵘ+VTI+Ouest+Indép+Ind+Pas -sheimᵘ+VTI+Ouest+Indép+Ind+Prés -sheimᵘ+VTI+Ouest+Indép+Indir+Pas -sheimᵘ+VTI+Ouest+Indép+Indir+Prés -shikatshu+VAI+Est+Indép+Dub+Prés -shikatshu+VAI+Est+Indép+Ind+Pas -shikatshu+VAI+Est+Indép+Ind+Prés -shikatshu+VAI+Est+Indép+Indir+Pas -shikatshu+VAI+Est+Indép+Indir+Prés -shikatshu+VAI+Ouest+Indép+Dub+Prés -shikatshu+VAI+Ouest+Indép+Ind+Pas -shikatshu+VAI+Ouest+Indép+Ind+Prés -shikatshu+VAI+Ouest+Indép+Indir+Pas -shikatshu+VAI+Ouest+Indép+Indir+Prés -shipeku+VII+Est+Indép+Dub+Prés -shipeku+VII+Est+Indép+Ind+Pas -shipeku+VII+Est+Indép+Ind+Prés -shipeku+VII+Est+Indép+Indir+Pas -shipeku+VII+Est+Indép+Indir+Prés -shipekun+VII+Ouest+Indép+Dub+Prés -shipekun+VII+Ouest+Indép+Ind+Pas -shipekun+VII+Ouest+Indép+Ind+Prés -shipekun+VII+Ouest+Indép+Indir+Pas -shipekun+VII+Ouest+Indép+Indir+Prés -shitamu+VII+Est+Indép+Dub+Prés -shitamu+VII+Est+Indép+Ind+Pas -shitamu+VII+Est+Indép+Ind+Prés -shitamu+VII+Est+Indép+Indir+Pas -shitamu+VII+Est+Indép+Indir+Prés -shitamu+VII+Ouest+Indép+Dub+Prés -shitamu+VII+Ouest+Indép+Ind+Pas -shitamu+VII+Ouest+Indép+Ind+Prés -shitamu+VII+Ouest+Indép+Indir+Pas -shitamu+VII+Ouest+Indép+Indir+Prés -shiueńu+VAI+Est+Indép+Dub+Prés -shiueńu+VAI+Est+Indép+Ind+Pas -shiueńu+VAI+Est+Indép+Ind+Prés -shiueńu+VAI+Est+Indép+Indir+Prés -shiueńu+VAI+Ouest+Indép+Dub+Prés -shiueńu+VAI+Ouest+Indép+Ind+Pas -shiueńu+VAI+Ouest+Indép+Ind+Prés -shiueńu+VAI+Ouest+Indép+Indir+Prés -takuan+VII+Est+Indép+Dub+Prés -takuan+VII+Est+Indép+Ind+Pas -takuan+VII+Est+Indép+Ind+Prés -takuan+VII+Est+Indép+Indir+Pas -takuan+VII+Est+Indép+Indir+Prés -takuan+VII+Ouest+Indép+Dub+Prés -takuan+VII+Ouest+Indép+Ind+Pas -takuan+VII+Ouest+Indép+Ind+Prés -takuan+VII+Ouest+Indép+Indir+Pas -takuan+VII+Ouest+Indép+Indir+Prés -takushinu+VAI+Est+Indép+Dub+Prés -takushinu+VAI+Est+Indép+Ind+Pas -takushinu+VAI+Est+Indép+Ind+Prés -takushinu+VAI+Est+Indép+Indir+Pas -takushinu+VAI+Est+Indép+Indir+Prés -takushinu+VAI+Ouest+Indép+Dub+Prés -takushinu+VAI+Ouest+Indép+Ind+Pas -takushinu+VAI+Ouest+Indép+Ind+Prés -takushinu+VAI+Ouest+Indép+Indir+Pas -takushinu+VAI+Ouest+Indép+Indir+Prés -tashkaimᵘ+VTI+Est+Indép+Ind+Pas -tashkaimᵘ+VTI+Est+Indép+Ind+Prés -tashkaimᵘ+VTI+Est+Indép+Indir+Prés -tashkaimᵘ+VTI+Ouest+Indép+Ind+Pas -tashkaimᵘ+VTI+Ouest+Indép+Ind+Prés -tashkaimᵘ+VTI+Ouest+Indép+Indir+Prés -tshiminamᵘ+VTI+Est+Indép+Dub+Prés -tshiminamᵘ+VTI+Est+Indép+Ind+Pas -tshiminamᵘ+VTI+Est+Indép+Ind+Prés -tshiminamᵘ+VTI+Est+Indép+Indir+Pas -tshiminamᵘ+VTI+Est+Indép+Indir+Prés -tshiminamᵘ+VTI+Ouest+Indép+Dub+Prés -tshiminamᵘ+VTI+Ouest+Indép+Ind+Pas -tshiminamᵘ+VTI+Ouest+Indép+Ind+Prés -tshiminamᵘ+VTI+Ouest+Indép+Indir+Pas -tshiminamᵘ+VTI+Ouest+Indép+Indir+Prés -tshimuan+VII+Est+Indép+Dub+Prés -tshimuan+VII+Est+Indép+Ind+Pas -tshimuan+VII+Est+Indép+Ind+Prés -tshimuan+VII+Est+Indép+Indir+Pas -tshimuan+VII+Est+Indép+Indir+Prés -tshimuan+VII+Ouest+Indép+Dub+Prés -tshimuan+VII+Ouest+Indép+Ind+Pas -tshimuan+VII+Ouest+Indép+Ind+Prés -tshimuan+VII+Ouest+Indép+Indir+Pas -tshimuan+VII+Ouest+Indép+Indir+Prés -tshipaimᵘ+VTI+Est+Indép+Dub+Prés -tshipaimᵘ+VTI+Est+Indép+Ind+Pas -tshipaimᵘ+VTI+Est+Indép+Ind+Prés -tshipaimᵘ+VTI+Est+Indép+Indir+Pas -tshipaimᵘ+VTI+Est+Indép+Indir+Prés -tshipaimᵘ+VTI+Ouest+Indép+Dub+Prés -tshipaimᵘ+VTI+Ouest+Indép+Ind+Pas -tshipaimᵘ+VTI+Ouest+Indép+Ind+Prés -tshipaimᵘ+VTI+Ouest+Indép+Indir+Pas -tshipaimᵘ+VTI+Ouest+Indép+Indir+Prés -tshishishu+VAI+Est+Indép+Dub+Prés -tshishishu+VAI+Est+Indép+Ind+Pas -tshishishu+VAI+Est+Indép+Ind+Prés -tshishishu+VAI+Ouest+Indép+Dub+Prés -tshishishu+VAI+Ouest+Indép+Ind+Pas -tshishishu+VAI+Ouest+Indép+Ind+Prés -tshishiteu+VII+Est+Indép+Ind+Prés -tshishiteu+VII+Ouest+Indép+Ind+Prés -tshitapatamᵘ+VTI+Est+Indép+Dub+Prés -tshitapatamᵘ+VTI+Est+Indép+Ind+Pas -tshitapatamᵘ+VTI+Est+Indép+Ind+Prés -tshitapatamᵘ+VTI+Est+Indép+Indir+Pas -tshitapatamᵘ+VTI+Est+Indép+Indir+Prés -tshitapatamᵘ+VTI+Ouest+Indép+Dub+Prés -tshitapatamᵘ+VTI+Ouest+Indép+Ind+Pas -tshitapatamᵘ+VTI+Ouest+Indép+Ind+Prés -tshitapatamᵘ+VTI+Ouest+Indép+Indir+Pas -tshitapatamᵘ+VTI+Ouest+Indép+Indir+Prés -tshitimu+VAI+Est+Indép+Dub+Prés -tshitimu+VAI+Est+Indép+Ind+Pas -tshitimu+VAI+Est+Indép+Ind+Prés -tshitimu+VAI+Ouest+Indép+Dub+Prés -tshitimu+VAI+Ouest+Indép+Ind+Pas -tshitimu+VAI+Ouest+Indép+Ind+Prés -tshitshipańu+VII+Est+Indép+Ind+Pas -tshitshipańu+VII+Est+Indép+Ind+Prés -tshitshipańu+VII+Est+Indép+Indir+Prés -tshitshipańu+VII+Ouest+Indép+Ind+Pas -tshitshipańu+VII+Ouest+Indép+Ind+Prés -tshitshipańu+VII+Ouest+Indép+Indir+Prés -tshiuepańu+VAI+Est+Indép+Dub+Prés -tshiuepańu+VAI+Est+Indép+Ind+Pas -tshiuepańu+VAI+Est+Indép+Ind+Prés -tshiuepańu+VAI+Est+Indép+Indir+Pas -tshiuepańu+VAI+Est+Indép+Indir+Prés -tshiuepańu+VAI+Ouest+Indép+Dub+Prés -tshiuepańu+VAI+Ouest+Indép+Ind+Pas -tshiuepańu+VAI+Ouest+Indép+Ind+Prés -tshiuepańu+VAI+Ouest+Indép+Indir+Pas -tshiuepańu+VAI+Ouest+Indép+Indir+Prés -tshiueu+VAI+Est+Indép+Dub+Prés -tshiueu+VAI+Est+Indép+Ind+Pas -tshiueu+VAI+Est+Indép+Ind+Prés -tshiueu+VAI+Est+Indép+Indir+Pas -tshiueu+VAI+Est+Indép+Indir+Prés -tshiueu+VAI+Ouest+Indép+Dub+Prés -tshiueu+VAI+Ouest+Indép+Ind+Pas -tshiueu+VAI+Ouest+Indép+Ind+Prés -tshiueu+VAI+Ouest+Indép+Indir+Pas -tshiueu+VAI+Ouest+Indép+Indir+Prés -tutamᵘ+VTI+Est+Indép+Ind+Pas -tutamᵘ+VTI+Est+Indép+Ind+Prés -tutamᵘ+VTI+Est+Indép+Indir+Prés -tutamᵘ+VTI+Ouest+Indép+Ind+Pas -tutamᵘ+VTI+Ouest+Indép+Ind+Prés -tutamᵘ+VTI+Ouest+Indép+Indir+Prés -uapameu+VTA+Est+Indép+Dub+Prés -uapameu+VTA+Est+Indép+Ind+Pas -uapameu+VTA+Est+Indép+Ind+Prés -uapameu+VTA+Est+Indép+Indir+Pas -uapameu+VTA+Est+Indép+Indir+Prés -uapameu+VTA+Ouest+Indép+Dub+Prés -uapameu+VTA+Ouest+Indép+Ind+Pas -uapameu+VTA+Ouest+Indép+Ind+Prés -uapameu+VTA+Ouest+Indép+Indir+Pas -uapameu+VTA+Ouest+Indép+Indir+Prés -uapatamᵘ+VTI+Est+Indép+Dub+Prés -uapatamᵘ+VTI+Est+Indép+Ind+Pas -uapatamᵘ+VTI+Est+Indép+Ind+Prés -uapatamᵘ+VTI+Est+Indép+Indir+Pas -uapatamᵘ+VTI+Est+Indép+Indir+Prés -uapatamᵘ+VTI+Ouest+Indép+Dub+Prés -uapatamᵘ+VTI+Ouest+Indép+Ind+Pas -uapatamᵘ+VTI+Ouest+Indép+Ind+Prés -uapatamᵘ+VTI+Ouest+Indép+Indir+Pas -uapatamᵘ+VTI+Ouest+Indép+Indir+Prés -uapau+VII+Est+Indép+Dub+Prés -uapau+VII+Est+Indép+Ind+Pas -uapau+VII+Est+Indép+Ind+Prés -uapau+VII+Est+Indép+Indir+Pas -uapau+VII+Est+Indép+Indir+Prés -uapau+VII+Ouest+Indép+Dub+Prés -uapau+VII+Ouest+Indép+Ind+Pas -uapau+VII+Ouest+Indép+Ind+Prés -uapau+VII+Ouest+Indép+Indir+Pas -uapau+VII+Ouest+Indép+Indir+Prés -uepashtan+VII+Est+Indép+Dub+Prés -uepashtan+VII+Est+Indép+Ind+Pas -uepashtan+VII+Est+Indép+Ind+Prés -uepashtan+VII+Est+Indép+Indir+Pas -uepashtan+VII+Ouest+Indép+Dub+Prés -uepashtan+VII+Ouest+Indép+Ind+Pas -uepashtan+VII+Ouest+Indép+Ind+Prés -uepashtan+VII+Ouest+Indép+Indir+Pas -ueńutishiu+VAI+Est+Indép+Dub+Prés -ueńutishiu+VAI+Est+Indép+Ind+Pas -ueńutishiu+VAI+Est+Indép+Ind+Prés -ueńutishiu+VAI+Est+Indép+Indir+Pas -ueńutishiu+VAI+Est+Indép+Indir+Prés -ueńutishiu+VAI+Ouest+Indép+Dub+Prés -ueńutishiu+VAI+Ouest+Indép+Ind+Pas -ueńutishiu+VAI+Ouest+Indép+Ind+Prés -ueńutishiu+VAI+Ouest+Indép+Indir+Pas -ueńutishiu+VAI+Ouest+Indép+Indir+Prés -uikan+VII+Est+Indép+Ind+Prés -uikan+VII+Ouest+Indép+Ind+Prés -uitsheueu+VTA+Est+Indép+Dub+Prés -uitsheueu+VTA+Est+Indép+Ind+Pas -uitsheueu+VTA+Est+Indép+Ind+Prés -uitsheueu+VTA+Est+Indép+Indir+Pas -uitsheueu+VTA+Est+Indép+Indir+Prés -uitsheueu+VTA+Ouest+Indép+Dub+Prés -uitsheueu+VTA+Ouest+Indép+Ind+Pas -uitsheueu+VTA+Ouest+Indép+Ind+Prés -uitsheueu+VTA+Ouest+Indép+Indir+Pas -uitsheueu+VTA+Ouest+Indép+Indir+Prés -uitshieu+VTA+Est+Indép+Dub+Prés -uitshieu+VTA+Est+Indép+Ind+Pas -uitshieu+VTA+Est+Indép+Ind+Prés -uitshieu+VTA+Est+Indép+Indir+Pas -uitshieu+VTA+Est+Indép+Indir+Prés -uitshieu+VTA+Ouest+Indép+Dub+Prés -uitshieu+VTA+Ouest+Indép+Ind+Pas -uitshieu+VTA+Ouest+Indép+Ind+Prés -uitshieu+VTA+Ouest+Indép+Indir+Pas -uitshieu+VTA+Ouest+Indép+Indir+Prés -upau+VAI+Est+Indép+Dub+Prés -upau+VAI+Est+Indép+Ind+Pas -upau+VAI+Est+Indép+Ind+Prés -upau+VAI+Est+Indép+Indir+Pas -upau+VAI+Est+Indép+Indir+Prés -upau+VAI+Ouest+Indép+Dub+Prés -upau+VAI+Ouest+Indép+Ind+Pas -upau+VAI+Ouest+Indép+Ind+Prés -upau+VAI+Ouest+Indép+Indir+Pas -upau+VAI+Ouest+Indép+Indir+Prés -ńutin+VII+Est+Indép+Ind+Pas -ńutin+VII+Est+Indép+Ind+Prés -ńutin+VII+Est+Indép+Indir+Prés -ńutin+VII+Ouest+Indép+Ind+Pas -ńutin+VII+Ouest+Indép+Ind+Prés -ńutin+VII+Ouest+Indép+Indir+Prés