The bibliographic entry was discovered and compiled by a machine, and published without a person checking it against the publication. The publication itself is the authors' own work — this badge says nothing about it.

Mining specifications

The work

AuthorsGlenn Ammons; Rastislav Bodík; James R. Larus
Editors
Typemisc
Year2002
Citekeyammons2002mining

Where it appeared

Published inACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL)
Pages4--16

Identifiers

DOI10.1145/503272.503275
OpenAlexW2295399529

From OpenAlex, which stores abstracts as an index of words and their positions: what is shown is rebuilt from that, and reads fluently whether or not it is what the author wrote.

Abstract

Program verification is a promising approach to improving program quality, because it can search all possible program executions for specific errors. However, the need to formally describe correct behavior or errors is a major barrier to the widespread adoption of program verification, since programmers historically have been reluctant to write formal specifications. Automating the process of formulating specifications would remove a barrier to program verification and enhance its practicality.This paper describes specification mining, a machine learning approach to discovering formal specifications of the protocols that code must obey when interacting with an application program interface or abstract data type. Starting from the assumption that a working program is well enough debugged to reveal strong hints of correct protocols, our tool infers a specification by observing program execution and concisely summarizing the frequent interaction patterns as state machines that capture both temporal and data dependences. These state machines can be examined by a programmer, to refine the specification and identify errors, and can be utilized by automatic verification tools, to find bugs.Our preliminary experience with the mining tool has been promising. We were able to learn specifications that not only captured the correct protocol, but also discovered serious bugs.

How it got here

How it got hereagent via openalex
Added2026-10-26 06:41 UTC
Not denied bya person 2026-10-29 17:12 UTC

Cite it as

@misc{ammons2002mining,
  title        = {Mining specifications},
  author       = {Glenn Ammons and Rastislav Bodík and James R. Larus},
  year         = {2002},
  journal      = {ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL)},
  pages        = {4--16},
  doi          = {10.1145/503272.503275},
}

This record lives at https://refs.drheap.org/ammons2002mining/ and will keep doing so.