I am trying to use Mathematica to find a solution for the following system of equations:
q=a0*(w/p*e)^a1
e=b0*q^b1*(w/p)^(-b2)
p=c0*w^c1*q^c2
w=d0*p^d1*e^d2
where a0, a1, b0, b1
etc. are parameters and q, e, p
and w
are endogenous variables. I would like to end up with expressions for q, e, p
and w
which are only in terms of the parameters. Trying Solve
on the above only returns expressions for p
and q
in terms of parameters, w
and e
, along with the warnings:
Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information
and
Equations may not give solutions for all "solve" variables
Trying Reduce
instead results in Mathematica computing for an extended period until I eventually abort.
The commands I use are as follows:
eqn = {
q == Subscript[a, 0]*(w/p*e)^Subscript[a, 1]
, e == Subscript[b, 0]*q^Subscript[b, 1]*(w/p)^(-Subscript[b, 2])
, p == Subscript[c, 0]*w^Subscript[c, 1]*q^Subscript[c, 2]
, w == Subscript[d, 0]*p^Subscript[d, 1]*e^Subscript[d, 2]
}
Solve[eqn, {w,e,p,q}]
and
Reduce[eqn, {w,e,p,q}]
I have also tried to clarify that all the parameters should be >0
by adding the qualifications &&Subscript[a, 0]>0 && Subscript[a, 1]>0
etc. to the definition of eqn
but this results in Mathematica seemingly being unable to do anything with the expressions in eqn
.
I am not sure whether this is just a general problem with my equations or whether I am doing something wrong since I am not very experienced in Mathematica. Any help would be much appreciated.
eqn
you are usingemp
rather thane
as shown in the first set. In the call toSolve
andReduce
you are usinge
as a variable. You need to either useemp
ore
in both places, the definition of as well as inSolve
. $\endgroup$