Caietul de sarcini orice exemplu realist, chiar și o astfel de simplu ca stiva se confruntă în mod inevitabil, probleme nu peste tot anumite operații: unele operațiuni să nu se aplice tuturor elementelor posibile ale seturilor originale. De exemplu, acesta este cazul pentru funcțiile și eliminați elementul: Nu puteți șterge un element dintr-o stivă de gol, iar stiva nu este membru superior gol.
Soluția la această problemă, utilizată în specificația de mai sus, este de a defini aceste funcții parțiale. Funcția setului inițial de X în rezultatul stabilit Y este parțială. în cazul în care nu este definit pentru toate elementele X. Funcția, care nu este o parțială numită completă. Un exemplu simplu de funcție parțială în matematică obișnuite este o funcție de tratamentul numerelor inv reale, a căror valoare este un număr real x este
Deoarece inv nu este definit la x = 0, putem defini ca o funcție parțială de pe setul R tuturor numerelor reale:
Pentru a indica faptul că funcția este parțială, utilizați o săgeată a trecut, iar trăgătorul obișnuită ar însemna că funcția este, evident, completă.
Region (determinarea) tipul funcție parțială este un subset al elementelor X, pentru care această funcție are o valoare. În exemplul nostru, zona este o funcție inv R -, adică setul de numere reale, altele decât 0.
În unele cazuri, este de dorit să pună aceeași funcție descrisă ca o parțială, de exemplu, este necesar ca în exemplele de realizare, cum ar fi un MASSIV_VVERH și MASSIV_VNIZ care susțin executarea unui număr finit de operații consecutive pentru a pune fiecare stivă dat. Aceasta este de fapt un exercițiu util - adaptarea caietul de sarcini STIVA pentru a se asigura că ea a descris volumul final stiva limitat, la fel ca în forma de mai sus, acesta nu conține nicio restricție cu privire la mărimea stack.