The program "thinks" like this: if it has a positive answer to a symptom, it goes on with the symptoms from that disease. If only one symptom from the disease is negative it "jumps" to the first symptom from the next disease. Of course, it takes into account the category symptoms also. If at least one symptom from the category is negative, the program goes to the next disease. If all the category symptoms are affirmative, it goes on to the symptoms which make the difference between this disease and the other diseases from this category.