Etant donné un vecteur non nul n de R^d et deux réels mu et w, le plan discret de vecteur normal n, de décalage mu et d'épaisseur omega, noté P(n,mu,omega), tel que défini par J.-P. réveillès, est l'ensemble des points de Z^d satisfaisant la double inégalité 0 <= <n,x> + mu < omega où <.,.> désigne le produit scalaire usuel dans R^d. Pour k dans {0,...d-1}, deux points distincts x et y de Z^d sont des k-voisins s'ils ont au moins k coordonnées communes et leurs coordonnées diffèrent d'au plus 1. Lorsque x et y sont représentés par des cubes unités centrés sur les coordonnées entières, ces cubes partagent alors une facette de dimension au moins k. Une partie S de Z^d est k-connexe, si pour toute paire de points x et y dans S, il existe dans S un chemin x=x_1,...,x_q=y formé de k-voisins. Le problème qui nous intéresse est, étant donnés un vecteur normal n et un décalage mu, de déterminer l'ensemble des valeurs de l'épaisseur omega pour lesquelles le plan P(n,mu,omega) est k-connexe. Nous nous intéressons plus particulièrement au cas où k=d-1, c'est à dire à la connexité par face. Cet ensemble est alors un intervalle infini à droite dont la borne inférieure est appelée épaisseur de connexité de n avec décalage mu et notée Omega(n,mu). Cette épaisseur peut être calculée grâce à un algorithme simple connu sous le nom d'algorithme totalement soustractif (Fully Subtractive Algorithm). Par définition, le plan P(n,mu,omega) est non connexe si omega < Omega(n,mu) et connexe si omega > Omega(n,mu). La question qui se pose alors est celle de la connexité de P(n,mu,Omega(n,mu)). Ce plan est presque toujours non connexe mais peut être connexe si la suite de vecteurs calculée par l'algorithme a une certaine propriété déterminée par Kraaikamp et Meester et qui n'est satisfaite que pour les vecteurs appartenant à un certain fractal de mesure nulle. La question de la connexité de P(n,mu,Omega(n,mu)) lorsque n appartient à ce fractal a été résolue dans un cas particulier en collaboration avec V. Berthé, D. Jamet et X. Provençal. Nous résolvons ici le cas général. Le déroulement de l'algorithme peut être décrit par un mot infini Delta sur l'alphabet {1,...,d}. A partir de ce mot, nous construisons une suite de sous-ensembles de Z^d qui, entre autres propriétés, sont connexes. Nous montrons que la limite de cette suite, appelée clôture palindromique géométrique itérée de Delta, est en fait P(n,0,Omega(n,0)) prouvant ainsi que ce plan est connexe. Nous exhibons également certaines valeurs particulières du décalage mu pour lesquelles P(n,mu,Omega(n,mu)) est non connexe. Le cas général lorsque mu est quelconque reste une question ouverte. (E. Domenjoud & L. Vuillon)
My research focuses on distributed programming models, more precisely using objects and components. In this area, I provided tools easing the programming of large-scale distributed applications and verifying their correct behaviour. To facilitate the programming of distributed applications, I contributed to the design and the development of languages with a high level of abstraction. My work aims to provide a strong model of programming languages, libraries, and runtime environments to the developer, and to guarantee the safe behaviour of distributed applications. In the OASIS team, we contributed to the definition of a distributed component model - the GCM (Grid Component Model) -, to its formalisation, and to its use for programming adaptive or autonomous components. After a short introduction to the principles of distributed computing and to the use of formal methods in this area, this talk will provide an overview of those aspects focusing on the programming models. I will conclude with a focus on a couple of my current research topics that include distributed algorithms for peer-to-peer systems, and programming on multicore and distributed architecture.
Dependant Linear PCF (dlPCF) was introduced by Dal Lago and Gaboardi as a type system characterising the complexity of PCF programs. It is parametrised by a an equational program, which is used to express some complexity annotations for types. This enables a modular complexity analysis, and the main strength of the system is to be relatively complete: any terminating PCF program is typable in dlPCF (and its complexity is thus determined) assuming that the equational program is expressive enough. We have designed a type inference algorithm for this system: given a PCF program, it computes its type in dlPCF (and thus a complexity bound for the program) together with a set of proof obligations that ensures the correctness of the type, following the same scenario as the computation of weakest preconditions in Hoare logic. Checking formally the proof obligations generated by the type checker then amounts to a formal proof that the complexity bound is correct. In this talk I will explain how the type system dlPCF can be turned into a tool for formal certification of the complexity of functional programs.
À venir
A series of recent papers introduces a coalgebraic semantics for logic programming, where the behavior of a goal is represented by a parallel model of computation called coinductive tree. This semantics fails to be compositional, in the sense that the coalgebra formalizing such behavior does not commute with the substitutions that may apply to a goal. We suggest that this is an instance of a more general phenomenon, occurring in the setting of interactive systems (in particular, nominal process calculi), when one tries to model their semantics with coalgebrae on presheaves. In those cases, compositionality can be obtained through saturation. We apply the same approach to logic programming: the resulting semantics is compositional and enjoys an elegant formulation in terms of coalgebrae on presheaves and their right Kan extensions.
Dans un travail antérieur avec Damien Pous, on définit une sémantique pour CCS, qui peut être vue à la fois comme une sémantique de jeux non-déterministe et comme une sémantique de préfaisceaux innocents. Les résultats d'adéquation obtenus pour cette sémantique reposent sur le fait que les parties du jeu forment une catégorie fibrée, au sens de Grothendieck, au-dessus des positions. On s'attaque ici à poursuivre notre approche dans le cadre du pi-calcul. Or, s'il est facile de concevoir un jeu pour pi dans l'esprit de celui pour CCS, il est beaucoup moins évident que les parties sont fibrées au-dessus des positions. On montrera qu'elles le sont, en utilisant un outil catégorique bien connu: les systèmes de factorisation.
Il est en général indécidable de tester si une définition récursive est bien fondée, mais il existe de nombreux tests pour décider des conditions suffisantes pour la bonne fondation. Le principe du ``size-change'' de A. ben Amram, N.D. Jones et C.S. Lee est particulièrement simple (il s'agit simplement d'examiner certaines boucles dans le graphe d'appels des fonctions récursives), élégant (il repose sur le théorème de Ramsey) et puissant. C'est ce principe qui a été étendu et implanté dans le language PML. Les extensions vont dans deux directions : - autoriser la taille des arguments à augmenter localement, - utiliser la structure du langage (constructeurs / filtrage). Un point important est que ces extensions ne rendent pas le test plus compliqué à implanter.
In a recent paper (Girard 2011b), Girard uses the geometry of interaction in the hyperfinite factor (Girard 2011a) in an innovative way to characterize complexity classes. The purpose of this paper is two-fold: to give a detailed explanation of both the choices and the motivations of Girard’s definitions, and – since Girard’s paper skips over some non-trivial details and only sketches one half of the proof – to provide a complete proof that co-NL can be characterized by an action of the group of finite permutations. We introduce as a technical tool the non-deterministic pointer machine, a concrete model that computes the algorithms represented in this setting.
À venir
Cellular Automata can be characterized as the translation-invariant continuous functions, where continuity is with respect to a certain distance over the set of configurations. This distance, and its properties, easily extend from grids to Cayley graphs. As a consequence, Cellular Automata also extend from grids to Cayley graphs. Cayley graphs have a number of useful features: the ability to graphically represent finitely generated group elements and their equality; to name all vertices relative to a point; the fact that they have a well-defined notion of translation, and that they can be endowed with such a compact metric. But they are very regular. We propose a notion of graph associated to a language, which conserves or generalizes these features. These associated graphs can be arbitrary, although of a bounded degree. We extend Cellular Automata to these Generalized Cayley graphs, so that they define a local dynamics over time-varying graphs.
Dans le cadre de la réalisabilité classique telle qu'elle est introduite par Krivine, les réalisateurs |A| d'une formule A peuvent être vus comme des défenseurs de la formule face à une pile choisie parmi l'ensemble ||A|| de ses adversaires. Dans la continuité de cette interprétation, Krivine explique comment une formule arithmétique (∃xn, ∀yn, ... ∃x1, ∀y1 f(x, y)=0 ) peut être vue comme un jeu entre deux joueurs (∃ et ∀), un réalisateur étant alors une stratégie gagnante pour le jeu correspondant. Dans sa thèse, Guillermo montre que tout réalisateur universel est bien un stratégie gagnante. On montre ici que la réciproque est vraie : une stratégie gagnante est aussi un réalisateur universel. On s'intéresse ensuite à la relativisation des formules à différents types de données (et l'on montre qu'il existe dans le plus dur des jeux une stratégie gagnante valable pour toute formule vraie) et au lien entre formules d'atome f(x,y)=0 et f(x,y)<>0.
Les automates cellulaires probabilistes ou non-déterministes sont souvent étudiés à travers des exemples ou aspects particuliers (alpha-asynchronisme, automates bruités, transitions locales probabilistes, etc). Nous proposons au contraire de les formaliser dans un modèle général qui se prête à une étude systématique. Partant de là nous abordons deux problématiques importantes largement développées dans la théorie des automates cellulaires déterministes : les simulations et l'universalité intrinsèque d'une part, la décidabilité des propriétés globales en fonction des descriptions locales d'autre part.
En théorie des catégories, une fibration représente une forme d'indexation d'une catégorie par une autre. On rappellera comment une telle structure peut être utilisée pour modéliser une logique (représentée par la catégorie indexée) au dessus d'une théorie des types (représentée par la catégorie index). On portera alors notre attention sur les types inductifs et coinductifs et comment capturer leurs schémas d'induction et de coinduction respectif dans les fibrations.
We introduce bisimulation up to congruence'' as a technique for proving language equivalence of non-deterministic finite automata. Exploiting this technique, we devise an optimisation of the classical algorithm by Hopcroft and Karp which, as we show, is exploiting a weaker
bisimulation up to equivalence'' technique. The resulting algorithm can be exponentially faster than the recently introduced ``antichain algorithms''.
Les catégories à trace ont été utilisées dans le domaine de la sémantique dénotationnelle (en logique comme en informatique) pour modéliser des situations de rétroaction raisonnables''. La construction G(.) permet, à partir d'une catégorie à trace, d'obtenir une nouvelle catégorie dont la composition peut être vue comme une
rétroaction parallèle''. Les machines synchrones'' ont été utilisées pour donner une sémantique des langages de programmation synchrones (Lustre, Esterel...) en termes d'automates. Dans ces sémantiques, la mise en parallèle de deux programmes est modélisée par une construction appelée
produit synchrone''. On verra que les machines synchrones peuvent être vues comme une catégorie à trace S et que le produit synchrone de deux machines correspond à leur composition dans G(S).
Le système de types input/output induit du sous-typage dans le pi-calcul. De manière un peu surprenante, le sous-typage se prête mal à une adaptation à des calculs proches (le calcul des fusions, le pi-calcul à mobilité interne). On construit une modification du calcul des fusions dans laquelle le mécanisme du sous-typage s'applique, ce qui permet d'en éclairer certains aspects.
Seely’s paper Locally cartesian closed categories and type theory contains a well-known result in categorical type theory: that the category of locally cartesian closed categories is equivalent to the category of Martin-Löf type theories with Π, Σ, and extensional identity types. However, Seely’s proof relies on the problematic assumption that substitution in types can be interpreted by pullbacks. Here we prove a corrected version of Seely’s theorem: that the Bénabou-Hofmann interpretation of Martin-Löf type theory in locally cartesian closed categories yields a biequivalence of 2-categories. To facilitate the technical development we employ categories with families as a substitute for syntactic Martin-Löf type theories. As a second result we prove that if we remove Π-types the resulting categories with families are biequivalent to left exact categories.
It is well known that the real numbers arise from the metric completion of the rational numbers, with the metric induced by the usual absolute value. We seek a computational version of this phenomenon, with the idea that the role of the rationals should be played by the affine lambda-calculus, whose dynamics is finitary; the full lambda-calculus should then appear as a suitable metric completion of the affine lambda-calculus. We propose a technical realization of this idea: we introduce an affine lambda-calculus, based on a fragment of intuitionistic multiplicative linear logic; the calculus is endowed with a notion of distance making the set of terms an incomplete metric space; we show that the completion of this space yields an infinitary affine lambda-calculus, whose quotient under a suitable partial equivalence relation is exactly the full (non-affine) lambda-calculus. We also show how this construction brings interesting insights on some standard rewriting properties of the lambda-calculus (finite developments, confluence, standardization, head normalization and solvability).
Introduced as symmetric types for pi-processes, session types have been developed into a large theory for verification of message-passing programs. Their main principle is as follows: a global type describing the expected interactions inside a network is projected into several local types: if every agent abides to its local type, the whole network abides to the global specification. I will present the Multiparty Session Types theory through recent developments: full-abstract embedding into the pi-calculus, nested protocols, automatic monitor generation, session types with multisession assertions.
On regardera les programmes que l'on peut extraire des preuves du théorème de Ramsey infini. On ira jusqu'à extraire un programme SML pour le ``happy ending problem'', qui trouve P sommets d'un polyogone convexe à partir de N points du plan si N est assez grand (http://fr.wikipedia.org/wiki/Happy_Ending_problem). On regardera aussi le programme que donne la preuve de Ramsey par l'ultrafiltre par rapport à la preuve classique. Enfin, on se posera des questions sur les liens possibles entre la compléxité des programmes liés à Ramsey et des bornes sur la fonction de Ramsey.