Differences between revisions 4 and 8 (spanning 4 versions)
Revision 4 as of 2009-11-20 22:17:09
Size: 3270
Comment:
Revision 8 as of 2017-02-05 01:06:38
Size: 0
Editor: mrennekamp
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== What goes wrong in the SAGE notebook interface for secondary school usage ==

Some of (nice) sage features are not well adapted at an elementary level. In particular:
   * the oriented object syntax should sometimes be avoided: the interface must be intuitive from the mathematic *standard* syntax point of vue; on the other side we must keep all python features of list, tuple, dict as they are (ask teachers).
   * the algebra under polynoms must be hided a little bit. QQbar, Number fields and symbolic rings must stay in backend;
   * the namespace is huge (a general problem of SAGE)
   * the help on elementary functions is not well adapted

Supplementary:
   * do a french translation of commmands (?)
   * write some help files and a really basic tutorial mixing Sage and python.

== Solution for polynoms ==

The high school interface provides two basics functions for creating variables : the var (a symbolic variables for functions) and unknowns (exclusively for polynoms).
{{{
sage: a,b,c = var('a,b,c')
sage: X, Y = unknown('X')
(X,Y)
sage: P = a*X^2 + b*X + c
}}}

== An interactive trigonometric circle ==


---- /!\ '''Edit conflict - other version:''' ----
== Solution for polynoms ==

The high school interface provides two basics functions for creating variables : the var (a symbolic variables for functions) and unknowns (exclusively for polynoms).
{{{
sage: a,b,c = var('a,b,c')
sage: X, Y = unknown('X')
(X,Y)
sage: P = a*X^2 + b*X + c
}}}


---- /!\ '''Edit conflict - your version:''' ----

---- /!\ '''End of edit conflict''' ----
== Patches ==

Following the development model of Sage, we will use mercurial patches here.

   * [[http://iml.univ-mrs.fr/~delecroi/lycee-vd.patch|Sage patch]]
   * a patch for the documentation will come soon

== Program of high school in France ==

In bracket are the corresponding levels.

   * second degree polynom [1e S]
   * sequences in particular recursive ones [1e S]
   * sequences and approximations : pi, e, sqrt(2), ... [1e S]
   * continuity and derivation [Tale S]
   * functions study and graphics [Ta1e S]
   * integration[Tale S]
   * elementary graph theory [Tale ES]

== Object or not ==

The python list usage must be kept as it is. But we have the choice to use or not (explicitely) some methods.

Starting from a list:
{{{
python: l = [1,2,3]
}}}

We can use the standard append:
{{{
python: l.append(4)
}}}
or the += concatenation:
{{{
python: l += [4]
}}}


== TODO ==

There is still a lot of problems:
   * clearing the namespace causes some crashes (there are some general memory initialization). I make research to do it properly. For now, I use a "do it, if it works it's good" method.
   * sqrt(n) (log(n), exp(n), ...) returns a symbolic expression which does not evaluate correctly as boolean expression.
   * help topics in the rest documentation
   * latex rendering in plot is not easy to have : {{{sage: text("$" + latex(my_object) + "$", (0,0))}}}. Is there a better way ?
   * latex "bug" for rational fractions : http://groups.google.com/group/sage-devel/browse_thread/thread/9d58693356e11947 and the corresponding (minor) trac ticket http://trac.sagemath.org/sage_trac/ticket/7363