Your building blocks are known as the *atoms* in the Boolean algebra generated by the $A_i$. Each building block will consist of the points that have all the same pattern of answers for membership in the $A_i$. It is clear by maximality that any building block will respect this equivalence and therefore be a union of such atoms. Conversely, if a set has points with two different patterns of answers, then it will contain points from two $A_i$ without being contained in their intersection. If your family is finite as you indicated, then the Boolean algebra generated by the $A_i$ consists simply of the unions of blocks. If your original family is infinite, however, then you don't get a partition, for there are atomless Boolean algebras, and things become very interesting.