0
$\begingroup$

Does Mathematica allow testing abstract algebraic relationships with probabilities? For example, checking a relationship between probabilities without expressing the form (e.g. binomial etc.) of these probabilities but under generic assumptions?

Like assuming a generic discrete distribution or a Markov chain relationship and then test/simplify/modify relationships between them. Simple example, multivariate discrete distribution in which part of the variables are related via Markov chain and one want to know the expression of the Kullback Leiber divergence with a product of marginals.

Example, thest that the following relationships are correct \begin{align*} & I \big(A_1 {:} \dots {:} A_K ; \mathcal{Y} \big) \\ &\triangleq \sum_{\ell=1}^L \ \sum_{y^\ell \in \mathbb{Y}^\ell} p \big(y^\ell\big) \cdot \min_{k=1,\dots, K} \left \{ I\big(A_k;Y^{\ell-1} \mid y^\ell\big) \right \} \\ &= \sum_{\ell=1}^L \ \sum_{y^\ell} p \big( y^\ell \big) \ I \big(A_{k(y^\ell)} ;Y^{\ell-1} \mid y^\ell \big) \\ &= \sum_{\ell=1}^L \ \sum_{y^\ell} \ \sum_{a_{k(y^\ell)}, y^{\ell-1}} p\big(a_{k(y^\ell)}, y^{\ell-1}, y^\ell \big) \ \log \frac{p \big(a_{k(y^\ell)}, y^{\ell-1} \mid y^\ell \big)}{p \big(a_{k(y^\ell)} \mid y^\ell \big) \ p(y^{\ell-1} \mid y^\ell)} \\ &= \sum_{\ell=1}^L \ \sum_{\substack{a_1, \dots, a_K \\ y^0, \dots, y^L}} p\big(a_1, \dots, a_K, y^0, \dots, y^L \big) \ \log \frac{p \big(a_{k(y^\ell)}, y^{\ell-1} \mid y^\ell \big)}{p \big(a_{k(y^\ell)} \mid y^\ell \big) \ p(y^{\ell-1} \mid y^\ell)} \\ &= \sum_{\substack{a_1, \dots, a_K \\ y^0, \dots, y^L}} p\big(a_1, \dots, a_K, y^0, \dots, y^L \big) \ \sum_{\ell=1}^L \log \frac{p \big(a_{k(y^\ell)}, y^{\ell-1} \mid y^\ell \big)}{p \big(a_{k(y^\ell)} \mid y^\ell \big) \ p(y^{\ell-1} \mid y^\ell)} \\ \end{align*} where $k(y^\ell) \triangleq \arg \min_{k=1,\dots, K} \left \{ I\big(A_k;Y^{\ell-1} \mid y^\ell\big) \right \}$ and the $Y^\ell$ are linked by deterministic functions. All variables descrete.

Can Mathematica handle this kind of symbolic problems?

$\endgroup$
3
  • 1
    $\begingroup$ Please be more concrete. Please edit your question and make an example of the kind of thing you would want to check. Also include what you have tried so far (code). $\endgroup$
    – user293787
    Nov 26, 2022 at 7:23
  • $\begingroup$ I have not tried anything. I want to know if I should try mathematica for this or not. $\endgroup$
    – Cesare
    Nov 26, 2022 at 7:26
  • 2
    $\begingroup$ If you know another program or language that can do the manipulations you want, please include that information. If you know relevant algorithms, please include that information also. Generally speaking, Mathematica has many built-in functions, but many more things are possible with a bit of programming effort. If you include a concrete example or question that you would like to answer, your chances of getting a useful and authoritative answer will go up significantly. $\endgroup$
    – user293787
    Nov 26, 2022 at 7:59

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.