6 years, 32 days

## A Ministry of Truth where historical re...

MaplePrimes

Hi,
I just realized inadvertently that it was possible to edit a reply even if you were not the author (mmcdara is my personal account and sand15 my professional one and I modified under the former a reply I'd made with the later).

To be sure of that I've modified the last @acer's answer here 232397-Plotting-Multiple-Vectors-On-One-3D--Graph

`You could show us what you've got so far`

is now

`You could show us what you have got so far`

(I hope @acer will excuse me)

I think this is a weakness of Mapleprimes for no one should be allowed to change what others have written.

## How to have a nice display of piecewise ...

Maple 2015

Hi,

I would like the display of a piecewise-function F with DocumentTools:-Tabulate to look like the one I get with print.
How is it possible to do this?

Here is an example

```restart:
with(DocumentTools):
with(DocumentTools:-Layout):

MV := kernelopts(version);
Maple 2015.2, APPLE UNIVERSAL OSX, Dec 20 2015, Build ID 1097895

# Extract the version number for subsequent use
MV := parse(substring(StringTools:-Split(convert(MV, string), ",")[1], 7..-1))

# I want to display F and G while using DocumentTools
# As you see the display of F is not very pretty.
# This is not a problem related to the "height" of the formula for G is pretty-displayed
# even if it as roughly the same "height" than F

F := piecewise(seq(op([x<k, k]), k=1..5)):
g := x -> 1/(1+x):
G := (g@@5)(x):
Tabulate([F, G]):

# using DocumentTools:-Layout doesn't help

C1 := Cell( Textfield(style=TwoDimOutput,Equation(F))):
C2 := Cell( Textfield(style=TwoDimOutput,Equation(G))):
T  := Table(Column(),Column(),
Row( C1, C2 )
):

if MV < 2018 then
InsertContent(Worksheet(Group(Input( T )))):
else
InsertContent(Worksheet( T )):
end if;
```

This is what DocumentTools:-Tabulate displays

DocumentTools_piecewise.mw

TIA

## How to extract an operator of a given fo...

Maple

Let expr defined this way

```expr := piecewise(x(t)<0, -1, x(t)<1, 0, 1) + f(t) + piecewise(t<0, 0, t<1, 1, 0) + x(t)*piecewise(t<0, 1, t<1, 0, 1) + a*piecewise(t<0, 3, t<1, -1, 2)
```

How can I extract all the operators which contain a piecewise function of  t alone (the three bold operators in the expression above)?

TIA

## Two questions about Logic package and a ...

Maple 2015

Hi,

First question
Let P1 the logical proposition

```restart
with(Logic):
local O
P1 := (&not O) &and (&not C) &implies (&not Q);
```

Is it possible to obtain its contraposition P2  in a form that contains &implies?

```# P2 := (Q) &implies &not ((&not O) &and (&not C));
```

Second question
Why does the modulo 2 canonical form of proposition P5 above contains "1" "plus" other terms:
(if 1 is present this means 1 + something = 1 and then that P5 is a tautology, which is obviously wrong as Tautology(P5) shows)

```restart
with(Logic):
local O
P1 := (&not O) &and (&not C) &implies (&not Q);-
P2 := (Q) &implies &not ((&not O) &and (&not C));
P3 := op(1, P2) &and (&not C);
P4 := op(2, P2) &and (&not C);
P5 := P3 &implies P4:

Canonicalize(P5, {O, C, Q}, form=MOD2)

C O Q + C Q + O Q + Q + 1

```

Verificaion of what the modulo 2 canonical form of a proposition including an "addititive" tautology is

```T := O &or (&not O):
Canonicalize(T, {O}, form=MOD2);
Canonicalize(T &or S, {O, S}, form=MOD2);
1
1
```

Is it that I missed something or is iot a bug?

Watchout: this result has been obtained with Maple 2015.2

TIA

## How to compute te expectation of an abst...

Maple 2015

Let E be a random variable of expectation mu and A an algebraic expression containing no random variable.
If E has any known Maple distribution, then  Mean(A+E) = A+mu.

But if E is an "abstract" random variable, Mean doesn't seem capable to compute the expectation of A+E.
Notional example:

```restart:
with(Statistics):
E := RandomVariable(Normal(mu, sigma)):
Mean(f(x)+E)
f(x) + mu
E := RandomVariable(Distribution(PDF = (z -> f(z)), Mean=mu)):
Mean(f(x)+E);
int((f(x) + _t) f(_t), _t = -infinity .. infinity)

IntegrationTools:-Expand(%);
f(x) (int(f(_t), _t = -infinity .. infinity)) + (int(f(_t) _t, _t = -infinity .. infinity))
```

Questions:

• Why does Mean not behave as expected for an abstract random variable?
• Is there a simple way to obtain the expected result (Mean (A+E) = A+mu) (maybe by completing the definition of the distribution of E, or by any other means)?

TIA

PS: I know that I can replace Mean(A+E)  by A+Mean(E)  to obtain the desired result: this is not the type of answer I look for.

PS: I know (since Carl Love showed me how long ago) that I can define a "random variable" plus an operator Expectation such that Expectation(A+E)  by A+Expectation(E) ... but it's not a way I would call simple

```Expectation := proc(e::algebraic)
local a,b;
if not hastype(e, RV) then e
elif e::RV then 'procname'(e)
elif e::`+` then map(thisproc, e)
elif e::`*` then
(a,b):= selectremove(hastype, e, RV);
b*thisproc(a)
else 'procname'(e)
end if
end proc:

#------------------------------------------------------------------------

RV,
{RandomVariable,
'RandomVariable^posint',
'`*`'({RandomVariable, 'RandomVariable^posint'})
}
):
eval(Expectation(f(x)+E), Expectation=Mean)
f(x) + mu
```

 5 6 7 8 9 10 11 Last Page 7 of 33
﻿