Are there any algorithms (or software libraries) that can be used to detect the similarity of concepts in text, regardless of articulation, grammar, synonyms, etc.?

For example, these phrases:

> 
> Outside, it is warm.
> 
> 
> Outside, it is hot.
> 
> 
> Outside, it is not cold.
> 
> 
> It is not cold outside.
> 
> 
> 

Should be similar to this phrase:

> 
> It is warm outside.
> 
> 
> 

Ideally, the algorithm (or software) would be capable of generating a score from 0 to 1, based on the concept similarity. The goal is to use this algorithm or software to map a large number of statements to a single, similar original statement. It is for this mapping of a given statement to the original statement that the aforementioned similarity score would be generated.

Does such an algorithm (or software) already exist?