Aller au contenu principal

Post-Doctoral Research Visit F - M Generative Formal Code Annotations H/F

INRIA

  • Rennes - 35
  • CDD
  • 24 mois
  • Bac +5
  • Service public des collectivités territoriales
  • Exp. 3 à 5 ans
Lire dans l'app

Détail du poste

Post-Doctoral Research Visit F/M Generative Formal Code Annotations
Le descriptif de l'offre ci-dessous est en Anglais
Type de contrat : CDD

Niveau de diplôme exigé : Thèse ou équivalent

Fonction : Post-Doctorant

Niveau d'expérience souhaité : De 3 à 5 ans

A propos du centre ou de la direction fonctionnelle

The Inria Centre at Rennes University is one of Inria's eight centres and has more than thirty research teams. The Inria Centre is a major and recognized player in the field of digital sciences. It is at the heart of a rich R&D and innovation ecosystem: highly innovative PMEs, large industrial groups, competitiveness clusters, research and higher education players, laboratories of excellence, technological research institute, etc.

Contexte et atouts du poste

The Epicure team at Inria Rennes is looking for a post-doc candidate with a strong background in either Artificial Intelligence (AI) or in formal methods (FM). The post-doc will join a collaboration between Inria and Mitsubishi Electric R&D Centre Europe (MERCE) on formal reasoning applied to AI for software engineering.

Epicure is a team with a longstanding experience on formal methods, proof assistants, program semantics, static analysis and abstract interpretation.

Mission confiée

We are looking for a post-doc candidate with a strong experience in formal methods or in Large Language Models (LLMs) or Reinforcement learning (RL) to propose new AI techniques to generate correct and informative formal code annotations from program source. In particular, we want to evaluate the potential of Large Language Models and Reinforcement Learning for improving the process of engineering verified software. In deductive verification, properties on the software are stated in a specific program logic and proven by automatic provers. For the proofs to be completed, the user is generally required to annotate the code with program invariants, i.e., additional logic formulas to help the automatic prover to carry out the proof. Finding an invariant that unlocks a stuck proof is a tedious, time-consuming andnon-trivial. This problem is one of the main obstacle for a wider adoption of deductive verification techniques for the formal verification of programs.

Principales activités

In a preliminary step, we will evaluate the capabilities of existing LLMs to produce relevant code annotations, given a program source and a final property to prove on this program. We plan to compare with what can be obtained using traditional program verification techniques such as abstract interpretation. The target language is C and Frama-C code annotations (https://frama-c.com/). MERCE has an extensive knowledge and corpus of industrial C programs. A possible stepping stone is the WhyML language with Why3 code annotations (https://www.why3.org/).

LLMs have proved successful in guessing simple invariants [5, 2, 3, 1, 4], but it remains to be determined how good they are to infer more complex invariants. This is due to the small size of the available corpus of verified/annotated programs. To overcome this limitation, the second step of the project will investigate the potential for training an ML model for generating invariants using an RL loop.

- Sub-task A: Experimental study of invariant generation by LLMs using program logic tools (e.g. Frama-C, Why3) as a means to separate correct and incorrect program properties. Separation will be tested using both automatic provers and counterexample generators.

- Sub-task B: Building an RL loop for training a dedicated ML model to infer invariants. Generated invariants will be analyzed by automatic provers for positive scoring and counterexample generators for negative scoring. Mutation of the verified code will be used to detect and reject the weakest properties (e.g., useless tautologies).

References
[1] Sandra Greiner, Noah Bühlmann, Manuel Ohrndorf, Christos Tsigkanos,
Oscar Nierstrasz, and Timo Kehrer. Automated generation of code
contracts: Generative ai to the rescue? In Proceedings of the 23rd ACM
SIGPLAN International Conference on Generative Programming: Concepts and
Experiences, pages 1-14, 2024.

[2] A. Kamath, N. Mohammed, A. Senthilnathan, S. Chakraborty, P.
Deligiannis, S.-K. Lahiri, A. Lal, A. Rastogi, S. Roy, and R. Sharma.
Leveraging LLMs for Program Verification. In FMCAD'24, pages 107-118.
IEEE, 2024.

[3] X. Si, A. Naik, H. Dai, M. Naik, and L. Song. Code2inv: A deep
learning Framework for Program Verification. In CAV'20, volume 12225 of
LNCS, pages 151-164. Springer, 2020.

[4] Samuel Teuber and Bernhard Beckert. Next steps in llm-supported java
verification. arXiv preprint arXiv:.

[5] Haoze Wu, Clark Barrett, and Nina Narodytska. Lemur: Integrating
large language models in automated program verification. arXiv preprint
arXiv:.

Compétences

- Strong background in either formal methods (FM) or artificial intelligence (AI)
- Interest and curiosity in formal methods if your background is AI
- Interest and curiosity in artificial intelligence if your background is FM
- Solid background in software development
- Familiarity with functional programming is a plus
- Good writing skills in english

Avantages

- Subsidized meals
- Partial reimbursement of public transport costs
- Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)
- Possibility of teleworking (after 6 months of employment) and flexible organization of working hours
- Professional equipment available (videoconferencing, loan of computer equipment, etc.)
- Social, cultural and sports events and activities
- Access to vocational training

Rémunération

Monthly gross salary from 2 788 euros.

A propos d'Inria

Inria est l'institut national de recherche dédié aux sciences et technologies du numérique. Il emploie 2600 personnes. Ses 215 équipes-projets agiles, en général communes avec des partenaires académiques, impliquent plus de 3900 scientifiques pour relever les défis du numérique, souvent à l'interface d'autres disciplines. L'institut fait appel à de nombreux talents dans plus d'une quarantaine de métiers différents. 900 personnels d'appui à la recherche et à l'innovation contribuent à faire émerger et grandir des projets scientifiques ou entrepreneuriaux qui impactent le monde. Inria travaille avec de nombreuses entreprises et a accompagné la création de plus de 200 start-up. L'institut s'eorce ainsi de répondre aux enjeux de la transformation numérique de la science, de la société et de l'économie.

Publiée le 18/12/2025 - Réf : 343ab546d50010fe2a81b6fbfdfee0fa

Post-Doctoral Research Visit F - M Generative Formal Code Annotations H/F

INRIA
  • Rennes - 35
  • CDD
Publiée le 18/12/2025 - Réf : 343ab546d50010fe2a81b6fbfdfee0fa

Finalisez votre candidature

sur le site du partenaire

Créez votre compte pour postuler

sur le site du partenaire !

Ces offres pourraient aussi
vous intéresser

C-Log recrutement
C-Log recrutement
Pleudihen-sur-Rance - 22
CDI
Voir l’offre
il y a 16 jours
Groupama Loire Bretagne recrutement
Groupama Loire Bretagne recrutement
Rennes - 35
CDI
Télétravail partiel
Voir l’offre
il y a 5 jours
VeoNum recrutement
VeoNum recrutement
Rennes - 35
CDI
35 000 - 50 000 € / an
Télétravail partiel
Voir l’offre
il y a 14 jours
Voir plus d'offres
Initialisation…
Les sites
L'emploi
  • Offres d'emploi par métier
  • Offres d'emploi par ville
  • Offres d'emploi par entreprise
  • Offres d'emploi par mots clés
L'entreprise
  • Qui sommes-nous ?
  • On recrute
  • Accès client
Les apps
Application Android (nouvelle fenêtre) Application ios (nouvelle fenêtre)
Nous suivre sur :
Informations légales CGU Politique de confidentialité Gérer les traceurs Accessibilité : non conforme Aide et contact