TY - JOUR
T1 - General past-time linear temporal logic specification mining
AU - Shi, Jianqi
AU - Xiong, Jiawen
AU - Huang, Yanhong
N1 - Publisher Copyright:
© 2021, China Computer Federation (CCF).
PY - 2021/12
Y1 - 2021/12
N2 - Specification mining is an automated or semi-automated process for inferring models or properties from computer programs or systems and is a useful way to aid program understanding, monitoring, and verification. There have been many works on mining various forms of specifications, of which mining for temporal logic specifications is becoming increasingly interesting, as temporal logic is capable of formally describing and reasoning about software behaviors in terms of temporal order. Several approaches have been proposed to mine linear temporal logic (LTL) specifications. But compared to LTL, past-time linear temporal logic (PTLTL) enables specifying many system behaviors in more natural forms, such as a specification G(a→ Ob) stating “Once event a happens, another event b must have happened before it”, which is much more intuitive than the equivalent LTL specification ¬((¬b)U(a∧¬b)) for users and easier to check because of its shorter form. In this paper, we propose a general approach to mining PTLTL specifications. In addition, we present a cache strategy and a parallel strategy to make it faster and more scalable. We implement a tool named Past Time Linear Temporal Logic Miner (PTLM) and evaluate it. The result is encouraging.
AB - Specification mining is an automated or semi-automated process for inferring models or properties from computer programs or systems and is a useful way to aid program understanding, monitoring, and verification. There have been many works on mining various forms of specifications, of which mining for temporal logic specifications is becoming increasingly interesting, as temporal logic is capable of formally describing and reasoning about software behaviors in terms of temporal order. Several approaches have been proposed to mine linear temporal logic (LTL) specifications. But compared to LTL, past-time linear temporal logic (PTLTL) enables specifying many system behaviors in more natural forms, such as a specification G(a→ Ob) stating “Once event a happens, another event b must have happened before it”, which is much more intuitive than the equivalent LTL specification ¬((¬b)U(a∧¬b)) for users and easier to check because of its shorter form. In this paper, we propose a general approach to mining PTLTL specifications. In addition, we present a cache strategy and a parallel strategy to make it faster and more scalable. We implement a tool named Past Time Linear Temporal Logic Miner (PTLM) and evaluate it. The result is encouraging.
KW - Past-time linear temporal logic
KW - Runtime verification
KW - Specification mining
UR - https://www.scopus.com/pages/publications/85131808183
U2 - 10.1007/s42514-021-00079-4
DO - 10.1007/s42514-021-00079-4
M3 - 文章
AN - SCOPUS:85131808183
SN - 2524-4922
VL - 3
SP - 393
EP - 406
JO - CCF Transactions on High Performance Computing
JF - CCF Transactions on High Performance Computing
IS - 4
ER -