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

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.dev19.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.dev19.tar.gz
Algorithm Hash digest
SHA256 6b8aa494d277ec1bfd1efe6ab06c058eaa04943d353ca5fc5832e95b059c78aa
MD5 6142232a69fbe456925bbab10102ab37
BLAKE2b-256 637067e11b2a7fdb695770689fa649f5ccff6d2cc898724b886ef147e9cf62f4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: swarmauri_matrix_hamming74-0.9.3.dev19-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.dev19-py3-none-any.whl
Algorithm Hash digest
SHA256 4d7bd5c131654023192686d6e547547d4fe7b74bbbdfdc2e4532e3f5961800db
MD5 e7e66e5829c5dc3f70a9cc1b613cfd8a
BLAKE2b-256 efd71dbef87f6ac56de44b3720ed50abd0dfad26467a662652f7eeab2e1082d1

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