Code Monkey home page Code Monkey logo

concrete's Introduction

concrete mathematics

This is an archive of student notes from the Concrete Mathematics class from Spring 2019 at TJHSST, taught by Dr. Patrick White. Concrete Mathematics loosely takes from the textbook of the same name written by Donald Knuth, and teaches basic combinatorial techniques and constructions with the aid of calculus. Here, "concrete" is meant as a portmanteau of "discrete" and "continuous," since we use both techniques to develop the theory (but obviously with a focus on solving discrete problems). The year I took the class Dr. White also covered some group theory and its application in combinatorics, which may or may not be the norm for this class.

This class doesn't really exist anymore, but here's hoping that this semi-static reference can serve as a historical marker as to what this class was like. It would be nice to see current students lobbying to bring it back, given that there is a staff member at TJ willing to teach this course again. Personally, this class was the class I credit for inspiring my current interest in combinatorics. Yes, enumerative combinatorics can seem like a grab-bag of tricks and little facts to know, and people with competitive math backgrounds will have a much easier time with the lines of thinking employed in this class. However, I think there is a rich theory here that is never really explored in competitive math or in the standard calculus pipeline in school, and this course offers a unique opportunity to get a glimpse into what combinatorics is like at an undergraduate level. As a bonus for the future CS majors, you'll have to take a discrete math class anyway, and it's likely more fun here in this setting than at wherever you end up. Regardless, this class was a great experience and I hope that this class returns someday.

table of contents

  1. Introduction

I. Enumerations

  1. Basic Notation
  2. Counting Strategies
  3. Combinatorial Sequences
  4. Interlude: Stirling's Approximation
  5. Problems and Examples

II. Generating Functions and Recurrences

  1. Ordinary Generating Functions
  2. Solving Recurrences
  3. Exponential Generating Functions
  4. Interlude: Calkin-Wilf Tree
  5. Interlude: Partition Numbers

III. Groups and Group Actions

  1. Group Theory
  2. Burnside and Polya

IV. Coda: Computational Complexity

  1. Turing Machines
  2. Computational Complexity

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.