953 research outputs found
AsmetaF: A Flattener for the ASMETA Framework
Abstract State Machines (ASMs) have shown to be a suitable high-level
specification method for complex, even industrial, systems; the ASMETA
framework, supporting several validation and verification activities on ASM
models, is an example of a formal integrated development environment. Although
ASMs allow modeling complex systems in a rather concise way -and this is
advantageous for specification purposes-, such concise notation is in general a
problem for verification activities as model checking and theorem proving that
rely on tools accepting simpler notations.
In this paper, we propose a flattener tool integrated in the ASMETA framework
that transforms a general ASM model in a flattened model constituted only of
update, parallel, and conditional rules; such model is easier to map to
notations of verification tools. Experiments show the effect of applying the
tool to some representative case studies of the ASMETA repository.Comment: In Proceedings F-IDE 2018, arXiv:1811.09014. The first two authors
are supported by ERATO HASUO Metamathematics for Systems Design Project (No.
JPMJER1603), JST. Funding Reference number: 10.13039/501100009024 ERAT
Cagliari - Indagini di archeologia subacquea preventiva
Il lavoro che si presenta costituisce una premessa introduttiva alle indagini di archeologia subacquea preventiva, in corso lungo il litorale urbano della città di Cagliari, Sardegna – Italia.
Si è cercato di delineare un quadro sintetico del contesto ambientale e storico - archeologico di riferimento, con attenta sintesi bibliografica, per poi illustrare i principali criteri e metodi sui quali vengono improntati i lavori in ambito archeologico subacqueo preventivo. Alcune questioni, squisitamente tecniche, vengono affrontate per meglio comprendere i modi degli interventi, tenendo conto del fatto che il particolare contesto subacqueo, nonché preventivo, impone strategie e mezzi peculiari.
Le indagini subacquee sistematiche, preventive agli interventi sulle infrastrutture portuali esistenti a Cagliari e su quelle di ampliamento, così come previsto dalla normativa vigente in materia di opere pubbliche, sono state avviate dalla Soprintendenza per i Beni Archeologici per le Province di Cagliari e Oristano a partire dal 2005. I progetti, promossi dall’Autorità Portuale di Cagliari o dal Comune, laddove necessario, hanno previsto e prevedono la verifica preventiva archeologica, il cui finanziamento principale e la logistica vengono di volta in volta garantiti dagli stessi enti promotori, o anche attraverso il supporto di imprese specializzate, mediante appalti pubblici. Gli interventi prevedono per tanto la sinergia tra più soggetti e una necessaria multidisciplinarietà , per la cui riuscita, in favore di un proficuo risultato degli interventi, si ritiene che una semplice e sintetica premessa introduttiva li possa favorire.
Il presente lavoro nasce con la finalità di essere uno strumento iniziale di approccio per i vari operatori che si devono interfacciare negli interventi di verifica preventiva subacquea lungo il litorale cagliaritano; per i quali, avere percezione delle problematiche che caratterizzano gli interventi di archeologia preventiva subacquea, possa condurre ad un intervento di migliore efficacia e pertinenza
Rigorous development process of a safety-critical system: from ASM models to Java code
The paper presents an approach for rigorous development of safety-critical systems based on the Abstract State Machine formal method. The development process starts from a high level formal view of the system and, through refinement, derives more detailed models till the desired level of specification. Along the process, different validation and verification activities are available, as simulation, model review, and model checking. Moreover, each refinement step can be proved correct using an SMT-based approach. As last step of the refinement process, a Java implementation can be developed and linked to the formal specification. The correctness of the implementation w.r.t. its formal specification can be proved by means of model-based testing and runtime verification. The process is exemplified by using a Landing Gear System as case study
Towards Quantum Software Requirements Engineering
Quantum software engineering (QSE) is receiving increasing attention, as
evidenced by increasing publications on topics, e.g., quantum software
modeling, testing, and debugging. However, in the literature, quantum software
requirements engineering (QSRE) is still a software engineering area that is
relatively less investigated. To this end, in this paper, we provide an initial
set of thoughts about how requirements engineering for quantum software might
differ from that for classical software after making an effort to map classical
requirements classifications (e.g., functional and extra-functional
requirements) into the context of quantum software. Moreover, we provide
discussions on various aspects of QSRE that deserve attention from the quantum
software engineering community
User-driven geo-temporal density-based exploration of periodic and not periodic events reported in social networks
International audienceIn this paper we propose a procedure consisting of a first collection phase of social net- work messages, a subsequent user query selection, and finally a clustering phase, de- fined by extending the density-based DBSCAN algorithm, for performing a geographic and temporal exploration of a collection of items, in order to reveal and map their latent spatio-temporal structure. Specifically, both several geo-temporal distance measures and a density-based geo-temporal clustering algorithm are proposed. The approach can be applied to social messages containing an explicit geographic and temporal location. The algorithm usage is exemplified to identify geographic regions where many geotagged Twitter messages about an event of interest have been created, possibly in the same time period in the case of non-periodic events (aperiodic events), or at regular timestamps in the case of periodic events. This allows discovering the spatio-temporal periodic and aperiodic characteristics of events occurring in specific geographic areas, and thus increasing the awareness of decision makers who are in charge of territorial planning. Several case studies are used to illustrate the proposed procedure
TOOL-ASSISTED VALIDATION AND VERIFICATION TECHNIQUES FOR STATE-BASED FORMAL METHODS
To tackle the growing complexity of developing modern software systems that usually have embedded and distributed nature, and more and more involve safety critical aspects, formal methods (FMs) have been affirmed as an efficient approach to ensure the quality and correctness of the design, that permits to discover errors yet at the early stages of the system development. Among the several FMs available, some of them can be described as state-based, since they describe systems by using the notions of state and transitions between states. State-based FMs are sometimes preferred since they produce specifications that are more intuitive, being the notions of state and transition close to the notions of program state and program execution that are familiar to any developer. Moreover, state-based FMs are usually executable and permit to be simulated, so having an abstraction of the execution of the system under development.
The aim of the thesis is to provide tool-assisted techniques that help the adoption of state-based FMs. In particular we address four main goals:
1) identifying a process for the development of an integrated framework around a formal method. The adoption of a formal method is often prevented by the lack of tools to support the user in the different development activities, as model editing, validation, verification, etc. Moreover, also when tools are available, they have usually been developed to target only one aspect of the system development process. So, having a well-engineered process that helps in the development of concrete notations and tools for a FM can make FMs of practical application.
2) promoting the integration of different FMs. Indeed, having only one formal notation, for doing different formal activities during the development of the system, is preferable than having a different notation for each formal activity. Moreover such notation should be high-level: working with high level notations is definitely easier than working with low-level ones, and the produced specifications are usually more readable. This goal can be seen as a sub-goal of the first goal; indeed, in a framework around a formal method, it should also be possible to integrate other formal methods that better address some particular formal activities.
3) helping the user in writing correct specifications. The basic assumption of any formal technique is that the specification, representing the desired properties of the system or the model of the system, is correct. However, in case the specification is not correct, all the verification activities based on the specification produce results that are meaningless. So, validation techniques should assure that the specification reflects the intended requirements; besides traditional simulation (user-guided or scenario-based), also model review techniques, checking for common quality attributes that any specification should have, are a viable solution.
4) reducing the distance between the formal specification and the actual implementation of the system. Several FMs work on a formal description of the system which is assumed to reflect the actual implementation; however, in practice, the formal specification and the actual implementation could be not conformant. A solution is to obtain the implementation, through refinements steps, from the formal specification, and proving that the refinements steps are correct. A different viable solution is to link the implementation with its formal specification and check, during the program execution, if they are conformant
Online Causation Monitoring of Signal Temporal Logic
Online monitoring is an effective validation approach for hybrid systems,
that, at runtime, checks whether the (partial) signals of a system satisfy a
specification in, e.g., Signal Temporal Logic (STL). The classic STL monitoring
is performed by computing a robustness interval that specifies, at each
instant, how far the monitored signals are from violating and satisfying the
specification. However, since a robustness interval monotonically shrinks
during monitoring, classic online monitors may fail in reporting new violations
or in precisely describing the system evolution at the current instant. In this
paper, we tackle these issues by considering the causation of violation or
satisfaction, instead of directly using the robustness. We first introduce a
Boolean causation monitor that decides whether each instant is relevant to the
violation or satisfaction of the specification. We then extend this monitor to
a quantitative causation monitor that tells how far an instant is from being
relevant to the violation or satisfaction. We further show that classic
monitors can be derived from our proposed ones. Experimental results show that
the two proposed monitors are able to provide more detailed information about
system evolution, without requiring a significantly higher monitoring cost.Comment: 31 pages, 7 figures, the full version of the paper accepted by CAV
202
Noise-Aware Quantum Software Testing
Quantum Computing (QC) promises computational speedup over classic computing
for solving some complex problems. However, noise exists in current and
near-term quantum computers. Quantum software testing (for gaining confidence
in quantum software's correctness) is inevitably impacted by noise, to the
extent that it is impossible to know if a test case failed due to noise or real
faults. Existing testing techniques test quantum programs without considering
noise, i.e., by executing tests on ideal quantum computer simulators.
Consequently, they are not directly applicable to testing quantum software on
real QC hardware or noisy simulators. To this end, we propose a noise-aware
approach (named QOIN) to alleviate the noise effect on test results of quantum
programs. QOIN employs machine learning techniques (e.g., transfer learning) to
learn the noise effect of a quantum computer and filter it from a quantum
program's outputs. Such filtered outputs are then used as the input to perform
test case assessments (determining the passing or failing of a test case
execution against a test oracle). We evaluated QOIN on IBM's 23 noise models
with nine real-world quantum programs and 1000 artificial quantum programs. We
also generated faulty versions of these programs to check if a failing test
case execution can be determined under noise. Results show that QOIN can reduce
the noise effect by more than . To check QOIN's effectiveness for quantum
software testing, we used an existing test oracle for quantum software testing.
The results showed that the F1-score of the test oracle was improved on average
by for six real-world programs and by for 800 artificial
programs, demonstrating that QOIN can effectively learn noise patterns and
enable noise-aware quantum software testing
- …