Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

$9$. Consider the parametric curve $K\subset R^3$ given by $$x = (2 + \cos(2s)) \cos(3s)$$ $$y = (2 + \cos(2s)) \sin(3s)$$ $$z = \sin(2s)$$ a) Express the equations of K as polynomial equations in $x,\ y,\ z,\ a = \cos(s),\ b = \sin(s)$. Hint: Trig identities.

b) By computing a Groebner basis for the ideal generated by the equations from part $a$ and $a^2 + b^2 - 1$ as in Exercise 8, show that K is (a subset of) an affine algebraic curve. Find implicit equations for a curve containing K.

c) Show that the equation of the surface from Exercise 8 is contained in the ideal generated by the equations from part b. What does this result mean geometrically? (You can actually reach the same conclusion by comparing the parametrizations of T and K, without calculations.)

I try to solve this problem, on page 102 of Cox's "Ideal, varieties and algorithms: an introduction to computational algebraic geometry and commutative algebra".

On the first question, I get $$x=(2+2\cos^2s-1)(4\cos^3s-3\cos s)=(1+2a^2)(4a^3-3a),$$ $$y=(1+2a^2)(3\sin s-4\sin^3 s)=(1+2a^2)(3b-4b^3),$$ $$z=2ab.$$

I was wondering whether they are right, since the Groebner basis given by them is extremely bad, Grobner basis

Any comments? Thanks.

share|cite|improve this question
up vote 1 down vote accepted

For what it's worth: you could try easing things a bit for your Gröbner basis computations by using the Weierstrass substitutions


after of course using multiple angle identities to expand out the trigonometric functions. Since it seems you're using Mathematica, here's how I'd do it if I were in your shoes:

    Thread[{x, y, z} == {(2 + Cos[2 s]) Cos[3 s],
            (2 + Cos[2 s]) Sin[3 s], Sin[2 s]}]] /. 
   Thread[{Cos[s], Sin[s]} -> {(1 - u^2)/(1 + u^2), (2 u)/(
      1 + u^2)}], {x, y, z}, u] // FullSimplify

On the other hand, it does seem that Cox/Little/O'Shea is asking you to do it the long way, so here's the "painful" route:

     Thread[{x, y, z} ==
       {(2 + Cos[2 s]) Cos[3 s], (2 + Cos[2 s]) Sin[3 s], 
        Sin[2 s]}]] /. Thread[{Cos[s], Sin[s]} -> {a, b}], 
   a^2 + b^2 == 1], {x, y, z}, {a, b}] // FullSimplify

It's not too hard to do a sanity check of the results of GroebnerBasis[]. Here's one way (to be done after executing the previous snippet):

% /. Thread[{x, y, z} -> {(2 + Cos[2 s]) Cos[3 s],
     (2 + Cos[2 s]) Sin[3 s], Sin[2 s]}] // Simplify

If everything went well, you should be getting a list containing a bunch of zeroes.

As I am writing this, I don't have Mathematica installed on the computer I'm using. It can happen that one of the the two options I gave might give a longer list of ideals, but it's guaranteed that one would be a subset of the other.

share|cite|improve this answer

Yes your expressions are correct. For further practices, you can try:

$$\begin{align*} \cos(ax)&=\frac{e^{iax}+e^{-iax}}{2}\\ \sin(ax)&=\frac{e^{iax}-e^{-iax}}{2i} \end{align*}$$

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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