Question: Some physical theories such as special theory of relativity are based on the invariance of the speed of light.  

However, is the invariance of the speed of light, in the first place, logically possible?

I'm talking about this version or its equivalence: the speed of light in vacuum is always measured to be the same value from any uniformly moving observer even if at different (but constant) velocities.

Suppose there are two uniformly moving observers at different velocities:  

An observer O moving at constant velocity **v** with respect to some observer  

Another observer (light in vacuum) L moving at constant velocity **c** with respect to the same observer  

where **c** = k \* **v** for some real number k except 1

Also consider the velocity of L with respect to each observers:  

The velocity of L with respect to O = **c** - **v**  

The velocity of L with respect to L itself = **c** - **c** 

If the invariance of the speed of light is true, those values should be identical for O and L are defined as uniformly moving observers.  

Then, we can obtain this equation:  

**c** - **v** = **c** - **c**  

But the solution **v** = **c** contradicts our definition **v** and **c** are different.

Therefore, I believe the invariance of the speed of light is untrue.  

Or is there any error in my disproof above?

Answer: 
Your argument is faulty. You set out to prove that the speed of light cannot be invariant, and you do so by assuming it is not invariant. Specifically, you say that the velocity of L with respect to O is c-v, which means that the velocity of L is not invariant. If L is light in a vacuum then its velocity is c with respect to any other observer.
> 
> Also consider the velocity of L with respect to each observers
> 
> 
> 

What seems obvious to us now wasn't as obvious to people at the time of Galileo. Although we are used to [Galilean transformation](https://en.wikipedia.org/wiki/Galilean_transformation) so much that we consider it trivial and obvious, it is not the only logically consistent way to transform positions and velocities. The usual formula for addition of velocities simply as vectors, ubiquitous in classical mechanics, is a corollary of Galilean transformation, which is only an approximation to the more precise [Lorentz transformation](https://en.wikipedia.org/wiki/Lorentz_transformation) used in relativistic mechanics.

When talking about speeds comparable to speed of light (or when combining any speeds with the speed of light), Galilean transformation is inadequate, and the full Lorentz transformation should be used. After you do this switch, your paradox will be resolved.