Saturday, May 27, 2006

Course Summary Part 1

I'll start with the courses of the Fall semester

Basic Course in Mathematics C3

The third and final basic math course in the CS program. The first half was pretty much Linear Algebra (matrices, eigenvalues/vectors etc, matrix exponent..) and then using them to solve systems of differential equations. Laplace transform was also introduced as an alternative to solving those problems.
not.
The first half was a bit scary at first because I had managed to miss the Mathematics 1 for CS program where the basic matrix algebra was taught so I had very little knowledge of them and the lecturer used about half of the first lecture to review the basics. I had to do extra study and eventually got the hang of it.

The second part of the course was about Complex Analysis, Complex Integration, Z-transform and Fourier Series.. (there was no time for Fourier Transforms though). The complex analysis and integration stuff was a bit weird. Lots of big theorems and scary proofs but in the end I didn't quite get where these are used in practice. I guess for example electrical engineers dabble more in the complex world.

At least the Fourier Series' in the end seemed somewhat useful and were pretty cool despite the amount of work even the simple exercises required.

This was an okay course, the problem sets were somewhat laborious and sometimes the two hour long proofs of some theorem caused hair loss but. Still I'm glad the basic math courses are over. There's still a course in discrete mathematics ahead though.

Applied Probability

More math. This is one of those courses in addition to the math and physics courses that all the departments of the university have in their undergraduate programs. There are different levels of difficulty. The probability and statistics course has a tougher A version which is more theoretical and has more probability theory than statistics. I took the easier B course which was half probability, half statistics. This was an easy course although the lecturer was far from inspiring so a medium lack of motivation made it at least seem harder than it was.

Introduction to Theoretical Computer Science

Well.. theoretical computer science. Finite automata, regular languages, context-free grammars, Turing machines, computability theory. This course frightened me. I had seen some problem sets and lecture notes before the course began and they seemed pure gibberish with more Greek letters than Roman. In the end the course turned out to be quite interesting. It was a bit tough towards the end with Turing machines and computability theory.

I overheard many people complain that the course is useless since there's no use for this stuff in practice. Well it was very theoretical as the name already implies but for example regular expressions are very practical in reality and I also learned their limitations. The Turing machines also provided insight into how the computer works and what kind of things it can do and what is simply impossible. Knowing the concepts of the course at this introductory level is in my opinion something that everyone calling themselves computer science students should know. I know that I won't take TCS as a major but I now have a general idea of what it's about and I respect the people doing research in that area.

That's not all but I'm already exhausted from writing, more later.

0 Comments:

Post a Comment

<< Home