Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation

Libraries usually impose constraints on how clients should use them. Often these constraints are not well-documented. In this paper, we address the problem of recovering such constraints automatically, a problem referred to as specification mining. Given some client programs that use a given library...

Full description

Saved in:
Bibliographic Details
Main Authors: LO, David, Ramalingam, Ganesan, Ranganath, Venkatesh-Prasad, Vaswani, Kapil
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2009
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/479
https://ink.library.smu.edu.sg/context/sis_research/article/1478/viewcontent/wcre09.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-1478
record_format dspace
spelling sg-smu-ink.sis_research-14782018-02-07T08:42:04Z Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation LO, David Ramalingam, Ganesan Ranganath, Venkatesh-Prasad Vaswani, Kapil Libraries usually impose constraints on how clients should use them. Often these constraints are not well-documented. In this paper, we address the problem of recovering such constraints automatically, a problem referred to as specification mining. Given some client programs that use a given library, we identify constraints on the library usage that are (almost) satisfied by the given set of clients.The class of rules we target for mining combines simple binary temporal operators with state predicates (involving equality constraints) and quantification. This is a simple yet expressive subclass of temporal properties that allows us to capture many common API usage rules. We focus on recovering rules from execution traces and apply classical data mining concepts to be robust against bugs (API usage rule violations) in clients. We present new algorithms for mining rules from execution traces. We show how a propositional rule mining algorithm can be generalized to treat quantification and state predicates in a unified way. Our approach enables the miner to be complete — mine all rules within the targeted class that are satisfied by the given traces — while avoiding an exponential blowup.We have implemented these algorithms and used them to mine API usage rules for several Windows APIs. Our experiments show the efficiency and effectiveness of our approach. 2009-10-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/479 info:doi/10.1109/WCRE.2009.42 https://ink.library.smu.edu.sg/context/sis_research/article/1478/viewcontent/wcre09.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Software Engineering
spellingShingle Software Engineering
LO, David
Ramalingam, Ganesan
Ranganath, Venkatesh-Prasad
Vaswani, Kapil
Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
description Libraries usually impose constraints on how clients should use them. Often these constraints are not well-documented. In this paper, we address the problem of recovering such constraints automatically, a problem referred to as specification mining. Given some client programs that use a given library, we identify constraints on the library usage that are (almost) satisfied by the given set of clients.The class of rules we target for mining combines simple binary temporal operators with state predicates (involving equality constraints) and quantification. This is a simple yet expressive subclass of temporal properties that allows us to capture many common API usage rules. We focus on recovering rules from execution traces and apply classical data mining concepts to be robust against bugs (API usage rule violations) in clients. We present new algorithms for mining rules from execution traces. We show how a propositional rule mining algorithm can be generalized to treat quantification and state predicates in a unified way. Our approach enables the miner to be complete — mine all rules within the targeted class that are satisfied by the given traces — while avoiding an exponential blowup.We have implemented these algorithms and used them to mine API usage rules for several Windows APIs. Our experiments show the efficiency and effectiveness of our approach.
format text
author LO, David
Ramalingam, Ganesan
Ranganath, Venkatesh-Prasad
Vaswani, Kapil
author_facet LO, David
Ramalingam, Ganesan
Ranganath, Venkatesh-Prasad
Vaswani, Kapil
author_sort LO, David
title Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
title_short Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
title_full Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
title_fullStr Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
title_full_unstemmed Mining Quantified Temporal Rules: Formalism, Algorithms, and Evaluation
title_sort mining quantified temporal rules: formalism, algorithms, and evaluation
publisher Institutional Knowledge at Singapore Management University
publishDate 2009
url https://ink.library.smu.edu.sg/sis_research/479
https://ink.library.smu.edu.sg/context/sis_research/article/1478/viewcontent/wcre09.pdf
_version_ 1770570449856495616