Discrete-Mathematics-DIHT Prepared in frame of the course `Discrete Analysis' at Moscow Institute of Physics and Technology.