[comp.edu] CS & Math Requisites

burati@apollo.HP.COM (Mike Burati) (03/15/90)

    I missed what started this conversation, but it's a subject I was hoping
somebody would bring up...  I'm not impressed with the way Math seems to be
handled anywhere...

    As an undergrad, I had the following math courses (BSCS, math minor)

Calc I,II,III       (req)
Linear Alg I,II     (req)
Discrete Str I,II   (req)
Diff Eq's           (req?)
Statistics for Eng  (req)
Advanced Math I,II  (opt)

    (I can't think of any more...)
Note, that these were fairly general math courses that all students seemed
to take (except Discrete Structures, which was sort of CS oriented, but not
enough).

NOWHERE in those courses, did we learn enough about what Knuth terms CONCRETE
mathematics (cf "Concrete Mathematics", KNUTH, GRAHAM, PATASHNIK).  The math
he presents in his new book are the fundamentals that you *need* for computer
science, yet this course only seems to exist at Stanford (and the school that
one of the other 2 authors teaches it at, which I can't recall).  Generating
functions, Recurrence relations and everything else you need to understand
(and be able to reproduce yourself) KNUTH, Volume I, which incidentally, I
currently need in a grad course I'm taking in analysis of algorithms.  I can't
believe that as a grad student, I finally have a book (the CONCRETE
Math book) that tells me what I really need to know (even though I now have
to learn it on my own, because CS assumes the MATH dept teaches that stuff...)

It seems that there's not enough cooperation between math and cs (maybe math
depts don't want other depts telling them how to teach?).  Nobody ever told
me in my math classes how what I was learning could be applied in CS...
For example, everything I learned in Advanced Math I,II (surface equations,
uv coordinate systems...) would have been great knowledge, if I had taken
my computer graphics I,II courses immediately afterwards instead of a couple
years later...  At that time, the profs kept telling us that the only real
use for AdvMath I,II was for Mechanical Engineering (and to help me get the
extra 6 credits I needed for my minor :-)  The majority of my Statistics class
has been totally useless to me in all my other classes (including 4 grad CS
classes so far), and the parts that I do need, could have been squeezed into
one of the Calc classes...

So, what's my point??? There should be more cooperation between CS & MATH depts
to make requirements that fit what you need to know (don't get rid of requirements,
just make sure they teach you what you really need...).  A knowledge on the
math depts side of what CS was going to do with the math would help both in how
they teach it, *and* in getting students interested in learning it...  I would
have been much more interested in uv coord systems, surface intersection equations...
if I had realized how much I was going to need it later on for graphics.
If anybody of authority at *any* cs or math dept is listening, I'd strongly
suggest looking into Knuth's Concrete Mathematics course.

..Mike
Speaking for myself; not that anyone would claim knowing me, nevermind aggreeing with me...
burati@apollo.hp.com

ps: For those of you that know that I went to Univ of Lowell, this article is
    not meant to say anything bad about them.  I think they have one of the best
    CS programs around.  I'd just like to see all schools take a better approach
    to math for CS.

leech@vangogh.cs.unc.edu (Jonathan Leech) (03/16/90)

In article <4932692a.20b6d@apollo.HP.COM> burati@apollo.COM (Mike Burati) writes:
>So, what's my point??? There should be more cooperation between CS & MATH depts
>to make requirements that fit what you need to know (don't get rid of requirements,
>just make sure they teach you what you really need...).

    Math departments don't just teach CS majors, so the burden of the
cooperation is mostly on the CS folks to require courses they think
are relevant, not on the math department to tailor their courses for
CS majors.  I agree that motivation is nice to have, but motivating
with examples from CS is likely to bore the non-CS types.

    I find that a lot of the math subjects I took as an undergrad and
was unmotivated by, have become more interesting; I've gained a broad
enough background in other fields to start seeing the underlying
similarities expressed by the math.

    Going out on a limb a bit, discrete math ("concrete math", if you
prefer) is primarily of interest to theoretical computer scientists,
who don't represent all that many people.  I'm not denying it's worth
knowing, but I don't think it's as essential as you seem to.  Now,
*my* pet peeve is that in general, BSCS have very poor preparation in
physics and engineering mathematics, which are increasingly essential
for graduate work in graphics.	I'm sure people in other research
areas have their own complaints.
--
    Jon Leech (leech@cs.unc.edu)    __@/
"We were driving along, minding our own business, when there was a
 sudden flash of blue light which blotted out the stars. I thought it
 was a nuclear bomb going off and despaired for my career." - Keith Hughes

burati@apollo.HP.COM (Mike Burati) (03/20/90)

if (! i->already_have_book("Concrete Mathematics")) then read_this_msg();

    I've gotten several requests for more info on the book I mentioned
in my previous posting, and to avoid having to send a couple msgs a day
as requests trickle in, here's the info:

CONCRETE MATHEMATICS
A Foundation For Computer Science
Graham, Knuth, Patashnik
Addison-Wesley (c) 1989 (2nd printing; Dec, 1988)

..Mike
burati@apollo.hp.com
ps: No, neither Apollo nor HP necessarily recommend this book (and
    probably wouldn't if they knew I liked it ;^), but I do...

doner@henri.ucsb.edu (John Doner) (03/21/90)

In article <4932692a.20b6d@apollo.HP.COM> burati@apollo.COM (Mike Burati) writes:
>So, what's my point??? There should be more cooperation between CS & MATH depts
>to make requirements that fit what you need to know (don't get rid of requirements,
>just make sure they teach you what you really need...).  A knowledge on the
>math depts side of what CS was going to do with the math would help both in how
>they teach it, *and* in getting students interested in learning it...  I would
>have been much more interested in uv coord systems, surface intersection equations...
>if I had realized how much I was going to need it later on for graphics.
>If anybody of authority at *any* cs or math dept is listening, I'd strongly
>suggest looking into Knuth's Concrete Mathematics course.


Many of us mathematicians are aware of the general problem discussed
by Mr. Burati and others: The content of the typical mathematics
courses they are required to take for a cs major is not completely
appropriate to their needs, and the mathematicians teaching them are
often unaware of the applications to which the material may eventually
be put.  Concerning the first point, the problem is basically that we
have to use the same calculus courses to satisfy every major---we
don't give a calculus for computer scientists, for example---and so we
run the risk of really satisfying no one.  I'm opposed to special
versions of the courses directed to this or that major, on the grounds
that it forces students to commit themselves to a particular major too
early in their education.  We do give some introductory courses on
discrete mathematics, but here again they have to serve diverse needs
and so don't seem quite right for any one of them.  In summary, we
have to cram too much into too few courses, and nobody is happy with
the result.

The course content of the basic calculus sequence does evolve, but at
a glacial pace.  Eventually, I believe it will include more material
on discrete mathematics and even computer-oriented applications.  But
it will take lots of time, because we have first to figure out what
can be omitted to make room for the new material.


John E. Doner	       | "The beginner...should not be discouraged if...he
Mathematics, UCSB      | finds that he does not have the prerequisites for
Santa Barbara, CA 93106| reading the prerequisites."
doner@henri.ucsb.edu   |      --Paul Halmos, Measure Theory

jbarnett@wpi.wpi.edu (Jonathan R Barnett) (03/21/90)

>John doner writes:
>Many of us mathematicians are aware of the general problem discussed
>by Mr. Burati and others: The content of the typical mathematics
>courses they are required to take for a cs major is not completely
>appropriate to their needs, and the mathematicians teaching them are
>often unaware of the applications to which the material may eventually
>be put.
>
>The course content of the basic calculus sequence does evolve, but at
>a glacial pace.  Eventually, I believe it will include more material
>on discrete mathematics and even computer-oriented applications.  But
>it will take lots of time, because we have first to figure out what
>can be omitted to make room for the new material.
>
At WPI our Math department has completly revamped the basic math
sequence because of these problems.  I don't think it was that
difficult to decide what had to be eliminated to make room for modern
methods...for example numerical integration is clearly more useful
than the ability to deal with partial fractions.  

I am impressed with what I see as the end result of the new
sequence....students with a reasonable calc background, but more
important students able to attack an engineering problem using a
numerical approach when an analytic one isn't obvious (something they
are taught as part of the basic sequence).

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Dr. Jonathan R. Barnett                       | jbarnett@wpi.wpi.edu
      Assistant Professor                        |
      Fire Protection Engineering                |  Work: (508) 831-5113
   Interests: Fire, backpacking, cats, Theta Chi |  Home: (508) 754-2898
   Member: Society of Fire Protection Engineers  |  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~