Research Article | | Peer-Reviewed

Special Coverings of Sets and Boolean Functions

Received: 13 June 2025     Accepted: 30 June 2025     Published: 23 July 2025
Views:       Downloads:
Abstract

We will study some properties of Boolean functions based on newly introduced concepts called “Special Decomposition of a Set’’ and “Special Covering of a Set’’. The introduced concepts easily solve the question of how changes in clauses affect the resulting value of a function. They easily determine a clause as well as the literals that can be added to or removed from the clause so that the satisfiability of the function is preserved. The concept of generating a satisfiable function by another satisfiable function through admissible changes in the function's clauses is also introduced. If the generation of a function by another function is defined as a binary relation, then the set of satisfiable functions of n variables, represented in conjunctive normal form with m clauses is partitioned to equivalence classes. Moreover, we prove that any two satisfiable Boolean functions of n variables, represented in conjunctive normal form with m clauses, can be generated from each other in polynomial time.

Published in American Journal of Mathematical and Computer Modelling (Volume 10, Issue 3)
DOI 10.11648/j.ajmcm.20251003.11
Page(s) 84-97
Creative Commons

This is an Open Access article, distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution and reproduction in any medium or format, provided the original work is properly cited.

Copyright

Copyright © The Author(s), 2025. Published by Science Publishing Group

Keywords

Special Decomposition, Special Covering, Function Generation

1. Introduction
The subject of this article is Boolean functions represented in conjunctive normal form . We will study some properties of satisfiable functions .
In generally the field of Boolean functions has long been widely investigated and well-studied . Nevertheless, we obtain important and interesting results in this field using new introduced concepts of special decomposition and special covering of a set and based on them. These concepts are flexible and simple in use, so they enable us to study important problems concerning Boolean functions, including the satisfiability problem.
To create a special decomposition that will uniquely correspond to а Boolean function represented in conjunctive normal form, we treat the function as an ordered set of its clause.
We will show that any Boolean function in conjunctive normal form generates a special decomposition of the set of its clauses, and any special decomposition of a set generates a Boolean function. Moreover, we prove that these generations run in polynomial time .
In addition, we prove that the Boolean function in conjunctive normal form is satisfiable if and only if there is a special covering for the set of clauses of this function.
One of the main goals of this article is to explore the possibilities of the concepts of special decomposition and special covering, using them in relation to satisfiable functions.
Typically, when transforming a Boolean function given in conjunctive normal form, it is not always obvious what impact a change in а clause may have on the satisfiability of the function. Furthermore, it is not always easy to find a clause and determine a literal that can be removed from or added to the clause, in order to preserve the satisfiability of the function.
We introduce the concept of admissible changes in the clauses, which allows us to add a literal to a clause, remove a literal from a clause, or swap negative and positive literals of the same variable of a satisfiable function, so that the resulting function remains satisfiable.
To study the results, we also introduce the concept of generation of а satisfiable function by another satisfiable function. Applying this concept to the function, as a result of any step, new satisfiable function is obtained. We also prove that the procedure for generation of a function by another function has a polynomial time complexity.
Further, defining the generation of a function by another function as a binary relation , we prove that the set of satisfiable functions of n variables represented in conjunctive normal form with m clauses, is partitioned into equivalence classes . All functions included in the same class have a common satisfiable assigning tuple.
Moreover, extending the rules of admissible changes, we prove an important result:
If two arbitrary Boolean functions of n variables represented in conjunctive normal form with m clauses, are both satisfiable, then either can be generated by the other using extended admissible changes in polynomial time .
The terminology used in relation to set theory, Boolean functions, complexity theory and matrix theory is well known and is consistent with the terminology in corresponding monographs in the Bibliography. The newly introduced terms are not found in use by other authors and do not contradict to other terms.
2. Basic Concepts
We will deal with different nonempty sets. The elements of these sets will usually be denoted as e1, e2,.... etc. These sets are assumed to be ordered unless otherwise stated.
Let the nonempty set S = {e1, e2,..., em} be given. Let also for some natural number n,
(M10,M11),(M20,M21),...,(Mn0,Mn1)
be n arbitrary ordered pairs of arbitrary subsets of the set S.
It is important to note that the subsets and their pairs are numbered in no particular order.
We will use the notation dnS for an arbitrarily ordered set of these ordered pairs:
dnS={(M10,M11),(M20,M21),...,(Mn0,Mn1)}.
The Boolean values αi and α̅i, for i ∈ {1,..., n }, will be used to denote superscripts of subsets:
α̅i=0ifαi=1,andα̅i=1ifαi=0.
The tuple of superscripts (α1,..., αn) of subsets will also be called a Boolean tuple.
Definition 1.1. The set dnS will be called a special decomposition of the set S, if
i {1,...,n}(Mi0  Mi1)=∅,(1)
i {1,...,n}(Mi0  orMi1 ∅),(2)
i=1n(Mi0Mi1)=S.(3)
Obviously, the same subsets of the set can form different special decompositions.
Definition 1.2. Let the set dnS be a special decomposition of the set S.
For any Boolean tuple (α1, α2,..., αn) the ordered set
cnS={M1α1,M2α2,...,Mnαn}
will be called a special covering for the set S under the decomposition dnS, if
i=1n Miαi=S.
Note that the subsets  Mi0 and Mi1 cannot simultaneously belong to the special covering.
Let dnS = {(M10, M11),..., (Mn0, Mn1)}be an ordered set of arbitrary ordered pairs of subsets of the set S. For any 1 ≤ kn, an ordered set obtained by permutating the components of arbitrary chosen ordered pairs
(Mi10,Mi11),...,(Miк0, Miк1) dnS
will be called an I-transformation of the set dnS. It will be denoted by (i1,i2,..., ik )I(dnS). Sometimes, if there is no need to mark the numbers of the ordered pairs, we will skip them and use the notation IdnS:
IdnS={(M1α1,M1α̅1),...,(Mnαn,Mnα̅n)}.
The ordered pairs of this decomposition are defined as:
(Miαi, Miα̅i) = (Mi0, Mi1), if the components of the i-th pair are not displaced,
(Miαi, Miα̅i) = (Mi1, Mi0), if the components of the i-th pair are displaced.
Lemma 1.3. If dnS is an ordered set of ordered pairs of subsets of the set S then for any I-transformation I (dnS), the following is true:
i) dnS is a special decomposition of the set S if and only if so is the ordered set I(dnS).
ii) If dnS is a special decomposition of the set S, then there exists a special covering for the set S under the decomposition dnS if and only if it exists under the decomposition I(dnS).
Proof. i) During the transition from the set dnS to the set I(dnS) and vice versa, the contents of the subsets do not change. Only the orders of the components of some ordered pairs change. Therefore, the sets dnS and I(dnS) are either at the same time special decompositions of the set S, or at the same time they are not such decompositions.
At the other hand, if under the special decomposition dnS the set cnS = {M1α1,..., Mnαn} (αi  {0, 1}) is a special covering for the set S, then it will also be a special covering for the set S under decomposition I(dnS) and vice versa.
In what follows, we will distinguish the subsets included in ordered pairs according to the order of their location in these pairs.
Let for some Boolean tuple (α1,..., αn), dnS be a special decomposition:
dnS={(M1α1,M1α̅1),...,(Mnαn,Mnα̅n)}.
The subsets M1α1,..., Mnα will be called the subsets of 0-domain,
The subsets M1α̅1,..., Mnα̅n will be called the subsets of 1-domain.
If the components of an ordered pair (Mi0, Mi1) are permuted, then the subset Mi1 becomes a subset of the 0-domain, and the subset Mi0 becomes a subset of the 1-domain.
For technical convenience, for any α  {0, 1}, we denote: Mα = i=1nMiαi and Mα̅ = i=1nMiα̅i
sMα = {M1α1,..., Mnαn} and sMα̅ = {M1α̅1,..., Mnα̅n}. For any α  {0, 1}, sMα will be called a set of α-components or α-domain of the decomposition dnS.
(i1,..., ik)sMα is the set obtained by replacing the subsets M1α1,..., Mnαn with the subsets M1α̅1,..., Mnα̅n, respectively, in the set sMα. (i1,..., ik)sMα will be called a set of α-components of the ordered pairs included in the decomposition (i1,..., ik)IdnS.
Definition 1.4. If the set of subsets of the α-domain is a special covering for the set S, then such a covering will be called a special Mα-covering or briefly Mα-covering for the set S.
Lemma 1.5. Let dnS = (M10, M11),..., (Mn0, Mn1)} be a special decomposition of the set S.
Then, there exists a special covering for the set S under the special decomposition dnS if and only if for some α ∈ {0,1} there exists an Mα-covering for the set S under some special decomposition IdnS.
Proof. Obviously, the procedure for forming the α-domain does not violate the Definition 1.2 of a special covering. Therefore, any Mα-covering is also a special covering for the set S.
If there exists a special covering for S containing subsets included in the α̅-domain, then, obviously, by applying I-transformation with respect to ordered pairs containing these subsets, according to Lemma 1.3, we obtain an Mα-covering for the set S. .
3. Boolean Functions and Special Decompositions
Let for natural numbers n and m, f(x1,..., xn) be a Boolean function of n variables represented in conjunctive normal form (CNF) with m clauses.
We assume that the clauses of the function are numbered by the numbers 1,..., m in some natural order, and we will use the notation cj for the j-th clause of the function. We will also use the notations xi0 = xi̅ and xi1 = xi for i ∈ {1,..., n} for literals included in clauses.
For simplicity and technical convenience, we assume the following:
a) no variable and its negation are included in any clause simultaneously,
b) if the function contains n variables, then for any i ∈ {1,..., n}, the literal xiα appears in some clauses for some α ∈ {0,1}.
Obviously, this assumption does not limit the set of functions being considered.
We say that the clauses of the set {cj1,..., cjk} are satisfiable if there is a Boolean assignment tuple (σ1,...,σn), such that any of these clauses takes the value 1 when the variables x1,..., xn are assigned the values σ1,...,σn, respectively.
3.1. Special Decomposition of Clauses of a Boolean Function
Let S(f) = {c1, c2,..., cm} be the set of clauses of some function f(x1,..., xn).
Based on the clauses of the function f(x1,...,xn), we form the subsets of the set S(f). For convenient these subsets will be denoted by capital letters corresponding to the function designation:
For any i ∈ {1,..., n} and α ∈ {0,1} we denote:
Fi0={cj/cjS(f)andcjcontainstheliteralx̅i,(j∈{1,...,m})}.
Fi1={cj/cjS(f)andcjcontainstheliteralxi,(j∈{1,...,m})}.
Let’s form the following ordered set of ordered pairs of these subsets:
dnS(f)={(F10,F11),(F20,F21),...,(Fn0,Fn1)}.
We will say that the ordered set dnS(f) is a decomposition of the set S(f) generated by the conjunctive normal form of the function f(x1,...,xn).
Lemma 2.2. For any function f(x1,..., xn), represented in conjunctive normal form, the set dnS(f) is a special decomposition of the set S(f).
Proof. Taking into account that the functions under consideration satisfy conditions (a) and (b) set out in the previous paragraph, it is easy to verify that the conditions of the Definition 1.1 of the special decomposition, (1), (2) and (3) are satisfied. .
If there exists a special covering for the set S(f) under the special decomposition dnSf, then we will denote it by cnS(f) = {F1α1, F2α2,..., Fnαn}.
Theorem 2.3. For any Boolean function f(x1,..., xn) represented in conjunctive normal form, the following is true:
There is a Boolean assigning tuple (σ1,..., σn) such that f (σ1,..., σn) = 1 if and only if there is a special covering for the set Sf under the decomposition dnS(f).
Proof. Let for some tuple (σ1,..., σn), f(σ1,..., σn) =1. We prove, that then i=1n Fiσi= S(f), which will mean that the ordered set cnS(f)= {F1σ1, F2σ2,..., Fnσn} will be a special covering for the set Sf under the decomposition dnS(f).
It is enough to show that each clause belongs to some subset included in the set cnS(f).
Suppose that there is a clause cjS(f) that does not belong to any of the subset included in cnS(f). Then, none of the literals x1σ1, x2σ2,..., xnσn is included in the clause cj. Therefore, cj is the disjunction of some literals of the form x iσ̅i. Since σiσ̅i = 0 for any i  {1,..., n}, then for given values of variables, the clause cj will take the value 0, which contradicts the assumption that f(σ1, σ2,..., σn) = 1. So, each clause is included in some subset included in the set cnS(f).
Let for some tuple of superscripts (α1 , α2,..., αn), where αi 0,1, the set
cnS(f) ={ F1α1, F2α2,..., Fnαn} is a special covering for the set S(f) under the decomposition dnS(f).
By definition, the subset Fiαi contains clauses that contain the literal xiαi. If xiαi = 1, then the value of all clauses included in the set Fiαi will be equal to 1,
That is, for any i  {1,..., n} and j  {1,..., m}, if (xiαi = 1) & (cj Fiαi) then (cj = 1). It is easy to notice that if σ1=α1, σ2=α2,..., σn=αn, then f(σ1,..., σn) =1.
3.2. Generation of the Boolean Function Based on a Special Decomposition
Let S = {e1, e2,..., em} be a nonempty set of m elements. Based on some special decomposition of the set S, we form a Boolean function, represented in conjunctive normal form. Suppose that dnS = {(M10, M11),...,(Mn0,  Mn1)} is a mentioned decomposition.
To form this function, first, for any element ej  S, we form the set of literals, denoted by l(ej), based on the positions of the subsets containing the element ej. That is, for any j ∈ {1,..., n} and α  0,1, if ejMiα, then we form the literal xiα and add it to the formed set l(ej). It is easy to see, that when forming the literals xiα, the number of variables will be n.
In fact, for any element eiS we will have:
l(ej)={xiα/ejMiα,i∈{1,...,n},α  0,1}.
Let cj be the clause formed by the literals of the set l(ej). Obviously, the number of these clauses will be equal to m. Then, we form the function denoted by h(x1,..., xn) as follows:
h(x1,...,xn)=j=1mcj.
We will say that the function h(x1,..., xn) is generated by the special decomposition dnS.
Theorem 2.5. If the set dnS = {(M10, M11),..., (Mn0,  Mn1)} is a special decomposition of a set S, and h(x1,..., xn) is the function generated by this decomposition, then:
There exists a special covering for the set S under the decomposition dnS, if and only if there exists a Boolean assignment tuple (σ1,..., σn) such that h(σ1,..., σn) = 1.
Proof. The proof is similar to the proof of Theorem 2.3.
Remark 2.6. In fact, we have established an important relationship between the Boolean satisfiability problem and the problem of finding a special covering for a set:
1. each Boolean function f(x1,..., xn) of n variables represented in conjunctive normal form with m clauses, generates a special decomposition dnS(f) of the set S(f) of m elements.
2. each special decomposition of any set of m elements and containing n ordered pairs, generates a Boolean function of n variables in conjunctive normal form with m clauses.
In particular, using the Theorems 2.3 and 2.5, we can assert that any decidability result for any of these problems leads to the same result for the other .
4. Some Important Properties of Special Decompositions
We introduce some transformations in the special decomposition by changing the contents of subsets such that the conditions of the special decomposition are preserved.
We assume that the ordered set dnS = {(M10, M11),..., (Mn0, Mn1)} is a special decomposition for a set S, and for some Boolean tuple (α1,..., αn), the ordered set cnS = {M1α1,..., Mnαn} is some special covering for the set S under this decomposition.
We will use the notation Miδ  (Mi0, Mi1), meaning that Miδ = Mi0 or Miδ = Mi1.
Definition 3.1. Let the ordered pairs (Miα, Miα̅) and (Mjβ, Mjβ̅) be included in the special decomposition dnS and let Miδ  (Mi0, Mi1) and Mjγ  (Mj0, Mj1).
i) We say that the changes in the contents of the subsets Mjγ and Miδ are admissible under the tuple (α1,..., αn), if the changes are made in accordance with the following points:
a) for an element e  Miδ, the subset Miδ is replaced with the set Miδ\ {e} in the ordered pair (Mi0, Mi1 ), if Miδ cnS and ((Miδ\ {e}) ∪ Miδ̅)  .
b) for an element e ∉ (Mi0Mi1), the subset Miδ is replaced with the set Miδ∪ {e} in the ordered pair (Mi0, Mi1).
c) if the subsets Mjγ and Miδ are both included in cnS, then for an element e such that eMjγ and eMiδ̅, the subset Mjγ is replaced with the set Mjγ\ {e} and the subset Miδ is replaced with the set Miδ∪ {e} in the corresponding ordered pairs, respectively.
ii) We say that the ordered set, denoted by dnSG, is generated by the decomposition dnS as a result of admissible changes under the tuple (α1,..., αn), if these changes are made in the components of some ordered pairs of the decomposition dnS, in accordance with points (i.1) - (i.3).
iii) We say that the ordered set, denoted by cnSG is generated as a result of admissible changes under the tuple (α1,..., αn) in the special decomposition dnS, if any subset included in it has the same superscript as the corresponding subset in the set cnS.
If it does not lead to ambiguity, we will use the notation cnSG for the ordered set which either coincides with the set cnS or is generated by the sets dnS and cnS.
Theorem 3.2. Let for some Boolean tuple (α1,..., αn), the ordered set
 cnS={M1α1,...,Mnαn}
be a special covering for the set S under the special decomposition dnS.
If the ordered sets dnSG and cnSG are generated as a result of admissible changes under the tuple (α1,..., αn) in the decomposition dnS, then:
- dnSG is also a special decomposition of the set S,
- cnSG is a special covering for the set S under the decomposition dnSG.
Proof. During the admissible changes, the conditions of Definition 1.1 are not violated.
5. Admissible Changes in Clauses of Functions
Consider a Boolean function f(x1,..., xn) represented in conjunctive normal form with m clauses. Lemma 2.2 states that any Boolean function represented in CNF generates a special decomposition of the set S(f):
dnS(f)={(F10,F11),(F20,F21),...,(Fn0,Fn1)}.
Theorem 2.3 actually proves that the satisfiable assignment tuple defines the subsets that cover the set S(f), and vice versa, that is, for a Boolean tuple (σ1,..., σn), f(σ1,..., σn) = 1 if and only if the ordered set cnSf = {F1σ1, F2σ2,..., Fnσn} is a special covering for the set Sf under the special decomposition dnS(f).
Also, section 2.4 describes a procedure that, based on any special decomposition, generates a Boolean function in conjunctive normal form.
Definition 4.1. Let f(x1,..., xn) be a satisfiable Boolean function represented in conjunctive normal form.
We say that the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of admissible changes under the assignment tuple (σ1,..., σn), if the following conditions are met:
- f(σ1,..., σn) = 1,
- the special decomposition dnSf is generated by the function f(x1,..., xn),
- the special decomposition dnSfG is generated by the special decomposition dnSf as a result of admissible changes under the assignment tuple (σ1,..., σn),
- h(x1,..., xn) is generated by the special decomposition dnSfG.
Theorem 4.2. Let f(x1,..., xn) be a Boolean function represented in conjunctive normal form, and let for some assignment tuple (σ1,..., σn), f(σ1,..., σn) = 1.
If the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of admissible changes under the assignment tuple (σ1,..., σn), then h(σ1,..., σn) = 1.
Proof. It is easy to see that under these conditions, according to Theorem 2.3, the ordered set
cnSf = {F1σ1, F2σ2,..., Fnσn} is a special covering for the set Sf under the special decomposition dnSf.
Since the function h(x1,..., xn) is generated by the function f(x1,..., xn) by the admissible changes under the assignment tuple σ1,..., σn), then:
- the special decomposition dnSf generates the special decomposition dnSfG as a result of admissible changes under the assignment tuple (σ1,..., σn),
- the decomposition dnSfG generates the function h(x1,..., xn).
According to Theorem 3.2, there is a special covering for the set Sf under the special decomposition dnSfG. But then, by Theorem 2.5, the function h(x1,..., xn) is satisfiable.
Obviously, during these changes in the decomposition dnSf the special covering does not lose elements. So, the subsets with superscripts σ1,..., σn, respectively, cover the set Sf. Therefore, h(σ1,..., σn) = 1.
Let's explore the nature of the concept of function generation by a function in general.
For the function f(x1,..., xn) and for the satisfying assignment (σ1,..., σn) we define the class of functions, denoted as Gf[σ1,..., σn], as follows:
1) f(x1,..., xn)  Gf[σ1,..., σn].
2) if the function h(x1,..., xn) is generated by the function included in the class
Gf[σ1,..., σn] as a result of admissible changes under the assignment tuple (σ1,..., σn), then,
h(x1,..., xn)  Gf[σ1,..., σn].
3) the class Gf[σ1,..., σn] contains only functions satisfying conditions (1) and (2).
Theorem 4.3. Let f(x1,..., xn) and h(x1,..., xn) be Boolean functions of n variables represented in conjunctive normal form, each containing m clauses.
If there exists a Boolean satisfiable tuple (σ1,..., σn) such that f(σ1,..., σn) = 1 and h(σ1,..., σn) = 1, then
h(x1,..., xn)  Gf(σ1,..., σn) and
f(x1,..., xn)  Gh(σ1,..., σn).
Proof. Let S(f) = {c1,..., cn} and S(h) = {e1,..., en} be ordered sets of clauses of the functions f(x1,..., xn) and h(x1,..., xn), respectively. By Lemma 2.2 these functions generate special decompositions dnS(f) and dnS(h) of the sets S(f) and S(h), respectively:
dnS(f)={(F10,F11),(F20,F21),...,(Fn0,Fn1)},
dnS(h)={(H10,H11),(H20,H21),...,(Hn0,Hn1)}.
In addition, the following ordered sets
cnSf = {F1σ1, F2σ2,..., Fnσn} and cnSh = {H1σ1, H2σ2,..., Hnσn} are special coverings for the sets S(f) and S(h), respectively.
Thus, we will proof that the special decompositions dnS(f) and dnS(h) are generated by each other as a result of admissible changes under the tuple of superscript (σ1,..., σn).
Let for some i  {1,..., n},
Fiσi={ci1,...,cip}andHiσi={ej1,...,ejq=}.=
By the definition of these subsets,
xiσi  cikforanycik{ci1,...,cip},
xiσi  ejkforanyejk{ej1,...,ejq}.
Let’s describe a procedure for obtaining the subset Hiσi instead the subset Fiσi as a result of admissible changes in the decomposition dnS(f).
The procedure consists of applying the points of Definition 3.1 to the subsets included in the decomposition dnS(f).
We will assume that none of the subsets included in the set cnSf is empty, otherwise we can add an element to this subset according to admissible changes. This does not affect the estimation of the complexity of the entire procedure.
a) We sequentially remove all elements from subsets not included in the set cnSf. As a result, any ordered pair (Fi0, Fi1) will take the form
(Fi0,∅),ifFi0  cnSfor(∅,Fi1),ifFi1  cnSf.
We can do this applying the point (i.1) of the Definition 3.1. It is easy to see, that as a result of these operations some clauses of the function are change, so the function is changed. At the same time, the resulting function is satisfiable since all changes are made in accordance with the admissible changes under the same assignment tuple.
b) let’s consider the following cases for the clauses of the subsets
Fiσi={ci1,...,cip}andHiσi={ej1,...,ejq}.
Recall that our goal is to obtain the clauses of the set Hiσi instead of the set Fiσi in the decomposition dnS(f) using the admissible changes.
1) suppose that p = q. In this case, we proceed as follows:
For any number ik  {i1,..., ip}, we compare the pairs of clauses cik and eik:
- if cik and eik are the same, we will assume that eik  Fiσi and compare other pairs.
- if there is a literal, let it be xsαs, such that xsαs  eik and xsαs  cik, then we add xsαs to the clause cik. Recall that adding the literal xsαs to the clause cik means adding the clause cik to the subset Fsαs, which is possible if cik  Fsα̅s (point (i.2), of the Definition 3.1).
To show that the clause cik can be added to the subset Fsαs, we consider two cases:
- Fsαs  cnSf. In this case Fsα̅s = , therefore we can add cik to the subset Fsαs which will mean that the literal xsαs is added to the clause cik.
- Fsαs  cnSf. Then Fsα̅s  cnSf and Fsαs = . So, we will add cik to the empty subset Fsαs. In this case, if cik is included in Fsα̅s, we can remove it in accordance to the point (i.3) of the Definition 3.1, since cik is also included in another subset Fiσi of the set cnSf.
Thus, in case b.1) by means of admissible changes, we can add all clauses included in the subset Hiσi to the subset Fiσi.
2) if p < q, then we use the point (i.3) and add clauses to the subset Fiσi such that the number of clauses in it will be equal to the number of clauses in the subset Hiσi.
As a result, we will get the case b.1).
3) if p > q, then using the point (i.3), we move some clauses from the subset Fiσi to other subsets such that the number of clauses in it will be equal to the number of clauses in the subset Hiσi. As a result, we again get the case b.1).
c) after adding all the literals of the clause eik to the clause cik, we proceed to remove from the clause cik literals that are not included in the clause eik, as follows:
Let xrαr  cik and xrαr  eik.
Removing xrαr from cik means removing cik from the subset Frαr. Note that we can do this using the point (i.3) of the Definition 3.1, since cik is also included in the subset Fiσi.
Repeating the procedure according to described points for all i  {1,..., n}, we obtain the set cnSh instead of the set cnSf.
d) by applying the point (i.2) we do the following. For any subset Hiσ̅i, which is not included in the special covering cnSh, all clauses included in it are sequentially added to the subset Fiσ̅i.
It is easy to see, that as a result, we obtain the special decomposition dnS(h). Therefore, we can assert that first side of the theorem is valid, that is, h(x1,..., xn)  Gf(σ1,..., σn).
Similarly, f(x1,..., xn)  Gh(σ1,..., σn).
Obviously, as a result of any step of the described procedure we obtain a new special decomposition of the set Sf and a new special covering for the set Sf under the obtained decomposition. Then, as a result of any step of the procedure, a satisfiable function is generated.
Applying the admissible changes to the subsets included in the special decomposition dnS(f), actually means performing the following operations with the clauses of the function f:
- the clause cj is removed from the subset Fiα. This means the removing of the literal xiα from the clause cj,
- the clause cj is added to the subset Fiα. This means adding the literal xiα to the clause cj,
- the clause cj is moved from the subset Fiα, to the subset, Fjδ. This means remove the literal xiα from the clause cj and add the literal xjδ to the obtained clause.
Thus, adding a literal to a certain clause, removing a literal from the certain clause or changing a literal with another literal according to conditions of admissible changes, we obtain a satisfiable function.
Using the theorems 4.2 and 4.3, it is easy to proof the equivalence theorem.
First, let’s define a binary relation over the Boolean functions of n variables and represented in conjunctive normal form with m clauses. We will denote this relation by Gm[σ1,..., σn] where (σ1,..., σn) is a Boolean assignment tuple.
Suppose that f(x1,..., xn) and h(x1,..., xn) are Boolean function of n variables, both in conjunctive normal form with m clauses.
(f, h) will denote the ordered pair of these functions.
We say that (f, h)  Gm[σ1,..., σn], if the following conditions are satisfied:
- f(σ1,..., σn) = 1,
- the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of admissible changes under the satisfying assignment (σ1,..., σn).
Theorem 4.4. For any Boolean assignment (σ1,..., σn), the relation G[σ1,..., σn] is an equivalence relation over the satisfiable Boolean functions of n variables represented in conjunctive normal form with m clauses.
Proof. Based on description of the relation G[σ1,..., σn] and the definition of admissible changes, it is easy to prove that Gm[σ1,..., σn] is a reflexive, symmetric and transitive relation over the satisfiable Boolean functions. That is:
- if f(σ1,..., σn) = 1, then (f, f)  Gm[σ1,..., σn].
- if (f, h)  Gm[σ1,..., σn] then (h, f)  G[σ1,..., σn].
- if (f, g)  Gm[σ1,..., σn] and (g, h)  Gm[σ1,..., σn] then (f, h)  Gm[σ1,..., σn].
6. Complexity Estimations
In the previous sections we described the procedures that implement the proofs of theorems, so an important issue is to estimate the complexity of these procedures. They are as follows:
a) A procedure for generating a special decomposition of the set of clauses of the given Boolean function in conjunctive normal form.
b) A procedure for generating a Boolean function in conjunctive normal form based on a given special decomposition of a certain set.
c) A procedure for generating a satisfiable function from another satisfiable function by admissible changes under some satisfying assignment.
Data Representations.
Let c1,..., cm be the clauses of the function 𝑓(x1,..., xn). We will represent the function 𝑓(x1,..., xn) as an (m  n) matrix , with elements 0, -1, 1. It will be denoted as (f)cnf.
The rows of the matrix will represent the clauses of the function, and the none-zero elements of the rows will represent the literals included in the clauses.
(f)cnf(j, i) = -1, if the negative literal xi̅ is included in the clause cj,
(f)cnf(j, i) = 0, if none of the literals xi and xi̅ is included in the clause cj,
(f)cnf(j, i) = 1, if the positive literal xi is included in the clause cj.
Obviously, for any j  {1,..., m}, the j-th row of the matrix (f)cnf is uniquely determined by the clause cj of the function. Also, for any j  {1,..., m}, the clause cj of the function is uniquely determined by the j-th row of the corresponding matrix (f)cnf.
In addition, any Boolean function f(x1,..., xn) represented in conjunctive normal form is uniquely determined by the corresponding matrix (f)cnf,
It is easy to see, that an (m  n)-matrix with elements 0, -1, 1 only, represents a Boolean function if and only if it does not contain a row with only zeros and a column with only zeros.
Let dnS be a special decomposition of the nonempty set S = {e1,..., em}:
dnS={(M10,M11),...,(Mn0,Mn1)}.
We will consider S as an ordered set . Obviously, it will not lead to any ambiguity.
Similar to the case of Boolean functions, it is technically convenient to represent the special decomposition of the set S using an ordered pair of (0,1)-matrices, each of size (n  m).
We will denote these matrices by sM0 and sM1, respectively. They will be formed based on the decomposition dnS as follows. For i  {1,..., n} and j  {1,..., m},
sM0(i,j)=0, if ej  Mi01, if ej  Mi0 sM1(i,j)=0, if ej  Mi11, if ej  Mi1.
We will say that the ordered pair (sM0, sM1) corresponds to the special decomposition dnS.
On the other hand, the special decomposition dnS is determined by the corresponding ordered pair of matrices (sM0, sM1). For any i  {1,..., n},
Miα={ej  S/sM0(i,j)=1}andMiα̅={ej  S/sM1(i,j)=1},
Thus, any row of the matrices sM0 and sM1 corresponds to some subset included in the ordered pairs of a special decomposition. The ordered pair (Mi0, Mi1) of the decomposition dnS will be determined by ordered pair of i-th rows of the matrices sM0 and sM1.
We will say that the pair of (0,1)-matrices (sM0, sM1) is generated by the Boolean function 𝑓(x1,..., xn), if this pair corresponds to the special decomposition dnS(f).
Recall that for any i ∈ {1,..., n} the subsets Fi0 and Fi1 are composed as follows:
Fi0={cj/cjS(f)andcjcontainstheliteralx̅i,(j∈{1,...,m})},
Fi1={cj/cjS(f)andcjcontainstheliteralxi,(j∈{1,...,m})}.
cj is a j-th clause of the function f(x1,..., xn).
According to Lemma 2.2, the ordered set of the ordered pairs of these subsets compose the special decomposition dnS(f).
Let’s denote by ((f)sM0, (f)sM1) the pair of (0,1)-matrices, which is formed as follows:
(f)sM0(i,j)=0, if cj  Fi01, if cj  Fi0(f)sM1(i,j)=0, if cj  Fi11, if cj  Fi1.
We will say that the pair of (0,1)-matrices ((f)sM0, (f)sM1) corresponds to the special decomposition dnS(f). On the other hand, cj  Fiα if the literal xiα is included in the clause cj. So,
(f)sM0(i,j)=0, if xi0  cj1, if xi0  cj(f)sM1(i,j)=0, if xi  cj1, if xi  cj.
In addition, we will use the following notation for any i  {1,..., n}:
(f)M0(i)=((f)sM0(i,1),...,(f)sM0(i,m))
(f)M1(i)=((f)sM1(i,1),...,(f)sM1(i,m)).
It is obvious, that the ordered pair ((f)M0(i), (f)M1(i)) is the ordered pair of i-th rows of the matrices (f)sM0 and (f)sM1, respectively.
The Complexity of the Described Procedures .
Let we are given a special decomposition dnS, and let (sM0, sM1) be a pair of (0,1)-matrices corresponding to this special decomposition.
Also, let we are given a Boolean function f(x1,..., xn) in conjunctive normal form, and let (f)cnf be the corresponding matrix with the elements 0, -1 and 1.
We often identify a special decomposition of a nonempty set of m elements containing n ordered pairs of subsets with the corresponding pair of (0,1)-matrices of the size (n  m).
We will also identify a Boolean function of n variables, in conjunctive normal form with m clauses, with the corresponding (m  n)-matrix with the elements 0, -1 and 1.
Definition 5.1. (i) The total number of 1s in the matrices sM0 and sM1 will be called the length of the input data of the special decomposition dnS.
(ii) The total number of non-zero elements included in the matrix (f)cnf will be called the length of input data of the function f(x1,..., xn).
Definition 5.2. The following operations will be called elementary:
- assigning a value to a function variable or assigning a value to an array element,
- addition and subtraction of numbers,
- comparison of two numbers.
Proposition 5.3. If f(x1,..., xn) is a Boolean function represented in conjunctive normal form with m clauses, then the number of elementary operations required to obtain the pair of matrices ((f)sM0, (f)sM1) does not exceed the number c  n  m for some constant c.
Proof. We will form the matrices (f)sM0 and (f)sM1 based on the corresponding matrix (f)cnf and using the formulas described in the previous section.
For any j  {1,..., m }, we sequentially consider all the elements of the jth row of the matrix (f)cnf and proceed as follows:
if (f)cnf(j, i) = -1, we assign 1 to the element (f)sM0(i, j),
if (f)cnf(j, i) = 1, we assign 1 to the element (f)sM1(i, j)
if (f)cnf(j, i) = 0, we assign 0 to the elements (f)sM0(i, j) and (f)sM1(i, j).
Recall that this corresponds to considering all the literals of any clause.
Obviously, all operations in the described procedure are elementary, and the number of these operations does not exceed the number c  (n  m) for some constant c.
Proposition 5.4. Let S = {e1,..., em} be an ordered set, and
dnS={(M10, M11),...,(Mn0,  Mn1)},
be a special decomposition of the set S.
The number of elementary operations required to obtain the Boolean function generated by the special decomposition dnS does not exceed the number c  n  m for some constant c.
Proof. Let h(x1,..., xn) denote the function that is generated by the decomposition dnS.
We will form the matrix (h)cnf, which will correspond to the function h(x1,..., xn), based on the pair of matrices (sM0, sM1̅) corresponding to the special decomposition dnS.
We will use the procedure described in the section 2.4. Recall that
sM0(i, j) = 1, if ejMi0 and sM1(i, j) = 1, if ejMi1.
For any i ∈ {1,..., n}, we consider all elements of the i-th row of the matrix sM0 and all elements of the i-th row of the matrix sM1, and do the following for any j ∈ {1,..., m}:
We assign (h)cnf(j, i) = -1 if sM0(i, j) = 1,
We assign (h)cnf(j, i) = 1 if sM1(i, j) = 1,
We assign (h)cnf(j,i) = 0 if sM0(i, j) = 0 and sM1(i, j) = 0.
Obviously, the resulting matrix (h)cnf(j, i) is formed correctly, and the number of required elementary operations does not exceed the number c  n  m for some constant c.
The Propositions 5.3 and 5.4 prove the following:
Any Boolean function in conjunctive normal form generates a special decomposition in polynomial time, and any special decomposition of a set generates a Boolean function in conjunctive normal form in polynomial time.
Using Theorems 2.3 and 2.5, as well as Remark 2.6, one can state that any decidability procedure for the Boolean satisfiability problem leads to a decidability procedure for finding a special cover for a set, and vice versa. .
The Complexity of the Generating Procedure .
Theorem 5.5. Let the function f(x1,..., xn) be represented in CNF with m clauses, and let (σ1,..., σn) be a Boolean assignment tuple such that f(σ1,..., σn) = 1.
If h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of admissible changes under the tuple (σ1,..., σn), then the number of elementary operations to perform the generating procedure does not exceed the number c  n  m for some constant c.
Proof. According to Theorem 4.2, h(σ1,..., σn) = 1.
In addition, the following conditions are satisfied by the Definition 4.1:
- the function f(x1,..., xn) generates the special decomposition dnSf by Lemma 2.2,
- the special decomposition dnSf generates the special decomposition dnSfG as a result of admissible changes under the assignment tuple (σ1,..., σn),
- the special decomposition dnSfG generates the function h(x1,..., xn).
Thus, it is enough to estimate the number of required elementary operations for each of these procedures. According to Proposition 5.3, the number of elementary operations required to obtain the pair of (0,1)-matrices ((f)sM0, (f)sM1) generated by the function f(x1,..., xn) does not exceed the number c  n  m for some constant c.
According to Proposition 5.4, the number of elementary operations required to obtain the Boolean function generated by an ordered pair of (0,1)-matrices ((f)sM0, (f)sM1), does not exceed the number c  n  m for some constant c.
Thus, we need to estimate the number of elementary operations for generating the special decomposition dnSfG based on the special decomposition dnSf.
For convenience, here we will use dnS(h) instead of the notation dnSfG for the decomposition that generate the function h(x1,..., xn).
We will use the pairs of (0,1)-matrices ((f)sM0, (f)sM1) and ((h)sM0, (h)sM1) that correspond to the special decompositions dnS(f) and dnS(h), respectively.
Since the subsets Fiσi and Hiσi correspond to the rows (f)Mσi(i) and (h)Mσi(i), respectively, then the ordered sets cnSf = {F1σ1,..., Fnσn} and cnSh = {H1σ1,..., Hnσn}, correspond respectively to the following ordered sets of the rows:
{(f)Mσ1(1),...,(f)Mσn(n)}and{(h)Mσ1(1),...,(h)Mσn(n)},
Thus, we will estimate the maximum number of elementary operations required to generate the pair of (0,1)-matrices ((h)sM0, (h)sM1) based on the pair of (0,1)-matrices ((f)sM0, (f)sM1) using admissible changes under the tuple (σ1,..., σn).
We will use the procedure similar to the procedure described in the Theorem 4.3.
Let’s note that we will consider the case when none of the rows included in the set
{(f)Mσ1(1),(f)Mσ2(2),...,(f)Mσn(n)}
consist only of zeros, otherwise, we can assign 1 to any suitable element of this row in accordance with admissible changes. This does not affect the estimation of the complexity of the entire procedure. The procedure described in the Theorem 4.3 actually consists of the following points:
a) removal of all subsets that are not included in the special covering cnSf.
This means sequentially assign zeros to all elements of the rows
(f)M σ̅1(1),(f)M σ̅2(2),...,(f)Mσ̅n(n).
That is, the elements of any row not included in the set corresponding to the special covering cnSf are assigned zero. Since the number of elements of any row does not exceed m, then the number of elementary operations for this point does not exceed the number (n  m).
b) for any i  {1,..., n} we add all clauses included in the subset Hiσi to the subset Fiσi. That is, for any i  {1,..., n}, we compare the elements of the rows
(f)Mσi(i)={(f)sMσi(i,1),...,(f)sMσi(i,m)},
(h)Mσi(i)={(h)sMσi(i,1),...,(h)sMσi(i,m)},
corresponding to the subsets Fiσi and Hiσi, respectively, and proceed as follows:
For any j ∈ {1,..., m}, we assign (f)sMσi(i, j) = 1, if (h)sMσi(i, j) = 1. Obviously, the number of elementary operations for this point also does not exceed the number (n  m).
c) for any i  {1,..., n}, all clauses included in the subset Fiσi and not included in Hiσi will be removed from the subset Fiσi. That is, if for some j ∈ {1,..., m},
(f)sMσi(i, j) = 1 and (h)sMσi(i, j) = 0, then we will assign (f)sMσi(i, j) = 0, which means removing the j-th clause from the subset Fiσi.
It is easy to see (recall the arguments of the proof of Theorem 4.3), that the assignment operation (f)sMσi(i, j) = 0 corresponds to an admissible change, since for the same value of j and for another value of i, (f)sMσi(i, j) = 1. This also means that cnSh will not lose an element.
Thus, by this point the procedure performs the following operations:
For any i  {1,..., n}, it runs over the i-th row of the matrix (h)sMσi and considers the values of its elements
(h)Mσi(i) = {(h)sMσi(i, 1),..., (h)sMσi(i, m)}.
If for some i  {1,..., n} and j ∈ {1,..., m},
(h)sMσi(i, j) = 0 and (f)sMσi(i, j) = 1
then the element (f)sMσi(i, j) of the matrix (f)sMσi is assigned the value 0. It is easy to see that the described procedure requires no more than c  n  m elementary operations for some constant c.
d) for any pair of rows (f)M σ̅i(i) and (h)M σ̅i(i),
(f)M σ̅i(i){(f)M σ̅1(1),(f)M σ̅2(2),...,(f)Mσ̅n(n)},
(h)M σ̅i(i){(h)M σ̅1(1),(h)M σ̅2(2),...,(h)Mσ̅n(n)},
the elements of the row (f)M σ̅i(i) are assigned by the corresponding elements of the row (h)M σ̅i(i). So, the procedure for performing this point requires no more than (n  m) elementary operation. Thus, as a result of the procedures described in points a), b), c) and d) we obtain the pair of (0,1) matrices ((h)sM0, (h)sM1) based on the pair of (0,1)-matrices ((f)sM0, (f)sM1) using admissible changes under the assignment tuple (σ1,..., σn).
Obviously, the number of all elementary operations for all described procedures does not exceed the number c  n  m for some constant c. ∇
Combining the results of the theorems 4.3 and 5.5, we can formulate the following:
Theorem 5.6. Let f(x1,..., xn) and h(x1,..., xn) be arbitrary Boolean functions, both represented in conjunctive normal form with m clauses. If there exists a Boolean assignment tuple (σ1,..., σn) such that
f(σ1,..., σn) = 1 and h(σ1,..., σn) = 1,
then the function f(x1,..., xn) generates the function h(x1,..., xn) as a result of admissible changes under the assignment tuple (σ1,..., σn) in no more than c  (n  m) elementary operations, for some constant c.
Proof. The proof follows directly from the Theorems 4.3 and 5.5. ∇.
7. Extension of Admissible Changes
In previous sections we studied admissible changes that are made only using elements from different subsets. We will extend this concept by adding a new operation to the operations defined in 3.1. The new operation will deal with ordered pairs of special decomposition.
Let’s consider the Boolean functions and the special decompositions generated by them.
Suppose that f(x1,..., xn) is a Boolean function in conjunctive normal form, and the set
dnS(f)={(F10,F11),...,(Fn0,Fn1)}
is a special decomposition of the set of clauses Sf of this function.
Recall that (i1,..., ik)I(dnS(f)) is a decomposition obtained as a result of permuting the components of the ordered pairs {(Fi10, Fi11),..., (Fik0, Fik1)} in the special decomposition dnS(f).
According to Lemma 1.3, (i1,..., ik)I(dnS(f)) is a special decomposition of the set S(f).
Theorem 6.1. If the function h(x1,..., xn) is generated by the special decomposition
(i1,..., ik)I(dnS(f)), then f(x1,..., xn) is satisfiable if and only if h(x1,..., xn) is satisfiable.
Proof. Let f(x1,..., xn) be a satisfiable function, and let the set of ordered pairs
dnS(f)={(F10,F11),...,(Fn0,Fn1)}
be a special decomposition of the set Sf. Then, according to Theorem 2.3, there is a special covering for the set Sf under the special decomposition (dnS(f)). Let it be the set
cnSf={F1α1,...,Fnαn}.
The special decomposition (i1,..., ik)I(dnS(f)) is obtained by permuting components of the ordered pairs
{(Fi10,Fi11),...,(Fik0,Fik1)}
in the decomposition dnS(f). So, by definition
(i1,...,ik)I(dnS(f))={(F1σ1,F1 σ̅1),...,(Fnσn,Fn σ̅n)},
forσi=0, if i { i1,..., ik}1, if i { i1,..., ik}.
But then, according to Lemma 1.3 there is a special covering for the set S(f) also under the special decomposition (i1,..., ik)I(dnS(f)). Obviously, the following ordered set {F1δ1,..., Fnδn},
forδi=αi, i { i1,..., ik}α̅i, i  i1,..., ik,
will be a special covering for the set S(f) under the special decomposition (i1,..., ik)I(dnS(f)).
In addition, obviously, h(δ1,..., δn) = 1. ∇
Let's now find out how the clauses of a new function h(x1,..., xn) differ from the clauses of the given function f(x1,..., xn) when permuting the components of some ordered pair, let it be (Fi0, Fi1), of the special decomposition dnS(f).
Suppose that Fi0 = {cl1,..., clp} and Fi1 = {cj1,..., cjq}. By the definition of these subsets,
- the literal  x̅i is included in all clauses of the set cl1,..., clp},
- the literal xi is included in all clauses of the set {cj1,..., cjq}.
- the literals  x̅i and xi are not included in any other clauses.
When permuting the components of the ordered pair (Fi0, Fi1), we obtain the special decomposition (i)I(dnS(f)), in which the i-th ordered pair has the form (Fi1, Fi0). The remaining ordered pairs coincide with the corresponding ordered pairs of dnS(f).
(i)I(dnS(f))={(F10,F11),...,(Fi1,Fi0),...,(Fn0,Fn1)}.
Let’s consider the procedure for generating the function h(x1,..., xn) in accordance with Section 2.4 based on the special decomposition (i)I(dnS(f)).
Recall that, having a special decomposition of a set, for any element of this set we form a clause corresponding to this element, based on the positions of the subsets containing this element.
The ordered sets dnS(f)) and (i)I(dnS(f)) differ only in the i-th ordered pair. That is,
Fi0 = {cl1,..., clp} is located in the 1-domain,
Fi1 = {cj1,..., cjq} is located in the 0-domain, of the resulting decomposition.
Let’s denote the clauses of the function h(x1,..., xn) as c1',..., cm', S(h) = {c1',..., cm'}.
Since h(x1,..., xn) is generated by the decomposition (i)I(dnS(f)), it is easy to see that:
- for any cjr ∈ {cj1,..., cjq}, the corresponding new clause cjr' will contain the literal  x̅i.
- for any clr ∈ {cl1,..., clp}, the corresponding new clause clr' will contain the literal xi.
Denoting by dnS(h) = {(H10, H11),..., (Hn0, Hn1)} the special decomposition (i)I(dnS(f)), which generates the function h(x1,..., xn), according to the formation procedure we obtain:
- the literal  x̅i is included in any of the clauses included in Hi0,
- the literal xi is included in any of the clauses included in Hi1.
At the same time, the clauses of the function h(x1,..., xn), not included in the subsets Hi0 or Hi1, coincide with the corresponding clauses of the function f(x1,..., xn).
Thus, the function h(x1,..., xn) is obtained by replacing the literal  x̅i with the literal xi and the literal xi with the literal  x̅i in all clauses of the function f(x1,..., xn) containing these literals.
Let’s now study the properties of extended changes in a special decomposition.
Consider a special decomposition of a set S,
dnS={(M10, M11),...,(Mn0,Mn1)}
such that for some Boolean tuple (α1,..., αn), cnS = {M1α1,..., Mnαn} is a special covering for S.
Definition 6.2. We say that the ordered set dnSG is generated by the decomposition dnS as a result of extended admissible changes if it is formed in accordance with the following steps:
- in addition to the admissible changes, a permutation procedure is also applied to some ordered pairs of the decomposition dnS,
- if admissible changes are performed under some tuple of superscripts (σ1,..., σn), and the permuting operation is applied to some i-th ordered pair of the decomposition under consideration, then admissible changes are continued under the tuple of superscripts (σ1,..., σ̅i,..., σn).
It is easy to notice that adding a new operation to the operations of admissible changes actually means admitting I-thansformations in the special decomposition.
According to Lemma 1.3, this means that as a result of applying the new operation, the conditions of the special decomposition and special covering are preserved.
Definition 6.3. Let the function f(x1,..., xn) be represented in conjunctive normal form with m clauses. In addition, there is an assignment tuple (σ1,..., σn) such that
f(σ1,..., σn) = 1.
We will say that the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of extended admissible changes, if:
- the special decomposition dnS(h) is generated as a result of extended admissible changes in the decomposition dnS(f),
- the function h(x1,..., xn) is generated by the special decomposition dnS(h).
Theorem 6.4. Let f(x1,..., xn) be a satisfiable Boolean function represented in conjunctive normal form with m clauses.
If the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of extended admissible changes, then h(x1,..., xn) is a satisfiable function.
Proof. Let dnS(f) be a special decomposition generated by the function f(x1,..., xn). Since f(x1,..., xn) is a satisfiable function, then there is some Boolean assignment tuple (α1,..., αn) such that f(α1,..., αn) = 1. At the same time, according to Theorem 2.3, the ordered set
cnSf={F1α1,...,Fnαn}
is a special covering for the set S(f) under the decomposition dnS(f).
We will show that as a result of applying any operation of extended admissible change, we obtain a special decomposition in which there will exist a special covering for the set S(f).
Let’s consider two cases:
a) the permuting operation is not applied during these changes.
In this case, according to Theorem 4.2, as a result of any operation we obtain a new special decomposition in which there exists a special covering for the set S(f).
In addition, the subsets included in the special covering have the same superscripts as in the original covering, (α1,..., αn). By Theorem 2.3, this means that as a result
h(α1,...,αn)=1.
b) during the extended admissible changes, we apply the permutation procedure to the i-th ordered pair of the current decomposition. Let (σ1,..., σi,..., σn) be the tuple of superscripts of the subsets make up the current special covering.
By definition, after the permutation, (σ1,..., σ̅i,..., σn) will be the tuple of superscripts of the subsets in the special covering.
According to Theorem 2.3, this means that the function generated by this special decomposition takes the value 1 if the variables are assigned the values (σ1,..., σ̅i,..., σn).
It is easy to see, that the final tuple of superscripts of the subset in the special covering will be a satisfying assignment for the function h(x1,..., xn). ∇
Theorem 6.5. Let f(x1,..., xn) and h(x1,..., xn) be arbitrary Boolean functions both represented in conjunctive normal form with m clauses. Let there also exist Boolean assignment tuples (σ1,..., σn) and (δ1,..., δn) such that f(σ1,..., σn) = 1 and h(δ1,..., δn) = 1.
Then, the function h(x1,..., xn) is generated by the function f(x1,..., xn), and the function f(x1,..., xn) is generated by the function h(x1,..., xn), as a result of extended admissible changes.
Proof. Let the ordered sets
dnS(f)={(F10,F11),...,(Fn0,Fn1)}and
dnS(h)={(H10,H11),...,(Hn0,Hn1)}
be special decompositions of the sets Sf and dnS(h), respectively.
The functions f(x1,..., xn) and h(x1,..., xn) are satisfiable, hence the ordered sets
cnSf={F1σ1,...,Fnσn}andcnSh={H1δ1,...,Hnδn}
will be special coverings for the sets S(f) and S(h), respectively, under these decompositions.
We will prove that the function h(x1,..., xn) is generated by the function f(x1,..., xn) as a result of extended admissible changes.
Consider the tuples (σ1,..., σn) and (δ1,..., δn), which also are the tuples of superscripts of the subsets included in cnSf and cnSh, respectively.
We compare whether these tuples are the same.
- if (σ1,..., σn) coincides with (δ1,..., δn), then we use the procedure described in Theorem 4.3 to obtain the function h(x1,..., xn).
- if these tuples do not match, we compare their elements in pairs:
For any i ∈ {1,..., n}, if σi  δi, we assign the value δi to the element σi.
It is easy to see that this operation is equivalent to the permutation of the components of the ordered pair (Fi0, Fi1), which is an admissible change. Therefore, we also permute the components of this ordered pair.
As a result of all these operations the special decomposition dnS(f) turns out to another special decomposition. In addition, there exists a special covering under this decomposition such that (δ1,..., δn) will be the tuple of superscripts of the subsets included in it.
On the other hand, the function generated by this special decomposition takes the value 1 if the variables are assigned the values (δ1,..., δn).
Let’s denote this function by g(x1,..., xn). Since the function g(x1,..., xn) is generated by the function f(x1,..., xn), then using the Theorem 4.4, it is enough to proof that the function h(x1,..., xn) is generated by the function g(x1,..., xn).
Thus, we obtained that δ1,..., δn) is a satisfying assigning tuple for the functions
g(x1,...,xn)andh(x1,...,xn):
f(δ1,...,δn)=1andh(δ1,...,δn)=1.
Obviously, the conditions of the Theorem 4.3 are satisfied for the functions g(x1,..., xn) and h(x1,..., xn).
Thus, the function h(x1,..., xn) is generated by the function f(x1,..., xn). Therefore, the function h(x1,..., xn) is also generated by the function g(x1,..., xn). In a similar way we prove that the function f(x1,..., xn) is generated by the function h(x1,..., xn). ∇
Theorem 6.6. Let f(x1,..., xn) and h(x1,..., xn) be arbitrary Boolean functions both represented in conjunctive normal form with m clauses. Let there also exist Boolean assignment tuples (σ1,..., σn) and (δ1,..., δn) such that
f(σ1,...,σn)=1andh(δ1,...,δn)=1.
Then, the function f(x1,..., xn) generates the function h(x1,..., xn) as a result of extended admissible changes in no more than c  (n  m) elementary operations, for some constant c.
Proof. Suppose that the pair of (0,1)-matrices ((f)sM0, (f)sM1) corresponds to the special decomposition dnS(f). According to Proposition 5.3, the pair of matrices can be generated by the function f(x1,..., xn) in no more than c  (n  m) elementary operations for some constant c.
We will use the procedure described during the proof of Theorem 6.5.
So, let g(x1,..., xn) be a function which takes the value 1 if the variables are assigned the values δ1,..., δn. Recall that g(x1,..., xn) is the function generated by the ordered pair of matrices that is obtained as a result of permutation of some ordered pairs of rows included in the ordered pair of (0,1)-matrices ((f)sM0, (f)sM1).
Obviously, the maximum number of elementary operations required for permuting the components of an ordered pair of rows included in ((f)sM0, (f)sM1) does not exceed the number c  m for some constant c.
Hence, maximum number of elementary operations required for permuting the components of all needed ordered pairs does not exceed the number c  (n  m).
Since h(δ1,..., δn) = 1 and g(δ1,..., δn) = 1, then according to Theorem 5.6, the function g(x1,..., xn) generates the function h(x1,..., xn) as a result of admissible changes under the assignment tuple (σ1,..., σn) in no more than c  (n  m) elementary operations, for some constant c. Combining these results, we can state:
Under the conditions of the theorem, the function f(x1,..., xn) generates the function
h(x1,..., xn) as a result of extended admissible changes in no more than c  (n  m) elementary operations, for some constant c. ∇
Thus, using the concept of admissible changes we can state the following:
- for any natural numbers n and m, the set of satisfiable functions of n variables, represented in conjunctive normal form with m clauses, is partitioned into equivalence classes,
- the functions included in the same class have a common satisfiable assigning tuple.
- for any function included in a certain class, as a result of applying any admissible operation on this function, another satisfiable function included in the same class is obtained.
- any function of any equivalency class can be generated by an arbitrary function of the same class in polynomial time.
Extending the rules of the admissible changes, we obtained an interesting result.
For any natural numbers n and m, all satisfiable functions of n variables, represented in conjunctive normal form with m clauses, are generated by each other in polynomial time, creating a chain of satisfiable functions in parallel.
Author Contributions
Stepan Margaryan is the sole author. The author read and approved the final manuscript.
Conflicts of Interest
The authors declare no conflicts of interest.
References
[1] Sanjeev Arora, Boaz Barak, Computational Complexity: A Modern Approach 2007.
[2] Kenneth H. Rosen, Discrete Mathematics and its Applications, seventh edition, 2012.
[3] Edward R. Scheinerman, Mathematics: A Discrete Introduction, Third Edition 2013.
[4] Cook, S. A., The complexity of theorem - proving procedures. in Conference Record of. Third Annual ACM Symposium on Theory of Computing (1971), 151–158.
[5] Karp, R. M., Reducibility among combinatorial problems. In Complexity of Computer, Computations, (1972), R. E. Miller and J. W. Thatcher, Eds., Plenum Press, 85–103.
[6] Michael Sipser, Introduction to the Theory of Computation, third edition 2012.
[7] Yves Crama, Peter L. Hammer, Boolean Functions. Theory, Algorithms, and Applications, 2011.
[8] Peter G´acs Boston University and L´aszl´o Lov´asz Yale University, Complexity of Algorithms Lecture Notes, Spring 1999.
[9] N. Creignou, S. Khanna, M. Sudan. Complexity Classifications of Boolean Constraint. Satisfaction Problems. Society for Industrial and Applied Mathematics, 2001.
[10] Armin Biere, Marijn Heule, Hans van Maaren and Toby Walsh, Handbook of Satisfiability. IOS Press, 2008.
[11] Evgeny Dantsin and Edward A. Hirsch, Worst-Case Upper Bounds, copyright 2008. SIAM J. Comput., vol 4, No. 1, March 1975.
[12] Thomas J. Schaefer, The complexity of Satisfiability Problems. Department of Mathematics University of California, Berkeley, California 94720.
[13] Fuzhen Zhang, Matrix Theory, Basic Results and Techniques, Second Edition, 2011.
[14] Charles C. Pinter, A Book of Set Theory, 2014.
[15] Thomas Jech, Set Theory, The Third Millennium Edition, 2003.
[16] Luke Adams, Universal Totally Ordered Sets, May 11, 2018.
Cite This Article
  • APA Style

    Margaryan, S. (2025). Special Coverings of Sets and Boolean Functions. American Journal of Mathematical and Computer Modelling, 10(3), 84-97. https://doi.org/10.11648/j.ajmcm.20251003.11

    Copy | Download

    ACS Style

    Margaryan, S. Special Coverings of Sets and Boolean Functions. Am. J. Math. Comput. Model. 2025, 10(3), 84-97. doi: 10.11648/j.ajmcm.20251003.11

    Copy | Download

    AMA Style

    Margaryan S. Special Coverings of Sets and Boolean Functions. Am J Math Comput Model. 2025;10(3):84-97. doi: 10.11648/j.ajmcm.20251003.11

    Copy | Download

  • @article{10.11648/j.ajmcm.20251003.11,
      author = {Stepan Margaryan},
      title = {Special Coverings of Sets and Boolean Functions
    },
      journal = {American Journal of Mathematical and Computer Modelling},
      volume = {10},
      number = {3},
      pages = {84-97},
      doi = {10.11648/j.ajmcm.20251003.11},
      url = {https://doi.org/10.11648/j.ajmcm.20251003.11},
      eprint = {https://article.sciencepublishinggroup.com/pdf/10.11648.j.ajmcm.20251003.11},
      abstract = {We will study some properties of Boolean functions based on newly introduced concepts called “Special Decomposition of a Set’’ and “Special Covering of a Set’’. The introduced concepts easily solve the question of how changes in clauses affect the resulting value of a function. They easily determine a clause as well as the literals that can be added to or removed from the clause so that the satisfiability of the function is preserved. The concept of generating a satisfiable function by another satisfiable function through admissible changes in the function's clauses is also introduced. If the generation of a function by another function is defined as a binary relation, then the set of satisfiable functions of n variables, represented in conjunctive normal form with m clauses is partitioned to equivalence classes. Moreover, we prove that any two satisfiable Boolean functions of n variables, represented in conjunctive normal form with m clauses, can be generated from each other in polynomial time.},
     year = {2025}
    }
    

    Copy | Download

  • TY  - JOUR
    T1  - Special Coverings of Sets and Boolean Functions
    
    AU  - Stepan Margaryan
    Y1  - 2025/07/23
    PY  - 2025
    N1  - https://doi.org/10.11648/j.ajmcm.20251003.11
    DO  - 10.11648/j.ajmcm.20251003.11
    T2  - American Journal of Mathematical and Computer Modelling
    JF  - American Journal of Mathematical and Computer Modelling
    JO  - American Journal of Mathematical and Computer Modelling
    SP  - 84
    EP  - 97
    PB  - Science Publishing Group
    SN  - 2578-8280
    UR  - https://doi.org/10.11648/j.ajmcm.20251003.11
    AB  - We will study some properties of Boolean functions based on newly introduced concepts called “Special Decomposition of a Set’’ and “Special Covering of a Set’’. The introduced concepts easily solve the question of how changes in clauses affect the resulting value of a function. They easily determine a clause as well as the literals that can be added to or removed from the clause so that the satisfiability of the function is preserved. The concept of generating a satisfiable function by another satisfiable function through admissible changes in the function's clauses is also introduced. If the generation of a function by another function is defined as a binary relation, then the set of satisfiable functions of n variables, represented in conjunctive normal form with m clauses is partitioned to equivalence classes. Moreover, we prove that any two satisfiable Boolean functions of n variables, represented in conjunctive normal form with m clauses, can be generated from each other in polynomial time.
    VL  - 10
    IS  - 3
    ER  - 

    Copy | Download

Author Information
  • Mathematics Lecturer, Mkhitar Sebastatsi Educational Complex, Yerevan, Armenia