Fundamental Concepts In Computer Science