## how to improve my home made full_simplify() in Map...

Maple does not have full_simplify() command like with Mathematica.

So I figured why not make one?

Here is a basic implementation. All what it does is blindly tries different simplifications methods I know about and learned from this forum then at the end sorts the result by leaf count and returns to the user the one with smallest leaf count.

I tried it on few inputs.

Advantage of full_simplify() is that user does not have to keep trying themselves. One disadvantage is that this can take longer time. timelimit can be added to this to make it not hang.

Can you see and make more improvement to this function?

May be we all together can make a better full_simplify() in Maple to use. Feel free to edit and change.

```#version 1.0
#increment version number each time when making changes.

full_simplify:=proc(e::anything)
local result::list;
local f:=proc(a,b)
RETURN(MmaTranslator:-Mma:-LeafCount(a)<MmaTranslator:-Mma:-LeafCount(b))
end proc;

result:=[simplify(e),
simplify(e,size),
simplify(combine(e)),
simplify(combine(e),size),
simplify(evala( combine(e) )),
evala(factor(e)),
simplify(e,ln),
simplify(e,power),
simplify(e,RootOf),
simplify(e,sqrt),
simplify(e,trig),
simplify(convert(e,trig)),
simplify(convert(e,exp)),
combine(e)
];
RETURN( sort(result,f)[1]);

end proc:
```

worksheet below

 > #version 1.0   #increment version number each time when making changes. full_simplify:=proc(e::anything)    local result::list;    local f:=proc(a,b)       RETURN(MmaTranslator:-Mma:-LeafCount(a)
 > #test cases T:=[(-192*cos(t)^6 + 288*cos(t)^4 - 912*cos(t)^3 - 108*cos(t)^2 + 684*cos(t) - 54)/(4608*cos(t)^9 - 10368*cos(t)^7 + 6208*cos(t)^6 + 7776*cos(t)^5 - 9312*cos(t)^4 - 2440*cos(t)^3 + 3492*cos(t)^2 + 372*cos(t) - 1169), (10*(5+sqrt(41)))/(sqrt(70+10*sqrt(41))*sqrt(130+10*sqrt(41))), ((6-4*sqrt(2))*ln(3-2*sqrt(2))+(3-2*sqrt(2))*ln(17-12*sqrt(2))+32-24*sqrt(2))/(48*sqrt(2)-72)*(ln(sqrt(2)+1)+sqrt(2))/3, (1/2)*exp((1/2)*x)*(cosh((1/2)*x)-cosh((3/2)*x)+sinh((1/2)*x)+sinh((3/2)*x)) ];

 > full_simplify~(T)

 >

## Saving Style Sets & Using Them With "Format>Managi...

I just installed Maple 2024.0 and I discovered a problem in that the "Manage Style Sets" under the "Format" menu DOESN'T WORK!!! Type the following to understand how this feature works and see if you have the same problem:

>?workshhet,documenting,styles

Follow the instructions.  They are pretty simple.  Find a worksheet that has the styles you like and open it up and then save this Style Set in Maple 2024.0.  Then close it.  Open a new worksheet.  Go to "Format" and then click on "Managing Style Sets" and then click on the Style Set file name you saved previously and you will find that it does not set the style set you saved previously.

Another problem you will find is that it doesn't save your Style Set file where it is supposed to save it.  It needs to be saved in a Maple 2024.0 created folder known as "data" and then in a folder under "data" called "stylesets".  I had to manually go find my Style Set file and copy and paste it there.

Please check this out and see if I am wrong.  I use the "Format" "Manage Style Sets" option a lot when I download files from this blog and ".mw"  have fonts size 12 and they default to the nearly impossible to read font!  After I have applied the "Manage Style Sets" I can see what I have! But for some reason in Maple 2024.0 this feature was not tested or something has changed in Maple 2024.0 to break this feature!

## Something about the new function AllGraphs ...

`AllGraphs` is a new function in Maple 2024. Good things！

However, it seems that most of its functionalities are already provided by `NonIsomorphicGraphs`, and its speed even lags behind that of `NonIsomorphicGraphs`

I'm curious about what truly sets this function apart from existing ones. It generates isomorphic graphs if `nonisomorphic=false`But I donot know what its application is. Supporting directed graphs is a new thing, but its speed is not well.

``````iterator := GraphTheory[AllGraphs](vertices = 6, edges =6..7, connected, nonisomorphic)
s:=[seq(p, p = iterator)]:
nops(s)
``````

Note that this function is suitable for generating non-isomorphic connected graphs with 6 vertices and either 6 or 7 edges. It doesn't hold an advantage in terms of speed， and`NonIsomorphicGraphs` also provides an iteration option.

## difference in output of solve(identity) in Maple 2...

I have been trying Maple 2024 and found this strange result.

Calling solve(identity...  on same input in Maple 2024 gives very large and complex output compare with Maple 2023.2.1.

This was causing problem, until I found that simplifying the solution now gives same output as Maple 2023.2.1

But why is this now needed in Maple 2024? i.e. why is calling simplify needed when in Maple 2023 the simpler solution was returned automatically?

I changed my code to call simplify now on result of solve(identity...  but I am just curious what happened to cause this?

Below are two worksheets, one from Maple 2024 and one from Maple 2023.2 and you see the huge difference in result.

 > interface(version);

 > Physics:-Version();

 > restart;

 > trial_solution_constants:=[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]]; eq:=-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3; solve(identity(eq,x),trial_solution_constants)

 >

 > interface(version);

 > Physics:-Version();

 > restart;

 > trial_solution_constants:=[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]]; eq:=-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3; solve(identity(eq,x),trial_solution_constants)

 > simplify(%);

 >

## How can I simplify multivariate rational expressio...

I have the following expressions:

 (1)

 (2)

The two expressions are the same because:

 (3)

But I don't get the expression (1) from (2) with the help of simplify() command:

 (4)

Why not? Is there any solution for this?