ICEBAR: Feedback-Driven Iterative Repair of Alloy Specifications
Simón Gutiérrez Brida, Germán Regis, Guolong Zheng, Hamid Bagheri, ThanhVu Nguyen, Nazareno Aguirre, Marcelo F. Frias
摘要
Automated program repair (APR) techniques have shown great success in automatically finding fixes for programs in programming languages such as C or Java. In this work, we focus on repairing formal specifications, in particular for the Alloy specification language. As opposed to most APR tools, our approach to repair Alloy specifications, named ICEBAR, does not use test-based oracles for patch assessment. Instead, ICEBAR relies on the use of property-based oracles, commonly found in Alloy specifications as predicates and assertions. These property-based oracles define stronger conditions for patch assessment, thus reducing the notorious overfitting issue caused by using test-based oracles, typically observed in APR contexts. Moreover, as assertions and predicates are inherent to Alloy, whereas test cases are not, our tool is potentially more appealing to Alloy users than test-based Alloy repair tools. At a high level, ICEBAR is an iterative, counterexample-based process, that generates and validates repair candidates. ICEBAR receives a faulty Alloy specification with a failing property-based oracle, and uses Alloy's counterexamples to build tests and feed ARepair, a test-based Alloy repair tool, in order to produce a repair candidate. The candidate is then checked against the property oracle for overfitting: if the candidate passes, a repair has been found; if not, further counterexamples are generated to construct tests and enhance the test suite, and the process is iterated. ICEBAR includes different mechanisms, with different degrees of reliability, to generate counterexamples from failing predicates and assertions.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper4
- DLFix: context-based code transformation learning for automated program repairYi Li, Shaohua Wang, Tien N. NguyenICSE 2020 · 被引用 201 次
- Scalable analysis of interaction threats in IoT systemsMohannad Alhanahnah, Clay Stevens, Hamid BagheriISSTA 2020 · 被引用 63 次
- FLACK: Counterexample-Guided Fault Localization for Alloy ModelsGuolong Zheng, ThanhVu Nguyen, Simón Gutiérrez Brida, Germán Regis 等ICSE 2021 · 被引用 18 次
- Bounded Exhaustive Search of Alloy Specification RepairsSimón Gutiérrez Brida, Germán Regis, Guolong Zheng, Hamid Bagheri 等ICSE 2021 · 被引用 6 次
相关 Paper
- ATR: template-based repair for Alloy specificationsGuolong Zheng, ThanhVu Nguyen, Simón Gutiérrez Brida, Germán Regis 等ISSTA 2022 · 被引用 18 次
- PROPR: Property-Based Automatic Program RepairMatthías Páll Gissurarson, Leonhard Applis, Annibale Panichella, Arie van Deursen 等ICSE 2022 · 被引用 13 次
- Alloy Repair Hint Generation Based on Historical DataAna Barros, Henrique Neto, Alcino Cunha, Nuno Macedo 等FM 2024 · 被引用 2 次
- Automated Combinatorial Test Generation for AlloyAgustín Borda, Germán Regis, Nazareno Aguirre, Marcelo F. Frias 等ASE 2025
- Using Safety Properties to Generate Vulnerability PatchesZhen Huang, David Lie, Gang Tan, Trent JaegerS&P 2019 · 被引用 91 次
