ML is approached from logic point of view as a problem of maximizing consistency of a hypothesis in a context of a given training set. Nonjudgmental logic (NjL) with modalities ``It appears that'', ``Assume that'' is introduced to formalize and quantify the concepts of inconsistency. Two conjectures are formulated. First, there are only 5 types of steps for all learners. Second, any learner minimizes a criterion, which can be represented as a measure of inconsistency in a semantic of NjL. Many popular ML algorithms (from hierarchical clustering to k-NN and SVM) are shown to corroborate both conjectures. In addition, it is demonstrated that NjL allows to formalize and solve several general learning problems which are not considered as ML usually.