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 đó plà số nguyên tố và nlà số tự nhiên. Trong thử thách này, chúng ta hãy thực hiện p = 2và 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 0và 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
avàmlà một số nguyên trong phạm vi có liên quan - Associativity: cho bất kỳ
x,yvàztrong 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ỳ
xvàytrong phạm vi,a(x,y)bằnga(y,x); tương tự chom - Phân phối: cho bất kỳ
x,yvàztrong 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ỳ
xtrong phạm vi,a(0,x)bằngxvàm(1,x)bằngx - Phủ định: đối với bất kỳ
xtrong 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≠0trong phạm vi, tồn tại như vậyyđóm(x,y)là1
Tên avà mchỉ 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 avà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) = 5miễn là các tiên đề trên được thỏa mãn.akhô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ỷ.