Un campo in matematica è un insieme di numeri, con operazioni di addizione e moltiplicazione definite su di esso, in modo tale da soddisfare determinati assiomi (descritti in Wikipedia; vedi anche sotto).
Un campo finito può avere p n elementi, dove p
è un numero primo ed n
è un numero naturale. In questa sfida, prendiamo p = 2
e n = 8
, quindi, creiamo un campo con 256 elementi.
Gli elementi del campo devono essere numeri interi consecutivi in un intervallo che contiene 0
e 1
:
- -128 ... 127
- 0 ... 255
- o qualsiasi altro intervallo del genere
Definire due funzioni (o programmi, se è più semplice), a(x,y)
per "addizione" m(x,y)
astratta e per "moltiplicazione" astratta, in modo tale da soddisfare gli assiomi di campo:
- Coerenza:
a(x,y)
em(x,y)
produce lo stesso risultato quando viene chiamato con gli stessi argomenti - Chiusura: il risultato di
a
edm
è un numero intero nell'intervallo pertinente - Associatività: per qualsiasi
x
,y
ez
nell'intervallo,a(a(x,y),z)
è uguale aa(x,a(y,z))
; lo stesso perm
- Commutatività: per qualsiasi
x
ey
nell'intervallo,a(x,y)
è uguale aa(y,x)
; lo stesso perm
- Distributività: per qualsiasi
x
,y
ez
nella gamma,m(x,a(y,z))
è uguale aa(m(x,y),m(x,z))
- Elementi neutri: per qualsiasi valore
x
compreso nell'intervallo,a(0,x)
è uguale ax
edm(1,x)
è uguale ax
- Negazione: per ogni
x
nell'intervallo, esiste taley
chea(x,y)
sia0
- Inversa: per ogni
x≠0
nell'intervallo, esiste taley
chem(x,y)
sia1
I nomi a
e m
sono solo esempi; puoi usare altri nomi o funzioni senza nome. Il punteggio della risposta è la somma delle lunghezze di byte per a
e m
.
Se si utilizza una funzione integrata, descrivere anche a parole il risultato che produce (ad es. Fornire una tabella di moltiplicazione).
a=+
m=×
?
m=×
a(2,1) = 3
, si potrebbe averea(2,1) = 5
fino a quando gli assiomi sopra sono soddisfatti.a
non deve fare nulla con la solita aggiunta a cui sei abituato, ad esempio, dal campo dei numeri razionali.