39 research outputs found
Tool Support for Correctness-by-Construction
Correctness-by-Construction (CbC) is an approach to incrementally create formally correct programs guided by pre- and postcondition specifications. A program is created using refinement rules that guarantee the resulting implementation is correct with respect to the specification. Although CbC is supposed to lead to code with a low defect rate, it is not prevalent, especially because appropriate tool support is missing. To promote CbC, we provide tool support for CbC-based program development. We present CorC, a graphical and textual IDE to create programs in a simple while-language following the CbC approach. Starting with a specification, our open source tool supports CbC developers in refining a program by a sequence of refinement steps and in verifying the correctness of these refinement steps using the theorem prover KeY. We evaluated the tool with a set of standard examples on CbC where we reveal errors in the provided specification. The evaluation shows that our tool reduces the verification time in comparison to post-hoc verification
Multiple keyword pattern matching using position encoded pattern lattices
Lettere En WysbegeerteSentrum vir Kennisdinamika & BesluitnemingPlease help us populate SUNScholar with the post print version of this article. It can be e-mailed to: [email protected]
Efficient representation of DNA data for pattern recognition using failure factor oracles
Please help populate SUNScholar with the full text of SU research output. Also - should you need this item urgently, please send us the details and we will try to get hold of the full text as quick possible. E-mail to [email protected]. Thank you.Lettere En WysbegeerteSentrum vir Kennisdinamika & Besluitnemin
A sequential recursive implementation of dead-zone single keyword pattern matching
Lettere En WysbegeerteSentrum vir Kennisdinamika & BesluitnemingPlease help us populate SUNScholar with the post print version of this article. It can be e-mailed to: [email protected]
Weak Factor Automata: Comparing (Failure) Oracles and Storacles
Please help populate SUNScholar with the full text of SU research output. Also - should you need this item urgently, please send us the details and we will try to get hold of the full text as quick possible. E-mail to [email protected]. Thank you.Lettere En WysbegeerteSentrum vir Kennisdinamika & Besluitnemin
A framework for the dynamic implementation of finite automata for performance enhancement
The aim of this work is to provide a model for the dynamic implementation of finite automata for enhanced performance. Investigations have shown that hardcoded finite automata outperforms the traditional table-driven implementation up to some threshold. Moreover, the kind of string being recognized plays a major role in the overall processing speed of the string recognizer. Various experiments are depicted to show when the advantages of using hardcoding as basis for implementing finite automata (instead of using the classical table-driven approach) become manifest. The model, a dynamic algorithm that combines both hardcoding and table-driven is introduced
Failure Deterministic Finite Automata
Lettere En WysbegeerteSentrum vir Kennisdinamika & BesluitnemingPlease help us populate SUNScholar with the post print version of this article. It can be e-mailed to: [email protected]
Experience with correctness-by-construction
We discuss the correctness-by-construction approach to software development, and our experience with this approach in various small to large scale algorithmic settings. We argue that although it is not realistic to apply the approach in developing every line of code of a software system, its pragmatic application to the algorithmically complex parts of such a system is worthwhile