An efficient labelled nested multiset unification algorithm


Multisets are widely used in membrane computing models such as cP systems. In this paper, we formally define the first-order one-way unification problem for labelled nested multisets, and propose a corresponding algorithm named LNMU (labelled nested multiset unification algorithm). LNMU is a nondeterministic algorithm that consists of eight transformations. Supported by a good strategy, LNMU can solve well-formed labelled nested multiset unification problems in linear time.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3


  1. 1.


  1. 1.

    Păun, G. (2000). Computing with membranes. Journal of Computer and System Sciences, 61(1), 108–143.

    MathSciNet  Article  Google Scholar 

  2. 2.

    Nicolescu, R., & Henderson, A. (2018). An introduction to cP systems. In Enjoying natural computing, 204-227.

  3. 3.

    Baader, W., & Snyder, F. (2001). Unification theory. Handbook of Automated Reasoning, 1, 447–533.

    MATH  Google Scholar 

  4. 4.

    Robinson, J. A. (1965). A machine-oriented logic based on the resolution principle. Journal of the ACM (JACM), 12(1), 23–41.

    MathSciNet  Article  Google Scholar 

  5. 5.

    Robinson, J. A. (1971). Computational logic: The unification computation. Machine Intelligence, 6, 63–72.

    Google Scholar 

  6. 6.

    Zilli, M. V. (1975). Complexity of the unification algorithm for first-order expressions. Calcolo, 12(4), 361–371.

    MathSciNet  Article  Google Scholar 

  7. 7.

    Paterson, M.S., & Wegman, M.N. (1976). Linear unification. In Proceedings of the eighth annual ACM symposium on theory of computing (pp. 181–186).

  8. 8.

    Martelli, A., & Montanari, U. (1976). Unification in linear time and space: A structured presentation. Internal Rep. B76-16, Ist. di Elaborazione delle Informazione, Consiglio Nazionale delleRicerche, Pisa, Italy.

  9. 9.

    Martelli, A., & Montanari, U. (1982). An efficient unification algorithm. ACM Transactions on Programming Languages and Systems (TOPLAS), 4(2), 258–282.

    Article  Google Scholar 

  10. 10.

    Jaffar, J. (1984). Efficient unification over infinite terms. New Generation Computing, 2(3), 207–219.

    MathSciNet  Article  Google Scholar 

  11. 11.

    Dantsin, E., & Voronkov, A. (1999). A nondeterministic polynomial-time unification algorithm for bags, sets and trees. In International conference on foundations of software science and computation structure (pp. 180–196).

  12. 12.

    Dovier, A., Policriti, A., & Rossi, G. (1998). A uniform axiomatic view of lists, multisets, and sets, and the relevant unification algorithms. Fundamenta Informaticae, 36(2), 201–234.

  13. 13.

    Yasuura, H. (1984). On parallel computational complexity of unification. In International conference on fifth generation computer systems (pp. 235–243).

  14. 14.

    Kapur, D., & Narendran, P. (1986). NP-completeness of the set unification and matching problems. In International Conference on Automated Deduction, 489–495.

  15. 15.

    Mannila, H., & Ukkonen, E. (1986). On the complexity of unification sequences. In International Conference on Logic Programming, 122–133.

  16. 16.

    Benanav, D., Kapur, D., & Narendran, P. (1987). Complexity of matching problems. Journal of Symbolic Computation, 3(1–2), 203–216.

    MathSciNet  Article  Google Scholar 

  17. 17.

    Itai, A., & Makowsky, J. A. (1987). Unification as a complexity measure for logic programming. The Journal of Logic Programming, 4(2), 105–117.

    MathSciNet  Article  Google Scholar 

  18. 18.

    Kapur, D., & Narendran, P. (1992). Complexity of unification problems with associative-commutative operators. Journal of Automated Reasoning, 9(2), 261–288.

    MathSciNet  Article  Google Scholar 

  19. 19.

    Dwork, C., Kanellakis, P. C., & Mitchell, J. C. (1984). On the sequential nature of unification. The Journal of Logic Programming, 1(1), 35–50.

    MathSciNet  Article  Google Scholar 

  20. 20.

    Rydeheard, D.E., & Burstall, R.M. (1986). A categorical unification algorithm. In Category theory and computer programming (pp. 493–505).

  21. 21.

    Huet, G. (1976). Resolution d'Equations Dans Des Languages D'Order 1, 2,..., ω. these d'etat, University de Paris.

Download references

Author information



Corresponding author

Correspondence to Yezhou Liu.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Liu, Y., Nicolescu, R. & Sun, J. An efficient labelled nested multiset unification algorithm. J Membr Comput (2021).

Download citation


  • Multiset
  • Unification
  • Algorithm
  • cP systems
  • Membrane computing