Threshold Logic Circuits
Collection
Boolean gates, voting functions, modular arithmetic, and adders as threshold networks.
β’
269 items
β’
Updated
β’
1
JK flip-flop next-state logic as threshold circuit. Most versatile flip-flop with Set, Reset, Hold, and Toggle modes.
J βββ
K βββΌβββΊ JK-FF βββ¬βββΊ Q
Q_prev βββ ββββΊ Qn
| J | K | Q_prev | Q | Qn | Mode |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | Hold |
| 0 | 0 | 1 | 1 | 0 | Hold |
| 0 | 1 | X | 0 | 1 | Reset |
| 1 | 0 | X | 1 | 0 | Set |
| 1 | 1 | 0 | 1 | 0 | Toggle |
| 1 | 1 | 1 | 0 | 1 | Toggle |
J=0, K=0: Hold - Q stays same
J=0, K=1: Reset - Q becomes 0
J=1, K=0: Set - Q becomes 1
J=1, K=1: Toggle - Q flips
Q = JΒ·~Q_prev + ~KΒ·Q_prev
Qn = ~JΒ·~Q_prev + KΒ·Q_prev
| Component | Neurons |
|---|---|
| Input inversions | 4 |
| AND gates | 4 |
| OR outputs | 2 |
| Passthroughs | 2 |
Total: 12 neurons, 42 parameters, 3 layers
Unlike SR flip-flop, JK has no invalid state. When both inputs are high, it toggles instead of producing undefined behavior.
from safetensors.torch import load_file
w = load_file('model.safetensors')
# Counter using toggle mode:
q = 0
for _ in range(4):
q_next = compute(j=1, k=1, q_prev=q, w)
q = q_next # q toggles: 0,1,0,1,...
threshold-jk-flipflop/
βββ model.safetensors
βββ create_safetensors.py
βββ config.json
βββ README.md
MIT