Also, more changes in the spirit of
8640bcd67d77287ecfb03c03688ea6f6f527c2db (from polys9) would
definitely help with this.

Aaron Meurer

On May 29, 7:08 pm, "Aaron S. Meurer" <asmeu...@gmail.com> wrote:
> This should help with the ability to know what options are even available.  
> The way it is right now, you have to read the source code to find out what 
> kind of options can be passed to functions like factor() or Poly() (of 
> course, we will still need docstrings with doctests to show what they 
> actually do).  
>
> I've fixed it a little at least for factor in my polydocs-polys9 branch (see 
> the latest commit in about 30 min.), but my purpose in the branch has been to 
> write doctests, not documentation.  
>
> Aaron Meurer
> On May 29, 2010, at 6:58 PM, Mateusz Paprocki wrote:
>
>
>
> > Hi,
>
> > On Thu, May 27, 2010 at 03:55:25PM -0600, Aaron S. Meurer wrote:
> >> expand() only expands the denominator when it gets the deep=True flag 
> >> (because it is inside a Pow, namely, -1).  So I guess factor needs to know 
> >> to use that flag when it gets frac=True.
>
> > Good that this went out, because I'm reworking code responsible for
> > processing flags|options in polys. In the new approach, there will
> > be a separate module for managing options which will allow for unified
> > configuration of different aspects of polys. I'm also working on context
> > managers which will save a lot of typing, e.g.:
>
> > In [1]: c = ctx.gaussian(True)
>
> > In [2]: factor(x**2 + 4)
> > Out[2]:
> >     2
> > 4 + x
>
> > In [3]: c.factor(x**2 + 4)
> > Out[3]: (x + 2⋅ⅈ)⋅(x - 2⋅ⅈ)
>
> > In [4]: with ctx.gaussian(True):
> >   ...:     factor(x**2 + 4)
> >   ...:
> > Out[4]: (x + 2⋅ⅈ)⋅(x - 2⋅ⅈ)
>
> > The same will apply to other options (in particular to frac and expand).
>
> > So, if there are more thoughts about this issue, lets share them, so that
> > I have more input for the new developments.
>
> >> The last item is a printing issue, and has nothing to do with factor or 
> >> expand.  
>
> >> Aaron Meurer
> >> On May 27, 2010, at 3:49 PM, smichr wrote:
>
> >>> Is the following behavior correct for factor?
>
> >>>>>> from sympy import *
> >>>>>> var('x y')
> >>>   (x, y)
> >>>>>> eq = x*(1+2*y+y**2)+1+2*y+y**2
>
> >>> Here we show what happens with and without expand being set:
> >>>>>> factor(eq,expand=0)
> >>>   1 + 2*y + x*(1 + 2*y + y**2) + y**2
> >>>>>> factor(eq,expand=1)
> >>>   (1 + y)**2*(1 + x)
>
> >>> Now try the same when eq is in the denominator:
> >>>>>> factor(1/eq,expand=0,frac=1)
> >>>   1/((1 + x)*(1 + y)**2)
> >>>>>> factor(1/eq,expand=1,frac=1)
> >>>   1/((1 + x)*(1 + y)**2)
>
> >>> I would have expected that expand=0 with frac=1 would have given
> >>>   1/(1 + 2*y + x*(1 + 2*y + y**2) + y**2)
>
> >>> Also why are the terms reversed in the numerator and denominator?
>
> >>>>>> factor(eq,expand=1)
> >>>   (1 + y)**2*(1 + x)
> >>>>>> factor(1/eq,expand=1,frac=1)
> >>>   1/((1 + x)*(1 + y)**2)
>
> >>> (Notice that 1+x is changing positions.)
>
> >>> This behavior was also tested in polys9.
>
> >>> --
> >>> You received this message because you are subscribed to the Google Groups 
> >>> "sympy" group.
> >>> To post to this group, send email to sy...@googlegroups.com.
> >>> To unsubscribe from this group, send email to 
> >>> sympy+unsubscr...@googlegroups.com.
> >>> For more options, visit this group 
> >>> athttp://groups.google.com/group/sympy?hl=en.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups 
> >> "sympy" group.
> >> To post to this group, send email to sy...@googlegroups.com.
> >> To unsubscribe from this group, send email to 
> >> sympy+unsubscr...@googlegroups.com.
> >> For more options, visit this group 
> >> athttp://groups.google.com/group/sympy?hl=en.
>
> > --
> > Mateusz

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sy...@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to