Enhancing Symbolic Execution of Heap-Based Programs with Separation Logic for Test Input Generation

The work

AuthorsLong H. Pham; Quang Loc Le; Quoc-Sang Phan; Jun Sun; Shengchao Qin
Editors
Typeinproceedings
Year2019
Citekeypham2019enhancing

Where it appeared

Published inAutomated Technology for Verification and Analysis - 17th International Symposium, ATVA 2019, Taipei, Taiwan, October 28-31, 2019, Proceedings
PublisherSpringer
SeriesLecture Notes in Computer Science
Number in series11781
Volume11781
Pages209--227

Abstract

Symbolic execution is a well established method for test input generation. Despite of having achieved tremendous success over numerical domains, existing symbolic execution techniques for heap-based programs are limited due to the lack of a succinct and precise description for symbolic values over unbounded heaps. In this work, we present a new symbolic execution method for heap-based programs based on separation logic. The essence of our proposal is context-sensitive lazy initialization, a novel approach for efficient test input generation. Our approach differs from existing approaches in two ways. Firstly, our approach is based on separation logic, which allows us to precisely capture preconditions of heap-based programs so that we avoid generating invalid test inputs. Secondly, we generate only fully initialized test inputs, which are more useful in practice compared to those partially initialized test inputs generated by the state-of-the-art tools. We have implemented our approach as a tool, called Java StarFinder, and evaluated it on a set of programs with complex heap inputs. The results show that our approach significantly reduces the number of invalid test inputs and improves the test coverage.

A copy is held

pdf, 926.7 kB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via bibtex
Added2026-08-05 00:00 UTC
Approved bya person 2026-08-16 15:43 UTC

Cite it as

@inproceedings{pham2019enhancing,
  title        = {Enhancing Symbolic Execution of Heap-Based Programs with Separation Logic for Test Input Generation},
  author       = {Long H. Pham and Quang Loc Le and Quoc-Sang Phan and Jun Sun and Shengchao Qin},
  year         = {2019},
  booktitle    = {Automated Technology for Verification and Analysis - 17th International Symposium, ATVA 2019, Taipei, Taiwan, October 28-31, 2019, Proceedings},
  publisher    = {Springer},
  series       = {Lecture Notes in Computer Science},
  volume       = {11781},
  pages        = {209--227},
  doi          = {10.1007/978-3-030-31784-3_12},
}

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