Power function: Simplification of 0^a



> By the way: I have forgotten to mention that we have a fourth way to
> implement an unknown sign. We can leave the expression 0^x unsimplified.
>
>   
That might be the safest result.   I am reminded of an issue that
may be worth noting here, that something like  0^x can be ambiguous in 
another way....

 not that the following necessarily makes sense in Maxima, but
it should convey the idea of scope of assumptions..


   block ([x],
             assume(x>0),
             block([x],
                      assume(x<=0),
                       0^x))


now if we return  0^x  to the top level, which x is that?

(This is a concern any time an unevaluated expression is returned./  If 
instead
of 0^x we returned "if x=0 then 1 else 2", what would happen?)

Since assumptions don't follow  block structure scope, this question is 
answered according
to the assumptions all of which are piled on the global symbol x. There 
is another
mechanism of "context" for assumptions. I don't know if anyone is using 
this..

there are languages (e.g. lisp) that can maintain environments....

RJF