60 research outputs found
Model checking embedded system designs
We survey the basic principles behind the application of model checking to controller verification and synthesis. A promising development is the area of guided model checking, in which the state space search strategy of the model checking algorithm can be influenced to visit more interesting sets of states first. In particular, we discuss how model checking can be combined with heuristic cost functions to guide search strategies. Finally, we list a number of current research developments, especially in the area of reachability analysis for optimal control and related issues
Combinando “model checking” y “proof checking” en el análisis de sistemas de tiempo real
Cada vez son más frecuentes las aplicaciones donde el tiempo juega un rol importante. Por ejemplo en: protocolos de comunicación; controladores de robots, de comandos de aviones, de pasos a nivel de trenes, de procesos industriales automatizados y de dispositivos electrónicos (o electromecánicos); aplicaciones multimedia y de internet; entre otras. En general éstas son aplicaciones críticas, en las cuales una falla o mal funcionamiento pueden acarrear consecuencias graves, tales como poner en juego vidas humanas y/o grandes inversiones económicas. El comportamiento de estos sistemas, llamados sistemas de tiempo real, no está determinado únicamente por la sucesión de acciones que se ejecutan, sino también por el momento en que las mismas ocurren y son procesadas. El tiempo de ejecución es “el” parámetro fundamental en el comportamiento de esta clase de sistemas y una gran parte, quizás la más importante, de los requerimientos de los mismos son temporales: “tal acción debe ejecutarse en un lapso de tiempo determinado”, “el tiempo transcurrido entre dos eventos o señales debe estar acotado por un valor constante”, etc.Eje: Sistemas distribuidos y tiempo realRed de Universidades con Carreras en Informática (RedUNCI
Combinando “model checking” y “proof checking” en el análisis de sistemas de tiempo real
Cada vez son más frecuentes las aplicaciones donde el tiempo juega un rol importante. Por ejemplo en: protocolos de comunicación; controladores de robots, de comandos de aviones, de pasos a nivel de trenes, de procesos industriales automatizados y de dispositivos electrónicos (o electromecánicos); aplicaciones multimedia y de internet; entre otras. En general éstas son aplicaciones críticas, en las cuales una falla o mal funcionamiento pueden acarrear consecuencias graves, tales como poner en juego vidas humanas y/o grandes inversiones económicas. El comportamiento de estos sistemas, llamados sistemas de tiempo real, no está determinado únicamente por la sucesión de acciones que se ejecutan, sino también por el momento en que las mismas ocurren y son procesadas. El tiempo de ejecución es “el” parámetro fundamental en el comportamiento de esta clase de sistemas y una gran parte, quizás la más importante, de los requerimientos de los mismos son temporales: “tal acción debe ejecutarse en un lapso de tiempo determinado”, “el tiempo transcurrido entre dos eventos o señales debe estar acotado por un valor constante”, etc.Eje: Sistemas distribuidos y tiempo realRed de Universidades con Carreras en Informática (RedUNCI
Divergence-Preserving Branching Bisimilarity
This note considers the notion of divergence-preserving branching
bisimilarity. It briefly surveys results pertaining to the notion that have
been obtained in the past one-and-a-half decade, discusses its role in the
study of expressiveness of process calculi, and concludes with some suggestions
for future work.Comment: In Proceedings EXPRESS/SOS 2020, arXiv:2008.1241
Parallelizing Deadlock Resolution in Symbolic Synthesis of Distributed Programs
Previous work has shown that there are two major complexity barriers in the
synthesis of fault-tolerant distributed programs: (1) generation of fault-span,
the set of states reachable in the presence of faults, and (2) resolving
deadlock states, from where the program has no outgoing transitions. Of these,
the former closely resembles with model checking and, hence, techniques for
efficient verification are directly applicable to it. Hence, we focus on
expediting the latter with the use of multi-core technology.
We present two approaches for parallelization by considering different design
choices. The first approach is based on the computation of equivalence classes
of program transitions (called group computation) that are needed due to the
issue of distribution (i.e., inability of processes to atomically read and
write all program variables). We show that in most cases the speedup of this
approach is close to the ideal speedup and in some cases it is superlinear. The
second approach uses traditional technique of partitioning deadlock states
among multiple threads. However, our experiments show that the speedup for this
approach is small. Consequently, our analysis demonstrates that a simple
approach of parallelizing the group computation is likely to be the effective
method for using multi-core computing in the context of deadlock resolution
Hybrid Automata and Bisimulations
This paper surveys hybrid automata and bisimulation relations. We formally introduce both notions and briefly present the model checking problem over hybrid automata. We show how, in some cases, bisimulations can be used to quotient infinite state systems to finite ones and, hence, we reduce the model checking over hybrid automata to model checking over finite models. Finally, we review some classes of hybrid automata which admit finite bisimulation quotients
- …