# Revising the Membrane Computing Model for Byzantine Agreement

## Abstract

We refine our earlier version of P systems with complex symbols. The new version, called cP systems, enables the creation and manipulation of high-level data structures which are typical in high-level languages, such as: relations (graphs), associative arrays, lists, trees. We assess these capabilities by attempting a revised version of our previously best solution for the Byzantine agreement problem – a famous problem in distributed algorithms, with non-trivial data structures and algorithms. In contrast to our previous solutions, which use a greater than exponential number of symbols and rules, the new solution uses a *fixed sized* alphabet and ruleset, independent of the problem size. The new ruleset follows closely the conceptual description of the algorithm. This revised framework opens the way to further extensions, which may bring P systems closer to the conceptual Actor model.

## Keywords

Distributed algorithms Byzantine agreement EIG trees Membrane computing P systems cP systems Inter-cell parallelism Intra-cell parallelism Prolog terms and unification Complex symbols Cells with subcells Generic rules Synchronous and asynchronous models Actor model## Notes

### Acknowledgments

We are deeply indebted to the co-authors of our former studies on the Byzantine agreement and to the anonymous reviewers, for their most valuable comments and suggestions.

## References

- 1.Abd-El-Malek, M., Ganger, G.R., Goodson, G.R., Reiter, M.K., Wylie, J.J.: Fault-scalable Byzantine fault-tolerant services. In: Herbert, A., Birman, K.P. (eds.) SOSP, pp. 59–74. ACM (2005)Google Scholar
- 2.Ben-Or, M., Hassidim, A.: Fast quantum Byzantine agreement. In: Gabow, H.N., Fagin, R. (eds.) STOC, pp. 481–485. ACM (2005)Google Scholar
- 3.Cachin, C., Kursawe, K., Shoup, V.: Random oracles in constantinople: practical asynchronous Byzantine agreement using cryptography. J. Cryptol.
**18**(3), 219–246 (2005)MathSciNetCrossRefzbMATHGoogle Scholar - 4.Castro, M., Liskov, B.: Practical Byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst.
**20**(4), 398–461 (2002)CrossRefGoogle Scholar - 5.Ciobanu, G.: Distributed algorithms over communicating membrane systems. Biosystems
**70**(2), 123–133 (2003)MathSciNetCrossRefGoogle Scholar - 6.Ciobanu, G., Desai, R., Kumar, A.: Membrane systems and distributed computing. In: PĂun, G., Rozenberg, G., Salomaa, A., Zandron, C. (eds.) WMC 2002. LNCS, vol. 2597, pp. 187–202. Springer, Heidelberg (2003). doi: 10.1007/3-540-36490-0_12 CrossRefGoogle Scholar
- 7.Dinneen, M.J., Kim, Y.-B., Nicolescu, R.: A faster P solution for the Byzantine agreement problem. In: Gheorghe, M., Hinze, T., Păun, G., Rozenberg, G., Salomaa, A. (eds.) CMC 2010. LNCS, vol. 6501, pp. 175–197. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-18123-8_15 CrossRefGoogle Scholar
- 8.Dinneen, M.J., Kim, Y.B., Nicolescu, R.: A faster P solution for the Byzan- tine agreement problem. Report CDMTCS-388, Centre for Discrete Mathematics and Theoretical Computer Science, The University of Auckland, Auckland, New Zealand, July 2010. http://www.cs.auckland.ac.nz/CDMTCS/researchreports/388-DKN.pdf
- 9.Dinneen, M.J., Kim, Y.B., Nicolescu, R.: P systems and the Byzantine agreement. J. Logic Algebraic Program.
**79**, 334–349 (2010)MathSciNetCrossRefzbMATHGoogle Scholar - 10.Dinneen, M.J., Kim, Y.B., Nicolescu, R.: P systems and the Byzantine agreement. Report CDMTCS-375, Centre for Discrete Mathematics and Theoretical Computer Science, The University of Auckland, Auckland, New Zealand, January 2010. http://www.cs.auckland.ac.nz/CDMTCS//researchreports/375Byzantine.pdf
- 11.Dinneen, M.J., Kim, Y.B., Nicolescu, R.: A faster P solution for the Byzantine agreement problem. In: Gheorghe, M., Păun, G., Hinze, T. (eds.) Eleventh International Conference on Membrane Computing (CMC11), 24–27 August 2010, Friedrich Schiller University, Jena, Germany, pp. 167–192. Pro Business GmbH, Berlin (2015)Google Scholar
- 12.Lamport, L., Shostak, R.E., Pease, M.C.: The Byzantine generals problem. ACM Trans. Program. Lang. Syst.
**4**(3), 382–401 (1982)CrossRefzbMATHGoogle Scholar - 13.Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco (1996)zbMATHGoogle Scholar
- 14.Martin, J.P., Alvisi, L.: Fast Byzantine consensus. IEEE Trans. Dependable Sec. Comput.
**3**(3), 202–215 (2006)CrossRefGoogle Scholar - 15.Nicolescu, R.: Parallel and distributed algorithms in P systems. In: Gheorghe, M., Păun, G., Rozenberg, G., Salomaa, A., Verlan, S. (eds.) CMC 2011. LNCS, vol. 7184, pp. 35–50. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-28024-5_4 CrossRefGoogle Scholar
- 16.Nicolescu, R.: Parallel thinning with complex objects and actors. In: Gheorghe, M., Rozenberg, G., Salomaa, A., Sosík, P., Zandron, C. (eds.) CMC 2014. LNCS, vol. 8961, pp. 330–354. Springer, Heidelberg (2014). doi: 10.1007/978-3-319-14370-5_21 Google Scholar
- 17.Nicolescu, R.: Structured grid algorithms modelled with complex objects. In: Rozenberg, G., Salomaa, A., Sempere, J.M., Zandron, C. (eds.) CMC 2015. LNCS, vol. 9504, pp. 321–337. Springer, Heidelberg (2015). doi: 10.1007/978-3-319-28475-0_22 CrossRefGoogle Scholar
- 18.Nicolescu, R., Dinneen, M.J., Kim, Y.B.: Towards structured modelling with hyper- dag P systems. Int. J. Comput. Commun. Control
**2**, 209–222 (2010)Google Scholar - 19.Nicolescu, R., Ipate, F., Wu, H.: Programming P systems with complex objects. In: Alhazov, A., Cojocaru, S., Gheorghe, M., Rogozhin, Y., Rozenberg, G., Salomaa, A. (eds.) CMC 2013. LNCS, vol. 8340, pp. 280–300. Springer, Heidelberg (2014). doi: 10.1007/978-3-642-54239-8_20 CrossRefGoogle Scholar
- 20.Nicolescu, R., Ipate, F., Wu, H.: Towards high-level P systems programming using complex objects. In: Alhazov, A., Cojocaru, S., Gheorghe, M., Rogozhin, Y. (eds.) Proceedings of the 14th International Conference on Membrane Computing, CMC14, Chişinău, Moldova, 20–23 August 2013, pp. 255–276. Institute of Mathematics and Computer Science, Academy of Sciences of Moldova, Chişinău (2013)Google Scholar
- 21.Nicolescu, R., Wu, H.: Complex objects for complex applications. Rom. J. Inf. Sci. Technol.
**17**(1), 46–62 (2014)Google Scholar - 22.Pease, M.C., Shostak, R.E., Lamport, L.: Reaching agreement in the presence of faults. J. ACM
**27**(2), 228–234 (1980)MathSciNetCrossRefzbMATHGoogle Scholar - 23.Păun, G., Rozenberg, G., Salomaa, A. (eds.): The Oxford Handbook of Membrane Computing. Oxford University Press, Inc., New York (2010)Google Scholar