Introduction
An increasingly important area of runtime monitoring is the incorporation of techniques for diagnosis and repair, for example, in autonomic control applications [9], in robotics, and in e-business process change [12]. In particular, a runtime monitor becomes a ’supervisor’ - a process which not only monitors but may evolve the running system dynamically. In [4], a framework for the logical modelling of hierarchically structured supervised component systems was set out. The modelling captures the following key behavioural concepts: at runtime, a supervisory component can (i) monitor its supervisee to ensure conformance against desired behaviour, (ii) analyse reasons for non-conformance, should that arise, (iii) evolve its supervisee in a pre-programmed way following diagnosis, or via external stimulus received from higher-level supervisory components. Structurally, components may contain sub-components, actions over the state of the component, and programs over the actions. In this logical framework, components are specified by first-order logic theories. Actions are either basic revisions to the state of the component or combinations of actions. Crucially, a supervisory component is treated as a logical theory meta to its supervisee, thus providing access to all facets of the supervisee’s structure. A supervisory component program is executed meta to its supervisee’s program. Synchronisation between the two may occur through a variety of schemes, from lock-step synchronisation to asynchronous execution with defined synchronisation points. A supervisory program action may evolve its supervisee by making changes to its state, to its actions, to its sub-components, or to its program. This occurs in the logical framework via a theory change induced from the meta-level.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Afifi, D., Rydeheard, D., Barringer, H.: Automated reasoning in the simulation of evolvable systems. In: Workshop on Practical Aspects of Automated Reasoning (PAAR 2010), Edinburgh, UK (2010)
Akbarpour, B., Paulson, L.C.: Towards automatic proofs of inequalities involving elementary functions. PDPAR 2006: Pragmatical Aspects of Decision Procedures in Automated Reasoning, p. 27 (2006)
Barrett, C., Tinelli, C.: CVC3. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 298–302. Springer, Heidelberg (2007)
Barringer, H., Gabbay, D., Rydeheard, D.: Modelling evolvable component systems: Part I: A logical framework. Logic Jnl IGPL 17(6), 631–696 (2009)
Claessen, K., Sörensson, N.: New techniques that improve MACE-style model finding. In: Proc. of Workshop on Model Computation, MODEL (2003)
Crocker, D.: Perfect developer: A tool for object-oriented formal specification and refinement. tools exhibition notes at formal methods europe. In. Tools Exhibition Notes at Formal Methods Europe, p. 2003 (2003)
De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)
Enderton, H.B., NetLibrary, I.: A mathematical introduction to logic. Academic Press, New York (1972)
Kephart, J.O., Chess, D.M.: The vision of autonomic computing. Computer 36(1), 41–50 (2003)
Korovin, K.: iProver - an instantiation-based theorem prover for first-order logic (system description). In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS (LNAI), vol. 5195, pp. 292–298. Springer, Heidelberg (2008)
Lincoln, P., Clavel, M., Eker, S., Meseguer, J.: Principles of maude. In: Meseguer, J. (ed.) Electronic Notes in Theoretical Computer Science, vol. 4, Elsevier Science Publishers, Amsterdam (2000)
Oquendo, F., Warboys, B., Morrison, R., Dindeleux, R., Gallo, F., Garavel, H., Occhipinti, C.: ArchWare: Architecting Evolvable Software. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 257–271. Springer, Heidelberg (2004)
Prevosto, V., Waldmann, U.: Spass+ t. ESCoR: Empirically Successful Computerized Reasoning 192, 88 (2006)
Riazanov, A., Voronkov, A.: The design and implementation of VAMPIRE. AI Communications 15(2-3), 91–110 (2002)
Schulz, S.: E-a brainiac theorem prover. AI Communications 15(2), 111–126 (2002)
Sutcliffe, G., Suttner, C.B.: The TPTP Problem Library: CNF Release v1.2.1. Journal of Automated Reasoning 21(2), 177–203 (1998)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Afifi, D., Rydeheard, D.E., Barringer, H. (2010). ESAT: A Tool for Animating Logic-Based Specifications of Evolvable Component Systems. In: Barringer, H., et al. Runtime Verification. RV 2010. Lecture Notes in Computer Science, vol 6418. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16612-9_36
Download citation
DOI: https://doi.org/10.1007/978-3-642-16612-9_36
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16611-2
Online ISBN: 978-3-642-16612-9
eBook Packages: Computer ScienceComputer Science (R0)