[GSoC 2026] Seeking Feedback on Assumptions system project.

67 views
Skip to first unread message

Sujal Kumar

unread,
Mar 19, 2026, 9:21:54 AM (5 days ago) Mar 19
to sympy
Hi SymPy community, 

I am Sujal Kumar, a second-year student at IIT Madras (GitHub handle: SujalKumar06). I have recently been working on the assumptions module in SymPy, and some of my contributions have been merged. My Work.

I am interested in continuing to work on this module. In particular, I am considering improving lra_satask as a potential project idea. I would greatly appreciate hearing from the community about other fundamental issues or areas within the assumptions module that could benefit from further work.

I understand that there is a lot of scope for improvement in this module, and I would like to make sure I am not overlooking any important directions.

Thank you for you time. I look forward to your suggestions.

Regards, 
Sujal Kumar

Tilo RC

unread,
6:26 PM (5 hours ago) 6:26 PM
to sympy
Hi Sujal, 

There's a lot of things that can be worked on with the assumption system. Currently there are several big and
important open PRs that you should take a look at:

- Krishnav Bajoria's GSoC work:
- My PRs:
  5. (more experimental / perhaps less important) Double the speed of ask by implementing an SMT theory solver that understands SymPy's unary predicat 
     + this implements an algorithm I came up with (or really a as far as I know novel combination of existing algorithms) as part of my undergrad thesis

Krishnav's PRs are 95% done. The main reason they haven't been merged yet is just because they were pretty big changes
that were hard to review all at once. It could be pretty impactful to finish them up and integrate them with the rest of the assumption system. 
My GSoC work actually has similar problems even though it got merged; PR #4 in the list above addresses some of these problems. (By the way, 
it would be great if in your GSoC proposal you discussed how you might avoid falling into the trap Sujal and I fell in to of having one or two massive PRs with the bulk of
our GSoC work that are hard to review). 

There's a lot of things that could be improved so you have a lot of flexibility in what you could write your GSoC proposal about. However, my suggestion is that you
focus on smoothing over the many rough edges of the assumption system so everything works more harmoniously together. I know that sounds pretty vague.
What I mean by this is that rather than implementing a new algorithm like Krishnav and I did you could improve upon and better integrate existing algorithms and 
assumption subsystems.  For example, I think the following issue could be the type of thing you devote one or two weeks to during GSoC (or maybe even fix beforehand):
- lra_theory: Implement more preprocessing steps
Another (probably more difficult) issue that would be great to fix would be to revive Krishnav's PRs and get them merged. 

Something to keep in mind is that the tests for the assumption system are not great. Also, beyond the performance improvements, PR #3 is very significant because it will
make testing the different assumption subsystems separately possible. So improving the testing system could be an important part the "roughing out the smooth edges"
of the assumption system idea. It could probably also just be its own separate GSoC project. You might want to take a look at this issue about improving the way the 
assumption system subsystems are tested:
- Improve testing for assumptions subsystems
You might also want to take a look at the following (AI written) file from PR #4:
That file is a WIP and entirely AI written so I would take everything in it with a grain of salt (though it has found some bugs). However, I think that style of testing could be used
for the rest of the assumption system. I'm not super familiar with Hypothesis python library but Aaron Meurer is and it could be good to read about it. You might also want to 
read about fuzzing

Please let me know of you have any questions. Asking smart questions is a great way to show that you would do well if you did GSoC. 

Sincerely, 

Tilo RC
Reply all
Reply to author
Forward
0 new messages