It would be feasible to implement a system that can solve some problems. However, there are a number of other tasks that have higher payoff/cost ratios (getting it merged into master a clear example). I don't personally plan to work on the infinite issue in the near future.
However, the first step to this has nothing to do with sympy-stats and could be accomplished by any motivated member of this community (if indeed it is feasible). Every random variable implementation depends on a well-separated backend. Finite RVs depend on sets and iterators, Continuous RV's depend on integrals, Multivariate on Matrix Exprs. Infinite RVs would require a strong sequences and series module. A simple example problem might be the following \sum_{i=0}^n\sum_{j=0}^i e^{-\lambda_1 i - \la happymbda_2 j}<http://latex.codecogs.com/png.latex?\sum_{i=0}^n\sum_{j=0}^ie^{-\lambda_1%20i-\lambda_2%20j}> If a module was produced which could solve many problems like the above then it would easy for me to create an infinite discrete random variable object. The stronger the ability of this module, the broader the class of random expressions it could solve. My belief is that problems like the above are difficult to solve analytically and that the potential use of infinite random variables is relatively small. I'd be thrilled to learn that this belief was incorrect. -Matt On Fri, Nov 18, 2011 at 3:26 PM, Aaron Meurer <asmeu...@gmail.com> wrote: > On Fri, Nov 18, 2011 at 2:19 PM, Matthew Rocklin <mrock...@gmail.com> > wrote: > > Yes. Discrete random variables in full generality (i.e. both finite and > > infinite cases) have not been implemented. There is, for example, no > Poisson > > random variable. > > When I looked into writing infinite sets and infinite discrete random > > variables I came to the conclusion that solving this problem in full > > generality was very difficult/impossible. An implementation to solve > > uni-variate infinite RV problems is feasible but when you start mixing > > multiple variables (i.e. conditions on both chickens and pigs) them you > > quickly produce provably difficult problems. > > Sorry for the thread hijack. > > Can you at least give an algorithm that uses steps that can be done at > least some of the time. For example, if a step is "solve this system > of equations," then obviously sometimes you won't be albe to do it, > but you can at least some of the time, and for those cases, it would > be useful to get the solution. > > Or is it more complicated than that? > > Aaron Meurer > > > > > On Fri, Nov 18, 2011 at 12:59 PM, Aaron Meurer <asmeu...@gmail.com> > wrote: > >> > >> On Fri, Nov 18, 2011 at 10:29 AM, Matthew Rocklin <mrock...@gmail.com> > >> wrote: > >> >> This is a neat example. Does this first one also just use for loops, > >> >> or does it solve the equations? > >> >> > >> >> Aaron Meurer > >> >> > >> > > >> > The finite random variable code is just a syntactically nice way to > set > >> > up > >> > and go though large iterators asking questions. It's not > computationally > >> > clever in any way. > >> > > >> > >> I see. So it would not be possible to extend the result to an infinite > >> set (which hopefully has a finite solution). In other words, you have > >> to know ahead of time how many sides to put on your Die. > >> > >> Aaron Meurer > >> > >> -- > >> You received this message because you are subscribed to the Google > Groups > >> "sympy" group. > >> To post to this group, send email to sympy@googlegroups.com. > >> To unsubscribe from this group, send email to > >> sympy+unsubscr...@googlegroups.com. > >> For more options, visit this group at > >> http://groups.google.com/group/sympy?hl=en. > >> > > > > -- > > You received this message because you are subscribed to the Google Groups > > "sympy" group. > > To post to this group, send email to sympy@googlegroups.com. > > To unsubscribe from this group, send email to > > sympy+unsubscr...@googlegroups.com. > > For more options, visit this group at > > http://groups.google.com/group/sympy?hl=en. > > > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To post to this group, send email to sympy@googlegroups.com. > To unsubscribe from this group, send email to > sympy+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/sympy?hl=en. > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to sympy@googlegroups.com. To unsubscribe from this group, send email to sympy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.