Differences between revisions 4 and 5
Revision 4 as of 2021-02-23 06:52:28
Size: 4931
Editor: mathzeta2
Comment:
Revision 5 as of 2021-02-23 11:21:59
Size: 6262
Editor: behackl
Comment:
Deletions are marked like this. Additions are marked like this.
Line 65: Line 65:

== Add support for error terms with explicit constants ("Big-Ell-Terms") to AsymptoticRing ==

|| Mentor || Clemens Heuberger, Benjamin Hackl ||
|| Area || Algebra, Power Series, Asymptotics ||
|| Skills || Solid understanding of Big-Oh notation, Python experience ||

Computations with asymptotic expansions occur in many different mathematical subfields; a prominent example is the (average / best / worst case) analysis of algorithms (think: Quick``Sort requires 2n log(n) + O(n) comparisons to sort a list of length n on average). The current implementation in Sage``Math ([[https://doc.sagemath.org/html/en/reference/asymptotic/sage/rings/asymptotic/asymptotic_ring.html|AsymptoticRing]]) can handle basic computations with these expressions.
Within this project, the capabilities of the module should be expanded by implementing a new error term that behaves similarly as a Big-Oh-term, but also keeps track of the range in which the estimate provided by the term is valid, as well as of the corresponding constant. Such a concept is introduced in the book "Asymptotic Methods in Analysis" by N. G. de Brujin as so-called Big-Ell-terms, but more as a didactic vehicle to motivate the usage of Big-Oh-terms. For practical purposes, having a more explicit bound on the error term is useful nonetheless.

GSoC 2021: Ideas Page

Introduction

Welcome to SageMath's Ideas Page for GSoC 2021! (Last year 2020)

SageMath's GSoC organization homepage -- the hub for submitting applications and where the everything on Google's side is organized. (Timeline)

Please subscribe to the sage-gsoc mailing list and the GAP developer list for discussion on possible GAP GSoC projects. Also, make sure you have gone through the information regarding application procedures, requirements and general advice. The Application Template is also available on that wiki page. Archives of past GSoC project ideas can be found here.

All projects will start with an introduction phase to learn about SageMath’s (or sister projects') internal organization and to get used to their established development process. We also require you to show us that you are able to execute actual development by submitting a relevant patch and/or reviewing a ticket via Trac of the project you are interested in applying to. The developer guide is a great comprehensive resource that can guide you through your first steps in contributing to SageMath.

Apart from the project ideas listed below, there is also a comprehensive list of future feature wishes in our trac issue tracker. They might contain the perfect project idea for you we didn't even think about!

Project Ideas

Here is a list of project proposals with identified mentors. Other well-motivated proposals from students involving SageMath in a substantial way will be gladly considered, as well.

Improve support of representation theory (multiple projects)

Mentor

Travis Scrimshaw

Area

Algebra, Representation Theory, possibly Combinatorics

Skills

Understanding of linear algebra, preferably representation theory and algebra, associated combinatorics desirable, Cython experience is good

Representation theory is the study of symmetries and is an important part of modern mathematics with applications to other fields, such as physics and chemistry. GAP supports doing computations using the characters of representations, but it often does not contain constructions nor manipulations of the modules. There is currently some limited support within Sage for representations as a proof-of-concept, but this needs to be expanded and refined. Things that can be added are tensor products (for bialgebras), dual representations (for Hopf algebras), induction and restriction functors, methods to construct representations of groups (e.g., symmetric group), Lie algebra representations, etc.

Implement Schubert and Grothendieck polynomials

Mentor

Travis Scrimshaw

Area

Algebra, Combinatorics, Schubert Calculus

Skills

Foundations in combinatorics, experience reading research papers

Schubert calculus can roughly be stated as the study of the intersections of lines, through which certain algebras arise that can be represented using Schubert polynomials and Grothendieck polynomials. The main goal of this project is to finish the implementation started in #6629, as well as implement the symmetric Grothendieck polynomials and their duals in symmetric functions.

Implement Small Groups

Mentor

Area

Group Theory

Skills

Group Theory, GAP and Python experience

Create a convenient interface to the small groups database, perhaps wrapping the SmallGrp GAP package. This will enable to create all small groups satisfying certain properties (e.g. abelian, solvable, non-nilpotent, given order), and to provide information about them. This project should also aim to improve the connection between the implementations of permutation, matrix and finitely presented groups in SageMath. This can also include programmable access to information about each group as in GroupNames.

Add support for error terms with explicit constants ("Big-Ell-Terms") to AsymptoticRing

Mentor

Clemens Heuberger, Benjamin Hackl

Area

Algebra, Power Series, Asymptotics

Skills

Solid understanding of Big-Oh notation, Python experience

Computations with asymptotic expansions occur in many different mathematical subfields; a prominent example is the (average / best / worst case) analysis of algorithms (think: QuickSort requires 2n log(n) + O(n) comparisons to sort a list of length n on average). The current implementation in SageMath (AsymptoticRing) can handle basic computations with these expressions. Within this project, the capabilities of the module should be expanded by implementing a new error term that behaves similarly as a Big-Oh-term, but also keeps track of the range in which the estimate provided by the term is valid, as well as of the corresponding constant. Such a concept is introduced in the book "Asymptotic Methods in Analysis" by N. G. de Brujin as so-called Big-Ell-terms, but more as a didactic vehicle to motivate the usage of Big-Oh-terms. For practical purposes, having a more explicit bound on the error term is useful nonetheless.

GSoC/2021 (last edited 2021-03-17 22:48:21 by tscrim)