Fix a big couple of issues in the presentation of my research.

This commit is contained in:
Sergiu Ivanov 2015-05-28 15:09:09 +02:00
parent c244d00f77
commit 68158f1f35
2 changed files with 31 additions and 30 deletions

View file

@ -16,12 +16,12 @@ howpublished = {\url{https://github.com/scolobb/nsmux}}
} }
@misc{sympy, @misc{sympy,
title = {SymPy homepage}, title = {{S}ym{P}y homepage},
howpublished = {\url{http://www.sympy.org}} howpublished = {\url{http://www.sympy.org}}
} }
@misc{categories, @misc{categories,
title = {A category theory module for SymPy}, title = {A category theory module for {S}ym{P}y},
author = {Sergiu Ivanov}, author = {Sergiu Ivanov},
howpublished = {\url{https://github.com/scolobb/sympy}} howpublished = {\url{https://github.com/scolobb/sympy}}
} }

View file

@ -51,15 +51,16 @@ longtemps dans la théorie des langages formels, surtout la variante
sans contexte qui généralise les opérations de concaténation et sans contexte qui généralise les opérations de concaténation et
quotient, deux opérations quotient, deux opérations
fondamentales~\cite{Haussler82,KariPhD}. L'inspiration qui a motivé fondamentales~\cite{Haussler82,KariPhD}. L'inspiration qui a motivé
l'introduction de ces opérations vient de la linguistique, car elles l'introduction de l'insertion et l'effacement vient de la
semblent modéliser assez précisément les procédés de construction des linguistique, car elles semblent modéliser assez précisément les
phrases dans une langue vivante~\cite{Marcus69,PaunKluwer97}. Il a été procédés de construction des phrases dans une langue
montré récemment que l'insertion et l'effacement possèdent une vivante~\cite{Marcus69,PaunKluwer97}. Il a été montré récemment que
inspiration biologique et qu'ils formalisent l'hybridation erronée des l'étude de l'insertion de l'effacement est intéressante du point de
brins d'ADN ({\em mismatched DNA annealing})~\cite{PRSbook}. De plus, vue biologique, car ses opérations formalisent l'hybridation erronée
il a été découvert que même l'édition de l'ARN ({\em RNA editing}) des brins d'ADN ({\em mismatched DNA annealing})~\cite{PRSbook}. De
réalisé par certains protozoaires consiste généralement en des ajouts plus, il a été découvert que même l'édition de l'ARN ({\em RNA
et des suppressions dans des brins d'ARN. editing}) réalisée par certains protozoaires consiste généralement
en des ajouts et des suppressions dans des brins d'ARN.
De manière intuitive, une règle d'insertion rajoute une sous-chaîne à De manière intuitive, une règle d'insertion rajoute une sous-chaîne à
une chaîne de caractères dans un contexte donné. Une règle une chaîne de caractères dans un contexte donné. Une règle
@ -70,23 +71,23 @@ un ensemble fini de règles d'insertion
et d'effacement ; il engendre un langage en appliquant ces règles et d'effacement ; il engendre un langage en appliquant ces règles
séquentiellement à un ensemble fini de mots dits axiomes. La séquentiellement à un ensemble fini de mots dits axiomes. La
complexité d'un système d'insertion/effacement est décrite par le complexité d'un système d'insertion/effacement est décrite par le
6-uplet $(n,m,m'; p,q,q')$ dit taille, où les premiers trois composant 6-uplet $(n,m,m'; p,q,q')$ dit taille, où les premiers trois composants
représentent la longueur maximale de la sous-chaîne insérée et la représentent la longueur maximale de la sous-chaîne insérée et la
taille maximale des contextes à gauche et à droite, alors que les taille maximale des contextes à gauche et à droite, alors que les
trois derniers composants décrivent les mêmes paramètres pour les trois derniers composants décrivent les mêmes paramètres pour les
règles d'effacement. règles d'effacement.
Dans le cadre de ma thèse nous nous sommes intéressés tout d'abord à Dans le cadre de ma thèse nous nous sommes intéressés tout d'abord à
des systèmes d'insertion/sup\-pres\-sion de taille $(1,m,0; 1,q,0)$, des systèmes d'insertion/ef\-face\-ment de taille $(1,m,0; 1,q,0)$,
c'est-à-dire aux systèmes dans lesquels toutes les règles n'ont pas de c'est-à-dire aux systèmes dans lesquels toutes les règles n'ont pas de
contexte à droite et insèrent ou suppriment un caractère. Nous avons contexte à droite et insèrent ou suppriment un caractère. Nous avons
montré que ces systèmes engendrent tous les langages rationnels, et montré que ces systèmes engendrent tous les langages rationnels, et
même certains langages algébriques. D'un autre côté, nous avons prouvé même certains langages algébriques. D'un autre côté, nous avons prouvé
que pour tout système de taille $(1,m,0;1,q,0)$ avec $m\geq 2$ ou que pour tout système de taille $(1,m,0;1,q,0)$ avec $m\geq 2$ ou
$n\geq 2$ il existe un système de taille $(1,2,0; 1,1,0)$ et un autre $q\geq 2$ il existe un système de taille $(1,2,0; 1,1,0)$ et un autre
de taille $(1,1,0; 1,2,0)$ qui le simulent. Nous nous sommes aussi de taille $(1,1,0; 1,2,0)$ qui le simule. Nous nous sommes
intéressés aussi aux systèmes de taille $(1,1,0;1,1,0)$ qui, malgré intéressés aussi aux systèmes de taille $(1,1,0;1,1,0)$ qui, malgré
leur simplicité apparente, peuvent eux aussi engendrer des langages leur simplicité apparente, peuvent engendrer des langages
non algébriques. Afin de mieux analyser le comportement dynamique de non algébriques. Afin de mieux analyser le comportement dynamique de
ces systèmes, nous avons introduit un outil de représentation ces systèmes, nous avons introduit un outil de représentation
graphique de leurs dérivations. graphique de leurs dérivations.
@ -96,9 +97,9 @@ trois mécanismes de contrôle : contrôle par graphe ({\em graph
control}), contrôle semi-conditionnel ({\em semi-conditional control}), contrôle semi-conditionnel ({\em semi-conditional
control}) et contextes aléatoires ({\em random context control}) et contextes aléatoires ({\em random context
control}). Nous avons prouvé que les systèmes équipés de ces control}). Nous avons prouvé que les systèmes équipés de ces
mécanismes étaient Turing complets avec de très petites mécanismes sont Turing complets avec de très petites
règles. Notamment, nous avons prouvé que le contrôle semi-conditionnel règles. Notamment, nous avons prouvé que le contrôle semi-conditionnel
augmentait la puissance d'expression des systèmes augmente la puissance d'expression des systèmes
d'insertion/effacement de taille $(1,0,0;1,0,0)$, c'est-à-dire des d'insertion/effacement de taille $(1,0,0;1,0,0)$, c'est-à-dire des
systèmes avec des règles sans contexte, est les rend Turing complets. systèmes avec des règles sans contexte, est les rend Turing complets.
@ -119,8 +120,8 @@ La complétude computationnelle des réseaux de processeurs
introduction~\cite{CMVMS2001,CVS97}. Des variations au modèle ont été introduction~\cite{CMVMS2001,CVS97}. Des variations au modèle ont été
proposées plus tard et prouvées Turing complètes elles proposées plus tard et prouvées Turing complètes elles
aussi~\cite{AMVR2006,CMVMS2003}. Nous nous sommes intéressés plutôt à aussi~\cite{AMVR2006,CMVMS2003}. Nous nous sommes intéressés plutôt à
l'universalité et à la minimisation du nombre de règles d'insertion, l'universalité et à la minimisation du nombre de règles
d'effacement et de substitution dans les réseaux universels. Nous dans les réseaux universels. Nous
avons ainsi construit des réseaux universels à 4, 5 et 7 règles avons ainsi construit des réseaux universels à 4, 5 et 7 règles
seulement, avec des fonctions de codage différentes. seulement, avec des fonctions de codage différentes.
@ -131,8 +132,8 @@ telle machine possède un nombre fini de registres, qui peuvent
contenir des entiers non négatifs. Le programme d'une machine à contenir des entiers non négatifs. Le programme d'une machine à
registres est une liste étiquetée d'instructions élémentaires : registres est une liste étiquetée d'instructions élémentaires :
l'incrément d'un registre, le décrément d'un registre et le teste si l'incrément d'un registre, le décrément d'un registre et le teste si
un registre est vide. Les machines à registres sont ainsi un modèle un registre est vide. Les machines à registres sont ainsi
très proche de l'organisation des ordinateurs digitaux habituels. très proches de l'organisation des ordinateurs digitaux habituels.
Il a été montré que les machines à registres sont Turing complets, et Il a été montré que les machines à registres sont Turing complets, et
qu'en plus n'importe quelle fonction calculable sur les entiers non qu'en plus n'importe quelle fonction calculable sur les entiers non
@ -174,7 +175,7 @@ La dernière partie de ma thèse porte sur l'universalité des systèmes
de réécriture de multiensembles avec des inhibiteurs et aussi des de réécriture de multiensembles avec des inhibiteurs et aussi des
réseaux de Petri avec des arcs inhibiteurs --- deux modèles qui sont réseaux de Petri avec des arcs inhibiteurs --- deux modèles qui sont
fondamentalement similaires. En effet, un état (marquage) d'un réseau fondamentalement similaires. En effet, un état (marquage) d'un réseau
de Petri est décrit comme une fonction qui associe à chaque place le de Petri est décrit par une fonction qui associe à chaque place le
nombre de jetons qu'elle contient ; or le marquage est un nombre de jetons qu'elle contient ; or le marquage est un
multiensemble sur l'alphabet des symboles qui désignent les multiensemble sur l'alphabet des symboles qui désignent les
places. Les transitions de réseaux de Petri correspondent ainsi aux places. Les transitions de réseaux de Petri correspondent ainsi aux
@ -188,7 +189,7 @@ d'étendre le pouvoir d'expression de ces modèles, dont l'idée des
inhibiteurs. Dans les réseaux de Petri, un arc inhibiteur entre une inhibiteurs. Dans les réseaux de Petri, un arc inhibiteur entre une
place et une transition empêche celle-ci de se déclencher si la place place et une transition empêche celle-ci de se déclencher si la place
n'est pas vide. De la même manière, on peut munir une règle de n'est pas vide. De la même manière, on peut munir une règle de
réécriture de multiensembles avec un ensemble de symboles qui ne réécriture de multiensembles avec une collection de symboles qui ne
doivent pas être présents pour que la règle soit applicable. Il a été doivent pas être présents pour que la règle soit applicable. Il a été
prouvé que les réseaux de Petri avec des arcs inhibiteurs et les prouvé que les réseaux de Petri avec des arcs inhibiteurs et les
systèmes de réécriture de multiensembles avec des inhibiteurs sont systèmes de réécriture de multiensembles avec des inhibiteurs sont
@ -210,7 +211,7 @@ nécessaires pour atteindre la complétude computationnelle : les
réseaux de Petri avec un seul arc inhibiteur ne sont pas Turing réseaux de Petri avec un seul arc inhibiteur ne sont pas Turing
complets~\cite{Reinhardt08}. complets~\cite{Reinhardt08}.
Même si les résultats d'universalité présentés dans la dernière partie Même si les résultats portant sur l'universalité présentés dans la dernière partie
de ma thèse apparaissent sous la forme de réseaux de Petri, la de ma thèse apparaissent sous la forme de réseaux de Petri, la
correspondance directe avec les systèmes de réécriture de correspondance directe avec les systèmes de réécriture de
multiensembles permet de formuler immédiatement les mêmes résultats multiensembles permet de formuler immédiatement les mêmes résultats
@ -264,7 +265,7 @@ comportement désiré. J'ai participé à ce travail en développant un
simulateur avec des moteurs des simulations échangeables pouvant être simulateur avec des moteurs des simulations échangeables pouvant être
réalisés en des langages différents. J'ai notamment fourni un moteur réalisés en des langages différents. J'ai notamment fourni un moteur
de simulation utilisant la technologie OpenCL de programmation de simulation utilisant la technologie OpenCL de programmation
parallèle sur les cartes graphiques et un autre, plus flexible mais pour des architectures parallèles et un autre, plus flexible mais
moins performant, implémenté en Haskell. moins performant, implémenté en Haskell.
En ce qui concerne le développement des algorithmes distribués, je me En ce qui concerne le développement des algorithmes distribués, je me
@ -275,7 +276,7 @@ de l'horloge globale rapproche le modèle des systèmes parallèles
composés d'un certain nombre de processus qui interagissent. Dans mon composés d'un certain nombre de processus qui interagissent. Dans mon
travail, j'ai exprimé les mécanismes de synchronisation en termes de travail, j'ai exprimé les mécanismes de synchronisation en termes de
règles de réécriture de multiensembles et j'ai montré comment ces règles de réécriture de multiensembles et j'ai montré comment ces
mécanismes pouvaient être utilisés pour la résolution des problèmes de mécanismes pouvaient être utilisés pour la résolution de problèmes de
concurrence classiques. concurrence classiques.
Nous avons continué l'exploration des algorithmes distribués en Nous avons continué l'exploration des algorithmes distribués en
@ -286,7 +287,7 @@ avant est une méthode de déduction qui applique des implications
logiques en partant des prémisses pour en déduire de nouvelles logiques en partant des prémisses pour en déduire de nouvelles
conclusions. Le chaînage avant consiste donc à construire toutes les conclusions. Le chaînage avant consiste donc à construire toutes les
conclusions déductibles à partir des axiomes jusqu'à ce que la conclusions déductibles à partir des axiomes jusqu'à ce que la
proposition cible est obtenue. Par opposition, le chaînage arrière proposition cible soit obtenue. Par opposition, le chaînage arrière
part des conclusions pour essayer de remonter aux axiomes. Le chaînage part des conclusions pour essayer de remonter aux axiomes. Le chaînage
arrière a souvent tendance à explorer moins de possibilités et est arrière a souvent tendance à explorer moins de possibilités et est
préféré dans les cas d'utilisation pratiques. Il est remarquable que préféré dans les cas d'utilisation pratiques. Il est remarquable que
@ -369,7 +370,7 @@ tableau dans l'espace cartésien à deux dimensions peut contenir un
nombre fini de cellules non vides disposées dans une configuration nombre fini de cellules non vides disposées dans une configuration
particulière, les autres cellules étant vides. Une règle de réécriture particulière, les autres cellules étant vides. Une règle de réécriture
de tableaux qui rajoute une nouvelle cellule peut s'appliquer à un de tableaux qui rajoute une nouvelle cellule peut s'appliquer à un
motif seulement si cette nouvelle cellule ne correspond pas à un motif seulement si cette nouvelle cellule correspond à un
endroit vide dans le tableau d'origine. endroit vide dans le tableau d'origine.
Ma contribution à l'étude des grammaires de tableaux a consisté à Ma contribution à l'étude des grammaires de tableaux a consisté à
@ -433,7 +434,7 @@ et seront disponibles au public dès leur finalisation.
Finalement, afin de faciliter la conception et la vérification de Finalement, afin de faciliter la conception et la vérification de
systèmes à réactions, j'ai implémenté un simulateur de ce modèle. Le systèmes à réactions, j'ai implémenté un simulateur de ce modèle. Le
code source du simulateur, ainsi qu'une documentation, est disponible code source du simulateur, ainsi que la documentation, est disponible
en ligne~\cite{brsim}. J'ai aussi réalisé une interface en ligne~\cite{brsim}. J'ai aussi réalisé une interface
Web~\cite{brsimweb} qui permet d'utiliser mon simulateur sans à avoir Web~\cite{brsimweb} qui permet d'utiliser mon simulateur sans à avoir
à télécharger et compiler le code. à télécharger et compiler le code.