ADS2 Jiří Kalvoda: Cvičení 8
Also available as: PDF Markdown
Informace k cv. jsou na https://kam.mff.cuni.cz/~jirikalvoda/vyuka/25z/ads2.
Příští týden se sice přednáška nekoná (Den otevřených dveří), ale cvičení ano!
Fourierova transformace
Fourierův obraz vektoru je vektor , kde .
Kde je primitivní -tá odmocnina z (v komplexních číslech nebo případně v konečném tělese).
Alternativně lze zobrazení vyjádřit jako násobení maticí, tedy , kde matice (indexujeme-li od 0).
Na přednášce zazněl algoritmus FFT počítající DFT (Diskrétní Fourierovu transformaci) v čase pomocí rekurzivního podrozdělování. A také aplikace v podobě násobení polynomů, protože po Fourierově transformaci místo konvoluce stačí sečíst vektory po složkách.
Úloha 1 (Vlastnosti): O jakých vlastnostech vektoru vypovídá nultý a -tý koeficient jeho Fourierova obrazu?
Úloha 2 (Obraz kanonické báze): Jak vypadá Fourierův obraz jednotkového vektoru , tedy vektoru, který má jedničku na pozici a jinde 0?
Úloha 3 (Inverze kanonické báze): Pro každé najděte vektor, jehož Fourierovým obrazem je . Jak z toho sestrojit inverzní Fourierův obraz?
Úloha 4 (Rotace): Mějme vektor , který vznikl rotací vektoru o pozic, tedy Jak spolu souvisí Fourierovy obrazy a ?
Úloha 5 (Odmocniny z jedničky): Kolik existuje -tých odmocnin jedničky a jak vypadají? Proč jiná čísla nejsou -tou odmocninou z jedničky? Které z -tých odmocnin jedničky jsou primitivní?
Úloha 6 (Permutace): Ve Fourierově transformaci máme volnost v tom, jakou primitivní odmocninu si vybereme. Ukažte, že Fourierovy obrazy pro různé volby se liší pouze pořadím složek.
Úloha 7 (Bonus pro milovníky komplexních čísel): Spočítejte druhou mocninu polynomu pomocí DFT, tedy .
Hradlové sítě
Úloha 8 (Enumerace): Jak vypadají všechny booleovské funkce dvou proměnných s jedním bitem výstupu?
Úloha 9 (Úplnost): Dokažte, že každou booleovskou funkci dvou proměnných lze vyjádřit pomocí hradel and, or a not. Proto lze každý booleovský obvod s nejvýše dvouvstupovými hradly upravit tak, aby používal pouze tyto tři typy hradel. Jeho hloubka přitom vzroste pouze konstanta-krát.
Úloha 10 (Minimalismus): A co pomocí nějaké dvojice z hradel and, or a not? Nebo dokonce jen pomocí jednoho z nich? Rozeberte všechny podmnožiny těchto tří hradel a určete (konstrukce nebo důkaz neexistence), jestli pomocí ní lze vyjádřit všechny funkce. Pokud s žádnou jednoprvkovou podmnožinou neuspějete, jde použít nějaké jiné hradlo?