Search NASASearch

SEARCH · Search NASA

Results for “Program verification”

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 127 records · Page 7

A computer program for model verification of dynamic systems

Dynamic model verification is the process whereby an analytical model of a dynamic system is compared with experimental data, and then qualified for future use in predicting system response in a different dynamic environment. There are various ways to conduct model verification. The approach adopted in MOVER II employs Bayesian statistical parameter estimation. Unlike curve fitting whose objective is to minimize the difference between some analytical function and a given quantity of test data (or curve), Bayesian estimation attempts also to minimize the difference between the parameter values of that function (the model) and their initial estimates, in a least squares sense. The objectives of dynamic model verification, therefore, are to produce a model which: (1) is in agreement with test data, (2) will assist in the interpretation of test data, (3) can be used to help verify a design, (4) will reliably predict performance, and (5) in the case of space structures, facilitate dynamic control.

Chrostowski, J. D.

Fault detection and initial state verification by linear programming for a class of Petri nets

The authors present an algorithmic approach to determining when the marking of a LSMG (live safe marked graph) or a LSFC (live safe free choice) net is in the set of live safe markings M. Hence, once the marking of a net is determined to be in M, then if at some time thereafter the marking of this net is determined not to be in M, this indicates a fault. It is shown how linear programming can be used to determine if m is an element of M. The worst-case computational complexity of each algorithm is bounded by the number of linear programs necessary to compute.

Rachell, Traxon

Runtime Verification of C Programs

We present in this paper a framework, RMOR, for monitoring the execution of C programs against state machines, expressed in a textual (nongraphical) format in files separate from the program. The state machine language has been inspired by a graphical state machine language RCAT recently developed at the Jet Propulsion Laboratory, as an alternative to using Linear Temporal Logic (LTL) for requirements capture. Transitions between states are labeled with abstract event names and Boolean expressions over such. The abstract events are connected to code fragments using an aspect-oriented pointcut language similar to ASPECTJ's or ASPECTC's pointcut language. The system is implemented in the C analysis and transformation package CIL, and is programmed in OCAML, the implementation language of CIL. The work is closely related to the notion of stateful aspects within aspect-oriented programming, where pointcut languages are extended with temporal assertions over the execution trace.

RMOR

Independent Verification and Validation Program

Presentation to be given to European Space Agency counterparts to give an overview of NASA's IVV Program and the layout and structure of the Software Testing and Research laboratory maintained at IVV. Seeking STI-ITAR review due to the international audience. Most of the information has been presented to public audiences in the past, with some variations on data, or is in the public domain.

Research

Analyzing Array Manipulating Programs by Program Transformation

We explore a transformational approach to the problem of verifying simple array-manipulating programs. Traditionally, verification of such programs requires intricate analysis machinery to reason with universally quantified statements about symbolic array segments, such as "every data item stored in the segment A[i] to A[j] is equal to the corresponding item stored in the segment B[i] to B[j]." We define a simple abstract machine which allows for set-valued variables and we show how to translate programs with array operations to array-free code for this machine. For the purpose of program analysis, the translated program remains faithful to the semantics of array manipulation. Based on our implementation in LLVM, we evaluate the approach with respect to its ability to extract useful invariants and the cost in terms of code size.

Program Transformation

Distributed Avionics and Software Verification for the Constellation Program

This viewgraph presentation reviews the planned verification of the avionics and software being developed for the Constellation program.The Constellation Distributed System Integration Laboratory (DSIL) will consist of multiple System Integration Labs (SILs), Simulators, Emulators, Testbeds, and Control Centers interacting with each other over a broadband network to provide virtual test systems for multiple test scenarios.

Hood, Laura E.

Report of the subpanel on methods of verification

A program to improve the state of understanding and of the meaning of verification and the application of verification procedures to a variety of sensor systems is recommended. The program would involve an experimental hands-on data demonstration and evaluation of those procedures in a controlled test bed experiment.

Source record

Evaluation of verification and testing tools for FORTRAN programs

Two automated software verification and testing systems were developed for use in the analysis of computer programs. An evaluation of the static analyzer DAVE and the dynamic analyzer PET, which are used in the analysis of FORTRAN programs on Control Data (CDC) computers, are described. Both systems were found to be effective and complementary, and are recommended for use in testing FORTRAN programs.

Smith, K. A.

Investigation, Development, and Evaluation of Performance Proving for Fault-tolerant Computers

A number of methodologies for verifying systems and computer based tools that assist users in verifying their systems were developed. These tools were applied to verify in part the SIFT ultrareliable aircraft computer. Topics covered included: STP theorem prover; design verification of SIFT; high level language code verification; assembly language level verification; numerical algorithm verification; verification of flight control programs; and verification of hardware logic.

Levitt, K. N.

Software analysis handbook: Software complexity analysis and software reliability estimation and prediction

This handbook documents the three software analysis processes the Space Station Software Analysis team uses to assess space station software, including their backgrounds, theories, tools, and analysis procedures. Potential applications of these analysis results are also presented. The first section describes how software complexity analysis provides quantitative information on code, such as code structure and risk areas, throughout the software life cycle. Software complexity analysis allows an analyst to understand the software structure, identify critical software components, assess risk areas within a software system, identify testing deficiencies, and recommend program improvements. Performing this type of analysis during the early design phases of software development can positively affect the process, and may prevent later, much larger, difficulties. The second section describes how software reliability estimation and prediction analysis, or software reliability, provides a quantitative means to measure the probability of failure-free operation of a computer program, and describes the two tools used by JSC to determine failure rates and design tradeoffs between reliability, costs, performance, and schedule.

Computer systems design

Income Verification Strategies for Income-Based Solar Programs

The Inflation Reduction Act has created substantial new programs that support adoption of solar power by low-income households, including the $7 billion Solar For All program and the Low-Income Communities Bonus Credit Program, which increases the investment tax credit for certain types of deployment. In addition, a growing number of states are using solar programs to reduce energy burdens and create energy justice opportunities for low-income households and disadvantaged communities. Verifying the income of participating customers is an important component of these programs. Program managers are seeking strategies to verify a large number of subscribing customers in an accurate, timely, and cost-efficient manner. To help inform program managers, Berkeley Lab investigated how a number of energy and non-energy programs manage income verification. The most common approach is to require proof through tax documents, pay stubs, or other formal income documentation, which can pose an impediment to enrolling eligible customers and create a paperwork burden for administrators. In order to reduce the burden for both the applicant and the program manager, some programs use alternative methods. We identify three common alternative verification methods: -Categorical eligibility: Customers enrolled in other, similar income-verified assistance programs are automatically eligible for enrollment in other income-qualified programs. -Geographic eligibility: Eligibility is based on the customer’s location within a specified area, typically a low-income or disadvantaged community or census tract, and; -“Self-attestation”: The participant claims eligibility with or without further documentation. We describe these options, their pros and cons, give examples of how they are used, and explore how some low-income programs address administrative issues, audits, or other quality control measures. Finally, we explore the risk of mistaken verifications (finding a participant eligible when they are not) in the different strategies. While this memo was initiated by a request relating to income-based community solar programs, the methods are applicable to any program with income eligibility requirements in the energy or non-energy sector. Funding was provided for this research by the Solar Energy Technologies Office of the US Department of Energy, through the National Community Solar Partnership.

14 SOLAR ENERGY

Summary Report Of The FY25 Reactor Physics Verification And Validation Exercises In The Advanced Reactor Technologies - Gas-cooled Reactor Program

Valdiation and verification of numerical tools is critical for ensuring reasonable predictions for design scoping, licensing, and safety analsyis. In this report, two reactor physics verification and validation exercises are presented. The first of these exercises focuses on burnup analysis with data from the Advanced Gas Reactor (AGR) program. Simulations are performed with Monte Carlo N-Particle (MCNP) and are compared with the experimental measurements for the AGR 1 and 2 experiments that utilize both UCO and UO2 fuel. The second exercises utilizes data from the HTR-Proteus experiments to perform reactor physics validation. Specifications of the experimental facility are provdied, along with a demonstration of initial modeling efforts in Serpent for one of the determistic packing experiments. Both cases are part of the Generation-IV international forum (GIF) Very High-Temperature Reactor (VHTR) Computational Methods, Validation, and Benchmarking (CMVB) program, an international collaborative organization dedicated to the verification and validation of High-Temperature Gas-Cooled Reactor (HTGR) analysis. Participation in the CMVB allows the US Department of Energy (DOE) to leverage these existing validation activities to provide extra value through benchmarking activities with other CMVB members.

and Benchmarking (CMVB) program

Space radiation studies

Instrument design and data analysis expertise was provided in support of several space radiation monitoring programs. The Verification of Flight Instrumentation (VFI) program at NASA included both the Active Radiation Detector (ARD) and the Nuclear Radiation Monitor (NRM). Design, partial fabrication, calibration and partial data analysis capability to the ARD program was provided, as well as detector head design and fabrication, software development and partial data analysis capability to the NRM program. The ARD flew on Spacelab-1 in 1983, performed flawlessly and was returned to MSFC after flight with unchanged calibration factors. The NRM, flown on Spacelab-2 in 1985, also performed without fault, not only recording the ambient gamma ray background on the Spacelab, but also recording radiation events of astrophysical significance.

Gregory, J. C.

Space Shuttle main engine technology and enhancements

The SSME Project Office is taking several paths to meet future needs for the Shuttle system. The producibility program focuses on manufacturing concerns. The product improvement program is attempting to address and correct limitations. The Alternate Turbopump Development Program focuses on the development of a more advanced and reliable turbopump design, and the Technology Test Bed Program focuses on the demonstration and verification of new technology and initial concept verification. A program has been structured to meet the needs of the payload community and to look forward toward the incorporation of advanced fabrication concepts.

Smelser, Jerry W.

Formally verifying Ada programs which use real number types

Formal verification is applied to programs which use real number arithmetic operations (mathematical programs). Formal verification of a program P consists of creating a mathematical model of F, stating the desired properties of P in a formal logical language, and proving that the mathematical model has the desired properties using a formal proof calculus. The development and verification of the mathematical model are discussed.

Sutherland, David