PParityOchre
Ambiente di sviluppo con IA

Correzione Hamming di un bit

Decodifica una parola Hamming di sette bit assumendo esplicitamente al massimo un bit invertito.

● ● ●ParityOchre●
Flussi di lavoro · Correzione Hamming di un 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
✳Decodifica una parola Hamming di sette bit assumendo esplicitamente al massimo un bit invertito.
✓ ModificheControlla prima di applicare ↗
Illustrazione dell’ambiente
01

Controlla prima di applicare

Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.

02

Modelli

Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.

03

Progetto

Prova parole integre e ogni singola posizione invertita, rifiuta dati malformati o non binari e non promettere di rilevare errori multipli.

Flussi di lavoro

Correzione Hamming di un bit

Flussi di lavoro ↗
Flussi di lavoro
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 di sviluppo con IA

Mantieni esplicite le ipotesi operative del codice sperimentale

ParityOchre è un ambiente di programmazione con IA per Windows per trasformare un piccolo esperimento tecnico in un componente software dai limiti chiari. Apri la cartella del codice e descrivi le condizioni in cui verrà usato il risultato. Chiedi al modello di esaminare sia il calcolo sia il chiamante, soprattutto dove un output potrebbe essere interpretato come prova di un recupero riuscito.

Per esempio, richiedi una revisione di hamming.py nell'ipotesi di un errore su un solo bit. Fornisci una parola intatta e una con un bit modificato, poi indica come l'applicazione deve presentare i dati restituiti e la sindrome. Discuti separatamente i guasti che esulano da questa ipotesi, senza lasciare che un risultato plausibile implichi che ogni input danneggiato sia stato corretto.

Usa la modifica proposta per esaminare l'interfaccia attorno all'esperimento. Controlla lunghezza dell'input e valori dei bit, esegui casi indipendenti nel tuo ambiente ed esamina il messaggio mostrato dal codice utilizzatore. Nomi chiari per gli output sono importanti: l'applicazione deve comunicare ciò che la procedura segnala realmente, senza trasformare un esempio limitato in un'affermazione di affidabilità più ampia.

ParityOchre supporta collegamenti a modelli tramite endpoint compatibili con OpenAI o Anthropic, con credenziali quando richieste. Un modello di IA senza censura è un'opzione dove disponibile, soggetta alle restrizioni del fornitore. Strumenti disponibili e contesto dipendono dal modello e dal server selezionati; le prove dei tuoi casi di test restano necessarie per rivedere il comportamento software proposto.

Domande sugli esperimenti di recupero con limiti definiti

Un valore restituito dimostra che la parola è stata riparata?

Solo entro le ipotesi stabilite per la procedura e per l'input. Un valore plausibile da solo non dimostra che danni arbitrari siano stati corretti. Rivedi come l'applicazione descrive il risultato, così da non mostrare agli utenti una garanzia più forte di quanto l'esperimento supporti.

Cosa deve coprire la validazione degli input?

Usa la lunghezza della parola prevista e i valori dei bit consentiti dal contratto del progetto. Includi nei casi di test lunghezze errate ed elementi diversi da bit. Esamina il rifiuto anche attraverso il chiamante: un'eccezione nella funzione ausiliaria non è necessariamente una risposta utile dell'applicazione.

Perché includere parole intatte nei test?

Verificano il percorso senza modifiche e il significato della sindrome segnalata quando non è indicata alcuna correzione. Confronta i dati estratti con un valore atteso indipendente. Testare solo esempi danneggiati può non rilevare difetti nella gestione degli input ordinari o nell'interpretazione dell'output.

Come richiedo una gestione degli errori più ampia?

Specifica i casi di errore aggiuntivi e le prove necessarie all'applicazione per distinguerli. Consideralo un nuovo requisito progettuale anziché una piccola modifica all'esempio esistente. Rivedi l'interfaccia e i test proposti prima di presumere una garanzia di recupero più forte.

Scarica per Windows ↗

ParityOchre · Aggiornato 2026-10-25