phanerozoic's picture
Upload folder using huggingface_hub
3af1a71 verified
import torch
from safetensors.torch import load_file
def load_model(path='model.safetensors'):
return load_file(path)
def half_subtractor(a, b, weights):
"""Half subtractor: computes a - b, returns (diff, borrow)"""
inp = torch.tensor([float(a), float(b)])
# XOR for diff
l1 = (inp @ weights['xor.layer1.weight'].T + weights['xor.layer1.bias'] >= 0).float()
diff = int((l1 @ weights['xor.layer2.weight'].T + weights['xor.layer2.bias'] >= 0).item())
# Borrow
borrow = int((inp @ weights['borrow.weight'].T + weights['borrow.bias'] >= 0).item())
return diff, borrow
if __name__ == '__main__':
w = load_model()
print('HalfSubtractor truth table:')
for a in [0, 1]:
for b in [0, 1]:
diff, borrow = half_subtractor(a, b, w)
print(f'{a} - {b} = {diff}, borrow={borrow}')