整数 多項式 幾何学

SymPy の igcd で整数の最大公約数を求める

SymPy の igcd を使うと整数の最大公約数が求まります。

import sympy

a = sympy.igcd(5, 10)
b = sympy.igcd(12, 18, 24)

print(a)  # 5
print(b)  # 6

gcd は多項式の最大公約数を求める関数で、整数の最大公約数には部分的に対応していません。

import sympy

a = sympy.gcd(5, 10, 15)

# AttributeError: 'int' object has no attribute 'is_commutative'

ただ gcd も 2 つの整数には対応しています。

SymPy 整数