An approach to systems verification
Journal of Automated Reasoning
Semantics with applications: a formal introduction
Semantics with applications: a formal introduction
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Computer architecture (2nd ed.): a quantitative approach
Computer architecture (2nd ed.): a quantitative approach
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Concurrency verification: introduction to compositional and noncompositional methods
Concurrency verification: introduction to compositional and noncompositional methods
The Science of Programming
Modern Compiler Implementation in C
Modern Compiler Implementation in C
Computer Architecture: Complexity and Correctness
Computer Architecture: Complexity and Correctness
Mechanizing Mathematical Reasoning: Essays in Honor of Jörg H. Siekmann on the Occasion of His 60th Birthday (Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence)
Dealing with I/O Devices in the Context of Pervasive System Verification
ICCD '05 Proceedings of the 2005 International Conference on Computer Design
Towards the Formal Verification of a C0 Compiler: Code Generation and Implementation Correctnes
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
A Formal Model of Lower System Layers
FMCAD '06 Proceedings of the Formal Methods in Computer Aided Design
Realistic worst-case execution time analysis in the context of pervasive system verification
Program analysis and compilation, theory and practice
Verifying a chipcard-based biometric identification protocol in VSE
SAFECOMP'06 Proceedings of the 25th international conference on Computer Safety, Reliability, and Security
Integration of a software model checker into isabelle
LPAR'05 Proceedings of the 12th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
On the correctness of operating system kernels
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
System description: Combination of Isabelle/HOL with automatic tools
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
On the verification of memory management mechanisms
CHARME'05 Proceedings of the 13 IFIP WG 10.5 international conference on Correct Hardware Design and Verification Methods
Verifying timing behavior by abstract interpretation of executable code
CHARME'05 Proceedings of the 13 IFIP WG 10.5 international conference on Correct Hardware Design and Verification Methods
Towards modularized verification of distributed time-triggered systems
FM'06 Proceedings of the 14th international conference on Formal Methods
Verification of distributed applications
SAFECOMP'07 Proceedings of the 26th international conference on Computer Safety, Reliability, and Security
Formal Functional Verification of Device Drivers
VSTTE '08 Proceedings of the 2nd international conference on Verified Software: Theories, Tools, Experiments
Journal of Automated Reasoning
Proving Fairness and Implementation Correctness of a Microkernel Scheduler
Journal of Automated Reasoning
Formal Memory Models for the Verification of Low-Level Operating-System Code
Journal of Automated Reasoning
Automatic verification for interactive graphical programs
Proceedings of the Eighth International Workshop on the ACL2 Theorem Prover and its Applications
FMICS '09 Proceedings of the 14th International Workshop on Formal Methods for Industrial Critical Systems
Hi-index | 0.00 |
Implementations of computer systems comprise many layers and employ a variety of programming languages. Building such systems requires support of an often complex, accompanying tool chain. The Verisoft project deals with the formal pervasive verification of computer systems. Making use of appropriate formal specification and proof tools, this task requires (i) specifying the layers and languages used in the implementation, (ii) specifying and verifying the algorithms employed by the tool chain (or, alternatively, validating their actual output), and (iii) proving simulation statements between layers, arguing about the programs residing at the different layers. Combining the simulation statements for all layers should allow to transfer correctness results for top-layer programs to their bottom-layer representation; in this manner, a verified stack can be built. Maintaining all formal artifacts, the actual system implementation, and the (verification) tool chain is a challenging task. We call sets of tools that help addressing this task system verification environments. In this paper, we describe the structure, contents, and architecture of the system verification environment used in the Verisoft project.