Suppose we have two sets A={a,b,c} and B={a,c}. And we write
> A union B;
we get {a,b,c}. But I want this to be replied as A only. How this can be done?
Thanks.

While responding to a question about creating a new type, I suggested that a module could be used as the data-structure. To type check a given expression against the new data-structure, one can use

type( some_expr, '`module`'( 'export1', 'export2' ))

where export1 and export2 are exports of the module. That technique, however, is not robust in that any module with those exports (and possibly others) matches the type. While that may not be a concern, there is a way to uniquely type check a constructed module: give it an export equal to a local value. Here is a demonstration of the technique:

How can a new type be defined in Maple? For example a type named fst and given as [list of numbers between 0 and 1 inclusive, list of anything].
Further whenever this fst type object is encountered it is printed useing elements of first sublist as subscripts of elements of second sublist.
Thanking in anticipation.

Currently saving the worksheet and removing the output can only
be done via the menu. It would be nice if these tasks could be performed
using commands. If this would possible, one could for example start the worksheet
with
restart;removeoutput;saveworksheet;
and never loose any programming after rerunning the script.
Furhtermore, a hard break statement stopping completely the excution of
the worksheet would be nice. If the current break break statement is executed, the result is to exit from the innermost repetition (for/while/do) statement within which it occurs. After exit, execution proceeds, with the first statement following the repetition statement.

A member recently asked for a description of the mw or mws worksheet format. Click on the following link to download a pdf that I created a couple years ago that describes the syntax of the older mws format. It isn't complete, but covers most of the constructs that one is likely to need. To get a good practical understanding of the mws format, I wrote

mws-mode.el, an emacs-mode that displays mws files in a structured manner.

Download 84_mws-syntax.pdf
Hi, all.
I want to write viewer/converter for mw/mws, so mw/mws format description needed. Google say nothing about mw/mws format. search.maplesoft.com likewise.
Can somebody help me with mw/mws format description? Is it possible to obtain such info from Maple developers? Is reverse engineering of mw/mws prohibited?

I just moved all my MAPLE files to my new laptop.
Icons from Maple9.5 files made on a windows machine are missing and files do not open at all--error message -10814.
Files from an imac running 9.5 also do not open when double clicked but can be opened after selecting the "Open With Maple 9.5". This has to be done one file at a time.
The system has Java 1.4.2 and 1.3.1.
Any help appreciated.
Thanks,
Roger

Playing with the integral
int(cosh(v)/sqrt(sech(v)-sech(vm)),v=0..vm);
I have tried numerical integration with different methods and got errors for small vm. Eg. with plain
N2:=vm->evalf(Int(cosh(v)/sqrt(sech(v)-sech(vm)),v=0..vm));
N2(.01);
returns unevaluated, and with the NAG method
N3:=vm->evalf(Int(cosh(v)/sqrt(sech(v)-sech(vm)),v=0..vm,method = _d01ajc));
I get these error messages:
N3(.01);
Error, (in evalf/int) unable to obtain a real result
N3(.001);
Error, (in evalf/int) NE_QUAD_ROUNDOFF_TOL:
Round-off error prevents the requested tolerance from
being achieved: epsabs = 5.0e-013, epsrel = 5.0e-010.

Currently (in maple 10.04 and presumably earlier), Maple refuses to expand the natural log of an abstract product, so:
```
v1 := ln( product(x[i], i=1..n) ):
expand(v1) assuming positive;
```

yields:
`ln( product(x[i], i=1..n) )`

(Note the use of "assuming positive" so this makes sense mathematically.) The funny thing is that, if you `print(`expand/ln`)`

, it looks like they're trying to handle this situation:
```
...
elif type(x, 'product'(anything, anything)) then
s := signum(op(1, x));
if s = 1 then sum(ln(op(1, x)), op(2, x))
```

In this episode Tom talks with Dr. Janos Pinter about how to optimize decisions under resource constraints, the early days of computing, and his thoughts about studying in a communist country. He joins us via telephone from Halifax, Nova Scotia. Eithne Murray stops by again to discuss the fascinating world of programming in Maple; and we have also information about using the new Intel-based Mac port of Maple and a new e-book on understanding and computing derivative securities.

Click here to get the latest episode.

> (MathML[Import])("<math>

<mrow>

<munder>

<mrow>

<mi>lim</mi>

</mrow>

<mrow>

<mi>x</mi>

<mo>→</mo>

<mi>a</mi>

</mrow>

</munder>

<mi>x</mi>

</mrow>

</math>");

lim x

it took some time, a little help by this forum and the excellent maplesoft-support, but here is how it worked on my SuSE 10.1:
As root:
-Create a directory and copy your installation files into it, i.e. from the delivered CD
-The trick is to edit the installer script with binary mode vim
(using the -b flag: vim -b LinuxInstaller.bin)
-Then scroll down to the first instance of "export LD_ASSUME_KERNEL" and replace the 'e' in 'export' with '#'. This comments out the line and evidently leaves the installer size intact so those compression errors are bypassed
-Save and quit the file
As your maple-user:

Hi all,
Using maple 10 classic version, I am working with the below function of f(x):
restart;fx:=cos(x)+2*sin(x);plot(fx,x=0..2*Pi,y=-3..3);
I would like maple to show the x-axis values as radian instead of 0 to 6. How do I do this?
If I now differenciate fx and find the value of zero I get the answer of arctan(2)
fmx:=diff(fx,x);solve(fmx=0,x);
Now I would like to visualise this by plotting a line from x=arctan(2) vertically to function f(x). How do I do this??
The maths is in place, its just getting maple to do what I want it to that creates problems ;-)
Thanks in advance for any help.

Maple 9.52 outputs 0 to the expression, specified in the title:

> int(Dirac(x)*Heaviside(x+c), x=a..b);

0

while the answer I expect should be: Heaviside(c) if 0 belongs to [a..b], and 0 if [a..b] does not contain 0. In other words, it should be Heaviside(c)*(Heaviside(b)-Heaviside(a)).

Is my expectation correct? If it is, how to force Maple to provide the correct output?

Thanks in advance,

Anton Travleev.