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

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev17.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.dev17.tar.gz
Algorithm Hash digest
SHA256 2ea0423678942746bb99bf568c6486d26f56c2cd75f4cd02265feaf82fe18f8c
MD5 ae4936963a36b004289b2d69f0a02189
BLAKE2b-256 7149a5538910d0857c24b08e864587fc3045bc352d4720daa95802108c66e741

See more details on using hashes here.

File details

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

File metadata

  • Download URL: swarmauri_metric_hamming-0.9.2.dev17-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.dev17-py3-none-any.whl
Algorithm Hash digest
SHA256 f943510afbfb3b8c42eb32e9db42e4cde253d93001ff93ced416ec5516e830c6
MD5 ce3fd01a1ff913fb9bf2fdc5dfcf57d0
BLAKE2b-256 5446da9ddbc2114bf153c9f6381cc0a79fa38c1ae117ab72dafd0ccba9369654

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