Jeux de parité et types (co)inductifs

Luigi Santocanale

Proposition de stage 2003-2004

Titre du stage:
Jeux de parité et types (co)inductifs

Mots-clés:
Types inductifs et coinductifs, calcul interactif, jeux de parité, sémantique des langages de programmation.

Encadrant:
Santocanale Luigi et Roberto Amadio (30%, Professeur).

Fonction:
Maître de Conférences à l'Université de Provence.

Laboratoire:
Laboratoire d'Informatique Fondamentale de Marseille (LIF), Centre de Mathématiques et Informatique, 39, rue Joliot-Curie - F-13453 Marseille Cedex 13

Téléphone:
+33 (0)4 91 11 35 74

Télécopie:
+33 (0)4 72 91 11 36 02

Mél:
Luigi.Santocanale@cmi.univ-mrs.fr.

Objectifs

Le calcul des preuves circulaires est un petit langage pour décrire des canaux de communication asynchrones qui s'appuie sur la théorie des types inductifs et coinductifs et sur la théorie des jeux de parité. Nous proposons que le stagiaire implémente ce calcul et l'algorithme de traduction vers un langage fonctionnel arbitraire supportant les types coinductifs.

Description détaillée du travail

Tous les langages de programmation fonctionnels supportent les types inductifs. Ces types, comme par exemple les nombres naturels et les listes, nous donnent la possibilité d'écrire des programmes par induction structurale; comme résultat, ces langages offrent une bonne correspondance entre pratique mathématique (aspect déclarative) et programmation. Un point faible des langages fonctionnels est la gestion des calculs interactifs, un exemple étant la gestion des interactions avec l'utilisateur (entrées/sorties sur la console); une caractéristique des calculs interactifs est leurs nature possiblement infinie. La théorie des types coinductifs -- qui étudie d'un point de vue logique certaines collections d'objets infinis -- offre des possibles solutions: par exemple, une suite infinie de caractères est mieux traitée par un ordinateur comme un flot, plutôt que comme un objet abstrait tel qu'une fonction dont les arguments sont des nombres naturels. Afin de rendre le traitement des calculs interactifs plus cohérent d'un point de vue théorique, on peut étendre un langage fonctionnel avec le support des types coinductifs.

Le calcul des preuves circulaires [2] a son origine dans la théorie mathématique des types inductifs et coinductifs et dans la théorie des jeux de parité, [1, §4] et [3]. On peut considérer ce calcul comme un petit langage de programmation dont le but est décrire des stratégies de communication sur deux jeux de parité; en particulier on peut s'en servir pour décrire des stratégies gagnantes. Une stratégie de communication sert à faire jouer entre eux deux joueurs localisés sur des tableaux éloignés. Si l'on considère un jeu à deux joueurs comme un canal de communication synchrone, alors le calcul des preuves circulaires devient un outil pour programmer des canaux de communication asynchrones à partir de la description de deux canaux de communication synchrones. Étant donnée la nature des situations qu'on veut programmer, le caractère de ce petit langage de programmation est impératif. Dans notre travail cité nos avons montré une traduction de ce langage vers un langage fonctionnel quelconque supportant les produits, les sommes, le types inductifs et coinductifs. Cette traduction a été montrée correcte par rapport à la sémantique usuelle de ces types.

Nous proposons que le stagiaire :

References

[1]
A. Arnold and D. Niwinski. Rudiments of µ-calculus, volume 146 of Studies in Logic and the Foundations of Mathematics. North-Holland Publishing Co., Amsterdam, 2001.

[2]
Luigi Santocanale. A calculus of circular proofs and its categorical semantics. In Foundations of software science and computation structures (Grenoble, 2002), volume 2303 of Lecture Notes in Comput. Sci., pages 357--371. Springer, Berlin, 2002.

[3]
Luigi Santocanale. µ-bicomplete categories and parity games. Theor. Inform. Appl., 36(2):195--227, 2002. Fixed points in computer science (Florence, 2001).

Commentaires

Aucun pré-requis spécial. Perspectives de continuation en thèse.


This document was translated from LATEX by HEVEA.