[GSOC2012] Progress/Work To be done on Assumptions

22 views
Skip to first unread message

Sanket Agarwal

unread,
Mar 14, 2012, 5:16:23 PM3/14/12
to sy...@googlegroups.com
Hi,

Intro: Sanket Agarwal, CSE Graduate Student. Worked with python for "some" time now :-).

I am following up from various topics list on GSoC 2012 ideas page. Meanwhile I am working to fix the following issue: http://code.google.com/p/sympy/issues/detail?id=2970 , https://github.com/sympy/sympy/pull/1114/.

Though I am still revolving around various ideas -- I find Assumptions module specifically interesting. I have gone through the documentation given at the Wiki as well as a LONG thread. But it's difficult to make complete sense of state-of-art from these articles. Also the ideas-list specifically highlights to ask progress on this page ;). It'll be nice if some of you could brief me about what is exactly required for the re-write of current Assumptions Module, that which can be part of possible work in GSoC, also links/hints to where I should lurk around in the code will be appreciated.

Cheers
--Sanket

Ronan Lamy

unread,
Mar 15, 2012, 8:52:46 PM3/15/12
to sy...@googlegroups.com

Well, the situation with assumptions is a bit of mess at the moment, in
part because I'm working on a big refactoring of the old assumption
system. Anyway, the object of such a GSoC project would be to work on
the new assumption/logic system (i.e. sympy.assumptions and
sympy.logic). I see 3 axes of improvement:
* Extend the system - add quantifiers and binary predicates (see e.g.
issue 1887)
* Make it more efficient - e.g. implement indexing of assumption
contexts, or deal with issue 2016.
* Plug it into the core, i.e. merge it with the old system. Details
about this will have to wait until the current refactoring is done.

Concerning the last point, one thing is already clear though:
ask(Q.positive(Symbol('x', positive=True))) should return True. So you
could start by trying to make this, and similar cases, work. This means
adding handlers for Symbol in the relevant AskHandler classes in
sympy/assumptions/handlers/. (BTW, this doesn't strike me as a really
convenient interface, so ideas to improve it are welcome)

Reply all
Reply to author
Forward
0 new messages