A Boolean function is called read-once over a basis B if it can be expressed by a formula over B where no variable appears more than once. A checking test for a read-once function f over B depending on all its variables is a set of input vectors distinguishing f from all other read-once functions of the same variables. We show that every read-once function f over B has a checking test containing O(n^l) vectors, where n is the number of relevant variables of f and l is the largest arity of functions in B. For some functions, this bound cannot be improved by more than a constant factor. The employed technique involves reconstructing f from its l-variable projections and provides a stronger form of Kuznetsov's classic theorem on read-once representations.
We estimate the order for the length of checking test for disjunction of n variables considered as a read-once function in an arbitrary basis. Two classical problems are considered: recognizing the properties of a Boolean function given a column of its values and constructing a diagnostic test. The problems are investigated for nonrepeating functions in an arbitrary basis B. For the first problem, the decomposition method is applied to prove linear complexity of the corresponding sequential circuits; for the second problem we derive the order of the Shannon functions for a number of bases, in particular, for the basis of all functions of four variables. An effect of an increase in minimum test length for functions under constant substitutions of constants instead of variables in a checking test problem for read-once functions is described. A family of bases is described, and sequences of functions that are read-once in these bases and have projections whose testing requires more vectors than these functions themselves are constructed.