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:

    What a cheerful rhyme! Clean not mean!
    Been not seen! Not tired—expired!
    We must now decide about place.
    We decide that place is the big weeping face
    And the other abstract lace of the race.
    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)