Skip to main content

Variants in the Infinitary Unification Wonderland

  • Conference paper
  • First Online:
Rewriting Logic and Its Applications (WRLA 2020)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12328))

Included in the following conference series:

Abstract

So far, results about variants, the finite variant property (FVP), and variant unification have been developed for equational theories \(E \cup B\) where B is a set of axioms having a finitary unification algorithm, and the equations E, oriented as rewrite rules \(\vec {E}\), are convergent modulo B. The extension to the case when B has an infinitary unification algorithm, for example because of non-commutative symbols having associative axioms, seems undeveloped. This paper takes a first step in developing such an extension. In particular, the relationships between the FVP and the boundedness properties, the identification of conditions on \(E \cup B\) ensuring FVP, and the effective computation of variants and variant unifiers are explored in detail. The extension from the finitary to the infinitary case includes both surprises and opportunities.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    If \(B = B_{0} \uplus U\), with \(B_{0}\) associativity and/or commutativity axioms, and U identity axioms, the B-preregularity notion can be broadened by requiring only that: (i) \(\varSigma \) is \(B_{0}\)-preregular in the standard sense that \( ls (u\rho )= ls (v\rho )\) for all \(u=v \in B_{0}\) and substitutions \(\rho \); and (ii) the axioms U oriented as rules \(\vec {U}\) are sort-decreasing in the sense explained in Sect. 2.2.

  2. 2.

    Note that this class does not impose very strong restrictions on the rewrite rules of a convergent theory \(\vec {\mathcal {E}}\) that we want to check FB: all we would need is something like an “A-linearity” condition on rules \(l \rightarrow r\) in \(\vec {E}\). Call a sort s an A-sort (resp. A-reachable sort) if it is the sort of an associative but non-commutative symbol (resp. if there is a term t of sort s having a variable whose sort is an A-sort). Call \(l \rightarrow r\) A-linear iff any variable of l having an A-reachable sort appears only once in l.

  3. 3.

    I am purposefully avoiding identity axioms because, thanks to the theory transformation \(\vec {\mathcal {E}} \mapsto \vec {\mathcal {E}}_{U}\) in [12] mapping a convergent \(\vec {\mathcal {E}}\) with identity axioms U into a semantically equivalent convergent \(\vec {\mathcal {E}}_{U}\) where such axioms have been transformed into rewrite rules, this involves no real loss of generality.

References

  1. Alpuente, M., Cuenca-Ortega, A., Escobar, S., Meseguer, J.: A partial evaluation framework for order-sorted equational programs modulo axioms. J. Log. Algebraic Methods Program. 110, 100501 (2020)

    Article  MathSciNet  Google Scholar 

  2. Bae, K., Escobar, S., Meseguer, J.: Abstract logical model checking of infinite-state systems using narrowing. In: Rewriting Techniques and Applications (RTA 2013), LIPIcs, vol. 21, pp. 81–96. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2013)

    Google Scholar 

  3. Bouchard, C., Gero, K.A., Lynch, C., Narendran, P.: On forward closure and the finite variant property. In: Fontaine, P., Ringeissen, C., Schmidt, R.A. (eds.) FroCoS 2013. LNCS (LNAI), vol. 8152, pp. 327–342. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40885-4_23

    Chapter  Google Scholar 

  4. Cholewa, A., Meseguer, J., Escobar, S.: Variants of variants and the finite variant property. Technical report, CS Department University of Illinois at Urbana-Champaign, February 2014. http://hdl.handle.net/2142/47117

  5. Ciobaca., S.: Verification of composition of security protocols with applications to electronic voting. Ph.D. thesis, ENS Cachan (2011)

    Google Scholar 

  6. Clavel, M., et al.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71999-1

    Book  MATH  Google Scholar 

  7. Comon-Lundh, H., Delaune, S.: The finite variant property: how to get rid of some algebraic properties. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 294–307. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-32033-3_22

    Chapter  Google Scholar 

  8. Dershowitz, N., Jouannaud, J.P.: Rewrite systems. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, vol. B, pp. 243–320. North-Holland (1990)

    Google Scholar 

  9. van Deursen, A., Heering, J., Klint, P.: Language Prototyping: An Algebraic Specification Approach. World Scientific, Singapore (1996)

    Book  Google Scholar 

  10. Durán, F., et al.: Programming and symbolic computation in Maude. J. Log. Algebr. Meth. Program. 110, 100497 (2020)

    Article  MathSciNet  Google Scholar 

  11. Durán, F., Eker, S., Escobar, S., Martí-Oliet, N., Meseguer, J., Talcott, C.: Associative unification and symbolic reasoning modulo associativity in Maude. In: Rusu, V. (ed.) WRLA 2018. LNCS, vol. 11152, pp. 98–114. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99840-4_6

    Chapter  MATH  Google Scholar 

  12. Durán, F., Lucas, S., Meseguer, J.: Termination modulo combinations of equational theories. In: Ghilardi, S., Sebastiani, R. (eds.) FroCoS 2009. LNCS (LNAI), vol. 5749, pp. 246–262. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04222-5_15

    Chapter  MATH  Google Scholar 

  13. Durán, F., Meseguer, J.: Structured theories and institutions. Theor. Comput. Sci. 309(1–3), 357–380 (2003)

    Article  MathSciNet  Google Scholar 

  14. Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification 1. Springer, Heidelberg (1985)

    Book  Google Scholar 

  15. Eker, S.: A pragmatic approach to implementing associative unification, unpublished manuscript. SRI International, circa (2015)

    Google Scholar 

  16. Escobar, S., Meadows, C., Meseguer, J.: Maude-NPA: cryptographic protocol analysis modulo equational properties. In: Aldini, A., Barthe, G., Gorrieri, R. (eds.) FOSAD 2007-2009. LNCS, vol. 5705, pp. 1–50. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03829-7_1

    Chapter  MATH  Google Scholar 

  17. Escobar, S., Sasse, R., Meseguer, J.: Folding variant narrowing and optimal variant termination. J. Algebraic Logic Program. 81, 898–928 (2012)

    Article  MathSciNet  Google Scholar 

  18. Futatsugi, K., Diaconescu, R.: CafeOBJ Report. World Scientific, Singapore (1998)

    MATH  Google Scholar 

  19. Goguen, J., Meseguer, J.: Order-sorted algebra I: equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theoret. Comput. Sci. 105, 217–273 (1992)

    Article  MathSciNet  Google Scholar 

  20. Goguen, J., Winkler, T., Meseguer, J., Futatsugi, K., Jouannaud, J.P.: Introducing OBJ. In: Software Engineering with OBJ: Algebraic Specification in Action, pp. 3–167. Kluwer (2000)

    Google Scholar 

  21. Jouannaud, J.-P., Kirchner, C., Kirchner, H.: Incremental construction of unification algorithms in equational theories. In: Diaz, J. (ed.) ICALP 1983. LNCS, vol. 154, pp. 361–373. Springer, Heidelberg (1983). https://doi.org/10.1007/BFb0036921

    Chapter  Google Scholar 

  22. Meier, S., Schmidt, B., Cremers, C., Basin, D.: The TAMARIN prover for the symbolic analysis of security protocols. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 696–701. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39799-8_48

    Chapter  Google Scholar 

  23. Meseguer, J.: Order-sorted parameterization and induction. In: Palsberg, J. (ed.) Semantics and Algebraic Specification. LNCS, vol. 5700, pp. 43–80. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04164-8_4

    Chapter  MATH  Google Scholar 

  24. Meseguer, J.: Conditional rewriting logic as a unified model of concurrency. Theoret. Comput. Sci. 96(1), 73–155 (1992)

    Article  MathSciNet  Google Scholar 

  25. Meseguer, J.: Membership algebra as a logical framework for equational specification. In: Presicce, F.P. (ed.) WADT 1997. LNCS, vol. 1376, pp. 18–61. Springer, Heidelberg (1998). https://doi.org/10.1007/3-540-64299-4_26

    Chapter  Google Scholar 

  26. Meseguer, J.: Variant-based satisfiability in initial algebras. Sci. Comput. Program. 154, 3–41 (2018)

    Article  Google Scholar 

  27. Meseguer, J.: Generalized rewrite theories, coherence completion, and symbolic methods. J. Log. Algebr. Meth. Program. 110, 100483 (2020)

    Article  MathSciNet  Google Scholar 

  28. Meseguer, J., Skeirik, S.: Inductive reasoning with equality predicates, contextual rewriting and variant-based simplification. In: Escobar, S., Martí-Oliet, N. (eds.) WRLA 2020, LNCS vol. 12328, pp. 114–135 (2020)

    Google Scholar 

  29. Skeirik, S., Meseguer, J.: Metalevel algorithms for variant satisfiability. J. Log. Algebr. Meth. Program. 96, 81–110 (2018)

    Article  MathSciNet  Google Scholar 

  30. Skeirik, S., Stefanescu, A., Meseguer, J.: A constructor-based reachability logic for rewrite theories. Fundam. Inform. 173(4), 315–382 (2020)

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgements

My warmest thanks to Santiago Escobar and Steven Eker for many discussions that have helped me arrive at the ideas presented here. I cordially thank the referees for their very helpful suggestions to improve the paper. This work has been partially supported by NRL under contract N00173-17-1-G002.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to José Meseguer .

Editor information

Editors and Affiliations

A Proof of Theorem 6

A Proof of Theorem 6

We just need to show that for each \(\mathbf{M} \in \mathcal {C}\) and sort s in \(\mathbf{M}\), \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\) is FB. But: (i) FB is a rule-local property: it holds iff it does for each rewrite rule; (ii) up to renaming to ensure symbol disjointness, the rewrite rules in \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\) are just the disjoint union of those in \(\vec {\mathbf {St}}[X]\) and those in \(\mathbf{M}\); (iii) by the construction of \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\), the rewrite rules in \(\mathbf{M}\) apply to the exact same terms in both \(\mathbf{M}\) and in \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\), and, since both the rules and the terms they apply to do not involve any operators in \(\vec {\mathbf {St}}[X]\), narrowing with those rules modulo the entire set of axioms \(A \uplus B_{\mathbf {M}}\), where A is the associativity axiom in \(\vec {\mathbf {St}}[X]\), is identical with narrowing with such rules modulo \(B_{\mathbf {M}}\) only. Therefore, the rules from \(\mathbf{M}\) are FB in \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\). Thus, all we need to check is that the rewrite rules in \(\vec {\mathbf {St}}[X]\) are FB in \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\). First of all, note that the axioms \(A \uplus B_{\mathbf {M}}\) in \(\vec {\mathbf {St}}[\vec {\mathbf {M}},X \mapsto s]\) only involve associativity and/or commutativity axioms. Since FB is a property satisfied by each rule, we just reason one rule at a time. I prove the FB property for the rules: (1) \(u \; \varepsilon \rightarrow u\) (2) \( first (x)\rightarrow x\), (3) \( first (x \;q)\rightarrow x\), (4) \( rest (x)\rightarrow \varepsilon \), and (5) \( rest (x \; q)\rightarrow q\).

Case (1). Up to A-equivalence and disregarding parentheses, the \(A \uplus B_{\mathbf {M}}\)-unification problem \(u \; \varepsilon = w\), where w is a non-variable term in \(\vec {\mathbf {St}}[ s ]\) not sharing any variables with \(u \; \varepsilon \) is just the \(A \uplus B_{\mathbf {M}}\)-unification problem \(u \; \varepsilon = w_{1} \; \ldots \; w_{n}\) with \(n \geqslant 1\) where each \(w_{i}\) is either: (i) a variable of sort \( St \) or (ii) a so-called A-alien subterm or constant of the form \(f(t_1 , \ldots , t_n)\) with f different from \(\_\;\_\). When \(n=1\), the only possible \(A \uplus B_{\mathbf {M}}\)-unifier exists when \(w_{1}\) is a variable v of sort \( St \) and is the unifier \(\{v \mapsto u \; \varepsilon \}\). When \(n\geqslant 2\), the only possible \(A \uplus B_{\mathbf {M}}\)-unifiers exist when either: (i) \(w_{n} = \varepsilon \), with unifier \(\{u \mapsto w_{1} \; \ldots \; w_{n-1}\}\), or (ii) \(w_{n}\) is a variable v of sort \( St \), with unifier \(\{u \mapsto w_{1} \; \ldots \; w_{n-1}, v \mapsto \varepsilon \}\).

Case (2). Up to A-equivalence and disregarding parentheses, the \(A \uplus B_{\mathbf {M}}\)-unification problem \( first (x) = w\) can only be solved if w is a term of the form \( first (w_{1} \; \ldots \; w_{n})\) with \(w_{y}\) a variable of sort \( NeSt \) or less, or an A-alien subterm of sort s or less, and has a solution only when \(n=1\) and either: (i) \(w_{1}\) is a variable \(q'\) of sort \( NeSt \), yielding the \(A \uplus B_{\mathbf {M}}\)-unifier \(\{q' \mapsto x\}\), or (ii) \(w_{1}\) is a variable y of sort s or less or an A-alien subterm of sort s or less, yielding the \(A \uplus B_{\mathbf {M}}\)-unifier \(\{x \mapsto w_{1}\}\).

Case (3). Up to A-equivalence and disregarding parentheses, the \(A \uplus B_{\mathbf {M}}\)-unification problem \( first (x \; q) = w\) can only be solved if w is a term of the form \( first (w_{1} \; \ldots \; w_{n})\) with \(w_{y}\) a variable of sort \( NeSt \) or less, or an A-alien subterm of sort s or less, and has a solution only when: (i) \(n=1\) and \(w_{1}\) is a variable \(q'\) of sort \( NeSt \), yielding the \(A \uplus B_{\mathbf {M}}\)-unifier \(\{q' \mapsto x \; q\}\), or (ii) \(n \geqslant 2\) and either (ii).1 \(w_{1}\) is a variable \(q'\) of sort \( NeSt \), yielding the \(A \uplus B_{\mathbf {M}}\)-unifier \(\{q' \mapsto x \; q \mapsto w_{2} \; \ldots \; w_{n}\}\), or (ii).2 \(w_{1}\) is either a variable of sort s or less, or an A-alien subterm of sort s or less, yielding the \(A \uplus B_{\mathbf {M}}\)-unifier \(\{x \mapsto w_{1}, q \mapsto w_{2} \; \ldots \; w_{n}\}\).

Cases (4), resp. (5), have proofs entirely analogous to Cases (2), resp. (3).

This finishes the proof of Theorem 6.    \(\Box \)

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Meseguer, J. (2020). Variants in the Infinitary Unification Wonderland. In: Escobar, S., Martí-Oliet, N. (eds) Rewriting Logic and Its Applications. WRLA 2020. Lecture Notes in Computer Science(), vol 12328. Springer, Cham. https://doi.org/10.1007/978-3-030-63595-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-63595-4_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-63594-7

  • Online ISBN: 978-3-030-63595-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics