Abstract
Polynomial factorization is a classical algorithmic problem in algebra, which has a wide range of applications. Of special interest is factorization over finite fields, among which the field of order two is probably the most important one due to the relationship to Boolean functions. In particular, factorization of Boolean polynomials corresponds to decomposition of Boolean functions given in the Algebraic Normal Form. It has been also shown that factorization provides a solution to decomposition of functions given in the full DNF (i.e., by a truth table), for positive DNFs, and for cartesian decomposition of relational datatables. These applications show the importance of developing fast and practical factorization algorithms. In the paper, we consider some recently proposed polynomial time factorization algorithms for Boolean polynomials and describe a parallel MIMD implementation thereof, which exploits both the task and data level parallelism. We report on an experimental evaluation, which has been conducted on logic circuit synthesis benchmarks and synthetic polynomials, and show that our implementation significantly improves the efficiency of factorization. Finally, we report on the performance benefits obtained from a parallel algorithm when executed on a massively parallel many core architecture (Redefine).
This work was supported by the grant of Russian Foundation for Basic Research No. 17-51-45125 and by the Ministry of Science and Education of the Russian Federation under the 5–100 Excellence Program.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Redefine - reconfigurable silicon core description. http://morphing.in/redefine. Accessed 07 Dec 2018
Corno, F., Reorda, M., Squillero, G.: RT-level ITC’99 benchmarks and first atpg results. IEEE Design Test Comput. 17(3), 44–53 (2000). https://doi.org/10.1109/54.867894
Emelyanov, P.: On two kinds of dataset decomposition. In: Shi, Y., et al. (eds.) ICCS 2018. LNCS, vol. 10861, pp. 171–183. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-93701-4_13
Emelyanov, P., Ponomaryov, D.: Algorithmic issues of AND-decomposition of boolean formulas. Programm. Comput. Softw. 41(3), 162–169 (2015)
Emelyanov, P., Ponomaryov, D.: On tractability of disjoint and-decomposition of boolean formulas. In: Voronkov, A., Virbitskaite, I. (eds.) PSI 2014. LNCS, vol. 8974, pp. 92–101. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46823-4_8
Emelyanov, P., Ponomaryov, D.: Cartesian decomposition in data analysis. In: Siberian Symposium on Data Science and Engineering (SSDSE) (2017)
Emelyanov, P., Ponomaryov, D.: On a polytime factorization algorithm for multilinear polynomials over \(\mathbb{F}_2\). In: Gerdt, V.P., Koepf, W., Seiler, W.M., Vorozhtsov, E.V. (eds.) CASC 2018. LNCS, vol. 11077, pp. 164–176. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99639-4_11
von zur Gathen, J., Gerhard, J.: Modern Computer Algebra, 3rd edn. Cambridge University Press, New York (2013)
Hansen, M.C., Yalcin, H., Hayes, J.P.: Unveiling the ISCAS-85 benchmarks: a case study in reverse engineering. IEEE Des. Test 16(3), 72–80 (1999). https://doi.org/10.1109/54.785838
Muller, D.E.: Application of boolean algebra to switching circuit design and to error detection. IRE Trans. Electron. Comput. EC–3, 6–12 (1954)
Ponomaryov, D.: A polynomial time delta-decomposition algorithm for positive DNFs. In: van Bevern, R., Kucherov, G. (eds.) CSR 2019. LNCS, vol. 11532, pp. 325–336. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-19955-5_28
Schmidt, J., Fišer, P.: A prudent approach to benchmark collection
Shpilka, A., Volkovich, I.: On the relation between polynomial identity testing and finding variable disjoint factors. In: Abramsky, S., Gavoille, C., Kirchner, C., Meyer auf der Heide, F., Spirakis, P.G. (eds.) ICALP 2010. LNCS, vol. 6198, pp. 408–419. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14165-2_35
Zhegalkin, I.: Arithmetization of symbolic logics. Sbornik Math. 35(1), 311–377 (1928). (in Russian)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Kulkarni, V., Emelyanov, P., Ponomaryov, D., Krishna, M., Raha, S., Nandy, S.K. (2019). Parallel Factorization of Boolean Polynomials. In: Bjørner, N., Virbitskaite, I., Voronkov, A. (eds) Perspectives of System Informatics. PSI 2019. Lecture Notes in Computer Science(), vol 11964. Springer, Cham. https://doi.org/10.1007/978-3-030-37487-7_7
Download citation
DOI: https://doi.org/10.1007/978-3-030-37487-7_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-37486-0
Online ISBN: 978-3-030-37487-7
eBook Packages: Computer ScienceComputer Science (R0)