Saturday 29 November 2014

Week 12 - Course Reflection - Its all over :(

~~~~~~WEEK 12~~~~~~



Today’s Outline:
  • Tips for Assignment 3
  • Countability
  • Induction
  • Review for final exam


I received my assignment 2 grade back and it was in the mid-80s. Assignment 3 is due next week and I have done a couple of questions.

Larry gave us tips on each question which helped out quite a lot on the assignment.

We started the lecture by learning about Countability. At first it was very confusing and the professor went through it very quickly but when I re-read the notes I understood them. I am taking MAT137 which helped me understand 1-1 functions. I have studied AICT in CIE A-levels which involved 1-1 functions which is why I understood them right away. Other than that the topic was tough but I managed to understand it after reading it at home.

We then went onto learning about Induction. The only induction I had learned to this day was electromagnetic induction in physics. I zoned out during class because I was working on my CSC108 assignment all day which was due 10pm. I was so tired nothing was making sense to me. When I went home and reread the notes I remembered that I had done induction proofs in MAT137. We first take the base case then take the inductive step. I think the CSC165 way is much easier to do then the MAT137 even though they are the same thing. The lecture ended by the professor telling us that Countability and Induction will not be in our final exam which was a sigh of relief. I had the same reaction as the person in the GIF in Theo's blog: http://learnmathforcs.blogspot.ca/2014/11/the-unsolvable-problem.html

We then finally went onto the Review for the final exam. I was so sleepy in class that all I could think about was having a coffee. I went home and looked at the slides. I love how Larry put the, “Tight Tight Tight,” meme from Breaking Bad. I have to study hard for this exam because it’s a requirement for a computer science major/specialist.

The tutorial this week was tough and I was unable to do any of the questions. I did not understand the solutions the TA wrote because my mind refused to work. I ended up not answering the quiz question because I had no idea how to. But the best part was the Timbits the TA got for us, made my day.


The course was difficult. http://jasoncscslog.blogspot.ca/2014/12/week-11-12-ending.html  This blogpost also agrees to the fact it was difficult. But with a bunch of effort this course in manageable. But the biggest help was the extended office hours which were available to us before each assignment and exam. This is the end of the journey with Professor Larry Zhang and TA Grace. I will miss both of them and I would love to learn from them in the future. Best of luck.

Sunday 23 November 2014

Week 11 - Reading week

~~~~~~WEEK 11~~~~~~~

We did not have class nor tutorial this week.

Sunday 16 November 2014

Week 10

~~~~~~ WEEK 10~~~~~~

Today’s outline:
  • Big-Ω Proof
  • Prove big-Oh proofs for general functions
  •  Introduction to computability


We had to submit our second assignment this week. I found question 1.2 and 1.3 the hardest in the assignment. I got my test result back, I got 71%.

I was happy because we got to know next week we had no class but I was sad because the week after would be the last class with Larry Zhang. I will miss him.

We started the class by recapping the definitions of upper and lower bounds and big-Oh proof.  We did a proof of big-omega which I understood because I thoroughly went through it when we had our 10 minute break. We then looked at general statements about big-Oh and did a couple of proofs, this was a little confusing but I understood it after I read it at home.

We then started computability. It was the third hour and I was really sleepy so I did not understand what was happening during class. I tried understanding when I got home but I did not fully understand the concept of halt.


This week’s tutorial was easy and I managed to solve the quiz without a problem.

Sunday 9 November 2014

Week 9 - Term Test 2

~~~~~~ WEEK 9~~~~~~

Today’s outline:
  •  Exercises of big-Oh proofs
  • Prove big-Oh using limit techniques


We had our second term test this week and I think I did okay. The second question was the hardest and I think I’ll lose most of my marks there.

We started the class by recapping the definition and doing a proof of big-Oh. The proof made absolutely no sense during class because I was simultaneously doing my CSC108 assignment. When I got home and tried doing the proof it still did not make sense to me because the powers of the numbers were increasing and decreasing. I went to the Larry’s office hours to understand the concept and I did. We then learned about disproving which I did not understand until I went home and reread it.

We then went onto limits and I was extremely exhausted because I just submitted my assignment and an hour ago gave the CSC165 exam. Nothing was making sense to me. I went home and understood the concept easily because we have done it in MAT137.

This week’s tutorial was about proofs. I understood everything and I can confidently attempt these types of questions.

Sunday 2 November 2014

Week 8 - Penny Piles

~~~~~~WEEK 8~~~~~~

Today’s outline:
  • Formal definition of O, Ω
  • Worst-case analyses of two algorithms
  • Problem solving session


I completed the survey that was given to us and I feel the course has been very good so far. Thank God for the extended office hours because I used those for getting help on the second assignment.

We started off the class by recapping O(n2) then by learning the formal definition of O(n2). I understood the formal definition as it is very simple and straightforward. I think the biggest help in understanding it was the graph that was given to us and the chicken and turkey example. We then went on to learning about Ω(n2) which I did not understand at first. Fortunately the examples cleared up the misunderstanding.

We were then introduced to algorithms, the first one was, “insertion sort.” It took me a while to understand the code and finally understand it. We then went onto doing a code which involved maximum slice which would calculate the maximum difference between any numbers in the list in the correct order. The coding was hard to understand and I asked the professor questions and he helped me out and told me about them. I learned that we needed a loop guard for this function. I am taking CSC108 which helped me understand the coding behind this code. I don’t think I would have understood this function if I had not taken CSC108.

We were given a problem called, “Penny piles.” We were given two drawers and 64 coins in one of them and the other empty. We can only transfer money from one drawer to the other only if the initial drawer has an even number of coins in it. Our task was to find how many moves it took to get 48 coins in one drawer. Furthermore, we were asked to find numbers which could not be obtained. We used the method of tracing backwards and going to the number we want to achieve. Ex. I wanted 48 I started from 1 63 then 2 62, 4 60, 8 56, and finally 16 48. Our group did the same for each number we were trying to get. I used a similar technique to this but backwards: http://kevin-au-csc165.blogspot.ca/2014/12/week-7-worksheet-penny-piles.html

This week’s tutorial exercise was extremely helpful as it gave me an introduction to the definition of floor and proofs according to floors.


I have the assignment due next week along with 2 other major assignments and CSC165 mid-term which I have to study hard for this time around. I felt that the assignment should have been due on the 31 October because we would have completed the assignment before that day and our work would be done instead of all work in once place..

Sunday 26 October 2014

Week 7

~~~~~~WEEK 7~~~~~~



Today’s outline:
  •  Proof by cases
  •  Review of proofs
  •  Algorithms


We started this class off by learning about proof by cases. I learned that we have to split our argument into different cases and prove the conclusion for each case. As always, a funny slide to lighten the mood:




We were then given a question involving constant ‘n’. We found the possible cases to prove the statement true and we showed its proof. I learned the proof after reading it a second time because it was all too much for one class. We did more examples and I got a better understanding of what we were doing. We then went onto learning about uniqueness. The concept of uniqueness was easy and simple. We learned about introduction and elimination which were easier than expected.

We then started learning about algorithms. We used the website http://www.sorting-algorithms.com/ to get a demo on algorithms. We observed that merge is faster than bubble and with larger input size, the advantage of merge over bubble becomes larger. When the professor was talking about running time I thought it was the time it took for the operation to finish, but it turned out it meant the steps that were taken by the algorithm. I also learned that the running time is independent of hardware on which we run the algorithm, it depends on the algorithm itself. After algorithms we learned about asymptotic notations which I did not understand so I was left confused until the end of the class. I will need to study this because we will be studying more about asymptotic notations for our next class.

I understood the linear search slides because I have used python visualizer in CSC108 which counts the number of steps taken for the code.

This week’s tutorial was a bit complicated but I managed to understand it by asking the TA questions and participating in class. I did the quiz well and manage to prove the statement. I received my marks from the past 2 weeks which were both 2/2.

Assignment 2 is out and I should get to it because I have a lot of due dates in that time. Must use my time efficiently.

Sunday 19 October 2014

Week 6

~~~~~~ WEEK 6 ~~~~~~

Today's outline:

  • Proof about non-boolean functions
  • proof something false
  • proof about limits

I got 71% on my mid-term grade and I was disappointed at myself because I know I could have done a lot better. I need to spend more time on learning about CSC165 from now on. One thing that cheered up my mood was that we were told that we only have a 2 hour lecture.
We started the class off by learning about non-boolean functions. It is simple and straightforward. I know what boolean is used in CSC108.  Non-boolean functions are functions which return value is not True or False. For example sin(x) and x2.

We learned about floors. They are basically converting a number to an integer. It is exactly what the ‘int’ function in python does. Then we were taught about some proofs involving floors. I understood them once i read over them because I was a little confused during class. I love how the professor uses memes to indicate emotions. I told my friends in other classes that my professor uses memes and they all wanted to join my class all of a sudden.
We then learned about proving things false by disproving. How do we disprove statement S? Just prove ¬S.  We learned about sequences how to disprove them. The proper way to disprove a statement is:  
  • First make sure to negate it correctly
  • Then prove the negated statement
  • Draw examples to obtain intuition


We were shown invalid ways of proofs which were for humor purposes. After that we were introduced to limits. I have learned about limits in MAT137 so I have an idea about them and the epsilon-delta proof. I understood what was taught.


There was no tutorial this week.