On 19 July 2016 at 19:37, saad khalid <[email protected]> wrote:
> Hello everyone:
>
> So, say I've got something like this
> reset()
> z1 = (e^(2*pi*i/15))^6
> z2 = (e^(2*pi*i/15))^3
> z3 = (e^(2*pi*i/15))^9
> z4 = (e^(2*pi*i/15))^12
> num = lambda k: -z1^k*(z2-1)^(k+1)*(z3-1)^(k+1)*(z4-1)^(k+1) +
> -z2^k*(z1-1)^(k+1)*(z4-1)^(k+1)*(z3-1)^(k+1) +
> -z3^k*(z4-1)^(k+1)*(z2-1)^(k+1)*(z1-1)^(k+1) +
> -z4^k*(z3-1)^(k+1)*(z1-1)^(k+1)*(z2-1)^(k+1)
>
> So, I create a function "num" that takes a value k. I want to make an array
> with the values of the function for various values of k, so i do this
>
> nums = [num(k).simplify_full() for k in [1,11,21,31,41,51,61,71]]
>
> So, nums should be an array with values of num(k) at k = 1,11,21,31,41,...
>
> The problem happened when i wanted to see the prime factorization of some of
> these numbers. So, say I wanted the prime factorization of nums[1]. I do
> this:
>
> nums[1]
> factor(nums[1])
>
>  50
>  50
>
>
> Why won't it factor it?

Because your number is in the symbolic ring:

sage: n = SR(50)
sage: factor(n)
50

Put into ZZ (the integer ring) first:

sage: factor(ZZ(n))
2 * 5^2

John Cremona

>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to