Abstraction
In his famous novel Around the World in Eighty Days, Jules Verne informs us that the hero Phileas Fogg (said to have lived in London in 1872) was a stickler for certain things: "On this very 2nd of October he had dismissed James Forster, because that luckless youth had brought him shaving-water at eighty-four degrees Fahrenheit instead of eighty-six." Most of us would scarcely bother with such a trifle, but the fastidious Mr. Fogg was persistent in his style which was mostly overkill, and fortunate in being able to carry on in such a fashion. Most people, at least in this day and age, would settle for specifying that the water be "warm but not scalding," or something to that effect, leaving the precise temperature to the good judgement and understanding of the person listening.
Thus, the style of Mr. Fogg's specification was quantitative, demanding that a precise numerical specification be adhered to. The common sense style is qualitative, specifying in general terms what is expected, without going into details. Accordingly, the qualitative specification may be viewed as an abstraction of the quantitative specification, useful for instance when one does not have access to a thermometer, or when unlike Mr. Fogg, one is willing to overlook small differences. The numerical details are discarded, but a simpler qualitative summary of them is retained. This manner of qualitative reasoning is common in real life, as well as in AI and other fields of computer science. For example, logic gates may be considered as accepting or outputting a value of 0 or 1 when their voltages are in certain acceptable ranges for either; the precise voltages are not of interest.
Abstraction, used as a verb, is the manner or process by which one derives a qualitative model or specification from a rigorous quantitative one. Even more generally, it is possible to say that abstraction is where any inessential or unavailable details are disregarded and a simpler formulation is obtained that retains the flavor of the complicated specification. It is also common to speak of abstraction, as a noun, to refer to the qualitative model or specification itself.
Qualitative abstractions have certain advantages and disadvantages in comparison with formal, quantitative specifications. There are situations where a qualitative model, sans precise mathematical information, is simply not sufficient; however, there are also cases where a qualitative model has its own advantages.
Abstractions are often easier to understand and work with than quantitative models. Precise relations between, or numerical values of, a system may be difficult or impossible to handle. Even if a complete numerical model is available, knowledge of the values of each parameter may not be availed of in practice. A numerical physiological model of the neuron would require knowledge of its length, width, electrical conductance, etc., which cannot be measured easily. However, if one insists on using the quantitative model, then to simulate such an entity, all these values must be known in advance before the simulation may be started.
Typically, in such a situation, a user is likely to make estimates or guesses for parameters, and hope that they are not too far off the mark. In such a case, however, the results of the simulation are of unknown accuracy. It will even be impossible to know whether the obtained results are qualitatively accurate.
To avoid these problems, an abstraction that preserves some of the logical structure of the quantitative system is suitable. The guesswork may then be avoided, and at least the qualitative accuracy of a simulation may be obtained.
A special case of abstraction is called functional abstraction, where the function or operation of a system or a machine is described, with little or no regard to the details of its implementation. For instance, in asking questions such as, "How does a refrigerator cool?" or "How does an airplane fly?" it is possible to apply functional abstraction and describe in basic terms the concepts of physics involved in each instance. The actual numerical models and explanations are extremely complex and do not lend themselves to simple explanations, of course. For example, the precise geometric structure of an aircraft wing, the precise metallurgy that must be practiced to create the alloys used to build an aircraft, and the precise business and engineering practices that an aircraft manufacturer has to employ in order to produce viable aircraft in an economical fashion, are all possible parts of a quantitative answer to the question, "How does an airplane fly?"--but none is really appropriate for a general answer.
Thus, functional abstraction is concerned with describing the qualitative mechanism or structure which causes a given device or system to function in the manner it does. Details of implementation are disregarded in a functional abstraction. Even if the numerical parameters of the system change some, it is possible that the abstraction will continue to hold; such commonness is a virtue of the abstract description. For instance, there are many different types of aircraft, all of which must be covered under the answer to the question above. Having a functional abstraction enables us to reason about devices and systems; people who deal with such abstractions are commonly called theoreticians, while people who work on implementations of abstractions are commonly called practitioners. It is comparatively rare to find someone who does both.
This is the complete article, containing 874 words
(approx. 3 pages at 300 words per page).