Abstract
In this paper, we show that checking some properties of Boolean functions which are given by the lists of monomials in their polynomial representations can be implemented in polynomial time. Multi-linear polynomials over GF(2) are often a convenient way to represent Boolean functions. There is a single polynomial for each Boolean function, and the length of the polynomial (i.e. the number of its monomials) which represents a function of n variables can be far less than 2n. Therefore, in some cases, polynomials are a compressed description of Boolean functions. Besides, polynomial representations of Boolean functions have applications in circuit lower bounds, computational learning, error-correcting codes, cryptography. We construct polynomial-time algorithms for checking some properties of Boolean functions which are given by the lists of monomials in their polynomial representations. The considered properties are self-anti-duality (evenness), self-duality, periodicity, 1-invariance (Möbius transform invariance, coincidence). Note that checking each of these properties directly by definition gives, in the general case, only exponential-time algorithms. The approach to construct our algorithms is the following. Firstly, we prove that if a Boolean function has a certain property then its polynomial has a special structure. And secondly, we check the property by its characterization, cutting negative cases by proven facts. More precisely, we analyze an exponential time algorithm and prove that if the number of steps of the algorithm exceeds a bound, which is polynomial in the input size, and may be computed in advance, then the input will be necessarily rejected.
Similar content being viewed by others
References
Razborov, A.: Lower bounds for the size of circuits of bounded depth with basis {∧, ⊕}. Math. Notes Acad. Sci. USSR 41, 367–382 (1987)
Smolensky, R.: Algebraic method in the theory of lower bounds for Boolean circuit complexity. In: Proceedings of the 19th Annual ACM Symposium on Theoretical Computer Science (STOC’87), pp. 77–82 (1987)
Nisan, N., Szegedy, M.: On the degree of Boolean functions as real polynomials. In: Proceedings of the 24th Annual ACM Symposium on the Theory of Computing (STOC’92), pp. 462–467 (1992)
Paturi, R.: On the degree of polynomials that approximate symmetric Boolean functions. In: Proceedings of 24th Symposium on Theory of Computing, pp. 468–474 (1992)
Beigel, R.: The polynomial method in circuit complexity. Structures in Complexity Theory: 8th Annual Conference, pp. 82–95 (1993)
Linial, N., Mansour, Y., Nisan, N.: Constant depth circuits, Fourier transform and learnability. J. ACM 40(3), 607–620 (1993)
Barrington, D.A., Beigel, R., Rudich, S.: Representing Boolean functions as polynomials modulo composite numbers. Comput. Complex. 4, 367–382 (1994)
Kojevnikov, A., Kulikov, A.S.: Circuit Complexity and Multiplicative Complexity of Boolean Functions. Lect. Notes Comput. Sci. 6158, 239–245 (2010)
Pieprzyk, J., Zhang, X.-M.: Computing Möbius transforms of Boolean functions and characterizing coincident Boolean functions. In: Third International Workshop on Boolean Functions: Cryptography and Applications (BFCA’07) (2007)
Gorshkov, S.P.: On the computational complexity of checking multi-affinity, bijunctivity, weak-positivity and weak-negativity for a Boolean function (in Russian)Review of applied and industrial mathematics. Series: Discret. Math. 4(2), 216–237 (1997)
Vyalyi, M.N.: The computational problems with truth-tables of Boolean polynomials (in Russian). Proc. Syst. Programm. Inst. RAS 6, 51–64 (2004)
Selezneva, S.N.: On the complexity of recognizing the completeness of sets of Boolean functions realized by Zhegalkin polynomials. Discret. Math. Appl. 7(6), 565–572 (1997)
Bukhman, A.V.: Recognition of functions invariant under Moebius transformation and even functions defined in polynomial form. Comput. Math. Model. 24(4), 552–557 (2013)
Post, E.L.: The two-valued iterative systems of mathematical logic. Annals of Math. Studies, pp. 5. Princeton (1941)
Bard, G.: Algebraic Cryptanalysis. Springer (2009)
Logachev, O.A., Sal’nikov, A.A., Smyshlyaev, S.V., Yaschenko, V.V.: Boolean Functions in Coding Theory and Cryptology (in Russian). Moscow (2012)
Leont’ev, V.K.: On some problems associated with Boolean polynomials. Comput. Math. Math. Phys. 39(6), 1006–1015 (1999)
Eherenfeucht, A., Karpinski, M.: The computational complexity of (XOR, AND) counting problems: Preprint. Bonn: Univ. (1989)
Acknowledgments
The authors thank their referees whose helpful comments improved the paper. This work is supported by RFBR, grant 13–01–00684-a.
Author information
Authors and Affiliations
Corresponding authors
Rights and permissions
About this article
Cite this article
Selezneva, S.N., Bukhman, A.V. Polynomial-Time Algorithms for Checking Some Properties of Boolean Functions Given by Polynomials. Theory Comput Syst 58, 383–391 (2016). https://doi.org/10.1007/s00224-014-9578-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-014-9578-0