Task
Add hammingDistance(a, b) function to src/vsa.zig alongside existing cosineSimilarity.
Files
src/vsa.zig — add hammingDistance function
Details
Hamming distance counts positions where ternary trits differ.
For two ternary vectors a and b of dimension D:
hammingDistance(a, b) = count of positions i where a[i] != b[i]
This is useful for fast approximate similarity when exact cosine is too expensive.
Acceptance
- Function signature:
pub fn hammingDistance(a: []const i8, b: []const i8) usize
zig build passes
- Add test:
test "hamming distance" { ... } verifying basic cases
Task
Add
hammingDistance(a, b)function tosrc/vsa.zigalongside existingcosineSimilarity.Files
src/vsa.zig— add hammingDistance functionDetails
Hamming distance counts positions where ternary trits differ.
For two ternary vectors a and b of dimension D:
This is useful for fast approximate similarity when exact cosine is too expensive.
Acceptance
pub fn hammingDistance(a: []const i8, b: []const i8) usizezig buildpassestest "hamming distance" { ... }verifying basic cases