FAV-ZCU/KMA DMA/Otázky ke zkoušce/05. Modulární počítání.md

22 lines
1.2 KiB
Markdown

# Modulární počítání
## Eukleidův algoritmus
Algoritmus pro nalezení největšího společného dělitele čísel $a$ a $b$. Největšího společného dělitele označíme jako $\gcd(a, b)$.
Mějme $a = 57, b = 27$. Platí, že $c = \gcd(a, b)$ dělí $a$ a rovněž $b$, dělí tedy i rozdíl $a-b = 30$. Pokud nyní najdeme $\gcd(30, 27)$, získáme i $\gcd(57, 27)$. Aplikacím tohoto postupu dostaneme postupně $\gcd(30, 27) = \gcd(3, 27) = 3$, tedy i $\gcd(57, 27) = 3$.
## Modulární aritmetika
Ekvivalence $\sim$ na množině $X$ je relace na $X$, která je reflexivní, symetrická a tranzitivní.
Ekvivalence, která zachovává operace definované na množině, se nazývá **kongruence**. Jedna z takových kongruencí je například kongruence modulo $p$.
**Definice**
- Nechť $p \geq 1$ je přirozené číslo. Definujme na množině všech celých čísel relaci $\equiv$ (kongruenci modulo $p$) předpisem $x \equiv y$, pokud $p$ dělí rozdíl $x - y$.
Zapisujeme $x \equiv y \quad (\text{mod } p)$.
Pro $a \in \mathbb{Z}_{n}$ rozumíme opačným prvkem prvek $x \in \mathbb{Z}_{n}$ takový, že řeší rovnici $a \cdot x \equiv 1 \quad (\text{mod } n)$. Značíme jej $-a$.
TODO