Mějme v tělese matice . Z lineární algebry už známe: determinant , stopu a charakteristický polynom
Ovšem nikdy jsme si nedokázali Jordanovu větu, takže to bude jeden z cílů tohoto předmětu.
Pojďme si vynásobit dvě matice:
Definujeme Potom platí Zdánlivě to vypadá, že jsme si zbytečně ztížili práci. Ale všimněme si, že jsme provedli jen násobení, zatímco při postupu z definice by se jich provedlo . Pokud matice obsahuje čísla, tak je nám to k ničemu, ale pointa je v tom, že můžeme vzít matici , rozdělit ji na čtyři bloky a postup použít na ně. Ukážeme si, že když to takto budeme provádět rekurzivně, dosáhneme požadované složitosti.Co když máme matici, jejíž řád není mocnina dvojky? Jedna možnost je doplnit ji nulami (static padding). Ale tím ji můžeme zvětšit skoro čtyřikrát. Lepší možnost je dynamic padding – matici sudého řádu vždy necháme být a matici lichého řádu doplníme o jeden řádek a sloupec.
Označme počet operací při použití algoritmu na matice řádu . Máme celkem násobení a sčítání, takže platí
Rekurzivním rozepsáním se základním případem dostaneme Zároveň vidíme, že ani není potřeba moc velké na to, aby byl algoritmus rychlejší.