Un champ en mathématiques est un ensemble de nombres, avec des opérations d'addition et de multiplication définies dessus, de sorte qu'ils satisfont certains axiomes (décrits dans Wikipedia; voir aussi ci-dessous).
Un champ fini peut avoir p n éléments, où pest un nombre premier et nun nombre naturel. Dans ce défi, prenons p = 2et n = 8, créons donc un champ avec 256 éléments.
Les éléments du champ doivent être des entiers consécutifs dans une plage qui contient 0et 1:
- -128 ... 127
- 0 ... 255
- ou toute autre plage de ce type
Définissez deux fonctions (ou programmes, si c'est plus facile), a(x,y)pour "l'addition" m(x,y)abstraite , et pour la "multiplication" abstraite, de telle sorte qu'elles satisfassent les axiomes de champ:
- Cohérence:
a(x,y)etm(x,y)produit le même résultat lorsqu'il est appelé avec les mêmes arguments - Fermeture: Le résultat de
aetmest un entier dans la plage pertinente - Associativité: pour tout
x,yetzdans la plage,a(a(x,y),z)est égal àa(x,a(y,z)); pareil pourm - Commutativité: pour tout
xetydans la plage,a(x,y)est égal àa(y,x); pareil pourm - Distributivité: pour tout
x,yetzdans la plage,m(x,a(y,z))est égal àa(m(x,y),m(x,z)) - Éléments neutres: pour tout élément
xde la plage,a(0,x)est égal àxetm(1,x)est égal àx - Négation: pour toute
xla gamme, il existe ceyquia(x,y)est0 - Inverse: pour toute
x≠0la gamme, il existe ceyquim(x,y)est1
Les noms aet ne msont que des exemples; vous pouvez utiliser d'autres noms ou fonctions sans nom. Le score de votre réponse est la somme des longueurs d'octets pour aet m.
Si vous utilisez une fonction intégrée, veuillez également décrire en mots le résultat qu'elle produit (par exemple, fournir une table de multiplication).
a=+ m=×?
m=×
a(2,1) = 3, vous pourriez en avoira(2,1) = 5tant que les axiomes ci-dessus sont satisfaits.an'a rien à faire avec l'ajout habituel auquel vous êtes habitué, par exemple dans le domaine des nombres rationnels.