From: Chris F Clark on
Barb Knox <see(a)sig.below> writes:

> My question is not about the amount of time spent or not spent learning
> maths, but whether or not there is some *active* cognitive interference
> such that learning programming first (which was not your experience)
> makes it significantly more difficult to then learn actual maths.

I think that question can be asked more generally, does learn any
subset of maths or programming interfere with learning other branches,
and again I have no studies to draw on.

However, I will posit that different parts of mathematics draw on
different mental skills. The mathematics that many engineering fields
draw on is very computational, one finds the appropriate equation and
applies the correct numbers to it to calculate a precise result.
Behind that mathematics is often the ability to visualize curves and
translate them into relevant equations. That is a separate skill.
Other parts of mathematics depend upon symbolic manipulation, which is
yet a separate skill--and the only one I possess to any significant
degree. BTW, these are just three representative skills that come to
my mind, they are neither conclusive nor exclusive.

However, one of the beauties of mathemtatics is that for many problems
there are solution methods in each of those skills. We can model a
computational problem as the abstract intersection of two curves and
use that to form a closed-form solution to the problem. We can model
curves as entities we can manipulate symbolically through axioms and
theorems. We can perform symbolic manipulations in a rote calculation
like manner and achieve correct results.

It is not clear that learning one skill precludes learning the others.
In fact, learning one skill can be a crutch to help learn one of the
others, allowing one to understand that answer as one practices the
non-yet-learned skill. However, at some level those skills are the
application of mathematics and not the mathematics itself--and I will
get to that in a second.

But, first, I want to induldge in an illustrative example of what I
mean. When I first took calculus, limits did not make much sense, and
the computational and geometric visualization problems were all
difficult and not aiding my learning. My poor background in trig did
not help, of course. However, eventually, I was introduced to
epsilon-delta proofs and that simplified matter for me tremendously.
Even better was the work of sequences and series. Here my programming
background proved useful, as I could see induction on these series and
taking the limit of the induction as things I could model in familiar
programming terms, arrays and loops. In that sense, my learning of
calculus was backward, all of the appeal to "familiar" geometric
objects did not help my comprehension. My intuition about such things
is relatively poor and my calculation skills far worse. Only dealing
with calculus as a symbolic system helped it make sense to me.

Now, are there flaws in this. Yes, my programming skills mean I tend
to reason far more by case analysis than I should. However, I think
that was a tendancy, reasoning from the specific to the general, which
I had before I learned to program. However, because my first class
requiring proofs, geometry, roughly corresponded to my first learning
programming, I cannot be certain either way.

Finally, I want to talk a bit about the distinction in my mind between
applying mathematics and doing mathematics. The application of
mathematics being about using models of mathematics to solve problems.
there is something mathematical is recognizing the corresponce of a
problem to a mathematical model, but after that the work is of a
different (and to me a non-mathematical) nature. Doing mathematics on
the other hand is coming up with appropriate formal systems in the
first place. There is something entirely different in realizing that
a theorem holds true and being able to express that in a sound way,
than that which we do when we apply the theorem to a problem. I have
no idea whether my training in programming has helped or hindered my
having moments of mathematical insight. All I can say for certain, is
that it has given me subject matter over which I can have those
insights.

Regards,
-Chris

******************************************************************************
Chris Clark email: christopher.f.clark(a)compiler-resources.com
Compiler Resources, Inc. Web Site: http://world.std.com/~compres
23 Bailey Rd voice: (508) 435-5016
Berlin, MA 01503 USA twitter: @intel_chris
------------------------------------------------------------------------------
From: aminer on

Barb Knox wrote:
> However, I will posit that different parts of mathematics draw on
> different mental skills. The mathematics that many engineering fields
> draw on is very computational, one finds the appropriate equation and
> applies the correct numbers to it to calculate a precise result.
[...]
>Finally, I want to talk a bit about the distinction in my mind between
> applying mathematics and doing mathematics.

Sorry Sir, I don't agree...

When you are doing mathematics - topology etc.. -
the reasonning process about abstract objects use logic and ressemble
a graph...

That's the same for engineers in operational research , when
they reason about reality and mathematics models , they use 'logic'
in there reasonning process and that also ressemble a graph...

That's the same process...


Regards,
Amine.





On Mar 1, 12:42 pm, Chris F Clark <c...(a)shell01.TheWorld.com> wrote:
> Barb Knox <s...(a)sig.below> writes:
> > My question is not about the amount of time spent or not spent learning
> > maths, but whether or not there is some *active* cognitive interference
> > such that learning programming first (which was not your experience)
> > makes it significantly more difficult to then learn actual maths.
>
> I think that question can be asked more generally, does learn any
> subset of maths or programming interfere with learning other branches,
> and again I have no studies to draw on.
>
> However, I will posit that different parts of mathematics draw on
> different mental skills.  The mathematics that many engineering fields
> draw on is very computational, one finds the appropriate equation and
> applies the correct numbers to it to calculate a precise result.
> Behind that mathematics is often the ability to visualize curves and
> translate them into relevant equations.  That is a separate skill.
> Other parts of mathematics depend upon symbolic manipulation, which is
> yet a separate skill--and the only one I possess to any significant
> degree. BTW, these are just three representative skills that come to
> my mind, they are neither conclusive nor exclusive.
>
> However, one of the beauties of mathemtatics is that for many problems
> there are solution methods in each of those skills.  We can model a
> computational problem as the abstract intersection of two curves and
> use that to form a closed-form solution to the problem.  We can model
> curves as entities we can manipulate symbolically through axioms and
> theorems.  We can perform symbolic manipulations in a rote calculation
> like manner and achieve correct results.
>
> It is not clear that learning one skill precludes learning the others.
> In fact, learning one skill can be a crutch to help learn one of the
> others, allowing one to understand that answer as one practices the
> non-yet-learned skill.  However, at some level those skills are the
> application of mathematics and not the mathematics itself--and I will
> get to that in a second.
>
> But, first, I want to induldge in an illustrative example of what I
> mean.  When I first took calculus, limits did not make much sense, and
> the computational and geometric visualization problems were all
> difficult and not aiding my learning.  My poor background in trig did
> not help, of course. However, eventually, I was introduced to
> epsilon-delta proofs and that simplified matter for me tremendously.
> Even better was the work of sequences and series.  Here my programming
> background proved useful, as I could see induction on these series and
> taking the limit of the induction as things I could model in familiar
> programming terms, arrays and loops.  In that sense, my learning of
> calculus was backward, all of the appeal to "familiar" geometric
> objects did not help my comprehension.  My intuition about such things
> is relatively poor and my calculation skills far worse.  Only dealing
> with calculus as a symbolic system helped it make sense to me.
>
> Now, are there flaws in this.  Yes, my programming skills mean I tend
> to reason far more by case analysis than I should.  However, I think
> that was a tendancy, reasoning from the specific to the general, which
> I had before I learned to program.  However, because my first class
> requiring proofs, geometry, roughly corresponded to my first learning
> programming, I cannot be certain either way.
>
> Finally, I want to talk a bit about the distinction in my mind between
> applying mathematics and doing mathematics.  The application of
> mathematics being about using models of mathematics to solve problems.
> there is something mathematical is recognizing the corresponce of a
> problem to a mathematical model, but after that the work is of a
> different (and to me a non-mathematical) nature.  Doing mathematics on
> the other hand is coming up with appropriate formal systems in the
> first place.  There is something entirely different in realizing that
> a theorem holds true and being able to express that in a sound way,
> than that which we do when we apply the theorem to a problem. I have
> no idea whether my training in programming has helped or hindered my
> having moments of mathematical insight.  All I can say for certain, is
> that it has given me subject matter over which I can have those
> insights.
>
> Regards,
> -Chris
>
> ***************************************************************************­***
> Chris Clark                  email: christopher.f.cl...(a)compiler-resources.com
> Compiler Resources, Inc.  Web Site:http://world.std.com/~compres 
> 23 Bailey Rd                 voice: (508) 435-5016
> Berlin, MA  01503 USA      twitter: @intel_chris
> ---------------------------------------------------------------------------­---

From: aminer on

I wrote:
> > However, I will posit that different parts of mathematics draw on
> > different mental skills. The mathematics that many engineering fields
> > draw on is very computational, one finds the appropriate equation and
> > applies the correct numbers to it to calculate a precise result.
> [...]
> >Finally, I want to talk a bit about the distinction in my mind between
> > applying mathematics and doing mathematics.
>
> Sorry Sir, I don't agree...
>
> When you are doing mathematics - topology etc.. -
> the reasonning process about abstract objects use logic and ressemble
> a graph...
>
> That's the same for engineers in operational research , when
> they reason about reality and mathematics models , they use 'logic'
> in there reasonning process and that also ressemble a graph...
>
> That's the same process...
>
> Regards,
> Amine.

Even when we are reasonning on lock-free algorithms etc.
this reasonning on abstract objects is also complex
and we are using 'logic' (even if it's not yet write on the paper!).


Take also for example the capacity planning example:

http://pages.videotron.com/aminer/parallelhashlist/queue.htm

I am also using a complex reasonning process on abstract mathematical
objects and on the reality , and i am using also 'logic' !

The reasonning process is the same as Topology etc..


Think about it !


Regards,
Amine Moulay Ramdane.















From: aminer on

Question:

Do you think that i have to prove all the mathematics before using
it ?

Of course not !


Take a look at

http://pages.videotron.com/aminer/parallelhashlist/queue.htm

I am using 'logic' in my process of reasonning about
mathematical models and the reality

and when i say for example:

"Since we have mostly two kind of transactions Find() and Add(),
the service in the network side will be hyperexponentially
distributed"

It's like a theorem that i am using !


Think about it !



Regards,
Amine Moulay Ramdane.





From: aminer on

Hello,

As an example:

Take a look at lockfree_mpmc:

We can state something like this, when we are reasonning
about lockfree algorithms in a multithreaded envirenement:

See lockfree_mpmc: http://pages.videotron.com/aminer/

"IF two variables(like head and tail) resides in the same cache line
and at least one of them is write to by a thread, THEN there is a
false sharing..."

It's like a theorem that i am applying, it's why when you look at
lockfree_mpmc the head and tail resides in different cache lines.

The same for deadlock , we can apply theorems to avoid deadlock.

etc.

It's like mathematics that use logic...

And the mathematics itself was invented by using logic ...


Regards,
Amine Moulay Ramdane.




On Mar 1, 5:04 pm, aminer <ami...(a)videotron.ca> wrote:
> Question:
>
> Do you think that i have to prove all the mathematics before using
> it ?
>
> Of course not !
>
> Take a look at
>
> http://pages.videotron.com/aminer/parallelhashlist/queue.htm
>
> I am using 'logic' in my process of reasonning about
> mathematical models and the reality
>
> and when i say for example:
>
> "Since we have mostly two kind of transactions Find() and Add(),
> the service in the network side will be hyperexponentially
> distributed"
>
> It's like a theorem that i am using !
>
> Think about it !
>
> Regards,
> Amine Moulay Ramdane.