# Boolean circuit: can the output wire of a gate be used by many different gates in the next layer?

There are two typical secure multiparty computation paradigms using boolean circuits, namely garbled circuit and secret-sharing-based boolean computation. It is well-known that garbled circuits can be constructed layer by layer, in which each garbled gate has a fan-in of two and a fan-out of one (i.e., two input wires and one output wire). We have a similar construction in the secret-sharing-based boolean circuits. However, I failed to find any explicit comment whether an output wire of a gate can be used simultaneously by several gates in the next layer. In some available implementations of boolean circuits (e.g., this), no output wire is used more than once.

In my opinion, the reuse of an output wire does not undermine the security of the whole circuit since no information seems to be leaked by observing either the garbled gates or the secret-shared outputs. Am I wrong?

In fact there are examples in the very repository you linked to, e.g. wire 3488 of the AES-128 implementation is used twice.