Skip to main content

Swarmauri Hamming (7,4) matrix community package.

Project description

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri_matrix_hamming74


Swarmauri Matrix Hamming(7,4)

The swarmauri_matrix_hamming74 package provides a binary Hamming (7,4) code matrix that extends MatrixBase. It includes generator and parity-check representations, encoding and decoding helpers, and tight integration with the swarmauri_metric_hamming package for error detection and correction workflows.

Features

  • 🧮 Binary matrix implementation built on MatrixBase with full indexing and arithmetic support.
  • 🧷 Generator and parity-check matrix accessors for classic Hamming (7,4) coding schemes.
  • 📨 Encoding, syndrome calculation, and nearest-codeword decoding helpers powered by the Hamming metric.
  • 🔁 Binary-safe matrix operations (addition, subtraction, multiplication, and matrix multiplication modulo 2).

Installation

Using uv

uv pip install swarmauri_matrix_hamming74

Using pip

pip install swarmauri_matrix_hamming74

Usage

from swarmauri_matrix_hamming74 import Hamming74Matrix

matrix = Hamming74Matrix()
message = [1, 0, 1, 1]
codeword = matrix.encode(message)

# Introduce a single-bit error
received = codeword.copy()
received[3] ^= 1

# Decode using syndrome lookup and Hamming distance search
nearest = matrix.nearest_codeword(received)
print(nearest)  # Recovers the original 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_matrix_hamming74-0.9.3.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_matrix_hamming74-0.9.3.dev20.tar.gz.

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.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_matrix_hamming74-0.9.3.dev20.tar.gz
Algorithm Hash digest
SHA256 bc479ca2848676bbc0ffdd9211cea59d95045e6e321dff74524131bc43ca0be0
MD5 601cc4b96cb51ddac86676a876549e96
BLAKE2b-256 3408192816749188d63e3773b79a6429cde1a679a33161a744610e41e557afc2

See more details on using hashes here.

File details

Details for the file swarmauri_matrix_hamming74-0.9.3.dev20-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.dev20-py3-none-any.whl
  • Upload date:
  • Size: 9.2 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_matrix_hamming74-0.9.3.dev20-py3-none-any.whl
Algorithm Hash digest
SHA256 d601e949cb1e588306c301ed930aa22c7874326f52ee7b3017f7f57ad8bfc6f3
MD5 ecb9c38a788ee9d4d6405fefa4a4af26
BLAKE2b-256 8f97a156e1cbbb1963e3f85890fcd7f28635efc33da7a11d7f81032aa01de32c

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