Metamorphic Executions for Stable and Performant Software Systems
Metamorphic Executions for Stable and Performant Software Systems
Applications accepted all year round
Competition Funded PhD Project (Students Worldwide)
About the Project
Software pervades our everyday lives. Yet, critical bugs still cause serious security and safety risks. Hence, ensuring software quality is more important than ever. As a software system matures, a striking pattern emerges: most bugs are brittle—they disappear under metamorphic transformations, i.e., when executed on semantically equivalent but syntactically different inputs.
Brittleness of bugs (Hypothesis):
In a sufficiently complex and mature software system, bugs are brittle: they vanish under metamorphic transformations of the input.
Thanks to massively parallel hardware, the brittleness hypothesis suggests a radically new perspective on ensuring software quality. It challenges a fundamental assumption in the field: that reliability must come solely from correctness guarantees through extensive testing or verification. This Ph.D. project explores the idea that, beyond a certain point, improving the reliability of a software system is best achieved using massive parallelism. Enabled by domain-specific metamorphic transformations, and using an oracle to correct the
The project will develop Metamorphic Executions, a novel computing paradigm for more reliable, stable, and performant software systems. The core idea is as follows: given a software system and an input, we apply a set of metamorphic transformations to generate syntactically different but semantically equivalent inputs. Each transformed input is executed independently and in parallel on separate CPU cores. The outputs are aggregated by a correcting oracle to determine the final result.
This process leverages input diversity and parallelism to mask bugs, resulting in a composite system with improved reliability, stability, and performance. Metamorphic Executions can be seen as a complement to metamorphic testing.
The brittleness hypothesis manifests in several critical software systems. We have been validating the hypothesis with bugs from the SMT solvers fuzzing campaign YinYang. This multi-year campaign uncovered more than 1,800 bugs in SMT solvers Z3 and CVC5, including hundreds of soundness issues, using various techniques. Post-hoc analysis showed that at least 74% of these bugs were brittle—disappearing under reordering of statements, commutative terms, and other minor modifications—thus confirming the hypothesis for SMT solvers.
Eligibility
Applicants should have, or expect to achieve, at least a 2.1 honours degree or a master’s (or international equivalent) in a relevant science or engineering related discipline.
Funding
This is a 3.5-year PhD. Excellent candidates will be nominated for competence-based funding.
At The University of Manchester, we offer a range of scholarships, studentships and awards at university, faculty and department level, to support both UK and overseas postgraduate researchers.
For more information, visit our funding page or search our funding database for specific scholarships, studentships and awards you may be eligible for.
The start date is October 2026.
Before you apply
We strongly recommend that you contact the supervisors for this project before you apply. Please include details of your current level of study, academic background and any relevant experience and include a paragraph about your motivation to study this PhD project.
How to apply
Apply online through our website: https://uom.link/pgr-apply-2425
When applying, you’ll need to specify the full name of this project, the name of your supervisor, if you already having funding or if you wish to be considered for available funding through the university, details of your previous study, and names and contact details of two referees.
Your application will not be processed without all of the required documents submitted at the time of application, and we cannot accept responsibility for late or missed deadlines. Incomplete applications will not be considered.
After you have applied you will be asked to upload the following supporting documents:
- Final Transcript and certificates of all awarded university level qualifications
- Interim Transcript of any university level qualifications in progress
- CV
- Supporting statement: A one or two page statement outlining your motivation to pursue postgraduate research and why you want to undertake postgraduate research at Manchester, any relevant research or work experience, the key findings of your previous research experience, and techniques and skills you’ve developed. (This is mandatory for all applicants and the application will be put on hold without it).
- Contact details for two referees (please make sure that the contact email you provide is an official university/work email address as we may need to verify the reference)
- English Language certificate (if applicable)
If you have any questions about making an application, please contact our admissions team by emailing FSE.doctoralacademy.admissions@manchester.ac.uk.
Unlock this job opportunity
View more options below
View full job details
See the complete job description, requirements, and application process



