The Mathematical, Physical and Life Sciences division should not be overlooked by Stanford students, the tutorial system and the structure of Oxford as a whole is renowned for scientific work. There are rich opportunities to think about how a tutorial in this division can provide opportunities to study a topic more deeply and with more one-to-one contact than on the home campus. An important thing to note is that it is not possible to provide laboratory sciences in Oxford. All tutorials should propose theoretical, not practical, programs of study. That being said, the coursework within this division is much more likely to be problem sets than essay writing, so students planning to work on math need not worry that they will necessarily be writing essays about math theory. Don’t just assume that this means you should plan to study Chemistry or Biology. Applicants often overlook the depth and breadth of courses within the humanities at Oxford. Pay attention to specifics within each department, you may find that your proposed tutorial is too broad. Luckily, you may also find ways in which you can make your tutorial more specific, or discover a new focus altogether.

Don’t just assume that this means you should plan to study English or History. Applicants often overlook the depth and breadth of courses within the humanities at Oxford. Pay attention to specifics within each department, you may find that your proposed tutorial is too broad. Luckily, you may also find ways in which you can make your tutorial more specific, or discover a new focus altogether

The Mathematical, Physical, and Life Sciences departments are:

# Chemistry

### AXESS Code 196G

Taking a tutorial in Chemistry is a wonderful opportunity to work on developing a deep understanding and independence of thought in this field. Working one-on-one with a tutor is a unique experience and can help provide the foundation for senior projects, graduate study or future publication. The following topics are organized by area (organic, inorganic and physical) and sorted by which term Oxford undergraduates typically study. This is very useful, because supplementary lectures and materials will be more available for you if you choose to study that tutorial at the same time as Oxford undergraduates. Stanford students will not have access to the laboratories and it is important to bear this in mind when planning your term.

### Inorganic Chemistry

### Autumn Quarter:

### Winter Quarter:

### Spring Quarter:

### Physical Chemistry

### Autumn Quarter:

### Winter Quarter:

### Spring Quarter:

### Organic Chemistry

### Autumn Quarter:

### Winter Quarter:

### Spring Quarter:

# Computer Science

### AXESS Code 195S

It is likely that students who intend on studying abroad will wish to continue their study of computer science. Students should not expect to cover the same material in a tutorial as they would in a home campus course. Tutorials in computer science are one-to-one, and students present their research, findings and questions to the tutor—computer science tutors do not lecture. It is also not possible to teach new programming languages. It is worth noting that in the UK a beginners’ computer science tutorial at Oxford presumes two years of previous experience with computer science.

### First year level courses

### Autumn Quarter:

**Discrete Mathematics:**sets, union, intersection, difference, power set, algebraic laws. Functions: injectivity & surjectivity, composition & inverse. Relations, equivalence relations, and partitions; relational composition & converse, transitive closure; orders, least upper and greatest lower bounds. Combinatorial algebra: permutations, combinations, sums of finite sequences. Functions associated with combinatorial problems: ceiling, floor, factorial, combinatorial coefficients. The inclusion-exclusion principle. Recurrence relations arising from combinatorial problems. Modular arithmetic, Euclid's algorithm, and applications.

**Functional Programming:**principles of functional programming: expressions, evaluations, functions, and types. Type definitions and built-in types: numbers, characters, strings and lists. Basic operations on lists, including map, fold and filter, together with their algebraic properties. Recursive definitions and structural induction. Simple program calculation. Infinite lists and their uses. Further data structures: binary trees, general trees. Use of trees for representing sets and symbolic data. Normal order reduction and lazy evaluation. Simple cost models for functional programs; time and space complexity. Uses programming language Haskell.

**Linear Algebra:**vector spaces and subspaces, matrices, Inverse matrices, solution of linear systems, elementary matrix factorisations, iterative methods, linear transformations, eigenvalues and eigenvectors.

### Winter Quarter

**Continuous Mathematics:**differentiation of functions of one or more variables using classical, complex, and vector/matrix formulations. The operators grad and div. Taylor's theorem, and classification of turning points of multivariate functions. Integration of simple multivariate functions. Numerical integration: the trapezium rule and Simpson's rule. Ordinary differential equations: initial value problems; boundary value problems; separable solutions; solution of simple second order boundary value problems. Fourier series representation of functions, and the Fast Fourier Transform. Introduction to techniques for the numerical solution of initial value ordinary differential equations. Newton's method for the iterative solution of nonlinear equations in one and many dimensions. Optimisation of multivariate functions, and the use of Lagrange multipliers for constrained optimisation.

**Design and Analysis of Algorithms:**basic strategies of algorithm design: top-down design, divide and conquer, average and worst-case criteria, asymptotic costs. Simple recurrence relations for asymptotic costs. Choice of appropriate data structures: arrays, lists, stacks, queues, trees, heaps, priority queues, graphs. Applications to sorting and searching, matrix algorithms, shortest-path and spanning tree problems. Introduction to discrete optimisation algorithms: dynamic programming, greedy algorithms. Graph algorithms: depth first and breadth first search.

**Imperative Programming Parts 1 and 2:**imperative programming constructs, with informal treatment of invariants. Procedures and modules; their use in the design of large programs; specification and implementation of abstract datatypes. Data structures: arrays, reference-linked data structures. Basic tools for program development. Case studies in design of medium-sized programs. Note: this course of study tytpically includes lectures, tutorials and labs, but Stanford undergraduates are not always able to participate in labs so this should be borne in mind.

**Digital Systems:**simple design of combinational and sequential circuits; standard design elements. Computer arithmetic for integers and floating-point numbers; basic error analysis. Register transfer level design of a simple microprocessor. Simple programming in assembly language. Rôle of assemblers, compilers and linkers. Memory hierarchy. Simple operating system services: file systems, processes. Principles of networked services.

### Spring Quarter

**Digital Systems:**continued from winter.

**Imperative Programming II:**this course, given in the Scala programming language, introduces different techniques for the design, specification, and implementation of small to medium size programs within the Object-Oriented Programming (OOP) paradigm. The course only assumes familiarity with the essential concepts and constructs of imperative programming, such as conditionals, loops, etc., but it is self contained otherwise. After introducing Scala, the course focuses on three main topics: Abstract Data Types (ADTs), principles of OOP, and Design Patterns in the OOP framework.

**Introduction to Formal Proof:**propositional logic: natural deduction, semantics, soundness of natural deduction rules, definition of completeness of deduction rules, sequent presentations of deduction rules. First Order (Predicate) Logic: predicate language (including definition of free variable, substitution), semantics (including signatures, domains of discourse, evaluation of quantified forms), deduction rules and proofs in predicate logic, augmenting First Order Logic with equational theories.

### Second year level courses^{1}

### Autumn Quarter

**Compilers**: programming language representation: concrete and abstract syntax, context free grammars. Use of lexer and parser generators. Implementation of expressions and statements in a simple language by postfix code and by simple machine code; simple optimizations. Procedures: value, name and reference parameters, local and non-local variables, static and dynamic binding. Abstract machines and storage management: activation records, static and dynamic chains, stacks and heaps. The course is based on a working implementation, written in Objective Caml, of a compiler for a language comparable to C or Pascal.

**Models of Computation:**the finite-state machine. Deterministic finite automata and regular languages. Non-deterministic finite automata, and equivalence with DFA. Closure properties of regular languages. Regular expressions. The pumping lemma. The Myhill-Nerode Theorem. Context-free grammars. Pushdown automata. The Turing machine. Church's Thesis. Decision problems and undecidability. The halting problem.

**Computer-Aided Formal Verification:**introduction to computer-aided formal verification. Modelling sequential systems as labelled transition systems (Kripke structures). Linear time properties. Linear temporal logic (LTL). Computation tree logic (CTL) and CTL*. Model checking CTL. Model checking LTL. Counterexamples and witnesses. Binary decision diagrams (BDD). Symbolic model checking. Model checking with SAT, bounded model checking. Completeness thresholds and k-induction. Craig interpolation. Equivalences and abstractions. Decision procedures in model checking. Practical, industrial-scale verification; present challenges

### Winter Quarter

**Algorithms:**amortised analysis; Disjoint sets / union-find; Binary search trees (Red-Black trees, splay trees); Max flow and min cut in networks; applications; Linear programming; NP-hardness; Approximation algorithms; Fixed-parameter tractability; Exponential algorithms; Stable matching.

**Concurrent Programming:**reasons for concurrency; processes, threads; safety and liveness. Message passing concurrency; deadlock. Clients and servers. Interacting peers. Synchronous parallel computation. Patterns of concurrent programming: data parallel; bag of tasks; recursive parallel; task parallel. Low-level concurrency controls: monitors; semaphores.

**Computational Complexity:**turing machines, decision problems, time and space complexity, polynomial time algorithms, NP and NP-completeness, standard time and space complexity classes, optimization problems and approximation algorithms, randomised algorithms and complexity classes based on randomised machine models, interactive proofs and their relation to approximation.

^{1}Students are strongly advised to consider whether they have an adequate foundation to pursue these tutorials.### Third year level courses^{2}

### Autumn Quarter

**Computer Security:**aspects of security, security models. Tools for achieving particular security goals, attacks, and countermeasures: one-way functions, symmetric and asymmetric block ciphers including key generation and block modes, keyed hashes, digital signatures, simple key exchange protocols. Applications in practice. Prerequisites: Basic modular arithmetic; Elementary discrete probability; Java. Note: Stanford undergraduates are not guaranteed space in the practical labs.Computer-Aided Formal Verification 16 Lectures, Michaelmas Term 2017

**Databases:**introduction to database management systems; entity relationship modelling; the relational model; relational algebra. Schema refinement, functional dependencies and normal forms, transaction management. Storage and indexing: B + trees. Query optimisation.

**Geometric Modelling:**point, line and line segment; relative positions; polyline; Polygon, convex and concave; polyhedron; convex hull; Different kinds of geometric modellers Boundary representation modelling; Boundary representation operations; GSG introduction; interval arithmetic. GSG tree pruning; blends; integral properties; Splines introduction; Bézier curves; Drawing splines; degree elevation; Sculptured surface patches: applications; General splines; constructing splines from Bézier curves; B-splines; interpolation splines; Voronoi diagram; Delaunay triangulation; Largest empty circle; Voronoi diagram generalisation(s)

**Intelligent Systems:**problem solving via search. Uninformed, informed, and local search. Planning. Dealing with geometry of physical agents. Constraint satisfaction. Adversarial search. Searching with nondeterministic actions and partial observations.

**Machine Learning:**introduction to different paradigms of machine learning; Linear prediction, Regression; Maximum Likelihood, MAP, Bayesian ML; Regularization, Generlization, Cross Validation; Basics of Optimization; Linear Classification, Logisitc Regression, Naïve Bayes; Suppor Vector Machines; Kernel Methods; Neural Networks, Back Propagation; Convolutional Neural Networks; Unsupervised Learning, Clustering, k-means; Mixture Models: EM Algorithm, Topic Modelling; Dimensionality Reduction, PCA.

**Principles of Programming Languages:**abstract and concrete syntax. Definitional interpreters in direct and monadic form. Functional and imperative programming. Expressible and denotable values; call by value and call by name. Continuations and abstract machines. Computational Complexity 16 Lectures, Hilary Term 2018.

### Winter Quarter

**Computer Architecture:**C programming language; x86-64 assembly language; Machine representation of programs; Control structures for processors, register transfer level description of hardware; Hardware description languages and simulation in Verilog; Instruction set design, instruction formats, addressing modes, ISAs; A sequential Y86-64 design; Processor pipelining, pipeline hazard detection, stalling and forwarding; Out-of-order execution and program performance optimisation; RISC and CISC instruction sets (x86-64 and ARMv8); Vector operations, SIMD and GPGPU; Memory hierarchy and memory caches; Micro-controllers for embedded applications; Alternative architectures.

**Knowledge Representation & Reasoning:**representing knowledge using logic. Reasoning techniques in propositional and first order logic. Fundamental trade-off between representation power and computational properties. Fragments of first order logic suited for Knowledge Representation. Ontology languages for the Semantic Web. Non-monotonic logics. Students taking this tutorial should have completed Logic.

**Lambda Calculus and Types:**terms, formal theories lambda beta and lambda beta eta, fixed point combinators; reduction, Church-Rosser property of beta-reduction and consistency of lambda beta; reduction strategies, standard reduction sequences, proof that leftmost reduction is normalising; Church numerals, definability of total recursive functions in the lambda-calculus, Second Recusion Theorem and undecidability results; combinatory algebras, combinatory completeness, basis; simple types a la Curry, type deductions, Subject Reduction Theorem, strong normalisation and consequences; type substitutions, unification, matching, correctness of Principal Type Algorithm

**Logic and Proof:**syntax of propositional logic. Truth tables; Horn-SAT and 2-SAT; Binary decision diagrams; Resolution. DPLL procedure; Compactness theorem; Syntax and semantics of first-order logic; Prenex normal form and Skolemisation; Herbrand models and ground resolution; Unification and resolution for predicate logic; Undecidability of satisfiability for first-order logic; Decidable theories, including linear arithmetic.

### Spring Quarter

**Computer Graphics:**fundamentals of graphics hardware and software; Essential algorithms: line generation, solid area display, transformations, clipping, projection; Abstraction, and simple examples of libraries of graphics functions. Modelling of 3-dimensional solids. Rendering techniques and colour and lighting models; Input devices, interactive techniques, and the human-machine interface; Human factors in computer graphics; The tutorial assumes previous experience of practical programming in a high-level language, and simple knowledge of matrices and vectors.

**Computer Networks:**the need for computer networks; layered models; Ethernet; IP; network routing and congestion control; network security.

**Concurrency:**deterministic processes: traces, operational semantics; prefixing, choice, concurrency and communication. Nondeterminism: failures and divergences; nondeterministic choice, hiding and interleaving. Further operators: pipes and (time permitting) sequential composition. Refinement, specification and proof. Process algebra: equational and inequational reasoning. Schedule S2

^{2}These courses should be considered graduate level and only undertaken by computer science majors at the terminus of their Stanford undergraduate career.### Fourth year level courses

### Autumn Quarter

### Winter Quarter

# Earth Sciences

### No AXESS Code at present

Oxford Earth Sciences is analogous to Stanford earth systems science. The following are tutorial topics commonly undertaken by Oxford undergraduates. If you are interested please contact the centre director to establish whether you interest can be accomplished without lab work, because laboratory access is not possible. Students who are looking for a non-humanities way to see the UK might enjoy appreciating the islands unique geology!

### I.

### II.

### III.

### IV.

# Engineering Science

### AXESS Codes 195H and 197H

The department was originally established in 1908 with the appointment of the first Professor of Engineering Science at Oxford. We have not previously had significant demands for tutorials in this area. It is worth noting though, that tutorial requests can be accommodated. The following are tutorial topics commonly undertaken by Oxford undergraduates. If you are interested please contact the centre director to establish whether your interest can be accomplished without lab work.

# Mathematical Institute

### AXESS Code 196N

Mathematics at Oxford, like computer science, is undertaken with a student body that already has two years of mathematics study under their belt. Students from Stanford may be surprised at the proficiency level of their peers if they forget that their Oxford counterpart has a head start. It is useful to consider your learning style when proposing a maths tutorial, as these courses can be solitary and require a good degree of library time and working through problem sets without classmates for company. Tutorials can be expected to go more deeply into fewer aspects of the topic. Students may take a tutorial equivalent of a class already taken on campus in order to explore aspects of the course in more depth. Below is a helpful chart that draws comparison between Stanford courses and Oxford tutorials:

Title | Supportive Lectures | Stanford Equivalent |
---|---|---|

Algebraic Curves | Winter | MATH 216A |

Algebraic Number Theory | Winter | MATH 154 |

Algebraic Topology | Autumn | MATH 148 or MATH215A |

Algebraic Number Theory | Winter | MATH 155 |

Analytic Topology | Autumn/Spring | No easy parallel |

Axiomatic Set Theory | Winter | MATH 161 |

Banach and C* Algebras | None | None |

Banach Spaces | None | MATH 175 or MATH 205B |

Building Infinite Groups | Winter | No easy parallel |

Calculus of Variations | Spring | MATH 174 |

Complex Analysis | Autumn | MATH 116 |

Equations Approximation of Functions | None | None |

Differentiable Manifolds | Autumn | MATH 146 or MATH 215B |

Elliptic Curves | Winter | None |

Finite Group Theory | None | None |

Functional Analysis | Autumn/Spring | MATH 175 or MATH 205B |

Galois Theory | Autumn | MATH 121 |

Geometric Group Theory | Winter | No easy parallel |

Geometry of Surfaces | Autumn | MATH 143 or MATH 215C |

Godel's Incompleteness Theorems | Winter | No easy parallel |

Graph Theory | Autumn/Spring | No easy parallel |

Integration | Winter | MATH 172 or MATH 205A |

Industrial and Applied Mathematics | Winter | No easy parallel |

Linear Algebra | Autumn/Winter | MATH 113 |

Martingales | Autumn | MATH 230A |

Metric Spaces | Autumn | MATH 171 |

Model Theory | Autumn | No easy parallel |

Multivariable Calculus | Winter | MATH 52 |

Number Theory | Autumn/Spring | MATH 152 |

Numerical Analysis | Spring | MATH 114 |

Numerical Linear Algebra | Autumn | CME 302 |

Numerical Solution of Differential Equations | Winter | MATH 226 |

Probabilistic Combinatorics | Winter | MATH 159 |

Set Theory | Winter | MATH 161 |

Stochastic Differential Equations | Winter/Autumn | MATH 236 |

Topology | Spring/Winter | MATH 171 or MATH 205B |

Topology and Groups | Autumn | MATH 148 |

# Materials

### No AXESS Code at present

The Department of Materials at the University of Oxford was founded in the 1950s as the Department of Metallurgy. World leading research is done in the broad fields of structural and nuclear materials, device materials, polymers and biomaterials, nanomaterials, processing and manufacturing, characterization, and computational materials modelling. At Oxford, we have not previously had demands for tutorials in this area. It is worth noting though, that tutorial requests can be accommodated. The following are tutorial topics commonly undertaken by Oxford undergraduates. If you are interested please contact the centre director to establish whether your interest can be accomplished without lab work.

# Physics

### AXESS Code 195W

Taking a tutorial in Physics is a wonderful opportunity to work on developing a deep understanding and independence of thought in this field. Working one-on-one with a tutor is a unique experience and can help provide the foundation for senior projects, graduate study or future publication. Along with mathematics, physics is a popular tutorial option for Stanford undergraduates. Give some thought to your academic foundations and how independently you feel you can work on a given topic, and remember-no practicals! Stanford students will not have access to the laboratories and it is important to bear this in mind when planning your term.

# Plant Sciences

### AXESS Code 195B

The Department of Plant Sciences at the University of Oxford focuses on research and teaching in plant and fungal biology. Forestry was an important part of the university under the name of the Imperial Forest Institute, from 1924, later the Commonwealth Forest Institute from 1939. The Oxford Forestry Institute was incorporated into the Department of Plant Sciences in 2002, and research relating to forestry is now undertaken under the department's name. Biology at Oxford is divided between the departments of plant sciences and zoology. The following topics are acceptable for tutorials in the Plant Sciences department:

# Statistics

### AXESS Code 198N

The Department of Statistics at Oxford is a world leader in research including computational statistics and statistical methodology, applied probability, bioinformatics and mathematical genetics. In the 2014 Research Excellence Framework, Oxford's Mathematical Sciences submission was ranked overall best in the UK. Statistics is taught separately from mathematics, and can be taken in Autumn and Winter quarter alongside complementary lectures, or in Spring quarter independently.

### Autumn Quarter options:

### Winter Quarter options:

# Zoology

### AXESS Codes 196K, 198K

Biology at Oxford is divided between zoology and plant sciences. The Department of Zoology is at the centre of Oxford's research and teaching in whole organism biology. Research is centred on the four themes of behaviour, disease, ecology and evolution. The following topics are acceptable for tutorials in Zoology: