Hi SymPy Community,

I’m Krishnav Bajoria, a third-year student at IIT BHU,Varanasi studying
Mathematics and Computing.I am proficient in Python and have had a fairly
strong mathematical background which was also the reason that led me to
start contributing in SymPy. In terms of my contributions to SymPy, I have
had three PRs merged—two related to *assumptions* and one in
codegen/utilities.lambdify—and a few more under review.

As I was exploring potential GSoC projects, I became particularly
interested in two from the ideas page:

   1. *Improvements to the Assumptions System*
   2. *The Risch Integration Algorithm*

Since I’ve already worked a bit on *assumptions*, I’ve been delving deeper
into the discussions and implementation details to understand its current
state. I wanted to share what I’ve gathered so far and get feedback on
whether I’m on the right track, or if there are other key areas I should
focus on.
*Assumptions System: What I’ve Studied So Far*

   - *Old vs. New Assumptions System*:
      - The transition from the old rule-based system,which attached
      inferences directly to the objects as attributes, to the new
      predicate-based system,which separates inferences from objects and
      evaluates them dynamically, was meant to enhance flexibility. However,
      there are still inconsistencies where the new system does not propagate
      certain facts correctly.
   - *Key Issues and Challenges*:
      - Some assumptions are incorrectly inferred or not inferred at all
      due to missing rules.
      - Symbolic variables (e.g., x.is_real) sometimes fail to evaluate
      correctly when additional constraints are introduced.
      - Cases where the assumptions system contradicts itself in different
      parts of SymPy.
      - Performance concerns—some assumption queries take longer than
      expected due to inference chains.
   - *Areas I’ve Been Exploring for Improvements*:
      - Understanding *handlers* in the new system and whether they need
      restructuring.
      - Reviewing past discussions on improving assumptions and identifying
      still-relevant open issues.
      - Exploring ways to *improve inference accuracy*, especially in edge
      cases.
      - Considering whether any aspects of the *old system* could be
      reintroduced to address current limitations.

I’d appreciate to hear from the community—does this list cover the main
areas that need attention? Are there any other fundamental issues I should
be looking at?
*Considering Risch Integration*

Apart from assumptions, I’ve also started reading about the *Risch
integration algorithm*. I haven’t explored it as deeply yet, but I find it
intriguing and would like to get insights on its feasibility as a GSoC
project.

At this stage, I’m just considering both projects for discussion and plan
to *finalize my choice* based on the feedback and guidance from the
community.

Thank you for your time and consideration. I look forward to your response!

Best Regards,
Krishnav Bajoria.

-- 
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/CAF0TZuuLMFee7LUv4AUQ%2BBTLJ_LYEZjX-pxU%2BCMBDnPDOX%3DuUw%40mail.gmail.com.

Reply via email to