We have provided mechanical veriication support for the DisCo language. DisCo is an object oriented speciication language for the speciication of reactive systems. The paper has two main contributions. The rst one is a mapping of object oriented speciications to the PVS theorem prover, where their invariant properties can be mechanically veriied. The second… (More)
While sequential behavior of single objects is fairly well understood , orchestrating the collective behavior emerging from the behaviors of individual objects continues to be a challenging task. This is especially true for distributed reactive systems. The joint action paradigm is a design methodology that concentrates on the collective behavior of… (More)
Software design aims at a mapping from domain concepts to an implementation. Abstractions that are not highlighted in the implementation structure often exist only in the minds of the developers during development. While this works reasonably well for single-purpose systems, software product lines, i.e., systems built by reusing the same core functionality,… (More)
Purpose of embedded computing is to transform input data to output format. Functionality required to achieve this goal is therefore combination of operation executions on computing units and data transfers between those units. To avoid memory bottlenecks, processors use register files to store data during computation.
Software bypassing is a technique that allows programmer-controlled direct transfer of results of computations to the operands of data dependent operations, possibly removing the need to store some values in general purpose registers, while reducing the number of reads from the register file. Software bypassing also improves instruction level paral-lelism… (More)
Multithreading is an important software modularization technique. However, it can incur substantial overheads, especially in processors where the amount of architecturally visible state is large. We propose an implementation technique for co-operative multithreading, where context switches occur in places that minimize the amount of state that needs to be… (More)
We present an annotated specification of the consensus protocol of Paxos, the " Single-Decree Synod ". The protocol reaches consensus in a distributed system under non-Byzantine failures. The specification is given in the logic of the PVS theorem prover, and we verify a safety property stating the partial correctness of the algorithm. The specification is… (More)