  This paper presents algorithms that relate to the problem of finding a
minimum-cost sum-of-primes representation of a Boolean function f when the cost
function C is positive and additive. A set of primes whose sum equals f is
called a basis for f, so a solution to the problem is a minimum-cost basis.
  The algorithms construct the following canonical partition of the complete
set of primes and identify the members of sets 1, 2, and 3:
  (1) Essential Primes, which must be part of any basis for f,
  (2) Unnecessary Primes that cannot be part of a minimum-cost basis for f for
any positive additive cost function,
  (3) Unique disjoint sets of primes, PS1,...,PSN with associated "covering"
tables TS1,..., TSN such that any minimum-cost basis consists of the union of
the sets
  Essential Primes, QS1(C), ..., QSN(C) where QSi(C) is contained in PSi and
QSi(C) is a minimum-cost "cover" for PSi. Covering is defined by operation
Cascade(QS, TS), which has the property that QS covers PS if and only if
Cascade(QS, TS) is empty.
  The key to the results is the study of objects called Ancestor Sets. The
Ancestor Theorem proves that if A is an Ancestor Set for f, every minimum-cost
basis includes a minimum-cost cover for the set of primes PS in Ancestor Set A
and a minimum-cost cover for the set of primes that are not in A (and are not
covered by the the union of the Essentials with PS). The PSi in the partition
are the sets of primes in canonical disjoint Independent Ancestor Sets Ai,
which are easy to generate when the calculation of the primes (and their
consensus combinations) is within computational scope. The paper also presents
a condition under which QSi(C) can be easily determined, and another condition
such that PSi can be broken into disjoint pieces that can be minimized
separately.
