- #1
Darksonn
- 2
- 0
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.
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.
Attachments
Last edited: