Testing Program Analyzers Ad Absurdum

MirandaTesting aims to develop a systematic methodology for testing program analyzers to detect critical bugs, enhancing software reliability in safety-critical applications.

Subsidie
€ 1.499.991
2023

Projectdetails

Introduction

Program analyzers act as guards for ensuring the reliability of modern-day software. But who guards the guards themselves? Due to their high complexity and sophisticated algorithms, analyzers are likely to contain critical bugs, which we define as those leading to wrong results, e.g., returning correct for incorrect software. Such bugs may have detrimental consequences, especially in safety-critical settings. It is, therefore, imperative to be able to detect them.

Problem Statement

Verifying the absence of critical bugs in a program analyzer is prohibitively expensive. Contrary to verification, automated test generation can be used to effectively find such bugs. Existing testing approaches, however, are still in their infancy for this application domain.

Project Goals

To address this issue, MirandaTesting will develop the first principled methodology for testing a wide range of program analyzers. At its core, our methodology exposes more information about why an analyzer computes a particular result; it then uses this information to interrogate the analyzer aiming to force it into a contradiction, thus revealing a critical bug. The project has the following goals:

  1. Design a general framework for testing program analyzers using the MirandaTesting methodology.
  2. Develop interrogation strategies pertaining to eleven prevalent classes of program analyzers.
  3. Demonstrate the effectiveness of concrete instantiations of the general framework and interrogation strategies for several popular program analyzers from each class.
  4. Focus on disseminating our methodology and infrastructure.

Expected Outcomes

If successful, MirandaTesting will enable systematic testing of entire program-analyzer classes. As a result, analyzers will exhibit fewer critical bugs, potentially preventing catastrophic outcomes in safety-critical domains.

Financiële details & Tijdlijn

Financiële details

Subsidiebedrag€ 1.499.991
Totale projectbegroting€ 1.499.991

Tijdlijn

Startdatum1-7-2023
Einddatum30-6-2028
Subsidiejaar2023

Partners & Locaties

Projectpartners

  • TECHNISCHE UNIVERSITAET WIENpenvoerder

Land(en)

Austria

Vergelijkbare projecten binnen European Research Council

ERC Advanced...

Semantics of Software Systems

The project aims to automate software testing, debugging, and monitoring by developing bots that learn system behavior and generate oracles, enhancing developer productivity and software reliability.

€ 2.500.000
ERC Proof of...

Realizing the benefits of safety-security co-analysis through effective tool support

RUBICON aims to develop a proof-of-concept software tool for integrated safety-security risk analysis in technology, enhancing decision-making through advanced algorithms and multi-objective optimization.

€ 150.000
ERC Advanced...

Self-Optimizing Static Program Analysis

SOSA aims to revolutionize static program analysis by creating self-adaptive analyses that optimize performance and precision, enhancing software security and developer efficiency.

€ 2.500.000
ERC Proof of...

A Deductive Verifier for Probabilistic Programs

The project aims to commercialize a novel deductive verifier for probabilistic programs by integrating invariant synthesis and program slicing, targeting users and conducting market analysis.

€ 150.000
ERC Consolid...

CertiFOX: Certified First-Order Model Expansion

This project aims to develop methodologies for ensuring 100% correctness in combinatorial optimization solutions by providing end-to-end proof logging from user specifications to solver outputs.

€ 1.999.928

Vergelijkbare projecten uit andere regelingen

Mkb-innovati...

Academic Language Checker (ALC)

Het project onderzoekt de haalbaarheid van een slimme Academic Language Checker om academische schrijfproblemen van studenten met taalbeheersingsproblemen te identificeren en te verhelpen.

€ 20.000
Mkb-innovati...

Onderzoek geautomatiseerde runtime verificatie van games

Het project ontwikkelt geautomatiseerde performance tests voor kleine gamestudio's om sneller en efficiënter bugs op meerdere consoles op te sporen, wat leidt tot verbeterde gamekwaliteit en omzetgroei.

€ 20.000
Mkb-innovati...

Integrated Safety for Deeply Embedded Systems Software (ISAFE)

Het ISAFE-project ontwikkelt een geïntegreerde aanpak voor de kwalificatie van softwaretools in veiligheid kritische systemen, gericht op het voldoen aan veiligheidsstandaarden en het verbeteren van softwareontwikkeling.

€ 160.200