Mathematics & Computer Science
The Mathematics and Computer Science Department enables students to develop the ability to think critically and solve problems using quantitative tools and analytical methods. This is accomplished in an active learning environment that incorporates technology and emphasizes the importance of good technical communications skills, including reading, writing and speaking. An additional objective is to prepare students for graduate school and careers in education, industry and government.
Upon graduating from Muhlenberg College, students majoring in either Computer Science or Mathematics will be able to:
- Use analytic tools, quantitative methods, and algorithms to solve problems.
- Appropriately apply technology to visualize situations, explore concepts, and analyze data.
- Read and master technical material, write precise appropriately detailed arguments, and give articulate presentations in various disciplinary contexts.
- Demonstrate a broad-based knowledge of both the theoretical development and the practical applications of the subject matter.
- Have foundational knowledge of the history and culture of the discipline.
- Remain informed about current developments in the field.
- Develop an intellectual agility that allows them to transfer existing knowledge to other disciplines.
- Take intellectual risks and contend effectively with ambiguity and uncertainty.
- Cultivate individual curiosity.
Mathematics majors will be able to:
- Explain and apply knowledge from both the continuous and discrete realms of mathematical inquiry.
- Reason using abstract and theoretical concepts from subjects such as analysis, algebra, and geometry.
- Interpret, design, and implement applications in fields such as mathematical statistics, differential equations, operations research, and modeling.
- Write and argue effectively using the language of mathematics.
- Construct appropriate models to facilitate problem solving and evaluate the efficacy and significance of such models.
CS majors will be able to:
- Explain and apply advanced concepts in three or more programming languages from two or more different paradigms (procedural, object-oriented, functional, logic).
- Read, write, test, and modify software so that other people can read and modify such material.
- Explain, analyze, design, and apply advanced data structures and algorithms.
- Read, summarize, and discuss current professional literature and develop, present, and review written and oral proposals and reports.
- Work effectively in teams to complete projects lasting weeks or months.