Give a short summary of my thesis.
This commit is contained in:
parent
5465f2c33a
commit
4547695290
2 changed files with 234 additions and 0 deletions
|
@ -52,4 +52,8 @@
|
|||
|
||||
\input{enseignement.tex}
|
||||
|
||||
\clearpage
|
||||
|
||||
\input{recherche.tex}
|
||||
|
||||
\end{document}
|
||||
|
|
230
recherche.tex
Normal file
230
recherche.tex
Normal file
|
@ -0,0 +1,230 @@
|
|||
\section{Activités de recherche}
|
||||
\begin{refsection}
|
||||
|
||||
J'ai commencé mes travaux de recherche en 2009 au sein de l'Institut
|
||||
de Mathématiques et d'Informatique de Moldavie sous la direction de
|
||||
Yurii \textsc{Rogozhin}, et j'ai continué en 2012 par entreprendre une
|
||||
thèse sous la direction de Serghei \textsc{Verlan} au Laboratoire
|
||||
d'Algorithmique, Complexité et Logique de l'Université Paris Est
|
||||
Créteil. J'ai également eu de nombreuses collaborations
|
||||
internationales, notamment avec Rudolf~\textsc{Freund},
|
||||
Artiom~\textsc{Alhazov} et Ion~\textsc{Petre}. Afin de collaborer avec
|
||||
Ion \textsc{Petre}, j'ai effectué de multiples visites au laboratoire
|
||||
Combio à l'université Åbo Akademi à Turku, Finlande.
|
||||
|
||||
Les sujets de recherche que j'ai abordés jusqu'à maintenant se situent
|
||||
dans les domaines du calcul inspiré par la biologie et des langages
|
||||
formels. Lors de mon doctorat, j'ai travaillé également sur des
|
||||
problèmes non reliés directement au sujet de ma thèse. Dans la suite
|
||||
de cette section, je résume ma thèse, puis les résultats obtenus qen
|
||||
dehors de son cadre.
|
||||
|
||||
\subsection{Travaux de thèse}
|
||||
Ma thèse porte sur la puissance d'expression et l'universalité de
|
||||
modèles de calcul inspirés par la biologie. Les travaux présentés se
|
||||
structurent en quatre parties. Dans la première il s'agit de la
|
||||
puissance d'expression des systèmes d'insertion/effacement ({\em
|
||||
insertion-deletion systems}), un modèle de réécriture de chaînes de
|
||||
symboles formels par les opérations d'insertion et d'effacement. La
|
||||
deuxième partie du manuscrit se focalise sur l'universalité des
|
||||
réseaux de processeurs évolutionnaires ({\em networks of evolutionary
|
||||
processors}), qui est une formalisation d'un ensemble des unités de
|
||||
traitement de chaînes de caractères reliés en réseau. La troisième
|
||||
partie considère les machines à registres universelles à deux et à
|
||||
trois registres, ainsi qu'une généralisation de ce modèle. La dernière
|
||||
partie porte sur l'universalité des réseaux de Petri avec des arcs
|
||||
inhibiteurs.
|
||||
|
||||
Nous rappelons que l'universalité est la propriété d'une classe de
|
||||
modèles de calcul d'avoir un objet, dit universel, qui peut répliquer
|
||||
les résultats de n'importe quel autre objet de cette classe, la
|
||||
simulation pouvant éventuellement se faire à un codage près. D'autre
|
||||
part, la complétude computationnelle est la propriété d'une classe de
|
||||
contenir, pour tout langage récursivement énumérable, un objet qui
|
||||
l'engendre.
|
||||
|
||||
\subsubsection{Systèmes d'insertion/effacement}
|
||||
Les opérations d'insertion et d'effacement sont connues depuis
|
||||
longtemps dans la théorie des langages formels, surtout la variante
|
||||
sans contexte qui généralise les opérations de concaténation et
|
||||
quotient, deux opérations
|
||||
fondamentales~\cite{Haussler82,KariPhD}. L'inspiration qui a motivé
|
||||
l'introduction de ces opérations vient de la linguistique, car elles
|
||||
semblent modéliser assez précisément les procédés de construction des
|
||||
phrases dans une langue vivante~\cite{Marcus69,PaunKluwer97}. Il a été
|
||||
montré récemment que l'insertion et l'effacement possèdent une
|
||||
inspiration biologique et qu'ils formalisent l'hybridation erronée des
|
||||
brins d'ADN ({\em mismatched DNA annealing})~\cite{PRSbook}. De plus,
|
||||
il a été découvert que même l'édition de l'ARN ({\em RNA editing})
|
||||
réalisé 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 à
|
||||
une chaîne de caractères dans un contexte donné. Une règle
|
||||
d'effacement agit de la façon duale : elle supprime une sous-chaîne
|
||||
d'une chaîne de caractères, dans un contexte donné. Un système
|
||||
d'insertion/effacement possède un ensemble fini de règles d'insertion
|
||||
et d'effacement ; il engendre un langage en appliquant ces règles
|
||||
séquentiellement à un ensemble fini de mots dits axiomes. La
|
||||
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
|
||||
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
|
||||
trois derniers composants décrivent les mêmes paramètres pour les
|
||||
règles d'effacement.
|
||||
|
||||
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)$,
|
||||
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
|
||||
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é
|
||||
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
|
||||
de taille $(1,1,0; 1,2,0)$ qui le simulent. Nous nous sommes aussi
|
||||
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
|
||||
non algébriques. Afin de mieux analyser le comportement dynamique de
|
||||
ces systèmes, nous avons introduit un outil de représentation
|
||||
graphique de leurs dérivations.
|
||||
|
||||
Nous avons ensuite considéré les systèmes d'insertion/effacement avec
|
||||
trois mécanismes de contrôle : contrôle par graphe ({\em graph
|
||||
control}), contrôle semi-conditionnel ({\em semi-conditional
|
||||
control}) et contextes aléatoires ({\em random context
|
||||
control}). Nous avons prouvé que les systèmes équipés de ces
|
||||
mécanismes étaient Turing complets avec de très petites
|
||||
règles. Notamment, nous avons prouvé que le contrôle semi-conditionnel
|
||||
augmentait la puissance d'expression des systèmes
|
||||
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.
|
||||
|
||||
\subsubsection{Réseaux de processeurs évolutionnaires}
|
||||
Les réseaux de processeurs évolutionnaires sont un modèle de calcul
|
||||
inspiré par l'activité des organites d'une cellule biologique ou par
|
||||
la collaboration des cellules d'un tissu~\cite{CMVMS2001,CVS97}. Un
|
||||
processeur évolutionnaire peut effectuer en parallèle des opérations
|
||||
élémentaires (insertion, effacement, substitution d'un symbole) sur
|
||||
toutes les chaînes de caractères qu'il contient. Les processeurs sont
|
||||
connectés en réseau et échangent les chaînes de caractères qu'ils
|
||||
produisent. Ils disposent de filtres à l'entrée et à la sortie, ce qui
|
||||
leur permet de ne pas prendre en compte certaines chaînes.
|
||||
|
||||
La complétude computationnelle des réseaux de processeurs
|
||||
évolutionnaires a été montrée dès leur
|
||||
introduction~\cite{CMVMS2001,CVS97}. Des variations au modèle ont été
|
||||
proposées plus tard et prouvées Turing complètes elles
|
||||
aussi~\cite{AMVR2006,CMVMS2003}. Nous nous sommes intéressés plutôt à
|
||||
l'universalité et à la minimisation du nombre de règles d'insertion,
|
||||
d'effacement et de substitution dans les réseaux universels. Nous
|
||||
avons ainsi construit des réseaux universels à 4, 5 et 7 règles
|
||||
seulement, avec des fonctions de codage différentes.
|
||||
|
||||
\subsubsection{Machines à registres}
|
||||
Les machines à registres sont un modèle de calcul classique, dérivé
|
||||
directement de la machine de Turing~\cite{Minsky1961,Wang:1957}. Une
|
||||
telle machine possède un nombre fini de registres, qui peuvent
|
||||
contenir des entiers non négatifs. Le programme d'une machine à
|
||||
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
|
||||
un registre est vide. Les machines à registres sont ainsi un modèle
|
||||
très proche de l'organisation des ordinateurs digitaux habituels.
|
||||
|
||||
Il a été montré que les machines à registres sont Turing complets, et
|
||||
qu'en plus n'importe quelle fonction calculable sur les entiers non
|
||||
négatifs peut être calculée par une machine à deux registres si les
|
||||
entrées de la fonction sont déjà encodées, ou à trois registres si la
|
||||
machine doit faire l'encodage par elle-même~\cite{minsky67}. Cela
|
||||
implique l'existence de machines à deux registres et à trois registres
|
||||
universelles. Néanmoins, aucun programme d'une telle machine n'a été
|
||||
présenté dans la littérature, or une telle construction concrète
|
||||
permet d'estimer la taille de structures universelles dérivées et de
|
||||
les optimiser ensuite. Dans ma thèse nous avons donc appliqué la
|
||||
procédure décrite dans~\cite{minsky67} pour construire des machines à
|
||||
deux et à trois registres universelles en simulant les machines
|
||||
universelles présentées en~\cite{Korec}.
|
||||
|
||||
Nous nous sommes aussi intéressés à la façon dont les machines à
|
||||
registres sont simulées par d'autres modèles de calcul tels que
|
||||
systèmes de réécriture de multiensembles, réseaux de Petri, ou réseaux
|
||||
de processeurs évolutionnaires. Nous avons remarqué que tous ces
|
||||
modèles peuvent simuler plusieurs instructions d'une machine à
|
||||
registres en un seul pas. Autrement dit, ces instructions sont souvent
|
||||
trop élémentaires. Dans le but de définir un modèle proche aux
|
||||
machines à registres, mais qui utiliserait des instructions plus
|
||||
expressives, nous avons proposé les machines à registres généralisées
|
||||
({\em generalised register machines}). Une telle machine peut
|
||||
effectuer plusieurs incréments, décréments, ou tests si un registre
|
||||
est à zéro en une seule transition.
|
||||
|
||||
Les machines à registres habituelles peuvent être vues comme des
|
||||
machines à registres généralisées qui n'exécutent qu'une seule
|
||||
opération par transition. Dans une telle machine il est possible de
|
||||
réduire le nombre d'états en utilisant des transitions plus
|
||||
complexes. Dans ma thèse nous avons appliqué cette réduction pour
|
||||
construire des machines à registres universelles à 7 états seulement,
|
||||
cela en simulant les constructions présentées dans~\cite{Korec}.
|
||||
|
||||
\subsubsection{Systèmes de réécriture de multiensembles et réseaux de Petri}
|
||||
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
|
||||
réseaux de Petri avec des arcs inhibiteurs --- deux modèles qui sont
|
||||
fondamentalement similaires. En effet, un état (marquage) d'un réseau
|
||||
de Petri est décrit comme une fonction qui associe à chaque place le
|
||||
nombre de jetons qu'elle contient ; or le marquage est un
|
||||
multiensemble sur l'alphabet des symboles qui désignent les
|
||||
places. Les transitions de réseaux de Petri correspondent ainsi aux
|
||||
règles de réécriture de multiensembles.
|
||||
|
||||
Il a été montré que savoir si un marquage peut être atteint par un
|
||||
réseau de Petri donné est décidable~\cite{Mayr:1981}. La même
|
||||
affirmation est donc valable dans le cas des systèmes de réécriture de
|
||||
multiensembles simples. Plusieurs variations ont été proposées afin
|
||||
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
|
||||
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
|
||||
réécriture de multiensembles avec un ensemble de symboles qui ne
|
||||
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
|
||||
systèmes de réécriture de multiensembles avec des inhibiteurs sont
|
||||
Turing complets~\cite{BMVPR2002,Reinhardt08}, car ils peuvent simuler
|
||||
assez directement les machines à registres.
|
||||
|
||||
Dans ma thèse nous avons construit plusieurs réseaux de Petri avec des
|
||||
arcs inhibiteurs universels. Nous avons défini la taille d'un réseau
|
||||
comme étant le 4-uplet $(p,t,i,d)$ où $p$ est le nombre de places, $t$
|
||||
est le nombre de transitions, $i$ est le nombre d'arcs inhibiteur et
|
||||
$d$ et le nombre maximal d'arcs incidents à une transitions (le degré
|
||||
maximal). Nous nous sommes proposé de construire des réseaux de Petri
|
||||
universels tout en minimisant chacun de ces paramètres. Nous avons
|
||||
notamment décrit des réseaux universels avec quatre et cinq places
|
||||
uniquement et d'autres avec deux et trois arcs inhibiteurs (les
|
||||
chiffres varient selon l'encodage des entrées et des sorties). Il est
|
||||
remarquable que deux est le nombre minimal d'arcs inhibiteurs
|
||||
nécessaires pour atteindre la complétude computationnelle : les
|
||||
réseaux de Petri avec un seul arc inhibiteur ne sont pas Turing
|
||||
complets~\cite{Reinhardt08}.
|
||||
|
||||
Même si les résultats d'universalité présentés dans la dernière partie
|
||||
de ma thèse apparaissent sous la forme de réseaux de Petri, la
|
||||
correspondance directe avec les systèmes de réécriture de
|
||||
multiensembles permet de formuler immédiatement les mêmes résultats
|
||||
pour ceux-ci.
|
||||
|
||||
\begin{itemize}
|
||||
\item systèmes à membranes,
|
||||
\item systèmes à réactions,
|
||||
\item grammaires de tableaux.
|
||||
\end{itemize}
|
||||
|
||||
Les sujets de recherche que j'ai abordé sont le
|
||||
|
||||
travaux de thèse
|
||||
|
||||
travaux hors thèse
|
||||
|
||||
programmation
|
||||
|
||||
\printbibliography
|
||||
\end{refsection}
|
Loading…
Reference in a new issue