A Group Algebraic Approach to NPN Classification of Boolean Functions

  • Juling Zhang
  • Guowu YangEmail author
  • William N. N. Hung
  • Tian Liu
  • Xiaoyu Song
  • Marek A. Perkowski


The classification of Boolean functions plays an underpinning role in logic design and synthesis of VLSI circuits. This paper considers a underpinning question in Boolean function classification: how many distinct classes are there for k-input Boolean functions. We exploit various group algebraic properties to efficiently compute the number of unique equivalent classes. We have reduced the computation complexity from 2mm! to (m + 1)!. We present our analysis for NPN classification of Boolean functions with up to ten variables and compute the number of NP and NPN equivalence classes for 3-10 variables. This is the first time to report the number of NP and NPN classifications for Boolean functions with 9-10 variables. We demonstrate the effectiveness of our method by both theoretical proofs and numeric experiments.


NPN classification Group theory Boolean function Cycle type of a permutation Nonequivalent coloring 



We would like to thank the National Natural Science Foundation of China (Grant No. 61572109) and the Special Fund for Bagui Scholars of Guangxi for the technology support.


  1. 1.
    Tsai, C.-C., Marek-Sadowska, M.: Boolean functions classification via fixed polarity reed-muller forms. IEEE Trans. Comput. 46(2), 173–186 (1997)CrossRefGoogle Scholar
  2. 2.
    Braeken, A., Borissov, Y., Nikova, S., Preneel, B.: Classification of Boolean functions of 6 variables or less with respect to some cryptographic properties. In: Proc. 32nd International Conference on Automata, Languages and Programming, ser. ICALP’05, pp. 324–334 (2005)CrossRefGoogle Scholar
  3. 3.
    Dautovic, S., Novak, L.: A comment on Boolean functions classification via fixed polarity reed-muller form. IEEE Trans. Comput. 55(8), 1067–1069 (2006)CrossRefGoogle Scholar
  4. 4.
    Rice, J.E., Muzio, J.C., Anderson, N.: New considerations for spectral classification of Boolean switching functions. VLSI Design 2011, 1:1–1:9 (2011)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Benini, L., De Micheli, G.: A survey of Boolean matching techniques for library binding. ACM Trans. Des. Autom. Electron. Syst. 2(3), 193–226 (1997)CrossRefGoogle Scholar
  6. 6.
    Edwards, C.R., Hurst, S.L.: A Digital Synthesis Procedure Under Function Symmetries and Mapping Methods. IEEE Computer Society (1978)Google Scholar
  7. 7.
    Jain, A., Bryant, R.E.: Inverter minimization in multi-level logic networks. In: Proc. International Conference on Computer-Aided Design, ser. ICCAD ’93, pp. 462–465 (1993)Google Scholar
  8. 8.
    Devices, S.V., Stratix, V.: Device Handbook. Altera, San Jose (2012)Google Scholar
  9. 9.
    Berlekamp, E., Welch, L.: Weight distributions of the cosets of the (32,6) reed-muller code. IEEE Trans. Inf. Theory 18(1), 203–207 (1972)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Maiorana, J.A.: A classification of the cosets of the reed-muller code r (1, 6). Math. Comput. 57(195), 403–414 (1991)MathSciNetzbMATHGoogle Scholar
  11. 11.
    Borissov, Y., An, B., Nikova, S., Preneel, B.: Classification of the cosets of rm(1,7) in rm(3,7) revisited,” NATO ASI on ”Boolean Functions in Cryptology and Information Security (2007)Google Scholar
  12. 12.
    Zhang, Y., Yang, G., Hung, W.N., Zhang, J.: Computing affine equivalence classes of Boolean functions by group isomorphism. IEEE Trans. Comput. 65(12), 3606–3616 (2016)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Slepian, D.: On the number of symmetry types of Boolean functions of n variables. Can. J. Math. 5(2), 185–193 (1955)MathSciNetzbMATHGoogle Scholar
  14. 14.
    Huang, Z., Wang, L., Nasikovskiy, Y., Mishchenko, A.: Fast Boolean matching based on npn classification. In: International Conference on Field-Programmable Technology, pp. 310–313 (2013)Google Scholar
  15. 15.
    Petkovska, A., Soeken, M., Micheli, G.D., Ienne, P., Mishchenko, A.: Fast hierarchical npn classification. In: International Conference on Field Programmable Logic and Applications, pp. 1–4 (2016)Google Scholar
  16. 16.
    Abdollahi, A., Pedram, M.: Symmetry detection and Boolean matching utilizing a signature-based canonical form of Boolean functions. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 27(6), 1128–1137 (2008)CrossRefGoogle Scholar
  17. 17.
    Agosta, G., Bruschi, F., Pelosi, G., Sciuto, D.: A transform-parametric approach to Boolean matching. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 28(6), 805–817 (2009)CrossRefGoogle Scholar
  18. 18.
    Matsunaga, Y.: Accelerating sat-based Boolean matching for heterogeneous fpgas using one-hot encoding and cegar technique. In: Design Automation Conference, pp. 255–260 (2015)Google Scholar
  19. 19.
    Harrison, M.A.: The number of equivalence classes of Boolean functions under groups containing negation. IEEE Transactions on Electronic Computers EC-12(5), 559–561 (1963)CrossRefGoogle Scholar
  20. 20.
    Dixon, J.D., Mortimer, B.: Permutation Groups. Springer, Berlin (1996)CrossRefGoogle Scholar
  21. 21.
  22. 22.
  23. 23.
    Lipsett, R.: conjugacy classes in the symmetric group s n,;from=objects;id=9613
  24. 24.
  25. 25.
    Brualdi, R.A.: Pearson Introductory combinatorics:united states edition (2009)Google Scholar
  26. 26.
    Pólya, G.: Kombinatorische anzahlbestimmungen for gruppen, graphen und chemische verbindungen. Acta Mathematica 68, 145–254 (1937)MathSciNetCrossRefGoogle Scholar
  27. 27.
    Redfield, J.H.: The theory of group-reduced distributions. Am. J. Math. 49 (3), 433–455 (1927)MathSciNetCrossRefGoogle Scholar
  28. 28.
    Brualdi, R.A.: Introductory Combinatorics, 5th ed. Prentice Hall, January 2009, ch. 14Google Scholar
  29. 29.
    Sloane, N J A: The on-line encyclopedia of integer sequence,
  30. 30.
    Bruijn, N.G.D.: Generalization of polya’s fundamental theorem in enumerative combinatorial analysis. Indag. Math. 62(3), 59–69 (1959)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Big Data Research Center, School of Computer Science and EngineeringUniversity of Electronic Science and Technology of ChinaChengduChina
  2. 2.School of Computer Science and EngineeringUniversity of Xinjiang Finance and EconomicsUrumqiChina
  3. 3.Guangxi Key Laboratory of Hybrid Computation and IC Design AnalysisGuangxi University for NationalitiesNanningChina
  4. 4.Synopsys Inc.Mountain ViewUSA
  5. 5.Key Laboratory of High Confidence Software Technologies, Ministry of EducationPeking UniversityBeijingChina
  6. 6.ECE DepartmentPortland State UniversityPortlandUSA

Personalised recommendations