Bio

I am a MSCA COFUND Postdoctoral Fellow at the Artificial Intelligence Research Centre (IIIA), Spanish National Research Council (CSIC), collaborating with Felip Manyà (IIIA-CSIC) and Guillem Alenyà (IRI-CSIC-UPC) on the ALLIES project.
I am also a Visiting Researcher in the Department of Computer Science at the University of Oxford, working with Marta Kwiatkowska.

Before joining IIIA-CSIC, I was a Postdoctoral Research Associate at the University of Oxford, contributing to the FUN2MODEL ERC project under the supervision of Marta Kwiatkowska.

I hold a Ph.D. in Computer Science from Instituto Superior Técnico (IST), Universidade de Lisboa (UL), completed as part of a European Doctorate Programme in collaboration with the Czech Technical University (CTU) in Prague.
My doctoral research was supervised by Vasco Manquinho and Mikoláš Janota, with research hosted at INESC-ID, IST (Lisbon), and CIIRC, CTU (Prague).

During the final year of my M.Sc. in Computer Science, I was a Research Assistant at Carnegie Mellon University (CMU), collaborating with Ruben Martins. I also gained industry experience as a Research Intern at OutSystems, a leading Portuguese software company.

I am the proud recipient of several 🏆 awards and grants 🏆, including the Vencer o Adamastor 2025 prize, which recognizes innovative contributions by young scientists in Portugal, and the ACM SIGSOFT Distinguished Paper Award at ESEC/FSE 2021.

📧 You can reach me at pmorvalho (AT) gmail.com 📧

Education

PhD in Computer Science

Instituto Superior Técnico, Universidade de Lisboa, in collaboration with the Czech Technical University (CTU) in Prague

MSc in Computer Science and Engineering

Instituto Superior Técnico, Universidade de Lisboa

BSc in Computer Science and Engineering

Instituto Superior Técnico, Universidade de Lisboa

Research Interests

Artificial Intelligence Automated Reasoning Formal Methods Automated Program Repair Automated Verification Computer-aided Education Machine Learning Model-Based Diagnosis Program Synthesis Sofware Engineering
Recent News

📄 Paper accepted @ the Journal of Systems and Software!! 🎉

Thrilled to share that our paper on MENTOR, a semantic automated program repair (APR) framework that fixes student programs and highlights faulty statements, has been accepted by the Journal of Systems and Software (JSS)! 🎉

👨‍💻 My Research 🕵️‍♂️

My research explores the synergy between Automated Reasoning (AR) and Machine Learning (ML), focusing on enhancing the robustness and reliability of ML Models (e.g., Large Language Models), across diverse reasoning tasks, including but not limited to code understanding.

By integrating the mathematical rigor and precision of formal methods with the scalability and adaptability of machine learning, I strive to develop AI systems that are both reliable and efficient, tackling critical challenges at the frontier of trustworthy AI.

I am always excited to explore new ideas together! 📧 Feel free to get in touch 📧 if you are interested in collaborating! 😃

Featured Publications
MENTOR: Fixing Introductory Programming Assignments With Formula-Based Fault Localization and LLM-Driven Program Repair featured image

MENTOR: Fixing Introductory Programming Assignments With Formula-Based Fault Localization and LLM-Driven Program Repair

This paper introduces MENTOR, a semantic automated program repair (APR) framework designed to fix faulty student programs. MENTOR validates repairs through execution on a test …

avatar
Pedro Orvalho
Read more
PyVeritas: On Verifying Python via LLM-Based Transpilation and Bounded Model Checking for C featured image

PyVeritas: On Verifying Python via LLM-Based Transpilation and Bounded Model Checking for C

In this paper, we propose PyVeritas, a novel framework that leverages Large Language Models (LLMs) for high-level transpilation from Python to C, followed by bounded model checking …

avatar
Pedro Orvalho
Read more
InvAASTCluster: On Applying Invariant-Based Program Clustering to Introductory Programming Assignments featured image

InvAASTCluster: On Applying Invariant-Based Program Clustering to Introductory Programming Assignments

This paper proposes InvAASTCluster, a novel approach for program clustering that uses dynamically generated program invariants to cluster semantically equivalent IPAs.

avatar
Pedro Orvalho
Read more
Recent Publications
Recent & Upcoming Talks

From Logic to Learning: Rethinking Programming for the AI Era

In this talk, I will present approaches that leverage the precision of formal logic and the adaptability of learning-based models to enable intelligent code generation, automated program analysis, and personalized, feedback-driven programming education.