  Coded computing has proved to be useful in distributed computing. We have
observed that almost all coded computing systems studied so far consider a
setup of one master and some workers. However, recently emerging technologies
such as blockchain, internet of things, and federated learning introduce new
requirements for coded computing systems. In these systems, data is generated
in a distributed manner, so central encoding/decoding by a master is not
feasible and scalable. This paper presents a fully distributed coded computing
system that consists of $k\in\mathbb{N}$ data owners and $N\in\mathbb{N}$
workers, where data owners employ workers to do some computations on their
data, as specified by a target function $f$ of degree $d\in\mathbb{N}$. As
there is no central encoder, workers perform encoding themselves, prior to
computation phase. The challenge in this system is the presence of adversarial
data owners that do not know the data of honest data owners but cause
discrepancies by sending different data to different workers, which is
detrimental to local encodings in workers. There are at most
$\beta\in\mathbb{N}$ adversarial data owners, and each sends at most
$v\in\mathbb{N}$ different versions of data. Since the adversaries and their
possibly colluded behavior are not known to workers and honest data owners,
workers compute tags of their received data, in addition to their main
computational task, and send them to data owners to help them in decoding. We
introduce a tag function that allows data owners to partition workers into sets
that previously had received the same data from all data owners. Then, we
characterize the fundamental limit of the system, $t^*$, which is the minimum
number of workers whose work can be used to correctly calculate the desired
function of data of honest data owners. We show that $t^*=v^{\beta}d(K-1)+1$,
and present converse and achievable proofs.
