Specification Mining for Smart Contracts with Trace Slicing and Predicate Abstraction
<|reference_start|>Specification Mining for Smart Contracts with Trace Slicing and Predicate Abstraction: Smart contracts are computer programs running on blockchains to implement Decentralized Applications.The absence of contract specifications hinders routine tasks, such as contract understanding and testing. Inthis work, we propose a specification mining approach to infer contract specifications from past transactionhistories. Our approach derives high-level behavioral automata of function invocations, accompanied byprogram invariants statistically inferred from the transaction histories. We implemented our approach as toolSmConand evaluated it on eleven well-studied Azure benchmark smart contracts and six popular real-worldDApp smart contracts. The experiments show thatSmConmines reasonably accurate specifications that canbe used to facilitate DApp understanding and development in terms of document maintenance and test suite improvement.<|reference_end|>
@article{liu2024specification,
    title={Specification Mining for Smart Contracts with Trace Slicing and
  Predicate Abstraction},
    author={Ye Liu, Yi Li, Cyrille Artho, Yixuan Liu},
    journal={arXiv preprint arXiv:2403.13279},
    year={2024},
    archivePrefix={arXiv},
    eprint={2403.13279},
    primaryClass={cs.SE}
}