#10483: Deprecate the misuse of symbolic variables as polynomial variable
--------------------------------+-------------------------------------------
   Reporter:  SimonKing         |       Owner:  AlexGhitza                      
        
       Type:  defect            |      Status:  needs_review                    
        
   Priority:  major             |   Milestone:  sage-4.6.1                      
        
  Component:  basic arithmetic  |    Keywords:  deprecation symbolic polynomial 
variable
     Author:  Simon King        |    Upstream:  N/A                             
        
   Reviewer:                    |      Merged:                                  
        
Work_issues:                    |  
--------------------------------+-------------------------------------------

Comment(by SimonKing):

 Replying to [comment:2 kcrisman]:
 > Just a question - are the changes in symbolics because before the
 variables might or might not have been strings?

 As much as I know, the changes that I did in symbolics are indeed "replace
 a variable `v` by `repr(v)` when it is used to define a polynomial ring.

 > Also, is there an easy way to show what the generator of `P` would have
 been in the "bad" old case?  I think that's useful to point out, if one is
 going to make the remarks in the first place.

 I am not quite sure what you mean. By "remark", you probably mean
 {{{
 In earlier versions of Sage, the names have not necessarily been
 strings. Some users provided a symbolic variable instead of a string,
 and expected that this symbolic variable is the same as the generator
 of the resulting polynomial ring, which is of course not the case.
 This common mistake is now deprecated.
 }}}

 So, you suggest to write something like this:
 {{{
 In earlier versions of Sage, the names have not necessarily been
 strings. Some users provided a symbolic variable instead of a string,
 and expected that this symbolic variable is the same as the generator
 of the resulting polynomial ring, which is of course not the case.

 The following might be surpising for a user expecting the variable `x`
 to be a polynomial::

     sage: P = QQ['x'] # here, some users wrote QQ[x], which is now
 deprecated
     sage: x == P(x)
     x == x
     sage: type(x == P(x))
     <type 'sage.symbolic.expression.Expression'>
     sage: parent(x+P(x)) == P
     False

 }}}

 I am not so convinced that the above text is good. Do you have a better
 suggesion?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10483#comment:3>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to