`x^12 - 3x^6 + 1`
` = (x^12 - 2x^6 + 1) - x^6`
` = [ (x^6)^2 - 2 . x^6 . 1 + 1^2] - (x^3)^2`
`= (x^6-1)^2 - (x^3)^2`
`= (x^6 - 1 - x^3)(x^6 - 1 + x^3)`
``
`x^8 - 3x^4 + 1`
` = (x^8 - 2x^4 + 1) - x^4`
` = [ (x^4)^2 - 2 . x^4 . 1 + 1^2] - (x^2)^2`
` = (x^4 - 1) - (x^2)^2`
`= (x^4 - 1 - x^2)(x^4 - 1 + x^2)`