GSoC 2023 !

150 views
Skip to first unread message

Atharva Deore

unread,
Mar 15, 2023, 4:15:35 PM3/15/23
to sage-gsoc
Dear Sagemath Team,
 I am Atharva Deore, a BTech student at Vishwakarma Institute of Technology (VIT), Pune.
As a part of GSoC'23, I have decided to contribute to "Implement matrix spaces over commutative semirings".
 This problem statement is exciting and suitable as I have taken courses in Algebra. Also, I have professional experience working in Python as a backend as part of internships and personal projects.
 To start with, I need a few references and links to good first issues.

Regards,
Atharva Deore

tcscrims

unread,
Mar 22, 2023, 7:31:02 PM3/22/23
to sage-gsoc
Dear Atharva,
   Thank you for your interest. One starting point would be looking at the definition of a commutative semiring. A sort-of canonical example is the tropical semiring. You can look at SageMath's implementation of this. You can search through all of the issues on our github page, including finding some easier things to fix there. One can look at the current matrix implementations and see what could be easily ported to work in this more general context (where we no longer have subtraction).

Best,
Travis

Atharva Deore

unread,
Mar 26, 2023, 7:29:57 PM3/26/23
to sage-gsoc
Hi,
 In reference to #35288, I have some doubts in the implementation part.
 I have made following changes in the codebase:
 1] Added deprecation warning for is_NumberFieldOrder function.
 2] To make is_instance(ZZ, sage.rings.number_field.order.Order) return true, I have created abstract class IntegerRing_class which inherits from PrincipalIdealDomain and sage.rings.abc.Order and made it a base class of IntegerRing_class in integer_ring.pyx
 
 file structure
 | rings -
| abc.pxd
| abc.pyx
| integer_ring.pxd
| integer_ring.pyx
| number_field -
| order.py

Changes:

1] abc.pxd
from .ring cimport PrincipalIdealDomain

cdef class IntegerRing_class(PrincipalIdealDomain):    
    pass

2] abc.pyx
cdef class IntegerRing_class(PrincipalIdealDomain, Order):
    pass

3] integer_ring.pxd
cdef class IntegerRing_class(sage.rings.abc.IntegerRing_class)

4] integer_ring.pyx
cdef class IntegerRing_class(sage.rings.abc.IntegerRing_class)

As I am new to Cython I need help in making IntegerRing_class base class of sage.rings.number_field.order.Order
Reply all
Reply to author
Forward
Message has been deleted
0 new messages