QuantumCrypt / src /qec.py
marlonsousa's picture
Upload 17 files
0173bbf verified
raw
history blame contribute delete
829 Bytes
from typing import List
class QuantumErrorCorrection:
"""Implementação de correção de erros quânticos."""
@staticmethod
def encode_message(bits: List[int]) -> List[int]:
"""Codifica uma mensagem usando código de repetição."""
encoded = []
for bit in bits:
# Implementa código de repetição de 3 qubits
encoded.extend([bit] * 3)
return encoded
@staticmethod
def decode_message(encoded_bits: List[int]) -> List[int]:
"""Decodifica uma mensagem usando voto majoritário."""
decoded = []
for i in range(0, len(encoded_bits), 3):
chunk = encoded_bits[i:i+3]
# Voto majoritário
bit = 1 if sum(chunk) > len(chunk)/2 else 0
decoded.append(bit)
return decoded