PParityOchre
Ambiente de programação com IA

Correção Hamming de um bit

Decodifique uma palavra Hamming de sete bits sob a hipótese explícita de no máximo um bit invertido.

● ● ●ParityOchre●
Fluxos de trabalho · Correção Hamming de um bit ×
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
✳Decodifique uma palavra Hamming de sete bits sob a hipótese explícita de no máximo um bit invertido.
✓ AlteraçõesRevise antes de aplicar ↗
Ilustração do ambiente
01

Revise antes de aplicar

Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.

02

Modelos

Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.

03

Projeto

Teste palavras intactas e cada posição invertida, rejeite entradas malformadas ou não binárias e não prometa detectar erros múltiplos.

Fluxos de trabalho

Correção Hamming de um bit

Fluxos de trabalho ↗
Fluxos de trabalho
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
Ambiente de programação com IA

Mantenha o código experimental fiel às suas premissas de operação

ParityOchre é um ambiente de programação com IA para Windows para transformar um pequeno experimento técnico em um componente de software com limites claros. Abra a pasta de código e descreva as condições de uso do resultado. Peça ao modelo para examinar o cálculo e seu chamador, especialmente onde uma saída pode ser interpretada como prova de recuperação bem-sucedida.

Como exemplo, solicite uma revisão de hamming.py sob a premissa de erro em um único bit. Forneça uma palavra intacta e outra com um bit alterado e indique como a aplicação deve apresentar os dados e a síndrome retornados. Discuta separadamente falhas fora dessa premissa, sem deixar que um resultado plausível sugira que toda entrada danificada foi corrigida.

Use a edição proposta para examinar a interface em torno do experimento. Verifique o comprimento da entrada e os valores dos bits, execute casos independentes no seu ambiente e examine a mensagem exibida pelo consumidor. Nomes claros para as saídas são relevantes: a aplicação deve comunicar o que a rotina realmente informa, sem transformar um exemplo limitado em uma afirmação mais ampla de confiabilidade.

ParityOchre permite conectar modelos por endpoints compatíveis com OpenAI ou Anthropic, com credenciais quando exigidas. Um modelo de IA sem censura é uma opção quando oferecido, sujeito às restrições do provedor. As ferramentas e o contexto disponíveis dependem do modelo e do servidor escolhidos; evidências dos seus casos de teste continuam necessárias para revisar o comportamento proposto.

Dúvidas sobre experimentos de recuperação com limites definidos

Um valor retornado prova que a palavra foi reparada?

Apenas dentro das premissas estabelecidas para a rotina e a entrada. Um valor de dados plausível, isoladamente, não comprova a correção bem-sucedida de danos arbitrários. Revise como a aplicação descreve o resultado para não apresentar aos usuários uma garantia maior que a sustentada pelo experimento.

O que a validação da entrada deve abranger?

Use o comprimento esperado da palavra e os valores de bits permitidos pelo contrato do projeto. Inclua comprimentos incorretos e entradas que não sejam bits nos testes. Examine também a rejeição pelo chamador, pois uma exceção na função auxiliar não é necessariamente uma resposta útil da aplicação.

Por que incluir palavras intactas nos testes?

Elas verificam o caminho sem alterações e o significado da síndrome informada quando nenhuma correção é indicada. Compare os dados extraídos com um valor esperado independente. Testar apenas exemplos danificados pode deixar passar um defeito no tratamento de entradas comuns ou na interpretação da saída.

Como solicitar um tratamento de erros mais amplo?

Declare os casos adicionais de erro e as evidências de que a aplicação precisa para distingui-los. Trate isso como um novo requisito de projeto, não como um pequeno ajuste no exemplo existente. Revise a interface e os testes propostos antes de presumir uma garantia de recuperação mais forte.

Baixar para Windows ↗

ParityOchre · Atualizado 2026-10-25