39 research outputs found
Distributed Verification of Rare Properties using Importance Splitting Observers
Rare properties remain a challenge for statistical model checking (SMC) due
to the quadratic scaling of variance with rarity. We address this with a
variance reduction framework based on lightweight importance splitting
observers. These expose the model-property automaton to allow the construction
of score functions for high performance algorithms.
The confidence intervals defined for importance splitting make it appealing
for SMC, but optimising its performance in the standard way makes distribution
inefficient. We show how it is possible to achieve equivalently good results in
less time by distributing simpler algorithms. We first explore the challenges
posed by importance splitting and present an algorithm optimised for
distribution. We then define a specific bounded time logic that is compiled
into memory-efficient observers to monitor executions. Finally, we demonstrate
our framework on a number of challenging case studies
Robust Online Monitoring of Signal Temporal Logic
Signal Temporal Logic (STL) is a formalism used to rigorously specify
requirements of cyberphysical systems (CPS), i.e., systems mixing digital or
discrete components in interaction with a continuous environment or analog com-
ponents. STL is naturally equipped with a quantitative semantics which can be
used for various purposes: from assessing the robustness of a specification to
guiding searches over the input and parameter space with the goal of falsifying
the given property over system behaviors. Algorithms have been proposed and
implemented for offline computation of such quantitative semantics, but only
few methods exist for an online setting, where one would want to monitor the
satisfaction of a formula during simulation. In this paper, we formalize a
semantics for robust online monitoring of partial traces, i.e., traces for
which there might not be enough data to decide the Boolean satisfaction (and to
compute its quantitative counterpart). We propose an efficient algorithm to
compute it and demonstrate its usage on two large scale real-world case studies
coming from the automotive domain and from CPS education in a Massively Open
Online Course (MOOC) setting. We show that savings in computationally expensive
simulations far outweigh any overheads incurred by an online approach
User-guided discovery of declarative process models
Process mining techniques can be used to effectively discover process models from logs with example behaviour. Cross-correlating a discovered model with information in the log can be used to improve the underlying process. However, existing process discovery techniques have two important drawbacks. The produced models tend to be large and complex, especially in flexible environments where process executions involve multiple alternatives. This "overload" of information is caused by the fact that traditional discovery techniques construct procedural models explicitly showing all possible behaviours. Moreover, existing techniques offer limited possibilities to guide the mining process towards specific properties of interest. These problems can be solved by discovering declarative models. Using a declarative model, the discovered process behaviour is described as a (compact) set of rules. Moreover, the discovery of such models can easily be guided in terms of rule templates. This paper uses DECLARE, a declarative language that provides more flexibility than conventional procedural notations such as BPMN, Petri nets, UML ADs, EPCs and BPEL. We present an approach to automatically discover DECLARE models. This has been implemented in the process mining tool ProM. Our approach and toolset have been applied to a case study provided by the company Thales in the domain of maritime safety and security
Linear Temporal Logic and Propositional Schemata, Back and Forth (extended version)
This paper relates the well-known Linear Temporal Logic with the logic of
propositional schemata introduced by the authors. We prove that LTL is
equivalent to a class of schemata in the sense that polynomial-time reductions
exist from one logic to the other. Some consequences about complexity are
given. We report about first experiments and the consequences about possible
improvements in existing implementations are analyzed.Comment: Extended version of a paper submitted at TIME 2011: contains proofs,
additional examples & figures, additional comparison between classical
LTL/schemata algorithms up to the provided translations, and an example of
how to do model checking with schemata; 36 pages, 8 figure
Sliding between model checking and runtime verification
Abstract. We present a unified semantics for linear temporal logic capturing model checking and runtime verification. Moreover, we present the main ingredients of a corresponding monitor synthesis procedure
Sur l’assignation de buts comportementaux à des coalitions d’agents
International audienceDans cet article, nous présentons un cadre de modélisation formelle pour l'ingénierie du besoin qui prenne simultanément en compte les buts comportementaux et les agents. Pour ce faire, nous introduisons un langage noyau, appelé KHI, ainsi que sa sémantique dans une logique de straté-gies appelée USL. Dans KHI, les agents sont décrits par leurs capacités et les buts sont définis par des formules de logique temporelle linéaire. Une « assignation » associe alors chacun des buts à un ensemble (une coalition) d'agents, qui sont responsables de sa satisfaction. Nous présentons et dis-cutons ensuite différents critères de correction pour cette relation d'assignation. Ceux-ci permettent d'évaluer la « pertinence » d'une assignation de buts à des coalitions. Ils différent selon les interactions qu'ils permettent entre les coalitions d'agents. Nous proposons alors une procédure décidable de vérification pour la satisfaction des critères de correction pour l'assignation. Elle consiste à réduire la satisfaction des critères à des instances du problème de model-checking pour des formules d'USL dans une structure dérivée des capacités des agents. 1 Contexte Si, en toute rigueur, la discipline de la modélisation du besoin ne se restreint pas à elles seules [17, 14], les approches dites par buts [18] ou par agents [2, 9] ont le vent en poupe dans la communauté idoine (cf. les citations précédentes mais aussi [12, 15]). En KAOS [18], la question première est de déterminer les besoins dont il faut tenir compte pour rendre compte d'un système au sein d'un environnement, le tout formant un système global à mettre au point. Celui-ci doit répondre à des buts et est constitué d'agents (entités actives). Un but est défini comme un énoncé prescriptif sous la responsabilité d'agents du système global. Les buts peuvent être de toutes sortes (on retrouve les traditionnelles taxonomies autour des buts non-fonctionnels [11]). Mais on distingue en particulier les buts comportementaux qui caractérisent des traces et peuvent donc faire l'objet d'une formalisation dans une logique temporelle telle que LTL. Bien que partageant superficiellement de nombreuses notions avec KAOS, TROPOS se concentre avant tout sur la notion d'acteur, défini comme un agent intentionnel. Un tel agent est muni de buts qu'il sou-haite voir remplis mais dont la satisfaction, partielle comme complète, n'est pas nécessairement de sa responsabilité. Celle-ci peut être déléguée à d'autres acteurs. TROPOS [2] pousse ainsi à l'explicitation des liens de dépendance et de collaboration entre acteurs. Ceci s'explique en particulier par le fait que les systèmes visés par la méthode sont susceptibles de comprendre des acteurs « humains » ou institu-tionnels. TROPOS a aussi fait l'objet d'une proposition formelle visant à étudier dans quelle mesure des acteurs peuvent contribuer à satisfaire des buts pour d'autres acteurs. L'approche en question [9, 10] introduit à cette fin les notions, dites « sociales », de rôle, d'engagement (commitment) et de protocole. Le rôle représente le comportement attendu des acteurs. Une assignation de rôles à des acteurs est alors évaluée au moyen d'un critère de correction. Celui-ci revient essentiellement à vérifier que les capacités d'un acteur entraînent les conséquents des engagements où le rôle assigné apparaît comme débiteur