| CARVIEW |
Ruben Martins
Assistant Research Professor at Carnegie Mellon University
Program Director of the Master of Science in Computer Science (MSCS)
Biography
Ruben Martins is an Assistant Research Professor at Carnegie Mellon University and the program director of the Master of Science in Computer Science. His interests lie in the intersection of constraint programming with program synthesis, analysis, and verification. His recent research focuses on pushing the boundaries of program synthesis and enabling the technology to make programming and formal methods tools more accessible. Ruben received his Ph.D. with honors from the Technical University of Lisbon, Portugal (2013). He was a postdoctoral researcher at the University of Oxford, UK (2014-2015) and a postdoctoral researcher at UT Austin (2015-2017). He has published in top-tier venues, including POPL, PLDI, FSE, SAT, and CP. He has won a distinguished paper award at PLDI 2018 for his work on program synthesis, FSE 2021 for his work on optimization, and SAT 2022 for his work on verified encodings. He has also developed several award-winning constraint solvers. He is the leading developer of Open-WBO: an open-source Maximum Satisfiability (MaxSAT) solver that won several gold medals in MaxSAT competitions. Open-WBO is used to solve many real-world discrete optimization problems, including finding an optimal seating arrangement for his wedding.
Publications
-
2025Aditi Kabra, Jonathan Laurent, Sagar Bharadwaj, Ruben Martins, Stefan Mitsch, Andre PlatzerCan Large Language Models Autoformalize Kinematics?In Formal Methods in Computer-Aided Design (FMCAD'25), IEEE, 2025.Ricardo Brancas, Miguel Terra-Neves, Miguel Ventura, Vasco Manquinho, Ruben MartinsCUBES: A Parallel Synthesizer for SQL Using ExamplesIn Formal Aspects of Computing (FAC'25), ACM, 2025.Ricardo Brancas, Vasco Manquinho, Ruben MartinsCombining Logic and Large Language Models for Assisted Debugging and Repair of ASP ProgramsIn International Conference on Software Testing, Verification and Validation (ICST'25), IEEE, 2025.Aidan Z.H. Yang, Sophia Kolak, Vincent Hellendoorn, Ruben Martins, Claire Le GouesRevisiting Unnaturalness for Automated Program Repair in the Era of Large Language ModelsIn International Conference on Software Engineering (ICSE’25), ACM, 2025.Joseph E. Reeves, Joao Filipe, Min-Chien Hsu, Ruben Martins, Marijn J. H. HeuleThe Impact of Literal Sorting on Cardinality Constraint EncodingsIn AAAI Conference on Artificial Intelligence (AAAI'25), AAAI Press, 2025.Darion Cassel, Nuno Sabino, Min-Chien Hsu, Ruben Martins, Limin JiaNODEMEDIC-FINE: Automatic Detection and Exploit Synthesis for Node.js VulnerabilitiesIn Network and Distributed System Security Symposium (NDSS'25), The Internet Society, 2025.
-
2024Margarida Ferreira, Akshay Narayan, Ranysha Ware, Yash Kothari, Ines Lynce, Ruben Martins, Justine SherryReverse-Engineering Congestion Control Algorithm BehaviorIn Internet Measurement Conference (IMC'24), ACM, 2024.Yoshiki Takashima, Chanhee Cho, Ruben Martins, Limin Jia, Corina PasareanuCrabtree: Rust API Test Synthesis Guided by Coverage and TypeIn Object-Oriented Programming, Systems, Languages, and Applications 2024 (OOPSLA'24), ACM, 2024.Bernardo Subercaseaux, John Mackey, Marijn J. H. Heule, Ruben MartinsAutomated Mathematical Discovery and Verification: Minimizing Pentagons in the PlaneIn International Conference on Intelligent Computer Mathematics (CICM'24), Springer, 2024.Daniel Ramos, Ines Lynce, Vasco Manquinho, Ruben Martins, Claire Le GouesBatFix: Repairing language model-based transpilationIn Transactions on Software Engineering and Methodology (TOSEM'24), ACM, 2024.Aidan Z. H. Yang, Claire Le Goues, Ruben Martins, Vincent J. HellendoornLarge Language Models for Test-Free Fault LocalizationIn International Conference on Software Engineering (ICSE’24), ACM, 2024.Anup Agarwal, Venkat Arun, Devdeep Ray, Ruben Martins, Srinivasan SeshanTowards provably performant congestion controlIn Network and Distributed System Security Symposium (NSDI’24), USENIX Association, 2024.Soojin Moon, Milind Srivastava, Yves Bieri, Ruben Martins, Vyas SekarPryde: A Modular Generalizable Workflow for Uncovering Evasion Attacks Against Stateful Firewall DeploymentsIn Symposium on Security and Privacy (S&P’24), IEEE, 2024.Ricardo Brancas, Miguel Terra-Neves, Miguel Ventura, Vasco Manquinho, Ruben MartinsTowards Reliable SQL Synthesis: Fuzzing-Based Evaluation and DisambiguationIn International Conference on Fundamental Approaches to Software Engineering (FASE’24), Springer, 2024.
-
2023Stephan Gocht, Ruben Martins, Jakob Nordström, Andy OertelCertified CNF Translations for Pseudo-Boolean Solving (Extended Abstract)In International Joint Conference on Artificial Intelligence (IJCAI’23), ijcai.org, 2023.Daniel Ramos, Hailie Mitchell, Ines Lynce, Vasco Manquinho, Ruben Martins, Claire Le GouesMELT: Mining Effective Lightweight Transformations from Pull RequestsIn Automated Software Engineering Conference (ASE’23), IEEE, 2023.Pedro Orvalho, Vasco Manquinho, Ruben MartinsUpMax: User Partitioning for MaxSATIn International Conference on Theory and Applications of Satisfiability Testing (SAT’23), LIPIcs, 2023.
-
2022Anup Agarwal, Venkat Arun, Devdeep Ray, Ruben Martins, Srinivasan SeshanAutomating network heuristic design and analysisIn Workshop on Hot Topics in Networks (HotNets'22), ACM, 2022.Stephan Gocht, Ruben Martins, Jakob Nordström, Andy OertelCertified CNF Translations for Pseudo-Boolean SolvingIn International Conference on Theory and Applications of Satisfiability Testing (SAT'22), LIPIcs, 2022. Best Paper Award.Francisco Pereira, Gonçalo Matos, Hugo Sadok, Daehyeok Kim, Ruben Martins, Justine Sherry, Fernando Ramos, Luis PedrosaAutomatic generation of network function accelerators using component-based synthesisIn ACM SIGCOMM Symposium on SDN Research (SOSR'22), ACM, 2022.Sophia D Kolak, Ruben Martins, Claire Le Goues, Vincent Josua HellendoornPatch Generation with Language Models: Feasibility and Scaling BehaviorIn Deep Learning for Code Workshop (DL4C @ ICLR'22), 2022.
-
2021Fahiem Bacchus, Matti Järvisalo, Ruben MartinsMaximum SatisfiabilityIn Handbook of Satisfiability, IOS, 2021.Margarida Ferreira, Akshay Narayan, Inês Lynce, Ruben Martins, Justine SherryCounterfeiting Congestion Control AlgorithmsIn Workshop on Hot Topics in Networks (HotNets’21), ACM, 2021.Changjian Zhang, Ryan Wagner, Pedro Orvalho, David Garlan, Vasco Manquinho, Ruben Martins, Eunsuk KangAlloyMax: Bringing Maximum Satisfaction to Relational SpecificationsIn Symposium on the Foundations of Software Engineering (FSE’21), ACM, 2021. Distinguished Paper Award.Yoshiki Takashima, Ruben Martins, Limin Jia, Corina S PasareanuSyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program SynthesisIn Conference on Programming Language Design and Implementation (PLDI’21), ACM, 2021.Ansong Ni, Daniel Ramos, Aidan Yang, Inês Lynce, Vasco Manquinho, Ruben Martins, Claire Le GouesSOAR: A Synthesis Approach for Data Science API RefactoringIn International Conference on Software Engineering (ICSE’21), ACM, 2021.Margarida Ferreira, Miguel Terra-Neves, Miguel Ventura, Inês Lynce, Ruben MartinsFOREST: An Interactive Multi-tree Synthesizer for Regular ExpressionsIn International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’21), Springer, 2021.Travis Hance, Marijn Heule, Ruben Martins, Bryan ParnoFinding Invariants of Distributed Systems: It’s a Small (Enough) World After AllIn Network and Distributed System Security Symposium (NSDI’21), USENIX Association, 2021.Ruben Martins, Michael McCall, Dionisio de Niz, Amit Vasudevan, Bjorn Andersson, Mark Klein, John P. Lehoczky, Hyoseung KimFormal Verification of a Mixed-Trust Synchronization ProtocolIn International Conference on Real-Time Networks and Systems (RTNS’21), ACM, 2021.
-
2020Joshua Clune, Vijay Ramamurthy, Ruben Martins, Umut A. AcarProgram equivalence for assisted grading of functional programsIn Object-oriented Programming, Systems, Languages, and Applications (OOPSLA’20), ACM, 2020.Daniel Ramos, Jorge Pereira, Inês Lynce, Vasco Manquinho, Ruben MartinsUNCHARTIT: An Interactive Framework for Program Recovery from ChartsIn Automated Software Engineering Conference (ASE’20), IEEE, 2020.Amit Vasudevan, Petros Maniatis, Ruben MartinsüberSpark: Practical, Provable, End-to-End Guarantees on Commodity Heterogenous Interconnected Computing PlatformsIn ACM SIGOPS Operating Systems Review (OSR’20), ACM, 2020.Pedro Orvalho, Miguel Terra-Neves, Miguel Ventura, Ruben Martins, Vasco ManquinhoSQUARES: A SQL Synthesizer Using Query Reverse EngineeringIn International Conference on Very Large Data Bases (VLDB’20), ACM, 2020.Peter Oostema, Ruben Martins, Marijn J. H. HeuleColoring Unit-Distance Strips using SATIn International Conference on Logic for Programming, Artificial Intelligence and Reasoning (LPAR’20), EPiC Series in Computing, 2020.
-
2019Pedro Orvalho, Miguel Terra-Neves, Miguel Ventura, Ruben Martins, Vasco ManquinhoEncodings for Enumeration-Based Program SynthesisIn Principles and Practice of Constraint Programming (CP’19), 583-599, Springer, 2019.Yanju Chen, Ruben Martins, Yu FengMaximal Multi-layer Specification SynthesisIn Symposium on the Foundations of Software Engineering (FSE’19), ACM, 2019.Ruben Martins, Jia Chen, Yanju Chen, Yu Feng, Isil DilligTrinity: An Extensible Synthesis Framework for Data ScienceIn International Conference on Very Large Data Bases (VLDB’19), ACM, 2019.
-
2018Inês Lynce, Vasco Manquinho, Ruben MartinsParallel Maximum SatisfiabilityIn Handbook of Parallel Constraint Reasoning, Springer, 2018.Saurabh Joshi, Prateek Kumar, Ruben Martins, Sukrut RaoApproximation Strategies for Incomplete MaxSATIn Principles and Practice of Constraint Programming (CP’18), 219-228, Springer, 2018.Edward Zulkoski, Ruben Martins, Christoph M. Wintersteiger, Robert Robere, Jia Hui Liang, Krzysztof Czarnecki, Vijay GaneshLearning-Sensitive Backdoors with RestartsIn Principles and Practice of Constraint Programming (CP’18), 453-469, Springer, 2018.Edward Zulkoski, Ruben Martins, Christoph M. Wintersteiger, Jia Hui Liang, Krzysztof Czarnecki, Vijay GaneshThe Effect of Structural Measures and Merges on SAT Solver PerformanceIn Principles and Practice of Constraint Programming (CP’18), 436-452, Springer, 2018.Yu Feng, Ruben Martins, Osbert Bastani, Işil DilligProgram Synthesis using Conflict-Driven LearningIn Conference on Programming Language Design and Implementation (PLDI’18), 420-435, ACM, 2018. Distinguished Paper Award.
-
2017Yu Feng, Ruben Martins, Jacob Van Geffen, Işil Dillig, Swarat ChaudhuriComponent-based synthesis of table consolidation and transformation tasks from examplesIn Conference on Programming Language Design and Implementation (PLDI’17), 422-436, ACM, 2017.Yu Feng, Ruben Martins, Yuepeng Wang, Işil Dillig, Thomas W. RepsComponent-based synthesis for complex APIsIn Symposium on Principles of Programming Languages (POPL’17), 599-612, ACM, 2017.Yu Feng, Osbert Bastani, Ruben Martins, Işil Dillig, Saswat AnandAutomated Synthesis of Semantic Malware Signatures using Maximum SatisfiabilityIn Network and Distributed System Security Symposium (NDSS’17), Internet Society, 2017.
-
2016Yuepeng Wang, Yu Feng, Ruben Martins, Arati Kaushik, Işil Dillig, Steven P. ReissHunter: next-generation code reuse for JavaIn International Symposium on Foundations of Software Engineering (FSE’16), 1028-1032, ACM, 2016.Martin Brain, Liana Hadarean, Daniel Kroening, Ruben MartinsAutomatic Generation of Propagation Complete SAT EncodingsIn International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI’16), 536-556, Springer, 2016.
-
2015Miguel Neves, Ruben Martins, Mikoláš Janota, Inês Lynce, Vasco ManquinhoExploiting Resolution-based Representations for MaxSAT SolvingIn International Conference on Theory and Applications of Satisfiability Testing (SAT’15), Springer, 2015.Saurabh Joshi, Ruben Martins, Vasco ManquinhoGeneralized Totalizer Encoding for Pseudo-Boolean ConstraintsIn Principles and Practice of Constraint Programming (CP’15), Springer, 2015.Samuel Bucheli, Daniel Kroening, Ruben Martins, Ashutosh NatrajFrom AgentSpeak to C for Unmanned Aerial VehiclesIn Towards Autonomous Robotic Systems (TAROS’15), Springer, 2015.Peter Schrammel, Daniel Kroening, Martin Brain, Ruben Martins, Tino Teige, Tom BienmüllerSuccessful Use of Incremental BMC in Automotive IndustryIn Formal Methods for Industrial Critical Systems (FMICS’15), Springer, 2015.
-
2014Ruben Martins, Saurabh Joshi, Vasco Manquinho, Inês LynceIncremental Cardinality Constraints for MaxSATIn Principles and Practice of Constraint Programming (CP’14), Springer, 2014. Most influential paper at CP’14.Ruben Martins, Vasco Manquinho, Inês LynceOpen-WBO: A Modular MaxSAT SolverIn International Conference on Theory and Applications of Satisfiability Testing (SAT’14), Springer, 2014.
-
2013Ruben Martins, Vasco Manquinho, Inês LynceCommunity-based Partitioning for MaxSAT SolvingIn International Conference on Theory and Applications of Satisfiability Testing (SAT’13), Springer, 2013.
-
2012Ruben Martins, Ana GraçaBoolean Satisfiability and Optimization: Games, Puzzles and Genetics (in Portuguese)In Números, Cirurgias e Nós de Gravata, 252-270, IST Press, 2012.Ruben Martins, Vasco Manquinho, Inês LynceOn Partitioning for Maximum SatisfiabilityIn European Conference on Artificial Intelligence (ECAI’12), IOS Press, 2012.Ruben Martins, Vasco Manquinho, Inês LynceClause Sharing in Parallel MaxSATIn Learning and Intelligent Optimization (LION’12), Springer, 2012.
-
2011Ruben Martins, Vasco Manquinho, Inês LynceExploiting Cardinality Encodings in Parallel Maximum SatisfiabilityIn International Conference on Tools with Artificial Intelligence (ICTAI’11), IEEE, 2011.
-
2010Vasco Manquinho, Ruben Martins, Inês LynceImproving Unsatisfiability-based Algorithms for Boolean OptimizationIn International Conference on Theory and Applications of Satisfiability Testing (SAT’10), Springer, 2010.Ruben Martins, Vasco Manquinho, Inês LynceImproving Search Space Splitting for Parallel SAT SolvingIn International Conference on Tools with Artificial Intelligence (ICTAI’10), IEEE, 2010.
Students
PhD Students:- Alvaro Silva (CSD, Affiliated CMU-Portugal, co-advised with Alexandra Mendes, current)
- Ricardo Brancas (CSD, Affiliated CMU-Portugal, co-advised with Vasco Manquinho, current)
- Margarida Ferreira (CSD, Dual Degree CMU-Portugal, co-advised with Ines Lynce, current)
- Aidan Yang (S3D, co-advised with Claire Le Goues, current)
- Daniel Ramos (S3D, Dual Degree CMU-Portugal, co-advised with Claire Le Goues and Vasco Manquinho, August 2025)
- PhD Thesis: Automated API Refactoring for Evolving Codebases
- First position: Software Engineer at Uber Technologies
- Current position: Software Engineer at Uber Technologies
- Shirley Yu (CSD, Senior Thesis, 2024-2025)
- Senior Thesis: Diversifying to Verify: Improving Program Verification with Diverse Equivalent Code
I am always happy to do research with undergraduate students at CMU for either senior thesis, SCS Independent Studies, 07-400, during the Summer or the REUSE program. I am also happy to work with Master's students for Independent Studies in the Computer Sciences (15-689) or for Master research theses (15-698).
Previous students that I mentored at CMU:
- Jose Ferreira (CMU-Portugal Visiting PhD Student, Fall 2025)
- Max Han (REUSE, Summer 2025)
- Martim Afonso (CMU-Portugal Visiting PhD Student, Fall 2024)
- Sophia Kolak (S3D, MSc Student, 2021-2024)
- Joao Sa (CMU-Portugal Visiting MSc Student, Fall 2023)
- Aditi Pande (07-400, Spring 2023)
- Stephanie Eristoff (07-400, Spring 2023)
- Hailie Mitchell (REUSE, Summer 2022)
- Andreia Pereira (Visiting MSc Student, Spring 2022)
- Pedro Nunes (Visiting MSc Student, Spring 2022)
- Joshua Clune (Research Project, 2019-2020)
- Harutyun Rehanyan (REUSE, Summer 2020)
- Aidan Yang (REUSE, Summer 2020)
- Audrey Seo (REUSE, Summer 2019)
- Daniel Gibert Llaurado (Visiting PhD Student, Fall 2019)
- Aaron Meyers (Internship, Summer 2019)
- Pedro Miguel Orvalho (Visiting MSc student, Spring 2019)
- Rodrigo Bernado (Visiting MSc Student, Spring 2019)
- Yinglan Chen (SCS Independent Studies, Spring 2019)
- Clara Sellke (SCS Independent Studies, Fall 2018)
- Naveen Pai (SCS Independent Studies, Fall 2018)
- David Chen (SCS Independent Studies, Fall 2018)
- Zachary Susag (REUSE, Summer 2018)
- Avital Rabinovitch (Internship, Summer 2018)
- Kaige Liu (SCS Independent Studies, Spring 2018)
- Anlun Xu (SCS Independent Studies, Spring 2018)
- Tianlei Pan (SCS Independent Studies, Spring 2018)
- Mayank Jai (SCS Independent Studies, Spring 2018)
Contact me if you are an undergraduate or master student that wants to work on constraint solving, program verification or program synthesis.
Teaching
MSCS
The Master of Science in Computer Science (MSCS) offers students with a bachelor's degree the opportunity to improve their training with advanced study in computer science. If you are interested in applying to the MSCS or want to know more about the program, please look at the following links:
For questions specific to the MSCS please do not email me directly but use the email:
csd-mscs-admissions@cs.cmu.edu