In expert systems, hierarchical reasoning can provide better accuracy and understandability. Here, we develop a method of learning hierarchical knowledge from a case library, in which each training instance is described by low level features and high level concepts (e.g., manifestations and diseases) but not by intermediate concepts (e.g., disease states). Learning intermediate knowledge involv...