Abstract
Runtime enforcement and control system synthesis are two verification techniques that automate the process of transforming an erroneous system into a valid one. As both techniques can modify the behaviour of a system to prevent erroneous executions, they are both ideal for ensuring safety. In this paper, we investigate the interplay between these two techniques and identify control system synthesis as being the static counterpart to suppression-based runtime enforcement, in the context of safety properties.
Similar content being viewed by others
References
Abramsky, S.: Observation equivalence as a testing equivalence. Theor. Comput. Sci. 53, 225–241 (1987). https://doi.org/10.1016/0304-3975(87)90065-X
Aceto, L., Ingólfsdóttir, A.: Testing Hennessy–Milner Logic with Recursion. In: Thomas, W. (ed.) Foundations of Software Science and Computation Structures, pp. 41–55. Springer, Berlin (1999)
Aceto, L., Ingólfsdóttir, A., Larsen, K.G., Srba, J.: Reactive Systems: Modelling, Specification and Verification. Cambridge University Press, New York (2007)
Aceto, L., Achilleos, A., Francalanza, A., Ingólfsdóttir, A., Kjartansson, S.Ö.: Determinizing monitors for HML with recursion. arXiv preprint (2016)
Aceto, L., Achilleos, A., Francalanza, A., Ingólfsdóttir, A.: A framework for parameterized monitorability. In: Foundations of Software Science and Computation Structures, pp. 203–220. Springer International Publishing, Cham (2018a)
Aceto, L., Cassar, I., Francalanza, A., Ingólfsdóttir, A.: On runtime enforcement via suppressions. In: 29th International Conference on Concurrency Theory, CONCUR 2018, September 4–7, 2018, Beijing, China, pp. 34:1–34:17, https://doi.org/10.4230/LIPIcs.CONCUR.2018.34 (2018b)
Aceto, L., Achilleos, A., Francalanza, A., Ingólfsdóttir, A., Lehtinen, K.: Adventures in monitorability: from branching to linear time and back again. Proc ACM Program Lang. 3(POPL):52:1–52:29, https://doi.org/10.1145/3290365 (2019a)
Aceto, L., Cassar, I., Francalanza, A., Ingólfsdóttir, A.: Comparing controlled system synthesis and suppression enforcement. In: Runtime Verification, pp. 148–164. Springer International Publishing, Cham (2019b)
Alur, R., Černý, P.: Streaming transducers for algorithmic verification of single-pass list-processing programs. In: Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, pp. 599–610 (2011)
Arnold, A., Walukiewicz, I.: Nondeterministic controllers of nondeterministic processes. In: Logic and Automata, Amsterdam University Press, Texts in Logic and Games, vol. 2, pp. 29–52 (2008)
Basile, D., ter Beek, M.H., Pugliese, R.: Bridging the gap between supervisory control and coordination of services: synthesis of orchestrations and choreographies. In: COORDINATION 2019—21st International Conference on Coordination Models and Languages, (To appear) (2019)
Cassar, I., Francalanza, A., Aceto, L., Ingólfsdóttir, A.: A survey of runtime monitoring instrumentation techniques. In: PrePost2017, pp. 15–28 (2017)
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT press (1999)
Desai, A., Dreossi, T., Seshia, S.A.: Combining model checking and runtime verification for safe robotics. In: Runtime Verfication (RV), pp. 172–189. Springer International Publishing, Cham, LNCS (2017)
Ehlers, R., Lafortune, S., Tripakis, S., Vardi, M.: Bridging the gap between supervisory control and reactive synthesis: case of full observation and centralized control. IFAC Proceedings Volumes, vol. 47(2), pp. 222 – 227, 12th IFAC International Workshop on Discrete Event Systems (2014)
Erlingsson, U., Schneider, F.B.: Sasi enforcement of security policies: a retrospective. In: Proceedings of the 1999 Workshop on New Security Paradigms, ACM, New York, NY, USA, NSPW ’99, pp. 87–95 (1999)
Falcone, Y., Marchand, H.: Runtime enforcement of k-step opacity. In: 52nd IEEE Conference on Decision and Control, pp. 7271–7278, https://doi.org/10.1109/CDC.2013.6761043(2013)
Falcone, Y., Fernandez, J.C., Mounier, L.: What can you verify and enforce at runtime? Int. J. Softw. Tools Technol. Transf. 14(3), 349 (2012)
Francalanza, A.: A theory of monitors. In: International Conference on Foundations of Software Science and Computation Structures. Springer, pp. 145–161 (2016)
Francalanza, A.: Consistently-detecting monitors. In: 28th International Conference on Concurrency Theory (CONCUR 2017), Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany, Leibniz International Proceedings in Informatics (LIPIcs), vol. 85, pp. 8:1–8:19 (2017)
Francalanza, A., Aceto, L., Achilleos, A., Attard, D.P., Cassar, I., Della Monica, D., Ingólfsdóttir, A.: A foundation for runtime monitoring. In: Runtime Verification, pp. 8–29. Springer International Publishing, Cham (2017a)
Francalanza, A., Aceto, L., Ingólfsdóttir, A.: Monitorability for the Hennessy–Milner logic with recursion. Formal Methods Syst. Des. 51(1), 87–116 (2017b)
Havelund, K., Pressburger, T.: Model checking java programs using java pathfinder. Int. J. Softw. Tools Technol. Transf. 2(4), 366–381 (2000). https://doi.org/10.1007/s100090050043
Havelund, K., Roşu, G.: An overview of the runtime verification tool java pathexplorer. Formal Methods Syst. Des. 24(2), 189–215 (2004)
Kejstová, K., Ročkai, P., Barnat, J.: From model checking to runtime verification and back. In: RV, Springer (2017)
Könighofer, B., Alshiekh, M., Bloem, R., Humphrey, L., Könighofer, R., Topcu, U., Wang, C.: Shield synthesis. Formal Methods Syst. Des. 51(2), 332–361 (2017)
Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Logic Algebraic Program. 78(5), 293–303 (2009)
Ligatti, J., Bauer, L., Walker, D.: Edit automata: enforcement mechanisms for run-time security policies. Int. J. Inf. Secur. 4(1), 2–16 (2005)
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes. I. Inf. Comput. 100(1), 1–40 (1992)
Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, New York, NY, USA, POPL ’89, pp. 179–190, https://doi.org/10.1145/75277.75293(1989)
Ramadge, P.J., Wonham, W.M.: Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 25(1), 206–230 (1987)
Sakarovitch, J.: Elements of Automata Theory. Cambridge University Press, New York (2009)
Sangiorgi, D.: Introduction to Bisimulation and Coinduction. Cambridge University Press, New York (2011)
Schneider, F.B.: Enforceable security policies. ACM Trans. Inf. Syst. Secur. (TISSEC) 3(1), 30–50 (2000)
van Hulst, A.C., Reniers, M.A., Fokkink, W.J.: Maximally permissive controlled system synthesis for non-determinism and modal logic. Discrete Event Dyn. Syst. 27(1), 109–142 (2017)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This work was partly supported by the projects “TheoFoMon: Theoretical Foundations for Monitorability” (nr.163406-051) and “Developing Theoretical Foundations for Runtime Enforcement” (nr.184776-051) of the Icelandic Research Fund, by the EU H2020 RISE programme under the Marie Skłodowska-Curie grant agreement nr. 778233, and by the Endeavour Scholarship Scheme (Malta), part-financed by the European Social Fund (ESF)—Operational Programme II—Cohesion Policy 2014-2020.
Rights and permissions
About this article
Cite this article
Aceto, L., Cassar, I., Francalanza, A. et al. Comparing controlled system synthesis and suppression enforcement. Int J Softw Tools Technol Transfer 23, 601–614 (2021). https://doi.org/10.1007/s10009-021-00624-0
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-021-00624-0