Edit product

    Is this your street address?

    Card

    ···· ···· ···· 4242
    Test card

    05/18

    Card

    Use a different card?

    Card

    pp paypal

    or pay with

    We do not keep any of your sensitive credit card information on file with us unless you ask us to after this purchase is complete.

    or pay with

    Please confirm your location:
    Your card will be charged .

    Thank you!

      Gumroad Library

      Download from the App Store or text yourself a link to the app

      $39.95

      A Brief Course in Modern Math for Programmers

      Programmers with the classical software engineering background need to learn more mathematics these days. The world is changing; we have to change, too. This book is dedicated to covering the issues that until recently were not very popular in software engineering: logic, monoids, algebraic structures, categories, and monads. All these topics are explained in the book, with no assumptions about the reader's educational background, with many examples. Most of the examples and explanations use two popular programming languages, JavaScript and Scala.

      The book has no theorems and almost no proofs. The purpose of the book is to expand the reader's imagination and to open the gates to the beautiful world of mathematics—at the same time keeping in mind the practical usability of its ideas and notions in our daily coding practice.

      Chapter 1. Functions

      • General Ideas
      • Main Definitions
      • Special Classes of Functions
      • Binary Relations
      • Binary Operations

      Chapter 2. Abstractions of Algebra

      • Monoids
      • Semigroups
      • Magmas

      Chapter 3. Partial Orders, Graphs, and DAGs

      Chapter 4. Boolean Logic

      • The Language of First-Order Logic
      • Valid and Sound Arguments
      • Proofs
      • Normal Forms

      Chapter 5. Non-Boolean Logic

      • The Meaning of Non-Booleanness
      • Proof in Intuitionistic Logic

      Chapter 6. Quantifiers

      • Universal Quantifier
      • Existential Quantifier
      • Connectives and Quantifiers in Boolean Logic
      • Connectives and Quantifiers in Intuitionistic Logic

      Chapter 7. Models and Theories

      • Algebraic and Geometric Theories
      • Models

      Chapter 8. Category: Multi-Tiered Monoid

      Chapter 9. Working with Categories

      • Arrows in a Category
      • Initial and Terminal Objects

      Chapter 10. Manipulating Objects in a Category

      • Product, Sum
      • Equalizer, Coequalizer
      • Pullback, Pushout

      Chapter 11. Relations Between Categories

      • Functors
      • Building New Categories
      • Product of Two Categories
      • Sum of Two Categories
      • Contravariant Functor
      • Variance in Programming Languages

      Chapter 12. Relations Between Functors

      • Natural Transformations
      • Adjoint Functors
      • Limits

      Chapter 13. Cartesian Closed Categories

      • Basic Ideas
      • Examples
      • Definition: Bicartesian Closed Category

      Chapter 14. Monads

      • Main Ideas
      • Every Adjunction Gives a Monad

      Chapter 15. Monads: Algebras and Kleisli

      • Category of Algebras
      • Free Algebras as Functors
      • Forgetting and Freedom
      • Kleisli Category
      Sorry, this item is not available in your location.
      Sold out, please go back and pick another option.

      You've purchased this product

      Give it a rating

      See it in your library

      0 ratings

      • Size 8.26 MB
      • Length 158 pages

      Purchasing A Brief Course in Modern Math for Programmers...

      Card

      ···· ···· ···· 4242
      Test card

      05/18

      Card

      Use a different card?

      Card

      pp paypal

      or pay with

      We do not keep any of your sensitive credit card information on file with us unless you ask us to after this purchase is complete.

      or pay with

      Please confirm your location:
      Your card will be charged US$39.95.

      Your rental will be available for 30 days. Once started, you’ll have 72 hours to watch it as much as you’d like!

      Thank you!

        Gumroad Library

        Download from the App Store or text yourself a link to the app

        Good news! Since you already have a Gumroad account, it's also been added to your library.