Re: TransformedDistribution, for a sum of M iid variables
- To: mathgroup at smc.vnet.net
- Subject: [mg120428] Re: TransformedDistribution, for a sum of M iid variables
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Fri, 22 Jul 2011 03:42:34 -0400 (EDT)
Clear[distSN] distSN[1] = NormalDistribution[0, 1]; Assume that distSN[n_] = NormalDistribution[0, Sqrt[n]]; Proof by induction distSN[n + 1] == TransformedDistribution[ x + y, {Distributed[x, distSN[n]], Distributed[y, NormalDistribution[0, 1]]}] True More generally, Clear[distN] distN[1] = NormalDistribution[m, s]; Assume distN[n_] = NormalDistribution[n*m, Sqrt[n*s^2]]; Proof by induction distN[n + 1] == TransformedDistribution[ x + y, {Distributed[x, distN[n]], Distributed[y, NormalDistribution[m, s]]}] // ExpandAll True More general forms cannot be as proved as readily; however, the extensions are obvious. Clear[dist] dist[n_Integer?Positive] = NormalDistribution[Sum[m[k], {k, n}], Sqrt[Sum[s[k]^2, {k, n}]]]; dist[m_List, s_List] := NormalDistribution[Total[m], Norm[s]] /; Length[m] == Length[s]; For example, dist[4] NormalDistribution[m[1] + m[2] + m[3] + m[4], Sqrt[s[1]^2 + s[2]^2 + s[3]^2 + s[4]^2]] With[{n = RandomInteger[{10, 100}]}, Simplify[ dist[n] == dist[Table[m[k], {k, n}], Table[s[k], {k, n}]], Thread[Table[s[k], {k, n}] > 0]]] True Testing consistency with the simpler cases: With[{n = RandomInteger[{10, 100}]}, (dist[n] /. {m[_] -> m, s[_] -> s}) == distN[n]] True With[{n = RandomInteger[{10, 100}]}, (dist[n] /. {m[_] -> 0, s[_] -> 1}) == distSN[n]] True Bob Hanlon ---- paulvonhippel at yahoo <paulvonhippel at yahoo.com> wrote: ============= Using the TransformedDistribution function it is easy to show that the sum of two normal variables is normal, e.g., Input: TransformedDistribution[Z1+Z2,{Z1\ [Distributed]NormalDistribution[0,1],Z2\ [Distributed]NormalDistribution[0,1]}] Output: NormalDistribution[0, Sqrt[2]] Likewise it wouldn't be hard to show that the sum of 3 normal variables is normal, or 4. But how do I show that the sum of M normal variables is normal, where M is an arbitrary positive integer. I'm thinking I should use the Sum function inside TransformedDistribution, but I don't know how the notation would work. I see that there's a UniformSumDistribution function, but that's limited to uniform variables. Later I will want to do similar calculations for nonnormal distributions. Thanks for any pointers. -- Bob Hanlon