Está en la página 1de 7

Magma - 3

Practica n. 9 basada sobre el programa:

“Magma”

Sitio web con el Magma Calculator:


http://magma.maths.usyd.edu.au/calc

1/7
Magma - 3

Problemas. Resolver los siguientes y escribir las respuestas en


LATEX.
1. Ocupando magma encontrar dos polinomios f, g ∈ Q[x]
tales que la siguiente sea cierta:

(x5 − 1)f + (x2 + x + 1)g = 1.

2. Sean n, m dos enteros positivos. Verificar que si n divide m


luego xn − 1 divide xm − 1. Ocupar el resultado para
escribir un programa magma para encotrar el factor de
xm − 1 que es coprimo con xn − 1 para cada n < m.

2/7
Magma - 3

Problemas.
1. Respuesta. Sean a = x5 − 1 y b = x2 + x + 1.
Desarrollamos a/b en fracción continua.

> a:=x^5-1;
> b:=x^2+x+1;
> ContinuedFraction(a/b);
[
x^3 - x^2 + 1,
-x + 1,
-1/3*x - 2/3
]

3/7
Magma - 3

Problemas.
Ocupamos la función CFmat para resolver el problema.

> &*CFmat(a/b);
[ 1/3*x^5 - 1/3 -x^4 + 2*x^3 - x^2 - x + 2]
[ 1/3*x^2 + 1/3*x + 1/3 -x + 1]

La solución es (f, g) = ( 13 (x − 1), 13 (−x4 + 2x3 − x2 − x + 2)).

4/7
Magma - 3

Problemas.
2. Respuesta. Verificamos lo pedido para los primeros 10
valores de m.
> {(x^m - 1) mod (x^n - 1) : n,m in [1..10]
| m mod n eq 0};
{
0
}

5/7
Magma - 3

Problemas.
La función pedida puede ser de la forma siguiente.
pol := function(n)
K<x>:=PolynomialRing(Rationals());
g := &*[x^s - 1 : s in Divisors(n) | s ne n];
f := Quotrem(x^n-1,Gcd(x^n-1,g));
return f;
end function;

6/7
Magma - 3
Problemas.
Calculamos los primeros 10 valores de la función pol recién
construida.
> [pol(n) : n in [2..10]];
[
x + 1,
x^2 + x + 1,
x^2 + 1,
x^4 + x^3 + x^2 + x + 1,
x^2 - x + 1,
x^6 + x^5 + x^4 + x^3 + x^2 + x + 1,
x^4 + 1,
x^6 + x^3 + 1,
x^4 - x^3 + x^2 - x + 1
]

7/7

También podría gustarte