2.3 Headings of Sage Library Code Files

The top of each Sage code file should appear as follows:

r"""
<Very short 1-line summary>

<Paragraph description>
...

AUTHORS: 
    - YOUR NAME (2005-01-03): initial version
    - person (date in ISO year-month-day format): short desc
     ... 
    - person (date in ISO year-month-day format): short desc

\section{Tutorial}
 ...

Lots and lots of examples.
"""

#*****************************************************************************
#       Copyright (C) 2006 William Stein <wstein@gmail.com>
#                     2006 YOUR NAME <your email>
#
#  Distributed under the terms of the GNU General Public License (GPL)
#                  http://www.gnu.org/licenses/
#*****************************************************************************

The following is top of the ssmod.py file, which contains the SupersingularModule code and is located at SAGE_ROOT/devel/sage/sage/modular/ssmmod/ssmod.py.

"""
Module of Supersingular Points

AUTHORS:
    -- William Stein
    -- David Kohel
    -- Iftikhar Burhanuddin

EXAMPLES:
    sage: x = SupersingularModule(389)
    sage: m = x.T(2).matrix()
    sage: a = m.change_ring(GF(97))
    sage: D = a.decomposition()
    sage: D[:3]
    [
    (Vector space of degree 33 and dimension 1 over Finite Field of size 97
    Basis matrix:
    [ 0  0  0  1 96 96  1  0 95  1  1  1  1 95  2 96  0  0 96 96  0  0 96
      2 96 96  2  0  0  1  1 95  0], 1),
    (Vector space of degree 33 and dimension 1 over Finite Field of size 97
    Basis matrix:
    [ 0  1 96 16 75 22 81  0  0 17 17 80 80  0  0 16  1 40 74 23 57 96 81  
      0 23 74  0  0  0 24 73  0  0], 1),
    (Vector space of degree 33 and dimension 1 over Finite Field of size 97
    Basis matrix:
    [ 0  1 96 90 90  7  7  0  0  6 91  6 91  0  0  7 13  0 91  6  0 84 90  
      0 91  6  0  0  0 90  7  0  0], 1)
    ]
    sage: len(D)
    9

We compute a Hecker operator on a space of huge dimension!
    sage: X = SupersingularModule(next_prime(100000))
    sage: t = X.T(2).matrix()  # long time (but still less than a minute!)
    sage: t.nrows()            # long time
    8334
"""

#*****************************************************************************
#       Copyright (C) 2004,2006 William Stein <wstein@gmail.com>
#       Copyright (C) 2006 David Kohel <kohel@maths.usyd.edu.au>
#       Copyright (C) 2006 Iftikhar Burhanuddin <burhanud@usc.edu>
#  Distributed under the terms of the GNU General Public License (GPL)
...

All code included with Sage must be licensed under the GPL or a less restrictive license (e.g., the BSD license). You should share copyright with William Stein by including your name at the top. It is very important that you include your name in the AUTHOR log, since everybody who submits code to Sage to receive proper credit. (If ever you feel you are not receiving proper credit for anything you submit to Sage, please let William Stein know!)

See About this document... for information on suggesting changes.