Créer et modifier un algorithme simple
Il s'agit pour les élèves d'acquérir des méthodes qui construisent la pensée algorithmique et non une connaissance exhaustive d'un langage ou d'un logiciel
Cours de mathématiques - Exo7
Scratch est un logiciel idéal pour apprendre à programmer. Un algorithme est une suite d'instructions données permettant d'atteindre un objectif ou de ...
Les langages de programmation par blocs (scratch)
Un logiciel de programmation par blocs comme Scratch est un environnement de Créer un algorithme sous forme de blocs afin de programmer une animation ...
Algorithmique et programmation
de travail en classe autour de la programmation avec le logiciel Scratch. ... Créer un algorithme simulant la rotation de la Lune autour de la Terre.
TELA: Structure et algorithmes pour la traduction fondée sur la
19 févr. 2004 parfois les logiciels de traduction automatique butent sur des signes tels que “&N” (“raccourci clavier pour créer un nouvel élément”).
Chap04 signaux
b. Consignes pour créer l'algorithme. Questions. 1. À toi de jouer ! Suis les consignes du document b pour réaliser l'algorithme dans le logiciel Scratch.
ALGORITHMIQUE.
Tableau de comparaison pour les calculatrices TI Casio
Réalisation dun logiciel pour loptimisation énergétique du bâtiment
17 juil. 2018 Le logiciel créé de toute pièce pendant le travail de fin d'étude
algorithmique seconde
syntaxiques compréhensible par l'ordinateur et permettant de créer des algorithmes. Un programme est la traduction d'un algorithme dans le langage de
Algorithmes de calcul formel et numérique
Giac/Xcas est un logiciel libre de calcul formel dont une caractéristique est arithmétique de l'algorithme du pivot de Gauss où on souhaite créer un ...
2MiB}+ `2b2`+? /Q+mK2Mib- r?2i?2` i?2v `2 Tm#@
HBb?2/ Q` MQiX h?2 /Q+mK2Mib Kv +QK2 7`QK
i2+?BM; M/ `2b2`+? BMbiBimiBQMb BM 6`M+2 Q` #`Q/- Q` 7`QK Tm#HB+ Q` T`Bpi2 `2b2`+? +2Mi2`bX /2biBMû2 m /ûT¬i 2i ¨ H /BzmbBQM /2 /Q+mK2Mib b+B2MiB}[m2b /2 MBp2m `2+?2`+?2- Tm#HBûb Qm MQM-Tm#HB+b Qm T`BpûbX
h1G, ai`m+im`2 2i H;Q`Bi?K2b TQm` H i`/m+iBQM7QM/û2 bm` H KûKQB`2
`1`K`K``M`m`2`H `S`H``M``b hQ +Bi2 i?Bb p2`bBQM,1KKMm2H SHMbX h1G, ai`m+im`2 2i H;Q`Bi?K2b TQm` H i`/m+iBQM 7QM/û2 bm` H KûKQB`2X mi`2
THESE présentée et soutenue publiquement parEmmanuel Planas
pour obtenir le grade deDOCTEUR DE L'UNIVERSITE JOSEPH FOURIER
Spécialité
INFORMATIQUE
UNIVERSITE GRENOBLE 1
U.F.R. MATHEMATIQUES APPLIQUEES ET INFORMATIQUE
TELAStructures et algorithmes pour la Traduction
Fondée sur la Mémoire
Date de soutenance
7 Juillet 1998
Jury :
Président : Yves Chiaramella
Directeur : Christian Boitet
Rapporteurs : Michel Divay
Christian Fluhr
Jean Véronis,
Eric Wehrli
Examinateur : Mathieu Lafourcade
THESE PREPAREE AU SEIN DU LABORATOIRE GETA (IMAG, UJF & CNRS)ET A L'UNIVERSITE DES NATIONS UNIES DE TOKYO
2 3Introduction
1.1 Situation, Motivations
1.1.1 Situation Industrielle
Le marché de la traduction industrielle, qui représentait déjà vingt milliards de dollars en
19971 , continue de progresser fortement au niveau international. La demande en traduction
automatisée augmente de façon encore plus marquée car les industriels cherchent à traduire
toujours plus et toujours moins cher. Or il se trouve que certains documents consistent en destextes ou des hypertextes dont le contenu, s'il n'est pas purement recopié, est fortement inspiré
de documents précédents, ou donne lieu à plusieurs versions similaires. Les manuels d'utilisation de logiciels (de plus en plus souvent en ligne) en sont un exemple classique. D'autres types de documents consistent en l'utilisation systématique de phrases modèles, comme les contrats d'assurances. Pour apporter une première solution à l'automatisation de la traduction de ce type de documents, un certain nombre d'outils d'aide à la traduction humaine ont vu le jour. Parmi cesoutils, certains sont fondés sur le stockage et la réutilisation de traductions déjà effectuées. On
les appelle Outils d'aide à la Traduction Fondée sur la Mémoire (OTFM). Certains restent confidentiels ou utilisés seulement en interne (Localix d'ILE, outil de Oki Electric), d'autressont à faible diffusion (DéjàVu d'Atril), mais au moins trois d'entre eux ont eu un succès
important (IBM Translation Manager, Star Transit, Trados Workbench). On peut voir unsigne de l'importance stratégique de ces outils dans le passage, opéré en 1997 par Microsoft, à
une utilisation systématique de Trados Workbench, pour la traduction de ses logiciels et desmanuels associés, passage qui s'est accompagné par une prise de capital de 30% de la société
Trados qui produit ce logiciel. Un autre signe est la décision de Xerox de lancer sur le marché
un nouveau produit de ce type, en juin 1998. Si l'intérêt économique de ce genre d'outils semble acquis, les efforts menés pour leur développement restent toutefois réduits. Hormis les programmes généraux du type d'OTELO de la Communauté Européenne et l'effort récent de Xerox, bien peu d'outils réellement efficaces sont disponibles, et l'on peut par exemple s'étonner qu'il n'existe pas de produits de ce type au Japon, à part quelques essais internes par exemple d'Oki Electric à Osaka [Sukehiro1995]. Cela laisse d'ailleurs le marché à deux sociétés allemandes, STAR qui distribue Transit
et qui est installée à Tokyo depuis quelques années, et TRADOS qui est venue concurrencer l'année dernière la première avec le logiciel Workbench. 1Source : Multilingual Computing, n° 12.
4Ces outils sont pourtant loin d'être parfaits, bien qu'ils permettent des réductions de coût
appréciables (de 20 à 80% selon les éditeurs, de 5 à 60% dans la réalité, car on doit prendre en
compte la mise en place et la maintenance par des ingénieurs technico-linguistes par exemple). On trouvera plus bas plus de précisions sur leurs performances. Ces outils permettent et ont permis l'accumulation d'un nombre important de corpora de segments bilingues alignés qui fournissent une source d'information importante et souvent très adaptée au type de documents traités, puisque collectée (de façon automatique ou semi-automatique) lors du travail des traducteurs sur les mêmes types de documents.1.1.2 Situation technologique
La technologie des trois produits principaux du marché actuel repose, d'une part sur une base de données indexée d'unités de mémoires, et d'autre part sur des algorithmes de recherche de similitudes utilisant en général des fonctions de coût ou des statistiques. La représentation interne de ces outils, suivant un "langage" interne (proche de SGML dans la plupart des cas) permet de conserver l'ensemble des données sous ce même formalisme. Les algorithmes de recherche s'appuient sur cette représentation interne. Si des analyseurslinguistiques sont utilisés, c'est en général pour la consultation de la base terminologique,
mais pas pour la recherche dans la base phraséologique. Les propositions d'unités de traduction dépendent donc souvent du type de document traité, et toujours de leur format. Cela provient essentiellement du fait que les recherchess'effectuent sur la représentation interne qui est hétérogène et correspond plus ou moins
fidèlement au code trouvé dans les documents, rendant les mémoires dépendantes du format du document. Cela est par exemple totalement vrai dans Trados Workbench, mais moins dansIBM Translation Manager qui utilise un vrai format interne. Il est de toutes façons en général
très difficile d'utiliser une mémoire de traduction faite sur un document possédant un certain
format, pour traduire un document sous un autre format, même si les phrases sont linguistiquement comparables ou égales. Ces outils posent de sérieux problèmes au niveau de la gestion et du transfert de la mise en forme du texte et des objets non linguistiques comme le prouve le test du chapitre 3 de ce document. Dans la pratique, il n'est possible de récupérer que les formats qui ont été enregistrés en mémoire, et qui dépendent donc souvent du document d'origine. Les objets non linguistiques (les images, les index, etc.) sont au mieux reconnus et proposés au traducteur en mode interactif, et ce sont les traducteurs eux-mêmes qui les placent. En aucun cas, ils ne sont insérés automatiquement au bon endroit par l'outil. Leurs interfaces sont pourtant souvent bien conçues et offrent de nombreusesfonctionnalités intéressantes comme le défilement parallèle des phrases source et cible, un
système de fenêtrage affichant le texte à traduire, les unités de mémoire proposées, des
dictionnaires, un accès direct à une base terminologique et autres renseignements utiles au travail du traducteur.1.1.3 Situation au niveau de la recherche
Ces outils manquent surtout d'une formalisation de leur comportement et de leur fondements théoriques. A part quelques articles dispersés comme [Langé, Gaussier & Daille1997, Witkam 1988, ou Kugler 1991] qui ne sont pas très techniques, il n'existe pas d'études
présentant le domaine de façon précise. Il existe cependant quelques approches connexes intéressantes, qui n'ont pas donné de système commercial, mais au moins une maquette ou des essais, comme l'application du raisonnement fondé sur les cas [Collins & Cunningham 1996] ou l'application de méthodes statistiques comme par exemple dans [Doi & Muraki 1993], [Hai, Kawtrakul & Poovorawan], [Chen & Chen], [Kitano 1993] ou [Li & Choi 1997].5Les outils d'aide à la traduction fondée sur la mémoire ont a priori pour but de proposer
des traductions qui sont d'origine strictement humaine. Il est dans ce cas essentiel de ne pasintroduire du "bruit" provenant de la machine, de façon que l'utilisateur soit sûr d'être en face
d'une solution qui provient d'un humain, et donc en laquelle on peut avoir confiance. Pourtant, les systèmes actuels ne permettent pas, ou permettent mal, de transférer le format ou leséléments non linguistiques, comme nous l'avons déjà dit. Or cette tâche est justement lourde
pour les traducteurs humains. En outre, l'observation du comportement de ces outils à grandeéchelle montre qu'une partie du silence observé pourrait être réduit par une génération
simplement morphologique, même très faible (passage à un pluriel par exemple), ou une composition d'unités de traduction présentes en mémoire. Nous explorons ces axes dans cetteétude.
Parallèlement, de nombreuses recherches existent dans un domaine proche qui est la Traduction Automatique Fondée sur l'Exemple (Example-based Machine Translation) ou encore Traduction Automatique Fondée sur l'Analogie [Analogy-based Machine Translation]. Depuis le lancement du concept par [Nagao 1984], de nombreuses études ont été menées sur l'utilisation de modèles appelés "exemples" [Nagao 1984] et [Sato 1989], ou "patrons" [Sadler1989], [Sumita & Iida 1992], [Furuse & Iida 1994, 1996], [Mima 1997], ou encore sur des
approches statistiques [Brown 1997]. Mais cette approche impose d'une part des temps de calculs importants qui en viennent à une approche fondée sur la programmation parallèle dans certains cas ([McLean 1992], [Sumida & Iida 1993]). Elle implique d'autre part de construire des structures linguistiques (arbres par exemple) de façon largement manuelle. Cela rend ces techniques difficiles à utiliser de façon automatique sur un simple corpus de segments sources et cibles alignés, qui est la source d'information de base pour la traduction fondée sur la mémoire.1.2 Intérêt scientifique
1.2.1 Structuration des données dans un outil de traduction fondée sur la
mémoire Les données utilisées dans les outils de traduction fondée sur la mémoire sontgénéralement perçues et traitées comme un ensemble hétérogène. Cette disparité apparaît dans
la représentation interne de ces outils, tant au niveau du texte à traduire, et des unités de
mémoires, qu'au niveau de la représentation des données externes, linguistiques ou nonlinguistiques. Le premier apport de ce travail est de montrer que cette disparité existe de façon
systématique dans les outils actuels.Une première formalisation consiste à homogénéiser le flot de l'information en présentant
une unité de traduction sous la forme structurée qu'est un segment XML. Dans un second temps, nous proposons de voir une unité de texte à traduire (nous parlerons de segment)comme une suite d'éléments de différentes natures. Parmi ces éléments, on trouve, entre autres,
des caractères exprimés sous un codage et une transcription qu'il faudra éventuellement manipuler, des marques de mise en forme, et des objets non linguistiques comme des images ou des variables manipulées par le logiciel qui lit le document. L'apport suivant consiste à proposer un éclatement de ces données suivant leur type enune structure plus forte : un ensemble de treillis disposés par étages (un étage par type de
données) et connectés par des liaisons. Les caractères de la chaîne de l'expression à traduire,
les mots eux-mêmes, les balises doubles et monobalises XML, les lemmes des mots rencontrés dans le segment, et d'autres types de données forment autant d'étages. Cette structure est appelée TELA pour Treillis Etagés et Liés pour le traitement Automatisé. Nous montrons comment la manipulation de ces données, via cette structure, autorise nonseulement les opérations classiques des outils de première génération avec plus d'efficacité
6structurelle, mais ouvre aussi de nouvelles perspectives quant aux traitements linguistiques ou
non linguistiques. Parmi les opérations classiques mieux réalisées figurent une meilleurerecherche de similarité entre les chaînes, un meilleur support du transfert de la mise en forme
du segment source au segment cible, et une ouverture vers une faible génération ainsi que la composition de mémoires de traduction. En outre, la complexité dynamique des algorithmes de manipulation de la structure restelinéaire, offrant par là-même une efficacité procédurale non négligeable. La complexité
statique restant faible, l'espace mémoire nécessaire à la manipulation des données est tout à
fait raisonnable1.2.2 Définition de la similitude entre deux segments exprimés dans une même
langue Le principe des outils de traduction fondée sur la mémoire est de proposer les unités detraductions stockées en mémoire les plus proches possible de l'unité à traduire. Mais que
signifie donc proche ? Les outils de première génération se basent sur des fonctions de coût
intuitives ou statistiques. La formalisation de cette notion n'est pas claire, et son efficacité dépend trop du type de texte traité et de paramètres "à régler". Pour remédier à ce manque, nous proposons une définition claire de la similitude entre deux segments documentaires exprimés dans une même langue, qui se base sur la notion de distance d'édition introduite dans [Wagner & Fischer 1974]. La distance précise alors lanotion de similitude selon les types de données portées par les différents étages d'une structure
TELA. L'utilisation de cette distance permet alors une recherche robuste et efficace des unités de mémoires candidates pour la traduction du segment d'entrée. Un pas dans cette direction aété fait dans [Cranias, Papageorgiou et Piperitis 1997], qui proposent une distance d'édition
sur un segment hétérogène composé de lemmes, catégories grammaticales, et "mots fonctionnels" (that, whom, whereas,..), mais sans donner une formalisation complète.1.2.3 Définition de traductibilité entre une expression source et une expression
cibleLes systèmes de première génération s'arrêtent à cette recherche de similarité. Il nous a
semblé qu'on pourrait faire plus. Il a été pressenti, comme par exemple dans [Langé, Gaussier
et Daille 1997], qu'une certaine généricité (voir ci-après) des unités de traduction devrait
amener un silence moins important dans la recherche d'unités de traduction, mais surtout des propositions plus proches de la traduction recherchée. Cela nous a mené à l'étude de la liaison existant entre un segment source et sa traduction. Nous parlerons de traductibilité d'un segment source par un segment cible. Pour préciser cette notion de façon formelle, une seconde distance est proposée. Cette distance est une fonction des distances associées à chacun des types de données, dont la plupart se fondent sur la distance d'édition de [Wagner & Fischer 1974].1.2.4 Définition de l"analogie de deux unités de traduction
Une unité de traduction (S1, T1) comporte une partie source S1 et une partie cible T1. Sa traduction par une unité de traduction (S2, T2) provenant de la mémoire procède d'une certaine ressemblance entre les deux couples. Reprenant les travaux de [Lepage 1996, 1997,1998] qui définissent la notion d'analogie entre deux couples d'une même langue, nous
l'étendons à deux couples d'unités de traduction via les notions de similitude et de traductibilité.71.2.5 Généricité des unités de traduction
La mise en uvre de la notion d'analogie permet alors de proposer de façon "propre" des traductions approchées sur la base des unités de traduction de la mémoire. Parce que l'onmaîtrise alors les différences et l'endroit où elles se situent entre l'unité modèle provenant de
la mémoire et l'unité à traduire, il devient possible de générer une traduction adaptée à l'unité
à traduire. En outre, nous montrons comment la structure TELA et les algorithmes associés permettent d'aller vers une composition des unités de traduction, qui se rapproche, au moinsdans l'idée, de ce qui se fait (ou voudrait se faire) dans les travaux de Traduction Fondée sur
l'Exemple ou l'Analogie (voir travaux cités plus haut). Trois heuristiques sont proposées pour : · transférer le format du segment source à traduire vers le segment cible final · autoriser une génération faible dans le cas où l'unité de traduction trouvée en mémoire est très proche de l'unité à traduire · composer les unités de traduction via la notion d'expression pivot1.3 Plan du document
1.3.1 Partie 1 : état de l"art
La première partie est composée de trois chapitres. Le premier chapitre rappelle ce qu'est un outil de traduction fondée sur la mémoire. Nous exposons ensuite le problème pratique de la traduction de documents dans l'industrie, en mettant l'accent sur les problèmes de base comme celui de la manipulation de plusieurs formats de fichiers, ou la présence dans lesdocument d'autres données que des mots à traduire. Nous insistons sur une activité importante
en traduction : la traduction de logiciels et de leur documentation (localisation). Le chapitre 1 se termine par une réflexion sur les gains de traduction que peuvent apporter de tels outils. Le second chapitre présente dans le détail les trois outils de traduction fondée sur la mémoire les plus utilisés. On y trouve une description de leurs fonctionnalités et de leursprincipes de fonctionnement. Les différences entre les trois outils, et leurs originalités sont
soulignées, et il est montré comment les données sont codées dans le format interne. Le troisième chapitre propose une évaluation de ces outils. Cette évaluation se base sur la traduction d'un fichier test au format RTF dans lequel sont rassemblés des problèmes qui onttrait à la traduction elle-même, à la gestion de la mise en page, et à celle des objets non
linguistiques classiquement rencontrés dans un document. Un certain nombre de faiblessessont alors relevées, et un retour vers la représentation interne des données montre qu'elles
proviennent principalement de cette dernière.1.3.2 Partie 2 : proposition d"une nouvelle structure de données : TELA
Ayant montré que les limites des outils de traduction fondée sur la mémoire de première génération (OTFM1g) proviennent en partie de la structure de représentation des données, nous proposons dans la partie 2 (qui commence par le chapitre 4) de construire une représentation qui leur soit plus adaptée. Ce sera une représentation en deux parties, maisreflétant des niveaux d'analyse différents : la représentation primaire sert à l'échange de ces
données, et la représentation plus structurée à leur manipulation. Comme les données à
représenter proviennent des documents à traduire, nous étudions les différents types de tels
documents pour y trouver quels sont les types de données à représenter. Les formatsd'échange et représentation de données textuelles au niveau général, puis entre système de
traduction, et enfin dans les OTFM1g sont alors passés en revue. On rappelle ce qui y est codé,
et comment. XML est alors proposé comme choix de la forme primaire. Pour choisir la forme8structurée, nous examinons les structures de données qui semblent adaptées. Le choix porte
finalement sur un ensemble de treillis étagés, et connectés par des liaisons. Cette structure est
dénommée TELA. Le chapitre 5 s'attache à décrire par une approche empirique ce que doit contenir lastructure TELA. On y détaille les différents étages de la structure en les affectant à un type
particulier de données ; c'est ainsi que le premier étage est dédié aux caractères du segment à
traduire, le second aux mots, et le cinquième aux lemmes des mots. La notion importanted'expression pivot est introduite à cette occasion : c'est le premier pas vers une généricité des
outils de traduction fondée sur la mémoire. Le chapitre 6 revient sur la définition de TELA et la fige mathématiquement. Unedescription informatique générale est ensuite proposée, permettant de clarifier l'utilisation des
différentes parties de la structure, et ses opérations de base. Pour faciliter la manipulation, et
l'échange de structures TELA, deux langages de description de TELA sont donnés : une description basée sur XML permettant de coder l'ensemble des deux parties de la structure sous le même formalisme, et une description par objets pour l'algorithmique de manipulation des données.1.3.3 Partie 3 : algorithmes et utilisation de TELA
La partie 3 (chapitres 7, 8 et 9) propose des algorithmes adéquats pour manipuler les structures TELA d'une part, effectuer les calculs de similarité d'autre part, et introduit trois heuristiques de traduction. Le chapitre 7 reprend la description par objets de TELA donnée au chapitre précédent, et l'implémente en montrant à quoi correspondent les champs des objets, en une structure adaptée à la traduction fondée sur la mémoire suivant les recommandations du chapitre 5. Cela donne une instance de TELA appelée TELAM. L'algorithmique de construction d'une structure TELAM à partir d'un segment XML y est décrite. Le chapitre 8 introduit la notion abstraite de similitude et propose d'adopter une distance d'édition pour son fondement mathématique. Il est ensuite montré comment la similitude estadaptée à la recherche d'unités de traductions pour traduire un segment d'entrée, et quels sont
les algorithmes nécessaires. Le procédé de recherche d'unités de mémoires par les algorithmes
basés sur la notion de similitude est alors explicité, et l'on montre comment ces algorithmess'appliquent aux données représentées par les différents étages d'une structure TELAM.
Le chapitre 9 achève la recherche d'un environnement complet et formalisé pour latraduction fondée sur la mémoire en introduisant le notion de traductibilité et montrant que,
combinée avec celle de similitude, elle donne celle d'analogie qui formalise le processus de traduction fondée sur la mémoire. Les algorithmes nécessaires y sont décrits. Quelquesheuristiques de traduction dont la génération à base d'expressions à cases et d'expressions
pivot sont proposées pour augmenter la généricité du modèle. Enfin, quelques recommandations qui nous semblent essentielles sont proposées pour la construction d'un système complet de Traduction Fondée sur la Mémoire. En conclusion nous rappelons le problème de départ, notre démarche, les solutionsproposées, et les améliorations apportées au problème. Une ouverture vers la coopération avec
d'autres paradigmes de traduction est énoncée. Enfin, nous réfléchissons sur la proximité et
les liens entre la traduction fondée sur l'exemple, ou l'analogie, et la traduction fondée sur la
mémoire. Les perspectives montrent quelles pourraient être les améliorations de notre modèle,
et quels systèmes concrets il peut permettre de construire. 9Table des matières
INTRODUCTION GÉNÉRALE.....................................................................................................................................3
1.1 TABLE DES MATIÈRES..............................................................................................................................................9
1.2 LISTE DES FIGURES.................................................................................................................................................14
1.3 1.3 RPartie I
Etat de l'Art des Outils de
Traduction Fondée sur la Mémoire
Chapitre 1 : Introduction aux outils de Traduction Fondée sur la Mémoire1. INTRODUCTION AUX OUTILS DE TRADUCTION AUTOMATIQUE FONDÉS SUR LA
MÉMOIRE DE PREMIÈRE GÉNÉRATION (OTFM1G)........................................................................................27
1.1 P OSITIONNEMENT DE LA TRADUCTION FONDEE SUR LA MEMOIRE PAR RAPPORT AU TRAITEMENTAUTOMATIQUE DU LANGAGE NATUREL.......................................................................................................................28
1.2 P 1.3 DOCUMENT LITTÉRAL ET DOCUMENT FORMATÉ...................................................................................................30
1.4 LES FORMATS RENCONTRÉS SUR LE MARCHÉ.......................................................................................................32
2. UTILISATION INDUSTRIELLE DES OTAF1G...................................................................................................34
2.1 LES ÉTAPES DE LA TRADUCTION À L'AIDE D'UN OUTIL DE TRADUCTION FONDÉE SUR LA MÉMOIRE.................34
2.2 LA TRADUCTION DE LOGICIELS, OU LOCALISATION..............................................................................................36
2.3 CONSÉQUENCES POUR LES OTFM1G.......................................................................................................................38
3. LES GAINS DE TRADUCTION ..............................................................................................................................40
3.1 R 3.2 GAINS DE TRADUCTION..........................................................................................................................................42
3.3 SChapitre 2 : Etude de quelques outils
1. WORKBENCH DE TRADOS...................................................................................................................................48
1.1 G 1.2 LE PROCESSUS DE TRADUCTION SOUS WORKBENCH.............................................................................................49
1.3 LES MÉMOIRES DE TRADUCTION...........................................................................................................................54
quotesdbs_dbs47.pdfusesText_47[PDF] logiciel pour créer une bd gratuit
[PDF] logiciel pour créer une couverture de livre
[PDF] logiciel pour ecrire un livre
[PDF] logiciel pour écrire un roman
[PDF] logiciel pour écrire un scénario
[PDF] logiciel pour écrivain gratuit
[PDF] logiciel pour extraire le son d'une video
[PDF] logiciel pour faire des fiches de révision
[PDF] logiciel pour faire des schémas gratuit
[PDF] logiciel pour faire parler les photos
[PDF] logiciel pour metre une image en 3D
[PDF] logiciel pour reparer windows 7 gratuit
[PDF] logiciel reconstruction 3d ? partir de photos
[PDF] logiciel reglage photo