Apstraktni tip podataka LIST
elementtype . . . bilo koji tip.
LIST . . . podatak tipa LIST je konačni niz (ne nužno različitih) podataka tipa elementtype.
position . . . podatak ovog tipa služi za identificiranje elementa u listi, dakle za zadavanje pozicije u listi. Smatramo da su u listi (a1, a2, . . . ,an) definirane pozicije koje odgovaraju prvom, drugom, . . . , n-tom elementu, a također i pozicija na kraju liste (neposredno iza n-tog elementa).
END(L) . . . funkcija koja vraća poziciju na kraju liste L.
MAKE NULL(&L) . . . funkcija pretvara listu L u praznu listu, i vraća poziciju END(L).
INSERT(x,p,&L) . . . funkcija ubacuje podatak x na poziciju p u listu L. Pritom se elementi koji su dotad bili na poziciji p i iza nje pomiču za jednu poziciju dalje. Dakle, ako je L oblika (a1, a2, . . . ,an), tada L postaje (a1, a2, . . . ,ap-1, x, ap, . . . ,an). Ako je p == END(L) tada L postaje (a1, a2, . . . ,an, x). Ako u L ne postoji pozicija p, rezultat je nedefiniran.
DELETE(p,&L) . . . funkcija izbacuje element na poziciji p iz liste L. Dakle, ukoliko je lista L oblika (a1, a2, . . . ,an) tada L postaje (a1, a2, . . . ,ap-1, ap+1, . . . ,an). Rezultat nije definiran ako L nema pozicije p ili ako je p == END(L).
FIRST(L) . . . funkcija vraća prvu poziciju u listi L. Ako je L prazna, vraća se END(L).
NEXT(p,L), PREVIOUS(p,L) . . . funkcije koje vraćaju poziciju iza odnosno ispred p u listi L. Ako je p zadnja pozicija u L, tada je NEXT(p,L) == END(L). NEXT( ) je nedefinirana za p == END(L).
PREVIOUS( ) je nedefinirana za p == FIRST(L). Obje funkcije su nedefinirane ako L nema pozicije p.
RETRIEVE(p,L) . . . funkcija vraća element na poziciji p u listi L. Rezultat je nedefiniran ako je p == END(L) ili ako L nema pozicije p.


Apstraktni tip podataka STACK
elementtype . . . bilo koji tip.
STACK . . . podatak tipa STACK je konačni niz podataka tipa elementtype.
MAKE NULL(&S) . . . funkcija pretvara stog S u prazni stog.
EMPTY(S) . . . funkcija koja vraća “istinu” ako je S prazan stog. Inače vraća “laž”.
PUSH(x,&S) . . . funkcija ubacuje element x na vrh stoga S.
POP(&S) . . . funkcija izbacuje element s vrha stoga S.
TOP(S) . . . funkcija vraća element koji je na vrhu stoga S (stog ostaje nepromijenjen).


Apstraktni tip podataka QUEUE
elementtype . . . bilo koji tip.
QUEUE . . . podatak tipa QUEUE je konačni niz podataka tipa elementtype.
MAKE NULL(&Q) . . . funkcija pretvara red Q u prazan red.
EMPTY(Q) . . . funkcija vraća “istinu” ako je Q prazan red, inače “laž”.
ENQUEUE(x,&Q) . . . funkcija ubacuje element x na začelje reda Q.
DEQUEUE(&Q) . . . funkcija izbacuje element na čelu reda Q.
FRONT(Q) . . . funkcija vraća element na čelu reda Q (red ostaje nepromjenjen).


Apstraktni tip podataka TREE
node . . . bilo koji tip (imena čvorova). U skupu node uočavamo jedan poseban element LAMBDA (koji služi kao ime nepostoječeg čvora).
labeltype . . . bilo koji tip (oznake čvorova).
TREE . . . podatak tipa TREE je (uređeno) stablo čiji čvorovi su podaci tipa node (međusobno različiti i različiti od LAMBDA). Svakom čvoru je kao oznaka pridružen podatak tipa labeltype.
MAKE ROOT(l,&T) . . . funkcija pretvara stablo T u stablo koje se sastoji samo od korijena s oznakom l. vraća čvor koji služi kao korijen (tj. njegovo ime).
INSERT CHILD(l,i,&T) . . . funkcija u stablo T ubacuje novi čvor s oznakom l, tako da on bude prvo po redu dijete čvora i. Funkcija vraća novi čvor. Nije definirana ako i ne pripada T. .
INSERT SIBLING(l,i,&T) . . . funkcija u stablo T ubacuje novi čvor s oznakom l, tako da on bude iduči po redu brat čvora i. Funkcija vraća novi čvor. Nije definirana ako je i korijen ili ako i ne pripada T.
DELETE(i,&T) . . . funkcija izbacuje list i iz stabla T. Nije definirana ako je i korijen, ili ako i ne pripada T ili ako i ima djece.
ROOT(T) . . . funkcija vraća korijen od stabla T.
FIRST CHILD(i,T) . . . funkcija vraća prvo po redu dijete čvora i u stablu T. Ako je i list, vraća LAMBDA. Nije definirana ako i ne pripada T.
NEXT SIBLING(i,T) . . . funkcija vraća idučeg po redu brata čvora i u stablu T. Ako je i zadnji brat, tada vraća LAMBDA. Nije definirana ako i ne pripada T.
PARENT(i,T) . . . funkcija vraća roditelja čvora i u stablu T. Ako je i korijen, tada vraća LAMBDA. Nije definirana ako i ne pripada T.
LABEL(i,T) . . . funkcija vraća oznaku čvora i u stablu T. Nije definirana ako i ne pripada T.
CHANGE LABEL(l,i,&T) . . . funkcija mijenja oznaku čvora i u stablu T, tako da ta oznaka postane l. Nije definirana ako i ne pripada T.


Apstraktni tip podataka BTREE
node . . . bilo koji tip (imena čvorova). U skupu node uočavamo jedan poseban element LAMBDA (koji služi kao ime nepostoječeg čvora).
labeltype . . . bilo koji tip (oznake čvorova).
BTREE . . . podatak tipa BTREE je binarno stablo čiji čvorovi su podaci tipa node (medusobno različiti i različiti od LAMBDA). Svakom čvoru je kao oznaka pridružen podatak tipa labeltype.
MAKE NULL(&T) . . . funkcija pretvara binarno stablo T u prazno binarno stablo.
EMPTY(T) . . . funkcija vraća “istinu” ako i samo ako je T prazno binarno stablo.
CREATE(l,TL,TR,&T) . . . funkcija stvara novo binarno stablo T, kojem je lijevo podstablo TL, a desno pod-stablo TR (TL i TR moraju biti disjunktni). Korijen od T dobiva oznaku l.
LEFT SUBTREE(T,&TL), RIGHT SUBTREE(T,&TR) . . . funkcija preko parametra TL odnosno TR vraća lijevo odnosno desno pod-stablo binarnog stabla T. Nije definirana ako je T prazno.
INSERT LEFT CHILD(l,i,&T), INSERT RIGHT CHILD(l,i,&T) . . . funkcija u binarno stablo T ubacuje novi čvor s oznakom l, tako da on bude lijevo odnosno desno dijete čvora i. Funkcija vraća novi čvor. Nije definirana ako i ne pripada T ili ako i već ima dotično dijete.
DELETE(i,&T) . . . funkcija izbacuje list i iz binarnog stabla T. Nije definirana ako i ne pripada T ili ako i ima djece.
ROOT(T) . . . funkcija vraća korijen binarnog stabla T. Ako je T prazno, vraća LAMBDA.
LEFT CHILD(i,T), RIGHT CHILD(i,T) . . . funkcija vraća lijevo odnosno desno dijete čvora i u binarnom stablu T. Ako i nema dotično dijete, vraća LAMBDA. Nije definirana ako i ne pripada T.
PARENT(i,T) . . . funkcija vraća roditelja čvora i u binarnom stablu T. Ako je i korijen, tada vraća LAMBDA. Nije definirana ako i ne pripada T.
LABEL(i,T) . . . funkcija vraća oznaku čvora i u binarnom stablu T. Nije definirana ako i ne pripada T.
CHANGE LABEL(l,i,&T) . . . funkcija mijenja oznaku čvora i u stablu T, tako da ta oznaka postane l. Nije definirana ako i ne pripada T.


Apstraktni tip podataka SET
elementtype . . . bilo koji tip s totalnim uredajem <=.
SET . . . podatak tipa SET je konačni skup čiji elementi su (medusobno različiti) podaci tipa elementtype.
MAKE NULL(&A) . . . funkcija pretvara skup A u prazan skup.
INSERT(x,&A) . . . funkcija ubacuje element x u skup A.
DELETE(x,&A) . . . funkcija izbacuje element x iz skupa A.
MEMBER(x,A) . . . funkcija vraća “istinu” ako je x element od A, odnosno “laž” ako nije.
MIN(A), MAX(A) . . . funkcija vraća najmanji odnosno najveći element skupa A, u smislu uredaja <=. Nije definirana ako je A prazan skup.
SUBSET(A,B) . . . funkcija vraća “istinu” ako je A podskup od B, inače vraća “laž”.
UNION(A,B,&C) . . . funkcija pretvara skup C u uniju skupova A i B.
INTERSECTION(A,B,&C) . . . funkcija pretvara skup C u presjek skupova A i B.
DIFFERENCE(A,B,&C) . . . funkcija pretvara skup C u razliku skupova A i B.


Apstraktni tip podataka DICTIONARY
elementtype . . . bilo koji tip s totalnim uredajem <=.
DICTIONARY . . . podatak tipa DICTIONARY je konačni skup čiji elementi su (medusobno različiti) podaci tipa elementtype.
MAKE NULL(&A) . . . funkcija pretvara riječnik A u prazan riječnik.
INSERT(x,&A) . . . funkcija ubacuje element x u riječnik A.
DELETE(x,&A) . . . funkcija izbacuje element x iz riječnika A.
MEMBER(x,A) . . . funkcija vraća “istinu” ako je x element od A, odnosno “laž” ako nije.


Apstraktni tip podataka PRIORITY QUEUE
elementtype . . . bilo koji tip s totalnim uredajem <=.
PRIORITY QUEUE . . . podatak ovog tipa je konačni skup čiji elementi su (medusobno različiti) podaci tipa elementtype.
MAKE NULL(&A) . . . funkcija pretvara skup A u prazni skup.
EMPTY(A) . . . funkcija vraća “istinu” ako je A prazan skup, inače vraća “laž”.
INSERT(x,&A) . . . funkcija ubacuje element x u skup A.
DELETE MIN(&A) . . . funkcija iz skupa A izbacuje najmanji element, te vraća taj izbačeni element. Nije definirana ako je A prazan skup.


Apstraktni tip podataka MAPPING
domain . . . bilo koji tip (domena).
range . . . bilo koji tip (kodomena).
MAPPING . . . podatak tipa MAPPING je preslikavanje čiju domenu čine podaci tipa domain, a kodomenu podaci tipa range.
MAKE NULL(&M) . . . funkcija pretvara preslikavanje M u nul-preslikavanje, tj. takvo koje nije nigdje definirano.
ASSIGN(&M,d,r) . . . funkcija definira M(d) tako da bude M(d) jednako r, bez obzira da li je M(d) prije bilo definirano ili nije.
DEASSIGN(&M,d,r) . . . funkcija uzrokuje da M(d) postane nedefinirano, bez obzira da li je M(d) bilo prije definirano ili nije.
COMPUTE(M,d,&r) . . . ako je M(d) definirano, tada funkcija vraća “istinu” i pridružuje varijabli r vrijednost M(d), inače funkcija vraća “laž”.

Apstraktni tip podataka RELATION
domain1 . . . bilo koji tip (prva domena).
domain2 . . . bilo koji tip (druga domena).
set1 . . . podatak tipa set1 je konačan skup podataka tipa domain1.
set2 . . . podatak tipa set2 je konačni skup podataka tipa domain2.
RELATION . . . podatak tipa RELATION je binarna relacija čiju prvu domenu čine podaci tipa domain1, a drugu domenu podaci tipa domain2.
MAKE NULL(&R) . . . funkcija pretvara relaciju R u nul-relaciju, tj. takvu u kojoj ni jedan podatak nije ni s jednim u relaciji.
RELATE(&R,d1,d2) . . . funkcija postavlja da je d1 R d2, bez obzira da li je to već bilo postavljeno ili nije.
UNRELATE(&R,d1,d2) . . . funkcija postavlja da d1 6R d2, bez obzira da li je to već bilo postavljeno ili nije.
COMPUTE2(R,d1,&S2) . . . za zadani d1 funkcija skupu S2 pridružuje kao vrijednost {d2 | d1 R d2}.
COMPUTE1(R,&S1,d2) . . . za zadani d2 funkcija skupu S1 pridružuje kao vrijednost {d1 | d1 R d2}.

Apstraktni tip podataka DIGRAPH
node . . . bilo koji tip sa totalnim uređajem <=. Uočavamo jedan istaknuti element LAMBDA.
arc . . . bilo koji tip sa totalnim uređajem <=. Uočavamo jedan istaknuti element NI.
nlabeltype . . . bilo koji tip.
alabeltype . . . bilo koji tip.
DIGRAPH . . . usmjereni grafovi. Čvorovi su podaci tipa node (međusobno različiti i različiti od LAMBDA). Lukovi su podaci tipa arc (međusobno različiti i različiti od NI.) Čvorovi odnosno lukovi označeni su oznakama tipa nlabeltype odnosno alabeltype.
MAKE_NULL(&G) . . . procedura pretvara graf G u prazan graf.
INSERT_NODE(&G, nl) . . . funkcija ubacuje u graf G novi čvor s oznakom nl, te vraća taj novi čvor.
INSERT_ARC(&G, x1, x2, al) . . . funkcija ubacuje u G luk od čvora x1 do x2, s oznakom al.
DELETE_NODE(&G, x) . . . procedura izbacuje čvor x iz grafa G.
DELETE_ARC(&G, y) . . . procedura izbacuje luk y iz grafa G.
LOCATION(G, nl) . . . funkcija vraća prvi (u smislu <=) čvor grafa G sa oznakom nl, ili LAMBDA ako takav čvor ne postoji.
FIRST_ARC(G, x) . . . funkcija vraća prvi (u smislu <=) luk grafa G koji izlazi iz čvora x ili NI, ako takav ne postoji.
NEXT_ARC(G, y) . . . funkcija vraća iduči (u smislu <=) luk grafa G koji izlazi iz čvora x, ili NI.
HEAD(G, y) . . . funkcija vraća čvor u kojeg ulazi luk y grafa G.
NLABEL(G, x), ALABEL(G, y) . . . funkcija vraća oznaku čvora x ( odnosno luka y) u grafu G
CHANGE_NLABEL(&G, x, nl), CHANGE_ALABEL(&G, y, al) . . . procedura mijenja oznaku čvora x (odnosno luka y) u grafu G, tako da oznaka postane nl (odnosno al.)