#16508: Add Commutative graded differential algebras.
-------------------------------------+-------------------------------------
       Reporter:  mmarco             |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.3
      Component:  algebra            |   Resolution:
       Keywords:  sd58, sd59,        |    Merged in:
  algebras, nonconmutative, graded   |    Reviewers:
        Authors:  mmarco             |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  f5f4c1d8ab67d5ca09046e74aa4544140a58e86e
  u/jhpalmieri/DGA_new               |     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------
Description changed by jhpalmieri:

Old description:

> This patch adds basic CDGA's.
>
> They work as follows, first you create the algebra:
>
> {{{
> sage: A = CDGAlgebra(QQ, 'x,y,t', degrees = (1, 1, 2))
> sage: A
> Commutative Graded Differential Algebra over Rational Field with
> generators ('x', 'y', 't')
> sage: A.inject_variables()
> Defining x, y, t
> }}}
>
> Then define the differential:
> {{{
> sage: D = A.differential({x: x*y , y: x*y })
> sage: D
> Differential map in Commutative Graded Differential Algebra over Rational
> Field with generators ('x', 'y', 't')
> sending:
>     x --> x*y
>     y --> x*y
>     t --> 0
>
> }}}
>
> Now you can compute things like a basis of each homogeneous part:
>
> {{{
> sage: A.homogeneous_part(5)
> [y*t^2, x*t^2]
> }}}
>
> Or the cohomology at each degree:
>
> {{{
> sage: A.cohomology(4, D)
> Vector space quotient V/W of dimension 1 over Rational Field where
> V: Vector space of degree 2 and dimension 2 over Rational Field
> Basis matrix:
> [1 0]
> [0 1]
> W: Vector space of degree 2 and dimension 1 over Rational Field
> Basis matrix:
> [0 1]
> }}}

New description:

 This patch adds basic CDGA's.

 They work as follows, first you create the algebra:

 {{{
 sage: A.<x,y,t> = CDGAlgebra(QQ, degrees = (1, 1, 2))
 sage: A
 Graded Commutative Algebra over Rational Field with generators ('x', 'y',
 't') in degrees (1, 1, 2)
 }}}

 Then define the differential on `A` to construct a differential graded
 algebra:
 {{{
 sage: sage: B = A.CDGAlgebra({x: x*y , y: x*y })
 sage: B
 Commutative Differential Graded Algebra over Rational Field with
 generators ('x', 'y', 't') in degrees (1, 1, 2), differential
     x --> x*y
     y --> x*y
     t --> 0
 }}}

 Now you can compute things like a basis of each homogeneous part:

 {{{
 sage: B.basis(5)
 [y*t^2, x*t^2]
 }}}

 Or the cohomology in each degree:
 {{{
 sage: B.cohomology(4)
 Free module generated by {[t^2]} over Rational Field
 sage: B.cohomology(9)
 Free module generated by {[-x*t^4 + y*t^4]} over Rational Field
 }}}

--

--
Ticket URL: <http://trac.sagemath.org/ticket/16508#comment:28>
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