Posted: Mon Mar 12, 2007 5:33 am Post subject: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
You know, I've been thinking about the relevence of math in computer science. I mean, isn't life so much easier when you know the math to solve that problem in your application? Know the math for that complex algorithm? Since computer science is based solely on mathematics, in order to properly understand its complexities, should we know the mathematics behind it?
I'm just curious, how many people keep exapanding their math skills on their own time, a long with their programming skills?
Sponsor Sponsor
rdrake
Posted: Mon Mar 12, 2007 7:31 am Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Out of all the maths I have used, linear algebra seems to be the most useful in computer science. Unlike calculus, which I have yet to see many applications for in this field. Things taught to me in linear algebra just seem to be used a lot more than those in calculus. Sure it's nice being able to differentiate things and all, but who the hell cares?
Oh, and I of course enjoy linear algebra. Unfortunately I don't have time to study it anymore, as my time is taken up thanks to calculus and soon statistics .
It should be noted I know a few programmers out there that hardly know the math, and yet still manage to do a decent job of programming.
haskell
Posted: Mon Mar 12, 2007 1:40 pm Post subject: RE:The Relevence of Mathematics as a Route of Problem Solving in Computer Science
The only calculus I've come across that has a strong root in a paradigm is lambda calculus in functional programming languages. And even THEN its just the few central principals(functions can be values is the main one and a couple others). Besides the basic ideas of functions and such, calculus is seperate.
Math in CS in my opinion comes into play with problem solving, and possibly the skills learned from abstracting principals and rules. Its a lot easier to solve number crunching problems, and algorithms in general, with the skills and techniques learned in math.
Another questiion, in your opinion, is mathematics a crucial minor if you major in computer science?
Oh, and in your opinion, is computer science crucial to the growth of mathematics?
Hikaru79
Posted: Mon Mar 12, 2007 2:54 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
rdrake @ Mon Mar 12, 2007 8:31 am wrote:
Out of all the maths I have used, linear algebra seems to be the most useful in computer science. Unlike calculus, which I have yet to see many applications for in this field. Things taught to me in linear algebra just seem to be used a lot more than those in calculus.
Maybe we're just doing some very different things in these subjects, but can you give me an example of when Linear Algebra (beyond the very very basics that don't really merit any real study of the subject) has been helpful in CS?
Of all the maths, it seems one of the less useful, because of its extreme level of abstraction. Calculus comes in handy studying efficiency; statistics comes in handy in a lot of applications. Combinatorics for optimization. I can even see geometry being vital for graphics. But linear algebra...?
Clayton
Posted: Mon Mar 12, 2007 2:57 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
that, or you just need more of a workout you wunerkind genius you....
Skynet
Posted: Mon Mar 12, 2007 3:06 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Lambda calculus != traditional calculus. The first uses the word "calculus" in the traditional sense:
Webster wrote:
1.a) a method of computation or calculation in a special notation (as of logic or symbolic logic)
I think a lot of CS topics rely very heavily on math, to the point where they're indistinguishable. Graphs and trees spring to mind, as does set theory. Another one that I'm dealing right now is linear algebra. I'm doing some image processing stuff and trying to correlate points in 3-D with the 2-D image plane. Although I'm doing stuff with real images, I'd assume that anyone doing any sort of computer graphics would also need this stuff. I'd also say that I'm expanding my math skills on my own time just to be able to do this stuff, since I prefer to be productive at work and my courses are heavy on the Calc/DEs end, light on the algebra end.
As for Calculus, I used it yesterday for some other image work. Because my camera was pointed at something that was moving at an angle to me, if I want to predict its speed based on the speed it's moving across an image, I needed to use Calc. (I think it was the first time I've used it at work, actually)
bugzpodder
Posted: Mon Mar 12, 2007 3:44 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
the whole branch of algorithms uses math heavily. do you call this "problem solving"? everything from game ai, 3d math, optimzation, scheduling, concurrency, virus scan, routing, encoding/deoding, compressing are full of algorithms and math
Dan
Posted: Mon Mar 12, 2007 4:21 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Mathematics deftly has relevance in Computer Science and problem solving, however to say that it is all math or that you could solve computer science problems only knowing/using math would not be true.
Computer Science brings together many different sciences or areas. There is deftly a strong mathematical base coming from many areas of math however there are also contributions from energering (electorical, software, computer, ect), logic (witch can come from many places), psycoglgy (in how the user will interface with your software), and may more. Some even say programing is almost an art in some ways.
Finite/discret maticamtics highly realtes to many of the basic conspects of linear programing, tho not all of them are aprent with out studing them. There is also perdicate calcules witch has strong fundation in logical progaming langues like prolog and lambda clacules that has a strong fundation in functional langues like LISP.
Math is also very imporent in determining the effshentys of alrogithms in terms of both time and memory. However as CPUs and computers become more powerfull the relevence of it will become less. It should also be noted that there are other kinds of effshencys in coding that are not addressed by math like how easy it is to read by other programers, comenting and how many lines it takes to make your code as well as the structer of it.
So in summery, you most defatly could make corect code and problem solving with out understanding the math behind it, however it will not be as time or memory efhsent as code that consideres the math behind it. Also in some problems if the enfishency is not up to par, finding a solultion may not be posible. In the same way tho, just using math and ingoring software engering conspects will leave you with tehcanly functional code but code that will be exrealmy hard to implement, use or update in the real world. To be a good programer you need to have a mix of both math, logic and software engering conspects behind your code.
If this question was realting to what corses you should take in univeristy, most crediable computer science degreas will force you to take most of the reuqired math corses that give you a strong fundation in thess math and concepsts so a minor in math is not needed. In fact most univerisys force you to take corses out side of math and computer science so you get a rounded education.
Computer Science CanadaHelp with programming in C, C++, Java, PHP, Ruby, Turing, VB and more!
Sponsor Sponsor
Cervantes
Posted: Mon Mar 12, 2007 6:17 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Hikaru79 @ Mon Mar 12, 2007 2:54 pm wrote:
rdrake @ Mon Mar 12, 2007 8:31 am wrote:
Out of all the maths I have used, linear algebra seems to be the most useful in computer science. Unlike calculus, which I have yet to see many applications for in this field. Things taught to me in linear algebra just seem to be used a lot more than those in calculus.
Maybe we're just doing some very different things in these subjects, but can you give me an example of when Linear Algebra (beyond the very very basics that don't really merit any real study of the subject) has been helpful in CS?
We're doing very abstract stuff, but that abstract stuff can be applied to the very real examples of 2D, 3D, etc. That's mostly what the regular linear algebra class does, I think.
Clayton
Posted: Mon Mar 12, 2007 6:43 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Now, do you mean that by graphics? And if so, I could see the possibilities of Linear Algebra being involved with 3D graphics, but with 2D? Either way, it's very interesting stuff.
Btw. I did take notes Cervantes, they were just barely discernible
Dan
Posted: Mon Mar 12, 2007 8:01 pm Post subject: RE:The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Linear Algebra is used in cryptography to test if some block chyphers are secure or not as well as in some chypers that use matrixs. It is also used for anything invovling matrixs and vectors witch inclues graphics and phsyics applications (Both 2d and 3d, vector graphics, photoshop, ect for 2d).
Computer Science CanadaHelp with programming in C, C++, Java, PHP, Ruby, Turing, VB and more!
Skynet
Posted: Mon Mar 12, 2007 8:03 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Freakman @ Mon Mar 12, 2007 6:43 pm wrote:
Now, do you mean that by graphics? And if so, I could see the possibilities of Linear Algebra being involved with 3D graphics, but with 2D? Either way, it's very interesting stuff.
This is the first thing I did when I started trying this stuff out:
Given a vector V = [x,y] and a rotation angle theta, you can rotate V by theta degrees to a new vector V' with a 2x2 rotation matrix M, where M =
[cos theta -sin theta]
[sin theta cos theta]
So,
V' = M * transpose of V = [x*cos theta - y*sin theta, x*sin theta + y*cos theta]
Bobrobyn
Posted: Tue Mar 13, 2007 6:32 pm Post subject: Re: The Relevence of Mathematics as a Route of Problem Solving in Computer Science
I'm only in first year, so I really can't say a lot about it, but so far, I haven't used very much math in compsci. For computer science courses, so far, haven't been that hard to understand conceptually (for me). My strength is programming, logic, and problem solving -- math is my weakness. This is probably due to my not so great math background...*shrugs* I personally have to put a lot of work into my math courses, or I get really crappy marks. I just don't "get" the advanced math stuff, like I get computer science and logic. Some say they're practically interchangable...but I don't think so.
My Discrete Structures professor once said: "A good mathematician can become a good computer scienctist, but a good computer scientist, well...." Now, he's biased in the matter, but I think it's true. Not all computer scientists are great at math. I personally think it probably has to do with the way a person is: a computer scientist that's not necessarly good at math might be better at working in a team environment, working well with others, great at graphics, or even writing documentation, while the one that is good at math might have trouble with dealing with other people, writing, or designing graphics. I'm not saying that's the case, but I have seen stuff like this occuring here in my first year of uni. *shrugs*
bugzpodder
Posted: Tue Mar 13, 2007 6:41 pm Post subject: Re: RE:The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Hacker Dan @ Mon Mar 12, 2007 8:01 pm wrote:
Linear Algebra is used in cryptography to if some block chyphers are secure or not as well as in some chypers that use matrixs. It is also used for anything invovling matrixs and vectors witch inclues graphics and phsyics applications (Both 2d and 3d, vector graphics, photoshop, ect for 2d).
actually security in crypto systems doesnt come from linear algebra. it involves more using group and ring theory, as well it comes from complexity theory that certain problems are difficult to solve efficiently. In fact it goes under the motto "if nobody can break this, then it must be security", for the reason that it is often very difficult to prove that a certain problem is hard to solve (ie the P=NP problem)
Quote:
Math is also very imporent in determining the effshentys of alrogithms in terms of both time and memory. However as CPUs and computers become more powerfull the relevence of it will become less.
If a problem takes 10 million years to solve, no matter how fast you make your computer, you still won't get it down to a few seconds. Hardware advancements are no excuse for writing poor code. besides hardware is already hitting a limit point. processors are getting overheated so they are using multiple cores to compensate. not before long that'll fail too
bugzpodder
Posted: Tue Mar 13, 2007 6:46 pm Post subject: RE:The Relevence of Mathematics as a Route of Problem Solving in Computer Science
Quote:
a computer scientist that's not necessarly good at math might be better at working in a team environment, working well with others, great at graphics, or even writing documentation, while the one that is good at math might have trouble with dealing with other people, writing, or designing graphics. I'm not saying that's the case, but I have seen stuff like this occuring here in my first year of uni. *shrugs*
that is completely stereotyping. I've worked with a graduate in PM that works at a leading graphics company. he is one of the smartest guys I met, writes excellent graphics code and a very outgoing person and team player.