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

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev20.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.dev20.tar.gz
Algorithm Hash digest
SHA256 aee5bec079bbf96413175cb26a16cd1391eed070f16462d71f31dea667da0f3d
MD5 e68a2e218a93473612143452d3b2cd0a
BLAKE2b-256 c9f60e6f2e12bfa52b4e326bf856f62cab8b1c419bb93bd6b2dec934fa851fc2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev20-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.dev20-py3-none-any.whl
Algorithm Hash digest
SHA256 476d947a2589a8f1cbfd141c3cffd6e65628f31716d903752b6d7f1772c634b0
MD5 b630eb4d56858dde2b9d99f818f76714
BLAKE2b-256 a52a3a1a263dbb1b94a68d58d21b9017f893c7e37df8fcc1f1a7d02f46a22900

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