• Aucun résultat trouvé

Formal Specification and Verification of System and Software Models

N/A
N/A
Protected

Academic year: 2022

Partager "Formal Specification and Verification of System and Software Models"

Copied!
1
0
0

Texte intégral

(1)

12/13/2018 UYMK Tutorial (Ferhat Erata) - Google Docs

https://docs.google.com/document/d/1JSVmX6yUPwQNn7lgjQrtqzMFIBe3eNIjryeZ9zJReRE/edit 1/1

Formal Specification and Verification of System and Software Models Ferhat Erata

UNIT Informa on Technologies R&D Ltd.

( ferhat@computer.org )

The complexity of so ware systems in safety cri cal domains (e.g., avionics and automo ve) has significantly increased over the years. To tackle with this complexity, development of such systems requires various phases which result in several ar facts that are increasingly represented as models (e.g., requirement models, architecture models, and design models). To achieve model correctness and thereby to increase so ware quality, formal verifica on of so ware models has become a promising approach and received a considerable amount of a en on in the last decade. Different methods and tools exist in the literature that allow to specify models based on mathema cal theories or formalisms and to reason about the correctness proper es.

In this tutorial, I am going to introduce two mainstream formal specifica on and formal analysis techniques to ensure model correctness on an illustra ve reac ve system. The tutorial will be split into three parts. The first part will immediately introduce to the audience the basic mathema cal no ons required to model an abstrac on of the example reac ve system. The second part demonstrates how to formally specify the system using two different formalisms: first-order rela onal logic (FORL), an expressive logic with transi ve closure supported by Alloy Analyzer and the logic of equality with uninterpreted func ons (EUF), a first-order logic with many well-supported tools (e.g., SMT solvers). The final part presents finding correct instances and checking asser ons wri en in these formalisms using Alloy Analyzer ( h ps://github.com/AlloyTools/ ) and Z3 SMT Solver ( h ps://github.com/Z3Prover/z3 ). All three parts are accompanied by live demonstra ons.

Références

Documents relatifs

In the case of restricted temporal logic, this has the advantage of providing a polynomial algorithm to check whether the language defined by a given deterministic automaton

We made a formal specification of the code for calculating the bound states of the Morse oscillator well by writing a Tempura code and making tests to compare the output results

Sentence (16) contains a single plural term (the list Annie, Bonnie, and Connie), so it involves a single order that could affect truth conditions.. As a result, neither

Listing 1.1 provides a model for the Critical Friendship problem: Lines 1-5 specify the vocabulary, declaring two types ( Person s and Car s), and three logic symbols: The

LPS is a logic and computer language in which computation per- forms actions, to make goals true, using beliefs about what is already true.. Keywords: LPS, logic

The general properties of memory logics are similar to those of sabotage logics: a PSpace-complete model checking problem, an undecidable satisfiability problem, and failure of both

In particular, we adhere to the notions of con- traries, contradictories and subcontraries [1], generated from possible statement types using predicate denial and predicate

In this paper, Timestamp Petri nets – a special kind of timed Petri nets - and a Logic of Actions are used to specify process requirements.. Petri net implementations of such