Một trường trong toán học là một tập hợp các số, với các phép toán cộng và nhân được định nghĩa trên nó, sao cho chúng thỏa mãn các tiên đề nhất định (được mô tả trong Wikipedia; xem thêm bên dưới).
Một trường hữu hạn có thể có các phần tử p n , trong đó p
là số nguyên tố và n
là số tự nhiên. Trong thử thách này, chúng ta hãy thực hiện p = 2
và n = 8
, vì vậy hãy tạo một trường có 256 phần tử.
Các phần tử của trường phải là các số nguyên liên tiếp trong một phạm vi có chứa 0
và 1
:
- -128 ... 127
- 0 ... 255
- hoặc bất kỳ phạm vi khác như vậy
Xác định hai hàm (hoặc chương trình, nếu dễ hơn), a(x,y)
cho m(x,y)
"phép cộng" trừu tượng và cho "phép nhân" trừu tượng, sao cho chúng thỏa mãn các tiên đề của trường:
- Tính nhất quán:
a(x,y)
vàm(x,y)
tạo ra kết quả tương tự khi được gọi với cùng các đối số - Độ kín: Kết quả của
a
vàm
là một số nguyên trong phạm vi có liên quan - Associativity: cho bất kỳ
x
,y
vàz
trong phạm vi,a(a(x,y),z)
bằnga(x,a(y,z))
; tương tự chom
- Giao hoán: cho bất kỳ
x
vày
trong phạm vi,a(x,y)
bằnga(y,x)
; tương tự chom
- Phân phối: cho bất kỳ
x
,y
vàz
trong phạm vi,m(x,a(y,z))
bằnga(m(x,y),m(x,z))
- Các yếu tố trung tính: cho bất kỳ
x
trong phạm vi,a(0,x)
bằngx
vàm(1,x)
bằngx
- Phủ định: đối với bất kỳ
x
trong phạm vi, tồn tại như vậyy
đóa(x,y)
là0
- Nghịch đảo: đối với bất kỳ
x≠0
trong phạm vi, tồn tại như vậyy
đóm(x,y)
là1
Tên a
và m
chỉ là ví dụ; bạn có thể sử dụng các tên khác hoặc các hàm không tên. Điểm của câu trả lời của bạn là tổng độ dài byte cho a
vàm
.
Nếu bạn sử dụng hàm dựng sẵn, vui lòng mô tả bằng từ mà kết quả mà nó tạo ra (ví dụ: cung cấp bảng nhân).
a=+
m=×
?
m=×
a(2,1) = 3
, bạn có thể cóa(2,1) = 5
miễn là các tiên đề trên được thỏa mãn.a
không phải làm bất cứ điều gì với phép cộng thông thường mà bạn đã sử dụng, ví dụ như từ trường số hữu tỷ.