División de polinomios

Anuncio
División de polinomios
Algoritmos para la división
Dados un polinomio F y una familia de polinomios G1 , ..., Gt , para hacer la división de F por
esta familia basta ejecutar la siguiente orden.
In[30]:=
Out[30]=
F = X^3 Y^3 Z^3 + X^2 Y^2 Z^2 + X Y Z + 1
G1 = X ^ 3 Y + Y ^ 2 Z ^ 2 + X Y Z ^ 2 + 1
G2 = X Z + Y ^ 3 - Y Z ^ 2 - 1
Aux = PolynomialReduce@F, 8G1, G2<, 8X, Y, Z<D
1 + X Y Z + X2 Y2 Z2 + X3 Y3 Z3
Out[31]=
1 + X3 Y + X Y Z2 + Y2 Z2
Out[32]=
- 1 + Y3 + X Z - Y Z2
Out[33]=
99Y2 Z3 , Y + Y2 - Y5 + X Y2 Z + Y3 Z2 - Y3 Z4 =,
1 + Y + Y2 - Y4 - 2 Y5 + Y8 + Y2 Z2 + 2 Y3 Z2 - 2 Y6 Z2 - Y2 Z3 - Y3 Z4 + Y4 Z4 + Y6 Z4 - Y4 Z5 - Y4 Z6 =
La salida tiene dos componentes, la primera contiene los cocientes, y la segunda el resto.
Podemos comporbar el resutlado:
In[26]:=
Out[26]=
Expand@Aux@@1, 1DD * G1 + Aux@@1, 2DD * G2 + Aux@@2DDD Š F
True
Como consecuencia no es necesario desarrollar una función que nos realice esta tarea.
También es una orden de Mathematica el cálculo de la base de Groebner
2
Polinomios-03.nb
In[34]:=
Out[34]=
Out[35]=
Out[36]=
GroebnerBasis@8G1, G2<, 8X, Y, Z<D
GroebnerBasis@8G1, G2<, 8X, Y, Z<, DegreeLexicographicD
GroebnerBasis@8G1, G2<, 8X, Y, Z<, DegreeReverseLexicographicD
9- Y + 3 Y4 - 3 Y7 + Y10 - 3 Y2 Z2 + 6 Y5 Z2 - 3 Y8 Z2 - Z3 - Y Z4 - 3 Y3 Z4 +
Y4 Z4 + 3 Y6 Z4 - Y2 Z5 - Y2 Z6 - Y4 Z6 , - 1 + Y3 + X Z - Y Z2 , X Y - 2 X Y4 + X Y7 +
2 Y2 Z - 4 Y5 Z + 2 Y8 Z + Z2 + Y Z3 + 3 Y3 Z3 - Y4 Z3 - 3 Y6 Z3 + Y2 Z4 + Y2 Z5 + Y4 Z5 ,
- X2 Y - Y2 + X2 Y4 + 2 Y5 - Y8 - Z - Y Z2 - 2 Y3 Z2 + Y4 Z2 + 2 Y6 Z2 - Y2 Z3 - Y2 Z4 - Y4 Z4 ,
1 + X3 Y + Y Z - Y4 Z + Y2 Z2 + Y2 Z3 =
9- Y + 3 Y4 - 3 Y7 + Y10 - 3 Y2 Z2 + 6 Y5 Z2 - 3 Y8 Z2 - Z3 - Y Z4 - 3 Y3 Z4 +
Y4 Z4 + 3 Y6 Z4 - Y2 Z5 - Y2 Z6 - Y4 Z6 , - 1 + Y3 + X Z - Y Z2 , X Y - 2 X Y4 + X Y7 +
2 Y2 Z - 4 Y5 Z + 2 Y8 Z + Z2 + Y Z3 + 3 Y3 Z3 - Y4 Z3 - 3 Y6 Z3 + Y2 Z4 + Y2 Z5 + Y4 Z5 ,
- X2 Y - Y2 + X2 Y4 + 2 Y5 - Y8 - Z - Y Z2 - 2 Y3 Z2 + Y4 Z2 + 2 Y6 Z2 - Y2 Z3 - Y2 Z4 - Y4 Z4 ,
1 + X3 Y + Y Z - Y4 Z + Y2 Z2 + Y2 Z3 =
9- Y + 3 Y4 - 3 Y7 + Y10 - 3 Y2 Z2 + 6 Y5 Z2 - 3 Y8 Z2 - Z3 - Y Z4 - 3 Y3 Z4 +
Y4 Z4 + 3 Y6 Z4 - Y2 Z5 - Y2 Z6 - Y4 Z6 , - 1 + Y3 + X Z - Y Z2 , X Y - 2 X Y4 + X Y7 +
2 Y2 Z - 4 Y5 Z + 2 Y8 Z + Z2 + Y Z3 + 3 Y3 Z3 - Y4 Z3 - 3 Y6 Z3 + Y2 Z4 + Y2 Z5 + Y4 Z5 ,
- X2 Y - Y2 + X2 Y4 + 2 Y5 - Y8 - Z - Y Z2 - 2 Y3 Z2 + Y4 Z2 + 2 Y6 Z2 - Y2 Z3 - Y2 Z4 - Y4 Z4 ,
1 + X3 Y + Y Z - Y4 Z + Y2 Z2 + Y2 Z3 =
Observa la complejidad que alcanzan las bases de Groebner aún al tratar con polinomios tan
simples.
In[45]:=
Out[45]=
Out[46]=
Out[47]=
GroebnerBasis@8X ^ 2 Y ^ 2 + X ^ 2 Y Z - X Y ^ 2 Z ^ 2 + 1, X Z + Y Z + Z ^ 2 - 1<, 8X, Y, Z<D
GroebnerBasis@8X ^ 2 Y ^ 2 + X ^ 2 Y Z - X Y ^ 2 Z + 1, X Z + Y Z + Z ^ 2 - 1<,
8X, Y, Z<, DegreeLexicographicD
GroebnerBasis@8X ^ 2 Y ^ 2 + X ^ 2 Y Z - X Y ^ 2 Z + 1, X Z ^ 2 + Y Z ^ 2 + Z ^ 3 - 1<,
8X, Y, Z<, DegreeReverseLexicographicD
9Y2 + Y Z - 2 Y3 Z + Z2 - 4 Y2 Z2 + Y4 Z2 - 2 Y Z3 - Y2 Z3 + 3 Y3 Z3 + 3 Y2 Z4 + Y3 Z4 + Y Z5 + Y2 Z5 ,
- 1 + X Z + Y Z + Z2 ,
Y + X Y2 - Y3 + Z - 3 Y2 Z + Y4 Z - 2 Y Z2 - Y2 Z2 + 3 Y3 Z2 + 3 Y2 Z3 + Y3 Z3 + Y Z4 + Y2 Z4 =
9Y2 + Y Z - 2 Y3 Z + Z2 - 5 Y2 Z2 + Y4 Z2 - 2 Y Z3 + 4 Y3 Z3 + 4 Y2 Z4 + Y Z5 ,
- 1 + X Z + Y Z + Z2 , Y + X Y2 - Y3 + Z - 4 Y2 Z + Y4 Z - 2 Y Z2 + 4 Y3 Z2 + 4 Y2 Z3 + Y Z4 =
9Y2 + Y Z - 2 Y3 Z2 - 5 Y2 Z3 + Z4 - 2 Y Z4 + Y4 Z4 + 4 Y3 Z5 + 4 Y2 Z6 + Y Z7 ,
- 1 + X Z2 + Y Z2 + Z3 , X Y2 - Y3 + X Y Z - 3 Y2 Z + Z2 - Y Z2 + Y4 Z2 + 4 Y3 Z3 + 4 Y2 Z4 + Y Z5 =
FIN
Descargar