Wednesday, 24 September 2014

(CSC165)_Sep 20th_Logic XD

I really enjoy studying logic related topics. Although I have learned most of the content of this week when I was in high school back in China, it is still amazing to learn it in a different language and especially with excellent examples. However, the problems including conduction of two statements and negation are new to me.

A tricky word introduced in the class is 'unless', and if we try to think about it in logic directly, it will be very confusing. However, we can translate it to 'if not' to help us understand. For example:

Do not go, unless you are crazy.
Do not go, if you are not crazy.
not crazy => not go
go => crazy      
I think we can generalize it using P and Q:
P unless Q
P if not Q
P => not Q
Q => not P
Q if not P

So, to sum up, we can translate P unless Q to: (1) P if not Q (2) Q if not P.






Wednesday, 17 September 2014

(CSC165)_Sep 15th_The Intro

I'm seating in the room next to the classroom finishing the last part of the Tutorial Exercise, and I believe it is a good time to write down some thoughts after three lectures of the first week. CSC165 - Mathematical Expression and Reasoning for Computer Science does not teach specifically how to write a program, but, instead, it provides a guide to logically express and understand ideas or arguments in Math or CS world.

Ambiguity is a main difference between human language and machine language; therefore, learning how computers actually run with the programming language is critical.  However, still, it is good to know that programers will often write down comments for not only him/herself but also other readers of the program.

The first week's lectures are actuarially quit simple, but professor Heap emphasized Problem Solving skill, which I believe will be very useful in addition to the 'happiness' of solving a complex problem. There are several steps we should take in general to solve a problem. A clear understanding of the problem and a expectation and plan of the solution are important. Alternative methods should be thought about and notes of both what works and what doesn't are useful. A review right after solving the problem can help us learn more from the problem-solving process. Additionally, professor showed us an example of an conversation between two people, which is very helpful to demonstrate problem-solving process. It especially helped me understand why some method not working can also provide useful information.

To sum up, the content of first week is not hard, but I'm expecting a much deeper discussion in area like logic in the coming weeks.