threshold-isone4

Check if 4-bit input equals 1 (binary 0001).

Function

isone4(a3, a2, a1, a0) = 1 if input == 1, else 0

Where input = 8a3 + 4a2 + 2*a1 + a0

Truth Table

a3 a2 a1 a0 decimal out
0 0 0 0 0 0
0 0 0 1 1 1
0 0 1 0 2 0
0 0 1 1 3 0
... ... ... ... ... 0

Architecture

Single neuron pattern matcher for binary 0001:

  • Weights: [-1, -1, -1, +1]
  • Bias: -1

Fires when: -a3 - a2 - a1 + a0 - 1 >= 0

This requires a3=0, a2=0, a1=0, a0=1 (exactly the pattern 0001).

Parameters

Inputs 4
Outputs 1
Neurons 1
Layers 1
Parameters 5
Magnitude 5

Usage

from safetensors.torch import load_file
import torch

w = load_file('model.safetensors')

def isone4(a3, a2, a1, a0):
    inp = torch.tensor([float(a3), float(a2), float(a1), float(a0)])
    return int((inp @ w['neuron.weight'].T + w['neuron.bias'] >= 0).item())

print(isone4(0, 0, 0, 1))  # 1 (input = 1)
print(isone4(0, 0, 1, 0))  # 0 (input = 2)
print(isone4(0, 0, 0, 0))  # 0 (input = 0)

License

MIT

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

Collection including phanerozoic/threshold-isone4