Re: [fricas-devel] Noncommutative factorization

2018-11-11 Thread Bill Page
> > On Sat, Nov 10, 2018 at 12:02 PM Waldek Hebisch
> >  wrote:
> > ...
> > >
> > > I have now implemented the lift part of Davenport-Caruso method.
> > > You fetch code at:
> > >
> > > http://www.math.uni.wroc.pl/~hebisch/fricas/dcfact2.input
> > > http://www.math.uni.wroc.pl/~hebisch/fricas/nc_ini04c.input
> > >
> > > As before, dcfact2.input is an actual routine, nc_ini04c.input
> > > set up needed types.
> ...

Here is a more minimal example of the problem:

(86) -> h3 := x*y*z - x*z*y + z*x*y

   (86)  z x y - x z y + x y z
Type: 
XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer))
   Time: 0.00 (EV) + 0.00 (OT) = 0.00 sec
(87) -> dc_fact(h3*(1+y))

   22
   (87)  [z x y - x z y + x y z + z x y  - x z y  + x y z y]
Type: 
List(XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer)))
   Time: 0.00 (EV) + 0.00 (OT) = 0.00 sec

The xdpolyf1 code gives the following result:

(96) -> factor(h3*(1+y))

   (96)  [z x y - x z y + x y z, 1 + y]
Type: 
List(XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Integer))
   Time: 0.14 (EV) + 0.00 (OT) = 0.14 sec

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to fricas-devel+unsubscr...@googlegroups.com.
To post to this group, send email to fricas-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [fricas-devel] Noncommutative factorization

2018-11-11 Thread Bill Page
On Sat, Nov 10, 2018 at 9:08 PM Bill Page  wrote:
>
> On Sat, Nov 10, 2018 at 12:02 PM Waldek Hebisch
>  wrote:
> ...
> >
> > I have now implemented the lift part of Davenport-Caruso method.
> > You fetch code at:
> >
> > http://www.math.uni.wroc.pl/~hebisch/fricas/dcfact2.input
> > http://www.math.uni.wroc.pl/~hebisch/fricas/nc_ini04c.input
> >
> > As before, dcfact2.input is an actual routine, nc_ini04c.input
> > set up needed types.
...
>
> This looks very promising however I did find this apparent failure:
>
> (82) -> h3
>
>(82)  - z y x + z x y + y z x - y x z - x z y + x y z
> Type: 
> XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer))
>Time: 0.00 (OT) = 0.00 sec
> (83) -> dc_fact((3+x*z*y)*h3)
>
>(83)
>[
>- 3 z y x + 3 z x y + 3 y z x - 3 y x z - 3 x z y + 3 x y z - x z y z 
> y x
>  +
>   2   2
>x z y z x y + x z y z x - x z y x z - x z y x z y + x z y x y z
>  ]
> Type: 
> List(XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer)))
>Time: 0.00 (OT) = 0.00 sec

For comparison here is the output of Konrad Schrempf's program:

(1) -> )r nc_ini14.input
...
(52) -> h3 := x*y*z - x*z*y + z*x*y - z*y*x + y*z*x - y*x*z

   (52)
   AGGSET
  +1  - x  - z   0   - y   000 ++ 0 +
  |||   |
  |10z00y0 || 0 |
  |||   |
  | 1   - x   0y00 || 0 |
  |||   |
  |  1000y || 0 |
  ||s = |   |
  |   1   - z  - x   0 || 0 |
  |||   |
  |10x || 0 |
  |||   |
  | 1   - z|| 0 |
  |||   |
  +  1 ++- 1+
  ,
   MR
  ,
   - z y x + z x y + y z x - y x z - x z y + x y z
Type: 
FreeDivisionAlgebra(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer))
   Time: 0.00 (IN) + 0.03 (EV) + 0.01 (OT) = 0.04 sec
(53) -> map(x+->x::XDP,factor((3+x*z*y)*h3))

   (53)  [3 + x z y, - z y x + z x y + y z x - y x z - x z y + x y z]
Type: 
List(XDistributedPolynomial(OrderedVariableList([x,y,z,w,x1,x2,x3,x4,x5]),Fraction(Integer)))
   Time: 0.00 (IN) + 0.16 (EV) + 0.01 (OT) = 0.17 sec

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to fricas-devel+unsubscr...@googlegroups.com.
To post to this group, send email to fricas-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.