File Download

There are no files associated with this item.

  • Find it @ UNIST can give you direct access to the published full text of this article. (UNISTARs only)
Related Researcher

이주용

Yi, Jooyong
Programming Languages and Software Engineering Lab.
Read More

Views & Downloads

Detailed Information

Cited time in webofscience Cited time in scopus
Metadata Downloads

Efficient and formal generalized symbolic execution

Author(s)
Deng, XianghuaLee, JooyongRobby
Issued Date
2012-09
DOI
10.1007/s10515-011-0089-9
URI
https://scholarworks.unist.ac.kr/handle/201301/26254
Fulltext
https://link.springer.com/article/10.1007%2Fs10515-011-0089-9
Citation
AUTOMATED SOFTWARE ENGINEERING, v.19, no.3, pp.233 - 301
Abstract
Programs that manipulate dynamic heap objects are difficult to analyze due to issues like aliasing. Lazy initialization algorithm enables the classical symbolic execution to handle such programs. Despite its successes, there are two unresolved issues: (1) inefficiency; (2) lack of formal study. For the inefficiency issue, we have proposed two improved algorithms that give significant analysis time reduction over the original lazy initialization algorithm. In this article, we formalize the lazy initialization algorithm and the improved algorithms as operational semantics of a core subset of the Java Virtual Machine (JVM) instructions, and prove that all algorithms are relatively sound and complete with respect to the JVM concrete semantics. Finally, we conduct a set of extensive experiments that compare the three algorithms and demonstrate the efficiency of the improved algorithms.
Publisher
SPRINGER
ISSN
0928-8910
Keyword (Author)
Symbolic executionOperational semanticsJVMSoundnessCompleteness
Keyword
SOFTWARE MODEL CHECKINGSEPARATION LOGICVERIFICATIONPROGRAMSJAVAGENERATIONSOLVERSYSTEMTOOL

qrcode

Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.