Abstract
In the Maude specification language, the behavior of systems is modeled by nondeterministic rewrite rules, whose free application may not always be desirable. Hence, a strategy language has been introduced to control the application of rules at a high level, without the intricacies of metaprogramming. In this paper, we give an overview of the Maude strategy language, its applications, related verification tools, and extensions, illustrated with examples.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The search-using command is not currently available in the official version of Maude, but in an extended version with the strategy-aware model checker [38].
- 2.
dsrewrite is the depth-first search variant of srewrite, which does a fair breadth-first-like search.
References
Examples of the Maude strategy language (2022). https://fadoss.github.io/strat-examples
Agha, G.A., Meseguer, J., Sen, K.: PMaude: rewrite-based specification language for probabilistic object systems. In: Cerone, A., Wiklicky, H. (eds.) Proceedings of the Third Workshop on Quantitative Aspects of Programming Languages, QAPL 2005, Edinburgh, UK, 2–3 April 2005. Electronic Notes in Theoretical Computer Science, vol. 153(2), pp. 213–239. Elsevier (2006). https://doi.org/10.1016/j.entcs.2005.10.040
Aguirre, L., MartĂ-Oliet, N., Palomino, M., Pita, I.: Strategies in conditional narrowing modulo SMT plus axioms. Technical report 2/21, Departamento de Sistemas Informáticos y ComputaciĂłn. Universidad Complutense de Madrid (2021). https://eprints.ucm.es/68621/
Atzei, N., Bartoletti, M., Lande, S., Yoshida, N., Zunino, R.: Developing secure bitcoin contracts with BitML. In: Dumas, M., Pfahl, D., Apel, S., Russo, A. (eds.) Proceedings of the ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/SIGSOFT FSE 2019, Tallinn, Estonia, 26–30 August 2019, pp. 1124–1128. ACM (2019). https://doi.org/10.1145/3338906.3341173
Bachmair, L., Dershowitz, N.: Equational inference, canonical proofs, and proof orderings. J. ACM 41(2), 236–276 (1994). https://doi.org/10.1145/174652.174655
Balland, E., Brauner, P., Kopetz, R., Moreau, P.-E., Reilles, A.: Tom: piggybacking rewriting on Java. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 36–47. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73449-9_5
Bentea, L., Ă–lveczky, P.C.: A probabilistic strategy language for probabilistic rewrite theories and its application to cloud computing. In: MartĂ-Oliet, N., Palomino, M. (eds.) WADT 2012. LNCS, vol. 7841, pp. 77–94. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37635-1_5
Borovanský, P., Kirchner, C., Kirchner, H., Ringeissen, C.: Rewriting with strategies in ELAN: a functional semantics. Int. J. Found. Comput. Sci. 12(1), 69–95 (2001). https://doi.org/10.1142/S0129054101000412
Braga, C., Verdejo, A.: Modular structural operational semantics with strategies. In: van Glabbeek, R., Mosses, P.D. (eds.) Proceedings of the Third Workshop on Structural Operational Semantics, SOS 2006, Bonn, Germany, 26 August 2006. Electronic Notes in Theoretical Computer Science, vol. 175, no. 1, pp. 3–17. Elsevier (2007). https://doi.org/10.1016/j.entcs.2006.10.024
Bravenboer, M., Kalleberg, K.T., Vermaas, R., Visser, E.: Stratego/XT 0.17. A language and toolset for program transformation. Sci. Comput. Program. 72(1–2), 52–70 (2008). https://doi.org/10.1016/j.scico.2007.11.003
Clarke, E.M., Henzinger, T.A., Veith, H., Bloem, R. (eds.): Handbook of Model Checking. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-10575-8
Clavel, M.: Strategies and user interfaces in Maude at work. In: Gramlich, B., Lucas, S. (eds.) Proceedings of the 3rd International Workshop on Reduction Strategies in Rewriting and Programming, WRS 2003, Valencia, Spain, 8 June 2003. Electronic Notes in Theoretical Computer Science, vol. 86, no. 4, pp. 570–592. Elsevier (2003). https://doi.org/10.1016/S1571-0661(05)82612-X
Clavel, M., et al.: Maude manual v3.2.1 (2022-02). http://maude.cs.illinois.edu
Clavel, M., Meseguer, J.: Reflection and strategies in rewriting logic. In: Meseguer, J. (ed.) Proceedings of the First International Workshop on Rewriting Logic and its Applications, WRLA 1996, Asilomar, California, 3–6 September 1996. Electronic Notes in Theoretical Computer Science, vol. 4, pp. 126–148. Elsevier (1996). https://doi.org/10.1016/S1571-0661(04)00037-4
Durán, F., et al.: Programming and symbolic computation in Maude. J. Log. Algebraic Methods Program. 110 (2020). https://doi.org/10.1016/j.jlamp.2019.100497
Eker, S., MartĂ-Oliet, N., Meseguer, J., Verdejo, A.: Deduction, strategies, and rewriting. In: Archer, M., de la Tour, T.B., Muñoz, C. (eds.) Proceedings of the 6th International Workshop on Strategies in Automated Deduction, STRATEGIES 2006, Seattle, WA, USA, 16 August 2006. Electronic Notes in Theoretical Computer Science, vol. 174, no. 11, pp. 3–25. Elsevier (2007). https://doi.org/10.1016/j.entcs.2006.03.017
Eker, S., Meseguer, J., Sridharanarayanan, A.: The Maude LTL model checker. In: Gadducci, F., Montanari, U. (eds.) Proceedings of the Fourth International Workshop on Rewriting Logic and its Applications, WRLA 2002, Pisa, Italy, 19–21 September 2002. Electronic Notes in Theoretical Computer Science, vol. 71, pp. 162–187. Elsevier (2004). https://doi.org/10.1016/S1571-0661(05)82534-4
Fernández, M., Kirchner, H., Pinaud, B.: Strategic port graph rewriting: an interactive modelling framework. Math. Struct. Comput. Sci. 29(5), 615–662 (2019). https://doi.org/10.1017/S0960129518000270
Hensel, C., Junges, S., Katoen, J.P., Quatmann, T., Volk, M.: The probabilistic model checker Storm. Int. J. Softw. Tools Technol. Transf. 23(4), 1–22 (2021). https://doi.org/10.1007/s10009-021-00633-z
Hernández Cerezo, A.: Strategies for implementing SAT algorithms in rewriting logic. Bachelor’s thesis, Universidad Complutense de Madrid (2020). https://eprints.ucm.es/63693
Hidalgo-Herrero, M., Verdejo, A., Ortega-Mallén, Y.: Using Maude and its strategies for defining a framework for analyzing Eden semantics. In: Antoy, S. (ed.) Proceedings of the Sixth International Workshop on Reduction Strategies in Rewriting and Programming, WRS 2006, Seattle, WA, USA, 11 August 2006. Electronic Notes in Theoretical Computer Science, vol. 174, no. 10, pp. 119–137. Elsevier (2007). https://doi.org/10.1016/j.entcs.2007.02.051
Kowalski, R.A.: Algorithm = logic + control. Commun. ACM 22(7), 424–436 (1979). https://doi.org/10.1145/359131.359136
Kwiatkowska, M., Norman, G., Parker, D.: PRISM 4.0: verification of probabilistic real-time systems. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 585–591. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-22110-1_47
Lescanne, P.: Implementation of completion by transition rules + control: ORME. In: Kirchner, H., Wechler, W. (eds.) ALP 1990. LNCS, vol. 463, pp. 262–269. Springer, Heidelberg (1990). https://doi.org/10.1007/3-540-53162-9_44
Lucas, S.: Context-sensitive rewriting. ACM Comput. Surv. 53(4), 78:1–78:36 (2020). https://doi.org/10.1145/3397677
Marin, M., Kutsia, T.: Foundations of the rule-based system \(\rho \)Log. J. Appl. Non Class. Log. 16(1–2), 151–168 (2006). https://doi.org/10.3166/jancl.16.151-168
MartĂ-Oliet, N., Meseguer, J., Verdejo, A.: Towards a strategy language for Maude. In: MartĂ-Oliet, N. (ed.) Proceedings of the Fifth International Workshop on Rewriting Logic and its Applications, WRLA 2004, Barcelona, Spain, 27 March–4 April 2004. Electronic Notes in Theoretical Computer Science, vol. 117, pp. 417–441. Elsevier (2004). https://doi.org/10.1016/j.entcs.2004.06.020
MartĂ-Oliet, N., Meseguer, J., Verdejo, A.: A rewriting semantics for Maude strategies. In: RoĹźu, G. (ed.) Proceedings of the Seventh International Workshop on Rewriting Logic and its Applications, WRLA 2008, Budapest, Hungary, 29–30 March 2008. Electronic Notes in Theoretical Computer Science, vol. 238, no. 3, pp. 227–247. Elsevier (2009). https://doi.org/10.1016/j.entcs.2009.05.022
Meseguer, J.: Conditional rewriting logic as a unified model of concurrency. Theor. Comput. Sci. 96(1), 73–155 (1992). https://doi.org/10.1016/0304-3975(92)90182-F
Meseguer, J.: Twenty years of rewriting logic. J. Log. Algebr. Program. 81(7–8), 721–781 (2012). https://doi.org/10.1016/j.jlap.2012.06.003
Rosa-Velardo, F., Segura, C., Verdejo, A.: Typed mobile ambients in Maude. In: Cirstea, H., MartĂ-Oliet, N. (eds.) Proceedings of the 6th International Workshop on Rule-Based Programming, RULE 2005, Nara, Japan, 23 April 2005. Electronic Notes in Theoretical Computer Science, vol. 147(1), pp. 135–161. Elsevier (2006). https://doi.org/10.1016/j.entcs.2005.06.041
Rubio, R.: Model checking of strategy-controlled systems in rewriting logic. Ph.D. thesis, Universidad Complutense de Madrid (2022). https://eprints.ucm.es/71531
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Model checking strategy-controlled rewriting systems. In: FSCD 2019 (2019). https://doi.org/10.4230/LIPIcs.FSCD.2019.31
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Parameterized strategies specification in Maude. In: Fiadeiro, J.L., Tutu, I. (eds.) WADT 2018. LNCS, vol. 11563, pp. 27–44. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-23220-7_2
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: The semantics of the Maude strategy language. Technical report 01/21, Departamento de Sistemas Informáticos y ComputaciĂłn, Universidad Complutense de Madrid (2021). https://eprints.ucm.es/67449
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Strategies, model checking and branching-time properties in Maude. J. Log. Algebr. Methods Program. 123, 100700 (2021). https://doi.org/10.1016/j.jlamp.2021.100700
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Metalevel transformation of strategies. J. Log. Algebr. Methods Program. 124, 100728 (2022). https://doi.org/10.1016/j.jlamp.2021.100728
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Model checking strategy-controlled systems in rewriting logic. Autom. Softw. Eng. 29(1), 1–62 (2021). https://doi.org/10.1007/s10515-021-00307-9
Rubio, R., MartĂ-Oliet, N., Pita, I., Verdejo, A.: Simulating and model checking membrane systems using strategies in Maude. J. Log. Algebr. Methods Program. 124, 100727 (2022). https://doi.org/10.1016/j.jlamp.2021.100727
Santos-GarcĂa, G., Palomino, M.: Solving Sudoku puzzles with rewriting rules. In: Denker, G., Talcott, C. (eds.) Proceedings of the 6th International Workshop on Rewriting Logic and its Applications, WRLA 2006, Vienna, Austria, 1–2 April 2006. Electronic Notes in Theoretical Computer Science, vol. 176, no. 4, pp. 79–93. Elsevier (2007). https://doi.org/10.1016/j.entcs.2007.06.009
Santos-GarcĂa, G., Palomino, M., Verdejo, A.: Rewriting logic using strategies for neural networks: An implementation in Maude. In: Corchado, J.M., RodrĂguez, S., Llinas, J., Molina, J.M. (eds.) International Symposium on Distributed Computing and Artificial Intelligence (DCAI 2008). Advances in Soft Computing, vol. 50, pp. 424–433. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-540-85863-8_50
Verdejo, A., MartĂ-Oliet, N.: Basic completion strategies as another application of the Maude strategy language. In: Escobar, S. (ed.) WRS 2011 (2012). https://doi.org/10.4204/EPTCS.82.2
Acknowledgments
I would like to thank Kyungmin Bae for the invitation to give this tutorial at WRLA, as well as the coauthors of previous works on the strategy language, Steven Eker, Narciso MartĂ-Oliet, JosĂ© Meseguer, Alberto Verdejo, Isabel Pita, and the other members of the Maude Team. Special thanks are due to Narciso MartĂ-Oliet for their helpful comments when revising this manuscript. This work was partially supported by the Spanish Ministry of Science and Innovation through projects TRACES (TIN2015-67522-C3-3-R) and ProCode (PID2019-108528RB-C22), and by the Spanish Ministry of Universities through grant FPU17/02319.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Rubio, R. (2022). An Overview of the Maude Strategy Language and its Applications. In: Bae, K. (eds) Rewriting Logic and Its Applications. WRLA 2022. Lecture Notes in Computer Science, vol 13252. Springer, Cham. https://doi.org/10.1007/978-3-031-12441-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-031-12441-9_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-12440-2
Online ISBN: 978-3-031-12441-9
eBook Packages: Computer ScienceComputer Science (R0)