  This is the second in a series of articles aimed at exploring the
relationship between the complexity classes of P and NP.
  The research in this article aims to find conditions of an algorithmic nature
that are necessary and sufficient to transform any Boolean function in
conjunctive normal form into a specific form that guarantees the satisfiability
of this function.
  To find such conditions, we use the concept of a special covering of a set
introduced in [13], and investigate the connection between this concept and the
notion of satisfiability of Boolean functions.
  As shown, the problem of existence of a special covering for a set is
equivalent to the Boolean satisfiability problem. Thus, an important result is
the proof of the existence of necessary and sufficient conditions that make it
possible to find out if there is a special covering for the set under the
special decomposition. This result allows us to formulate the necessary and
sufficient algorithmic conditions for Boolean satisfiability, considering the
function in conjunctive normal form as a set of clauses. In parallel, as a
result of the aforementioned algorithmic procedure, we obtain the values of the
variables that ensure the satisfiability of this function.
  The terminology used related to graph theory, set theory, Boolean functions
and complexity theory is consistent with the terminology in [1], [2], [3], [4].
The newly introduced terms are not found in use by other authors and do not
contradict to other terms.
