Is it possible in mathematica to check if two expressions may be able to be written in terms of the other? The expressions I had in mind were of the form $$\alpha = \frac{1-x}{1-y}\,\,\,\,,\,\,\ \beta = \frac{1+x}{1+y}$$ and was wondering if it's possible to find a relation $$\alpha = f(\beta)?$$


It looks like the answer for the given system is No.

Defining the equations first:

eqns = {a == (1-x)/(1-y), b == (1+x)/(1+y)};

We can use Eliminate to try and suss out a relation which does not depend on x or y.

Eliminate[eqns, {x, y}]


However, Eliminate returns True. This means that a and b can be chosen independently of each other, disproving the existence of a relation of the form $\alpha = f(\beta)$ immediately. If that's not convincing, however, you can use Reduce to find out the precise conditions for which a solution for a exists:

Reduce[eqns, a, {x, y}]

(b == 1 && a == 1) || (-1 + a) (a - b) (-1 + b) != 0

So if a and b are both 1, or so long as the other expression is not 0, any pairing of a and b should be possible. You can use FindInstance to find a few, if you wish:

FindInstance[eqns /. {a->4, b->2}, {x, y}]
FindInstance[eqns /. {a->5, b->2}, {x, y}]

{{x -> 5, y -> 2}}

{{x -> 13/3, y -> 5/3}}


Solve $\beta$ for $x=x(\beta,y)$:

S = Solve[β == (1 + x)/(1 + y), x]

{{x -> -1 + β + y β}}

Use this list of solutions to express $\alpha=\alpha(\beta,y)$:

α = FullSimplify[(1 - x)/(1 - y) /. S]

{(-2 + β + y β)/(-1 + y)}

Pick those solutions where $\alpha$ depends only on $\beta$ but not on $y$:

Select[α, FreeQ[y]]


No solutions found in this case.


You can use FindInstance to generate a simple counter-example to the hypothesis that a is a function of b

a = (1 - x)/(1 - y);
b = (1 + x)/(1 + y);

FindInstance[{a == 2, b == 1/2}, {x, y}]

(* {{x -> -(1/3), y -> 1/3}} *)

FindInstance[{a != 2, b == 1/2}, {x, y}]

(* {{x -> 1, y -> 3}} *)
  • 1
    $\begingroup$ Thanks. This is because if $a = f(b)$ existed then by definition it cannot be one to many. $\endgroup$ – CAF May 4 at 8:58

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.