Memory Lower Bounds and Impossibility Results for Anonymous Dynamic Broadcast
<|reference_start|>Memory Lower Bounds and Impossibility Results for Anonymous Dynamic Broadcast: Broadcast is a ubiquitous distributed computing problem that underpins many other system tasks. In static, connected networks, it was recently shown that broadcast is solvable without any node memory and only constant-size messages in worst-case asymptotically optimal time (Hussak and Trehan, PODC'19/STACS'20/DC'23). In the dynamic setting of adversarial topology changes, however, existing algorithms rely on identifiers, port labels, or polynomial memory to solve broadcast and compute functions over node inputs. We investigate space-efficient, terminating broadcast algorithms for anonymous, synchronous, 1-interval connected dynamic networks and introduce the first memory lower bounds in this setting. Specifically, we prove that broadcast with termination detection is impossible for idle-start algorithms (where only the broadcaster can initially send messages) and otherwise requires $\Omega(\log n)$ memory per node, where $n$ is the number of nodes in the network. Even if the termination condition is relaxed to stabilizing termination (eventually no additional messages are sent), we show that any idle-start algorithm must use $\omega(1)$ memory per node, separating the static and dynamic settings for anonymous broadcast. This lower bound is not far from optimal, as we present an algorithm that solves broadcast with stabilizing termination using $\mathcal{O}(\log n)$ memory per node in worst-case asymptotically optimal time. In sum, these results reveal the necessity of non-constant memory for nontrivial terminating computation in anonymous dynamic networks.<|reference_end|>
@article{parzych2024memory,
    title={Memory Lower Bounds and Impossibility Results for Anonymous Dynamic
  Broadcast},
    author={Garrett Parzych and Joshua J. Daymude},
    journal={arXiv preprint arXiv:2407.09714},
    year={2024},
    archivePrefix={arXiv},
    eprint={2407.09714},
    primaryClass={cs.DC}
}