544 research outputs found
Advanced technical developments in support of scientific experiments in space
A technique was developed for preparing solid state, lithium-drifted silicon detectors. Hollow cylindrical detectors were built and tested for possible use as anticoincidence shields to replace conventional plastic scintillators and photomultipliers. A fission cell was developed for the Pioneer F/G instruments and the IMP I subsystem. An electron current detector was developed for Jovian belt measurements of electron flux. A number of circuits and semiconductor devices was also developed
The cosmic ray telescope for the mariner-mars mission final engineering report
Cosmic ray telescope for Mariner space probe - test of component
Monotonic Prefix Consistency in Distributed Systems
We study the issue of data consistency in distributed systems. Specifically,
we consider a distributed system that replicates its data at multiple sites,
which is prone to partitions, and which is assumed to be available (in the
sense that queries are always eventually answered). In such a setting, strong
consistency, where all replicas of the system apply synchronously every
operation, is not possible to implement. However, many weaker consistency
criteria that allow a greater number of behaviors than strong consistency, are
implementable in available distributed systems. We focus on determining the
strongest consistency criterion that can be implemented in a convergent and
available distributed system that tolerates partitions. We focus on objects
where the set of operations can be split into updates and queries. We show that
no criterion stronger than Monotonic Prefix Consistency (MPC) can be
implemented.Comment: Submitted pape
Locality and Singularity for Store-Atomic Memory Models
Robustness is a correctness notion for concurrent programs running under
relaxed consistency models. The task is to check that the relaxed behavior
coincides (up to traces) with sequential consistency (SC). Although
computationally simple on paper (robustness has been shown to be
PSPACE-complete for TSO, PGAS, and Power), building a practical robustness
checker remains a challenge. The problem is that the various relaxations lead
to a dramatic number of computations, only few of which violate robustness.
In the present paper, we set out to reduce the search space for robustness
checkers. We focus on store-atomic consistency models and establish two
completeness results. The first result, called locality, states that a
non-robust program always contains a violating computation where only one
thread delays commands. The second result, called singularity, is even stronger
but restricted to programs without lightweight fences. It states that there is
a violating computation where a single store is delayed.
As an application of the results, we derive a linear-size source-to-source
translation of robustness to SC-reachability. It applies to general programs,
regardless of the data domain and potentially with an unbounded number of
threads and with unbounded buffers. We have implemented the translation and
verified, for the first time, PGAS algorithms in a fully automated fashion. For
TSO, our analysis outperforms existing tools
SVtL: System Verification through Logic: tool support for verifying sliced hierarchical statecharts
SVtL is the core of a slicing-based verification environment for UML statechart models. We present an overview of the SVtL software architecture. Special attention is paid to the slicing approach. Slicing reduces the complexity of the verification approach, based on removing pieces of the model that are not of interest during verification. In [18] a slicing algorithm has been proposed for statecharts, but it was not able to handle orthogonal regions efficiently. We optimize this algorithm by removing false dependencies, relying on the broadcasting mechanism between different parts of the statechart model
Reasoning algebraically about refinement on TSO architectures
The Total Store Order memory model is widely implemented by modern multicore architectures such as x86, where local buffers are used for optimisation, allowing limited forms of instruction reordering. The presence of buffers and hardware-controlled buffer flushes increases the level of non-determinism from the level specified by a program, complicating the already difficult task of concurrent programming. This paper presents a new notion of refinement for weak memory models, based on the observation that pending writes to a process' local variables may be treated as if the effect of the update has already occurred in shared memory. We develop an interval-based model with algebraic rules for various programming constructs. In this framework, several decomposition rules for our new notion of refinement are developed. We apply our approach to verify the spinlock algorithm from the literature
A Quantum solution to the Byzantine agreement problem
We present a solution to an old and timely problem in distributed computing.
Like Quantum Key Distribution (QKD), quantum channels make it possible to
achieve taks classically impossible. However, unlike QKD, here the goal is not
secrecy but agreement, and the adversary is not outside but inside the game,
and the resources require qutrits.Comment: 4 pages, 1 figur
An open extensible tool environment for Event-B
Abstract. We consider modelling indispensable for the development of complex systems. Modelling must be carried out in a formal notation to reason and make meaningful conjectures about a model. But formal modelling of complex systems is a difficult task. Even when theorem provers improve further and get more powerful, modelling will remain difficult. The reason for this that modelling is an exploratory activity that requires ingenuity in order to arrive at a meaningful model. We are aware that automated theorem provers can discharge most of the onerous trivial proof obligations that appear when modelling systems. In this article we present a modelling tool that seamlessly integrates modelling and proving similar to what is offered today in modern integrated development environments for programming. The tool is extensible and configurable so that it can be adapted more easily to different application domains and development methods.
Rendezvous on a Line by Location-Aware Robots Despite the Presence of Byzantine Faults
A set of mobile robots is placed at points of an infinite line. The robots
are equipped with GPS devices and they may communicate their positions on the
line to a central authority. The collection contains an unknown subset of
"spies", i.e., byzantine robots, which are indistinguishable from the
non-faulty ones. The set of the non-faulty robots need to rendezvous in the
shortest possible time in order to perform some task, while the byzantine
robots may try to delay their rendezvous for as long as possible. The problem
facing a central authority is to determine trajectories for all robots so as to
minimize the time until the non-faulty robots have rendezvoused. The
trajectories must be determined without knowledge of which robots are faulty.
Our goal is to minimize the competitive ratio between the time required to
achieve the first rendezvous of the non-faulty robots and the time required for
such a rendezvous to occur under the assumption that the faulty robots are
known at the start. We provide a bounded competitive ratio algorithm, where the
central authority is informed only of the set of initial robot positions,
without knowing which ones or how many of them are faulty. When an upper bound
on the number of byzantine robots is known to the central authority, we provide
algorithms with better competitive ratios. In some instances we are able to
show these algorithms are optimal
A Study of Concurrency Bugs and Advanced Development Support for Actor-based Programs
The actor model is an attractive foundation for developing concurrent
applications because actors are isolated concurrent entities that communicate
through asynchronous messages and do not share state. Thereby, they avoid
concurrency bugs such as data races, but are not immune to concurrency bugs in
general. This study taxonomizes concurrency bugs in actor-based programs
reported in literature. Furthermore, it analyzes the bugs to identify the
patterns causing them as well as their observable behavior. Based on this
taxonomy, we further analyze the literature and find that current approaches to
static analysis and testing focus on communication deadlocks and message
protocol violations. However, they do not provide solutions to identify
livelocks and behavioral deadlocks. The insights obtained in this study can be
used to improve debugging support for actor-based programs with new debugging
techniques to identify the root cause of complex concurrency bugs.Comment: - Submitted for review - Removed section 6 "Research Roadmap for
Debuggers", its content was summarized in the Future Work section - Added
references for section 1, section 3, section 4.3 and section 5.1 - Updated
citation
- …