Week 30 — Coding Projects

Core

Implement polynomial arithmetic.

  • NumPy: Represent polynomials as coefficient arrays. Implement add, multiply, and long division. Implement Euclidean algorithm for integer or mod-p coefficient polynomials.
  • Metal: Batched polynomial evaluation over many x values using Horner’s method. · Reading: MBT — generic compute over arrays, Horner-style evaluation kernels.
  • Vulkan: Buffer-based batched algebraic evaluation. · Reading: Vulkan Book — buffer-based batched algebraic evaluation.
  • CUDA: Polynomial evaluation and coefficient operations for throughput. · Reading: CUDA Book — throughput kernels over coefficient arrays.
  • Stretch: Work mod p for coding-theory prep. Add Horner evaluation benchmarking.
  • Verify: Division identity holds: f = qg + r · GCD results are consistent · Mod-p arithmetic is handled correctly.