Posts

Showing posts from September, 2018

3.2

I did read the entire section. Compared to the last sections we've done before, I found this one to be extremely easy. The proofs all seemed to make lots of sense, and I'm pretty familiar with trees/linked lists. I can tell we've reached a new topic because we're starting from the bottom again - similar to how we did with complexity. I've done some very basic things with binary search trees before, but I'm excited to learn some more theory behind them. I've heard cool things about them, so I'm looking forward to it!

3.1

I did read the entire section. The hardest thing for me was simply remembering all the definitions. Walk, cycle and path all seem like they could mean the same thing, so just getting used to distinguishing them. The concepts themselves weren't terribly hard. This reminds me of a discrete math class I took where we covered graph theory pretty extensively. A lot of the theorems I saw in the book I recognized from that class. It was mainly a class for CS majors, and it's cool to finally see how graph theory connects to data structures since we never covered that before.

2.1

First the normal questions: I did read the entire section. The hardest part was figuring out where some of the inequalities at the start came from (still don't know on some of them) and also following the proof for Stirlings approximation, which is just going to take some more intense reading/walkthrough on my part. This is honestly one of the hardest ones I've had yet to relate to another class. I also don't quite see the application of the approximation, although I'm sure it'll become apparent with more time. The question on the reading assignments page on Dr. Jenkins site: I spend anywhere from 1 1/2-3 hours on the homework depending on the assignment. Lectures and reading ABSOLUTELY prepare me for it - I also feel pointed in the right direction when I start. The homeworks have probably contributed the most to my learning. They require lots of thinking/pondering and to "get dirty" and actually play around with some of the math. Maybe trying ...

1.10

I did read the whole section. I didn't find any of it too terribly difficult, I've had a couple CS courses where we handled recursion quite a bit. I need a little practice determining complexity of a recursion algorithm though. I also thought the master theorem was easy to apply, but expect the proof to be intense. This brought back memories of getting used to recursion in my other classes. The thing that helped me most was to act like it wasn't recursion - simply a function that splits up a problem and then calls a different function. When we started complexity stuff, I thought about how you'd do complexity of recursive functions, and now I know it's actually not too bad!

1.9

I read the entire section. The hardest part for me was wrapping my head around what it meant for two numbers to be congruent. Through the reading I was able to grasp it more, but I need some more time with it. I did understand it enough for Fermat's Theorem and it's proof to make sense though. More than anything this reminded me of quotient spaces that we're learning about in 344. They're similarly defined/explained with modulus and equivalence classes. There's definitely and underlying thread that runs through both of them.

1.8

I did read the entire section. Maybe this is a bit silly or maybe I was extra tired, but the thing I struggled with the most this section was simply remembering what all the letters represented in all the proofs. The division theorem proof and the Euclidean Algorithm proof especially left me in the dust - I think we some extra read throughs I'll get it, but they were just harder to follow. I think Euclid's Algorithm is especially fascinating. In one of my CS classes we had to make a basic rational number 'class' and they showed it to us as a fast way of finding the gcd. I thought it was so mysterious how it worked and it's really cool now to see exactly how it works.

1.7

I did read the entire section. I didn't feel like it was too bad, I took a discrete mathematics class and we did lots of counting, so I'm pretty familiar with permutations, combinations, etc. I was a little bothered by the multinomial coefficient and couldn't figure out why that worked, but after looking up a simple proof it made a lot of sense. I think the binomial coefficient formula is super fascinating. I've seen proofs of different differentiation "rules" that lean heavily on it. From what I've heard it's super prevalent in all sorts of math, and I think that's awesome.

1.5

I did read the entire section. I didn't feel like there was anything too difficult other than brushing up on my QR, LU and other decomposition of matrices. Also, still just need some practice in adding up complexities - especially now with nested for loops. I found the loop interchanges to be very simple, but I don't think I ever realized the impact they can make on performance. I've always leaned towards doing similar things (I think it's pretty obvious it'll help), but felt it adds to the readability of the code having more variables floating around, but I suppose it's a tradeoff, and one that probably should be made in favor of performance.

1.4

I did read the entire section. The hardest part for me was just taking the time to understand how the double sums function. Switching them took some drawn pictures to get me to understand it, but I think I just need some practice with it more than anything. This really resounded with me due to having done lots of double for loops in my programming experience. The pictures shown in the book really visualized things for me and helped me understand how these double for loops function from my other classes.

1.3

I did read the entire section. The hardest part for me was becoming comfortable at considering/seeing a summation as a type of integration of functions on discrete sets. I have seen the difference operator before, but never the summation. I don't know if it's a difficult thing as much as I need some time to get my hands dirty with it. Like I said before, I had a class where we covered the difference operator briefly. We used in mainly to solve recurrence relationships, and I imagine we'll do something similar here. I found it really cool how simply it fits into the summations as a relationship similar to that of integration/differentiation.

1.1 - 1.2

I did read both assignments. The most difficult part was simply following the count of the complexity. I think I understand the difference between little-o, big-O and leading coefficient, but it took a lot of careful reading to follow the counting since it's done so concisely. Having taken a few basic CS courses, it was often discussed how "efficient" different sorting methods were, but never given a quantitative way other than timing it to show efficiency. I think the method of determining temporal complexity is super cool.

Introduction

Introduction for Easton Potokar. I'm answering the questions found at https://math.byu.edu/~jenkins/320.18F/Reading.html as listed on Reading Assignments page that was handed out with the Syllabus. I'm a Junior and an ACME Major with an emphasis in Signal Processing. I've taken Multivariable Calc, Linear Algebra, Theory of Analysis, and Differential Equations. I've always enjoyed math along with engineering, but felt an engineering degree neglected the math I wanted to learn. ACME is the perfect compromise of the two. One professor I really liked used to give us problems that only seemed marginally related to the topics we were covering. Only after really getting your hands dirty with the assignments were we able to see what was going on, and it really helped me see all the applications of math. I'm probably the only ACME student who's taken courses at USU. I believe the office hours work great, and with all the TA's I'm sure I'll be able to ...