• DocumentCode
    1759237
  • Title

    An I/O Efficient Approach for Detecting All Accepting Cycles

  • Author

    Lijun Wu ; Kaile Su ; Shaowei Cai ; Xiaosong Zhang ; Chenyi Zhang ; Shupeng Wang

  • Author_Institution
    Sch. of Comput. Sci. & Eng., Univ. of Electron. Sci. & Technol., Chengdu, China
  • Volume
    41
  • Issue
    8
  • fYear
    2015
  • fDate
    Aug. 1 2015
  • Firstpage
    730
  • Lastpage
    744
  • Abstract
    Existing algorithms for I/O Linear Temporal Logic (LTL) model checking usually output a single counterexample for a system which violates the property. However, in real-world applications, such as diagnosis and debugging in software and hardware system designs, people often need to have a set of counterexamples or even all counterexamples. For this purpose, we propose an I/O efficient approach for detecting all accepting cycles, called Detecting All Accepting Cycles (DAAC), where the properties to be verified are in LTL. Different from other algorithms for finding all cycles, DAAC first searches for the accepting strongly connected components (ASCCs), and then finds all accepting cycles of every ASCC, which can avoid searching for a great many paths that are impossible to be extended to accepting cycles. In order to further lower DAAC´s I/O complexity and improve its performance, we propose an intersection computation technique and a dynamic path management technique, and exploit a minimal perfect hash function (MPHF). We carry out both complexity and experimental comparisons with the state-of-the-art algorithms including Detect Accepting Cycle (DAC), Maximal Accepting Predecessors (MAP) and Iterative-Deepening Depth-First Search (IDDFS). The comparative results show that our approach is better on the whole in terms of I/O complexity and practical performance, despite the fact that it finds all counterexamples.
  • Keywords
    formal verification; temporal logic; ASCC; DAAC approach; DAC algorithm; I/O complexity; I/O linear temporal logic; IDDFS algorithm; LTL model checking; MPHF; accepting strongly connected components; detect accepting cycle algorithm; detecting all accepting cycles approach; dynamic path management technique; input-output efficient approach; intersection computation technique; iterative-deepening depth-first search algorithm; maximal accepting predecessors algorithm; minimal perfect hash function; Algorithm design and analysis; Complexity theory; Educational institutions; Heuristic algorithms; Model checking; Software; Software algorithms; Breath-First Search; Detection of All Accepting Cycles; Model Checking; Model checking; accepting strongly connected component; breath-first search; detection of all accepting cycles; state space explosion;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2015.2411284
  • Filename
    7056483