"Knuth has argued that algorithmatics and mathematics [that word needs much
refining; for the moment I'll just put a small m], are different things,
and those who are good or able in one may not be good at the other; see
D.E. Knuth, Algorithmic thinking and mathematical thinking, American
Mathematical Monthly 9 (1985) 171-181.
"Generalising this, I think of Mathematics in the wide sense, big M, as a
great multidimensional cloud, in which the cluster of
Euclidean-and-later-type deductive procedures are a long way from the
cluster of algorithmatics...."
Now Knuth treats "algorithms" broadly as "the whole range of
concepts dealing with well-defined processes," while agreeing
that others define them only as "methods for the solution of particular
problems." At a minimum, we must realize that the tendency to think
of an algorithm as necessarily numerical is just a historical
accident.
If we agree then that a specified process for producing
a solution for a specified type of mathematical problem must count
as an algorithm, we can observe that algorithms abound in classical
Greek mathematics -- and are also always accompanied by proofs of
their validity. For instance, Euclid, Elements I.9 is "To bisect a
given rectilinear angle." A specific procedure for constructing
a line is laid down, and it is then proved that the line so
constructed does indeed bisect the angle.
We might remember for contrast that surprisingly many people
have given algorithms for straightedge-and-compass trisection
of angles (and have been fully satisfied that they work), though
in fact none of them are valid.
And of course there is a numerical algorithm in Euclid, THE
Euclidean algorithm (Elements VII.2) : "Given two numbers
not prime to one another, to find their greatest common
measure." Again the algorithm is first set out and then
proved valid.
William C. Waterhouse
Penn State