Discrete mathematics & theoretical computer science