Date et lieu : le mardi à 11h, salle 3052, Sophie Germain

Responsable : Paul-André Melliès et Michele Pagani

Mardi 21 mars 2017 · 14h00 · Salle 3052

Jean-Bernard Stefani (INRIA) · Location graphs

This talk introduces location graphs, a new computational model for dynamic software architectures that supports sharing and encapsulation. The location graph framework draws on ideas developed in the last two decades around process calculi for distributed systems and dynamic services, as well as more informal ideas developed over the same period of time in software architecture and component-based software engineering. We present some results on location graph refinement and equivalence and discuss the relation of the location graph model with other formalisms.

Mardi 28 février 2017 · 11h00 · Salle 3052

Ran Chen 1) · Strongly Connected Components in graphs, formal proof of Tarjan1972 algorithm

There is a growing interest in programs proofs checked by computer. Proofs about programs are often very long and have to face a huge amount of cases due to the multiplicity of programs variables and the precise details of the programs. This is very frustrating since we would like to explain the proofs of correctness and publish them in scientific articles. However if one considers simple algorithms, we would expect to explain their proofs of correctness in the same way as we explain a mathematical proof for a non too complex theorem.

We present a human readable and rather intuitive formal proof for the classical Tarjan-1972 algorithms for finding strongly connected components in directed graphs. Tarjan’s algorithm consists in an efficient one-pass depth-first search traversal in graphs which traces the bases of strongly connected components. We describe the algorithm in a functional programming style with abstract values for vertices in graphs, with functions between vertices and their successors, and with data types such that lists (for representing immutable stacks) and sets. We use the Why3 system and the Why3-logic to express these proofs and fully check them by computer.

Mardi 24 janvier 2017 · 11h00 · Salle 3052

Arnaud Spiwack (Tweag I/O) · Retrofitting linear types

Type systems based on linear logic and their friends have proved that they are both capable of expressing a wealth of interesting abstractions. Among these the ability to mix garbage-collected and explicitly managed data in the same language. This is of prime interest for distributed computations that need to reduce latency induced by GC pauses: a smaller GC heap is a happier GC heap.

I had always had the belief that to add linear types to a language was a rather intrusive procedure and that a language with linear types would basically be an entirely new language. The Rust language is a case in point: it has a linear-like type system, but it's a very different language from your run-of-the-mill functional language.

This turns out not to be the case: this talk presents a way to extend a functional programming language. We are targeting Haskell but there is little specific to Haskell in this presentation. I will focus mostly on the type system and how it can be generalised: among other things the type system extends to dependent types.

Vendredi 13 janvier 2017 · 14h00 · Salle 3052

Tarmo Uustalu (Tallinn University of Technology) · Interaction morphisms

Interaction morphisms

Tarmo Uustalu, Tallinn U of Technology

I will propose interaction morphisms as a means to specify how an effectful computation is to be run, provided a state in a context. An interaction morphism of a monad T and a comonad D is a family of maps T X x D Y → X x Y natural in X and Y and subject to some equations. Interaction morphisms turn out to be a natural concept with a number of neat properties. In particular, interaction morphisms are the same as monoids in a certain monoidal category; interaction morphisms of T and D are in a bijective correspondence with carrier-preserving functors between the categories of coalgebras of D and stateful runners of T (monad morphisms from T to state monads); they are also in a bijective correspondence with monad morphisms from T to a monad induced in a certain way by D.

This is joint work with Shin-ya Katsumata (University of Kyoto).

Mardi 10 janvier 2017 · 11h00 · Salle 3052

Fanny He (Université de Bath, UK) · The atomic lambda-mu-calculus

The lambda-calculus studies the dynamics of computation, but the complexity of one computation path cannot be forecast, neither in time nor in space, and there is no direct control on the execution environment.

One approach for the former is to gain more control over duplication and deletion of terms, by introducing sharings of common subterms inside a lambda-term, similarly to optimal reduction graphs. This has been done by Gundersen, Heijltjes and Parigot, via the atomic lambda-calculus, a calculus extending the lambda-calculus with explicit sharings, and allowing duplications on individual constructors. It enjoys full-laziness, avoiding unnecessary duplications of constant expressions.

For the latter, an extension of the lambda-calculus linking classical formulas to control flow constructs via Curry-Howard correspondence, the lambda-mu-calculus, was developed by Parigot. New operators in the lambda-mu-calculus correspond to continuations, representing the remaining work in a program.

Can we combine sharing with control operators and thus obtain another extension of the lambda-calculus satisfying full-laziness and featuring control operators? A first challenge is to combine explicit sharings or substitutions with mu-reduction and substitution, and we introduce a right-associative application as in Saurin-Gaboardi's lambda-mu-calculus with streams to overcome this challenge. Another difficulty is to adapt the type system for lambda-mu with multiple conclusions, distinguishing one main conclusion (with a meta-disjunction connective), to a type system in which each rule can be applied to atoms (which corresponds to duplications on individual term constructors), and where no distinction is made between object and meta-level. I will present how to combine these two type systems in the simplest possible way.

I will present the atomic lambda-mu-calculus, which aims to naturally extend the two calculi presented above, giving the simplest type system combining and preserving their properties.

Mercredi 21 décembre 2016 · 11h00 · Salle 3052

Victoria Lebed (Trinity College, Dublin) · Que savent les tresses sur les tableaux de Young ?

Les tableaux de Young portent une multiplication associative, décrite par l'algorithme de Schensted. Le monoïde ainsi obtenu est appelé plaxique. Il joue un rôle fondamental dans de nombreuses applications combinatoires et algébriques. On montrera que cette multiplication sur les tableaux est entièrement déterminée par un tressage sur l'ensemble (bien plus simple !) des colonnes. Ici un tressage est une solution ensembliste de l'équation de Yang-Baxter. Notre tressage s'inscrit également dans le cadre de la réécriture. Comme application, on identifiera la cohomologie de Hochschild du monoïde plaxique, qui résiste à toutes les approches classiques, à la cohomologie tressée des tableaux-colonnes, beaucoup plus accessible. Toutes les notions et constructions seront rappelées.

Mardi 20 décembre 2016 · 11h00 · Salle 3052

Clovis Eberhart (LAMA, Chambéry) · Séquences justifiées et diagrammes de cordes : deux approches de la sémantique de jeux concurrents

Plusieurs modèles de sémantique de jeux concurrents ont émergé ces dernières années. Dans ce travail, on se concentre sur certaines de ces approches, qui ont donné des modèles de CCS, du pi-calcul et du lambda-calcul non-déterministe. Un point commun informel mais saillant entre ces approches est que les stratégies innocentes sont définies commes les faisceaux pour la topologie de Grothendieck où les parties sont recouvertes par leurs vues. On propose ici de tisser un lien formel entre deux de ces approches au niveau des parties et des stratégies.

Mardi 06 décembre 2016 · 11h00 · Salle 3052

Yann Régis-Gianas (IRIF) · Explaining Program Differences Using Oracles

Program differences are pervasive in software development, but most of the time they are represented as textual differences with no regards to the syntactic nature of programming languages or their semantics. Thus, they may be hard to read and often fail to convey insight on the changes on semantics. Furthermore, such low-level, unstructured presentations are hard to reason about.

We present a formal framework to characterize differences between deterministic programs in terms of their small-step semantics. This language-agnostic framework defines the notion of /difference languages/ in which /oracles/—programs that relate small-step executions of pairs of program written in a same language—can be written, reasoned about and composed.

We illustrate this framework by instantiating it on a toy imperative language and by presenting several /difference languages/ ranging from trivial equivalence-preserving syntactic transformations to characterized semantic differences. Through those examples, we will present the basis of our framework, show how to use it to relate syntactic changes with their effect on semantics, how one can abstract away from the small-step semantics presentation, and discuss the composability of oracles.

This is joint work with Thibaut Girka (IRIF - MERCE) and David Mentré (MERCE)

Mardi 15 novembre 2016 · 11h00 · Salle 3052

José Espírito Santo (University of Minho) · Call-by-name, call-by-value and intuitionistic logic

Call-by name (CBN) and call-by-value (CBV) have been defined as the dual solutions to a critical pair at the heart of cut-elimination in classical sequent calculus. When one moves to intuitionistic logic, this symmetric picture breaks, but what happens precisely? How are such definitions adapted to the intuitionistic case? How do the resulting calculi relate to the many other proposals for intuitionistic CBV and CBN calculi? And what does that break of duality say about intuitionistic logic? We find that proof-theory alone distills new CBV and CBN lambda-calculi which agree, in a technical sense, with the computational lambda-calculus and the ordinary lambda-calculus, respectively; but the former distilled calculus is contained in the latter - a vindication of Plotkin. This containment, in turn, rests on another asymmetry: a certain permutative/focalization conversion, named T, solves what remains of the classical critical pair in favor of CBN, while the symmetric solution with a certain CBV conversion Q does not exist. In this sense we may say intuitionistic logic enjoys a CBN bias. Full answers to the above questions require us to work simultaneously with sequent calculus and its equivalent bidirectional natural deduction. The former syntax is our starting point, where we track the (lost) symmetries and find the idea of permutative conversions; the latter syntax is the bridge towards more traditional programming notations. For instance, only in bidirectional natural deduction one sees that T eliminates the difference between “let” and explicit substitution, and only there one understands what calling paradigm corresponds to the superimposition of CBN and CBV.

Mardi 08 novembre 2016 · 11h00 · Salle 3052

Gustavo Petri (IRIF) · Safe and Scalable Cloud Programming

I will present AEON (Atomic Events and Ownership Networks), a programming model for safe and scalable cloud computing. AEON is based on the well-known paradigms of object-orientation and event-driven programming. AEON’s runtime system guarantees a linearizable and deadlock-free semantics for events that span across multiple objects and servers. Moreover, to achieve an economical and scalable solution, our runtime system provides seamless elasticity (the capability to adapt the resources usage to the actual workload), and exploits the object graph — the ownership network — to enhance parallelism. In this talk will concentrate on the safety aspects of the semantics of AEON, and show some experimental scalability results.

Mardi 18 octobre 2016 · 10h30 · Salle 3052

Pablo Barenbaum (Université de Buenos Aires - CONICET) · Finite Family Developments for the Linear Substitution Calculus

We prove a finite family developments theorem (FFD) for the calculus with explicit substitutions Linear Substitution Calculus (LSC). The notion of redex family is obtained by adapting Lévy labels to support the two distinctive features of LSC, namely its use of context rules that allow substitutions to act “at a distance” and also the set of equations modulo which it rewrites. We then apply FFD to prove a number of results for LSC including: an optimal reduction result, an algorithm for standardisation by selection, and normalisation of a linear call-by-need reduction strategy.

Mardi 18 octobre 2016 · 11h30 · Salle 3052

Masahito Hasegawa (Research Institute in Mathematical Sciences (RIMS)) · Traced star-autonomous categories are compact closed

For years we have been bothered by a small mistery on categorical models of Linear Logic (star-autonomous categories) and Geometry of Interaction (compact closed categories, typically arising from traced monoidal categories via Int-construction): is there a proper intermediate structure between star-autonomous categories and compact closed categories, that is, a traced star-autonomous category which is not compact closed? We settle this issue by showing that any traced star-autonomous category is actually compact closed.

We also discuss what would happen if we remove symmetry, thus the following question: is there a non-symmetric star-autonomous category with a (suitably generalized) trace which is not pivotal? Our recent attempt suggests that the answer is again no, but the situation is much subtler than the symmetric case.

The result on the symmetric case is a joint work with Tamas Hajgato.

Mardi 05 juillet 2016 · 11h00 · Salle 3052

Shane Mansfield (IRIF) · Empirical Models and Contextuality

I will begin by presenting a structural description of the kind of empirical data which arises in physical experiments, using the language of sheaf-theory. A potential feature of such data is contextuality (including as a special case non-locality) which can be neatly characterised in this setting. The feature does not arise in classical data, and a number of recent results indicate that it is the key feature in enabling quantum advantages or speedups over classical behaviour in a variety of computational scenarios. The sheaf-theoretic perspective exposes a qualitative hierarchy of strengths of contextuality and I will also mention recent efforts to quantify contextuality via linear programming. Finally I will report on work in progress on developing a resource theory for contextuality, beginning with an algebra of empirical models under whose operations contextuality is monotonically decreasing.

Mardi 07 juin 2016 · 11h00 · Salle 3052

Thomas Leventis (I2M Marseille) · Probabilistic lambda-theories

In the usual deterministic lambda-calculus the confluence of the unique computation rule, the beta-reduction, makes it easy to turn the reduction into an equality, the beta-equivalence. This idea to consider not computation but equalities on terms gives rise to the notion of lambda-theory. On the other hand the probabilistic lambda-calculus is usually treated only in terms of computation. In particular we know that we must impose a reduction strategy for the probabilistic choice if we want the calculus to make sense.

In this talk we will recover this notion of presentation through equalities in the probabilistic lambda-calculus. We will show how some usual notions can be translated in the probabilistic world. In particular we will define a notion of probabilistic Böhm tree, and show a separability result. This will implies that just like in the deterministic setting the Böhm tree equality is the same as the observational equivalence.

Mardi 07 juin 2016 · 10h00 · Salle 3052

Antoine Allioux (IRIF) · Krivine machine and Taylor expansion in a non-uniform setting

The Krivine machine is an abstract machine implementing the linear head reduction of $\lambda$-calculus. Ehrhard and Regnier gave a resource sensitive version returning the annotated form of a $\lambda$-term accounting for the resources used by the linear head reduction. These annotations take the form of terms in the resource $\lambda$-calculus.

We generalize this resource-driven Krivine machine to the case of the algebraic $\lambda$-calculus. The latter is an extension of the pure $\lambda$-calculus allowing for the linear combination of $\lambda$-terms with coefficients taken from a semiring. Our machine associates a $\lambda$-term $M$ and a resource annotation $t$ with a scalar $\alpha$ in the semiring describing some quantitative properties of the linear head reduction of $M$.

In the particular case of non-negative real numbers and of algebraic terms $M$ representing probability distributions, the coefficient $\alpha$ gives the probability that the linear head reduction actually uses exactly the resources annotated by $t$. In the general case, we prove that the coefficient $\alpha$ can be recovered from the coefficient of $t$ in the Taylor expansion of $M$ and from the normal form of $t$.

Mardi 17 mai 2016 · 11h00 · Salle 3052

Daniel Leivant (Indiana University Bloomington) · Syntax directed coproofs for Propositional Dynamic Logic

Propositional dynamic logic (PDL) is at the core of reasoning about dynamic systems. We present a syntax directed formalism for PDL, built on coproofs.

Contrary to proofs, which are generated inductively top-down, coproofs are generated coinductively bottom-up, and may have infinite branches. However, our inference rules allow this only via state-changes, and as a result are sound.

We also prove the semantic completeness of our formalism, and apply it to obtain new interpolation theorems for PDL.

Jeudi 07 avril 2016 · 16h00 · Salle 3052

Flavien Breuvart (INRIA Focus (Université de Bologna, IT)) · L'encodage probabiliste: vers une formalisation systématique des langages probabilistes, déterministiques et potentiellement divergents.

Il existe deux formalisations des langages/systèmes probabilistes: l'une est de considérer l'arbre des dérivations (avec branchements probabilistes), l'autre est de considérer des distributions de probabilités. Avoir accès à l'arbre de dérivation est pratique pour les preuves car on a accès à l'historique complet, mais lorsque l'arbre est infini, le formalisme est très lourd et peu explicite. La formulation à base de distributions est plus simple et donne des théorèmes élégants mais engendre des preuves très complexes (où il faut souvent retrouver l'historique du calcul). Dans cet exposé nous verrons qu'il est possible de récupérer le meilleur des deux mondes grâce à un théorème d'encodage probabilistique inspiré de la théorie catégorique des coalgèbres. Nous verrons qu'il s'agit d'un outil systématique qui, à l'instar de l'induction ou la coinduction, permet de structurer des preuves et des définitions complexes. Pour des raisons de temps, nous n'évoquerons que brièvement comment ce schéma de preuve nous permet de redéfinir une version probabiliste de notions usuelles telles que les types intersection probabilistes ou les candidats de réductibilité probabilistes.

Mardi 29 mars 2016 · 10h30 · Salle 3052

Andrew Polonsky (IRIF) · Interpreting infinite terms

Most standard models of the lambda calculus validate the principles of infinitary rewriting (which include identification of meaningless terms). For example, in Scott models, the interpretation of every fixed point combinator is equal to the limit (in the model) of interpretations of

\f.f(Ω), \f.f^2(Ω), \f.f^3(Ω), …, \f.f^n(Ω), ….

The infinite term \f.f(f(f…)) is the limit of the above sequence, and in the infinitary lambda calculus all fpcs reduce to this term, which is an infinitary normal form. It would seem natural to extend the interpretation function to cover infinitary terms as well, however, naive attempts to do this fail. The problem is already present in the first-order case: finite terms over a signature ∑ can be interpreted by means of the initial semantics – where the free algebra of terms admits a canonical homomorphism to any other ∑-algebra. However, the infinite terms are elements of the cofinal coalgebra, which universal property concerns maps INTO the algebra, rather than out of it. We are thus faced with a “koan”:

  • What does it mean to interpret infinite terms?*

While we shall not provide a (co)final solution to this koan, we will offer germs of some possible approaches, with the hope of starting a discussion that could follow this short talk.

1) Inria