I don't have a copy of the Classical Mechanics book so I can't comment.

re: When do you write code versus when do you use CAS systems like Axiom?

I write code when I need to understand something. For example, I'm writing
code to manipulate point clouds from self-driving cars. I don't understand
how to segment point clouds into individual cars.

I also write code when I'm working at the basic level of the world. For
example, I'm pushing Gustafson's ENUM representation of numbers
so I can use it as an Axiom domain. That is so primitive it needs raw code.
And maybe an FPGA so there is VHDL to learn.

I use Axiom when I'm trying to work at a high level. I'm currently pushing
hard
on Geometric Algebra (Clifford Algebra) so I can extend the library. It is
a long
leap from GA to code and Axiom is the right middle ground.

I use Axiom when I'm writing the Computer Algebra Test Suite where the
struggle is whether Axiom can't do it or I'm just too uneducated to know.

That said, I'm a primitivist of the Feynman school. If I don't understand
how
the algebra turns into lisp turns into C turns into binary turns into
transistors
turns into silicon turns into electrons then I don't think I understand it.
Most
programmers these days have no idea what a front porch on VGA means
but they are really up to speed on the latest React library, which I am not.

Ultimately this is where I part company with most CAS developers. If we
develop "library code" that works using the "trust me" model then the world
will simply discard it for a shiny new thing. It is why you throw out your
cell
phone every year. You don't even know how to replace the battery anymore.
I don't want to create "this year's shiny new thing" only to have it die.

But if we explain it so it can be maintained, modified, and  extended
without
spending years doing research, which is why highways survive and evolve,
then Axiom can live. If we can make it possible to teach computational
mathematics "from the ground up" we win. Students use what students learn.
Explain your code. Reference the literature. Make it possible to teach it.
Think long term.

(stepping off the soapbox)
Tim



On Sat, Dec 3, 2016 at 3:57 PM, Lawrence Bottorff <borg...@gmail.com> wrote:

> In my opinion, exactly what S&A are doing in SICP is what math should be
> about. A great example is Tree recusion 1.2.2
> <https://xuanji.appspot.com/isicp/1-2-procedures.html> in this nicer
> version of SICP (scroll down to 1.2.2). It talks about the Fibonacci series
> and how to do it with a Scheme tree recursion -- but then how wasteful that
> is due to the duplication. Then they talk about the phi equation. Then they
> compare, talking (around) big-O. This is exactly how math -- starting
> somewhere in middle or high school should be taught! SICP obviously
> emphasized the programming, but that could be flipped. So yeah, pummeling
> kids with weak, hand-waving Stage 1 math is a real loser. It's not real
> theory, it's not real-world computational. And, as Sal Kahn says (after I
> said it for years), American K-12 math is not mastery-oriented, rather,
> just give them a letter grade (whatever that is supposed to mean/achieve)
> and herd them to the next level . . . deficiencies accumulating, math
> phobia building.
>
> In the real world math is done with electronic digital machines, i.e.,
> computers. Not even calculators anymore! So when I see second-rate versions
> of Stage 1 math being taught sans computer but those ubiquitous
> WAY-overpriced "graphing" (sic) calculators in hand, I see red.
>
> By the way, what do you think of Sussman/Wisdom's *Structure and
> Interpretation of Classical Mechanics (2nd ed). *It's a true literate,
> tangled code tome. I can imagine NASA hiring a bright young physicist who
> mastered Goldstein's *Classical Mechanics *-- but then this kid has no
> idea how any of it is actually done in the real world, i.e., how to do it
> on a computer. So often the computational side is just an afterthought in
> schools. But then another question about SICM. It's using Scheme with a
> library Sussman created. It seems to beg the question, When do you write
> code versus when do you use CAS systems like Axiom?
>
> LB
>
> On Fri, Dec 2, 2016 at 6:09 PM, Tim Daly <axiom...@gmail.com> wrote:
>
>> https://terrytao.wordpress.com/career-advice/there%E2%80%99s
>> -more-to-mathematics-than-rigour-and-proofs/
>>
>> One can roughly divide mathematical education into three stages:
>>
>>    1. The “pre-rigorous” stage, in which mathematics is taught in an
>>    informal, intuitive manner, based on examples, fuzzy notions, and
>>    hand-waving. (For instance, calculus is usually first introduced in terms
>>    of slopes, areas, rates of change, and so forth.) The emphasis is more on
>>    computation than on theory. This stage generally lasts until the early
>>    undergraduate years.
>>    2. The “rigorous” stage, in which one is now taught that in order to
>>    do maths “properly”, one needs to work and think in a much more precise 
>> and
>>    formal manner (e.g. re-doing calculus by using epsilons and deltas all 
>> over
>>    the place). The emphasis is now primarily on theory; and one is expected 
>> to
>>    be able to comfortably manipulate abstract mathematical objects without
>>    focusing too much on what such objects actually “mean”. This stage usually
>>    occupies the later undergraduate and early graduate years.
>>    3. The “post-rigorous” stage, in which one has grown comfortable with
>>    all the rigorous foundations of one’s chosen field, and is now ready to
>>    revisit and refine one’s pre-rigorous intuition on the subject, but this
>>    time with the intuition solidly buttressed by rigorous theory. (For
>>    instance, in this stage one would be able to quickly and accurately 
>> perform
>>    computations in vector calculus by using analogies with scalar calculus, 
>> or
>>    informal and semi-rigorous use of infinitesimals, big-O notation, and so
>>    forth, and be able to convert all such calculations into a rigorous
>>    argument whenever required.) The emphasis is now on applications,
>>    intuition, and the “big picture”. This stage usually occupies the late
>>    graduate years and beyond.
>>
>>
>> I'm of the opinion that computational mathematics is at the first stage.
>> We write
>>
>> code that "sort-of works" and lacks any attempt at formality, even
>> failing to
>>
>> provide literature references. Moving to stage 2 will be a long and
>> tedious
>>
>> task. Axiom has the connections to the proof machinery and is being
>>
>> decorated to provide some early attempts at proofs using ACL2 and COQ.
>>
>> This effort is an interesting combination of mathematical proof and
>>
>> computational proof since both fields underlie the implementation.
>>
>> Moving computational mathematics up Tao's tower is going to be a long,
>> slow,
>>
>> painul effort but, if memory serves me correctly, so was graduate school.
>>
>> Tim
>>
>>
>>
>>
>>
>> _______________________________________________
>> Axiom-developer mailing list
>> Axiom-developer@nongnu.org
>> https://lists.nongnu.org/mailman/listinfo/axiom-developer
>>
>>
>
_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
https://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to