Cognitive Computing makes a new class of problems computable, which addresses complex situations that are characterized by ambiguity and uncertainty. it is the simulation of human thought processes in a computerized model. It also involves self-learning systems that use data mining, pattern recognition and natural language processing to mimic the way the human brain works. Cognitive computing has been subject to a great deal of marketing hype over the years and there continues to be a struggle with finding a non-proprietary definition.