Seção 17.6 Sage
Sage é particularmente boa pra construir, analisar e manipular anéis de polinômios. Vimos algo relacionado a isso no capítulo anterior. Comecemos criando três anéis de polinômios e comprovemos algumas de suas propriedades básicas. Existem diferentes formas de construir anéis de polinômios, mas a sintaxe usada aqui é mais direta.
Subseção 17.6.1 Anéis de Polinômios e seus Elementos
As propriedades básicas dos anéis podem ser usadas nesses exemplos.
Com a construção e a sintaxe acima, as variáveis podem ser usadas para criar elementos do anel de polinômios sem coerção explicitamente (ainda temos que ter cuidado com os polinômios constantes).
Os polinômios podem ser avaliados como se fossem funções, de maneira que podemos imitar o homomorfismo de avaliação.
Notemos que p
é um polinômio de grau dois, no entanto podemos verificar a força bruta que só tem uma raiz, indo de forma contrária a nossa expectativa usual. Pode ser ainda mais não usual.
Sage puede criar e manipular anéis de polinômios de uma variável, mas não teremos maiores oportunidades de analisar essa funcionalidade neste curso.
Subseção 17.6.2 Polinômios Irredutíveis
Se um polinômio se fatora ou não, tomando em consideração o anel usado para seus coeficientes, é uma pergunta importante neste capítulo e em muitos dos que se seguem. Sage é capaz de fatorar, e de determinar irredutibilidade, sobre os inteiros, os racionais, e os corpos finitos.
Primero, sobre os racionais.
Fatorar sobre os inteiros não é realmente diferente que fazer sobre os racionais. Isto é o que o Teorema 17.3.4 — nos diz, encontrar uma fatoração sobre os inteiros pode ser convertido em encontrar uma fatoração sobre os racionais. Assim que funciona em Sage, tem pouca diferença entre trabalhar sobre os racionais e sobre os inteiros. É um pouco diferente quando trabalhamos sobre um corpo finito. Um comentário virá mais a frente.
Para verificar essas fatorações, devemos calcular no corpo finito, F
, por que precisamos saber como se comporta o símbolo a
. Este símbolo corresponde a uma raiz de um polinômio de grau 2 sobre os inteiros mod 5, que podemos obter com o método .modulus()
.
Assim \(a^2+4a+2=0\text{,}\) ou \(a^2=-4a-3=a+2\text{.}\) Assim, ao verificar as fatorações, cada vez que apareça \(a^2\) podemos substituir por \(a+2\text{.}\) Notemos que pelo Corolário 17.2.3 poderíamos encontrar o fator linear de r
, e os quatro fatores lineares de s
, mediante uma quantidade bruta de suas raízes. Isso é realizável dado que o corpo é finito.
Mas, q
se fatora em dois polinômios de grau 2, de maneira que nenhuma quantidade de raízes nos permitirá descobrir estes fatores.
Pelo critério de Eisenstein, podemos criar polinômios irredutíveis, como no Exemplo 17.3.8.
Sobre o corpo \({\mathbb Z}_p\text{,}\) os polinômios de Conway são escolhas canônicas para um polinômio de grau \(n\) irredutível sobre \({\mathbb Z}_p\text{.}\) Veja os exercícios para aprender mais sobre esses polinômios.
Subseção 17.6.3 Polinômios sobre Corpos
Se \(F\) é um corpo, então todo ideal de \(F[x]\) é principal (Teorema 17.3.10). Nada nos impede de dar a Sage dois (ou mais) geradores para construir um ideal, mas Sage determinará um elemento para usá-lo na descrição do ideal como ideal principal.
O Teorema 17.3.12 é um ponto chave que nos permite construir corpos finitos facilmente. Aqui temos uma construção de um corpo finito de ordem \(7^5=16\,807\text{.}\) Tudo que precisamos é um polinômio de grau \(5\) que seja irredutível sobre \({\mathbb Z}_7\text{.}\)
O símbolo xbar
é um gerador do corpo, mas neste momento não é acessível. xbar
es la clase \(x + \langle x^5+ x + 4\rangle\text{.}\) Uma melhor construção incluiria a especificação deste gerador.