Skip to main content

Swarmauri Hamming distance metric community package.

Project description

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri_metric_hamming


Swarmauri Metric Hamming

The swarmauri_metric_hamming package delivers a production-ready implementation of the Hamming distance that integrates seamlessly with the Swarmauri metric ecosystem. It extends MetricBase with binary vector validation, pairwise distance calculations, and axiom verification utilities designed for error-correcting code workflows.

Features

  • ✅ Fully compliant MetricBase implementation for binary sequences.
  • 🔁 Pairwise and batched distance calculations for matrices, vectors, and iterables.
  • 🧪 Built-in validation helpers for metric axioms and input compatibility checks.
  • 🧰 Utility conversion helpers for strings, dictionaries, NumPy arrays, and Swarmauri matrices/vectors.

Installation

Using uv

uv pip install swarmauri_metric_hamming

Using pip

pip install swarmauri_metric_hamming

Usage

from swarmauri_metric_hamming import HammingMetric

metric = HammingMetric()

codeword = [1, 0, 1, 1, 0, 0, 1]
received = [1, 1, 1, 1, 0, 0, 1]

# Compute the Hamming distance between two binary vectors
print(metric.distance(codeword, received))  # 1.0

# Verify the metric axioms for the provided inputs
assert metric.check_symmetry(codeword, received)
assert metric.check_triangle_inequality(codeword, received, codeword)

Support

  • Python 3.10, 3.11, and 3.12
  • Licensed under the Apache-2.0 license

Contributing

We welcome contributions! Please submit issues and pull requests through the Swarmauri SDK GitHub repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swarmauri_metric_hamming-0.9.2.dev24.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file swarmauri_metric_hamming-0.9.2.dev24.tar.gz.

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev24.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_metric_hamming-0.9.2.dev24.tar.gz
Algorithm Hash digest
SHA256 5cf8894b836930809c5c2a134bc624846814448730083bab2bbed1419b637d01
MD5 0f79b2a8da9865044f9fb13444ea6ade
BLAKE2b-256 c9cf99079e3ffdd2d7858d86f939517b4541f160d57743954586369183ca3e48

See more details on using hashes here.

File details

Details for the file swarmauri_metric_hamming-0.9.2.dev24-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev24-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_metric_hamming-0.9.2.dev24-py3-none-any.whl
Algorithm Hash digest
SHA256 c74c7c19ef538134e89b68ba14bc96586214917d89f430080b37771f98386f1c
MD5 fcf5388278e2e44ad5832a443bb9dc4e
BLAKE2b-256 0c5a8e3f974cf63841e6aba5d189ef811fc4cd1bfd34da99b8c2a00a37c3c176

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page