Puolan merkintä ( tietue ), joka tunnetaan myös nimellä etuliitemerkintä (tietue), on loogisten , aritmeettisten ja algebrallisten lausekkeiden kirjoittamisen muoto. Tällaiselle merkinnälle on ominaista se , että operaattori sijaitsee operandien vasemmalla puolella . Jos operaattorilla on kiinteä arity , tällaisessa merkinnässä ei ole sulkeita ja se voidaan tulkita ilman epäselvyyttä. Puolalainen loogikko Jan Lukasiewicz keksi tämän merkinnän noin vuonna 1920 yksinkertaistaakseen propositionallogiikkaa .
Alonzo Church mainitsi tämän merkinnän klassisessa matemaattista logiikkaa käsittelevässä kirjassaan huomionarvoisena merkintäjärjestelmänä ja jopa asetti vastakkain Alfred Whiteheadin ja Bertrand Russellin loogisten merkintöjen esityksiin Principia Mathematicassa . [yksi]
Vaikka puolalaista merkintää ei käytetä matematiikassa, sitä käytetään laajalti tietojenkäsittelytieteessä .
Etuliitemerkinnöissä numeroiden 1 ja 2 lisääminen kirjoitetaan "+ 1 2" sen sijaan, että kirjoitettaisiin "1 + 2". Monimutkaisemmissa lausekkeissa operaattorit edeltävät operandia, mutta itse operandit voivat olla ei-triviaaleja lausekkeita, joissa on omat operaattorinsa. Esimerkiksi lauseke, joka on kirjoitettu perinteisellä infix-merkinnällä
(5 − 6) * 7etuliitteessä voidaan kirjoittaa muodossa
*(− 5 6) 7tai yksinkertaisesti
* − 5 6 7Koska mikä tahansa yksinkertainen aritmeettinen operaatio on binäärinen, sen etuliiteesitystä ei voida tulkita kahdella tavalla, joten sulkuja ei tarvitse käyttää. Edellisessä esimerkissä sulut tarvittiin perinteisessä infix-merkinnässä, ja nyt siirrämme ne
5 − (6 * 7)tai vain poista
5 − 6 * 7tämä muuttaa koko lausekkeen arvioinnin merkitystä ja tulosta. Vastaava etuliitemerkintä tällaiselle lausekkeelle näyttäisi tältä:
− 5 * 6 7Vähennyslaskua viivästetään, kunnes molemmat operandit (5 ja 6:n ja 7:n kertolaskutulos) on luettu. Kuten muissakin merkinnöissä, syvimmät lausekkeet arvioidaan ensin, mutta puolalaisessa merkinnässä lausekkeen syvyyden määrää järjestys, ei sulkumerkit.
Etuliitteen merkintä yksinkertaisessa aritmetiikassa on suurelta osin akateemista mielenkiintoa. Kuten jälkiliitteen merkintää , etuliitemerkintää on käytetty joissakin kaupallisissa tietokoneissa (HP-11C). Etuliitemerkinnän oppiminen on usein ensimmäinen askel kääntäjän suunnittelussa.
Etuliitemerkintöjä käytetään laajalti Lisp - ohjelmointikielen s-lausekkeissa , joissa tarvitaan sulkeita, koska aritmeettisilla operaattoreilla on erilaisia ariteetteja. Ambi - ohjelmointikieli käyttää puolalaista merkintää aritmeettisiin operaatioihin ja ohjelman rakenteeseen. Postfix-merkintää käytetään monissa pinokielissä , kuten PostScript , ja se on perusta monille laskentakoneille (laskimille), erityisesti Hewlett-Packardin laskentakoneille .
On myös tärkeää huomata, että lausekkeen operandien lukumäärän on oltava yksi enemmän kuin operaatioiden lukumäärä, muuten lausekkeessa ei ole järkeä (kun otetaan huomioon, että lausekkeessa käytetään vain binäärioperaatioita ). Tämä voidaan helposti jättää huomiotta, kun työskentelet pitkien, monimutkaisten lausekkeiden kanssa, mikä johtaa virheisiin. Siksi etuliitemerkintöjä käytettäessä on syytä kiinnittää huomiota operaatioiden ja operandien määrään.
Toimintojen järjestys määräytyy etuliitemerkinnän rakenteen mukaan ja on helposti määritettävissä. Tärkeintä on muistaa, että lauseketta arvioitaessa operandien järjestys on säilytettävä. Tämä ei ole tärkeää kommutatiivisille operaatioille, mutta ei-kommutatiivisille operaatioille, kuten vähennys- ja jakolasku , tämä seikka on avain lausekkeen jäsentämisessä. Esimerkiksi seuraava lauseke:
/ 10 5 = 2 (etuliitemerkintä)
pitäisi lukea "jakamalla 10 viidellä". Siksi laskennan tulos on 2, ei ½, mikä olisi seurausta lausekkeen virheellisestä jäsennyksestä.
Etuliitemerkinnät ovat erityisen suosittuja pinokielissä , koska ne pystyvät helposti erottamaan toimintojen järjestyksen ilman sulkeita. Etuliitemerkinnän operaattoreiden arviointijärjestyksen määrittämiseksi ei tarvitse edes muistaa koko operatiivista hierarkiaa, kuten infix-merkinnässä . Sen sijaan, että jäsentäisi lauseketta löytääksesi ensin arvioitavan operaattorin, lauseke tulee lukea vasemmalta oikealle katsomalla operaattoria ja sen kahta lähintä operandia. Jos näiden operandien joukossa on toinen operaattori, ensimmäisen operaattorin arviointi viivästyy , kunnes uusi operaattori on arvioitu. Tämän prosessin iteraatioita toistetaan, kunnes operaattori on arvioitu, minkä täytyy lopulta tapahtua, jos lausekkeen operandien lukumäärä on yksi enemmän kuin operaatioiden määrä (binäärioperaatioiden tapauksessa). Kun operaattori on arvioitu, se ja sen kaksi operandia korvataan tuloksena olevalla arvolla (operandilla). Koska operaattori ja kaksi operandia korvataan lasketulla operandilla, on yksi operaattori ja yksi vähemmän operandi. Tämän jälkeen lausekkeeseen jää myös N operaattoria ja N + 1 operandia, jolloin prosessia voidaan jatkaa iteratiivisesti .
Alla olevasta esimerkistä näet, että näennäisesti monimutkaista ilmaisua etuliitemerkinnässä, itse asiassa, ei ole niin vaikea ymmärtää (yhtäsuuruusmerkin oikealla puolella, vastaava ilmaisu infix-merkinnässä):
- * / 15 - 7 + 1 1 3 + 2 + 1 1 = 15 / (7 - (1 + 1) ) * 3 - (2 + (1 + 1)) - * / 15 - 7 2 3 + 2 + 1 1 = 15 / (7 - 2) * 3 - (2 + (1 + 1)) - * / 15 5 3 + 2 + 1 1 = 15 / 5 * 3 - (2 + (1 + 1)) - * 3 3 + 2 + 1 1 = 3 * 3 - (2 + (1 + 1)) - 9 + 2 + 1 1 = 9 - (2 + (1 + 1) ) - 9 + 2 2 = 9 - (2 + 2) - 9 4 = 9 - 4 5 = 5Alla oleva taulukko näyttää Jan Lukasiewiczin ehdottaman propositionaalisen logiikan ydinmerkinnän . Jotkut puolalaisen merkinnän kirjaimet tarkoittavat tiettyjä puolan kielen sanoja :
konsepti | Ehdollinen merkintä |
Puolan merkintä |
Puolan sana |
---|---|---|---|
Kielteisyys | φ | Nφ | negacja |
Yhteys | φ ψ | Kφψ | koniunkcja |
Disjunktio | φ ψ | Aφψ | alternatywa |
seuraamus | φ ψ | Cφψ | |
Vastaavuus | φ ψ | Eφψ | ekwiwalencja |
Schaefferin aivohalvaus | Dφψ | dysjunkcja | |
Mahdollisuus | φ | Mφ | możliwość |
Tarve | φ | Lφ | |
Universaali kvantori | φ | Πφ | |
Olemassaolon kvantori | φ | Σφ |
Huomaa, että Lukasiewiczin moniarvologiikkaa käsittelevässä artikkelissa kvantisoijat on järjestetty propositionaalisen arvon mukaan.