The GRIF is the fundamental computer science research group at the Université de Sherbrooke. Our members work at the intersection of theoretical computer science and its applications in bioinformatics, formal methods and cybersecurity, and quantum computing.

Members

Professors

Postdocs

PhD students

Master's students

Undergraduate interns

Research areas

The research activities of the GRIF cover the following topics:

Courses

Courses of the Université de Sherbroke related to the fields of the GRIF and taught (mostly in French) by its members:

Talks

Show more
  • 2023-11-29. François Ladouceur: Protocoles de population avec couleurs (cs club)

    Le modèle des protocoles de population est bien établi dans le monde du calcul distribué. Il permet à des agents mobiles anonymes, comme les éléments d’un réseau chimique, de calculer des prédicats relatifs à leur configuration initiale. En particulier, le modèle, tel qu’il a été introduit en 2004 par Angluin et al., a été directement lié à l’arithmétique de Presburger. Il a ensuite été largement étudié et de nombreuses variantes ont été définies.

    Dans cet exposé, on introduira les notions de base des protocoles et on décrira une nouvelle variante munie d’un domaine infini de données pour ses agents. On y présentera des exemples de protocoles ainsi que quelques grandes questions liées au modèle.

  • 2023-06-22. Bertrand Marchand: Graph widths for exact algorithms in structural RNA bioinformatics (seminar)

    RNA molecules consist of chains of individual blocks called nucleotides (A, U, G, C), mostly famous for being intermediate information carriers in protein synthesis (messenger RNA). Yet, they also perform a wide variety of other functions in biological systems, from aspects of protein synthesis to gene regulation and chemical reaction catalysis. These functions critically depend on the 3D structures adopted by these molecules, i.e., the way nucleotides pair up in complex folding conformations. Unsurprisingly, several natural computational problems involving this structure therefore need to be solved on a daily basis by bioinformaticians. Examples include folding (what is the preferred structure of an RNA sequence?), structure reconfiguration (is there a feasible reconfiguration path between two structures?) or structure-sequence alignment (are a given structure and sequence a good match ?). These problems are typically computationally hard, especially when going towards realistic biological models.

    This talk will focus on selected instances of such landmark problems, and on current attempts to tackle them with exact parameterized algorithmics. A particular focus will be given to graph algorithms, and graph width parameters. Examples of graph problems emerging from this angle include minimum edge deletion towards a target treewidth value [1], or the computation of directed pathwidth for a particular geometric subset of directed graphs [2].

    References:

    [1] B. Marchand, Y. Ponty, L. Bulteau. Tree Diet: Reducing the Treewidth to Unlock FPT Algorithms in RNA Bioinformatics. Algorithms for Molecular Biology 2022.

    [2] L. Bulteau, B. Marchand, Y. Ponty. A new parameterization for independent set reconfiguration and applications to RNA kinetics. IPEC 2021.

    [3] B. Marchand, S. Will, S. Berkemer, L.Bulteau, Y.Ponty. Automated design of dynamic programming schemes for RNA folding with pseudoknots. WABI 2022

  • 2021-03-19. Philip Offtermatt: Directed reachability for infinite-state systems (cs club)
  • 2021-01-19. Andres Pastrana: Massive parallelization of branching algorithms (cs club)
    Optimization and search problems are often NP-complete, and brute-force techniques must typically be implemented to find exact solutions. Problems such as clustering genes in bioinformatics or finding optimal routes in delivery networks can be solved in exponential-time using recursive branching strategies. Nevertheless, these algorithms become impractical to solve above certain instance sizes due to the large number of scenarios that need to be explored. Thus, our challenge is to build a fully generic library in C++ to speed up recursive search algorithms with parallelism, which is a non-trivial task. In order to improve previous attempts to parallelize such branching algorithms, we developed a novel load balancing strategy that will guarantee to maintain the nearest to 100% utilization of all computer processors whether a single machine is used or a supercomputer regardless of the cluster’s topology.
  • 2020-03-11. Philip Offtermatt: Approaching safety for parameterized systems using view abstraction (seminar)
    Parameterized systems are models for interactions between an arbitrary number of interaction partners. While for each fixed number of participants, the corresponding instance of the system is finite-state, there are infinitely many instances. I will present a method that is capable of proving correctness for all instances of such a system. This method is called view abstraction, and it relies on an abstraction function which extracts patterns, called views, from the states of the system. These patterns are used to compute an overapproximation of the reachable states of the system. The accuracy of the overapproximation is governed by a parameter, and when it becomes accurate enough, the system can be proven safe without examining the whole state space. I will present my implementation of this method, and as a case-study present a prototype implementation of manual tool-assisted generation of population protocols that makes use of this method to give feedback to the user.
  • 2019-12-05. Philippe Lamontagne: Calcul sûr biparti à l'ère de l'information quantique (seminar)

    La mécanique quantique bouleverse le domaine de la cryptographie. D’un côté, l’algorithme de Shor menace l’infrastructure cryptographique à clé publique en place depuis des décennies. De l’autre, elle permet aussi l’établissement d’une clé secrète dont la sécurité ne repose sur aucune hypothèse, excepté les lois de la physique quantique.

    Dans cette présentation, nous explorerons les possibilités plus méconnues de la cryptographie quantique: celles qui s’appliquent au calcul sûr biparti. Dans ce contexte, deux protagonistes veulent calculer une fonction commune de leurs données privées sans dévoiler celles-ci. Nous verrons dans cette présentation que la mécanique quantique permet ici aussi des tâches impossibles classiquement.

  • 2019-11-15. Daniel Amyot: Forage de modèles de processus: amélioration du prétraitement et intégration de buts (seminar)
    Le forage de modèles de processus (process mining) permet de générer automatiquement des processus, décrits dans des notations telles que BPMN ou les réseaux de Petri, à partir d’une liste d’événements générés par des systèmes informatiques. Les techniques de forage contemporaines sont principalement axées sur les activités et prennent rarement en compte les buts (souvent contradictoires) des parties prenantes. La considération explicit des buts, souvent utilisés en ingénierie des exigences, peut cependant améliorer la rationalité et l’interprétabilité des modèles extraits, et permettre de générer de meilleures opportunités pour satisfaire les parties prenantes. Cette présentation va d’abord souligner certains défis émergents du forage de processus, avec un attention particulière portée aux applications infonuagiques. Certains de ces défis seront adressés à l’aide i) d’un prétraitement amélioré de listes d’événements complexes à l’aide d’un nouvel API et d’une implémentation en R, et ii) d’une nouvelle méthode orientée-but de découverte de modèles de processus (GoPED), qui aligne les modèles découverts et les objectifs des parties prenantes en filtrant les événements qui ne satisfont pas les buts prescrits. GoPED définit trois types de critères (supportés par différents algorithmes) qui suggèrent les niveaux de satisfaction souhaités du point de vue (i) des cas observés, (ii) des objectifs et (iii) de l’organisation. Quelques exemples reliés au domaine de la santé seront utilisés pour illustrer les avantages de l’API de prétraitement proposé et de GoPED.
  • 2019-10-03. Alain Finkel: Verification of flat FIFO systems (seminar)

    The decidability and complexity of reachability problems and model-checking for flat counter systems have been explored in detail. However, only few results are known for flat FIFO systems, only in some particular cases (a single loop or a single bounded expression).

    We prove, by establishing reductions between properties, and by reducing SAT to a subset of these properties that many verification problems like reachability, non-termination, unboundedness are NP-complete for flat FIFO systems, generalizing similar existing results for flat counter systems.

    We construct a trace-flattable counter system that is bisimilar to a given flat FIFO system, which allows to model-check the original flat FIFO system. Our results lay the theoretical foundations and open the way to build a verification tool for (general) FIFO systems based on analysis of flat subsystems.

    The paper has been recently presented at CONCUR 2019 and the complete paper, with all proofs, is on: https://hal.archives-ouvertes.fr/hal-02267453.

  • 2019-05-02. Filip Mazowiecki: The reachability problem for Petri nets is not elementary (seminar)

    Petri nets, also known as vector addition systems, are a long established and widely used model of concurrent processes. The complexity of their reachability problem is one of the most prominent open questions in the theory of verification. That the reachability problem is decidable was established by Mayr in his seminal STOC 1981 work, and the currently best published upper bound is the non-primitive recursive Ackermannian bound of Leroux and Schmitz from LICS 2019. We show that the reachability problem is not elementary. Until this work, the best lower bound has been exponential space, due to Lipton in 1976.

    Joint work with Wojciech Czerwiński, Sławomir Lasota, Ranko Lazić and Jérôme Leroux.

  • 2018-11-24. Stefan Jaax: Parameterized verification of population protocols (seminar)
    Population protocols (Angluin et al., 2004) are a parameterized model of distributed computation by populations of anonymous, identical, and mobile finite-state agents. Initially introduced to model networks of passively mobile sensors, they also capture the essence of distributed computation in trust propagation or chemical reactions. The talk provides a gentle introduction to population protocols, followed by a demonstration of Peregrine - a parametric verification tool for population protocols developed by the chair for Foundations of Software Reliability and Theoretical Computer Science at Technical University of Munich. Peregrine can automatically verify a large subclass of population protocols, independent of population size. Peregrine also comes with simulation capabilities and support for error diagnostics. The talk will shine light on the mathematical foundations of Peregrine’s verification capabilities and provides an outlook on potential future extensions.
  • 2018-10-03. Jean-Raymond Abrial: Un autre exemple d'ingénierie mathématique: Le théorème de Goodstein (seminar)
  • 2018-09-19. Jean-Raymond Abrial: Ingénierie mathématique: définition et exemple (seminar)