358,925 research outputs found
Cluster-based architecture for fault-tolerant quantum computation
We present a detailed description of an architecture for fault-tolerant
quantum computation, which is based on the cluster model of encoded qubits. In
this cluster-based architecture, concatenated computation is implemented in a
quite different way from the usual circuit-based architecture where physical
gates are recursively replaced by logical gates with error-correction gadgets.
Instead, some relevant cluster states, say fundamental clusters, are
recursively constructed through verification and postselection in advance for
the higher-level one-way computation, which namely provides error-precorrection
of gate operations. A suitable code such as the Steane seven-qubit code is
adopted for transversal operations. This concatenated construction of verified
fundamental clusters has a simple transversal structure of logical errors, and
achieves a high noise threshold ~ 3 % for computation by using appropriate
verification procedures. Since the postselection is localized within each
fundamental cluster with the help of deterministic bare controlled-Z gates
without verification, divergence of resources is restrained, which reconciles
postselection with scalability.Comment: 16 pages, 34 figure
Procedure-modular specification and verification of temporal safety properties
This paper describes ProMoVer, a tool for fully automated procedure-modular verification of Java programs equipped with method-local and global assertions that specify safety properties of sequences of method invocations. Modularity at the procedure-level is a natural instantiation of the modular verification paradigm, where correctness of global properties is relativized on the local properties of the methods rather than on their implementations. Here, it is based on the construction of maximal models for a program model that abstracts away from program data. This approach allows global properties to be verified in the presence of code evolution, multiple method implementations (as arising from software product lines), or even unknown method implementations (as in mobile code for open platforms). ProMoVer automates a typical verification scenario for a previously developed tool set for compositional verification of control flow safety properties, and provides appropriate pre- and post-processing. Both linear-time temporal logic and finite automata are supported as formalisms for expressing local and global safety properties, allowing the user to choose a suitable format for the property at hand. Modularity is exploited by a mechanism for proof reuse that detects and minimizes the verification tasks resulting from changes in the code and the specifications. The verification task is relatively light-weight due to support for abstraction from private methods and automatic extraction of candidate specifications from method implementations. We evaluate the tool on a number of applications from the domains of Java Card and web-based application
A Case-Study on Manual Verification of State-based Source Code Generated by KIELER SCCharts
Statecharts-like languages, such as SCCharts, are commonly used to develop stateoriented reactive and critical systems. Code is often generated by automatic code generators, which employ different strategies. This paper presents the results of a second user study on manual user verification of different source codes, which were generated using a netlist-based, a priority-based, and a state-based code generation approach compiling SCCharts models to C. The evaluation shows that manual verification can be time-consuming and is error prone if the user has no clear mapping between states and transition of the original model and the generated code. The participants performed better if the generated code followed a state pattern that preserves original model structures and names
Formal Model Engineering for Embedded Systems Using Real-Time Maude
This paper motivates why Real-Time Maude should be well suited to provide a
formal semantics and formal analysis capabilities to modeling languages for
embedded systems. One can then use the code generation facilities of the tools
for the modeling languages to automatically synthesize Real-Time Maude
verification models from design models, enabling a formal model engineering
process that combines the convenience of modeling using an informal but
intuitive modeling language with formal verification. We give a brief overview
six fairly different modeling formalisms for which Real-Time Maude has provided
the formal semantics and (possibly) formal analysis. These models include
behavioral subsets of the avionics modeling standard AADL, Ptolemy II
discrete-event models, two EMF-based timed model transformation systems, and a
modeling language for handset software.Comment: In Proceedings AMMSE 2011, arXiv:1106.596
Integrated formal verification of safety-critical software
This work presents a formal verification process based on the Systerel Smart Solver (S3) toolset for the development of safety-critical embedded software. In order to guarantee the correctness of the implementation of a set of textual requirements, the process integrates different verification techniques (inductive proof, bounded model checking, test case generation and equivalence proof) to handle different types of properties at their best capacities. It is aimed at the verification of properties at system, design, and code levels. To handle the floating-point arithmetic (FPA) in both the design and the code, an FPA library is designed and implemented in S3. This work is illustrated on an Automatic Rover Protection (ARP) system implemented on-board a robot. Focus is placed on the verification of safety and functional properties and on the equivalence proof between the design model and the generated code
- ā¦