PParityOchre
AI-werkruimte voor code

Hamming-correctie van één bit

Decodeer een Hamming-woord van zeven bits met de expliciete aanname van hoogstens één omgekeerd bit.

● ● ●ParityOchre●
Werkprocessen · Hamming-correctie van één 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
✳Decodeer een Hamming-woord van zeven bits met de expliciete aanname van hoogstens één omgekeerd bit.
✓ WijzigingenControleer vóór het toepassen ↗
Illustratie van de werkruimte
01

Controleer vóór het toepassen

Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.

02

Modellen

Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.

03

Project

Test intacte woorden en elke enkele foutpositie, weiger misvormde of niet-binaire invoer en beloof geen detectie van meerdere fouten.

Werkprocessen

Hamming-correctie van één bit

Werkprocessen ↗
Werkprocessen
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
AI-werkruimte voor code

Houd experimentele code eerlijk over de geldende aannames

ParityOchre is een AI-programmeeromgeving voor Windows om van een klein technisch experiment een duidelijk begrensde softwarecomponent te maken. Open de bronmap en beschrijf onder welke omstandigheden het resultaat wordt gebruikt. Vraag het model zowel de berekening als de aanroeper te bekijken, vooral waar uitvoer kan worden uitgelegd als bewijs van geslaagd herstel.

Vraag bijvoorbeeld om hamming.py te beoordelen onder de aanname van één bitfout. Geef een intact woord en een woord met één gewijzigd bit en vermeld hoe de toepassing de teruggegeven gegevens en het syndroom moet tonen. Bespreek fouten buiten die aanname apart, zodat een aannemelijk resultaat niet suggereert dat elke beschadigde invoer is gecorrigeerd.

Gebruik de voorgestelde wijziging om de interface rond het experiment te onderzoeken. Controleer invoerlengte en bitwaarden, voer onafhankelijke testgevallen in je eigen omgeving uit en bekijk de melding die de gebruikende code toont. Duidelijke uitvoernamen zijn belangrijk: de toepassing moet aangeven wat de routine daadwerkelijk meldt, zonder een begrensd voorbeeld tot een bredere betrouwbaarheidsclaim te verheffen.

ParityOchre ondersteunt modelverbindingen via OpenAI-compatibele of Anthropic-endpoints, met inloggegevens indien nodig. Een AI-model zonder censuur is een optie waar het wordt aangeboden, onder voorbehoud van beperkingen van de aanbieder. Beschikbare tools en context hangen af van het gekozen model en de server; bewijs uit je testgevallen blijft nodig om het voorgestelde softwaregedrag te beoordelen.

Vragen over begrensde herstelexperimenten

Bewijst een teruggegeven waarde dat het woord is hersteld?

Alleen binnen de aannames die voor de routine en de invoer zijn vastgelegd. Een aannemelijke gegevenswaarde op zichzelf bewijst geen geslaagde correctie van willekeurige schade. Controleer hoe de toepassing het resultaat beschrijft, zodat gebruikers geen sterkere zekerheid krijgen dan het experiment ondersteunt.

Wat moet de invoervalidatie controleren?

Gebruik de verwachte woordlengte en toegestane bitwaarden uit het projectcontract. Neem een verkeerde lengte en niet-bitwaarden mee in de testgevallen. Bekijk ook de weigering via de aanroeper: een uitzondering in een hulpfunctie is niet noodzakelijk een nuttige toepassingsreactie.

Waarom intacte woorden in de tests opnemen?

Ze controleren het pad zonder wijzigingen en de betekenis van het gemelde syndroom wanneer geen correctie wordt aangegeven. Vergelijk de geëxtraheerde gegevens met een onafhankelijk verwachte waarde. Alleen beschadigde voorbeelden testen kan een fout in gewone invoerverwerking of uitvoerinterpretatie missen.

Hoe vraag ik om uitgebreidere foutafhandeling?

Benoem de extra foutgevallen en het bewijs dat de toepassing nodig heeft om ze te onderscheiden. Behandel dat als een nieuwe ontwerpeis in plaats van een kleine patch op het bestaande voorbeeld. Beoordeel de voorgestelde interface en tests voordat je uitgaat van een sterkere herstelgarantie.

Download voor Windows ↗

ParityOchre · Bijgewerkt 2026-10-25