Koodausteoriassa McWilliamsin teoreema muodostaa yhteyden lineaarisen koodin painofunktion ja sen kaksoiskoodin painofunktion välille . Yksi lauseen seurauksista on saada koodin kardinaalisuuden yläraja. Nimetty englantilaisen Florence McWilliamsin mukaan
Olkoon binääri lineaarinen koodi pituus . Koodin painojakauma on numeerinen sekvenssi, jossa ilmaisee painosanojen lukumäärää :
.Painofunktio (tai painonlaskija ) on kahden muuttujan polynomi
Merkitse kaksoiskoodi merkillä
jossa tarkoittaa vektoreiden skalaarituloa vektoriavaruudessa .
McWilliamsin lause sanoo sen