7 research outputs found

    Non-smooth and zeno trajectories for hybrid system algebra

    Get PDF
    Hybrid systems are heterogeneous systems characterised by the interaction of discrete and continuous dynamics. In this paper we compare a slightly extended version of our earlier algebraic approach to hybrid systems with other approaches. We show that hybrid automata, which are probably the standard tool for describing hybrid systems, can conveniently be embedded into our algebra. But we allow general transition functions, not only smooth ones. Moreover we embed other models and point out some important advantages of the algebraic approach. In particular, we show how to easily handle Zeno effects, which are excluded by most other authors. The development of the theory is illustrated by a running example and a larger case study

    Calculational Verification of Reactive Programs with Reactive Relations and Kleene Algebra

    Get PDF
    Reactive programs are ubiquitous in modern applications, and so verification is highly desirable. We present a verification strategy for reactive programs with a large or infinite state space utilising algebraic laws for reactive relations. We define novel operators to characterise interactions and state updates, and an associated equational theory. With this we can calculate a reactive program’s denotational semantics, and thereby facilitate automated proof. Of note is our reasoning support for iterative programs with reactive invariants, which is supported by Kleene algebra. We illustrate our strategy by verifying a reactive buffer. Our laws and strategy are mechanised in Isabelle/UTP, which provides soundness guarantees, and practical verification support

    Automated verification of reactive and concurrent programs by calculation

    Get PDF
    Reactive programs combine traditional sequential programming constructs with primitives to allow communication with other concurrent agents. They are ubiquitous in modern applications, ranging from components systems and web services, to cyber-physical systems and autonomous robots. In this paper, we present an algebraic verification strategy for concurrent reactive programs, with a large or infinite state space. We define novel operators to characterise interactions and state updates, and an associated equational theory. With this we can calculate a reactive program's denotational semantics, and thereby facilitate automated proof. Of note is our reasoning support for iterative programs with reactive invariants, based on Kleene algebra, and for parallel composition. We illustrate our strategy by verifying a reactive buffer. Our laws and strategy are mechanised in Isabelle/UTP, our implementation of Hoare and He's Unifying Theories of Programming (UTP) framework, to provide soundness guarantees and practical verification support

    Algebraic Notions of Termination

    Full text link
    Five algebraic notions of termination are formalised, analysed and compared: wellfoundedness or Noetherity, L\"ob's formula, absence of infinite iteration, absence of divergence and normalisation. The study is based on modal semirings, which are additively idempotent semirings with forward and backward modal operators. To model infinite behaviours, idempotent semirings are extended to divergence semirings, divergence Kleene algebras and omega algebras. The resulting notions and techniques are used in calculational proofs of classical theorems of rewriting theory. These applications show that modal semirings are powerful tools for reasoning algebraically about the finite and infinite dynamics of programs and transition systems.Comment: 29 page

    RĂ©solution d'Ă©quations en algĂšbre de Kleene : applications Ă  l'analyse de programmes

    Get PDF
    Au fil des ans, l'algĂšbre de Kleene s'est avĂ©rĂ©e ĂȘtre un outil formel trĂšs pratique et flexible quant vient le temps de raisonner sur les programmes informatiques. Cependant, actuellement, la plupart des applications Ă  l'analyse de programmes de l'algĂšbre de Kleene se font en sĂ©lectionnant un problĂšme prĂ©cis et en voyant comment l'algĂšbre de Kleene permet de le rĂ©soudre, ce qui limite les applications possibles. L'objectif visĂ© par ce mĂ©moire est de dĂ©terminer dans quelle mesure la rĂ©solution d'Ă©quations, en algĂšbre de Kleene, peut ĂȘtre utilisĂ©e en analyse de programmes. Une grande partie de ce mĂ©moire est donc consacrĂ©e Ă  la rĂ©solution de diffĂ©rents types d'Ă©quations dans diffĂ©rentes variantes de l'algĂšbre de Kleene. Puis nous montrons comment la vĂ©rification de programmes ainsi que la synthĂšse de contrĂŽleurs peuvent tirer profit de la rĂ©solution d'Ă©quations en algĂšbre de Kleene

    Quantales and temporal logics

    Get PDF
    We propose an algebraic semantics for the temporal logic CTL∗ and simplify it for its sublogics CTL and LTL. We abstractly represent state and path formulas over transition systems in Boolean left quantales. These are complete lattices with a multiplication that preserves arbitrary joins in its left argument and is isotone in its right argument. Over these quantales, the semantics of CTL∗ formulas can be encoded via finite and infinite iteration operators; the CTL and LTL operators can be related to domain operators. This yields interesting new connections between representations as known from the modal ”-calculus and Kleene/ω-algebra
    corecore