Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Representing algebraic numbers.

  1. Jun 4, 2013 #1
    First I'll write what I know:

    Algebraic number: one of the roots to a polynomial over rational numbers.

    Polynomial: A function for x. Example: ##f(x) = x^2-2## although I won't write the ##f(x)## part when writing a polynomial.

    Root of a polynomial: All values for x where the polynomial is equal to 0 Example: ##f(x)=x^2-2## is equal to 0 at ##\sqrt{2}## and ##-\sqrt{2}##

    Here comes the question:

    How can I represent an algebraic number? To represent it we need a polynomial, I get that part, and a way to tell it which of the roots that is the value of the number.

    So the question is now, how do I represent which root it is?

    Then finally, I want to apply the rules I find to a computer api/library so I can make programs that work with these values, how do I do that?

    Here I'll write what work I have made myself:

    After a little bit of work, I found a way to represent the algebraic numbers by giving them an integer following these rules:

    Take all the roots and put them as points on a grid, where x is the real line and y is the imaginary, now take the distance from 0,0 to each point, and assign them in a order so the closest is 1 and the next is 2 and so on...

    Now if they have several at the same distance, we can make a circle with center at 0,0 that goes through all the points with the same distance and start at angle 0 and go (counter)clockwise around the circle and assigning numbers that way.

    Now this seems to work perfect for the representation, but there is a problem, how do I use it to calculate with, for example: if ##alg(polynomial, integer)## is an algebraic number for that polynomial and the number represents which root (going counterclockwise for this example when they have equal distance), then what is ##alg(x^2-2, 1)*alg(x^2+1, 1)##

    If you make them into complex numbers, you can do the calculations and turn them back, it's possible to do so, for example you can solve the one above like this:

    I'll start with ##alg(x^2-2, 1)##
    All values for x in ##x^2-2=0## is with numbers assigned following my rules:
    1. ##\sqrt{2}##
    2. ##-\sqrt{2}##
    I have also drawn these values on an image in attachment A
    And it's the first one so ##alg(x^2-2, 1) = \sqrt{2}##

    Then for ##alg(x^2+1, 1)##
    All values for x in ##x^2+1=0## is with numbers assigned folloing my rules:
    1. ##i##
    2. ##-i##
    I have also drawn these values on an image in attachment B
    And it's the first one so ##alg(x^2+1, 1) = i##

    Then calculate ##\sqrt{2}*i## which is just that.
    Then I found a polynomial that has that root: ##x^2+2##
    Then let's find out which root and their number if you follow my rules so we can find the algebraic number:
    1. ##i*\sqrt{2}##
    2. ##-i*\sqrt{2}##
    So the answer is obviously ##alg(x^2+2, 1)##.

    Conclusion and questions:

    This is all good, but how do I apply rules to this?

    Can you find some rules for this that works in every solvable case?

    If not what kind of system would have those properties?

    We would also wan't to be able to do this for other things than multiplication, because addtion and division ect, should also be here.

    I can see that I could solve this, but I used wolfram alpha which already have similar number systems, so I can't really apply it to a computer program, how can I apply it? This question probably is answered if I can find answers to the previous ones.

    You don't have to find me a definite solution but rather some tips on how I could go about solving it.

    Just a note, I don't know if you'll need these things to answer but I don't understand derivatives and integrals, so please don't include them in your explanations.

    Attached Files:

    • A.png
      File size:
      6.3 KB
    • B.png
      File size:
      5.9 KB
    Last edited: Jun 4, 2013
  2. jcsd
  3. Jun 8, 2013 #2

    Stephen Tashi

    User Avatar
    Science Advisor

    One feature of your notation [itex] (f(x),k) [/itex] is that the same algebraic number has many different designations. For example, as I understand it, [itex] ((x-1)(x-2)(x-3),1) = ((x-1)(x-5),1) = ((x-1)(x-1),2) [/itex] In coordinate systems where the same point has many names, it is useful to identify a "principal" name for the point. I don't see how to do that in your system.

    In proving that the product of two algebraic numbers is an algebraic number, we have to show that there exists a polynomial with rational coefficients that has the product as a root. So to investigate a rule for computing [itex] (f(x),k) (g(x),j) [/itex] , you should look at the methods used in such a proof. I haven't looked at them recenty. The Wikipedia article on algebraic numbers says the proof can be done by computing the "resultant" of two polynomials. However the Wikipedia article on "resultant" looks inscrutable. Perhaps this article is clearer http://www.google.com/url?sa=t&rct=...pi9jca8Ot3KNyaQ&bvm=bv.47534661,d.aWc&cad=rja. The "resultant" of two polynomials seems to be defined as a number in modern sources, but in older books it is defined as a polynomial. I don't know the technical terms that distinguish between resultant-as-number and resultant-as-polynomial.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook