Richard Weber

Richard Weber

35p

37 comments posted · 4 followers · following 0

9 years ago @ http://webermarkovchai... - Lecture 4 · 0 replies · +1 points

It means both. To say $sum a_i <infty$ can only possibly make sense if the series is convergent.

Moreover, here, $a_i \geq 0$, and so $\sum_{i=1}^k a_i$ is nondecreasing in $k$.

9 years ago @ http://webermarkovchai... - Final lecture notes · 0 replies · +2 points

Thank you. I have corrected this.

10 years ago @ http://webermarkovchai... - Final lecture notes · 0 replies · +4 points

Thank you for spotting those typos, which I have corrected in the notes.

And thank you also for the kind words of appreciation.

10 years ago @ http://webermarkovchai... - Mathematica and Matlab · 0 replies · +4 points

My experience with computer languages is that I learn them best when I have a specific task to do. I have sometimes sat down to read a manual, but I find that I remember very little from doing that.

I think that it is often best to start with a program that someone has written for a similar task to the one you would like to accomplish, and then adapt it to your own purposes. You can begin to understand the syntax of the computer language by context, and by using the help guides. Mathematica has fantastic online help. You can search for keywords, and learn by reading the help. The help includes lots of code snippets as examples to who you what can be done.

For example, if you wanted to learn how to represent a matrix in Mathematica and find its eigenvalues you could begin by bringing up the Documentation Centre searching for the keyword Eigenvalues. That will bring up a page from which you can learn a lot by studying the examples.

You only need to know a subset of Mathematica to get started. The first things to know are some calculating functions (like Factorial, Random, Sin, Cos, Integrate), some algebraic manipulation functions (like Simplify, Factor, Expand, Series), and then control structures (like For, If and Do). There are advanced things such as functional programming, which use Map, Apply, etc. But there is no need to learn about these at the start.

I started programming for the first time in about 1969, when I got hold of a manual for Fortran 66. In those days it was paper tape and punch card input. In 1983 I bought a BBC micro and wrote Basic and 6502 machine code. Today's personal computers and high level languages, like Matlab and Mathematica, are truly amazing in their power. They are great experimental tools for mathematicians. I have frequently used these tools to find counterexamples to conjectures. At least three times I have written a research paper in which the proof of a theorem was completed or greatly assisted using a computer program. Last year a refereed a paper in which the authors had covered two pages with algebraic workings. I wrote, "why bother?" (The same thing could be found in one line of Mathematica code.) There are some unsolved problems that I return to every few years simply in the hope that with a more powerful computer I can make new progress.

I am enthusiastic about the use of computing in mathematics. Of course that is quite natural in my field of Operations Research. When mathematics is used "in anger" to find efficient ways of organizing and optimizing real-life complex systems then that almost always means writing a computer algorithm to carry out some mathematical task.

10 years ago @ http://webermarkovchai... - Lecture 16 · 0 replies · +1 points

No, it's OK. In this question a year is a record year if it is the driest year on record.

10 years ago @ http://webermarkovchai... - Lecture 6 · 0 replies · +3 points

I think it matters how you believe he chooses to say 40. He might have decided that he would say 40 provided he lost on some level 41 or higher. Or he might have decided that upon reaching level x he is going to randomly choose some level 1 to x and then tell you "I got past level x". In the same manner, we could get different answers after hearing "I have a son born on a Thursday", depending on how we think he chooses to tell us this information. But we can avoid this problem, by imagining that we are one asking him questions. We know he has two children. In one experiment we ask "Do you have a son?". In another experiment we ask "Do you have a son born on a Thursday?" Given the answer yes, we will place different probabilities on his having two sons.

10 years ago @ http://webermarkovchai... - Lecture 6 · 1 reply · +2 points

No. p_x is the probability that he goes broke at some time before reaching a. That is, he hits 0 before hitting a. This is the same thing as what we called q_z in Section 15.2 (page 59). We found q_z=(a-z)/a, which is identical to the result in 6.3.

10 years ago @ http://webermarkovchai... - Lecture 13 · 0 replies · +2 points

Well spotted. As I wrote that in lectures today I was thinking that did not look quite right. It should indeed be

var(S_N)=E[N]var(X) plus (EX)^2 var(N)

This is Examples Sheet 3, #8. Note that with the above formula the variance is dimensionally correct: imagine that X_i are measured in metres, and N is dimensionless. The answer should have units of meters^2.

I have corrected the notes.

p.s. For some odd reason I can't write a plus sign in a comment. I wonder why that is?

10 years ago @ http://webermarkovchai... - Lecture 12 · 0 replies · +1 points

Thank you. I think I had Dyck previously and my spell-checker mangled this. I will correct it!

10 years ago @ http://webermarkovchai... - Lecture 12 · 2 replies · +2 points

Thank you for that reminder! I will add a posting about this so that more people see it. I strongly recommend these tools as aids learning. The exercise of implementing in a program the calculations whose theory we have seen in lectures can be very helpful in gaining a hands-on appreciation.

For example, it is lovely to see how a p.g.f. can be used to make some calculations so easy. Here is the code I used in today's lecture:

(* Roll a fair die 10 times. What is the probability the sum is 50? *)

p[z_] = (1/6) (z + z^2 + z^3 + z^4 + z^5 + z^6)

SeriesCoefficient[p[z]^10, {z, 0, 50}]
% // N

Series[1/(1 - x - x^2), {x, 0, 10}]
Table[Fibonacci[n], {n, 0, 10}]

Series[(1 - Sqrt[1 - 4 x])/2 x, {x, 0, 10}]
Table[CatalanNumber[n], {n, 10}]