Finding and fixing faults

被引:17
|
作者
Jobstmann, Barbara [2 ,3 ]
Staber, Stefan
Griesmayer, Andreas [4 ]
Bloem, Roderick [1 ]
机构
[1] Graz Univ Technol, A-8010 Graz, Austria
[2] CNRS, Verimag, F-75700 Paris, France
[3] Univ Grenoble, Grenoble, France
[4] Imperial Coll London, London, England
关键词
Debugging; Fault localization; Fault correction; Verification; Games; Controller synthesis; Linear temporal logic; Memoryless strategies; Repair; DIAGNOSIS; REPAIR;
D O I
10.1016/j.jcss.2011.05.005
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Knowing that a program has a bug is good, knowing its location is better, but a fix is best. We present a method to automatically locate and correct faults in a finite state system, either at the gate level or at the source level. We assume that the specification is given in Linear Temporal Logic, and state the correction problem as a game, in which the protagonist selects a faulty component and suggests alternative behavior. The basic approach is complete but as complex as synthesis. It also suffers from problems of readability: the correction may add state and logic to the system. We present two heuristics. The first avoids the doubly exponential blowup associated with synthesis by using nondeterministic automata. The second heuristic finds a memoryless strategy, which we show is an NP-complete problem. A memoryless strategy corresponds to a simple, local correction that does not add any state. The drawback of the two heuristics is that they are not complete unless the specification is an invariant. Our approach is general: the user can define what constitutes a component, and the suggested correction can be art arbitrary combinational function of the current state and the inputs. We show experimental results supporting the applicability of our approach. (C) 2011 Published by Elsevier Inc.
引用
收藏
页码:441 / 460
页数:20
相关论文
共 50 条
  • [21] FINDING AND FIXING HOT PUMP BEARINGS
    SHIELDS, R
    CHEMICAL ENGINEERING, 1977, 84 (27) : 103 - 103
  • [22] Understanding and Fixing Complex Faults in Embedded Cyberphysical Systems
    Weiss, Alexander
    Gautham, Smitha
    Jayakumar, Athira Varma
    Elks, Carl R.
    Kuhn, D. Richard
    Kacker, Raghu N.
    Preusser, Thomas B.
    COMPUTER, 2021, 54 (01) : 49 - 60
  • [23] Our debates: Finding, fixing, and enacting reality
    Morawski, Jill
    THEORY & PSYCHOLOGY, 2011, 21 (02) : 260 - 274
  • [24] FINDING FAULTS IN FOCAL PLANE ARRAYS
    MOORE, CJL
    HENNESSY, J
    BAJAJ, J
    TENNANT, WE
    PHOTONICS SPECTRA, 1988, 22 (09) : 161 - &
  • [25] Finding the faults of no-fault naturalism
    Erion, GJ
    BEHAVIOR AND PHILOSOPHY, 1997, 25 (01) : 29 - 41
  • [26] Finding 'em? Following 'em? Fixing 'em?
    Koea, Jonathan
    ARCHIVES OF SURGERY, 2012, 147 (12) : 1084 - 1084
  • [27] Finding faults and engineering for earthquake survival
    Lama, Patrick J.
    Noise and Vibration Worldwide, 1994, 25 (07): : 7 - 12
  • [28] Finding and fixing cracks in high-temperature headers
    Kennefick, Peter
    POWER, 2007, 151 (02) : 45 - +
  • [29] Immunology - Deficient cellular immunity - Finding and fixing the defects
    Greenberg, PD
    Riddell, SR
    SCIENCE, 1999, 285 (5427) : 546 - 551
  • [30] Targeted Data Generation: Finding and Fixing Model Weaknesses
    He, Zexue
    Ribeiro, Marco Tulio
    Khani, Fereshte
    PROCEEDINGS OF THE 61ST ANNUAL MEETING OF THE ASSOCIATION FOR COMPUTATIONAL LINGUISTICS (ACL 2023): LONG PAPERS, VOL 1, 2023, : 8506 - 8520