Hi Tilo,

Thank you so much for the quick and encouraging feedback! I'm glad to hear 
that improving refine is seen as a viable project path.

I completely understand your point about preserving accessible tasks for 
new contributors. Refine handlers are indeed a great entry point for 
learning the codebase (as they were for me!).

To address this, I would like to structure my proposal to focus on the *complex 
and structural challenges* of refine, leaving the "low-hanging fruit" for 
future newcomers.

My idea would be to focus on:

   1. 
   
   *Complex Domains:* Implementing refinement logic for non-scalar domains, 
   such as *Matrices* (e.g., refining properties of Matrix expressions 
   based on assumptions) and *Sets*, which are often too tricky for 
   first-time contributors.
   2. 
   
   *Harder Functions:* tackling handlers for functions with complex branch 
   cuts or multi-valued logic where deeper mathematical care is needed.
   3. 
   
   *Documentation & Guide:* Creating a comprehensive "Guide to writing 
   Refine Handlers" within the documentation. This would actually *help* new 
   contributors by giving them a clear blueprint to follow for the simpler 
   tasks I leave behind.
   
Do you think focusing on these "Advanced Refinement" areas would strike the 
right balance between a valuable GSoC project and keeping the module 
accessible for beginners?

Best, Marco

Il giorno martedì 17 febbraio 2026 alle 19:41:38 UTC+1 [email protected] 
ha scritto:

> Hi Marco, 
>
> I think a project improving refine could probably be a good small GSoC 
> project. It seems fairly straightforward to do something like that. Though, 
> it would be mostly completely separate from what is described in the 
> "improving assumptions module" idea. 
>
> That being said, I think there could also be value in leaving the 
> implementation of refine functionality to new contributors as I think it's 
> an impactful thing new contributors can work on that would be within their 
> abilities even if they only have a modest amount of programming and math 
> experience. 
>
> Tilo RC
>
> On Monday, February 16, 2026 at 5:01:08 AM UTC-8 [email protected] 
> wrote:
>
>> *Hi everyone,*
>>
>> My name is Marco, and I am an undergraduate student interested in 
>> applying for GSoC 2026 with SymPy as I said in the previous message. 
>>
>> I have been exploring the codebase recently, specifically focusing on the 
>> *Assumptions 
>> module* and the refine() function. I have already opened a couple of 
>> Pull Requests to get familiar with the workflow:
>>
>>    - 
>>    
>>    Implemented refine handlers for floor and ceiling (PR #29174)
>>    - 
>>    
>>    Implemented refine handler for conjugate (PR #29173)
>>    
>> I noticed the *"Improvements to the Assumptions module"* idea on the 
>> wiki is labeled as *Advanced*. However, I believe there is a lot of 
>> value in a project focused on *extending refine capabilities* (adding 
>> missing handlers like trigonometric functions, logarithms, matrices) and 
>> bridging the gap between the old and new assumptions systems through 
>> incremental improvements.
>>
>> Would a proposal focused on these practical, incremental improvements 
>> to refine and related bug fixes be considered a strong candidate for GSoC?
>>
>> I am currently working on adding more handlers  as suggested by reviewers.
>>
>> Thanks for your time and guidance!
>>
>> Best regards, Marco
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/sympy/6ee1f78a-5bb1-4af4-9e0b-b267dc15f6abn%40googlegroups.com.

Reply via email to