# Finding root of symbolic function

I'm trying to find a root of the following equation $$\theta^\frac{t}{s}-\theta-\sqrt{1-p},$$ where $$0 and $$0. I've tried FindRoot and Reduce, but somehow they don't process the output.

Using reduce function, what I tried is

Reduce[theta^(t/s) - theta - Sqrt[1 - p] == 0 && theta > 0 && theta < 1 &&0 < t<=  1<=s && 0 < p < 1, theta]


Any suggestions on how to solve for a symbolic function?

• Dec 9 '18 at 17:52
• @MichaelE2 has given you the answer. Probably the best you can do is solve explicitly for the exponent: $\frac{r}{s}\to \frac{\log \left(\theta +\sqrt{1-p}\right)}{\log (\theta )}$.
– JimB
Dec 9 '18 at 18:58
• What is the unknown? Dec 10 '18 at 3:18
• $\theta$ is the unknown and I want to find roots (probably there will be two of them) of the above equation. All the rest is just parameters. I've tried by simplifuying the equation into $\theta^a-\theta-b$, where $a=\frac{t}{s}$ and $b=\sqrt{1-p}$, but still just don't know how to solve for roots... Dec 10 '18 at 5:08
• This is not the type of equations for which I would expect symbolic solutions.Try numerics. Dec 10 '18 at 7:30

The t/s is somehow a nasty in this question. The inequality chain make t/s limited by 0 and 1. 1 means t==s. At this point the equation reduces to Sqrt[1-p] and is satisfied only for p==1.

Following this path replace u=t/s and solve the equation.

p[theta_, u_] := 1 - (theta^u - theta)^2

Plot3D[p[theta, u], {theta, 0, 1}, {u, 0, 1}, AxesLabel -> Automatic]


The quotient t/s makes the equation unnecessary complicated. u makes it trivial.

It is too meaningful to replace the Sqrt[1-p] by q for example and

Plot3D[theta^u - theta, {u, 0, 1}, {theta, 0, 1}] For very large s the quotient t/s->0 and the equation gets

1-theta-Sqrt[1-p]

Reduce[1 - theta - Sqrt[1 - p] == 0, {p, theta}]


(* theta == 1 - Sqrt[1 - p] *)

Plot3D[theta == 1 - Sqrt[1 - p], {p, 0, 1}, {theta, 0, 1},
AxesLabel -> Automatic, PlotRange -> All] Reduce[theta^u - theta - Sqrt[1 - p] == 0 && theta > 0 && theta < 1 &&
0 < p < 1, u]
(* Element[C, Integers] && 0 < p < 1 && 0 < theta < 1 &&
u == (2*I*Pi*C + Log[Sqrt[1 - p] + theta])/Log[theta] *)

Plot3D[Log[Sqrt[1 - p] + theta]/Log[theta], {p, 0, .95}, {theta, 0, .9},
AxesLabel -> Automatic, PlotRange -> All] This is not so informativ and comfortable to look at if p->1 and theta->1.