438 research outputs found
Fully Observable Non-deterministic Planning as Assumption-Based Reactive Synthesis
We contribute to recent efforts in relating two approaches to automatic synthesis, namely, automated planning and discrete reactive synthesis. First, we develop a declarative characterization of the standard “fairness” assumption on environments in non-deterministic planning, and show that strong-cyclic plans are correct solution concepts for fair environments. This complements, and arguably completes, the existing foundational work on non-deterministic planning, which focuses on characterizing (and computing) plans enjoying special “structural” properties, namely loopy but closed policy structures. Second, we provide an encoding suitable for reactive synthesis that avoids the naive exponential state space blowup. To do so, special care has to be taken to specify the fairness assumption on the environment in a succinct manner.Fil: D'ippolito, Nicolás Roque. Consejo Nacional de Investigaciones Científicas y Técnicas. Oficina de Coordinación Administrativa Ciudad Universitaria. Instituto de Investigación en Ciencias de la Computación. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Instituto de Investigación en Ciencias de la Computación; ArgentinaFil: Rodriguez, Natalia. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; ArgentinaFil: Sardina, Sebastian. RMIT University; Australi
SOTER: A Runtime Assurance Framework for Programming Safe Robotics Systems
The recent drive towards achieving greater autonomy and intelligence in
robotics has led to high levels of complexity. Autonomous robots increasingly
depend on third party off-the-shelf components and complex machine-learning
techniques. This trend makes it challenging to provide strong design-time
certification of correct operation.
To address these challenges, we present SOTER, a robotics programming
framework with two key components: (1) a programming language for implementing
and testing high-level reactive robotics software and (2) an integrated runtime
assurance (RTA) system that helps enable the use of uncertified components,
while still providing safety guarantees. SOTER provides language primitives to
declaratively construct a RTA module consisting of an advanced,
high-performance controller (uncertified), a safe, lower-performance controller
(certified), and the desired safety specification. The framework provides a
formal guarantee that a well-formed RTA module always satisfies the safety
specification, without completely sacrificing performance by using higher
performance uncertified components whenever safe. SOTER allows the complex
robotics software stack to be constructed as a composition of RTA modules,
where each uncertified component is protected using a RTA module.
To demonstrate the efficacy of our framework, we consider a real-world
case-study of building a safe drone surveillance system. Our experiments both
in simulation and on actual drones show that the SOTER-enabled RTA ensures the
safety of the system, including when untrusted third-party components have bugs
or deviate from the desired behavior
Implementing Theorem Provers in Logic Programming
Logic programming languages have many characteristics that indicate that they should serve as good implementation languages for theorem provers. For example, they are based on search and unification which are also fundamental to theorem proving. We show how an extended logic programming language can be used to implement theorem provers and other aspects of proof systems for a variety of logics. In this language first-order terms are replaced with simply-typed λ-terms, and thus unification becomes higher-order unification. Also, implication and universal quantification are allowed in goals. We illustrate that inference rules can be very naturally specified, and that the primitive search operations of this language correspond to those needed for searching for proofs. We argue on several levels that this extended logic programming language provides a very suitable environment for implementing tactic style theorem provers. Such theorem provers provide extensive capabilities for integrating techniques for automated theorem proving into an interactive proof environment. We are also concerned with representing proofs as objects. We illustrate how such objects can be constructed and manipulated in the logic programming setting. Finally, we propose extensions to tactic style theorem provers in working toward the goal of developing an interactive theorem proving environment that provides a user with many tools and techniques for building and manipulating proofs, and that integrates sophisticated capabilities for automated proof discovery. Many of the theorem provers we present have been implemented in the higher-order logic programming language λProlog
5G RF Spectrum-based Cryptographic Pseudo Random Number Generation for IoT Security
This thesis presents a novel approach for generating truly random num-
bers in 5G wireless communication systems using the radio frequency (RF)
spectrum. The proposed method leverages variations in the RF spectrum
to create entropy, which is then used to generate truly random numbers.
This approach is based on channel state information (CSI) measured at
the receiver in 5G systems and utilize the variability of the CSI to extract
entropy for random number generation. The proposed method has several
advantages over traditional random number generators, including the use
of a natural source of entropy in 5G wireless communication systems, min-
imal hardware and computational resource requirements, and a high level
of security due to the use of physical characteristics of the wireless chan-
nel that are difficult for attackers to predict or manipulate. Simulation re-
sults demonstrate that the proposed method generates high-entropy random
numbers, passes statistical randomness tests, and outperforms traditional
random number generators regarding energy consumption and computa-
tional complexity. This approach has the potential to improve the security
of cryptographic protocols in 5G networks
Sound Code Generation From Hybrid System Models: Some Theoretical Results
Code generation from hybrid system models, a promising approach for producing reliable embedded systems, has been our research focus for some time now. In this report, we summarize the progress made thus far and provide directions for research towards realization of this goal
An Integrated Development Environment for Declarative Multi-Paradigm Programming
In this paper we present CIDER (Curry Integrated Development EnviRonment), an
analysis and programming environment for the declarative multi-paradigm
language Curry. CIDER is a graphical environment to support the development of
Curry programs by providing integrated tools for the analysis and visualization
of programs. CIDER is completely implemented in Curry using libraries for GUI
programming (based on Tcl/Tk) and meta-programming. An important aspect of our
environment is the possible adaptation of the development environment to other
declarative source languages (e.g., Prolog or Haskell) and the extensibility
w.r.t. new analysis methods. To support the latter feature, the lazy evaluation
strategy of the underlying implementation language Curry becomes quite useful.Comment: In A. Kusalik (ed), proceedings of the Eleventh International
Workshop on Logic Programming Environments (WLPE'01), December 1, 2001,
Paphos, Cyprus. cs.PL/011104
Constructing and interrogating actor histories
Complex systems, such as organizations, can be represented as executable simulation models using actor-based languages. Decision-making can be supported by system simulation so that different configurations provide a basis for what-if analysis. Actor-based models are expressed in terms of large numbers of concurrent actors that communicate using asynchronous messages leading to complex non-deterministic behaviour. This chapter addresses the problem of analyzing the results of model executions and proposes a general approach that can be added to any actor-based system. The approach uses a logic programming language with temporal extensions to query execution traces. The approach has been implemented and is shown to support a representative system model
Constructing and interrogating actor histories
Complex systems, such as organizations, can be represented as executable simulation models using actor-based languages. Decision-making can be supported by system simulation so that different configurations provide a basis for what-if analysis. Actor-based models are expressed in terms of large numbers of concurrent actors that communicate using asynchronous messages leading to complex non-deterministic behaviour. This chapter addresses the problem of analyzing the results of model executions and proposes a general approach that can be added to any actor-based system. The approach uses a logic programming language with temporal extensions to query execution traces. The approach has been implemented and is shown to support a representative system model
- …