• DocumentCode
    1508836
  • Title

    Combining static concurrency analysis with symbolic execution

  • Author

    Young, Michal ; Taylor, Richard N.

  • Author_Institution
    Dept. of Inf. & Comput. Sci., California Univ., Irvine, CA, USA
  • Volume
    14
  • Issue
    10
  • fYear
    1988
  • Firstpage
    1499
  • Lastpage
    1511
  • Abstract
    Static concurrency analysis detects anomalous synchronization patterns in concurrent programs, but may also report spurious errors involving infeasible execution paths. Integrated application of static concurrency analysis and symbolic execution sharpens the results of the former without incurring the full costs of the latter when applied in isolation. Concurrency analysis acts as a path selection mechanism for symbolic execution, while symbolic execution acts as a pruning mechanism for concurrency analysis. Methods of combining the techniques follow naturally from explicit characterization and comparison of the state spaces explored by each, suggesting a general approach for integrating state-based program analysis techniques in a software development environment.<>
  • Keywords
    parallel programming; program testing; concurrency analysis; concurrent programs; path selection mechanism; program analysis; program testing; software development environment; static concurrency analysis; symbolic execution; synchronization patterns; Algorithm design and analysis; Computer errors; Concurrent computing; Costs; Error correction; History; Pattern analysis; Programming; State-space methods; System recovery;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.6195
  • Filename
    6195