## 85 Reputation

11 years, 218 days

## only return "solving: single equation re...

only return "solving: single equation recurrence"

## only return "solving: single equation re...

only return "solving: single equation recurrence"

## @Markiyan Hirnyk  i have used gfun...

i have used gfun to change into diff to dsolve however, the solution is not the same as stated in the paper.

maple 's result is complicated and in terms of kummer. i just afraid it can not be changed into diff matrix with respect to each terms in matlab for post processing and not know how to write kummer in other language such as c#

## there are two terms suffering the same s...

there are two terms suffering the same situation

P(n+1), P(n-1)

if monic, there are n in P(n-1)

## i find in help, it can solve variable co...

i find in help, it can solve variable coefficient. Why this equation is an exception?

## i find in help, it can solve variable co...

i find in help, it can solve variable coefficient. Why this equation is an exception?

## How about if there are another custom id...

How about if there are another custom identity for convert, how would it be? can it do the same as mathematica?

## How about if there are another custom id...

How about if there are another custom identity for convert, how would it be? can it do the same as mathematica?

## List<String> var = new List<Str...

List<String> var = new List<String>();
string q = "3*x^3*y+2*x^2*y^2-3*x*y+5*x";
List<String> p_list = new List<String>();
string result2 = bt.Reduce(q, p_list, var);
result2 may be 0 or -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857

i am not sure the answer, and would like to check with Maple

public string Reduce(string p, List<string> Q, List<String> order)
{
string r = p;
string q = "0";
string f = "";
Dictionary<String, double> Rrq = new Dictionary<String, double>();
Dictionary<String, double> temp = new Dictionary<String, double>();
// only assume three variables
Dictionary<String,double> order0 = new Dictionary<String, double>();
Dictionary<String,double> order1 = new Dictionary<String,double>();
Dictionary<String,double> order2 = new Dictionary<String,double>();
foreach (String s in Q)
{
int counter = 0;
while(max_deg_var(s)!=order[counter])
{
counter += 1;
}
if (counter == 0)
if (counter == 1)
if (counter == 2)
}
foreach (KeyValuePair<String, double> s in order0.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order1.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order2.OrderByDescending(k => k.Value))

string Mr = "";

while (r != "0")
{
f = selectpoly(r, Rrq, order[0]);
int counter = 0;
while (!string.IsNullOrEmpty(f))
{
if (counter == 3)
Console.WriteLine("");
r = Expand(r + "-(" + Expand(selectpoly_reducer_term(r, Rrq, order[0]) + "*(" + f + ")") + ")");
counter += 1;
//debug
//r = "-3*x*y+5*x-15*x^3-2.857142857*y^3+50*x^2+10*y^2+.428571428571429";
//     -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857
f = selectpoly(r, Rrq, order[0]);
}
Mr = Mr_Term(r, Rrq, order[0]);
if (!string.IsNullOrEmpty(Mr))
{
q = Expand(q + "+" + Mr);
r = Expand(r + "-(" + Mr + ")");
}
else
{
return q;
}
}
return q;
}

## List<String> var = new List<Str...

List<String> var = new List<String>();
string q = "3*x^3*y+2*x^2*y^2-3*x*y+5*x";
List<String> p_list = new List<String>();
string result2 = bt.Reduce(q, p_list, var);
result2 may be 0 or -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857

i am not sure the answer, and would like to check with Maple

public string Reduce(string p, List<string> Q, List<String> order)
{
string r = p;
string q = "0";
string f = "";
Dictionary<String, double> Rrq = new Dictionary<String, double>();
Dictionary<String, double> temp = new Dictionary<String, double>();
// only assume three variables
Dictionary<String,double> order0 = new Dictionary<String, double>();
Dictionary<String,double> order1 = new Dictionary<String,double>();
Dictionary<String,double> order2 = new Dictionary<String,double>();
foreach (String s in Q)
{
int counter = 0;
while(max_deg_var(s)!=order[counter])
{
counter += 1;
}
if (counter == 0)
if (counter == 1)
if (counter == 2)
}
foreach (KeyValuePair<String, double> s in order0.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order1.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order2.OrderByDescending(k => k.Value))

string Mr = "";

while (r != "0")
{
f = selectpoly(r, Rrq, order[0]);
int counter = 0;
while (!string.IsNullOrEmpty(f))
{
if (counter == 3)
Console.WriteLine("");
r = Expand(r + "-(" + Expand(selectpoly_reducer_term(r, Rrq, order[0]) + "*(" + f + ")") + ")");
counter += 1;
//debug
//r = "-3*x*y+5*x-15*x^3-2.857142857*y^3+50*x^2+10*y^2+.428571428571429";
//     -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857
f = selectpoly(r, Rrq, order[0]);
}
Mr = Mr_Term(r, Rrq, order[0]);
if (!string.IsNullOrEmpty(Mr))
{
q = Expand(q + "+" + Mr);
r = Expand(r + "-(" + Mr + ")");
}
else
{
return q;
}
}
return q;
}

## how about polynomial case i know the al...

i know the algorithm, but not sure the answer should be 0 or a polynomial

List<String> var = new List<String>();
string q = "3*x^3*y+2*x^2*y^2-3*x*y+5*x";
List<String> p_list = new List<String>();
string result2 = bt.Reduce(q, p_list, var);
result2 may be 0 or -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857

public string Reduce(string p, List<string> Q, List<String> order)
{
string r = p;
string q = "0";
string f = "";
Dictionary<String, double> Rrq = new Dictionary<String, double>();
Dictionary<String, double> temp = new Dictionary<String, double>();
// only assume three variables
Dictionary<String,double> order0 = new Dictionary<String, double>();
Dictionary<String,double> order1 = new Dictionary<String,double>();
Dictionary<String,double> order2 = new Dictionary<String,double>();
foreach (String s in Q)
{
int counter = 0;
while(max_deg_var(s)!=order[counter])
{
counter += 1;
}
if (counter == 0)
if (counter == 1)
if (counter == 2)
}
foreach (KeyValuePair<String, double> s in order0.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order1.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order2.OrderByDescending(k => k.Value))

string Mr = "";

while (r != "0")
{
f = selectpoly(r, Rrq, order[0]);
int counter = 0;
while (!string.IsNullOrEmpty(f))
{
if (counter == 3)
Console.WriteLine("");
r = Expand(r + "-(" + Expand(selectpoly_reducer_term(r, Rrq, order[0]) + "*(" + f + ")") + ")");
counter += 1;
//debug
//r = "-3*x*y+5*x-15*x^3-2.857142857*y^3+50*x^2+10*y^2+.428571428571429";
//     -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857
f = selectpoly(r, Rrq, order[0]);
}
Mr = Mr_Term(r, Rrq, order[0]);
if (!string.IsNullOrEmpty(Mr))
{
q = Expand(q + "+" + Mr);
r = Expand(r + "-(" + Mr + ")");
}
else
{
return q;
}
}
return q;
}

## how about polynomial case i know the al...

i know the algorithm, but not sure the answer should be 0 or a polynomial

List<String> var = new List<String>();
string q = "3*x^3*y+2*x^2*y^2-3*x*y+5*x";
List<String> p_list = new List<String>();
string result2 = bt.Reduce(q, p_list, var);
result2 may be 0 or -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857

public string Reduce(string p, List<string> Q, List<String> order)
{
string r = p;
string q = "0";
string f = "";
Dictionary<String, double> Rrq = new Dictionary<String, double>();
Dictionary<String, double> temp = new Dictionary<String, double>();
// only assume three variables
Dictionary<String,double> order0 = new Dictionary<String, double>();
Dictionary<String,double> order1 = new Dictionary<String,double>();
Dictionary<String,double> order2 = new Dictionary<String,double>();
foreach (String s in Q)
{
int counter = 0;
while(max_deg_var(s)!=order[counter])
{
counter += 1;
}
if (counter == 0)
if (counter == 1)
if (counter == 2)
}
foreach (KeyValuePair<String, double> s in order0.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order1.OrderByDescending(k => k.Value))
foreach (KeyValuePair<String, double> s in order2.OrderByDescending(k => k.Value))

string Mr = "";

while (r != "0")
{
f = selectpoly(r, Rrq, order[0]);
int counter = 0;
while (!string.IsNullOrEmpty(f))
{
if (counter == 3)
Console.WriteLine("");
r = Expand(r + "-(" + Expand(selectpoly_reducer_term(r, Rrq, order[0]) + "*(" + f + ")") + ")");
counter += 1;
//debug
//r = "-3*x*y+5*x-15*x^3-2.857142857*y^3+50*x^2+10*y^2+.428571428571429";
//     -3*x*y+5*x-15*x^3-2.85714285714286*y^3+50*x^2+10*y^2+0.42857
f = selectpoly(r, Rrq, order[0]);
}
Mr = Mr_Term(r, Rrq, order[0]);
if (!string.IsNullOrEmpty(Mr))
{
q = Expand(q + "+" + Mr);
r = Expand(r + "-(" + Mr + ")");
}
else
{
return q;
}
}
return q;
}

## yes, i want to see difference between an...

yes, i want to see difference between an ordinary integral and a contour integral, which examples are they?

## yes, i want to see difference between an...

yes, i want to see difference between an ordinary integral and a contour integral, which examples are they?

## @Christopher2222  http://en.wikipe...

http://en.wikipedia.org/wiki/Genetic_programming

in the diagram of the page, the node can store operator such as +, - , *, /,

can the tree in maple store these operator?

moreover, can tree store diff command such as diff(leaf, x)?

 1 2 3 4 5 6 Page 3 of 6
﻿