Re: Use of Mathematica with Rule-based Equation Derivations

• To: mathgroup at smc.vnet.net
• Subject: [mg61944] Re: [mg61914] Use of Mathematica with Rule-based Equation Derivations
• From: "David Park" <djmp at earthlink.net>
• Date: Sat, 5 Nov 2005 01:52:45 -0500 (EST)
• Sender: owner-wri-mathgroup at wolfram.com

Hi Mark,

Clearly, I think you have to specify either a list of variables or a list of
constants. It will probably be easier to specify the variables. So for the
cases you have presented (using EV instead of E for the expectation value
operator)...

vars = {x};

expectationBreakout[vars_][expr_] :=
expr //. {EV[a_?(FreeQ[#, Alternatives @@ vars] &)b_] -> a EV[b],
EV[a_?(FreeQ[#, Alternatives @@ vars] &) + b_] -> a + EV[b],
EV[EV[x_]] -> EV[x]}

{EV[a x], EV[b + f[x]], EV[a + EV[b x]]};
% // expectationBreakout[vars]

{a EV[x], b + EV[f[x]], a + b EV[x]}

I suppose there would be additional sets of rules for evaluating various
functions of the variables.

It certainly is possible to do step by step derivations and calculations
with Mathematica. It's the best way to learn material! You can do many steps
within one cell and intersperse them with Print statements to annotate the
derivation. But one will usually have to write rules, as above, to implement
the various 'axioms'.

David Park

From: mmorriss at gcn.ou.edu [mailto:mmorriss at gcn.ou.edu]
To: mathgroup at smc.vnet.net

Hi All - I'm a many-year user of mathematica, but have always had one
particular problem with it that I may have just simply missed reading

Mathematica Version: 5.2

Problem: I would like to develop a set of re-rewite rules to apply to the
Expected Value operator.  For example:

E[a x] = a E[x]  a -> constant, x -> variable
E[b + f[x]] = b + E[f[x]] , etc.

The issue is how does one using Mathematica distinguish a 'constant
variable (i.e. a and b)' from a variable 'variable' (i.e. 'x')? The head
of a, b and x is 'Symbol' and neither a, b nor x contain a number so I
can't use a_?NumberQ to identify it as a constant.

This actually goes to the wider question of how does one use Mathematica
for symbolic derviations where numbers are not actually substituted in the
derviation?

E.g. E[a + E[b x]] /. Rule2
out= a + b E[x] etc.

Thanks all - Mark Morrissey
University of Oklahoma

• Prev by Date: Re: Use of Mathematica with Rule-based Equation Derivations
• Next by Date: Re: Re: Question regarding Mathematica's treatment of whitespace
• Previous by thread: Re: Use of Mathematica with Rule-based Equation Derivations
• Next by thread: Re: Use of Mathematica with Rule-based Equation Derivations