• DocumentCode
    1566556
  • Title

    Inferring specifications to detect errors in code

  • Author

    Taghdiri, Mana

  • Author_Institution
    Comput. Sci. & AI Lab, Massachusetts Inst. of Technol., Cambridge, MA
  • fYear
    2004
  • Firstpage
    144
  • Lastpage
    153
  • Abstract
    A new static program analysis method for checking structural properties of code is proposed. The user need only provide a property to check; no further annotations are required. An initial abstraction of the code is computed that over-approximates the effect of function calls. This abstraction is then iteratively refined in response to spurious counterexamples. The refinement involves inferring a context-dependent specification for each function call, so that only as much information about a function is used as is necessary to analyze its caller. When the algorithm terminates, the remaining counterexample is guaranteed not to be spurious, but because the program and its heap are finitized, absence of a counterexample does not constitute proof
  • Keywords
    formal specification; program diagnostics; program verification; code abstraction; code error detection; context-dependent specification; function calls; static program analysis; structural property checking; Artificial intelligence; Computer errors; Computer science; Detectors; Information analysis; Iterative algorithms; Java; Performance analysis; Software engineering; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering, 2004. Proceedings. 19th International Conference on
  • Conference_Location
    Linz
  • ISSN
    1938-4300
  • Print_ISBN
    0-7695-2131-2
  • Type

    conf

  • DOI
    10.1109/ASE.2004.1342732
  • Filename
    1342732