[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.python

Python library for working with simple equations

lallous

2/18/2010 9:10:00 AM

Hello

Is there is any Python library that allow such things:

Given a string expression as: x + 5 + x * (y + 2), any library that
can develop the equation for example.
Or if we say factor with "x" then it renders the expression with x *
( rest of expression ).
There could be a functionality where when x,y are given then the
expression can be evaluated.
If there are two expressions, they can be added and the symbols
preserved.

Does such a thing exist?

Thanks,
Elias
4 Answers

Chris Rebert

2/18/2010 9:18:00 AM

0

On Thu, Feb 18, 2010 at 1:09 AM, lallous <lallous@lgwm.org> wrote:
> Hello
>
> Is there is any Python library that allow such things:
>
> Given a string expression as: x + 5 + x * (y + 2), any library that
> can develop the equation for example.
> Or if we say factor with "x" then it renders the expression with x *
> ( rest of expression ).
> There could be a functionality where when x,y are given then the
> expression can be evaluated.
> If there are two expressions, they can be added and the symbols
> preserved.
>
> Does such a thing exist?

They're called computer algebra systems:
http://en.wikipedia.org/wiki/Computer_alge...

SymPy is one for Python:
http://code.google.co...

Don't know if it supports factoring specifically; I've never used it,
I just have Google-Fu.

Cheers,
Chris
--
http://blog.re...

Daniel Fetchinson

2/18/2010 9:24:00 AM

0

> Given a string expression as: x + 5 + x * (y + 2), any library that
> can develop the equation for example.
> Or if we say factor with "x" then it renders the expression with x *
> ( rest of expression ).
> There could be a functionality where when x,y are given then the
> expression can be evaluated.
> If there are two expressions, they can be added and the symbols
> preserved.

Take a look at sage: http://www.sag...
I wouldn't say it's simple, in fact it's huge, but it'll do the job.

Cheers,
Daniel

--
Psss, psss, put it down! - http://www.cafepress.com...

Daniel Fetchinson

2/18/2010 10:50:00 AM

0

>> Given a string expression as: x + 5 + x * (y + 2), any library that
>> can develop the equation for example.
>> Or if we say factor with "x" then it renders the expression with x *
>> ( rest of expression ).
>> There could be a functionality where when x,y are given then the
>> expression can be evaluated.
>> If there are two expressions, they can be added and the symbols
>> preserved.
>
> Take a look at sage: http://www.sag...
> I wouldn't say it's simple, in fact it's huge, but it'll do the job.

Probably you can isolate the part of sage that you actually need and
can throw away 95% of it.

HTH,
Daniel



--
Psss, psss, put it down! - http://www.cafepress.com...

geremy condra

2/18/2010 3:30:00 PM

0

On Thu, Feb 18, 2010 at 4:09 AM, lallous <lallous@lgwm.org> wrote:
> Hello
>
> Is there is any Python library that allow such things:
>
> Given a string expression as: x + 5 + x * (y + 2), any library that
> can develop the equation for example.
> Or if we say factor with "x" then it renders the expression with x *
> ( rest of expression ).
> There could be a functionality where when x,y are given then the
> expression can be evaluated.
> If there are two expressions, they can be added and the symbols
> preserved.
>
> Does such a thing exist?
>
> Thanks,
> Elias
> --
> http://mail.python.org/mailman/listinfo/p...
>

>From sage:

>>> x = var('x')
>>> g = x**2 + x
>>> g(x=5)
30
>>> g.factor
.... (x + 1)*x

Geremy Condra