2014年11月29日星期六

CSC165H1--WEEK12

  Time is passing unbelievably fast, I can still remember the first day I had CSC165 class, but now it comes to the end of the term. This week, we had our last lecture. We talked about some proof on computability and learned about induction! Although I had learn induction from my math lectures, I still feel excited to hear that in computer science course. After a small lecture on new concepts, we reviewed for final exam. To be more specific, there is going to be around 9-10 questions no the exam, 5 of them is going to be proof question and the rest of them might be logic and other concepts.
  I just finished assignment #3 and I think some of the questions are really hard. For instance, before I went to Larry's lecture, I did not know how to solve question #3 because I don't know how to do with the limit of 0. In class, we only learned infinity. Therefore, what I firstly did was change the order of denominator and the numerator, so that instead of having 30/\infty=0 I will get \infty/30=\infty, and this result would be similar to what we learned in class and I disprove the statement by exchanging the direction of previous equation. Indeed, I think this method although seems not general, it still can take a fair proof. However, according to the hint of y professor, I understood that I can only change the definition of limit from >=c to <c to represent that limit of an equation is 0. This way of thinking the question is pretty inspiring to me and it is clearer and more direct than what I did before. Therefore, I learn how to proof a limit of 0 and I believe it would be greatly helpful during the test and after courses' learning.
  This week, we also had our last tutorial and we talked about proof of Big-Oh and Omega proofs. So far, I find computer science tutorial is the most helpful and effective tutorial I have ever had. My TA explained everything really well and this helps me a lot in my learning. Last quiz, I made a math error and this made my whole proof no sense. When I was thinking about inequality transitivity I always got lost in the process, and I sometimes wrote steps that are wrong. I found this king of mistakes happens a lot during quiz and when I did assignment on my own. Therefore, I think I need to review more for the proof question and try my best to avoid math mistakes again.
  My assignment working group is going to have a meeting on Monday. Hope we can do better on this assignment and we will try our best.
  CSC165 is a great and challenging course, it is full of fun. I really like this course!

2014年11月20日星期四

CSC165H1--WEEK11

  Due to fall break, we do not have lecture and tutorial this week. However, I still spend some time going through notes and assignment #3. Most of questions in assignment 3 are about proving the growing speed. The first two proofs are very similar to what we have done in class and starting from question #3, it is getting really confused. The hint says we need to used the concept in proving, but I don't know how to add limit. Do I just pick a random number and limits x to that equation. I believe I need further discussion with my group members.
  Unfortunately, I did not know what the symbol of F is yet. Because I did not learn that far. I think I need to speed up a little bit.
  As the course website and Markus are just ready for using, I may start my learning now.
  I have no idea what our final exam will be like, probably it will contain all the concepts we learned so far. Starting from next week, I am going to start my review for CSC165 and hope I could get a better and satisfying mark in the final test, Of course, I will need some assistance from my assignment group.
  I am hoping assignment #2 can be posted this week, because I think my group was not dining our best in this one. Need to put more effort on next one indeed!

2014年11月15日星期六

CSC165H1--WEEK10

  This week we got our teats back. I felt really regretted that I forgot to bring a cheat sheet during the test, so I made many foolish small mistakes. Overall, I am quite satisfied with my second term test because I did my best without the help of cheat sheet and my answers were okay. The happiest point is that I finally exceed the average mark in this course! For me, I really think it is a hard course and I absolutely no background knowledge on computer science, at least, this proves that a good result comes from hard work.
  About the course this week, quite disappointing to hear, I think I am really behind the pace of teaching! I feel quite confusing with this week's lecture and the process of proving. To be more specific, I have problem reading computer code! Concepts about "return" and "loop" totally makes no sense. I just made an appointment with my assignment working group members, I want to ask them for help and maybe I would figure out something together with them. 
  As I mentioned previously, I did not understand how to read lines of computer code and this resulted in a 0 in my last quiz! This is so tragic. i can understand the tutorial problem pretty well if the question asks us to find the total number of loops we need for different inputs. However, the quiz problem was quite different and I thought in a total wrong direction. First, I don't know how to say return, I thought if an input does not satisfies the condition then the return at this point is false, otherwise is true. However, this is not correct. If the input is a number, according to the loop, the output should also be a loop. Increasingly, the number that makes the condition unsatisfied is the number returned. I just understood that and I will remember it for sure.
  The direct proof of a polynomial grows no faster than another polynomial is not very hard. Basically, we need to change the form of each side and try various ways to make then connected. However, the backward proof such as the negation of O is really hard, because we need to include more generic numbers in our statement. However, I feel like the proofs of kind of O related are although sometimes difficult, it is still within the capability of understanding.
  Next week of school is going to be relatively relaxing in comparison with previous week. I feel like I need to make time more valuable and work more on computer science and proving problems.

2014年11月6日星期四

CSC165H1--WEEK9

  Time is passing so fast and it is the ninth week of my first university term. We had our second term test this week! wow! The test is about proof and there was only three proof questions on the test. Overall, I think I was doing pretty well on this test because I felt confident to my proof when I was writing it.
  However, there is only one small problem I did not understand throughout the test. The first proof has an antecedent to something like m=5j+2. Because there is a existence antecedence, therefore, I used another number k to replace j, and using k throughout my proof and let k=j in the end. This is what I remembered my TA told us that we needed to make assumption on what we assume. However, from the sample solution for our assignment, it does not give this kind of assumption. Now, I am feeling pretty confused and I do not know how TA will mark this proof.
  In addition to this, we had another proof based on the concept of "when y is bigger or equal to c and y is also smaller and equal to c" than it implies y=c. The last proof question is based on this concept and all I have to do is to make some changes in the definition to get the result. I found it was not very hard and I wrote as many comment as I could during the test. Hope it will help me explain my steps
well. Overall, I found this test was not very hard and I think I can do well, praying, praying, praying.
  Assignent group working is really helping e to understand the concept well, I always learn from others and I understand how to proof existence with the help of my group members.
  This week's lecture if based on the proof of O. Personally, I found this kind of proof harder the before, or maybe I should say I still do not have a clear understanding on the concepts and I should work on them later on.
  The tutorial problem this week was really hard and I barely understood what the question is asking me to do even even after my TA explained it. I kind of feel confused on loops and how it returns. Similarly, the quiz was so hard for me and I felt I was somehow behind the course schedule in comparison to others.
  I need to work harder in week and go through all the in-class problem be my self. I have any question, I will ask my TA or my assignment group members.

2014年11月1日星期六

CSC165H1---WEEK8

  I have been working on my assignment throughout this whole week. Some of the questions in the assignment are easy because we have done several example in the class and tutorial, such as the problem asks us to prove n=5k=2 and n^2=5j+4. i am pretty confident with these direct proofs. However, problem #1.2 and #1.3 pre ally confused me! The only difference between the claims is the "existence" and "for all' symbol. I think I need to work on these problems with my group members in next week.
  In the lecture of this week, we talked about the formal definition of O and Ω. O means the set of functions which grow no faster than N^2. In addition, we also learned insertion sort and I think this is a little confusing to me. Especially, when it is hard to combine the concept of insertion with O. After this, we learned about maximum slice using the symbol of input L. The concept is pretty easy but I feel uncomfortable to use it within the proof.
  In addition to this, about this week's tutorial, we got our last quiz back which I think I did pretty well. However, I still made some careless mistakes and I need to be careful next time. The tutorial problems of this week was pretty hard, but I can understand them after my TA explained them to me.
To be more specific, the first problem is every similar to what we did last week. There is one problem I found pretty interesting is the usage of sub-cases to discuss the possibility of 0. Indeed, I have never seen this kind of discussion before. During the tutorial I learned how to prove a existential case. All I have to do was to give an example and prove the previous cal aim wrong through this evidence. For instance, I just need to take x=1 and y=1 to prove the addition of square root of x and y is not equivalent to the square root of the addition of x and y.  In addition to this, I believe the contrapositive proof is also an effective way to make proof.
  We are going to have another midterm next week and the test will be based on proof. I hope I could do better in this test than the previous one. I will review past tests and assignment to prepared for this test.

2014年10月24日星期五

CSC165H1--WEEK7

  In this week's lecture, we talked about more on proof and introduced a new concept of introduction rules. These rules are new to me, indeed.
  Until now, I am feeling relatively confident in writing proof structure, however, I still think the hardest part is to actually find a way to complete the proof. Sometime, I could not think of that particular way and got confused or massy during the process of proof. For example, when my professor talked about the proof of when n=6, T(n^2)=T(n). If change this into a mathematical proof, I may be able to do it because I can involve simple calculation. When I first saw this question, I found it was not so hard and I had the idea putting 6 into the assumption. The biggest problem is that I did know where to start with the prove. It is always a hard proceed when I had to think about setting a n' or some other number to help me with the proof. Well, I finally understood the proof process and it seemed pretty obvious to me.
  The tutorial problems of this week is very hard, I spent a plenty of time on it but I could not figure any of them. Again, I was stuck in setting numbers like n' or k'.
  This week's tutorial was good and I understood concept throughly.  The first question was not so hard after my TA explained that. The main point it to choose z=x such that it can stratify the given condition, in addition, it is also important to suppose a z' in stead of z in the first place. What's more, the second question was relatively hard because I did not thought of "closure under multiplication and addition" although I remembered I learned this when I learned linear algebra transformation this year. Still, I am pretty slow when writing the proof question. One because of I can not come up with a thorough process right after I looked at the question and secondly, I may need to practice more to become more familiar with the proving method and structure.
  I made some small mistakes in this week's quiz because I did not understand the process totally. I would review these stuff this weekend and start working on our second assignment problems.

2014年10月16日星期四

CSC165H1--WEEK6

  We got our tests back on this Tuesday. I can believe the average mark is so high, 83%! My mark, in comparison, is not good and I think I need to work harder from now on. I went through the test, the errors are basically from unclear understanding of the concept and stupid mistakes. For instance, I have a unclear understanding of the output of python and I can not distinguish the difference between false and counterexample. Therefore, I got all the determination of python right but some counterexamples wrong. I might ask my group member for help next time when I met them. Overall, I am not satisfied with this test result, there are a lot for me to improve such as doing assignment on my own instead of giving it to my group members, understanding the concepts and asking questions.
  The lecture of this week we talked about floor and its definition. The definition is pretty long and hard to remember. Because we did not have tutorial this week, I did not get a chance to do problems associated with proof methods. I can understand the proof process when my professor do the question step by step, however, when I try to do questions on my own, I found it is so hard to start the proving process. This the actually the biggest problem I usually face when I did proof questions, I did not where to start and it is hard to find a link between hypothesis and conclusion.
  For instance, the first proof question on floor the professor proved the contradiction with definition #3 of floor to get the conclusion. When I first looked at the example, I had no idea of what to do. However, following the steps my professor took, first we need to compare the given condition with definition of floor, trying to find similarity and difference. Then we need to do a scratch work which can lead us to the result (this is the most difficult one!). We move minus 1 to the left side and this becomes plus 1 and this corresponds to definition #3. Then we let X belongs to Z and change the original element in the definition, thus we can disprove the failure of its negation.
  About the concept of proof, I think I need to do more problems and conclude some usual proving method, thus I can be more adept in solving questions.