threshold-popcount8

8-bit population count. Counts the number of 1 bits in an 8-bit input.

Function

popcount8(a7..a0) = count of 1 bits (0 to 8)

Output is 4 bits: y3y2y1y0 representing count in binary.

Truth Table (selected rows)

Input Count Output
00000000 0 0000
00000001 1 0001
01010101 4 0100
11110000 4 0100
11111111 8 1000

Architecture

  • y3 = (sum == 8)
  • y2 = (sum >= 4) AND (sum <= 7)
  • y1 = ((sum >= 2) AND (sum <= 3)) OR ((sum >= 6) AND (sum <= 7))
  • y0 = XOR8 (parity of all 8 bits)

The parity computation uses a tree of XOR gates: XOR pairs, then XOR the results.

Parameters

Inputs 8
Outputs 4
Neurons 31
Layers 5
Parameters 177
Magnitude 163

Usage

from safetensors.torch import load_file
# See create_safetensors.py for full implementation

# popcount8(1,0,1,0,1,0,1,0) = [0,1,0,0] = 4

License

MIT

Downloads last month
12
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Collection including phanerozoic/threshold-popcount8