In the simulations later in this paper, we generate networks from small-world models [@watts_collective_1998] and degree-corrected blockmodels [@karrer_stochastic_2011]. In other cases, we may regard the outcome of this process as fixed; for example, we may be working with a particular network and vertices with particular characteristics, which we wish to condition on in planning our design and analysis.

When initialization is complete, we have a particular network $G=(V,E)$ with adjacency matrix ${\mathbf{A}}$.[^6] In addition to producing a graph, the initialization process could also produce a collection of vertex characteristics ${\mathbf{X}}$ that may or may not relate to the structure of the graph, but may play a role in outcome generation.

Design: Treatment assignment
----------------------------

The treatment assignment phase creates a mapping from vertices to treatment conditions. We only consider a binary treatment here (i.e., an “A/B” test), so the mapping is from vertex to treatment or control. Treatment assignment normally involves independent assignment of units to treatments, such that one unit’s assignment is uncorrelated with other units’ assignments.[^7] In this case, each unit’s treatment is a Bernoulli random variable $$Z_i \sim \text{Bernoulli}(q)$$ with probability of assignment to the treatment $q$.

The present work evaluates treatment assignment procedures that produce assignments 