How does Maple find limit and how to define/assume a general CDF function

I was testing if Maple can prove/show limit(a*(1-F(a)), a=infinity,left)=0, where F(.) is a general cumulative distribution function. Though, I doubt Maple has the ability.  However, I come across with some other questions during the exploration:

1. how is maple exactly doing to find limit:
Let's first try a normal distribution case:
 

with(Statistics):
U := RandomVariable(Normal(s,t))  :
limit(CDF(U,x),x=infinity,left)  assuming t>0,t<infinity ;

It returns one even if I drop "t<infinity". But if I put the assuming clause after the definition of U as follows, it fails:

with(Statistics):
U := RandomVariable(Normal(s,t))   assuming t>0,t<infinity :
limit(CDF(U,x),x=infinity,left)  assuming t>0,t<infinity ;

Then, I tried the Chi-square distribution:

U:=RandomVariable(ChiSquare(nu));
limit(CDF(U,x),x=infinity,left) assuming real assuming nu>0,nu<infinity;

It fails. However, CDF(U,infinity) always returns one in the cases above. It seems I have not capture the way Maple derive the limit or how assume facility works.

 

2. To show this limit proposed in the begining. I come up with an idea to define firstly a general cumulative distribution function F(.) using assume and define command:

assume(F,continuous,F,monotonic);
define(F,F(-infinity)=0,F(infinity)=1);
limit(x*(1-F(x)),x=infinity,left);

But it fails. It think the assume and define statements here are not enough to help Maple to understand F(.) is a CDF. Furtheremore, the information that F(.) is a CDF is not enough for Maple to solve this limit. Right?

Thanks.

 

assume continuous

The property 'continuous' is mentioned in ?property:

A property can be:
(1) a property name, for example, assume(f, continuous)...

but I do not see any example or description of its use. I do not find obvious for me how it is intended to work without an specification of a domain where this property holds. May be that a default is assumed (eg -infinity..infinity)?

It appears that somehow this property should be dealt as in 'iscont':

iscont( tan(x), x=0..1);
                                 true

iscont( tan(x), x=0..2*Pi);
                                false
alec's picture

For integration

The option 'continuous' can be used for integration, but I am not sure whether it is related to the property 'continuous', or not.

Just found an interesting phrase in the ?examples,IntegrationMaplet ,

3.  The int option 'continuous' speeds up the integration routine, as it assumes the integrand (and therefore the resulting integral) is continuous.

As we know - it is not "therefore" in Maple. The ?int,details page says:

Note that the indefinite integral in Maple is defined up to a piecewise constant. Hence, the results returned by int may be discontinuous at some points.

Alec

A hint?

I see this paper with an example of this property not working:

is(x -> (1/x)+1-(1/x),continuous);
                                false

but I do not find this counterexample very significant as these ones neither work:

is(x -> x,continuous);
                                false

is(x -> 1,continuous);
                                false
alec's picture

Even constants are not continuous?!!!

Even constants are not continuous?!!!

Amazing!!!

They are also not monotonic!

is(1,monotonic);
                                false

Alec

JacquesC's picture

functions vs expressions

It should be clear from the above that Maple's is function deals with continuity of expressions, not functions.  Mathematically, that might seem very weird indeed, but that's because Maple works best with representations of functions (ie expressions) rather than functions themselves.

Mathematicians do not make much of a difference between these two concepts, but in a computerized context, it makes a huge difference.

Continuity of expressions

Yet, with expressions, it is not explained how to use it, and what to expect:

is(x ,continuous);
                                false

is(1,continuous);
                                false

assume(x,continuous);
is(x ,continuous);
                                 true

is(x+1 ,continuous);
                                 FAIL

In regards to functions, the example of that paper is the first explicit example on the use of 'continuous' in this context that I have seen. My first expectation was that the authors were familiar with this subject. Apparently not...

alec's picture

A counterexample

Consider this example:

F:=piecewise(x<1,0,1-1/sqrt(x));

It satisfies all of your conditions, and the limit is infinity.

Alec

avoid global assumptions

Are you saying your Maple returns infinity. But It works on mine to return one. I am using v11.02.

Now Maple can show the intitial proposal raised in the beginning.

with(Statistics):
rv:=RandomVariable(Normal(mu,sigma)):
Fc:=1-CDF(rv,x):
limit(Fc*x,x=infinity,left) assuming sigma>=0;

It works. It seems we should avoid global assumptions like "real", thanks to Axel Vogt's reply in this discussion.

Jakubi: The paper you recommended opens the door for me to the core issue. Thanks.

 

 

alec's picture

My Maple

Such thing as "my Maple" doesn't exist. I found that limit (and that example) mentally - without Maple. But now, when you asked, I connected remotely to one of servers with Maple, and checked that Maple is also able to find it,

F:=piecewise(x<1,0,1-1/sqrt(x));

                        {    0              x < 1
                        {
                   F := {      1
                        { 1 - ----        otherwise
                        {      1/2
                        {     x

limit(x*(1-F),x=infinity);

                               infinity

That contradicts to your "proposal 2."

Also, Maple has no problems with finding

limit(F,x=-infinity);
                                  0
limit(F,x=infinity);
                                  1
iscont(F,x=-infinity..infinity);
                                 true

Alec

You are right

Thanks, Alec. To show this proposal, we need E(x)<infinity. Is it enough? Is there a way Maple can establish and understand this assumption well? In addition, I am always uncertain if "assume(y<infinity)" is a correct way to establish an upper bounded real variable in Maple.

You guys' discussion on continuity assumption is also quite helpful.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
}