Pola w matematyce zbiór cyfr, z dodatkiem i namnażanie operacji zdefiniowanych na niego, tak że spełniają one pewne axioms (opisane w Wikipedia; patrz poniżej).
Skończony pole może mieć s n elementów, gdzie p
jest liczbą pierwszą, a n
jest liczbą naturalną. W tym wyzwaniu weźmy, p = 2
a n = 8
więc stwórzmy pole z 256 elementami.
Elementami pola powinny być kolejne liczby całkowite w zakresie, który zawiera 0
i 1
:
- -128 ... 127
- 0 ... 255
- lub jakikolwiek inny taki zakres
Zdefiniuj dwie funkcje (lub programy, jeśli jest to łatwiejsze), a(x,y)
dla abstrakcyjnego „dodawania” i m(x,y)
dla abstrakcyjnego „mnożenia”, tak aby spełniały aksjomaty pola:
- Spójność:
a(x,y)
im(x,y)
dają ten sam wynik, gdy wywoływany z tymi samymi argumentami - Zamknięcie: Wynikiem
a
im
jest liczbą całkowitą w odpowiednim zakresie - Łączność: Dla każdego
x
,y
az
w tym zakresie,a(a(x,y),z)
wynosia(x,a(y,z))
; to samo dlam
- Przemienność: dla dowolnego
x
iy
w zakresiea(x,y)
jest równaa(y,x)
; to samo dlam
- Rozdzielność: dla każdego
x
,y
iz
w zakresie,m(x,a(y,z))
jest równaa(m(x,y),m(x,z))
- Elementy neutralne: dla dowolnego
x
z zakresua(0,x)
jest równex
im(1,x)
równex
- Negacja: dla każdego
x
z tego zakresu istnieje taki,y
którya(x,y)
jest0
- Odwrotny: dla każdego
x≠0
z tego zakresu istnieje taki,y
którym(x,y)
jest1
Nazwy a
i m
są tylko przykładami; możesz użyć innych nazw lub funkcji bez nazw. Wynik Twojej odpowiedzi to suma długości bajtów dla a
i m
.
Jeśli korzystasz z wbudowanej funkcji, opisz ją również słowami, które z niej wynikają (np. Podaj tabliczkę mnożenia).
a=+
m=×
?
m=×
a(2,1) = 3
, możesz mieća(2,1) = 5
tyle czasu, ile powyższe aksjomaty są spełnione.a
nie musi nic robić ze zwykłym dodatkiem, do którego jesteś przyzwyczajony, np. z zakresu liczb wymiernych.