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)) = falseRead more about this topic: Stack (abstract Data Type)
Famous quotes containing the words abstract and/or definition:
“A work of art is an abstract or epitome of the world. It is the result or expression of nature, in miniature. For, although the works of nature are innumerable and all different, the result or the expression of them all is similar and single.”
—Ralph Waldo Emerson (18031882)
“Although there is no universal agreement as to a definition of life, its biological manifestations are generally considered to be organization, metabolism, growth, irritability, adaptation, and reproduction.”
—The Columbia Encyclopedia, Fifth Edition, the first sentence of the article on life (based on wording in the First Edition, 1935)