Isti zapis, dva tijela:
DNK i Krunica
DNK je hladni arhiv koji traje stoljećima. Krunica je živi zapis koji se dokazuje u milisekundi. Oba smo mjerili nad istim pravim podacima, 13.515 atoma jedne godine knjigovodstva, i ovdje pišemo i ono što je palo.
Ukratko
Krunica: dokaz DRŽI
dokaz da je bilo koji od 13.515 atoma u zapisu; provjera bez mreže. Rust = Python na svih 251 klasa, 10.000/10.000.
Krunica: obnova DRŽI
bilo kojih 5 komada vraća klas (300/300), uz režiju 1,4×. S 4 komada sustav kaže NEPOZNATO, nikad krivi podatak.
DNK: naš kod v6 DRŽI
isti teži kanal na kojem je prvi dekoder imao 0/30 (1 % grešaka po slovu, 20 % izgubljenih oliga), prosječno 8 čitanja. U 400 pokusa v6 je jednom vratio krivi podatak bez dojave; v8 (provjera s kraja na kraj) to pretvara u NEPOZNATO.
Veličina
manje od izvornog JSON-a u klasovima od 256 atoma (119,6 MB → 2,72 MB). Cilj 1/1000 još nije dosegnut.
Poligon: pravi podaci, zamrznuta snimka
Mjerenja ne izmišljaju podatke. Uzeli smo testnu kopiju grane jedne stvarne firme, 13.515 atoma iz 2025. (temeljnice, ulazni i izlazni računi, knjige PDV-a), i zamrznuli je s manifestom. Svako sljedeće mjerenje ide nad istom snimkom, pa su rezultati usporedivi.
- Snimka: sha256 76d69d50…a682. Ime svakog atoma jednako je sha256 sadržaja: 13.515/13.515.
- Dvije neovisne izvedbe istog stabla: Python (referenca) i Rust (brzina, WASM).
- Kriteriji su upisani u lanac prije mjerenja. Pad je rezultat jednako kao prolaz.
Usporedba: dva tijela istog zapisa
| svojstvo | Krunica zapis (klas) | DNK pohrana |
|---|---|---|
| uloga | živi zapis: dokaz, pretraga, replikacija | hladni arhiv za stoljeća |
| gustoća | 201–274 B po atomu sažeto | 0,61 bit/nt neto (v6, s početnicama i paritetom 50 %) · 2 bit/nt teorija |
| cijela godina (13.515 atoma) | 2,72 MB | ≈ 19,9 mil. nt · ≈ 11 fg po kopiji (preračun) |
| dokaz istinitosti | 448 B po atomu, offline DRŽI | isti korijen klasa nakon čitanja (L2, nije rađeno) |
| najopasnija greška | ispušten ili umetnut atom: otkriven 1.000/1.000 DRŽI | umetnuto ili izgubljeno slovo: v6 obnavlja 30/30 DRŽI |
| otpornost | RS 5-od-7, režija 1,4× | RS po oligu i preko oliga, paritet 50 %; redoslijed oliga po zlatnom kutu (v8: v6 + zlatni kut + provjera) |
| nasumični pristup | karta klasa: filtar 11,5× brži od datoteka | početnice (PCR) po bazenu oliga: isti obrazac |
| stanje | radi na testu, mjereno | simulacija: L1 prošao 30/30; L2 (fizička sinteza) nije rađena |
Krunica: što drži
| test | rezultat | presuda |
|---|---|---|
| korijen Rust = Python, 251 klas | razlika 0 | DRŽI |
| dokaz uključenosti | 10.000/10.000 | DRŽI |
| izmjena jednog bita → dokaz pada | 10.000/10.000 | DRŽI |
| obnova iz bilo kojih 5 od 7 komada | 300/300 | DRŽI |
| samo 4 komada | NEPOZNATO 150/150 · krivo 0 | DRŽI |
| otrovan komad, ponuđeno svih 7 | točno 500/500 | DRŽI |
| podmetnuti atomi | prihvaćeno 0/1.000 | DRŽI |
| ispušten / umetnut atom | otkriveno 1.000/1.000 · 1.000/1.000 | DRŽI |
Zaglavlje klasa nosi sha256 svakog komada, pa se otrovan komad odbaci prije dekodiranja i obnova sama zaobiđe lažnog čuvara.
Brzina pretrage: opa ili tropa?
Oboje, ovisno o pitanju. Mjereno toplo (podaci u memoriji poslužitelja), 30 ponavljanja, medijan s 95 % intervalom.
Filtar „vrsta + mjesec” (83 pogotka, isti u sva tri načina) opa · 11,5×
Jedan atom po otisku tropa · ~75× sporije
| način | medijan | p95 |
|---|---|---|
| datoteka po atomu | 0,11 ms | 0,31 ms |
| klas + indeks (raspakira cijeli klas) | 8,21 ms | 16,96 ms |
Pretraga teksta datoteke brže · 1,4×
Uz isti rezultat (141.127 pogodaka u 30 upita): datoteke 347 ms [332–359], klasovi 485 ms [475–498]. Raspakirani klasovi u memoriji 41 ms [37–43]. Karta ne pomaže tekstu. Ranija brojka (285 / 244 ms, c10277) uspoređivala je nejednake poslove i povučena je u c10298.
Kriterij „jedan atom ≤ 10 ms p95” nije ispunjen, pa je presuda H-BRZ-1 PAD. Svakodnevna pretraga ionako ide kroz indeks baze-sjene; klas je istina, a baza je brzi pogled. Hladni disk i baza nisu bili dio ovog mjerenja.
DNK: prvi korak, iskreno (3.10.)
| hipoteza | uvjeti | rezultat | presuda |
|---|---|---|---|
| H-DNK-1 obnova | p 0,5 % · ispad 10 % · 5 čitanja | 8/30 | PAD |
| H-DNK-2 teži kanal | p 1 % · ispad 20 % · 8 čitanja | 0/30 | PAD |
| H-DNK-3 glasni pad | ispad 45 % | tihi krivi 0/90 | DRŽI |
Zašto je palo: u DNK su najopasnija umetnuta i izgubljena slova, ne zamijenjena. Dekoder koji odbacuje svako očitanje krive duljine izgubi previše dijelova. Ista pouka vrijedi za mrežu, pa je test klasa odmah proširen na ispuštanje i umetanje atoma, i tamo drži.
Sljedeće: L1 je dekoder otporan na umetanja i ispuštanja, nad pravim klasom s poligona. L2, fizička sinteza jednog klasa, dolazi tek kad L1 prođe 30/30.
DNK: od 0/30 do 30/30, i što je dalje
Svaki korak je pred-registriran u lancu prije mjerenja; presudu izdaje skripta, ne čovjek ni AI. Kanal: 1 % grešaka po slovu (zamjene, umetanja, brisanja), 20 % oliga izgubljeno, prosječno c čitanja po oligu.
| korak | što | rezultat | presuda |
|---|---|---|---|
| c* (c11480) | 9.600 pokusa, 4 koda × 5 scenarija | naš kod tihi krivi 0 · HEDGES 17 | DRŽI |
| v6 (c11859) | naš kod, kanal kao H-DNK-2 | c=8: 30/30 · c=12: 30/30 | DRŽI |
| N10a (c11859) | egzaktni filtri u konsenzusu | bajt-isto 180/180 · 3,02× brže | DRŽI |
| N15 (c11886) | model iz ishoda po oligu | pogodio 8/8 · neobnova 5,5·10⁻⁵ uz c=12 | DRŽI |
| N10b (c11914) | srce konsenzusa u Rustu | bajt-isto 180/180 · 2,49× brže | DRŽI |
| zlatni kut (c11174) | raspored oliga po Fibonaccijevoj spirali, 16 skupina | nakupina 15 %: 1000/1000 · linearno 0 | DRŽI |
| N19 golden | v7 = v6 + zlatni kut u redoslijedu sinteze | isti gubitak 30/30 · bajt-isto 30/30 | DRŽI |
| N19 nakupina | 20 % oliga izgubljeno u komadu (serija, dio čipa) | v7: c=8 60/60 · c=12 60/60 · c=16 60/60 v6: c=8 9/60 · c=12 13/60 · c=16 15/60 | PAD |
| N19 jednoliki | isti kanal, raspršen gubitak | v7: c=6 51/60 · c=8 60/60 v6: c=6 55/60 · c=8 60/60 | PAD |
| N19 flota | rubni3 (4 jezgre, 3 GB) ponavlja NEW | isti otisci 60/60 | DRŽI |
| N19b jednoliki | ponovljeno s 400 + 400 pokusa (c=6) | v7 360/400 · v6 356/400 razlika 0,01 (95 % CI -0,0325 do 0,0525) | PAD |
| N19b flota | rubni3 ponavlja 100 pokusa | isti otisci 100/100 | DRŽI |
| nalaz (c11988) | v6 u 400 pokusa N19b | jednom KRIVI podatak bez dojave (vanjski RS „ispravio” u krivo, 884 B) | PAD |
| N20 provjera | v8 = v7 + 8 B sha3 zapisa; krivo postaje NEPOZNATO | isti krivi izlaz → odbijen · 1000/1000 | DRŽI |
| N20 nikad krivo | 400 pokusa, c=6 | uspjeh 360/400 · krivo 0 · glasno 40 | DRŽI |
| N20 cijena | uspjeh v8 prema v7 | razlika 0 (95 % CI -0,0416 do 0,0416) | DRŽI |
| N20 flota | rubni3 ponavlja 60 pokusa | isti otisci 60/60 | DRŽI |
Zašto ima PAD-ova: u N19 sam krivo predvidio da linearni v6 pod nakupinom pada na 0 (pao je na 9–15 od 60), a prag razlike ±3 uz 60 pokusa bio je ispod šuma. Kriteriji se naknadno ne mijenjaju, pa ostaju PAD; N19b (400 + 400) pokazao je da zlatni kut ne košta ništa, a otkrio je jedan krivi podatak kod v6, koji N20 zatvara.
Zašto zlatni kut: oligi koji se sintetiziraju zajedno i zajedno propadaju završavali su u istom bloku zaštite, pa je komad gubitka srušio cijeli zapis. Po zlatnom kutu susjedi padaju u različite blokove; dekoder je isti jer svaki oligo nosi svoj broj, pa nema tablice ni ijednog bita više.
Cijena otpornosti: 0,61 bit/nt neto s početnicama i paritetom 50 % (prvi dekoder 1,09, ali nije obnavljao). Provjera s kraja na kraj košta 8 B po zapisu. Gušći Fibonaccijev kod FIB3M-v2 (1,25 bit/slovo, c11192) prošao je u labu, a u DNK zapis još nije ugrađen.
Flota: rubni3 (prijenosnik iza Wi-Fi-ja, 4 jezgre, 3 GB) uključen je u rad i ponavlja pokuse s NEW-a bit-isto; svaki čvor koji računa provjerava se otiskom svakog pokusa.
Što je palo i što učimo
- PAD Rječnik grane (moja hipoteza): 333 B/atom, lošije od 201,5 bez rječnika. Sažimanje unutar klasa već uči ponavljanja; rastav na putanje dodaje nove nizove. Sljedeći pokušaj je stupčani binarni zapis.
- PAD Jedan atom ≤ 10 ms: klas se raspakira cijeli. Sljedeći pokušaj su manji blokovi unutar klasa s pomakom u zaglavlju, isti obrazac kao bazeni oliga u DNK.
- PAD → DRŽI DNK obnova: prvi dekoder nije podnosio umetnuta i izgubljena slova (0/30). Naš kod v6 na istom kanalu: 30/30 (c11859); v8 uz to nikad ne vraća krivi podatak (0/400, c12006).
- NEPOZNATO Obnova na rubnom uređaju (X96) i odabir veličine klasa: nije izmjereno.
Izvori
Naša mjerenja (lanac Genesis)
- c10195: pred-registracija H-ZRNO-1…4 (oznake hipoteza nose staro ime; jedinica se od c10290 zove klas)
- c10201 · c10202: DNK-ZRNO v1, pred-registracija i rezultat (izlaz sha256 14e9b85c…16cf, ponovljen bajt-identično)
- c10206: poligon krug 1, H-ZRNO-1 i veličine (izlaz sha256 68d581d1…05f4)
- c11174 · c11192 · c11480 · c11859 · c11886 · c11914: zlatni kut, Fibonaccijev kod, c*, v6 i N10a, N15, N10b (RAČUN atomi s tripletima)
- c11969 · c11976 · c11978 · c11988 · c11989 · c12003 · c12006: N19, N19b, nalaz krivog podatka i N20 (pred-registracije, RAČUN atomi, presude stroja)
- c10275 · c10277: poligon krug 2, pred-registracija i rezultat (izlaz sha256 ccc47102…e4d6)
Literatura (tuđe brojke, ne naše mjerenje)
- Teorijski strop: 2 bita po nukleotidu (četiri baze).
- Erlich & Zielinski, DNA Fountain, Science 355 (2017): 1,57 bita po nukleotidu u pokusu.
- Grass i sur., Angewandte Chemie 54 (2015): DNK u silicijevom dioksidu, procjena očuvanja kroz tisućljeća pri niskoj temperaturi.