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.dev21.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.dev21.tar.gz.

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev21.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.dev21.tar.gz
Algorithm Hash digest
SHA256 ea6f52d2c14c7b7a0d1803ef455c6947c32b905bc6bea63166b6e4bb1e1ff7d9
MD5 bd9f4c40aa53da76a63c6a74de98ae88
BLAKE2b-256 8f04205aa9d459eb052d036e44a2d5cbcf92fb0336e250cc0de31c8cc1571450

See more details on using hashes here.

File details

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

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev21-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.dev21-py3-none-any.whl
Algorithm Hash digest
SHA256 18b9b653f09ebe614626ef98ba85c5edcaed058f5e3b5c49686cafc4b7176263
MD5 2108c04c91b006d090a5eced904ef2d5
BLAKE2b-256 a25095341ee4e068bbae8be799fc9cb6757bccd5f8989a8ca7c77e0974de4f68

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