These are chat archives for symengine/symengine

22nd
May 2015
Isuru Fernando
@isuruf
May 22 2015 03:50

Sage has some kind of a directional infinity.

sage: (3+4*I)*oo
(4/5*I + 3/5)*Infinity

Sympy doesn't have it, but has a ComplexInfinity

In [19]: (3+4*I)*oo
Out[19]: oo + oo*I

What should SymEngine implement?
I think best way is to have a DirectionalInfinity and a ComplexInfinity

Abinash Meher
@abinashmeher999
May 22 2015 05:42
Is (3+4*I)some kind of vector? It doesn't look like one.
Isuru Fernando
@isuruf
May 22 2015 05:45
Nope, it's a complex number
Abinash Meher
@abinashmeher999
May 22 2015 05:46
Oh I see it now. I is iota here.
So basically they have taken a complex number of Infinite modulus in the same direction.
Isuru Fernando
@isuruf
May 22 2015 05:49
yes
Sumith Kulal
@Sumith1896
May 22 2015 06:05
We haven't implemented inf yet, right?
Isuru Fernando
@isuruf
May 22 2015 06:11
I am implementing it right now
Sumith Kulal
@Sumith1896
May 22 2015 06:13
Cool
Sumith Kulal
@Sumith1896
May 22 2015 08:43
How do I run the benchmarks?
Isuru Fernando
@isuruf
May 22 2015 08:44
You'll have to run them one by one. ./benchmarks/expand2
Sumith Kulal
@Sumith1896
May 22 2015 08:46
I changed the necessary for my PR sympy/symengine#451 in the benchmarks too.
As long as it builds and tests pass, it is fine, right?
Isuru Fernando
@isuruf
May 22 2015 08:53
Yes, can you merge your branch with master?
Sumith Kulal
@Sumith1896
May 22 2015 08:54

So should I do this

git checkout symbols
git rebase master

or something else?

Isuru Fernando
@isuruf
May 22 2015 08:56
Yes, make sure your master branch is updated with the git master
Sumith Kulal
@Sumith1896
May 22 2015 08:56
Okay
What should I replace this with?
<<<<<<< HEAD
void test_log()
{
    RCP<const Basic> x = symbol("x");
    RCP<const Basic> i2 = rcp(new Integer(2));
    RCP<const Basic> i3 = rcp(new Integer(3));
=======
 void test_log()
 {
    RCP<const Basic> i2 = integer(2);
    RCP<const Basic> i3 = integer(3);
>>>>>>> Changed rcp(new(symbol("*") to symbol("*") in tests
is it
void test_log()
{
    RCP<const Basic> x = symbol("x");
    RCP<const Basic> i2 = rcp(new Integer(2));
    RCP<const Basic> i3 = rcp(new Integer(3));
Isuru Fernando
@isuruf
May 22 2015 09:01
Replace rcp(new Integer()) with integer()
Sumith Kulal
@Sumith1896
May 22 2015 09:02
Ohh yeah, I forgot that, I'll do it
Done
Sumith Kulal
@Sumith1896
May 22 2015 09:26
Let me know if that PR requires any other changes.
Sumith Kulal
@Sumith1896
May 22 2015 09:59
As a design decision, would it be fine if we inherit Uni-variate and Multi-variate Polynomial from Polynomial, then expr2poly and the poly_mul for rings can be brought here. Would that be fine?
Ondřej Čertík
@certik
May 22 2015 18:41
@Sumith1896 that sounds fine, though I would need to see the exact details.
Sumith Kulal
@Sumith1896
May 22 2015 18:43
It's not a worry at the immediate, to start with I would implemented univariate only.
Ondřej Čertík
@certik
May 22 2015 23:01
Cool. Keep me updated.