> Markdown version of [/jobs/ext/2322965-chercheur-h-f](https://www.wearedevelopers.com/jobs/ext/2322965-chercheur-h-f). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Chercheur (H/F) - **Company:** CNRS - **Location:** Palaiseau, France (Remote available) - **Salary:** €38,855.0 - €42,066.0 - **Contract:** Temporary contract - **Skills:** Distributed Systems, Formal Verification - **Published:** August 3, 2026 - **Apply:** https://emploi.cnrs.fr/Offres/CDD/UMR7161-CONENE-001/Default.aspx ## About the Role Le/la candidat(e) doit être titulaire d'un Master 2 en informatique, avec une expertise en informatique théorique, méthodes formelles, systèmes concurrents ou distribués. Contraintes et risques : Niveau d'études minimum requis * Niveau Niveau 7 Master/diplômes équivalents * Spécialisation Formations générales Langues * Français Seuil ## Description L'objectif principal de ce poste est de développer de nouveaux algorithmes pour la vérification formelle de systèmes concurrents ou distribués. Activités : Les logiciels modernes utilisent de plus en plus la programmation concurrente afin d'exploiter les avantages de performances offerts par les architectures multicœurs. En particulier, la formation des modèles d'apprentissage en profondeur est souvent parallélisée afin de faire face aux augmentations massives du nombre de paramètres. La programmation concurrente est cependant notoirement difficile et des bogues de concurrence existent même dans le code écrit par les programmeurs les plus expérimentés. Par conséquent, les chercheurs ont développé des techniques de raisonnement mathématique, dans l'espoir que des preuves pourraient être utilisées pour résoudre ce problème. Malheureusement, de nombreuses techniques de preuve basées sur la logique telles que le rely-guarantee, Owicki-Gries, etc. s'en remettre à l'utilisateur pour fournir des invariants complexes souvent peu intuitifs. En revanche, les concepteurs d'algorithmes de la communauté informatique distribuée fournissent fréquemment des arguments de style plus opérationnel pour la correction de leurs implémentations, qui se concentrent sur les descriptions de scénarios d'entrelacement clés, mais qui se généralisent à un nombre illimité de threads. Dans ce projet, nous allons combler cette lacune et élever le raisonnement basé sur des scénarios d'arguments intuitifs à des arguments formellement rigoureux qui sont accessibles aux programmeurs et même automatiquement dérivés du code source. L'objectif est de développer des techniques fondamentales, des algorithmes et des outils automatisés, démontrant que le raisonnement basé sur des scénarios peut être rigoureux, mais aussi accessible aux programmeurs de tous les jours. Nous formaliserons les scénarios comme, ce que nous appelons, le quotient d'exécution d'un programme, qui capture un petit ensemble d'exécutions entrelacées représentatives qui se généralisent néanmoins --- via la commutativité --- à l'ensemble de toutes les exécutions, même avec un nombre illimité de threads et un espace infini d'états. Nous montrerons que ces quotients peuvent être décrits succinctement dans un langage convenable ; qu'il est possible de dériver automatiquement des quotients directement à partir du code source ; et que les programmeurs peuvent utiliser ces dérivations et les interroger pour mieux comprendre les comportements concurrents de leurs implémentations. Les principales composantes de ce projet seront: - Établir des bases formelles pour les quotients d'exécution pour un raisonnement basé sur des scénarios. - Concevoir des langages pour représenter abstraitement des quotients de manière compacte et compréhensible. - Systématiser le processus de preuve pour montrer qu'une telle abstraction couvre toutes les exécutions possibles du programme, Voir plus sur le site emploi.cnrs.fr... ## Related Videos - [Best Practices for AI-Assisted Development of Distributed Systems](https://www.wearedevelopers.com/videos/100200-best-practices-for-ai-assisted-development-of-distributed-systems) - [When testing just doesn’t cut it](https://www.wearedevelopers.com/videos/720-when-testing-just-doesn-t-cut-it) - [Your Distributed System Just Got a Brain. Now What?](https://www.wearedevelopers.com/videos/100017-your-distributed-system-just-got-a-brain-now-what) - [Developer’s Perspective: Overview of the Tezos Blockchain Ecosystem](https://www.wearedevelopers.com/videos/237-developer-s-perspective-overview-of-the-tezos-blockchain-ecosystem) - [Exploring Durable Execution with Python](https://www.wearedevelopers.com/videos/1234-exploring-durable-execution-with-python) - [AI Meets Hoare Logic: Revolutionizing Software Testing with Formal Methods](https://www.wearedevelopers.com/videos/1644-ai-meets-hoare-logic-revolutionizing-software-testing-with-formal-methods) ## Related Articles - [Best Companies to Work For in Paris: Top 25 Companies in 2023 ](https://www.wearedevelopers.com/magazine/190-best-companies-to-work-for-in-paris-top-25-companies-in-2023) - [Best Companies to Work For in France: Top 25 Companies in 2023 ](https://www.wearedevelopers.com/magazine/189-best-companies-to-work-for-in-france-top-25-companies-in-2023) - [Average Salary in France](https://www.wearedevelopers.com/magazine/269-average-salary-in-france) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Guide for Expats Living in France](https://www.wearedevelopers.com/magazine/305-guide-for-expats-living-in-france) - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs)