📄📄📄 3 Papers accepted @ FLoC 2026!! 🎉🎉🎉
Excited to share that three of our papers have been accepted at FLoC 2026, covering automated feedback for Prolog education, data-driven mutation testing for Prolog, and LLM-assisted MaxSAT modelling! 🎉
(he/him)
Marie Skłodowska-Curie Postdoctoral Fellow
I am a Marie Skłodowska-Curie (MSCA) Postdoctoral Fellow at the Artificial Intelligence Research Institute (IIIA), Spanish National Research Council (CSIC), collaborating with Felip Manyà. Previously, I was a MSCA COFUND Postdoctoral Fellow at the IIIA–CSIC, collaborating with Felip Manyà (IIIA-CSIC) and Guillem Alenyà (IRI-CSIC-UPC) on the ALLIES project.
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 some 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, the ACM SIGSOFT Distinguished Paper Award at ESEC/FSE 2021, and the INESC-ID Best PhD Student Award.
📧 You can reach me at pmorvalho (AT) gmail.com 📧
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
Excited to share that three of our papers have been accepted at FLoC 2026, covering automated feedback for Prolog education, data-driven mutation testing for Prolog, and LLM-assisted MaxSAT modelling! 🎉
I have been awarded an ELIAS mobilty grant for a research visit to work with Professor Marta Kwiatkowska at the University of Oxford from May to June 2026! 🎉
Awarded a Marie Skłodowska-Curie Actions (MSCA) Postdoctoral Fellowship for the project Sherlock4Py.
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! 😃
In this paper, we study a neuro-symbolic approach in which an LLM translates a natural language description of an optimisation problem into executable Python code using PySAT. The …
In this work, we present ProHelp, an automated assessment platform for Prolog built on top of the GitSEED framework, and we evaluate it through a survey of 144 students from a …
In this work, we present an empirical study of 7,201 Prolog submissions from 265 undergraduate students, from which we derive a fine-grained taxonomy of student bugs through manual …
In this talk, we examine the limitations of Large Language Models (LLMs) in semantic code reasoning, showing that their predictions may change under semantics-preserving code transformations, which suggests brittle rather than robust understanding of program semantics.
LLMs for code often lack true semantic understanding, evidenced by their instability under semantics-preserving transformations, and we address this by integrating formal methods (model checking and MaxSAT-based fault localisation) with LLMs to improve program repair and enable reliable verification via a hybrid Python-to-C pipeline.
In this talk I will present PyVeritas, a novel framework that leverages Large Language Models (LLMs) for high-level transpilation from Python to C, followed by bounded model checking and MaxSAT-based fault localisation in the generated C code.