Prochain séminaire :

Résumé :(Masquer les résumés)
An Asynchronous Soundness Theorem for Concurrent Separation Logic. Concurrent separation logic (CSL) is a specification logic for concurrent imperative programs with shared memory and locks. We develop a concurrent and interactive account of the logic inspired by asynchronous game semantics. To every program C, we associate a pair of asynchronous transition systems ⟦C⟧S and ⟦C⟧L which describe the operational behavior of the Code when confronted to its Environment (or Frame) – both at the level of machine states (S) and of machine instructions and locks (L). We then establish that every derivation tree π of a judgment Γ⊢{P}C{Q} defines a winning and asynchronous strategy ⟦π⟧Sep with respect to both asynchronous semantics ⟦C⟧S and ⟦C⟧L. From this, we deduce an asynchronous soundness theorem for CSL, which states that the canonical map ℒ:⟦C⟧S→⟦C⟧L, from the stateful semantics ⟦C⟧S to the stateless semantics ⟦C⟧L satisfies a basic fibrational property. We advocate that this provides a clean and conceptual explanation for the usual soundness theorem of CSL, including the absence of data races. This is joint work with Paul-André Melliès. Organization of the talk: In a first part, I will give a high level view of our semantics and of the soundness theorem, essentially as it appeared in our previous paper. In a second part, I will talk in more details about our new semantics of CSL, which has a more algebraic flavor (work in progress).

Année 2018

Résumé :(Masquer les résumés)
Guarded recursion has emerged as a natural paradigm for programming with infinite data structures in type theory and high-assurance functional languages. In the first part of this talk, I will present some intuitions behind guarded recursion, using programming examples. In a second part, I will discuss ongoing work on a typed lambda-calculus equipped with rich facilities for defining and manipulating guarded recursive types.

Résumé :(Masquer les résumés)
An Asynchronous Soundness Theorem for Concurrent Separation Logic. Concurrent separation logic (CSL) is a specification logic for concurrent imperative programs with shared memory and locks. We develop a concurrent and interactive account of the logic inspired by asynchronous game semantics. To every program C, we associate a pair of asynchronous transition systems ⟦C⟧S and ⟦C⟧L which describe the operational behavior of the Code when confronted to its Environment (or Frame) – both at the level of machine states (S) and of machine instructions and locks (L). We then establish that every derivation tree π of a judgment Γ⊢{P}C{Q} defines a winning and asynchronous strategy ⟦π⟧Sep with respect to both asynchronous semantics ⟦C⟧S and ⟦C⟧L. From this, we deduce an asynchronous soundness theorem for CSL, which states that the canonical map ℒ:⟦C⟧S→⟦C⟧L, from the stateful semantics ⟦C⟧S to the stateless semantics ⟦C⟧L satisfies a basic fibrational property. We advocate that this provides a clean and conceptual explanation for the usual soundness theorem of CSL, including the absence of data races. This is joint work with Paul-André Melliès. Organization of the talk: In a first part, I will give a high level view of our semantics and of the soundness theorem, essentially as it appeared in our previous paper. In a second part, I will talk in more details about our new semantics of CSL, which has a more algebraic flavor (work in progress).

Résumé :(Masquer les résumés)
Realizability and parametricity are two well-known approaches to the semantics of System F, the architectural language for polymorphism. Many well-known realizability semantics can be recast in a simple topological form as induced by closure operators over sets of lambda-terms. This allows to generalize some completeness results known in the literature to a wide class of semantics (including Krivine's saturated sets and several variants of Girard's reducibility candidates), and to relate realizability with parametricity and dinaturality, an approach to parametricity arising from the functorial semantics of polymorphism. Our main result is that for a general class of realizability semantics (those which satisfy a particular topological property) one can prove a ``parametricity theorem'' stating that closed realizers are parametric and a ``dinaturality theorem'' stating that closed realizers of positive types are dinatural. We compare our results with Wadler's approach which sees realizability and parametricity as some sort of adjoint functors. Finally, we briefly discuss the case of Girard's original definition of reducibility candidates, whose ``not trivial and somehow mysterious'' [Riba 2007] structure does not fit yet within our approach.

Résumé :(Masquer les résumés)
Finding lower bounds in complexity theory has proven to be an extremely difficult task. We analyze three proofs of lower bounds that use heavy techniques from algebraic geometry through the lense of dynamical systems. Interpreting programs as graphings – generalizations of dynamical systems that model Girard's Geometry of Interaction, we show that the three proofs share the same structure and use algebraic geometry to give a bound on the topological entropy of the system representing the program. This work, joint with Thomas Seiller, aims at proposing Geometry of Interaction derived methods to study dynamical properties of models of computation beyond Curry-Howard.

Résumé :(Masquer les résumés)
In this talk, I present a framework for recursive proofs of coinductive predicates, which are defined via functor liftings to fibrations. This framework is based on the so-called later modality and Löb-induction. Intuitively, the role of the later modality is thereby to control the use of coinduction hypotheses. Since the framework works on certain fibrations, it can be instantiated in very diverse situation like, for instance, set-based predicates and relations, quantitative predicates and relations, syntactic first-order logic, or dependent type theory. Apart from showing the underlying technical constructions of the framework, I will demonstrate how it can be used in those examples. Moreover, I will briefly talk about some recent progress, in collaboration with Katya Komendantskaya and Yue Li, in the direction of automatic proof search for this framework.

Résumé :(Masquer les résumés)
Structural operational semantics is a family of syntactic formats for specifying the operational semantics of programming languages, in the form of a labelled transition system. Fiore and his collaborators have proposed an abstract framework for structural operational semantics based on bialgebras, in which they managed to prove that bisimilarity is a congruence. However, their framework does not scale well to languages with variable binding. We give an abstract account of structural operational semantics based on Weber's parametric right adjoint monads, which encompasses variable binding. On the example of pi-calculus, the key idea is that, while Fiore models the syntax through a monad on a certain presheaf category, we use a subtly different presheaf category inspired by our previous work on sheaf models for concurrent languages. The crucial consequence is that the relevant monad is a parametric right adjoint. This yields a very simple proof of congruence of bisimilarity.

Résumé :(Masquer les résumés)
The ring of multivariate polynomials F[x_1, x_2, ..., x_n] is a unique factorization domain. We consider the following problem: ``Is there an 'efficient' algorithm that outputs a non-trivial factor of the given input polynomial''. This question has applications in algebraic complexity, for example, in proving the connection between polynomial identity testing (PIT) and lower bounds. In this talk, we will consider the closure of various classes of polynomial families under factorization. [Kaltofen86-90] studied this problem for VP. A slew of work in the recent years has brought it back into the limelight: [DSY09] studied circuits of small depth and factors of a special form, [Oliveria16] studied formulas of small depth, [DSS18] studied ABPs and formulas, [CKS18] studied the polynomial class VNP. We will take a look at these algorithms and state some open problems in the area.

Résumé :(Masquer les résumés)
In this talk we will discuss a link between geometry of continued fractions and global relations for singularities of complex projective toric surfaces. The results are based on recent development of lattice trigonometric functions that are invariant with respect to Aff(2,Z)-group action.

Résumé :(Masquer les résumés)
Implicative algebras, developed by Alexandre Miquel, are very simple algebraic structures generalizing at the same time complete Boolean algebras and Krivine realizability algebras, in such a way that they allow to express in a same setting the theory of forcing (in the sense of Cohen) and the theory of classical realizability (in the sense of Krivine). Besides, they have the nice feature of providing a common framework for the interpretation both of types and programs. The main default of these structures is that they are deeply oriented towards the λ-calculus, and that they only allows to faithfully interpret languages in call-by-name. To remediate the situation, we introduce two variants of implicative algebras: disjunctive algebras, centered on the “par” (⅋) connective of linear logic (but in a non-linear framework) and naturally adapted to languages in call-by-name; and conjunctives algebras, centered on the “tensor” (⊗) connective of linear logic and adapted to languages in call-by-value. Amongst other properties, we will see that disjunctive algebras are particular cases of implicative algebras and that conjunctive algebras can be obtained from disjunctive algebras (by reversing the underlying order).

Résumé :(Masquer les résumés)
A Majority Automata consists of applying over the vertices of a undirected graph (with states 0’s and 1’s) an operator that chooses the most represented state among the neighbors of a vertex. This rule is applied in parallel over all the nodes of the graph. When the graph is a regular lattice ( in one or more dimensions) it is called the Majority Cellular Automata. In this seminar we will study the computational complexity of the following prediction problem: PRED: Given an initial configuration and a specific site initially at state a ( 0 or 1), is there a time step T≥1 such that this site changes state? The complexity of PRED is characterized by the possibility to find an algorithm that give the answer faster than the running of the automata simulation in a serial computer. More precisely, if we are able to determine an algorithm running in a parallel computer in polylog time (class NC). Otherwise, the problem may be P-Complete ( one of the most dificult in class P of Polynomial problems) or … worse. We will applied this kind of results to the discrete Schelling’s segregation model. Also we will present the Sakoda’s Social Discret model.

Résumé :(Masquer les résumés)
Complexity theory helps us predict and control resources, usually time and space, consumed by programs. Static analysis on specific syntactic criterion allows us to categorize some programs. A common approach is to observe the program’s data’s behavior. For instance, the detection of non-size-increasing programs is based on a simple principle : counting memory allocation and deallocation, particularly in loops. This way, we can detect programs which compute within a constant amount of space. This method can easily be expressed as property on control flow graphs. Because analyses on data's behaviour are syntactic, they can be done at compile time. Because they are only static, those analyses are not always computable or easily computable and approximations need are needed. ``Size-Change Principle'' from C. S. Lee, N. D. Jones et A. M. Ben-Amram presented a method to predict termination by observing resources evolution and a lot of research came from this theory. Until now, these implicit complexity theories were essentially applied on more or less toy languages. This thesis applies implicit computational complexity methods into ``real life'' programs by manipulating intermediate representation languages in compilers. This give an accurate idea of the actual expressivity of these analyses and show that implicit computational complexity and compilers communities can fuel each other fruitfully. As we show in this thesis, the methods developed are quite generals and open the way to several new applications.