39,527 research outputs found
A framework for automatic security controller generation
This paper concerns the study, the development and the synthesis of mechanisms for guaranteeing the security of complex systems, i.e., systems composed by several interactive components. A complex system under analysis is described as an open system, in which a certain component has an unspecified behavior (not fixed in advance). Regardless of the unspecified behavior, the system should work properly, e.g., should satisfy a certain property. Within this formal approach, we propose techniques to enforce properties and synthesize controller programs able to guarantee that, for all possible behaviors of the unspecified component, the overall system results secure. For performing this task, we use techniques able to provide us necessary and sufficient conditions on the behavior of this unspecified component to ensure the whole system is secure. Hence, we automatically synthesize the appropriate controller programs by exploiting satisfiability results for temporal logic. We contribute within the area of the enforcement of security properties by proposing a flexible and automated framework that goes beyond the definition of how a system should behave to work properly. Indeed, while the majority of related work focuses on the definition of monitoring mechanisms, we aid in the synthesis of enforcing techniques. Moreover, we present a tool for the synthesis of secure systems able to generate a controller program directly executable on real devices as smart phones
Towards Efficient Controller Synthesis Techniques for Logical LTL Games
Two-player games are a fruitful way to represent and reason about several
important synthesis tasks. These tasks include controller synthesis (where one
asks for a controller for a given plant such that the controlled plant
satisfies a given temporal specification), program repair (setting values of
variables to avoid exceptions), and synchronization synthesis (adding
lock/unlock statements in multi-threaded programs to satisfy safety
assertions). In all these applications, a solution directly corresponds to a
winning strategy for one of the players in the induced game. In turn,
\emph{logically-specified} games offer a powerful way to model these tasks for
large or infinite-state systems. Much of the techniques proposed for solving
such games typically rely on abstraction-refinement or template-based
solutions. In this paper, we show how to apply classical fixpoint algorithms,
that have hitherto been used in explicit, finite-state, settings, to a symbolic
logical setting. We implement our techniques in a tool called GenSys-LTL and
show that they are not only effective in synthesizing valid controllers for a
variety of challenging benchmarks from the literature, but often compute
maximal winning regions and maximally-permissive controllers. We achieve
\textbf{46.38X speed-up} over the state of the art and also scale well for
non-trivial LTL specifications
Sound and Automated Synthesis of Digital Stabilizing Controllers for Continuous Plants
Modern control is implemented with digital microcontrollers, embedded within
a dynamical plant that represents physical components. We present a new
algorithm based on counter-example guided inductive synthesis that automates
the design of digital controllers that are correct by construction. The
synthesis result is sound with respect to the complete range of approximations,
including time discretization, quantization effects, and finite-precision
arithmetic and its rounding errors. We have implemented our new algorithm in a
tool called DSSynth, and are able to automatically generate stable controllers
for a set of intricate plant models taken from the literature within minutes.Comment: 10 page
Temporal Stream Logic: Synthesis beyond the Bools
Reactive systems that operate in environments with complex data, such as
mobile apps or embedded controllers with many sensors, are difficult to
synthesize. Synthesis tools usually fail for such systems because the state
space resulting from the discretization of the data is too large. We introduce
TSL, a new temporal logic that separates control and data. We provide a
CEGAR-based synthesis approach for the construction of implementations that are
guaranteed to satisfy a TSL specification for all possible instantiations of
the data processing functions. TSL provides an attractive trade-off for
synthesis. On the one hand, synthesis from TSL, unlike synthesis from standard
temporal logics, is undecidable in general. On the other hand, however,
synthesis from TSL is scalable, because it is independent of the complexity of
the handled data. Among other benchmarks, we have successfully synthesized a
music player Android app and a controller for an autonomous vehicle in the Open
Race Car Simulator (TORCS.
Efficient Synthesis of Network Updates
Software-defined networking (SDN) is revolutionizing the networking industry,
but current SDN programming platforms do not provide automated mechanisms for
updating global configurations on the fly. Implementing updates by hand is
challenging for SDN programmers because networks are distributed systems with
hundreds or thousands of interacting nodes. Even if initial and final
configurations are correct, naively updating individual nodes can lead to
incorrect transient behaviors, including loops, black holes, and access control
violations. This paper presents an approach for automatically synthesizing
updates that are guaranteed to preserve specified properties. We formalize
network updates as a distributed programming problem and develop a synthesis
algorithm based on counterexample-guided search and incremental model checking.
We describe a prototype implementation, and present results from experiments on
real-world topologies and properties demonstrating that our tool scales to
updates involving over one-thousand nodes
Tools for active control system design
Efficient control law analysis and design tools which properly account for the interaction of flexible structures, unsteady aerodynamics and active controls are developed. Development, application, validation and documentation of efficient multidisciplinary computer programs for analysis and design of active control laws are also discussed
Structural Synthesis for GXW Specifications
We define the GXW fragment of linear temporal logic (LTL) as the basis for
synthesizing embedded control software for safety-critical applications. Since
GXW includes the use of a weak-until operator we are able to specify a number
of diverse programmable logic control (PLC) problems, which we have compiled
from industrial training sets. For GXW controller specifications, we develop a
novel approach for synthesizing a set of synchronously communicating
actor-based controllers. This synthesis algorithm proceeds by means of
recursing over the structure of GXW specifications, and generates a set of
dedicated and synchronously communicating sub-controllers according to the
formula structure. In a subsequent step, 2QBF constraint solving identifies and
tries to resolve potential conflicts between individual GXW specifications.
This structural approach to GXW synthesis supports traceability between
requirements and the generated control code as mandated by certification
regimes for safety-critical software. Synthesis for GXW specifications is in
PSPACE compared to 2EXPTIME-completeness of full-fledged LTL synthesis. Indeed
our experimental results suggest that GXW synthesis scales well to
industrial-sized control synthesis problems with 20 input and output ports and
beyond.Comment: The long (including appendix) version being reviewed by CAV'16
program committee. Compared to the submitted version, one author (out of her
wish) is moved to the Acknowledgement. (v2) Corrected typos. (v3) Add an
additional remark over environment assumption and easy corner case
- …