- Käänteinen puolalainen merkintätapa eli postfix-notaatio sijoittaa operaattorit operandien jälkeen, mikä poistaa sulkeiden tarpeen.
- Se on johdettu puolalaisesta etuliitemerkinnästä, jonka Jan Łukasiewicz loi propositionaalisen logiikan yksinkertaistamiseksi.
- Hewlett-Packard teki siitä valtavasti suositun ikonisissa laskimissa, kuten HP-9100A ja HP-35.
- Laskennassa se toteutetaan pinojen avulla, ja se on perustavanlaatuinen järjestelmissä, kuten Unix ja pinopohjaiset kielet.
Olet luultavasti miettinyt, miten nuo vanhat tieteelliset laskimet toimivat niiden sisällä tai miksi jotkut ohjelmointikielet näyttävät kirjoittavan matematiikkaa taaksepäin. Vaikka meille on koulusta asti opetettu, että yhteen- ja vähennyslaskumerkit tulevat aina numeroiden keskelle, on olemassa kiehtova maailma nimeltä käänteinen puolalainen merkintätapa , joka rikkoo kaiken tietämämme.
Tämä järjestelmä ei ole moderni keksintö; sen juuret ovat puhtaassa logiikassa ja halussa tehostaa algebrallisia lausekkeita. Toisin kuin yleensä, tässä tekijöiden järjestys muuttaa niiden kirjoitustapaa, minkä ansiosta voimme jättää sulkeet kokonaan huomiotta ja yksinkertaistaa tietojen syöttämistä tietokonejärjestelmiin.
Alkuperä: Jan Łukasiewiczistä tietojenkäsittelyyn

Kaikki alkoi vuonna 1924 loistavan puolalaisen matemaatikon, logiikon ja filosofin Jan Łukasiewiczin ansiosta . Hän pyrki yksinkertaistamaan lauselogiikkaa ja loi niin sanotun prefix-notaatiojärjestelmän (tai puolalaisen notaatiojärjestelmän), jossa operaattori sijoitetaan operandin eteen. Esimerkiksi jos haluamme laskea yhteen 3 ja 4, 3 + 4:n sijaan kirjoittaisimme 3 + 4.
Vaikka se aluksi vaikutti loogikkojen ja filosofien kuriositeetilta, ja jopa Alonzo Church mainitsi sen matemaattista logiikkaa käsittelevissä teksteissään, idea löysi lopulta tiensä tietojenkäsittelytieteen maailmaan. Itse asiassa LISP- ohjelmointikieli perustaa syntaksinsa juuri tähän etuliitemalliin, mikä osoittaa, että logiikasta lähtöisin olevasta on tullut tehokas työkalu koodaukseen.
Mitä käänteinen puolalainen notaatio tarkalleen ottaen on?

Vaikka prefix-notaatiossa operaattori sijoitetaan operandin eteen, käänteinen puolalainen notaatio (tunnetaan myös nimellä RPN tai postfix-notaatio) tekee päinvastoin: se sijoittaa operaattorit operandien jälkeen. Näin ollen tavanomainen 2:n ja 5:n summa on 2 5 +.
Tämän järjestelmän tehokkain ominaisuus on, että niin kauan kuin operaattoreilla on kiinteä määrä operandeja, sulkeet voidaan poistaa . Otetaan esimerkiksi operaatio 5 * (12 + 4). Perinteisessä järjestelmässä tarvitsemme sulkeet pakottamaan yhteenlaskun ensin; RPN:ssä tämä kuitenkin kirjoitetaan yksinkertaisesti muodossa 5 12 4 + * . Tämä on paljon selkeämpää ja suoraviivaisempaa koneelle.
Hewlett-Packardin ja laskinten kulta-aika

60-luvun puolivälissä australialainen tiedemies Charles Leonard Hamblin hioi algoritmit tämän järjestelmän toteuttamiseksi elektronisissa laitteissa täydellisiksi. Silloin Hewlett-Packard päätti investoida siihen ja julkaisi vuonna 1968 HP-9100A-laskimen, joka mulisti alan. Pian sen jälkeen saapui legendaarinen HP -35 , ensimmäinen taskukokoinen tieteellinen laskin, joka toi RPN:n tuhansien insinöörien ja opiskelijoiden käsiin vuosina 1972–1975.
Näiden koneiden käyttö vaati hieman ylimääräistä henkistä ponnistelua tuloksen tulkitsemiseksi, mutta se oli paljon tehokkaampaa näppäinpainallusten suhteen . Pitkän yhtälön kirjoittamisen ja yhtäsuuruus-näppäimen painamisen sijaan syötettiin numeroita ja operaattoreita, jotka käsiteltiin välittömästi, mikä tehosti työnkulkua huomattavasti.
Tekninen toteutus: Savupiiput ja putket

Ohjelmoinnin näkökulmasta RPN on loistava, koska se on erittäin helppo toteuttaa käyttämällä pinomuistiksi kutsuttua tietorakennetta . Järjestelmä tallentaa numerot pinoon ja heti operaattorin ilmestyttyä se poimii viimeksi syötetyt arvot, suorittaa laskutoimituksen ja siirtää tuloksen takaisin pinoon.
Tämä tehokkuus on syy siihen, miksi RPN on edelleen osa modernia teknologiaa, vaikka fyysisiä laskimia ei enää näekään yhtä paljon käyttävän tätä järjestelmää. Sitä käytetään laajalti pinopohjaisissa ohjelmointikielissä ja käyttöjärjestelmissä, jotka perustuvat putkistoihin tai tiedonkulkuun, klassinen esimerkki tästä on sen esiintyminen Unix- ympäristössä.
Łukasiewicziin ja logiikkaan liittyviä kuriositeetteja
Jan Łukasiewicz ei ainoastaan jättänyt meille tätä tapaa kirjoittaa matematiikkaa. Hän oli moniarvoisen logiikan ja modaalilogiikan edelläkävijä. Hän jopa tarttui älyllisiin haasteisiin, kuten valehtelijan paradoksiin (lauseke "tämä on epätosi"). Hänen ratkaisunsa oli loistava: hän väitti, että loogiset periaatteet soveltuvat vain objekteihin, jotka voivat olla muuttujien arvoja, ja koska tuo ristiriitainen lause ei voi olla muuttujan arvo, se on yksinkertaisesti logiikan ulkopuolella eikä sitä voida analysoida perinteisillä loogisilla menetelmillä.
Tämä kiehtova matka puolalaisen logiikan mielestä HP-laskinten piireihin ja Unix-ytimeen osoittaa meille, kuinka vaihtoehtoinen tapa järjestää tietoa voi optimoida tiedonkäsittelyä. Poistamalla sulkeiden tarpeen ja luottamalla pino-ohjelmien käyttöön, käänteinen puolalainen merkintätapa on edelleen näkymätön mutta perustavanlaatuinen pilari monien nykyaikaisten tietokonejärjestelmien arkkitehtuurissa.