William,
Hmm, We obviously disagree. I do agree that augment is a good image for
that, and that once I know the name I'm not likely to forget it. Sage is
MUCH better than Magma in this regard. I can't tell you how much time I've
spent sifting through the Magma docs (and online help) trying to find a
function to do something that I was sure was there. Have search_src and
search_doc is really great (and as I mentioned to you last week using agrep
and glimpse -- see Udi Maber's old home page -- would make them even
better). But I'd still like to imagine that there would be even a better
way (though I don't know exactly what it is).
Victor
On Feb 5, 2008 8:04 AM, William Stein <[EMAIL PROTECTED]> wrote:
>
> On Feb 5, 2008 4:41 AM, victor miller <[EMAIL PROTECTED]> wrote:
> > Please cancel that last remark. I just checked again and they're there.
> > What I was referring to (and I don't know any easy solution to this) was
> > that there was no easy way to find that this functionality was available
> > unless I already knew the names.
>
> I disagree. In fact, most people who use Sage (or Python for that
> matter) create an object A of the type they want to do
> something with then type A.[tab] and see a list of the
> options. One would definitely see "augment" and "stack" among
> the 100 or so options, and it's not unlikely they would realize
> those functions can be used to augment or stack matrices.
> This exactly addresses the problem of there being an easy way to
> find functionality, certainly in a better way than it is addressed
> in Magma, and it's something a lot of Sage users really appreciate
> over other systems.
>
> You could also type
>
> sage: search_src('augment')
>
> and get a list of places in the Sage library where the word augment
> appears -- not so easy to use, but potentially very useful.
>
> You can also do:
>
> sage: search_src('victor')
> ----------------------------------------------------------------------
> | SAGE Version 2.10.1, Release Date: 2008-02-02 |
> | Type notebook() for the GUI, and license() for information. |
> ----------------------------------------------------------------------
> libs/ntl/all.py:Victor Shoup's NTL C++ Library
> libs/ntl/all.py:SAGE provides an interface to Victor Shoup's C++ library
> NTL.
> modular/modform/all.py:from vm_basis import victor_miller_basis,
> delta_qexp
> modular/modform/cuspidal_submodule.py: return
> vm_basis.victor_miller_basis(self.weight(), prec,
> modular/modform/vm_basis.py:The Victor Miller Basis
> modular/modform/vm_basis.py:def victor_miller_basis(k, prec=10,
> cusp_only=False, var='q'):
> modular/modform/vm_basis.py: Compute and return the Victor-Miller basis
> for
> modular/modform/vm_basis.py: sage: victor_miller_basis(1, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(0, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(2, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(4, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(6, 6,
> var='w')
> modular/modform/vm_basis.py: sage: victor_miller_basis(6, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(12, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(12, 6,
> cusp_only=True)
> modular/modform/vm_basis.py: sage: victor_miller_basis(24, 6,
> cusp_only=True)
> modular/modform/vm_basis.py: sage: victor_miller_basis(24, 6)
> modular/modform/vm_basis.py: sage: victor_miller_basis(32, 6)
> matrix/matrix_integer_dense.pyx: ALGORITHM: Uses the NTL
> library by Victor Shoup or fpLLL
> rings/polynomial/polynomial_element.pyx: ## Victor Schoup was
> very careful with the choice of strategies and
>
>
> William
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
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-forum
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---