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.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_matrix_hamming74-0.9.3.dev24.tar.gz.

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.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_matrix_hamming74-0.9.3.dev24.tar.gz
Algorithm Hash digest
SHA256 77f359d041d2cf2a64f06265609070af2f1e9a59cbf65c9724888ab04ca44803
MD5 afa1378e4176082d20569cf0a1e6f522
BLAKE2b-256 6d701f85af39311b192493e4ec1b1d0a9e8f882d86374f228ef9c5ef3ddc23ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.dev24-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.dev24-py3-none-any.whl
Algorithm Hash digest
SHA256 14f2a095b6e62a5ba3488edf434587bceafd411cb4f40d44f090151bb798ab05
MD5 6135f22ba243011e25c2dbc96fb901df
BLAKE2b-256 47479d683b8e79d75f02b36a6db169d10cf71848349975415cf1f3c0034a2788

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