Skip to main content
Log in

A Group Algebraic Approach to NPN Classification of Boolean Functions

  • Published:
Theory of Computing Systems Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  1. Tsai, C.-C., Marek-Sadowska, M.: Boolean functions classification via fixed polarity reed-muller forms. IEEE Trans. Comput. 46(2), 173–186 (1997)

    Article  Google Scholar 

  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)

  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)

    Article  Google Scholar 

  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)

    Article  MathSciNet  Google Scholar 

  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)

    Article  Google Scholar 

  6. Edwards, C.R., Hurst, S.L.: A Digital Synthesis Procedure Under Function Symmetries and Mapping Methods. IEEE Computer Society (1978)

  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)

  8. Devices, S.V., Stratix, V.: Device Handbook. Altera, San Jose (2012)

    Google Scholar 

  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)

    Article  MathSciNet  MATH  Google Scholar 

  10. Maiorana, J.A.: A classification of the cosets of the reed-muller code r (1, 6). Math. Comput. 57(195), 403–414 (1991)

    MathSciNet  MATH  Google Scholar 

  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)

  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)

    Article  MathSciNet  MATH  Google Scholar 

  13. Slepian, D.: On the number of symmetry types of Boolean functions of n variables. Can. J. Math. 5(2), 185–193 (1955)

    MathSciNet  MATH  Google Scholar 

  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)

  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)

  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)

    Article  Google Scholar 

  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)

    Article  Google Scholar 

  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)

  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)

    Article  MATH  Google Scholar 

  20. Dixon, J.D., Mortimer, B.: Permutation Groups. Springer, Berlin (1996)

    Book  MATH  Google Scholar 

  21. Cycle type of a permutation, http://groupprops.subwiki.org/wiki/Cycle_type_of_a_permutation

  22. Cycle index, http://en.wikipedia.org/wiki/Cycle_type

  23. Lipsett, R.: conjugacy classes in the symmetric group s n, http://planetmath.org/?op=getobj;from=objects;id=9613

  24. Cycle type determines conjugacy class. http://groupprops.subwiki.org/wiki/Cycle_type_determines_conjugacy_class

  25. Brualdi, R.A.: Pearson Introductory combinatorics:united states edition (2009)

  26. Pólya, G.: Kombinatorische anzahlbestimmungen for gruppen, graphen und chemische verbindungen. Acta Mathematica 68, 145–254 (1937)

    Article  MathSciNet  MATH  Google Scholar 

  27. Redfield, J.H.: The theory of group-reduced distributions. Am. J. Math. 49 (3), 433–455 (1927)

    Article  MathSciNet  MATH  Google Scholar 

  28. Brualdi, R.A.: Introductory Combinatorics, 5th ed. Prentice Hall, January 2009, ch. 14

  29. Sloane, N J A: The on-line encyclopedia of integer sequence, https://oeis.org/A000370

  30. Bruijn, N.G.D.: Generalization of polya’s fundamental theorem in enumerative combinatorial analysis. Indag. Math. 62(3), 59–69 (1959)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Acknowledgment

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.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Guowu Yang.

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

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhang, J., Yang, G., Hung, W.N.N. et al. A Group Algebraic Approach to NPN Classification of Boolean Functions. Theory Comput Syst 63, 1278–1297 (2019). https://doi.org/10.1007/s00224-018-9903-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00224-018-9903-0

Keywords

Navigation