#18695: propagate the variable domain to the assumptions database
-------------------------------------+-------------------------------------
       Reporter:  rws                |        Owner:
           Type:  defect             |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-6.8
      Component:  symbolics          |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Ralf Stephan       |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/rws/setting_domain_integer_on_var_has_no_effect_with_solve|  
e103b5682b8de062309ce2a1283984f6adc94a78
   Dependencies:  #18877             |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by rws):

 * status:  needs_review => needs_work
 * dependencies:   => #18877


Old description:

> While this works as expected:
> {{{
> sage: n = var('n')
> sage: assume(n, 'integer')
> sage: solve([n^2 == 3],n)
> []
> }}}
> this does not:
> {{{
> sage: forget()
> sage: n = var('n', domain='integer')
> sage: solve([n^2 == 3],n)
> [n == -sqrt(3), n == sqrt(3)]
> }}}
> So, either `solve` should also look at the variable domain, or better,
> let's propagate domain settings to the assumption list.

New description:

 While this works as expected:
 {{{
 sage: n = var('n')
 sage: assume(n, 'integer')
 sage: solve([n^2 == 3],n)
 []
 }}}
 this does not:
 {{{
 sage: forget()
 sage: n = var('n', domain='integer')
 sage: solve([n^2 == 3],n)
 [n == -sqrt(3), n == sqrt(3)]
 }}}
 So, either `solve` should also look at the variable domain, or better,
 let's propagate domain settings to the assumption list.
 Also:
 {{{
 sage: _ = var('n', domain='integer')
 sage: n.is_integer()
 False
 }}}

--

Comment:

 Together with #18877 this should be able to doctest:
 {{{
 sage: _ = var('n', domain='integer')
 sage: n.is_integer()
 True
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/18695#comment:7>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to