Search NASA⌕ Search

SEARCH · Search NASA

Results for “PROOF OF CORRECTNESS”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 73 records · Page 4

Validation of a fault-tolerant clock synchronization system

A validation method for the synchronization subsystem of a fault tolerant computer system is investigated. The method combines formal design verification with experimental testing. The design proof reduces the correctness of the clock synchronization system to the correctness of a set of axioms which are experimentally validated. Since the reliability requirements are often extreme, requiring the estimation of extremely large quantiles, an asymptotic approach to estimation in the tail of a distribution is employed.

Butler, R. W.↗

Verifying the interactive convergence clock synchronization algorithm using the Boyer-Moore theorem prover

The application of formal methods to the analysis of computing systems promises to provide higher and higher levels of assurance as the sophistication of our tools and techniques increases. Improvements in tools and techniques come about as we pit the current state of the art against new and challenging problems. A promising area for the application of formal methods is in real-time and distributed computing. Some of the algorithms in this area are both subtle and important. In response to this challenge and as part of an ongoing attempt to verify an implementation of the Interactive Convergence Clock Synchronization Algorithm (ICCSA), we decided to undertake a proof of the correctness of the algorithm using the Boyer-Moore theorem prover. This paper describes our approach to proving the ICCSA using the Boyer-Moore prover.

Young, William D.↗

Numerical Conformal Mapping Using Cross-Ratios and Delaunay Triangulation

We propose a new algorithm for computing the Riemann mapping of the unit disk to a polygon, also known as the Schwarz-Christoffel transformation. The new algorithm, CRDT, is based on cross-ratios of the prevertices, and also on cross-ratios of quadrilaterals in a Delaunay triangulation of the polygon. The CRDT algorithm produces an accurate representation of the Riemann mapping even in the presence of arbitrary long, thin regions in the polygon, unlike any previous conformal mapping algorithm. We believe that CRDT can never fail to converge to the correct Riemann mapping, but the correctness and convergence proof depend on conjectures that we have so far not been able to prove. We demonstrate convergence with computational experiments. The Riemann mapping has applications to problems in two-dimensional potential theory and to finite-difference mesh generation. We use CRDT to produce a mapping and solve a boundary value problem on long, thin regions for which no other algorithm can solve these problems.

Driscoll, Tobin A.↗

A Byzantine-Fault Tolerant Self-Stabilizing Protocol for Distributed Clock Synchronization Systems

Embedded distributed systems have become an integral part of safety-critical computing applications, necessitating system designs that incorporate fault tolerant clock synchronization in order to achieve ultra-reliable assurance levels. Many efficient clock synchronization protocols do not, however, address Byzantine failures, and most protocols that do tolerate Byzantine failures do not self-stabilize. Of the Byzantine self-stabilizing clock synchronization algorithms that exist in the literature, they are based on either unjustifiably strong assumptions about initial synchrony of the nodes or on the existence of a common pulse at the nodes. The Byzantine self-stabilizing clock synchronization protocol presented here does not rely on any assumptions about the initial state of the clocks. Furthermore, there is neither a central clock nor an externally generated pulse system. The proposed protocol converges deterministically, is scalable, and self-stabilizes in a short amount of time. The convergence time is linear with respect to the self-stabilization period. Proofs of the correctness of the protocol as well as the results of formal verification efforts are reported.

Malekpour, Mahyar R.↗

A Byzantine-Fault Tolerant Self-Stabilizing Protocol for Distributed Clock Synchronization Systems

Embedded distributed systems have become an integral part of safety-critical computing applications, necessitating system designs that incorporate fault tolerant clock synchronization in order to achieve ultra-reliable assurance levels. Many efficient clock synchronization protocols do not, however, address Byzantine failures, and most protocols that do tolerate Byzantine failures do not self-stabilize. Of the Byzantine self-stabilizing clock synchronization algorithms that exist in the literature, they are based on either unjustifiably strong assumptions about initial synchrony of the nodes or on the existence of a common pulse at the nodes. The Byzantine self-stabilizing clock synchronization protocol presented here does not rely on any assumptions about the initial state of the clocks. Furthermore, there is neither a central clock nor an externally generated pulse system. The proposed protocol converges deterministically, is scalable, and self-stabilizes in a short amount of time. The convergence time is linear with respect to the self-stabilization period. Proofs of the correctness of the protocol as well as the results of formal verification efforts are reported.

Malekpour, Mahyar R.↗

Comparing Techniques for Certified Static Analysis

A certified static analysis is an analysis whose semantic validity has been formally proved correct with a proof assistant. The recent increasing interest in using proof assistants for mechanizing programming language metatheory has given rise to several approaches for certification of static analysis. We propose a panorama of these techniques and compare their respective strengths and weaknesses.

Cachera, David↗

Analysis and mitigation of an oscillating background on hybrid complementary metal-oxide semiconductor (hCMOS) imaging sensors at the National Ignition Facility

Nanosecond-gated hybrid complementary metal-oxide semiconductor imaging sensors are a powerful tool for temporally gated and spatially resolved measurements in high energy density science, including inertial confinement fusion, and in laser diagnostics. However, a significant oscillating background excited by photocurrent has been observed in image sequences during testing and in experiments at the National Ignition Facility (NIF). Characterization measurements and simulation results are used to explain the oscillations as the convolution of the pixel-level sensor response with a sensor-wide RLC circuit ringing. Finally, data correction techniques are discussed for NIF diagnostics, and for diagnostics where these techniques cannot be used, a proof-of-principle image correction algorithm is presented.

42 ENGINEERING↗

Diagnosing a Failed Proof in Fault-Tolerance: A Disproving Challenge Problem

This paper proposes a challenge problem in disproving. We describe a fault-tolerant distributed protocol designed at NASA for use in a fly-by-wire system for next-generation commercial aircraft. An early design of the protocol contains a subtle bug that is highly unlikely to be caught in fault injection testing. We describe a failed proof of the protocol's correctness in a mechanical theorem prover (PVS) with a complex unfinished proof conjecture. We use a model checking suite (SAL) to generate a concrete counterexample to the unproven conjecture to demonstrate the existence of a bug. However, we argue that the effort required in our approach is too high and propose what conditions a better solution would satisfy. We carefully describe the protocol and bug to provide a challenging but feasible case study for disproving research.

Pike, Lee↗

Erratum: “Adiabatic matching of particle bunches in a plasma-based accelerator in the presence of ion motion” [Phys. Plasmas 28 , 053102 (2021)]

We would like to correct an error affecting the horizontal scale of panels (c) and (d) of Fig. 4 in Ref. 1. A scale factor of k p was neglected when generating the plots. The correct figure is shown below. Further, the authors would like to thank Yujian Zhao for pointing out this issue. We would also like to correct a typo introduced during the preparation of the proofs and affecting Eq. (25); the correct equation reads. (Formula presented). All the conclusions of the paper are unaffected.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Towards composition of verified hardware devices

Computers are being used where no affordable level of testing is adequate. Safety and life critical systems must find a replacement for exhaustive testing to guarantee their correctness. Through a mathematical proof, hardware verification research has focused on device verification and has largely ignored system composition verification. To address these deficiencies, we examine how the current hardware verification methodology can be extended to verify complete systems.

Schubert, E. Thomas↗

Derivation and experimental verification of clock synchronization theory

The objective of this work is to validate mathematically derived clock synchronization theories and their associated algorithms through experiment. Two theories are considered, the Interactive Convergence Clock Synchronization Algorithm and the Mid-Point Algorithm. Special clock circuitry was designed and built so that several operating conditions and failure modes (including malicious failures) could be tested. Both theories are shown to predict conservative upper bounds (i.e., measured values of clock skew were always less than the theory prediction). Insight gained during experimentation led to alternative derivations of the theories. These new theories accurately predict the clock system's behavior. It is found that a 100% penalty is paid to tolerate worst case failures. It is also shown that under optimal conditions (with minimum error and no failures) the clock skew can be as much as 3 clock ticks. Clock skew grows to 6 clock ticks when failures are present. Finally, it is concluded that one cannot rely solely on test procedures or theoretical analysis to predict worst case conditions. conditions.

INTERACTIVE CONVERGENCE CLOCK↗

An Abstract Interpretation Framework for the Round-Off Error Analysis of Floating-Point Programs

This paper presents an abstract interpretation framework for the round-off error analysis of floating-point programs. This framework defines a parametric abstract analysis that computes, for each combination of ideal and floating-point execution path of the program, a sound over-approximation of the accumulated floating-point round-off error that may occur. In addition, a Boolean expression that characterizes the input values leading to the computed error approximation is also computed. An abstraction on the control flow of the program is proposed to mitigate the explosion of the number of elements generated by the analysis. Additionally, a widening operator is defined to ensure the convergence of recursive functions and loops. An instantiation of this framework is implemented in the prototype tool PRECiSA that generates formal proof certificates stating the correctness of the computed round-off errors.

Titolo, Laura↗

PRECiSA: a static analysis tool for floating-point programs

This presentation introduces PRECiSA, a static analysis framework for analyzing floating-point programs. PRECiSA computes round-off error bounds for a class of floating-point programs, and produces a formal proof certificate of the correctness of these bounds. PRECiSA also has the capability of generating C code which is instrumented to detect unstable branching conditions from a real-number algorithm specification.

Floating-point↗

Dynamic Stability and Gravitational Balancing of Multiple Extended Bodies

Feasibility of a non-invasive compensation scheme was analyzed for precise positioning of a massive extended body in free fall using gravitational forces influenced by surrounding source masses in close proximity. The N-body problem of classical mechanics is a paradigm used to gain insight into the physics of the equivalent N-body problem subject to control forces. The analysis addressed how a number of control masses move around the proof mass so that the proof mass position can be accurately and remotely compensated when exogenous disturbances are acting on it, while its sensitivity to gravitational waves remains unaffected. Past methods to correct the dynamics of the proof mass have considered active electrostatic or capacitive methods, but the possibility of stray capacitances on the surfaces of the proof mass have prompted the investigation of other alternatives, such as the method presented in this paper. While more rigorous analyses of the problem should be carried out, the data show that, by means of a combined feedback and feed-forward control approach, the control masses succeeded in driving the proof mass along the specified trajectory, which implies that the proof mass can, in principle, be balanced via gravitational forces only while external perturbations are acting on it. This concept involves the dynamic stability of a group of massive objects interacting gravitationally under active control, and can apply to drag-free control of spacecraft during missions, to successor gravitational wave space borne sensors, or to any application requiring flying objects to be precisely controlled in position and attitude relative to another body via gravitational interactions only.

Quadrelli, Marco↗

Synthesizing Safety Conditions for Code Certification Using Meta-Level Programming

In code certification the code consumer publishes a safety policy and the code producer generates a proof that the produced code is in compliance with the published safety policy. In this paper, a novel viewpoint approach towards an implementational re-use oriented framework for code certification is taken. It adopts ingredients from Necula's approach for proof-carrying code, but in this work safety properties can be analyzed on a higher code level than assembly language instructions. It consists of three parts: (1) The specification language is extended to include generic pre-conditions that shall ensure safety at all states that can be reached during program execution. Actual safety requirements can be expressed by providing domain-specific definitions for the generic predicates which act as interface to the environment. (2) The Floyd-Hoare inductive assertion method is refined to obtain proof rules that allow the derivation of the proof obligations in terms of the generic safety predicates. (3) A meta-interpreter is designed and experimentally implemented that enables automatic synthesis of proof obligations for submitted programs by applying the modified Floyd-Hoare rules. The proof obligations have two separate conjuncts, one for functional correctness and another for the generic safety obligations. Proof of the generic obligations, having provided the actual safety definitions as context, ensures domain-specific safety of program execution in a particular environment and is simpler than full program verification.

Eusterbrock, Jutta↗

Real-time jitter correction in a photonic analog-to-digital converter

A real-time jitter meter is used to measure and digitally sample the pulse-to-pulse timing error in a laser pulse train. The jitter meter is self-referenced using a single-pulse delay line interferometer and measures timing jitter using optical heterodyne detection between two frequency channels of the pulse train. Jitter sensitivity down to 3×10 -10 fs 2 /Hz at 500 MHz has been demonstrated with a pulse-to-pulse noise floor of 1.6 fs. Furthermore, as a proof of principle, the digital correction of the output of a high-frequency photonic analog-to-digital converter (PADC) is demonstrated with an emulated jitter signal. Up to 23 dB of jitter correction, down to the noise floor of the PADC, is accomplished with radio-frequency modulation up to 40 GHz.

47 OTHER INSTRUMENTATION↗

The connected wedge theorem and its consequences

In the AdS/CFT correspondence, bulk causal structure has consequences for boundary entanglement. In quantum information science, causal structures can be replaced by distributed entanglement for the purposes of information processing. In this work, we deepen the understanding of both of these statements, and their relationship, with a number of new results. Centrally, we present and prove a new theorem, the n-to-n connected wedge theorem, which considers n input and n output locations at the boundary of an asymptotically AdS 2+1 spacetime described by AdS/CFT. When a sufficiently strong set of causal connections exists among these points in the bulk, a set of n associated regions in the boundary will have extensive-in-N mutual information across any bipartition of the regions. The proof holds in three bulk dimensions for classical spacetimes satisfying the null curvature condition and for semiclassical spacetimes satisfying standard conjectures. The n-to-n connected wedge theorem gives a precise example of how causal connections in a bulk state can emerge from large-N entanglement features of its boundary dual. It also has consequences for quantum information theory: it reveals one pattern of entanglement which is sufficient for information processing in a particular class of causal networks. We argue this pattern is also necessary, and give an AdS/CFT inspired protocol for information processing in this setting. Our theorem generalizes the 2-to-2 connected wedge theorem proven in [3]. We also correct some errors in the proof presented there, in particular a false claim that existing proof techniques work above three bulk dimensions.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗