Omar I. Al-Bataineh

Research Scientist at the Gran Sasso Science Institute, Italy

Omar I. Al-Bataineh
﴿وَقُل رَّبِّ زِدْنِي عِلْمًا﴾ طه: ١١٤

News

Bio

I am a Research Scientist at the Gran Sasso Science Institute (GSSI), Italy, working on the foundations of automated program analysis. My research develops formal and algorithmic frameworks for automated program repair, fault interaction, and software verification — with a particular focus on settings where classical single-fault assumptions break down and standard correctness guarantees no longer hold. My work has appeared in leading software engineering venues including ICSE, ASE, TOSEM, SANER, ICSME, FASE, JSS, and ACM TECS.

I earned my Ph.D. in Computer Science from the University of Western Australia, an M.Sc. from the University of New South Wales, and a B.Sc. in Computer Engineering from Jordan University of Science and Technology. Prior to GSSI, I held research positions at Simula Research Laboratory (Norway), the National University of Singapore, and Nanyang Technological University — collaborating across the software engineering and formal verification communities.

Research

Modern software systems are increasingly analyzed, verified, and repaired using automated reasoning techniques. Most of these techniques, however, rely on simplifying assumptions about program behavior, fault independence, or algorithmic decidability that often fail in realistic software. My research develops the formal and algorithmic foundations needed to reason about these limitations, combining software engineering, formal methods, and program analysis to build techniques that are both theoretically sound and practically applicable.


Theme 1: Foundations of Interaction-Aware Software Engineering

Software faults rarely occur in isolation. Their interactions, including masking, cascading, and synergistic effects, can fundamentally alter program behavior and challenge conventional approaches to testing, debugging, verification, automated repair, and fault localization. My research develops formal foundations for fault interaction and translates them into interaction-aware techniques for symbolic execution, program analysis, verification, fuzzing, and automated program repair. The long-term objective is to establish a unified foundation for software engineering in which analysis and repair explicitly account for interacting faults rather than assuming their independence.


Theme 2: Foundations of Automated Reasoning and Decidability

My second research direction investigates the theoretical limits of automated software reasoning. I study how computability, formal verification, symbolic reasoning, termination analysis, and program semantics shape what automated techniques can guarantee. This includes establishing formal limits such as the undecidability of repair overfitting, developing verification-aware reasoning frameworks, and integrating semantic properties—including correctness, termination, and performance—into automated analysis and synthesis. The broader goal is to design software engineering methods whose guarantees are explicitly aligned with the underlying theory of computation.

These two threads feed into a broader, long-term research agenda — a living collection of open problems spanning multi-fault software engineering, automated program repair, symbolic execution, software verification, fuzzing, and the theoretical foundations of automated software reasoning, motivating future work and potential collaborations.

Explore the full research agenda

Selected Publications

ICSE ’26

The Undecidability of Overfitting in Automated Program Repair

Omar I. Al-Bataineh

We establish that determining whether an automated program repair system will overfit is undecidable in general, characterizing fundamental limits on fully automated patch validation.

ASE ’25

Debugging the Undebuggable: Why Multi-Fault Programs Break Debugging and Repair Tools

Omar I. Al-Bataineh

We develop a formal model of interacting faults and show how masking, synergy, and cascading effects undermine conventional debugging and automated repair approaches for multi-fault programs.

ASE ’25

Interaction-Aware Patch Assessment for Multi-Fault Automated Program Repair

Omar I. Al-Bataineh

We investigate how interactions among multiple faults affect patch assessment and motivate validation techniques that account for fault interactions rather than treating faults independently.

ICSME ’25

Towards Interaction-Aware Validation Oracles for Multi-Fault Program Repair

Omar I. Al-Bataineh

We formulate interaction-aware validation oracles for multi-fault program repair, accounting for masking, synergy, cascading, and independence among faults.

SANER ’25

Towards Developing Effective Oracles to Reduce Patch Overfitting in Automated Program Repair

Omar I. Al-Bataineh

We investigate the relationship between automated program repair and program termination, and extend test-based patch validation with oracles for the absence of erroneous behavior and successful termination of the patched program.

SANER ’25

Reduce before you repair: advantages of combining program slicing with automated program repair

Omar I. Al-Bataineh

We describe a repair framework that uses program slicing to eliminate code irrelevant to the target bug, reducing the repair problem while preserving the ability to generate correct patches.

ASE ’24

A Formal Treatment of Performance Bugs

Omar I. Al-Bataineh

We provide a formal characterization of performance bugs and their behavioral consequences, establishing a foundation for reasoning about performance-related defects.

FASE ’24

Invariant-based Program Repair

Omar I. Al-Bataineh

We investigate invariant-based reasoning as a foundation for automated program repair, using behavioral invariants to guide and constrain the repair process.

JSS ’24

Extending the Range of Bugs that Automated Program Repair Can Handle

Omar I. Al-Bataineh, Leon Moonen, and Linas Vidziunas

We devise a bug classification system for bugs that lack observable erroneous behavior (e.g. termination and non-functional bugs) and show that integrating dynamic APR with formal analysis techniques such as termination provers and model checkers extends the range of bugs APR can handle.

QRS ’22

Towards Extending the Range of Bugs That Automated Program Repair Can Handle

Omar I. Al-Bataineh and Leon Moonen

We explore how automated program repair can be extended to address bug classes beyond those traditionally handled by existing repair approaches.

TOSEM ’20

Smart Contract Repair

Xiao Liang Yu, Omar I. Al-Bataineh, David Lo, and Abhik Roychoudhury

We present the first general-purpose, gas-aware automated smart contract repair approach, using a search-based method guided by a novel gas dominance relationship among candidate patches.

Collaborators

My research spans the software engineering and formal methods communities, with active collaborations across both.

I welcome opportunities to collaborate with researchers and highly motivated students on challenging problems in software engineering, formal methods, program analysis, software verification, automated program repair, symbolic execution, software testing, and related areas.

Teaching

Contact

Email: omar.albataineh@gssi.it