#17958: implement declare_var, deprecate (None)var
-----------------------------+------------------------
Reporter: rws | Owner:
Type: defect | Status: new
Priority: major | Milestone: sage-6.6
Component: symbolics | Resolution:
Keywords: | Merged in:
Authors: | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
-----------------------------+------------------------
Comment (by mmezzarobba):
Replying to [comment:65 dimpase]:
> for myself I understand `SR` as sequences of terms subject to certain
rewriting rules, but neither what the term are, nor what the rewriting
rules are, is not stated anywhere except in the source code and in
examples...
To repeat what I said on #15605, I for one basically view symbolic
expressions as straight-line programs that are just required to evaluate
to what you'd expect when you assign values to free variables. I believe
this may be more accurate than thinking in terms of rewriting rules,
since, as far as I know, nothing in the Sage implementation of symbolic
expression systematically applies “rewriting rules”.
Many ''operations'' on symbolic expressions, however, only make sense with
stronger assumptions on the expressions. Typically, simplifications are
supposed to transform these ”programs“ into ”equivalent“ ones, but of
course whether two ”programs“ are equivalent depends on what the variables
can represent.
In this context, the sensible thing to do IMO is to view all variables as
complex by default, and require simplifications to be valid for arbitrary
complex values of all variables (or more accurately, for a generic choice
of complex values: for example, we probably do want `x/x` to simplify to
`1`). But of course this default does not cover all cases, for instance,
`expand()` also makes sense for expressions containing constants from a
finite field.
--
Ticket URL: <http://trac.sagemath.org/ticket/17958#comment:66>
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.