Partial factorization?
01-25-2018, 10:26 AM
Post: #1
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
Partial factorization?
Example: sqrt(16*x^8+8*x^4+1);

One factorization of the underlying expression works out nicely, namely: (4*x^4 +1)^2

The factor() command returns the fully factorized expression: factor(16*x^8+8*x^4+1) ==> (2*x^2-2*x+1)*(2*x^2+2*x+1)

How can the partial factorization, (4*x^4 +1)^2, be obtained using prime commands?

-Dale-
01-25-2018, 01:15 PM (This post was last modified: 01-25-2018 01:15 PM by Joe Horn.)
Post: #2
 Joe Horn Senior Member Posts: 1,903 Joined: Dec 2013
RE: Partial factorization?
I don't know how Prime can know which "partial factor" you want. Same problem as noting that sqrt(144) = 12, but ifactor(144) factors all the way down. But 12 is in the idivis(144) list. So one approach you can try for your example is to use divis() instead of factor().

<0|ɸ|0>
-Joe-
01-25-2018, 01:35 PM
Post: #3
 Arno K Senior Member Posts: 463 Joined: Mar 2015
RE: Partial factorization?
Hm, I had tried some commands on that and left out divis(), this is what my VC calculates:[1,2*x^2-2*x+1,(2*x^2-2*x+1)^2,2*x^2+2*x+1,(2*x^2+2*x+1)*(2*x^2-2*x+1),(2*x^2+2*x+1)*(2*x^2-2*x+1)^2,(2*x^2+2*x+1)^2,(2*x^2+2*x+1)^2*(2*x^2-2*x+1),(2*x^2+2*x+1)^2*(2*x^2-2*x+1)^2],
4x^4+1 is not in the list. Simplify set to maximum provides the wished result, the fifth entry, but how to find out...
Arno
01-25-2018, 02:42 PM
Post: #4
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
(01-25-2018 01:15 PM)Joe Horn Wrote:  I don't know how Prime can know which "partial factor" you want. Same problem as noting that sqrt(144) = 12, but ifactor(144) factors all the way down. But 12 is in the idivis(144) list. So one approach you can try for your example is to use divis() instead of factor().

I don't know if it is fair play, or not, but one way to know which partial factor is wanted, would be if a command existed that presented a list of all factors.

Since my example was begging for a perfect square to rid itself of the radical, just eyeballing a list of factors would be useful. A command similar to the divis(), but (4*x^4 +1)^2 doesn't directly show up in the resulting vector:

divis(16*x^8+8*x^4+1);

[ 1,
2*x^2-2*x+1,
(2*x^2-2*x+1)^2,
2*x^2+2*x+1,
(2*x^2+2*x+1)*(2*x^2-2*x+1),
(2*x^2+2*x+1)*(2*x^2-2*x+1)^2,
(2*x^2+2*x+1)^2,
(2*x^2+2*x+1)^2*(2*x^2-2*x+1),
(2*x^2+2*x+1)^2*(2*x^2-2*x+1)^2
]

So far anyway, I haven't found a way to do this, directly, on the prime.
01-25-2018, 05:27 PM (This post was last modified: 01-25-2018 05:31 PM by Arno K.)
Post: #5
 Arno K Senior Member Posts: 463 Joined: Mar 2015
RE: Partial factorization?
As I don't know what exactly want to do, here is a way to get your desired result:
(4*simplify(ΠLIST(x-cZeros(16*x^8+8*x^4+1))))^2, works, as the root can be taken.
Arno
01-25-2018, 06:19 PM
Post: #6
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
No. That's much too cumbersome! The idea is a simple root solution, so I need this particular factorization, in that particular example, so:

$\sqrt{16 {{x}^{8}}+8 {{x}^{4}}+1} = \sqrt{(4 {{x}^{4}}+1)^{2}} = {4*{x}^{4}+1}$

I hope the latex works! (Square root of the expression squared is the idea).

-Dale-
01-25-2018, 07:33 PM
Post: #7
 Didier Lachieze Senior Member Posts: 1,540 Joined: Dec 2013
RE: Partial factorization?
(01-25-2018 06:19 PM)DrD Wrote:  No. That's much too cumbersome! The idea is a simple root solution

What about: simplify(sqrt(16*x^8+8*x^4+1)) ?
01-25-2018, 10:46 PM
Post: #8
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
That certainly does the trick! It's not exactly in line with the idea of factoring, at least as far as factoring by hand is concerned, but it gets the job done, and that was the whole point.

Thank you for that very helpful suggestion, Didier. You always seem to come up with the neatest ideas for things like these. I'm not sure how you do it, but I sure am glad you do!

-Dale-
01-26-2018, 06:32 AM
Post: #9
 parisse Senior Member Posts: 1,243 Joined: Dec 2013
RE: Partial factorization?
factors returns a list with factors and multiplicities.
01-26-2018, 11:30 AM (This post was last modified: 01-26-2018 05:02 PM by DrD.)
Post: #10
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
factors(16*x^8+8*x^4+1); ==> [2*x^2-2*x+1,2,2*x^2+2*x+1,2]; Unfortunately, (4*x^4+1)^2, is not included in the results vector.

This is an important factorization. A problem solving process I was validating, led to finding the square root of 16*x^8+8*x^4+1. By hand, finding the square root of an expression squared, is easy. I was using the prime to confirm, step by step, a lengthy problem, where understanding the problem solving method is just as important as the solution to the problem.

Can you think of a way to factor 16*x^8+8*x^4+1, (using the prime), that does include (4*x^4+1)^2?
I needed it to find a square root, and Didier's approach gets there, but more in general, I haven't found a command that includes a full factorization chain.

Thanks,

-Dale-
01-26-2018, 04:43 PM
Post: #11
 parisse Senior Member Posts: 1,243 Joined: Dec 2013
RE: Partial factorization?
(4x+1)^2 is not a factor of (16*x^8+8*x^4+1).
01-26-2018, 05:07 PM
Post: #12
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
Who said it was?

Damn that copy/paste! ....

I meant: (4*x^4 +1)^2
01-26-2018, 07:13 PM
Post: #13
 Rudi Junior Member Posts: 15 Joined: May 2015
RE: Partial factorization?
Dear All.
Is this that, what you want?

Best regards

Rudi
01-26-2018, 07:32 PM
Post: #14
 parisse Senior Member Posts: 1,243 Joined: Dec 2013
RE: Partial factorization?
You could regroup factors yourself.
Or call sqrfree here.
01-26-2018, 08:03 PM
Post: #15
 DrD Senior Member Posts: 1,133 Joined: Feb 2014
RE: Partial factorization?
(01-26-2018 07:32 PM)parisse Wrote:  You could regroup factors yourself.
Or call sqrfree here.

That worked very well! Thank you kind sir! That's a new command for me, never tried it before.

-Dale-
 « Next Oldest | Next Newest »

User(s) browsing this thread: 1 Guest(s)