Abstract Data Types or ADTs Are A Mathematical Specification of A Set of Data and The Set of Operations That Can Be Performed On The Data
Abstract Data Types or ADTs Are A Mathematical Specification of A Set of Data and The Set of Operations That Can Be Performed On The Data
of operations that can be performed on the data. They are abstract in the sense that the
focus is on the definitions of the constructor that returns an abstract handle that
represents the data, and the various operations with their arguments. The actual
implementation is not defined, and does not affect the use of the ADT.
For example, rational numbers (numbers that can be written in the form a/b where a
and b are integers) cannot be represented natively in a computer. A Rational ADT could
be defined as shown below.
Construction: Create an instance of a rational number ADT using two integers, a and b,
where a represents the numerator and b represents the denominator.
Operations: addition, subtraction, multiplication, division, exponentiation, comparison,
simplify, conversion to a real (floating point) number.
To be a complete specification, each operation should be defined in terms of the data.
For example, when multiplying two rational numbers a/b and c/d, the result is defined as
ac/bd. Typically, inputs, outputs, preconditions, postconditions, and assumptions to the
ADT are specified as well.