My goal is to obtain the function $s$ defined in the code below as a function of $\chi_1$, $\chi_2$, $\chi_3$. The code runs but never ends, although the problem does not seem too hard to solve for a computer. Any idea what the problem could be? I believe it should be solvable, unless the $\chi$'s are not all independent, but I have not been able to use Eliminate for showing that neither.

The code:

{s == (\[Tau][1, 2] \[Tau][3, 4] \[Tau][5, 6])/( \[Tau][1, 6] \[Tau][2, 3] \[Tau][4, 5]), \[Chi]1 == (\[Tau][1, 2] \[Tau][3,4])/(\[Tau][1, 3] \[Tau][2, 4]), \[Chi]2 == (\[Tau][3, 4] \[Tau][5, 6])/(\[Tau][3, 5] \[Tau][4, 6]), \[Chi]3 == (\[Tau][1,2] \[Tau][5, 6])/(\[Tau][1, 6] \[Tau][2, 5])} /. \[Tau][x_,y_] -> \[Tau][x] - \[Tau][y]
Eliminate[%, {\[Tau][1], \[Tau][2], \[Tau][3], \[Tau][4], \[Tau][5], \[Tau][6]}]
  • $\begingroup$ There might not be a solution, since there are four equations and you want to eliminate six variables. $\endgroup$ Jul 19, 2021 at 18:14
  • $\begingroup$ @DanielLichtblau: It looks like there are only really 5 degrees of freedom in the $\tau$ variables, since we can add the same constant to all of them without affecting the values of $s$, $\chi_1$, $\chi_2$, and $\chi_3$. Still not enough to expect a solution, though. $\endgroup$ Jul 19, 2021 at 19:04
  • $\begingroup$ Mm I thought I could cook up any cross-ratio with only $3$ variables, but maybe I'm wrong. Using other variables it worked, so maybe the current choice of variables is inadequate for doing so. $\endgroup$
    – Pxx
    Jul 19, 2021 at 19:11

2 Answers 2

eqns = {s == (\[Tau][1, 2] \[Tau][3, 4] \[Tau][5, 6])/( \[Tau][1, 6] \[Tau][2, 3] \[Tau][4, 5]), \[Chi]1 == (\[Tau][1, 2] \[Tau][3,4])/(\[Tau][1, 3] \[Tau][2, 4]), \[Chi]2 == (\[Tau][3, 4] \[Tau][5, 6])/(\[Tau][3, 5] \[Tau][4, 6]), \[Chi]3 == (\[Tau][1,2] \[Tau][5, 6])/(\[Tau][1, 6] \[Tau][2, 5])} /. \[Tau][x_,y_] -> \[Tau][x] - \[Tau][y]

Note that we can add a constant to all variables $\tau_i$ without affecting the variables $s$, $\chi_1$, $\chi_2$, $\chi_3$. So let's set $\tau_6 \to 0$ (i.e., add $-\tau_6$ to all of the $\tau_i$):

modeqns = eqns /. {\[Tau][6] -> 0}

We can then get rules for eliminating $\tau_1$, $\tau_3$, and $\tau_5$ via last three equations. (I picked these three because of the symmetry of the equations.)

tausol = Solve[Drop[modeqns, 1], {\[Tau][1], \[Tau][3], \[Tau][5]}];

If we then apply this to the right-hand side of the first equation, we can see if $\tau_1$ and $\tau_5$ remain:

ssoln = FullSimplify[modeqns[[1, 2]] /. tausol]

enter image description here

We are (somewhat) in luck! If $\tau_1$ or $\tau_5$ had remained in this expression, we would have concluded that we could not write $s$ as a function of the $\chi_i$'s alone; but since they do not appear, we can conclude that this is the correct expression for $s$. However, we have two possible solutions; this is because the equations for $\tau_1$, $\tau_3$, and $\tau_5$ are quadratic in these variables.

However, this implies that we can find a quadratic polynomial in $s$ which the quantities $s$, $\chi_1$, $\chi_2$, and $\chi_3$ always satisfy:

poly = Collect[Together[(s - ssoln[[1]]) (s - ssoln[[2]])], s, Simplify]

(* s^2 - (\[Chi]1 \[Chi]2 \[Chi]3)/((-1 + \[Chi]1) (-1 + \[Chi]2)) 
   + ( s (\[Chi]1 \[Chi]2 (-1 + \[Chi]3) - \[Chi]1 \[Chi]3 - \[Chi]2  \[Chi]3))/((-1 + \[Chi]1) (-1 + \[Chi]2)) *)

So we should always have $$ s^2 + \left[\frac{ \chi_1 \chi_2 \chi_3 - \chi_1 \chi_2 - \chi_2 \chi_3 - \chi_1 \chi_3}{(\chi_1 - 1)(\chi_2 - 1)} \right] s - \frac{\chi_1 \chi_2 \chi_3}{(\chi_1 - 1)(\chi_2 - 1)} = 0. $$ Let's check:

rules = eqns /. Equal -> Rule;
FullSimplify[poly /. rules]

(* 0 *)


  • In a previous version of this answer, I had found a unique answer for $s$ in terms of the $\chi_i$'s, but I now believe that I (or Mathematica) had been discarding one of the above two roots, and so my expression only held about half the time when I plugged in random values for the $\tau_i$ variables.

  • It's also not entirely clear to me why the above expression is not symmetric under the exchange of the $\chi_i$'s, given the symmetry of the equations. I will think on this further.


You can get the desired function s of chii very fast with GroebnerBasis forcing it to delete the taui.

eqs = {s == (\[Tau][1, 2] \[Tau][3, 4] \[Tau][5, 6])/(\[Tau][1, 
     6] \[Tau][2, 3] \[Tau][4, 5]), \[Chi]1 == (\[Tau][1, 
     2] \[Tau][3, 4])/(\[Tau][1, 3] \[Tau][2, 
     4]), \[Chi]2 == (\[Tau][3, 4] \[Tau][5, 6])/(\[Tau][3, 
     5] \[Tau][4, 6]), \[Chi]3 == (\[Tau][1, 2] \[Tau][5, 
     6])/(\[Tau][1, 6] \[Tau][2, 5])} /. \[Tau][x_, y_] -> \[Tau][x] - \[Tau][y];

gb = GroebnerBasis[Subtract @@@ eqs, s, Table[\[Tau][i], {i, 6}]];

(*   s^2 - s^2 \[Chi]1 - s^2 \[Chi]2 - s \[Chi]1 \[Chi]2 + 
     s^2 \[Chi]1 \[Chi]2 - s \[Chi]1 \[Chi]3 - 
     s \[Chi]2 \[Chi]3 - \[Chi]1 \[Chi]2 \[Chi]3 + 
     s \[Chi]1 \[Chi]2 \[Chi]3   *)

rules = eqs /. Equal -> Rule

FullSimplify[gb[[1]] /. rules]
(*   0   *)

Solve[gb[[1]] == 0, s]

Solve for s gives the same result than @MichaelSeifert gets with his "poly".

  • $\begingroup$ Nice job. One of these days I'm going to figure out how to use GroebnerBasis correctly; I've played around with it in the past but I've never quite grokked what it does and how to use it. $\endgroup$ Jul 21, 2021 at 2:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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