In a society becoming ever more mathematical and computerized, the department seeks to provide courses which introduce all students to the ideas of mathematics and computer science. The department also provides advanced courses for those wishing to specialize in one of these areas. We teach these technical concepts in a manner consistent with the liberal arts aim of the College and in a way that encourages the student to use these abilities to serve others.
Mathematics Curriculum
The mathematics curriculum presents the basic concepts and methods in modern mathematics to develop the student's ability to reason deductively and the ability to apply quantitative methods to other disciplines. The mathematics major provides the mathematical background for students preparing for:
-
a career in a quantitative field, including data science, statistics, finance, engineering, or actuarial science,
-
a career in mathematics secondary education,
-
graduate study in a mathematical discipline.
Calculus Readiness Assessment:
Students who plan to enroll in MATH 135 Calculus for Business & Social Sciences or MATH 235 Calculus I must have credit for MATH 131 Precalculus or demonstrate precalculus competence on Wheaton College’s Calculus Readiness Assessment (CRA), a dynamic, online assessment that evaluates students’ strengths in arithmetic, algebra, trigonometry, and analytic geometry. The passing score is 60% to enroll in MATH 135 and 75% to enroll in MATH 235. The CRA can be accessed through the Calculus Readiness Assessment link on the Wheaton College student portal. Here is a short video to help find this link.
The assessment comes with a set of learning modules designed to help students “brush up” on precalculus skills before attempting the CRA. These learning modules remain available until 6 weeks after the semester begins. Though the assessment is un-proctored, students are expected abide by the assessment procedures honestly, i.e., with no outside help or equipment other than the calculator app provided by the program. The assessment is typically completed in 60-90 minutes. Students who do not meet the passing score are encouraged to enroll in MATH 131.
Computer Science Curriculum
The curriculum in computer science presents the fundamentals of computation—the science underlying the computing technologies that have become so pervasive in contemporary society. This foundation better prepares one to make choices about how those technologies can and should be applied, at the organizational and societal levels, as well as individually. The deeper study required of a computer science major provides experience in the discipline's methods of analysis and problem-solving. Furthermore, experimental work throughout the curriculum allows majors to develop skills in the design, analysis, and development of software systems, and so provides excellent preparation for a computing-related career, as well as for graduate study in computer science or engineering.
Chair, Professor, Danilo Diedrichs
Professors, Mary Vanderschoot, Thomas VanDrunen
Associate Professor, Hyunju Kim
Assistant Professors, Peter Jantsch, Devin Pohly
Assistant Lecturer, Martha Van Zee
Emeritus, Paul Isihara
- Mathematics Major
- Mathematics Major with Teaching
- Mathematics Minor
- Philosophy Major Integrated with Mathematics
- Computer Science Major
- Computer Science Minor
- Endorsement in Data Science and Statistics
- Extended Studies in Major Endorsement: Computer Science
- Extended Studies in Major Endorsement: Mathematics
Mathematics Courses
MATH 106. Mathematics for the Benefit of Mission and Society. (4 Credits)
An overview of how mathematics benefits the mission of the Church and society worldwide, with special regard for those who are suffering and/or marginalized. Examples will be drawn both from history and our contemporary world.
Tags: AAQR
MATH 107. Finite Mathematics and Applications. (4 Credits)
Designed to provide the mathematical tools that a college graduate is likely to encounter in his or her work. Core topics include systems of linear equations, mathematics of finance, and basic probability and statistics. Additional topics may include game theory for decision making, linear programming, iterated processes, or networks. Extensive use of spreadsheet programs. The course illustrates the relevance of mathematics to life applications by taking real or realistic examples from business, economics, social sciences, and life sciences.
Tags: AAQR
MATH 121. Data Science I. (4 Credits)
This course combines inferential thinking, computational thinking, and real-world relevance. The course teaches critical concepts and skills in computer programming and statistical inference, in conjunction with hands-on analysis of real-world datasets from a variety of disciplines/industries. The course also covers current ethical issues pertinent to decision-making data. Prerequisite: Precalculus knowledge.
Tags: AAQR
MATH 125. Mathematics for Elementary and Middle Grade Education. (4 Credits)
Set theory, numeration systems, number theory, and properties of the natural numbers, integers, rational, and real number systems with an emphasis on problem solving and critical thinking. Selected topics from geometry, algebra, probability, and statistics. Prerequisite: EDUC 101 and EDUC 135.
Tags: AAQR
MATH 131. Precalculus. (4 Credits)
A course in elementary functions intended to prepare students for MATH 135 or MATH 235. Topics include the properties of the real number system, inequalities and absolute values, functions and their graphs, solutions of equations, polynomial functions, trigonometric functions, exponential, and logarithm functions. Emphasis on using functions to model physical or social systems.
Tags: AAQR
MATH 135. Calculus for Business & Social Sciences. (4 Credits)
This course covers the ideas of calculus, emphasizing applications to business and the social sciences. Topics include limits, definitions and applications of the derivative and integral, and functions of one or more variables. Three lectures, two hours drill. Prerequisite: Minimum 60% on Calculus Readiness Assessment or MATH 131.
Tags: AAQR
MATH 235. Calculus I. (4 Credits)
The limit concept. Definitions of the derivative and integral of functions of one variable, with basic properties and applications. Transcendental functions, methods of integration. Three lectures, two hours drill. Prerequisite: Earning 75% on the Calculus Readiness Assessment or MATH 131 or AP Calculus AB score of 3.
Tags: AAQR
MATH 236. Calculus II. (4 Credits)
Techniques of integration; applications of integration; infinite sequences and series; parametric equations; and polar curves. Three lectures, two hours drill. Prerequisite: MATH 235 with a minimum grade of C-.
MATH 237. Calculus III. (4 Credits)
Three-dimensional analytic geometry; multivariable differential and integral calculus; vector algebra; line integrals and surfaces integrals; Green’s, Stokes’, and the divergence theorems. Prerequisite: MATH 236.
MATH 241. Introduction to Proofs. (2 Credits)
Propositional logic, quantifiers, elementary proof techniques and strategies. An introduction to set theory, including operations on sets, definition of functions, relations. Basic number theory including divisibility, primes, greatest common divider, Euclidean Algorithm. Induction and well-ordering. Permutations and combinations. Axiomatic systems. Prerequisite: MATH 236 . Pre or Corequisite: MATH 245.
MATH 245. Linear Algebra. (4 Credits)
Starting with solving systems of linear equations, matrix algebra is used to explore vector spaces and linear transformations. Emphasis is given to bases, dimension, eigenvectors, and orthogonality. Prerequisite: MATH 235.
MATH 263. Introduction to Statistics. (4 Credits)
An introduction to statistics, sampling theory, and statistical decision making from a solid mathematical basis for non-mathematics majors. Topics chosen from discrete and continuous distributions, moments, hypothesis testing, correlation and multiple correlation, regression (linear, multivariate, logistic), ANOVA, contingency tables with tests for independence, sampling theory, and rudimentary non-parametric statistics. Students will use selected software packages for data processing and analysis and will need access to a laptop and a graphing calculator with an inverse t-distribution function. Prerequisite: MATH 131 or Precalculus knowledge.
Tags: AAQR
MATH 301. Intro to Upper-Level Math. (2 Credits)
Introduction to learning and communication processes used in upper-level mathematics: primary literature sources, presenting mathematics in writing and orally using specialized software. The vocation of a mathematician: ongoing research developments, professional opportunities in academia and in the industry. For sophomore or junior math or applied math majors only. Prerequisite: MATH 236. Pre or Corequisite: MATH 245.
MATH 314. Problem Solving Seminar. (2 Credits)
Mathematical problem solving aimed at students who enjoy solving problems in a variety of areas of mathematics, and who would like to strengthen their creative mathematical thinking. Students are required to take the William Lowell Putnam Undergraduate Mathematics Competition. Prerequisite: MATH 236 and MATH 245.
MATH 324. Methods of Teaching Mathematics. (2 Credits)
Theories and methods for teaching mathematics at the secondary level. Topics include cooperative learning, classroom management, and creative teaching ideas. Consideration of current math technology and curriculum standards. Required of mathematics majors in WheTEP, prior to student teaching. Prerequisite: EDUC 225 and EDUC 225L or EDUC 521L.
MATH 325. Methods of Teaching Middle Grade Mathematics. (2 Credits)
Theories and methods for teaching mathematics at the middle grade level. Topics include effective teaching strategies, planning, and assessment of math content. Based on current state and national content and teaching standards. Prerequisite: EDUC 225 and EDUC 225L or EDUC 521L.
MATH 333. Differential Equations. (4 Credits)
An introduction into the theory, methods of solution, and selected applications of ordinary differential equations. Topics include first order equations, second order linear equations with constant coefficients, numerical analysis of ordinary differential equations, Laplace Transforms, series solutions, and systems of differential equations. Prerequisite: MATH 236.
MATH 341. Modern Algebra. (4 Credits)
An introduction to the theory of groups, rings, and fields. Topics in group theory include Lagrange’s theorem, quotient groups, applications to geometry, public key cryptography, and finitely generated abelian groups. Topics in ring theory include ideals, quotient rings, and polynomial rings. Topics in field theory include field extensions, Euclidean construction problems, cubic and quartic equations. Prerequisites: MATH 245 and (MATH 241 or CSCI 243), or consent of instructor.
MATH 351. Real Analysis. (4 Credits)
Derivation of the properties of continuity, differentiability, integrability, and convergence by use of the limit concept and basic axioms of the real number field. Prerequisite: MATH 236. Pre or Corequisite: MATH 241 or CSCI 243.
MATH 352. Complex Analysis. (4 Credits)
An introduction to functions of a complex variable. Topics include the algebra and geometry of complex numbers, mappings of the complex plane, elementary analytic functions, complex functions defined by power series, and differentiation and integration of complex functions. Prerequisite: MATH 237 (MATH 351 recommended). Pre or Corequisite: MATH 241 or CSCI 243.
MATH 362. Geometry. (4 Credits)
Selected topics from finite, affine, projective, Euclidean and non-Euclidean geometry from both the axiomatic and transformation approaches. Prerequisite: MATH 245. Pre or Corequisite: MATH 241 or CSCI 243.
MATH 363. Probability Theory. (4 Credits)
An introduction to probability theory, including discrete and continuous distributions. Topics covered include independence, conditional probability, expectation, variance and covariance, random vectors, and the central limit theorem. Students will need access to a non-CAS (Computer Algebra System) graphing calculator with an inverse t-distribution function. Prerequisite: MATH 236 and MATH 245.
MATH 364. Mathematical Modeling. (4 Credits)
This applied course teaches mathematical modeling techniques used in the natural and social sciences including discrete and continuous dynamical systems, optimization, stochastic and data-driven models based on statistical methods, regression and interpolation. Analytical and numerical methods are used alongside computer simulations to study models used in biology, ecology, economics, epidemiology, meteorology, pharmacology, sociology, and supply chain logistics. Prerequisite: MATH 236 and MATH 245. Pre or Corequisite: MATH 237.
MATH 385. Topics in Applied Mathematics. (4 Credits)
A topic selected for each semester in which the course is offered that focuses upon a particular applied mathematics discipline in a way that brings important mathematical theory and methods to practice. Possibilities include MATLAB modeling, Numerical Analysis, Dynamical Systems, Applied Linear Algebra, Operations Research, Cryptography, or Applied Discrete Math. Prerequisite: MATH 236 and MATH 245 or consent of instructor.
MATH 386. Topics in Statistics. (4 Credits)
A topic selected for each semester in which the course is offered that focuses upon a particular application in depth and goes beyond methods covered in MATH 363. Some possible topics include Bayesian Analysis, Machine Learning, Nonparametric Methods, Regression, or Structural Equation Modeling. Prerequisite: MATH 363.
MATH 433. Partial Differential Equations. (4 Credits)
Partial differential equations (PDE's) are differential equations involving functions of multiple independent variables and partial derivatives. PDEs are ubiquitous in the natural sciences, especially physics and engineering, appearing in mathematical models that vary in time and space such as diffusion, fluid flow, vibrating strings and membranes, waves (sound, electromagnetic), transport phenomena, and quantum mechanics. The course focuses on analytical methods for solving PDEs with extensions into Fourier theory, L2 theory, and Sturm-Liouville theory. Prerequisite: MATH 237, MATH 245, and MATH 333.
MATH 441. Algebra II. (4 Credits)
Advanced group theory, including group actions and Sylow theorems. Module theory with selected applications. Galois theory of field extensions. Multivariable polynomial rings with applications of Groebner bases. Introduction to the concept of categories. Prerequisite: MATH 341.
MATH 451. Analysis II. (2 or 4 Credits)
Study of topics from real analysis. Prerequisite: MATH 351.
MATH 463. Mathematical Statistics. (4 Credits)
Starting from a review of probability distributions and their underlying assumptions and features, this course focuses upon statistical inference and data analysis. Topics will be chosen from parametric hypothesis testing, ANOVA, contingency tables and tests for independence, regression techniques and some Bayesian/non-parametric methodology. Students will use selected software packages for data processing and analysis and will need access to a laptop (Windows/Mac/Linux OS) as well as to a non-CAS (Computer Algebra System) graphing calculator with an inverse t-distribution function. Prerequisite: MATH 363.
MATH 464. Bayesian Statistics. (4 Credits)
Students will study advanced statistical analysis methods from a Bayesian perspective. The course will cover all the fundamental concepts of Bayesian methods, including Bayes Rule, hierarchical models (a.k.a. multilevel models), Markov chain Monte Carlo (MCMC) methods, and the use of STAN as the modeling algorithm. Methods will be applied to various types of data. Inference and model fit measures will be discussed. Prerequisite: MATH 363.
MATH 465. Applied Machine Learning. (4 Credits)
An introduction to machine learning that emphasizes application to data. Both supervised and unsupervised methods are discussed, including classification, clustering, regression, and feature selection, along with neural networks/deep learning. Prerequisite: MATH 363.
MATH 485. Advanced Topics in Mathematics. (2 or 4 Credits)
Advanced topic in pure or applied mathematics. MATH 485-P designates a pure mathematics topic (such as topology, number theory, differential geometry, multilinear algebra, or operator theory). MATH 485-A designates an applied mathematics topic (such as numerical analysis, dynamical systems, operations research, cryptography, or combinatorics). Prerequisite: Prerequisites vary by topic.
MATH 493. Mentored Research Seminar. (2 or 4 Credits)
Faculty and student collaboration on a research project in pure or applied mathematics. MATH 493-P designates a research project in pure mathematics. MATH 493-A designates a research project in applied mathematics. Limited enrollment - faculty approval required. Prerequisite: Faculty approval required.
MATH 494. Senior Seminar. (2 Credits)
A survey of the history and philosophical foundations of mathematics, and also its current research trends and cultural impact. Students will discuss the diverse vocations of a Christian including their fulfilment of God’s kingdom, equity, and social justice, as well as the stewardship of mathematical ability for the flourishing of society via research, teaching, and industry. Students will also engage in projects involving literature review, creative teaching and problem solving, mathematical models, or statistical analysis. Prerequisites: Junior or Senior standing in the Mathematics major.
General Education: SHAR
MATH 495. Problems In Mathematics. (1 to 4 Credits)
Independent study for senior majors. A maximum of two hours can be applied to the major.
MATH 496. Internship. (1 to 4 Credits)
Graded pass/fail. Prerequisite: Junior or Senior standing with Mathematics major.
Computer Science Courses
CSCI 212. Computer Programming Principles. (2 Credits)
A gentle introduction to computer programming using the principles of algorithmic thinking. Intended for students who intend to take CSCI 235 in a future semester but desire a slower-paced first experience with programming. Course is offered occasionally.
CSCI 232. Programming for the Mathematical Sciences. (4 Credits)
An introduction to computer programming for students who want to apply programming to mathematics or the natural sciences. Topics include problem-solving, types, control structures, and functions. Programming is taught using Python or a similar language and libraries for statistics and numerical processing. Not open to students who have passed CSCI 235 or the equivalent.
CSCI 234. Programming for Business Analytics. (4 Credits)
This course will provide an introduction to programming using Python or a similar language for students who have little or no prior experience in programming. Topics include basic problem-solving techniques, algorithm development, decision and repetition structures, input and output functions, file handling, basic data structures, and introduction to object-oriented programming. Not open to students who have passed CSCI 235 or the equivalent.
Tags: AAQR
CSCI 235. Programming I: Problem Solving. (4 Credits)
A first course in computer programming for beginners. Structured and object-oriented programming in Java or a similar programming language. Types, control structures, methods, and recursion; objects, classes, interfaces, encapsulation and polymorphism; exceptions, library classes, file I/O, linked lists, and graphical user interfaces.
Tags: AAQR
CSCI 236. Accelerated Introduction to Programming. (2 Credits)
A condensed, accelerated version of CSCI 235 for students with prior programming experience. This course focuses on preparing students to take CSCI 245. Offered occasionally.
CSCI 243. Discrete Mathematics and Functional Programming. (4 Credits)
Sets, logic, the nature of proof, induction, algorithms, algorithm correctness, relations, lattices, functions, and graphs. Functional programming and recursion using SML or a similar programming language. May not be taken after MATH 341 or MATH 351.
Tags: AAQR
CSCI 245. Programming II: Object-Oriented Design. (4 Credits)
A gateway to the computer science major, introducing a range of themes in the field of computer science. Object-oriented programming in Java or a similar programming language: code reuse with composition and inheritance; generic types; design patterns. Software development: development tools, attributes of good design. Algorithmic analysis; searching and sorting algorithms. Abstract data types: stacks, queues, trees, hashing; linked vs array-based implementation. Systems programming in C; pointers and dynamic allocation; model of machine memory, organization, and execution. Prerequisite: CSCI 235 or departmental approval.
CSCI 335. Software Development. (4 Credits)
Principles and practices of software development including design patterns, validation and testing, coordination of team projects. Introduction to databases and user interface design. Professional issues in computing. Prerequisite: CSCI 245; Pre or Corequisite: CSCI 243.
CSCI 345. Data Structures & Algorithms. (4 Credits)
Formal and experimental approaches to verifying algorithms' correctness and analyzing their efficiency. Abstract data types and their implementations. Efficient implementations of maps using balanced binary search trees and hash tables. Graph algorithms. Dynamic programming. Prerequisites: CSCI 243 and CSCI 245.
CSCI 351. Introduction to Computer Systems. (4 Credits)
An introduction to low-level systems issues from the perspective of the programmer. Representation of both data and program as produced by a compiler; hardware support for memory, input/output, and parallelism; fundamental ideas in operating systems and networking. Prerequisite: CSCI 245.
CSCI 357. Networking. (4 Credits)
Examination of the fundamental problems in computer internetworking, from the link to application levels, with particular attention to the Internet protocols. Issues include naming/addressing, error-handling, routing, and decentralized control. Prerequisite: CSCI 351. Course offered alternate years.
CSCI 359. Information Security. (4 Credits)
An introductory course in the technical aspects of information security, exploring both theory and practice. Basic concepts and policies: confidentiality, integrity, availability, access control. Cryptography and its applications: ciphers, hashes, key exchange, authentication, blockchain. Topics in systems and network security: malware, botnets, covert channels, denial of service, firewalls, Web security, anonymous communication. Prerequisite: CSCI 351.
CSCI 361. Computer Graphics. (4 Credits)
Introduction to graphical programming environments, OpenGL libraries. Rendering three-dimensional images, transformations, windowing, clipping, shading, and image enhancements. Prerequisite: CSCI 345. Course is offered occasionally.
CSCI 365. Programming Language Concepts. (4 Credits)
A survey of the design and implementation of programming languages: grammars, parsing, and abstract syntax; compilers, interpreters, and other language systems; type-checking and other static analyses; formal semantic specifications; implementation of imperative, functional, and object-oriented language features; type-soundness proofs; tail form and continuation passing style. Course is offered occasionally. Prerequisite: CSCI 335 and CSCI 351.
CSCI 371. Database Management Systems. (4 Credits)
An introduction to database management systems. Topics include history and motivation for database systems, relational model and algebra, database design, SQL overview, schema refinement and normal forms, data warehousing concepts and modeling, basics of database administration, storage of data on disk systems, file organization, hash and tree indexing, and web-based access of database systems. Prerequisite: CSCI 335 and CSCI 345.
CSCI 373. Platform-Specific Development. (4 Credits)
Introduction to developing software on a specific platform, such as iOS programming using Swift for applications on iPhones and iPads. Topics include developer tools, programming in a platform-specific language, MVC design pattern, user interfaces, persistent storage solutions, and frameworks for additional app functionality. Prerequisite: CSCI 335. Course offered alternate years.
CSCI 381. Machine Learning. (4 Credits)
Theory, algorithms, and applications of machine learning. Machine learning techniques including k-nearest neighbors, expectation-maximization, neural nets, support vector machines, and principal component analysis. Ethical considerations for how machine learning applications are used and how they affect society. Prerequisite: CSCI 345 and MATH 245. Course offered alternate years.
CSCI 384. Computational Linguistics. (4 Credits)
An exploration of the theory, algorithms, and applications of natural language processing. Traditional approaches such as n-gram language models, information theory, and hidden Markov models, as well as modern approaches such as recurrent neural nets and large language models. Applications of computational linguistics such as part-of-speech tagging, authorship attribution, automatic translation, sentiment analysis, and text generation. Prerequisite: CSCI 345.
CSCI 394. Seminar. (2 or 4 Credits)
Selected topics in Computer Science at each offering, including such subjects as object-oriented design, e-commerce, human computer interface, networking services. May be taken again when a different topic is offered. Prerequisite: Departmental approval.
CSCI 445. Analysis of Algorithms. (4 Credits)
An introduction to algorithmic efficiency and to techniques for the design and analysis of efficient algorithms. General topics include review of asymptotics, algorithm design techniques (such as divide-and-conquer, dynamic programming, and greedy algorithms), graph algorithms, languages and automata, and NP-completeness. Prerequisite: CSCI 345. Course offered alternate years.
CSCI 455. Operating Systems. (4 Credits)
Design and implementation of operating systems. Processes, threads, and concurrency; physical and virtual memory management; disk, files, and filesystem implementation; the boot process; input and output systems; support for virtualization; protection and security. Course offered alternate years. Prerequisite: CSCI 335 and CSCI 351.
CSCI 493. Mentoring Seminar. (2 or 4 Credits)
Faculty and student collaboration on a project of mutual interest. Limited enrollment - faculty approval required.
CSCI 494. Social and Ethical Issues in Computing. (2 Credits)
A study of the ways in which the computer and communications revolution is changing society to develop an awareness of and sensitivity to the ethical issues that arise in computer science and related professions. Prerequisite: Senior standing in the major.
General Education: SHAR
CSCI 495. Independent Study. (1 to 4 Credits)
An individually adapted study of any aspect of computing science or its relationship to other fields of study.
CSCI 496. Internship. (2 or 4 Credits)
Graded pass/fail. Prerequisite: junior or senior standing with Computer Science major. May repeat once for a total of 4 hours.