Engineer Research and Development (M/F), Formal Verification

Contract type : Fixed-term contract

Renewable contract : Yes

Level of qualifications required : Graduate degree or equivalent

Other valued qualifications : PhD thesis or equivalent

Fonction : Temporary scientific engineer

Level of experience : Recently graduated

About the research centre or Inria department

The Inria Saclay-Île-de-France Research Centre was established in 2008. It has developed as part of the Saclay site in partnership with Paris-Saclay University and with the Institut Polytechnique de Paris .

The centre has 40 project teams , 32 of which operate jointly with Paris-Saclay University and the Institut Polytechnique de Paris; Its activities occupy over 600 people, scientists and research and innovation support staff, including 44 different nationalities.

Context


This job is proposed in the context of the ProofInUse consortium
(https://proofinuse.gitlabpages.inria.fr/), a laboratory for research
and development in the domain of high-assurance software. This
laboratory is the result of collaborations between the Inria
project-team Toccata (https://toccata.gitlabpages.inria.fr/toccata/)
and industrial partners. The general objective is to contribute to the
activities of formal verification performed by these partners, those
conducted using the proof tools developed by the Toccata team, in
particular Why3.

The proposed position is dedicated to activities in collaboration with
the MERCE company
(https://www.mitsubishielectric-rce.eu/merce-in-france/). The work
will be carried out in the Toccata team location in Gif-Sur-Yvette,
and may involve a few trips to MERCE offices in Rennes.

Assignment


In direct collaboration with Why3 developers at Toccata and with
engineers at MERCE, the recruited person will
contribute to meet the needs in Why3's usage by MERCE, as
identified in the roadmap of the collaboration. The main
objective is to improve the capabilities for advanced formal proof, in
a context of verification of C code, including numerical
programs (computation in floating-point representation); and also in a
context of verification of PLCs (Programmable Logic Controllers). The
common objectives concern, among others, the increase of the
automation ratio of proofs, the generation of pertinent
counterexamples in case of proof failure, and the proof of numerical
programs.

Main activities


Development in OCaml for Why3, development of Why3 libraries,
dedicated modeling for C, C++ and Ladder (for PLC) code, use of
external SMT solvers, software testing and experimentations, writing
of documentation, contribution to the writing of scientific articles.

Skills


We seek for candidates with as much experience and skills as possible
in several domains among : development using the OCaml language ;
techniques for evaluation, compilation and/or transformation of
programs ; formal methods for software engineering ; formal logics ;
static analysis of programs ; computer-assisted theorem proving ; use of formal
proof environments.

A level of English at least in writing is required. In oral English or
French must be sufficiently mastered.

Benefits package

  • 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
  • Social security coverage

Remuneration

Regards to professional experiences