On Sunday 12 November 2006 12:01, Greg Wallace wrote:
On Saturday, November 11, 2006 @ 11:24 PM, Randall Schulz wrote:
On Saturday 11 November 2006 20:29, John Andersen wrote:
On Saturday 11 November 2006 19:17, Randall R Schulz wrote:
Programmers are applied mathematicians. The basis of all software is mathematical logic of one sort or another.
Grossly over stated.
Not overstated in the slightest. It is exactly and completely true.
But isn't programming simply a set of instructions? Those instructions may be logical or completely illogical. Any mathematical calculations in a program are of course logical, by definition, though the logic behind the calculation may be completely illogical (wrong formula). I. e., the calculation itself is logical in that it provides the result that it was asked to give, though what it was asked to give by the programmer may have been totally illogical.
I'm not talking about incoherent programs, or programming language gibberish, I'm talking about programs that do something coherent. I'm talking about the underpinnings of computation, not any given batch of instructions that may or may not do something useful and / or which may or may not do what's intended.
Very little of programming is mathematical. The logic involved is usually no more than find the RED ball.
I agree to some extent, though I think you grossly underestimate the logic that can be involved (i. e., it can certainly be much more complicated than "find the RED ball").
The foundations of all programming is symbolic logic.
I'd say an attempt at symbolic logic.
No. It _is_ logic. It can be nothing more nor less. Computation is pure formalism, just as formal logic is. Don't confuse the loose sense of logic in everyday conversation with the formal mathematical notions of logic. I'm talking only about the latter.
...
I believe the foundation of programming is simply instructions, logical or illogical.
This just isn't a meaningful statement. "Instructions" are defined by a formalism about how to refer to stored pieces of information, how to operate on those pieces of information and how to organize such operations into what are called "effective procedures" that embody specific computations or algorithms. The Turing Machine is the canonical example of a computing formalism and to date (modulo quantum computing) captures the capabilities of _all_ digital information processing hardware, whether it be a x86 CPU, an nVidia GPU, a DSP or some custom-built logic device. Refer to Cutland's "Computability" or Boolos and Jeffrey's "Computability and Logic" for contemporary treatments. The seminal work is that of Church and Turing, but it's all based on mathematics and logic as it goes back to the ancient Greeks.
...
Greg Wallace
Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org