Biography

I am a Computer Science PhD student at Instituto Superior Técnico and a Junior Researcher at INESC-ID, Lisbon. My advisors are Professor Vasco Manquinho at IST and Professor Mikoláš Janota at CIIRC, Czech Technical University in Prague.

I concluded my BSc and MSc in Information Systems and Computer Engineering at Instituto Superior Técnico, University of Lisbon. My research interests include Artificial Intelligence, Automated Reasoning, Program Repair, but also Program Synthesis, Formal Methods, Machine Learning.

During the final year of my MSc, I worked as a Student Intern at OutSystems. My MSc thesis was supervised by Professor Vasco Manquinho from IST and Miguel Ventura from OutSystems. During the same period, I was also a Research Assistant at Carnegie Mellon University, USA, where I worked with Professor Ruben Martins.

Interests

  • Program Repair
  • Program Synthesis
  • Automated Reasoning
  • 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

C-Pack of IPAs: A C90 Program Benchmark of Introductory Programming Assignments, Accepted at 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 …

UpMax: User partitioning for MaxSAT, SAT 2023

This paper proposes a new framework called UpMax that decouples the partitioning procedure from the MaxSAT solving algorithms. As a …

MultIPAs: Applying Program Transformations to Introductory Programming Assignments for Data Augmentation, ESEC/FSE 2022

This paper presents MultIPAs, a program transformation tool that can augment IPAs benchmarks by (1) applying six syntactic mutations …

Project Proposal: Learning Variable Mappings to Repair Programs, AITP 2022

In this position paper, we propose to learn how to map the set of variables between different small imperative programs based on both …

Experience

 
 
 
 
 

Ph.D. Candidate

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

Oct 2020 – Present Lisboa, Portugal
I am a Computer Science PhD candidate at IST, advised by Vasco Manquinho and Mikoláš Janota. My research host institutions are 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.