This course covers the logic and proofs, basic structures (like sets, functions, and matrices) , algorithms, and counting techniques. Programming languages like C, C++, and Java are likely to be used in the application of those theories aforementioned.