Úvod do diskrétní matematiky
V kontextu diskrétní matematiky je význam slova diskrétní zaměnitelný se slovem nespojitý, neboli se zabývá strukturami, které lze považovat za nespojité.
Pro nespojité struktury existuje [[Typy zobrazení#Bijektivní zobrazení|bijektivní zobrazení]] s [[Číselné množiny#Přirozená čísla|množinou přirozených čísel]].
Řešení vzorových testů
Řešení příkladů z PDF
Úloha 1
Zadání
Převeďte následující čísla do číselných soustav:
Počet číslic převodu
Pokud si z nějaké soustavy převedeme číslo do desítkové, můžeme spočítat, kolik číslic bude mít číslo \(N\) po převodu do základu \(b\).
Úloha 2
Zadání
Pomocí euklidova algoritmu nalezněte \(NSD(a, b), kde\)
- 106050, 156450
- 548245, 9649112
- 473200, 4474106
- 1765161, 420753
- 3002389, 231608
- 1572487, 253942
Úloha 3
Zadání
Pomocí euklidova algoritmu nalezněte \(NSN(a, b), kde\)
- 13440, 19740
- 11550, 16950
Úloha 4
Zadání
Vyjádřete \(NSD(13 440,19 740)\) ve tvaru Bezoutovy rovnosti.
Co je bezoutova rovnost?
Bezoutova rovnost říká, že největší společný dělitel dvou přirozených čísel je jejich lineární kombinace.
Výpočet NSD
Tabulka rozvoje v řetězové zlomky
| i | -1 | 0 | 1 | 2 | 3 |
|---|---|---|---|---|---|
| q | - | 1 | 2 | 7 | 2 |
| P | 1 | 1 | 3 | 22 | 47 |
| Q | 0 | 1 | 2 | 15 | 32 |
Úloha 5
Zadání
Určete \(NSD(a, b)\) pomocí dvojkového NSD algoritmu.
- 112, 161
- 130, 234
- 105, 231
Úloha 6
Zadání
Rozhodněte, která z následujících čísel jsou prvočísla: 983; 837;
Úloha 7
Zadání
Určete počet dělitelů a součet dělitelů čísla 17 439 786;
Úloha 8
Zadání
Pomocí kanonických rozkladů určete NSD/NSN čísel a = 2 598 225, b = 6 101 550.
Úloha 9
!!! "Zadání" Určete \(\varphi{(n)}\), kde
1. $\varphi{(2478175)}$
2. $\varphi{(367)}$
Úloha 10
Zadání
Nakreslete grafy funkcí
- \(1 - 2\lceilx\rceil, x \in \left<-2,2\right>\)
- \(\left\lfloor\frac{x^2}{2}-3\right\rfloor, x \in \left<-3,3\right>\)
Řešení k testu 6.2.2020
Úloha 1
Nechť \(a = 210 600, b = 117000, c = 268125\). Určete počet všech společných dělitelů čísel a, b, c a všechny je vypiště (vlastní i nevlastní). Určete \(\varphi(NSN(a, b, c,))\), kde \(\varphi\) označuje Eulerovu funkci.
Rozklady čísel na prvočísla
- \(210600 = 2^3 \cdot 3^4 \cdot 5^2 \cdot 13\)
- \(117000 = 2^3 \cdot 3^2 \cdot 5^3 \cdot 13\)
- \(238125 = 3^1 \cdot 5^4 \cdot 11 \cdot 13\)
Rozklad čísla 210 600
flowchart LR
r1(210 600)
r1 --> r2(100)
r2 --> r4([5])
r2 --> r5(20)
r5 --> r6([5])
r5 --> r7(4)
r7 --> r8([2])
r7 --> r9([2])
r1 --> r3(2106)
r3 --> r10([2])
r3 --> r11(1053)
r11 --> r12([3])
r11 --> r13(351)
r13 --> r14([3])
r13 --> r15(117)
r15 --> r16([3])
r15 --> r17(39)
r17 --> r18([3])
r17 --> r19([13])
Rozklad čísla 117 000
flowchart LR
r1(117 000)
r1 --> r2(1000)
r2 --> r4([5])
r2 --> r5(200)
r5 --> r6([5])
r5 --> r7(40)
r7 --> r8(5)
r7 --> r9(8)
r9 --> r10([2])
r9 --> r11(4)
r11 --> r12([2])
r11 --> r13([2])
r1 --> r14(117)
r14 --> r15([3])
r14 --> r16(39)
r16 --> r17([13])
r16 --> r18([3])
Rozklad čísla 268 125
flowchart LR
r1(268125)
r1 --> r3([5])
r1 --> r2(53625)
r2 --> r5([5])
r2 --> r4(10725)
r4 --> r7([5])
r4 --> r8(2145)
r8 --> r9([5])
r8 --> r10(429)
r10 --> r11([3])
r10 --> r12(143)
r12 --> r13([13])
r12 --> r14([11])
Určení NSD
Pokud máme čísla \(a, b, c\) v jejich prvočíselném rozkladu, můžeme určit největšího společného dělitele. Ten se spočítá jako součin nejvyšších společných mocnic. To znamená, že musíme najít taková čísla a jejich mocniny, která jsou obsažena v každém zkoumaném čísle.
Pro názornost udělám tabulku četností prvočísel. Vybíráme takové číslo, které je ve sloupci nejmenší (samozřejmě kromě čísla označující prvočíslo, jehož četnost je popisována). Výsledný nejmenší společný dělitel \(NSD(a, b, c) = 3 \cdot 5^2 \cdot 13\).
| Číslo | 2 | 3 | 5 | 11 | 13 |
|---|---|---|---|---|---|
| 210600 | 3 | 4 | 2 | 0 | 1 |
| 11700 | 3 | 2 | 3 | 0 | 1 |
| 268125 | 0 | 1 | 4 | 1 | 1 |
| NSD | 0 | 1 | 2 | 0 | 1 |
Počet společných dělitelů
Počet společných dělitelů čísla lze vypočítat pomocí vztahu:
Určení všech dělitelů čísla
| Pořadí | Rozklad | Číslo |
|---|---|---|
| 1 | \(3^1 \cdot 5^2 \cdot 13^1\) | 975 |
| 2 | \(3^0 \cdot 5^2 \cdot 13^1\) | 325 |
| 3 | \(3^1 \cdot 5^1 \cdot 13^1\) | 195 |
| 4 | \(3^1 \cdot 5^2 \cdot 13^0\) | 75 |
| 5 | \(3^0 \cdot 5^1 \cdot 13^1\) | 65 |
| 6 | \(3^1 \cdot 5^0 \cdot 13^1\) | 39 |
| 7 | \(3^0 \cdot 5^2 \cdot 13^0\) | 25 |
| 8 | \(3^1 \cdot 5^1 \cdot 13^0\) | 15 |
| 9 | \(3^0 \cdot 5^0 \cdot 13^1\) | 13 |
| 10 | \(3^0 \cdot 5^1 \cdot 13^0\) | 5 |
| 11 | \(3^1 \cdot 5^0 \cdot 13^0\) | 3 |
| 12 | \(3^0 \cdot 5^0 \cdot 13^0\) | 1 |
Určení NSN
K další úloze bude potřeba spočítat nejmenší společný násobek. Ten se spočítá jako podíl součinu všech čísel a největšího společného dělitele.
Konkrétní číslo nebudeme dopočítávat, protože se na něj zadání neptá a v další části, kde počítáme výsledek Eulerovy funkce, není potřeba.
Výpočet Eulerovy funkce
Úloha 2
Uvažujte diofantickou rovnici \(803x - 1397y = -1969\).
- Nalezněte všechna její celočíselná řešení.
- Určete řešení vyhovující podmínce - složka \(x\) je největší celé číslo menší než -2020.
Ověření řešení diofantické rovnice
Než začneme s výpočtem, je potřeba ověřit, zda má diofantická rovnice nějaké celočíselné řešení. Pokud rozložíme všechna čísla na prvočinitele, zjistíme, že mají společný faktor 11. Platí, že \(NSD(a, b) = 11\). Protože číslo 11 je také součástí prvočíselného rozkladu čísla \(c\), znamená to, že největší společný dělitel \(a\) a \(b\) dělí i číslo \(c\). Z toho vyplývá, že diofantická rovnice má řešení.
Řešení diofantické rovnice
Diofantická rovnice \(ax + by = c\) má řešení, pokud \(NSD(a, b) \mid c\).
Rozklady čísel
Rozklad čísla 803
flowchart LR
r1(803)
r1 --> r3([11])
r1 --> r2(73)
Rozklad čísla 1397
flowchart LR
r1(1397)
r1 --> r3([11])
r1 --> r2(127)
Rozklad čísla 1969
flowchart LR
r1(1397)
r1 --> r3([11])
r1 --> r2(179)
Řešení rovnice přes vzorečky
Řešení lineární diofantické rovnice začíná zjednodušením rovnice vydělením všech koeficientů jejich největším společným dělitelem (zde 11), což vede k jednodušší rovnici. Dále pomocí rozšířeného Eukleidova algoritmu a tabulky rozvoje v řetězové zlomky najdeme základní řešení rovnice, konkrétně \(x=−40\) a \(y=−23\). Tyto hodnoty platí pro pravou stranu upravené rovnice \(73x - 127y = 1\), nyní je potřeba je upravit, aby byly pro rovnici \(73x - 127y = -179\). Nalezené Bezoutovy koeficienty tak vynásobíme pravou stranou, což tady je \(-179\) a tím získáme partikulární řešení \(x_0 = 7160\) a \(y = 4117\).
Tabulka rozvoje v řetězové zlomky
| i | -1 | 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|---|---|
| q | - | 1 | 1 | 2 | 1 | 5 | 3 |
| P | 1 | 1 | 2 | 5 | 7 | 40 | 127 |
| Q | 0 | 1 | 1 | 3 | 4 | 23 | 73 |
Řešení pomocí kongruencí
Teď musíme najít celočíselná řešení této rovnice, což znamená, že hledáme hodnoty \(y\), pro které bude čitatel \(−179+127y\) dělitelný číslem 73. Jinými slovy, potřebujeme zjistit, pro které hodnoty \(y\) platí, že zbytek po dělení \(−179+127y\) číslem 73 je nula. K tomu používáme kongruence, protože kongruence nám umožňují zjistit, které hodnoty dávají konkrétní zbytek po dělení.
Nyní už postupujeme standardně jako u řešení každé jiné lineární kongruence. Pomocí euklidova algoritmu najdeme multiplikativní inverzi k číslu 54 a následně dostaneme upravenou kongruenci tak, abychom ji měli ve tvaru \(y = ? \pmod{73}\).
Našli jsme obecné řešení pro \(y\) - nyní nám zbývá akorát nalézt \(x\). To můžeme provést buďto dosazením do původní rovnice, a nebo do výrazu, kdy jsme si už \(x\) z rovnice vyjadřovali.
Ve výsledku máme tedy následující řešení rovnice:
- Obecné řešení \(x = 48 + 127k\), \(y = 29 + 73k\), \(k \in \mathbb{Z}\)
- Partikulární řešení \(k = 0\), \(x = 48\), \(y = 29\)
Zkouška
Ověříme správnost partikulárního řešení dosazením do původní rovnice:
Pro srandu ověříme ještě jedno řešení, například \(k = 2\):
Nalezení největšího celého x menší než -2020
Úloha 3
Uvažujte soustavu kongruencí \(2x \equiv -6 \pmod{15}\), \(2x \equiv 3 \pmod{9}\), \(3x \equiv -9 \pmod{10}\), \(3x \equiv -15 \pmod{8}\).
- Uvedenou soustavu vyřešte
- Kolik celých čísel dané soustavě vyhovuje?
- Určete největší \(x_0\), které vyhovuje dané kongruenci a navíc platí \(|x_0 + 2020| < 250\)
Řešení soustavy
Kolik celých čísel soustavě vyhovuje?
Nekonečně mnoho - ta, pro která je zbytek po dělení 360 roven 267.
Najděte největší x, které vyhovuje podmínce
Úloha 4
Nechť \(f(x), g(x) \in \mathbb{Z}_7 \mod{(2x^4 + 4x^2 + 5x + 1)}\), kde \(f(x) = 6x^3 + 2x^2 + 4\) a \(g(x) = 5x^3 + 3x^2 + 2x + 6\).
- Spočtěte \(f(x) \cdot g(x)\)
- Rozhodněte, zda je \(f(x)\) ireducibilní nad \(\mathbb{Z}_7\). Své tvrzení řádně zdůvodněte!
Výpočet součinu
| \(x^6\) | \(x^5\) | \(x^4\) | x^3 | x^2 | x^1 | x^0 |
|---|---|---|---|---|---|---|
| 30 | 18 | 12 | 36 | |||
| 10 | 6 | 4 | 12 | |||
| 20 | 12 | 8 | 24 | |||
| 30 | 28 | 18 | 60 | 24 | 8 | 24 |
Výsledek součinu \(f(x) \cdot g(x)\) v \(\mathbb{Z}_7 \mod{(2x^4 + 4x^2 + 5x + 1)}\) je \(6x^3 + 2x^2 + x + 3\).
Je polynom ireducibilní?
Polynom je ireducibilní v \(\mathbb{Z}_7\), pokud nemá v \(\mathbb{Z}_7\) ani jeden kořen. To znamená, že musí platit \(f(x)\neq 0, x \in \mathbb{Z}\).
Dále nemusíme počítat, protože jsme nalezli kořen polynomu \(f(x) = 6x^3 + 2x^2 + 4\) v \(\mathbb{Z}_7\). Polynom je tedy reducibilní, protože lze dále rozložit na součin polynomů.
Úloha 5
Rozhodněte, zda množina čísel \(\{2020 \cdot m \mid m \in \mathbb{Z}\}\) tvoří:
- Multiplikativní grupu
- Aditivní grupu
Vlastnosti grupy
Pro grupu \(G(M, *)\) nad množinou \(M\) s operací \(*\) musí platit následující vlastnosti:
- Operace \(*\) je uzavřená vůči množině \(M\), tj. \(\forall x, y \in M: x * y \in M\)
- Operace \(*\) je asociativní, tj. \(\forall x, y, z \in M: x * (y * z) = (x * y) * z\)
- Pro operaci \(*\) existuje neutrální prvek \(e\) takový, že \(\forall x, \exists e \in M: x * e = e * x = x\)
- Pro operaci \(*\) existuje inverzní prvek \(i\) takový, že \(\forall x, \exists i \in M: x * i = i * x = e\)
Multiplikativní grupa
Uvažujme grupu \(G(M, \cdot)\).
Uzavřenost operace
Operace násobení je pro celá čísla uzavřená, což znamená, že součin \(m \cdot n\) také patří mezi celá čísla. Platí ale, že součin tohoto výrazu s číslem \(2020^2\) náleží do množiny \(M\)? Ano, protože prvky množiny \(M\) jsou definovány jako násobky čísla 2020, a \(2020^2\) je rovněž násobkem 2020. Výsledkem je tedy násobek čísla 2020 vynásobený celým číslem, což odpovídá definici prvků množiny \(M\). Proto je operace násobení uzavřená i vůči množině \(M\).
Asociativita
Existence neutrálního prvku
Neutrální prvek v grupě \(G(M, \cdot)\) neexistuje, protože \(\frac{1}{2020 \cdot n}\) není celé číslo.
Existence inverzního prvku
Dokazovat existenci inverzního prvku \(i\) nemá smysl, protože jeho definice spoléhá na existenci neutrálního prvku \(e\). Ovšem pro názornost zde předvedu, že opravdu neexistuje. Pro násobení v celých číslech je neutrálním prvkem číslo \(1\), tudíž budeme uvažovat, že tohle je i neutrální prvek naší množiny \(M\) (jak jsme ale dokázali v předchozím odstavci, není to pravda!).
Aditivní grupa
Uvažujme grupu \(G(M, +)\).
Uzavřenost operace
Operace sčítání je pro celá čísla uzavřená, což znamená, že součet \(m+n\) také patří mezi celá čísla. Platí ale, že součin tohoto výrazu s číslem \(2020\) náleží do množiny \(M\)? Ano, protože prvky množiny \(M\) jsou definovány jako celočíselné násobky čísla 2020. Výsledkem je násobek čísla 2020 vynásobený celým číslem, což odpovídá definici prvků množiny \(M\). Proto je operace sčítání uzavřená i vůči množině \(M\).
Asociativita
Existence neutrálního prvku
Neutrální prvek v grupě \(G(M, +)\) existuje a je to \(0\).
Existence inverzního prvku
Závěry
Množina \(M = \{2020 \cdot m \mid m \in \mathbb{Z}\}\)
- Netvoří multiplikativní grupu \(G(M, \cdot)\), protože neexistuje neutrální a inverzní prvek, který by byl součástí množiny \(M\).
- Tvoří aditivní grupu \(G(M, +)\) s neutrálním prvkem \(e = 0\) a inverzním prvkem \(i = -2020 \cdot m\).
Řešení k testu 4.3.2021
Úloha 1
Nalezněte řešení následující soustavy kongruencí
Řešení zapiště v soustavě nejmenších nezáporných zbytků vhodného modulu.
Úloha 2
Uvažujte zdrojovou abecedu \(\begin{array}{cccccc}a & b & c & d & e & f \\ 0.3 & 0.2 & 0.2 & 0.1 & 0.1 & 0.1 \end{array}\). Dekódujte text \((.100011)_2\), který vzniknul zakódováním textu o délce 3 znaky, jestliže byla použita metoda DFWLD.
Úloha 3
Nechť \(f(x), g(x) \in \mathbb{Z}_5 [x]\), kde \(f(x) = 3 + x + x^5 + 2x^6\) a \(g(x) = 1 + x + 3x^2 + 2x^3 + 4x^4\). Nalezněte \(NSD(f(x), g(x))\) a vyjádřete ho ve tvaru \(a(x) \cdot f(x) + b(x) \cdot g(x)\).
Úloha 4
Rozhodněte, zda číslo \(666!\) končí lichým, nebo sudým počtem nul. Své tvrzení řádně zdůvodněte!
Základem je si ujasnit co generuje ty nuly na konci. Jsou to násobky 5 krát násobky 2 (sudá čísla). Protože sudých čísel je mnohem víc než násobků 5 a tedy ke každému násobku 5 najdeme sudé číslo, stačí se soustředit na to kolik máš v daném faktoriálu čísel dělitelných 5. Pro 60! tedy stačí spočítat 60/5=12. Ovšem pozor na mocniny 5, v tomto případě je nutno vzít v úvahu pouze druhou mocninu 5, tedy 25. 25=5*5 a je tedy zapotřebí 60/25=2 a zbytek 10, který je irelevantní. Konečný počet 0 je tedy 12+2=14 Pro názornost: Kolika nulami končí číslo 1026! ? 1026/5=205(1) 1026/25=41(1) 1026/125=8(26) 1026/625=1(401) 3125 už je větší než 1026 a nemusím se jím tedy zabývat. v ()jsou zbytky které nás nemusejí zajímat. V konečném součtu je tedy na konci 1026! 205+41+8+1=255 nul. Doufám, že ti to pomohlo :)
Úloha 5
Nechť \(\pi, \rho \in S_7\), kde \(\pi = (2,4,3,7,1)(3,1,2)(5,6,3,4)\) a \(\rho = (3,2,5,4,1)(7,5,3,1)(2,6,1,5,4)\).
(1,4)(2,5,6,3,7)
- Spočtěte \(\pi^{-1}\) a \(\rho^{-1}\)
- Spočtěte \(\pi^{-1} \cdot \rho \cdot \pi\)
Veškeré výsledky zapiště ve tvaru součinu disjunktních cyklů.
Řešení k testu 9.2.2021
Úloha 2
Nechť \(\pi, \rho \in S_7\), kde \(\pi = \left(\begin{array}1 & 2 & 3 & 4 & 5 & 6 & 7 \\7 & 1 & 4 & 6 & 2 & 3 & 5\end{array}\right)\), \(\rho = (2615)(1427)(436)\).
- Permutace \(\pi, \rho\) zapiště ve tvaru součinu disjunktních cyklů
- Spočtěte \(\pi \cdot \rho\)
- Ze vztahu \(x \cdot \rho^{-1} \cdot x^{-1} = (x \cdot \pi)^{-1}\) vyjádřete \(x\) v co nejjednoduším tvaru a dopočtěte jeho hodnotu.
Výsledky zapiště vždy ve tvaru součinu disjunktních cyklů