Deterministic Fixed Point Arithmetic | Dweve Numerus

Numerus: deterministic fixed-point, decimal and integer arithmetic in Rust; same bits under a declared execution contract. Publishing in round two.

Tallenne siitä, mitä tapahtui, säilytettynä niin, että se voidaan lukea uudelleen.

SMT-ratkaisija, jonka vastaukseen on liitetty todistus.

Säännöt nimettyinä artefakteina, ja syy siihen, miksi tarkistus epäonnistui.

Valitse numeerinen sopimus ennen ensimmäistä laskentaa, säilytä siihen liittyvä päättely ja anna kenelle tahansa kysyjälle tallenne, jonka he voivat ajaa uudelleen omalla koneellaan.

Saat summan laskettuna tarkasti, saman luvun kaikkialla, ja tallenteen siitä, miten se saavutettiin.

Se on rakennettu Euroopassa, eurooppalaisten sääntöjen mukaan, ja sen lähdekoodi julkaistaan Apache-2.0-ehdoilla Dweven perustamisjulkaisuohjelman toisella kierroksella. Sääntelijät ja kuluttajaviranomaiset voivat tarkastaa aritmetiikan suoraan sinä päivänä, kun se otetaan käyttöön.

Se, onko sääntö oikea, pysyy ihmisten kysymyksenä, ja sinulla on oikeus nostaa se esiin. Tämä antaa sinulle jotain konkreettista, jonka kanssa sen voi nostaa: luvun, joka tulee samaksi, kun kuka tahansa sen tarkistaa, kirjallisen tallenteen siitä, miten se saavutettiin, joka ei perustu kenenkään muistiin, ja tarkistuksen, joka kertoo, onko tallennetta muutettu sen jälkeen.

Jos sinuun sovellettava sääntö on epäoikeudenmukainen, tämä soveltaa sitä tarkasti, sentilleen, kaikkiin, joka kerta. Se ei tee säännöstä oikeudenmukaista, eikä se voi kertoa, että sääntö on epäoikeudenmukainen. Se vain varmistaa, ettei luku ole myös väärä, mikä on pienempi lupaus kuin toivoit, ja sellainen, joka oikeasti pidetään.

Mikään tästä ei muuta sitä yhtä asiaa, joka sinun pitäisi kuulla suoraan.

Joten sinulle päätyy luku, johon on liitetty sen oma marginaali, tai tyhjä kohta, johon olisi tullut keksitty luku. Sillä, missä kone sijaitsee, on myös merkitystä, ja enemmän kuin ihmiset odottavat. Sama työ tehtynä Ranskassa ja Saksassa tuottaa hyvin erilaiset hiililuvut, koska sähkö tuotetaan eri tavalla.

Laskenta ei ole täydellinen, ja ohjelmisto sanoo sen pyytämättä. Liian pienet työt eivät jätä siitä jälkeä ollenkaan. Sama työ ajettuna kahdesti palaa hieman erilaisena riippuen siitä, kuinka lämmin kone oli. Joillakin vuokratuilla tietokoneilla se ei näe mitään, ja se sanoo sen arvaamisen sijaan.

Tietokoneet käyttävät sähköä ajatteluun. Kaikki tietävät sen, eikä kukaan ole koskaan pystynyt kertomaan, kuinka paljon siitä kului mihinkään yksittäiseen työhön. Suorittimet pitävät omaa juoksevaa laskuria käyttämästään energiasta, ja se laskuri voidaan lukea. Joten työ voi palata mukanaan kirjattuna sen vaatima sähkö, ja jos kone ei osaa sanoa, ei mitään arvauksen sijaan.

Se voi myös vastata johonkin, mitä kukaan ei voinut kysyä muutama vuosi sitten: mitä summa maksoi sähkössä.

Eikä minkään tarvitse soittaa minnekään. Lukema, annos, jarrutusmatka: luku lasketaan siellä, missä se mitataan, joten siitä ei ole kopiota jonkun toisen tietokoneella, eikä mikään odota yhteyttä. Sillä on enemmän merkitystä, kun luku koskee kehoasi, kuin kun se koskee vettäsi.

Mittari on halpa osittain siksi, että se ei käsittele murtolukuja ollenkaan, joten se laskee kokonaisluvuilla. Sattumalta se on sama laskenta, joka antaa identtisen vastauksen jokaisella koneella. Joten kaapissasi oleva summa ei ole karkeampi versio pankin summasta, koska laatikko oli pieni. Se on sama summa.

Kaapissasi oleva mittari päättää, mitä olet velkaa vedestä. Sairaalaosaston pumppu päättää, kuinka paljon lääkettä menee sisään. Auton pyörän takana oleva laatikko päättää, kuinka kovaa jarrutetaan. Kukaan ei katso niitä, ja jokainen tekee samanlaista aritmetiikkaa kuin pankki rahoillasi. Se voidaan tehdä samalla tasolla, eikä vastauksen tarvitse koskaan poistua huoneesta, jossa se laskettiin.

organisaatio, joka säilytti työn, voi luovuttaa sen samana iltapäivänä

pyydät työvaiheita, ja se on normaali asia pyytää

ja joka tapauksessa työvaiheet, ei yhteenvetoa niistä

julkinen toimija, päätöksestä rahoistasi

Näin tehtynä vastaus ei ole kenenkään hatara muistikuva. Lähtöluvut säilytettiin, samoin se, mitä niille tehtiin ja missä järjestyksessä. Kun lasku ajetaan uudelleen, tulos on täsmälleen sama, ei vain lähellä. Jos tietoja on muutettu välissä, se näkyy ensin, ennen kuin kukaan ajaa mitään uudelleen.

Olet todennäköisesti kysynyt ja saanut huonon vastauksen. Joku katsoo laskennan nykyisen version, ajaa sen tämän päivän luvuilla ja kertoo, että tulos on suunnilleen oikein. Kukaan ei välttele. Se, mikä tuotti lukusi viime keväänä, ei ole enää olemassa, joten ei ole mitään, mihin osoittaa.

Mikään näistä ei vastaa kysymykseen, jonka kuka tahansa kysyisi seuraavaksi.

Viime maaliskuu tulee uudesta järjestelmästä täsmälleen samoin kuin vanhasta, joten tekemäsi ilmoitus on edelleen voimassa, eikä yhtäkään iltapäivää tarvitse menettää. Kun kysyt, miten luku saatiin, saat työvaiheet, et olankohautusta. Sinun ei tarvitse myöskään luottaa siihen, että työvaiheita ei ole muutettu, koska kaikki myöhemmät muutokset näkyvät.

Mikään vastauksesta ei tule koneesta. Ei ole pyöristystä, joka menee toisella sirulla yhteen suuntaan ja toisella toiseen, eikä oikotietä, jonka nopeampi tietokone ottaa mutta hitaampi ei. Vaihda kone, eikä luku muutu, eikä myöskään lomake, jonka lähetit, tai kirje, joka lainasi sitä.

Jossain pankkisi, energiayhtiösi tai verotoimiston taustalla ohjelmisto vaihdetaan. Kukaan ei kerro sinulle, etkä normaalisti välittäisi. Välität sinä päivänä, kun uusi järjestelmä laskee viime vuoden yhteen ja saa eri vastauksen, koska jo lähettämäsi lomake ei enää vastaa järjestelmää, joka sen tuotti, ja sinä olet se, jonka on selitettävä se.

Lasku maksetaan viikossa. Paperit luetaan uudelleen vuotta myöhemmin.

Tässä pyöristyskohta kirjataan kerran, ennen kuin mitään lasketaan yhteen, ja jokainen laskusi kopio noudattaa sitä. Siksi ei tule puhelua, ei tilin jäädytystä eikä kolmea viikkoa. Kopiot täsmäävät, koska ne laskettiin samalla tavalla, ei siksi, että joku istui jälkeenpäin ja sai ne täsmäämään.

Syy on pienempi kuin miltä se kuulostaa. Vero tulee sentin murto-osina, ja jonkun on päätettävä, mihin nämä murto-osat pyöristetään. Yksi järjestelmä pyöristää jokaisella rivillä. Toinen pyöristää kerran, loppusummassa. Molemmat ovat järkeviä, ja ne voivat päätyä sentin eroon ilman, että kumpikaan on väärässä.

Yksi lasku, kolme kopiota: kuitti kädessäsi, kaupan kassa ja pankkisi. Ajoittain kaksi niistä päättyy eri senttiin. Mitään ei varastettu eikä kukaan ollut huolimaton, ja silti sinä vastaat puheluun ja odotat kolme viikkoa, kun joku päättää, kumpi kopio oli oikea.

Tarpeeksi pieni ohitettavaksi, kunnes luku on se, mitä olet velkaa.

Tämä laskee kokonaislukuina, kuten laskisit kolikoita, joten mitään ei jää yli eikä mikään ajaudu. Mitä se tuo sinulle, on tylsää ja arvokasta. Puhelimesi, kaupan kassan kortinlukija ja tietokone toisessa maassa päätyvät kaikki samaan lukuun, eikä vanhin kolmesta ole yhtään vähemmän oikeassa kuin uusin.

Tietokone kirjoittaa kymmenyksen samalla tavalla kuin kirjoittaisit kolmanneksen desimaalilukuna, eli ei aivan. Yksinään ero on aivan liian pieni nähtäväksi. Se ei pysy yksinään: laskussa on rivejä, vuodessa on kaksitoista laskua, ja jokainen näistä eroista on edelleen loppusummassa, joka on luku, jonka maksamaan sinua pyydetään.

Saamasi luku tuli koneesta, ja toinen kone olisi voinut antaa sinulle hieman erilaisen. Pyydä tietokoneelta kymmenys plus kaksi kymmenystä, ja jos näytät kaikki sen sisältämät numerot, vastaus päättyy ylimääräiseen neloseen. Jokainen kone tekee niin, joten kukaan ei huomaa. Jokainen siivoaa ylimääräisen nelosen omalla tavallaan, ja niin yksi summa, laskettuna täällä ja laskettuna toisessa maassa, päättyy kahteen eri paikkaan.

Saat luvun, joka vastaa itsestään, ja päätöksen siitä, jossa on päivämäärä.

Sertifiointipaketti aloittaa keskustelun auditoijan kanssa, ja sen päättää sinun toimituksesi omaa tuotettasi vastaan, jota kukaan ei voi antaa sinulle. Ja jos yhtäkään organisaatiosi tuottamaa lukua ei koskaan tarvitse puolustaa sen ulkopuoliselle, rehellinen vastaus on, että mikään tästä ei ole muutoksen arvoista.

Energiamittari kattaa yhden käyttöjärjestelmän yhdellä arkkitehtuurilla, ja muualla se kieltäytyy arvioimasta. Ominaisuuden todistaminen vaatii ulkoisen ratkaisijan asennuksen, ja ilman sitä saat rajat ja välit, jotka ovat hyödyllisiä mutta eivät todisteita.

Mikään ei takaa sitä. Se tuottaa todisteita, ja ihminen arvioi todisteita. Se pitää huonosti valitun numeerisen sopimuksen täysin johdonmukaisesti ja tuottaa moitteettoman kirjauksen siitä, ja kirjaus on hyödyllinen osa, ei lupaus oikeellisuudesta, koska lupaus ei ole tarkistettavissa, mutta kirjaus on.

Ja on syytä olla yhtä suora siitä, mitä tämä ei sinulle tuo.

Mikään näistä neljästä ei ole luovuttu. Ne eivät koske, mikä on huomattavasti vahvempi asema kuin luopuminen, ja se on ero kirjaston ja palvelun välillä, joka on naamioitu sellaiseksi. Julkaisuartefaktisi kiinnittää version ja lisenssin, ja tunnettu rakennelma voidaan säilyttää häiriötä varten kysymättä keneltäkään.

Ei käsittelysopimusta laskentaa varten, koska ei ole käsittelijää. Ei siirtoarviointia, koska mikään ei poistu. Ei saatavuusriippuvuutta toimittajasta, koska yksikään päätepisteemme ei ole polulla. Eikä versiota, joka tulee alleen jonkun toisen julkaisuaikataulussa, koska sinä päätät, milloin siirryt.