The algorithm is here
https://github.com/sympy/sympy/blob/2e4e90b1b0243c85949eb1633f0546466b00829f/sympy/core/numbers.py#L1758-L1862.
The workhorse is factorint (Integer.factor()), whose algorithm is at
https://github.com/sympy/sympy/blob/2e4e90b1b0243c85949eb1633f0546466b00829f/sympy/ntheory/facto
hello all i was going through sympy module and while going through the
sample tutorial i found sympy.sqrt(x) which in turn would return me a
positive integer multiplied by a number whose square root value won't be an
integer .. so i took a very big number of the order of 100 digits and it
retur