hilbert
hilbert copied to clipboard
One-sided limits aren’t implemented, and also some calculations don’t work
@jackmaney was unable to post an Issue, so I’m posting it for him:
Looking through the README, the first thing that made me balk was the fact that the limit of
1/x
asx->0
is not infinity. The limit doesn't exist! However:
- The limit as x goes to zero from the right of
1/x
is infinity, and- The limit as x goes to zero from the left of
1/x
is negative infinity.So, to quickly determine whether or not this was just a documentation issue, I installed Hilbert (and eventually succeeded) and tried to discover the syntax for one-sided limits:
Enjoy! -> lim[x->0+] 1/x Enjoy! ->
Hmmm...no output. Okay. Does any output work?
Enjoy! -> 3+2 5 Enjoy! ->
Okay, good, we at least have that much... Hmmm...
Enjoy! -> lim[x->0^+] 1/x Enjoy! ->
Nope, that's not it, either. Poking at the source code, it doesn't seem as though one-sided limits are implemented.
Well, okay, how about a simpler limit?
Enjoy! -> lim[x->0] x+2 Enjoy! ->
Uhhh...okay, how about some differentiation?
Enjoy! -> d/dx(cos(x)) I'm so sorry, something wrong. Please feel free to report this. Enjoy! ->
This error message is of no use, and I have no idea what's going on, but this language appears to be broken.
The calculations not working is probably the same problem as #66. But implementing one-sided limits sounds like a new and valid request.
Limits are an incredibly tricky thing to implement. Here's a great thesis on the very subject...a modest 152 pages, and it doesn't even scratch the surface of the subject!