Twierdzenie Schreiera – twierdzenie teorii grup mówiące, że dowolne dwa ciągi podnormalne grupy mają równoważne zagęszczenia, tzn. zagęszczenia o izomorficznych ilorazach, niekoniecznie w tej samej kolejności.
Twierdzenie zostało odkryte przez Ottona Schreiera w 1928 roku w wyniku próby uproszczenia dowodu twierdzenia Jordana-Höldera (dowolne dwa ciągi kompozycyjne danej grupy są równoważne, o ile tylko grupa ma ciąg kompozycyjny); sześć lat później Hans Zassenhaus opublikował lemat nazwany jego nazwiskiem w celu ulepszenia dowodu twierdzenia Schreiera – stąd pochodzi rzadsza, zamiennie stosowana nazwa twierdzenia: twierdzenie Schreiera-Zassenhausa. W przypadku uogólnień niekiedy spotyka się też nazwę twierdzenie Jordana-Höldera-Schreiera.
Innym zastosowaniem twierdzenia Schreiera jest możliwość wykazania, że w grupie z (co najmniej jednym) ciągiem kompozycyjnym dowolny ciąg podnormalny można zagęścić do ciągu kompozycyjnego: wystarczy zacząć od ciągów podnormalnego i kompozycyjnego konstruując ich równoważne zagęszczenia zgodnie z twierdzeniem – zagęszczenie ciągu normalnego stanie się ciągiem kompozycyjnym po zastąpieniu wszystkich powtarzających się podgrup w zagęszczeniu pojedynczym egzemplarzem każdej z tych podgrup (zob. lemat do twierdzenia Jordana-Höldera).
Sam autor zasygnalizował w przypisach, że twierdzenie zachodzi również dla grup z operatorami, jednak twierdzenie uogólnia się też na moduły, a nawet kraty modularne (dla których zachodzi lemat Zassenhausa pociągający twierdzenie Schreiera).
Niech

oraz

oznaczają dwa ciągi podnormalne grupy
(
oznacza podgrupę trywialną).
Wówczas istnieją równoważne ciągi
grupy
będące odpowiednio zagęszczeniami ciągów
Między każdymi dwiema grupami
a
skonstruowany zostanie z ciągu
taki ciąg, który będzie zaczynać się od
i kończyć na
Istnieją dwa naturalne sposoby osiągnięcia tego celu: pierwszym jest pomnożenie każdego z wyrazów ciągu
przez
(dzięki temu otrzymany ciąg będzie się zaczynał od
) oraz przecięcie iloczynów z
(dzięki temu zmieniony ciąg będzie się kończył na
); drugim sposobem jest przecięcie każdego z wyrazów
z
(dzięki czemu otrzymany ciąg będzie się kończył na
) i pomnożenie przecięć przez
(dzięki czemu otrzymany ciąg będzie się zaczynał od
) – jednak zgodnie z prawem modularności Dedekinda oba te ciągi między
a
są identyczne.
Niech
i podobnie
(
). Ponieważ
to
(jako iloczyn półprosty; zob. iloczyn kompleksowy). W ten sposób
jest podgrupą w
i podobnie
jest podgrupą w
Dlatego

oraz

Zgodnie z lematem Zassenhausa (przy oznaczeniach
) otrzymuje się, dla każdego

oraz

Zatem
oraz
Stąd
jest ciągiem między
a
a
jest ciągiem między
oraz
Zapisując kolejno wyrazy
otrzymuje się ciąg
grupy
o
ilorazach; podobnie zapisując kolejno wyrazy
otrzymuje się ciąg
grupy
o
ilorazach. Ciąg
jest zagęszczeniem
a
jest zagęszczeniem
Ostatecznie, wobec istnienia izomorfizmów
ciągi
i
są równoważne.