I'm finishing my third semester in computer engineering next week. I have taken four classes with the math department (you know, Calculus I-III and Differential Equations), and only Linear Algebra remains*. I have really enjoyed my experiences with the math department so far, and am strongly considering taking two more courses for a minor. The courses that interest me are listed below. These are courses that I think will either be relevant to me as an electrical engineer (the calculus-based courses) or as a computer and software engineer (the logic and combinatoric courses). Some topics with no direct application to my field also interest me, but I would rather spend my time as profitably as possible. Which courses would you recommend from this list, and why? Mathematical Logic and Computability: The basic metatheorems of first order logic: soundness, completeness, compactness, Lowenheim-Skolem theorem, undecidability of first order logic, Godel's incompleteness theorem. Enumerability, diagonalization, formal systems, standard and nonstandard models, Godel numberings, Turing machines, recursive functions, and evidence for Church's thesis. Advanced Linear Algebra: A rigorous treatment of vector spaces, linear transformations, determinants, orthogonal and unitary transformations, canonical forms, bilinear and hermitian forms, and dual spaces. Advanced Calculus I: A rigorous treatment of calculus of one and several variables. Elementary topology of Euclidean spaces, continuity and uniform continuity, differentiation and integration. Intermediate Differential Equations: Systems of differential equations, series, solutions, special functions, elementary partial differential equations, Sturm-Liouville problems, stability and applications. Introduction to Partial Differential Equations: Solution of the standard partial differential equations (Laplace's equation, transport equation, heat equation, wave equation) by separation of variables and transform methods, including eigenfunction expansions, Fourier and Laplace transform. Boundary value problems, Sturm-Liouville theory, orthogonality, Fourier, Bessel, and Legendre series, spherical harmonics. Combinatorial Mathematics**: Counting techniques, generating functions, difference equations and recurrence relations, introduction to graph and network theory. *I am also taking Discrete Mathematics, but it's with the Computer Science department and doesn't count toward a minor. **I will be at least somewhat exposed to this through Discrete Mathematics.