9 research outputs found
Satisfiability For Symbolic Verification in VRS
Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ ΡΡΠ°Π½Π·ΠΈΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ
ΡΠΎΡΠΌΡΠ»ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ Satisfiability Modulo Theory Π²ΠΌΠ΅ΡΡΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΈΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ
Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π² ΠΏΡΠ΅Π΄ΠΈΠΊΠ°ΡΠ½ΡΡ
ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ΅ΡΠ°Ρ
.This paper demonstrates the use of the first order logic in symbolic verification of the requirement specifications of reactive software systems. We consider symbolic models of a specified system which are transition systems with symbolic states represented by formulae of the first order logic. To efficiently compute predicate transformers the Satisfiability Modulo Theory methods are used instead of the logical inference in the corresponding calculi.Π ΠΎΠ·Π³Π»ΡΠ½ΡΡΠΎ Π²ΠΈΠΊΠΎΡΠΈΡΡΠ°Π½Π½Ρ Π»ΠΎΠ³ΡΠΊΠΈ ΠΏΠ΅ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ Π²Π΅ΡΠΈΡΡΠΊΠ°ΡΡΡ ΡΠΏΠ΅ΡΠΈΡΡΠΊΠ°ΡΡΠΉ Π²ΠΈΠΌΠΎΠ³ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°Π±Π΅Π·ΠΏΠ΅ΡΠ΅Π½Π½Ρ, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠΈΡΡΠ΅ΠΌ, ΡΠΊΡ Ρ ΡΡΠ°Π½Π·ΠΈΡΡΠΉΠ½ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Π· ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΈΠΌΠΈ ΡΡΠ°Π½Π°ΠΌΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΌΠΈ ΡΠΎΡΠΌΡΠ»ΠΎΡ Π»ΠΎΠ³ΡΠΊΠΈ ΠΏΠ΅ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ. ΠΠΈΠΊΠΎΡΠΈΡΡΠ°Π½ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Satisfiability Modulo Theory Π·Π°ΠΌΡΡΡΡ Π»ΠΎΠ³ΡΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ²ΠΎΠ΄Ρ Ρ Π²ΡΠ΄ΠΏΠΎΠ²ΡΠ΄Π½ΠΈΡ
ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
Π΄Π»Ρ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠΈΡΠ»Π΅Π½Π½Ρ Ρ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°ΡΠ½ΠΈΡ
ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ΅ΡΠ°Ρ
Formal verification of concurrent programs
Interactive theorem proving provides a general approach to modeling and verification of both finite-state and infinite-state systems but requires significant human efforts to deal with many tedious proofs. On the other hand, model-checking is limited to some application domain with small finite-state space. A natural thought for this problem is to integrate these two approaches. To keep the consistency of the integration and ensure the correctness of verification, we suggest to use type theory based theorem provers (e.g. Lego) as the platform for the integration and build a model-checker to do parts of the verification automatically. We formalise a verification system of both CCS and an imperative language in the proof development system Lego which can be used to verify both finite-state and infinite-state problems. Then a model-checker, LegoMC, is implemented to generate Lego proof terras for finite-state problems automatically. Therefore people can use Lego to verify a general problem with some of its finite sub-problems verified by LegoMC. On the other hand, this integration extends the power of model-checking to verify more complicated and infinite-state models as well. The development of automatic techniques and the integration of different reasoning methods would directly benefit the verification community. It is expected that further extension and development of this verification environment would be able to handle real life systems. On the other hand, the research gives us some experiences about how to automate proofs in interactive theorem provers and therefore will improve the usability and applicability of the theorem proving technology
An extended interval temporal logic and a framing technique for temporal logic programming
PhD ThesisTemporal logic programming is a paradigm for specification and verification of concurrent programs
in which a program can be written, and the properties of the program can be described
and verified in a same notation. However, there are many aspects of programming in temporal
logics that are not well-understood. One such an aspect is concurrent programming, another is
framing and the third is synchronous communication for parallel processes.
This thesis extends the original Interval Temporal Logic (ITL) to include infinite models,
past operators, and a new projection operator for dealing with concurrent computation, synchronous
communication, and framing in the context of temporal logic programming.
The thesis generalizes the original ITL to include past operators such as previous and past
chop, and extends the model to include infinite intervals. A considerable collection of logic laws
regarding both propositional and first order logics is formalized and proved within model theory.
After that, a subset of the extended ITL is formalized as a programming language, called
extended Tempura. These extensions, as in their logic basis, include infinite models, the previous
operator, projection and framing constructs. A normal form for programs within the extended
Tempura is demonstrated.
Next, a new projection operator is introduced. In the new construct, the sub-processes are
autonomous; each process has the right to specify its own interval over which it is executed.
The thesis presents a framing technique for temporal logic programming, which includes the
definitions of new assignments, the assignment flag and the framing operator, the formalization
of algebraic properties of the framing operator, the minimal model semantics of framed programs,
as well as an executable framed interpreter.
The synchronous communication operator await is based directly on the proposed framing
technique. It enables us to deal with concurrent computation. Based on EITL and await
operator, a framed concurrent temporal logic programming language, FTLL, is formally defined
within EITL.
Finally, the thesis describes a framed interpreter for the extended Tempura which has been
developed in SICSTUS prolog. In the new interpreter, the implementation of new assignments,
the frame operator, the await operator, and the new projection operator are all included
Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems
This guidebook, the second of a two-volume series, is intended to facilitate the transfer of formal methods to the avionics and aerospace community. The 1st volume concentrates on administrative and planning issues [NASA-95a], and the second volume focuses on the technical issues involved in applying formal methods to avionics and aerospace software systems. Hereafter, the term "guidebook" refers exclusively to the second volume of the series. The title of this second volume, A Practitioner's Companion, conveys its intent. The guidebook is written primarily for the nonexpert and requires little or no prior experience with formal methods techniques and tools. However, it does attempt to distill some of the more subtle ingredients in the productive application of formal methods. To the extent that it succeeds, those conversant with formal methods will also nd the guidebook useful. The discussion is illustrated through the development of a realistic example, relevant fragments of which appear in each chapter. The guidebook focuses primarily on the use of formal methods for analysis of requirements and high-level design, the stages at which formal methods have been most productively applied. Although much of the discussion applies to low-level design and implementation, the guidebook does not discuss issues involved in the later life cycle application of formal methods
A formal framework for specification-based embedded real-time system engineering
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Aeronautics and Astronautics, 2008.Includes bibliographical references (v. 2, p. 517-545).The increasing size and complexity of modern software-intensive systems present novel challenges when engineering high-integrity artifacts within aggressive budgetary constraints. Among these challenges, ensuring confidence in the engineered system, through validation and verification activities, represents the high cost item on many projects. The expensive nature of engineering high-integrity systems using traditional approaches can be partly attributed to the lack of analysis facilities during the early phases of the lifecycle, causing the validation and verification activities to begin too late in the engineering lifecycle. Other challenges include the management of complexity, opportunities for reuse without compromising confidence, and the ability to trace system features across lifecycle phases. The use of models as a specification mechanism provides an approach to mitigate complexity through abstraction. Furthermore, if the specification approach has formal underpinnings, the use of models can be leveraged to automate engineering activities such as formal analysis and test case generation. The research presented in this thesis proposes an engineering framework which addresses the high cost of validation and verification activities through specification-based system engineering. More specifically, the framework provides an integrated approach to embedded real-time system engineering which incorporates specification, simulation, formal verification, and test-case generation. The framework aggregates the state-of-the-art in individual software engineering disciplines to provide an end-to-end approach to embedded real-time system engineering. The key aspects of the framework include: * A novel specification language, the Timed Abstract State Machine (TASM) language, which extends the theory of Abstract State Machines (ASM).(cont.) The TASM language is a literate formal specification language which can be applied and multiple levels of abstraction and which can express the three key aspects of embedded real-time systems - function, time, and resources. * Automated verification capabilities achieved through the integration of mature analysis engines, namely the UPPAAL tool suite and the SAT4J SAT solver. The verification capabilities provided by the framework include completeness and consistency verification, model checking, execution time analysis, and resource consumption analysis. * Bi-directional traceability of model features across levels of abstraction and lifecycle phases. Traceability is achieved syntactically through archetypical refinement types; each refinement type provides correctness criteria, which, if met, guarantee semantic integrity through the refinement. * Automated test case generation capabilities for unit testing, integration testing, and regression testing. Unit test cases are generated to achieve TASM specification coverage through the rule coverage criterion. Integration test case generation is achieved through the hierarchical composition of unit test cases. Regression test case generation is achieved by leveraging the bi-directional traceability of model features. The framework is implemented into an integrated tool suite, the TASM toolset, which incorporates the UPPAAL tool suite and the SAT4J SAT solver. The toolset and framework are evaluated through experimentation on three industrial case studies - an automated manufacturing system, a "drive-by-wire" system used at a major automotive manufacturer, and a scripting environment used on the International Space Station.by Martin Ouimet.Ph.D
Temporal logic: Proceedings of the ICTL Workshop
This report contains the papers presented at the ICTL-94 workshop: A. Galton: Instantaneous Events Y. S. Ramakrishna: On the Satisfiability Problem for Lamport's Propositional Temporal Logic of Actions and Some of Its Extensions \item I. Vernier: Parameterized Evaluation of CTL-X Formulae J. Engelfriet and J. Treur: Final Model Semantics for Normal Default Theories A. ter Meulen: Situated Reasoning with Temporal Anaphora A. Montanari: A Metric and Layered Temporal Logic for Time Granularity, Synchrony and Asynchrony M. A. Orgun: On Continuous Extensions of Temporal Logic Programming A. Fantechi: ACTLab: An Action Based Toolset J. Gooday and A. Galton: Nonmonotonic Reasoning about Action and Change A. Isli: Mapping an LPTL Formula into a B\"uchi Alternating Automaton Accepting its Models F. Song: Combining Temporal and Hierarchical Constraints for Temporal Reasoning T. Panayiotopoulos and C. D. Spyropoulos: TRL: A Formal Language for Temporal References E. Ciapessoni, E. Corsetti, E. Crivelli and M. Migliorati: Checking Satisfiability of TRIO_\neq Specification