The Z notation: a reference manual
The Z notation: a reference manual
Symbolic model checking: an approach to the state explosion problem
Symbolic model checking: an approach to the state explosion problem
A classical mind
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Model checking for programming languages using VeriSoft
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Self-stabilizing systems in spite of distributed control
Communications of the ACM
Protocol Verification as a Hardware Design Aid
ICCD '92 Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Iterative context bounding for systematic testing of multithreaded programs
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Formal specification of the MPI-2.0 standard in TLA+
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Dynamic Model Checking with Property Driven Pruning to Detect Race Conditions
ATVA '08 Proceedings of the 6th International Symposium on Automated Technology for Verification and Analysis
MODIST: transparent model checking of unmodified distributed systems
NSDI'09 Proceedings of the 6th USENIX symposium on Networked systems design and implementation
Symbolic pruning of concurrent program executions
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
A symbolic verifier for CUDA programs
Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
An approach to formalization and analysis of message passing libraries
FMICS'07 Proceedings of the 12th international conference on Formal methods for industrial critical systems
Semantics Engineering with PLT Redex
Semantics Engineering with PLT Redex
Debugging support tool for MCAPI applications
Proceedings of the 8th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
Model checking agent programs by using the program interpreter
CLIMA'10 Proceedings of the 11th international conference on Computational logic in multi-agent systems
CRI: symbolic debugger for MCAPI applications
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
dBug: systematic testing of unmodified distributed and multi-threaded systems
Proceedings of the 18th international SPIN conference on Model checking software
Model checking machine code with the GNU debugger
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
JPF verification of habanero Java programs
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
This paper presents a formal modeling paradigm that is callable from C, the dominant language for embedded systems programming, for message passing APIs that provides reasonable assurance that the model correctly captures intended behavior. The model is a suitable reference solution for the API, and it supports putative what-if queries over API scenarios for behavior exploration, reproducibility for test and debug, full exhaustive search, and other advanced model checking analysis methods for C programs that use the API. This paper illustrates the modeling paradigm on the MCAPI interface, a growing industry standard message passing library, showing how the model exposes errors hidden by the C reference solution provided by the Multicore Association.