Week 31 — Coding Projects
Core
Implement finite-field arithmetic for a small extension field.
- NumPy: Represent field elements as bit patterns. Implement add as XOR. Implement multiply mod an irreducible polynomial. Build multiplication tables for GF(2^m) with small m.
- Metal: Batched GF(2^m) adds and multiplies as a bitwise compute exercise. · Reading: MBT — integer/bitwise compute patterns.
- Vulkan: Bitwise compute kernels over integer buffers. · Reading: Vulkan Book — integer compute and buffer workflows.
- CUDA: GF(2^m) arithmetic kernels with bitwise-heavy operations. · Reading: CUDA Book — bitwise-heavy kernels and batched arithmetic.
- Stretch: Implement multiplicative inverse. Build log/antilog tables for a small field.
- Verify: Field axioms hold on tested elements · Nonzero elements have inverses · Arithmetic matches hand-worked examples.