Modulární aritmetika
Modulární aritmetika je upravený systém aritmetiky pro celá čísla, někdy odkazoval se na jak 'aritmetika hodin', kde čísla ' se zalomit kolem ' po oni dosáhnou jisté hodnoty ( modulus). Například, zatímco 8 + 6 se rovná 14 v tradiční aritmetice, v modulu 12 aritmetiky odpověď je 2, jak 2 je zbytek po dělení 14 modulus 12.| Tabulka s obsahem |
| 1 definice modula 2 aplikace modulární aritmetiky 3 shodné modulo 4 vnější zdroje |
Jestliže je některý celé číslo a n je pozitivní celé číslo, my píšeme mod n pro zbytek v {0,..., n- 1} to nastane jestliže je rozdělen n. Například, 23 mod 12 = 11 (vypočítavosti mod 12 jsou jaké jedny laně když změní čas od 24 hodin hodiny k 12 hodin hodiny).
V některých programovacích jazycích, tato operace je psána jak % n.
V praxi x mod y moci být spočítán rovnicemi používání, v podmínkách ostatních funkcí. Rozdíly vyvstanou shodovat se k rozsahu proměnných, který v obyčejných implementacích je širší než v definici právě daný.
V podmínkách podlahové funkční podlahy (z), největší celé číslo méně než nebo se rovnat k z:
x mod y = x - y * podlaha (x/y).
V podmínkách truncation k celé části (známý jak zůstat () na několika kalkulačkách a vždy pozitivní; hrál C je vestavěný % operátor):
x mod y = x - y * iPart (x/y)
V případě podlahy, dělitel záporu vyústí v negativní modulus (například, pod touto definicí, 1 mod - 2 = - 1). Výsledná funkce je co je znáno jak mod () na kalkulačkách a je realizován v některých vysokoúrovňových jazycích, včetně Perl. Perl také používá % operátor ukázat modulus operaci, zmiňovat se o / operátor divize.
Obě definice počítají s x a y být psán jako celá čísla nebo racionální čísla.
Výraz x mod 0 je undefined ve většině numerických systémů, ačkoli někteří přece definují to být x.
Modulární aritmetika, nejprve systematicky studoval Carl Friedrich Gauss u konce osmnáctého století, je aplikován v teorii čísel, abstraktní algebře, kryptografiia vizuálním a hudebním umění.
Základní aritmetické operace vykonávané většinou počítači jsou vlastně modulární aritmetika, kde modulus je 2b (b být množství kousků hodnot být operován). Toto přijde ke světlu v kompilaci programovací jazyky takový jak C; kde například aritmetické operace na “int” celých číslech jsou všechny zaujaté modulo 232, na většině počítačích.
V hudbě, protože oktáva a enharmonic equivalency (to je, se připojí 1/2 nebo 2/1 poměr být rovnocenný, a C # je stejný jako Db), modulární aritmetika je použita v zvážení dvanácti tónu stejně temperované měřítko, obzvláště v dvanácti tónu hudba. Ve vizuálním umění modulární aritmetika může být používána tvořit umělecké struktury založené na násobení a sčítání modulo stolů n [1].
My voláme dvě celá čísla , b shodné modulo n, psaný jak
- a equiv; b (mod n) jestliže jejich rozdíl a bez; b je dělitelný n, tj. jestliže a bez; b = kn pro nějaké celé číslo k.
Tady je příklad zápisu shodnosti.
- 14 a equiv; 26 (mod 12).
Jestliže a b být celá čísla, shodnost
- zrušit a equiv; b (mod n)
Tento vztah rovnocennosti má důležité vlastnosti, které následují bezprostředně od definice: jestliže
- 1 a equiv; b1 (mod n) a 2 a equiv; b2 (mod n)
- 1 + 2 a equiv; b1 + b2 (mod n)
- 12 a equiv; b1b2 (mod n).
- []n + [b]n = [ + b]n
- []n[b]n = [ab]n
- [8]12[3]12 + [6]12 = [30]12 = [6]12.
V kruhu celých čísel, jestliže my považujeme rovnici za sekyru a equiv; 1 (mod n), pak my vidíme to má násobení inverzní jestliže a jediný jestliže a n coprime. Proto, Z/nZ je pole jestliže a jediný jestliže n je připravit. To může být ukazováno že každé konečné pole je rozšíření Z/pZ pro některé připravit p.
Důležitý fakt o moduli prvočísla je Fermat malý teorém: jestliže p je prvočíslo a je některý celé číslo, pak
- p a equiv; (mod p).
- a phi; (n) a equiv; 1 (mod n),
- Perl aritmetická povznesení -- vysvětlí úvahu za Perl % operátor
- Modulární aritmetika...