Biography

I am a Research Associate at the University of Oxford, collaborating with Professor Marta Kwiatkowska on the FUN2MODEL ERC project.

Currently, I am in the final stages of my Ph.D. in Computer Science, awaiting my thesis defense at Instituto Superior Técnico (IST), Universidade de Lisboa (UL). My doctoral research was conducted in collaboration with the Czech Technical University (CTU) in Prague, hosted at INESC-ID, IST in Lisbon, and CIIRC, CTU in Prague. I had the privilege of being advised by Vasco Manquinho at INESC-ID and Mikoláš Janota at CIIRC. Additionally, I was a Junior Researcher in the Automated Reasoning and Software Reliability (ARSR) group at INESC-ID.

My academic background includes a BSc and MSc in Information Systems and Computer Engineering from IST-UL. During the final year of my MSc, I worked as 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.

For five years, I contributed to teaching as an Invited Teaching Assistant for the Computer Science Department at IST-UL.

Interests

  • Automated Reasoning
  • Automated Verification
  • Program Repair
  • Program Synthesis
  • Formal Methods
  • Artificial Intelligence

Education

  • MSc in Information Systems and Computer Engineering, 2019

    IST, Universidade de Lisboa

  • BSc in Information Systems and Computer Engineering, 2017

    IST, Universidade de Lisboa

Recent Publications

Counterexample Guided Program Repair Using Zero-Shot Learning and MaxSAT-based Fault Localization, AAAI 2025

In this paper, we propose a novel approach that combines the strengths of both FM-based fault localization and LLMs, via zero-shot …

CFaults: Model-Based Diagnosis for Fault Localization in C with Multiple Test Cases, FM 2024

This paper introduces a novel fault localization approach for C programs with multiple faults. CFaults leverages Model-Based Diagnosis …

C-Pack of IPAs: A C90 Program Benchmark of Introductory Programming Assignments, APR 2024

A C90 Program Benchmark of Introductory Programming Assignments (IPAs), that contains semantically correct, semantically incorrect, and …

Graph Neural Networks For Mapping Variables Between Programs, ECAI 2023

In this work, we propose using graph neural networks (GNNs) to map the set of variables between two programs based on both …

Experience

 
 
 
 
 

Research Associate

Department of Computer Science, University of Oxford

Jan 2025 – Present Oxford, UK
I am a Research Associate in the Department of Computer Science at University of Oxford, working with Professor Marta Kwiatkowska on the FUN2MODEL ERC project.
 
 
 
 
 

Ph.D. Candidate

INESC-ID, Instituto Superior Técnico, University of Lisbon

Oct 2020 – Dec 2024 Lisboa, Portugal
I was a Computer Science PhD candidate at IST, advised by Vasco Manquinho and Mikoláš Janota. My research host institutions were INESC-ID, IST in Lisbon and CIIRC, Czech Technical University in Prague.
 
 
 
 
 

Junior Researcher

INESC-ID

Jan 2020 – Sep 2020 Lisboa, Portugal
I was a Junior Researcher at INESC-ID, working under the supervision of Professor Vasco Manquinho and Professor Ruben Martins.
 
 
 
 
 

Research Assistant

Carnegie Mellon University, SCS​

Feb 2019 – May 2019 Pittsburgh, USA
During my MSc program, I had the opportunity to collaborate with Professor Ruben Martins on my thesis. Our primary focus was on a system called SQUARES, which aims to generate SQL queries by utilizing input-output examples. This falls under the domain of Programming-By-Examples, a subfield of computer science. We developed a novel encoding for programs for Enumeration-based Program Synthesis.
 
 
 
 
 

Student Intern

Outsystems

Sep 2018 – Nov 2019 Lisboa, Portugal
During my MSc thesis, I had the privilege of collaborating with OutSystems. My supervisors from OutSystems were Miguel Ventura and Miguel Neves.
 
 
 
 
 

Trainee

INESC-ID

Sep 2018 – Dec 2019 Lisboa, Portugal
In the final year of my MSc, my thesis was supervised by Professor Vasco Manquinho. We developed a novel SQL synthesizer, SQUARES, capable of generating SQL queries using Query Reverse Engineering (QRE), i.e., from input-output tables. QRE is a subfield of Program Synthesis whose goal is to generate programs that satisfy a given high-level specification.