Stack (abstract Data Type) - Abstract Definition

Abstract Definition

A stack is a basic computer science data structure and can be defined in an abstract, implementation-free manner, or it can be generally defined as a linear list of items in which all additions and deletion are restricted to one end that is Top.

This is a VDM (Vienna Development Method) description of a stack:

Function signatures:

init: -> Stack push: N x Stack -> Stack top: Stack -> (N U ERROR) remove: Stack -> Stack isempty: Stack -> Boolean

(where N indicates an element (natural numbers in this case), and U indicates set union)

Semantics:

top(init) = ERROR top(push(i,s)) = i remove(init) = init remove(push(i, s)) = s isempty(init) = true isempty(push(i, s)) = false

Read more about this topic:  Stack (abstract Data Type)

Famous quotes containing the words abstract and/or definition:

    Alice grown lazy, mammoth but not fat,
    Declines upon her lost and twilight age;
    Above in the dozing leaves the grinning cat
    Quivers forever with his abstract rage....
    Allen Tate (1899–1979)

    ... we all know the wag’s definition of a philanthropist: a man whose charity increases directly as the square of the distance.
    George Eliot [Mary Ann (or Marian)