Eduardo Echeverría

Polinomios con Python

Un polinomio es una expresión algebraica donde participan números y letras que interactuan entre si a través de sumas, restas, multiplicaciones y potencias. Los números son denominados coeficientes, mientras que las letras representan variables incognitas que pueden contener distintos valores. Además, cada uno de los monomios dentro del polinomio, contienen distintos exponentes.

División de polinomios

Procedimiento Manual

Sympy

Sympy es una libreria de Python que utilizaremos para realizar nuestras operaciones algebraicas, está diseñada para brindar código sencillo de implementar. Además, esta libreria es facilmente extencible.

Descarga Aquí

Método symbols()

Este método toma variables a partir de cadenas separadas por coma y asigna símbolos a partir de ellos.

x = sym.symbols('x')

Método simplify()

Este método sirve para simplificar expresiones matemáticas

expr = sym.simplify( 4*x**5 - x / 2*x**3 - x)
Resultado: 2 x^{3} - x

Código completo - División de polinomios

#Importamos la librería sympy
import sympy as sym

#Definimos el símbolo 'x'
x = sym.symbols('x')

#Definimos las expreciones a dividir
p1 = 4*x**5 - x
p2 = 2*x**3 - x

#Realizamos la división de polinomios y simplificamos
expr = sym.simplify( p1 / p2 )

#Imprimimos el resultado
print(sym.latex(expr))

Ejercicio Práctico

Existen dos procesos que se ejecutan todos los días de forma automática en un servidor. El segundo proceso tiene el doble de duración del primero mas 4 segundos, ¿ En cuántos subprocesos tengo que dividir el segundo proceso, para que cada uno tenga una duración del primer proceso más 2 segundos ?

Solución

Polinomio de primer grado

import sympy as sym

x = sym.symbols('x')

p1 = 2*x + 4
p2 = x + 2

expr = sym.simplify( p1 / p2)

print(sym.latex(expr))

Eduardo Echeverría