An algorithmic procedure is presented which produces an optimal two-level multiple-output network. In agreement with procedures suggested by other authors, the set of given (incompletely specified) Boolean functions of variables xi is transformed into a single (mosaic) function f( y,x) by using additional variables yi, related to the structure of the resulting network. The agreement ends here, however. It is shown that the function f(y, x) can be composed in such a way that the following statement can be proven as true.