What’s the difference between jump and removable discontinuity?
First of all, we are talking about a behavior of a function around some particular value of an argument.
Let’s assume our function is represented as ##y=f(x)## and its behavior around the value of argument ##x=a## is what we are analyzing.
Also assume that the following two limits are properly defined, exist and are finite:
1. Limit of the function as argument ##x## approaches a value ##a## from the left:
##c=lim_(x->a^-)f(x)##
2. Limit of the function as argument ##x## approaches a value ##a## from the right:
##d=lim_(x->a^+)f(x)##
If the above limits are equal and a function ##f(x)## is defined at ##x=a## and its value is the same as these limits, we have no discontinuity.
In other words, the condition for not having a discontinuity is
##lim_(x->a^-)f(x) = lim_(x->a^+)f(x) = f(a)##
Example of a function with no discontinuity is
##y=|x|##:
graph{|x| [-10, 10, -5, 5]}
If the above limits are not equal, we have a jump discontinuity.
In other words, the condition for a jump discontinuity is
##lim_(x->a^-)f(x) != lim_(x->a^+)f(x)##
Example of a function with a jump discontinuity at ##x=0## is
##y=-1## for negative ##x##,
##y=1## for positive ##x## and
##y=0## for ##x=0##:
graph{x/|x| [-10, 10, -5, 5]}
Finally, If the above limits are equal but a function ##f(x)## is either not defined at ##x=a## or is defined, but its value is not the same as these limits, we have a removable discontinuity.
In other words, the condition for a removable discontinuity is
##lim_(x->a^-)f(x) = lim_(x->a^+)f(x)## AND
##f(a)## IS UNDEFINED OR ##f(a) != lim_(x->a^-)f(x)##
Example of a function with removable discontinuity is
##y=x^2## everywhere except ##x=0## and
function is undefined at ##x=0## :
graph{x^3/x [-10, 10, -5, 5]}