Abstract
Large NFAs are automata that cannot fit in a single computer, or the computations would not fit within the computer RAM, or may take a long time. We describe and implement a BSP solution of such large NFAs intersection. Our method avoids producing unreachable states of the product automaton, contrary to previous solutions. These solutions, based on MapReduce for instance, process all the Cartesian product of inputs NFAs. A running example is provided with execution details. Finally, complexity analysis is given. This work will help in bringing out relevant programming artifacts for our long term goal that consists of a high level distributed graph language.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
The Apache Software Foundation: Apache giraph. https://giraph.apache.org/
The Apache Software Foundation: Apache hadoop. https://hadoop.apache.org/
Aridhi, S., Lacomme, P., Ren, L., Vincent, B.: A mapreduce-based approach for shortest path problem in large-scale networks. Eng. Appl. Artif. Intell. 41, 151–165 (2015)
Dean, J., Ghemawat, S.: Mapreduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008)
Gandhi, A., Khoussainov, B., Liu, J.: On state complexity of finite word and tree languages. In: Yen, H.-C., Ibarra, O.H. (eds.) DLT 2012. LNCS, vol. 7410, pp. 392–403. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31653-1_35
Gonzalez, J.E., Low, Y., Gu, H., Bickson, D., Guestrin, C.: Powergraph: Distributed graph-parallel computation on natural graphs. In: Thekkath, C., Vahdat, A. (eds.) 10th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2012, Hollywood, CA, USA, 8–10 October, pp. 17–30 (2012)
Gonzalez, J.E., Xin, R.S., Dave, A., Crankshaw, D., Franklin, M.J., Stoica, I.: Graphx: graph processing in a distributed dataflow framework. In: Flinn, J., Levy, H. (eds.) 11th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2014, Broomfield, CO, USA, 6–8 October, pp. 599–613 (2014)
Grahne, G., Harrafi, S., Hedayati, I., Moallemi, A.: DFA minimization in map-reduce. In: Afrati, F.N., Sroka, J., Hidders, J. (eds.) Proceedings of the 3rd ACM SIGMOD Workshop on Algorithms and Systems for MapReduce and Beyond, BeyondMR@SIGMOD 2016, San Francisco, CA, USA, 1 July 2016, p. 4. ACM (2016)
Grahne, G., Harrafi, S., Moallemi, A., Onet, A.: Computing NFA intersections in map-reduce. In: Fischer, P.M., Alonso, G., Arenas, M., Geerts, F. (eds.) Proceedings of the Workshops of the EDBT/ICDT 2015 Joint Conference (EDBT/ICDT), Brussels, Belgium, 27th March 2015. CEUR Workshop Proceedings, vol. 1330, pp. 42–45. CEUR-WS.org (2015)
Han, Y.-S., Salomaa, K.: State complexity of union and intersection of finite languages. In: Harju, T., Karhumäki, J., Lepistö, A. (eds.) DLT 2007. LNCS, vol. 4588, pp. 217–228. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73208-2_22
Kozen, D.: Lower bounds for natural proof systems. In: Proceedings of the 18th Annual Symposium on Foundations of Computer Science SFCS 1977, pp. 254–266. IEEE Computer Society, USA (1977)
Lattanzi, S., Mirrokni, V.S.: Distributed graph algorithmics: theory and practice. In: WSDM, pp. 419–420 (2015). http://dl.acm.org/citation.cfm?id=2697043
Malewicz, G., et al.: Pregel: a system for large-scale graph processing. In: Proceedings of the ACM SIGMOD International Conference on Management of Data, SIGMOD 2010, Indianapolis, Indiana, USA, 6–10 June, pp. 135–146. ACM (2010)
Ravikumar, B., Xiong, X.: A parallel algorithm for minimization of finite automata. In: Proceedings of IPPS 1996, The 10th International Parallel Processing Symposium, 15–19 April, Honolulu, USA, pp. 187–191. IEEE Computer Society (1996)
Slavici, V., Kunkle, D., Cooperman, G., Linton, S.: Finding the minimal DFA of very large finite state automata with an application to token passing networks. CoRR abs/1103.5736 (2011)
Tewari, A., Srivastava, U., Gupta, P.: A parallel DFA minimization algorithm. In: Sahni, S., Prasanna, V.K., Shukla, U. (eds.) HiPC 2002. LNCS, vol. 2552, pp. 34–40. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36265-7_4
Valiant, L.G.: A bridging model for parallel computation. Commun. ACM 33(8), 103–111 (1990)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Ba, C., Gueye, A. (2020). A BSP Based Approach for NFAs Intersection. In: Qiu, M. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2020. Lecture Notes in Computer Science(), vol 12452. Springer, Cham. https://doi.org/10.1007/978-3-030-60245-1_24
Download citation
DOI: https://doi.org/10.1007/978-3-030-60245-1_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-60244-4
Online ISBN: 978-3-030-60245-1
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)