PhD Position in Higher-order Rewriting for Program Equivalence

Radboud University Department of Software Science

PhD Candidate in Higher-order Rewriting for Program Equivalence

  • Employment: 1.0 FTE
  • Maximum gross monthly salary: € 3,061
  • Faculty of Science
  • Required background: Research University Degree
  • Application deadline: 20 June 2021

We are looking for

The department of Software Science is looking for an enthusiastic PhD candidate in Higher-order Rewriting for Program Equivalence. As a PhD candidate, you will conduct research into higher-order term rewriting systems with logical constraints. This project brings together two different areas of theoretical computer science: higher-order term rewriting and program equivalence analysis.

Term rewriting is a formal system that can be used to specify algorithms. Its simple, rigorous definition makes it very suitable for formal analysis, and as a result, its properties have been well studied. Higher-order term rewriting extends standard term rewriting with anonymous functions and binders as in the lambda calculus, thus providing a highly liberal class of systems.

Term rewriting can be combined with a logical theory and logical constraints, for example, integer numbers and conditions such as "x is at least 1 and y != x". With this approach, it is possible to model programs in common programming languages; higher-order term rewriting systems in particular offer a natural model to analyse functional and object-oriented programming languages.

Program equivalence analysis is the study of whether two systems of program code have the same result, given the same input. This is a challenging field with many applications both in business practice and in other areas of computing science.

In this project, your task will be to develop techniques for program equivalence analysis, by analysing in particular higher-order term rewriting systems with logical constraints, which encode realistic programs. The larger part of the project is devoted to the development of theory, but since an important goal is to develop automatable techniques, you will also implement some of your techniques in a prototype analysis tool. You will be supervised by Dr Cynthia Kop. If you wish to learn more, please feel free to send an e-mail to

We ask

  • You should hold an MSc or equivalent degree in Computer Science, Mathematics or a closely related field, or obtain such a degree before the end of August.
  • You are able to work both independently and as part of a team.
  • Proficient in English. (Dutch is not required.)
  • Some programming experience.
  • Prior knowledge of term rewriting is not required.

We are

The position is available in the Software Science group of the Institute for Computing and Information Sciences (iCIS) at Radboud University. Research at iCIS focuses on software science, digital security and data science. Our research mission is to improve the security and reliability of software systems and algorithms through mathematically based theories, methods and tools. During recent evaluations, iCIS has been consistently ranked as the No. 1 computing science department in the Netherlands. Evaluation committees praised our flat and open organisational structure, our ability to attract external funding, our strong ties to other disciplines, and our solid contacts with government and industrial partners. The Software Science group is well-known for its contributions to the mathematical foundations of software, formal methods and functional programming.

The Faculty of Science is a complete science faculty where research and education are closely related. The faculty aims to be an academic community with an international character, where staff members from different backgrounds combine their talents with the common goal of being a leading faculty of science in Europe.

Radboud University

We want to get the best out of science, others and ourselves. Why? Because this is what the world around us desperately needs. Leading research and education make an indispensable contribution to a healthy, free world with equal opportunities for all. This is what unites the more than 22,000 students and 5,000 employees at Radboud University. And this requires even more talent, collaboration and lifelong learning. You have a part to play!

We offer

  • Employment: 1.0 FTE.
  • the gross starting salary amounts to €2,395 per month based on a 38-hour working week, and will increase to €3,061 in the fourth year (salary scale ).
  • Duration of the contract: you will be appointed for an initial period of 18 months, after which your performance will be evaluated. If the evaluation is positive, the contract will be extended by 2.5 years (4 year contract).
  • The intended start date is 1 September 2021.
  • Your teaching load may be up to 10% of your appointment.
  • You will be able to use our Dual Career and Family Care Services. Our Dual Career and Family Care Officer can assist you with family-related support, help your partner or spouse prepare for the local labour market, provide customized support in their search for employment  and help your family settle in Nijmegen.
  • Have a look at our excellent employment conditions. They include a good work-life balance (among other things because of the excellent leave arrangements), opportunities for development and a great pension scheme.

Would you like more information?

For more information about this vacancy, please contact:
Cynthia Kop, Assistant Professor

Apply directly

Please address your application to Cynthia Kop and submit it, using the application button, no later than 20 June 2021, 23:59 Amsterdam Time Zone.   

Your application should include the following attachments:

  • Letter of motivation.
  • CV.
  • A list of courses taken and grades obtained.
The first round of interviews will take place in week 26 of 2021.

We drafted this vacancy to find and hire our new colleague ourselves. Recruitment agencies are kindly requested to refrain from responding.