scispace - formally typeset
W

Willem Visser

Researcher at Stellenbosch University

Publications -  142
Citations -  8492

Willem Visser is an academic researcher from Stellenbosch University. The author has contributed to research in topics: Model checking & Symbolic execution. The author has an hindex of 42, co-authored 133 publications receiving 7978 citations. Previous affiliations of Willem Visser include Research Institute for Advanced Computer Science & Ames Research Center.

Papers
More filters
Journal ArticleDOI

Model checking programs

TL;DR: A verification and testing environment for Java, called Java PathFinder (JPF), which integrates model checking, program analysis and testing, and uses state compression to handle big states and partial order and symmetry reduction, slicing, abstraction, and runtime analysis techniques to reduce the state space.
Book ChapterDOI

Generalized symbolic execution for model checking and testing

TL;DR: In this paper, a source-to-source translation is defined to instrument a program, which enables standard model checkers to perform symbolic execution of the program and gives a novel symbolic execution algorithm that handles dynamically allocated structures (e.g., lists and trees), method preconditions (i.e., acyclicity), data (e, integers and strings) and concurrency.
Proceedings ArticleDOI

Test input generation with java PathFinder

TL;DR: The main contribution of this work is to show how efficient white-box test input generation can be done for code manipulating complex data, taking into account complex method preconditions.
Proceedings ArticleDOI

Symbolic execution for software testing in practice: preliminary assessment

TL;DR: Symbolic execution is a program analysis technique introduced in the 70s that has received renewed interest in recent years, due to algorithmic advances and increased availability of computational power and constraint solving technology.
Book ChapterDOI

JPF-SE: a symbolic execution extension to Java PathFinder

TL;DR: JPF-SE uses JPF to generate and explore symbolic execution paths and it uses off-the-shelf decision procedures to manipulate numeric constraints.