A Symbolic Computational Approach to a Problem Involving Multivariate Poisson Distributions

By Eduardo Sontag and Doron Zeilberger


.pdf   LaTeX source  
First Written: June 3, 2009. This Version: Dec. 7, 2016.

[Also appeared in Advances in Applied Mathematics v. 44 (2010), 359-377.]


How many Prussian officers per year do you expect to be kicked by their horses? How many Email messages will you get today? How many people will show up in your favorite restaurant? All these are easy. But what if you know that twice the number of Prussian officers plus three times the letters plus twice the number of diners equals something, and you want to predict the individual numbers, what would you do? Read this paper, to find the answers! [Of course, there are many other, more "serious" applications, to Biology and elsewhere (and phone calls!).]

Added Dec. 7, 2016: The above version is a corrected version of the original version. Here is the new version with the changes indicated in red.


Maple Package

Important: This article is accompanied by Maple package MVPoisson
[Version of March 15, 2010, incorporating helpful comments of Arthur Hipke]

Sample Input and Output for MVPoisson

  • For an example of the slow algorithm, that is valid for all matrices:
    the input gives the output.
  • For an example of the super-fast algorithm, that is valid for matrices with two rows:
    the input gives the output.
  • For another example of the super-fast algorithm, that is valid for matrices with two rows:
    the input gives the output.
  • For an example of the AllAve function
    the input gives the output.
  • For an example of the procedure RecsV (to find recurrences satisfied by F(b_1,b_2,..) of the paper, with symbolic g (what is denoted by lambda in the paper)
    the input gives the output.
  • For another example of the procedure RecsV (to find recurrences satisfied by F(b_1,b_2,..) of the paper, with a numeric list g (what is denoted by lambda in the paper)
    the input gives the output.
  • For yet another example of the procedure RecsV (to find recurrences satisfied by F(b_1,b_2,..) of the paper, with a three-rowed matrix, with a numeric list g (what is denoted by lambda in the paper)
    the input gives the output.
  • For yet another example of the procedure RecsV (to find recurrences satisfied by F(b_1,b_2,..) of the paper, with a three-rowed matrix, with a symbolic(generic) list g (what is denoted by lambda in the paper)
    the input gives the output.
  • For an example of procedure CorMf, to compute the correlation matrix
    the input gives the output.
    Doron Zeilberger's List of Papers

    Doron Zeilberger's Home Page