Translation of Annotated COde (TACO) is a SAT-based tool for bounded verification of Java programs. One challenge many formal tools share is to provide a practical interface for a non-proficient user. In this article, we present an Eclipse plug-in for the static verifier TACO. This plug-in allows a user to walk a counterexample trace mimicking a debugging session. TacoPlug (our plug-in) uses and extends TACO to provide a better debugging experience. TacoPlug interface allows the user to verify an annotated software using the TACO verifier. If TACO finds a violation to the specification, TacoPlug presents it in terms of the annotated source code. TacoPlug features several views of the error trace to facilitate fault understanding. It resembl...
Static analysis tools cannot detect violations of application-specific rules. They can be extended w...
Dynamic compilation often comes at the price of reduced code quality, because there is not enough ti...
Pluggable type systems have been proposed in order to allow pro-grammers to easily extend a programm...
Abstract—In this work we present TacoPlug, an Eclipse plug-in that lets users explore error traces o...
SAT-based bounded verification of annotated code consists of translating the code together with the ...
Formal program verification can be used as a complementary technique to software testing. It allows ...
Software development and maintenance are costly endeavors. The cost can be reduced if more software ...
Well logically verified and tested software may fail because of undesired physical phenomena provoki...
In bounded program verification a finite set of execution traces is exhaustively checked in order to...
Formal verification is usually taught with a focus on functional languages, such as Agda, or special...
Software are increasingly complex and are unavoidably subject toprogramming errors (a.k.a. bugs). Th...
Static checking can verify the absence of errors in a program, but often requires written annotation...
Abstract. In this paper we describe our findings after integrating sev-eral tools based upon the Jav...
peer-reviewedWe devised a reachability analysis that exploits code annotations and implemented it a...
The errors that Java programmers are likely to encounter can roughly be categorized into three group...
Static analysis tools cannot detect violations of application-specific rules. They can be extended w...
Dynamic compilation often comes at the price of reduced code quality, because there is not enough ti...
Pluggable type systems have been proposed in order to allow pro-grammers to easily extend a programm...
Abstract—In this work we present TacoPlug, an Eclipse plug-in that lets users explore error traces o...
SAT-based bounded verification of annotated code consists of translating the code together with the ...
Formal program verification can be used as a complementary technique to software testing. It allows ...
Software development and maintenance are costly endeavors. The cost can be reduced if more software ...
Well logically verified and tested software may fail because of undesired physical phenomena provoki...
In bounded program verification a finite set of execution traces is exhaustively checked in order to...
Formal verification is usually taught with a focus on functional languages, such as Agda, or special...
Software are increasingly complex and are unavoidably subject toprogramming errors (a.k.a. bugs). Th...
Static checking can verify the absence of errors in a program, but often requires written annotation...
Abstract. In this paper we describe our findings after integrating sev-eral tools based upon the Jav...
peer-reviewedWe devised a reachability analysis that exploits code annotations and implemented it a...
The errors that Java programmers are likely to encounter can roughly be categorized into three group...
Static analysis tools cannot detect violations of application-specific rules. They can be extended w...
Dynamic compilation often comes at the price of reduced code quality, because there is not enough ti...
Pluggable type systems have been proposed in order to allow pro-grammers to easily extend a programm...