## [REBOL] Re: What is Mathematics?

### From: jelinem1:nationwide at: 3-Jul-2001 13:58

Reading the first link now ("How do we tell truths that might hurt?"). Just got to the statement: It is practically impossible to teach good programming to students that have had prior exposure to BASIC: as potential programmers they are mentally mutilated beyond the hope of regeneration - Copyrighted by Springer-Verlag New York. You must now read the article or I'll be held liable. <snicker> I'm mentally mutiliated! Do I get paid extra? Yes I know that the majority of "serious" programmers have a very negative - even abrasive - attitude about BASIC, but I'll admit to using it nonetheless. Not any really current version of BASIC, mind you. I began programming in "baby BASIC"... but I'm digressing. Yes I trivialized the scope of mathematics to arithmetic. I stand corrected on that point. And, yes, of all my required math courses in college, algebra was by far my favorite. My last course came close, Numerical Analysis, by which time I was a competant programmer enough (should I admit with BASIC?) to finish my assignments with a program. Anyway, thanks for the enlightenments and the links. I'm always open to broaden my knowledge and understanding. - Michael From: Joel Neely <[joel--neely--fedex--com]>@rebol.com on 07/03/2001 12:54 PM Please respond to[rebol-list--rebol--com]Sent by:[rebol-bounce--rebol--com]To:[rebol-list--rebol--com]cc: Subject: [REBOL] What is Mathematics? 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