Friday, December 5, 2008

Final thoughts

All the csc236 TAs and the csc help center were the best part of this course. They helped me understand the underlying concepts very well. It was with their help and Professor Heap, that i was able to gain insight into this course.

Three months went by so fast. I cloud have learned so much if i had attended all the lectures. But doing 5 CS courses takes its toll. I learned a lot about induction, DFSA, regular expressions, context free grammer and other topic that became clearer after reading the lecture notes.

One thing i do regret is not bing able to blog my progress regularly. But otherwise, i am more confident about attempting topics covered in this course. Also, i'm thankful for having D. Heap as my Professor. He did a great job teaching this course, as always.

Wednesday, November 19, 2008

A3 - Q4

Reading through the assignment, question four seemed the hardest. I decided I would begin the assignment with question four. We had to create a DFSA that takes a binary string of odd length and that is a multiple of 5 when interpreted in base-2.
I looked through the lecture slides and the course notes for the required definitions of cardinality technique, DFSA, and the (Q, sigma, delta, start, finish) definition of a DFSA.
I looked over the problem and came to the conclusion that i will need to make two machines. One for the odd length and the other for the multiple of 5. I wondered where the cardinality property came in ?
I started sketching the two machines, with the accepting state, the empty state and all the transition states with their respective edges. The question says we have to create a single machine. I then began trying to join them up.
I started having problems in trying to incorporate the odd and even transition states for every state in the multiple of 5 machine, which ended up having 6 states. After a few hours of trying, I gave up in search for a better solution. I headed to the CS Help Center.
The T.A's at the help center were very helpful. They told me to look over the cardinality technique in the course notes. This techniques helps in combining two machines. Looking over the text I found out that the intersection of the machines gives a single machine. Such as, R = M/\M'. I was convinced this was the right way to do the question. I formally wrote out the definitions of both machines each with their respective transition states, start, finish, total list of states, language(sigma).
Now writing out the transition states for the resulting machine, I came up with 18 states. I had a feeling this was too much. I visited Prof. Heap, who told me my first machine that checked odd length was wrong. Not entirely wrong, just that it had one state extra. The even state was not needed as the empty state is of even length too. This reduces one state in the machine but 6 states in the resultant machine. This saved me a lot of work. The reason is because, the cardinality is using pairs of both machines. Thus I had 18 states first(6*3) but 12 later on (6*2).
I wrote out all the 12 transition states. Now all that is left is the state invariants. Again there were 12 of them. I asked Prof. Heap if I really did need to write them all out since it was monotonous in nature. He said it, is required just like a loop variant states what is true through the loop, similarly state invariants state what is true to reach that state.

Tuesday, November 4, 2008

Term Test

Finally all my midterms are done. I can spend some time on 236 now. I feel miserable not being able to attend lecture or reading up on any 236 for the last 2 weeks.
I can dedicate 2 days to the test. Its work 11% so I must do well. I'm gonna follow the same pattern of studying as the previous test. First, go through lecture notes. Second, the text book chapters and then practice tests.

I'm pretty optimistic about this test, since i did quite well on the previous one.

Monday, October 20, 2008

Another week..

Another week..another problem set due. I havent been able to keep up with this course because of all the midterms in my other courses over-crowding my schedule. I have to manage my time for each course more efficiently.

I was really really happy with my marks in test. I did not expect to get 22/24. All that practice and hard-work finally paid off. I hope the remaining tests and exams are equally challenging.

Wednesday, October 8, 2008

Test

Theres a lot to study for friday's test, then again theres not much. All we did in class was about 4 to 5 problems in PSI and a couple for PCI.
Thank god for the course text book. It explains things very nicely. I'm left with only the recursion part of the test. We seem to have only done basic definitions and one time complexity problem. Even induction can get very, very tricky. The exercises in the text book are insane. I would never be able to think of proofs like that in the time frame and pressure of a test.
I'm just going to do a lot of past tests and keep practicing. Hope things work out.

**keeping fingers crossed**

Wednesday, September 17, 2008

Week 1

First few lectures into the course, i was surprised at how similar everything is to 165. Thankfully, the rigid proof structure is not needed. Thats where i use to loose most of my marks. I'm glad that the course load is not that much, a contrast to what friends tell me about their experiences.

The tablet PC teaching method is awesome. Makes me want to get a tablet.

Just finished the first problem set, it was easy enough i think, and am planning to visit the office hours to check if i'm on the right track. I'm a bit nervous for assignment 1, but i think with all the office hours i should do ok.

Frankly, I was dismayed by having to keep a slog throughout the course. I have never kept a blog before. After talking to some people about it, who told me that i would come to appreciate it towards the end of the semester, it has peaked my curiosity.