Thanks a lot for the answers ,makes more sense to me now . Just thought of asking this because I realized that there are some use cases of the above .
A simple one being that some expressions of the form Product( f(x) , (x , 1 ,oo)).doit() which would eventually diverge could return oo instead of returning self like
x = Symbol('x' ,integer =True, Positive=True)
Product( x , (x , 1 ,oo)).doit()
Product(1 +1/x**S(2/3) , (x, 1 ,oo)).doit()
As these calculations would involve 1**oo in the code workflow , returning 1 instead of nan would solve the problem as per our convenience but wasn't sure if it's correct in all Mathematical aspects !!!!!
What I personally felt or rather what I used to believe without much mathematical insight was that
" anything tending to 1 and not exactly 1" raised to the power of " anything tending to oo (always the case as oo is not exact /defined )" should give nan and correctly represents an Indeterminant form .
Like we do in case of limits
Here the expression tends to 1 and is not exactly 1 .
But .....
" exact 1 " raise to the power of "anything tending to infinity" would be 1 !!!
I will surely give more thought about this considering mathematical correctness and other aspects!