## [REBOL] What is Mathematics?

### From: joel::neely::fedex::com at: 3-Jul-2001 12:54

OK, I apologize for opening my mouth... ;-)[JELINEM1--nationwide--com]wrote:> Mathematics is included in programming to be sure, but I > don't see Mathematics as a superset of programming... > So, I do not see any reason to choose programming > implementations based on mathematics (probably better > stated as "numerics"). >NO NO NO NO NO NO NO NO NO! Arithmetic ("numerics") is the least interesting and most trivial aspect of Mathematics. (And IMHO number-crunching is the least interesting aspect of programming.) As one example of the kind of relevant (non-arithmetic) math, I'd highly recommend Carl's article in REBOL/Zine 1.2. The process of transforming code from the original form either (mode) [ data: find data "Active" ][ data: find data "Passive" ] into the final data: find data pick ["Active" "Passive"] mode has been known in the Forth world (for at least 10 years) as factoring and more recently in the OO and extreme programming worlds as "refactoring" by direct analogy with the kind of algebraic process that allows one to transform (a * b + c) - (d * b + c) into (a - d) * b (I trust I needn't add the reminder that algebra is NOT about arithmetic nor numbers, but about formal manipulations of strings of symbols.) As another example, the algebraic law that lets me refactor if any [a <= b none? find p q not same? x y] ... into if all [a > b find p q same? x y] is known as DeMorgan's law (about which more later). I can't imagine programming without being able to perform such transformations and having the logical underpinnings on which they rest.> Just as "art" can be described in the terms of physics... >I know a number of folks in both the Artificial Intelligence and Physics worlds who'd love to argue that point with you! ;-)> > Logic values do have an implicit integer meaning, 0 false, > > and 1 true. This is firmly accepted amongst electronics > > world. > > Absolutely! This makes great sense in the world of > electronics. But why, in the abstract world of logic, should > this relation be valid? >Ever heard of George Boole (1815 1864), after whom Boolean algebra is named? His work considerably predates electronics (and TLTMNBM), and is rightly regarded as the foundation of mathmatical (symbolic) logic. In conjunction with Boole, another British mathematician, Augustus DeMorgan, formalized a the principles now known as DeMorgan's laws. As the Encyclopedia Britannica says: "A renascence of logical studies came about almost entirely because of Boole and DeMorgan." Boole used 1 for true and 0 for false, allowing such notation as (1 - x) for not x and (1 - x)(1 - y) for (not x) and (not y) The relation is far more valid in the abstract world of logic than it is in the approximate world of electronic circuits whose variable voltages must be interpreted as being "close enough" to the values chosen to represent logical 1 or 0!> ... This came from firm roots in BASIC as a first language... >I can't resist referring to http://www.cs.utexas.edu/users/EWD/ewd04xx/EWD498.PDF whenever BASIC -- or its successor, Visual SickBay -- is mentioned (or at least thinking of it ;-) Of course, since you made me think of EWD papers, I must also refer you to http://www.cs.utexas.edu/users/EWD/ewd08xx/EWD831.PDF Enjoy! -jn- -- It's turtles all the way down! joel'dot'neely'at'fedex'dot'com