1009 Reputation

5 years, 211 days
changsha, China

have a relation...

I guess your  "the least complicated surface on which the graph can be embedded" means the genus of a graph.

The genus of a graph is the minimal integer n such that the graph can be drawn without crossing itself on a sphere with n handles.

For any graph G, we always have
cr(G)≥g(G)
where cr(G) is the crossing number of G and g(G) is the genus of G.
On the other hand, the difference between the crossing number and the genus of a graph can be arbitrarily large, as we can see from this example:
The crossing number of C3×Cn, the Cartesian product of the cycle C3 and Cn, is given by cr(C3×Cn)=n for n≥3 (see here) . On the other hand, it is easy to show that the genus of C3×Cn is given by g(C3×Cn)=1 for n≥3.

Currently, there are programs that calculate the upper and lower bounds of the cross numbers of graphs, but they are not written in Maple. http://crossings.uos.de/

@tomleslie First of all thank you f...

@tomleslie First of all thank you for your help and effective code.

I have taken note of your remark: it only works when all faces in the original graph have 3 (or fewer?) edges. It seems to me that your code works for non-triangulated graph , as long as the graph is 3-connected.

An example of this is, I dual the dual graph in my instance.

Maybe I need to clarify two concepts briefly: 3-connected graph and triangulating planar graphs. If you are not confused, ignore the following.

In graph theory, a connected graph G is said to be 3-vertex-connected (or 3-connected) if it has more than 3 vertices and remains connected whenever fewer than 3 vertices are removed.
planar graph G is said to be triangulated (also called maximal planar) if any length of face in G is 3.

Any simple triangulating planar graph is 3-connected, and conversely it is not necessarily true.  More interestingly 3-connected planar graphs have unique embeddings in the sphere.

This is the better option....

@Thomas Richard Thank you!  This is a much better way to avoid the above problem.

That might seem like a little bit more b...

@acer  That might seem like a little bit more backslash.

Speak more clearly...

@Carl Love  Sorry, I didn’t make it clear. I mean to remove terms containing a and exactly one other variable. But I have to say that the answers you provide later are very beautiful and practical, and sometimes they will be used. I hope you don’t delete it though they are a little bit different from what I meant here.

GOOD! Can we further extend the codes?...

We may think about it a little bit more. Now we just delete "ab", "ac" and “ad” and so on. I mean all the "a*x"  forms that have "a" in them need to be deleted. Note that "x" stands for exactly one letter. For exampleï¼š

f :=a*b*c*d+ a*b*c+a*b+a*c+a*d+a*e+2*a+a+b+c;
s:=select(has, {op(f)}, a) minus {a*b,a*d,a*c,a*e};

s := {a*b*c, a*b*c*d, 3*a}

The above expression f is simple, so the above method can be done. But if there are many kinds of a* x in f, the codes may not be so neat.

definite and indefinite integrals are n...

@markweitzman  Just as the link says, the Risch algorithm is a method of indefinite integration used in some computer algebra systems to find antiderivatives. In many cases, definite and indefinite integrals are not the same difficulty.  You might think they're related because of  the Newton-Leibniz formula.  The following link is worth looking at, although the topic of discussion is Mathematica's integration problem.

https://mathematica.stackexchange.com/questions/204191/a-discontinuity-in-an-integral

Maple2021 seems not good but thanks for ...

@mmcdara  Thank you, I learned a lot of skills from your codes, although the effect seems not so good in the new version according to your approach, as shown in the following picture.

Maybe we can change the code to do something like this, maybe it looks a little bit better.

you are right!...

@Carl Love any array plot in 2021 is same bug.

Thanks!...

@Carl Love The computer I have now only installed maple2020. It's late at night in my place, and I will run it on another computer with maple2021 installed as soon as possible tomorrow. maple2020 seems to be able to convert to latex and run your code well, but it is not displayed in the form of an array.