Foundation Mathematics for Computer Science: A Visual Approach

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

In this third edition of Foundation Mathematics for Computer Science, John Vince has reviewed and edited the second edition, and added chapters on systems of counting, area and volume.  These subjects complement the existing chapters on visual mathematics, numbers, algebra, logic, combinatorics, probability, modular arithmetic, trigonometry, coordinate systems, determinants, vectors, complex numbers, matrices, geometric matrix transforms, differential and integral calculus. During this journey, the author touches upon more esoteric topics such as quaternions, octonions, Grassmann algebra, Barrycentric coordinates, transfinite sets and prime numbers.

John Vince describes a range of mathematical topics that provide a solid foundation for an undergraduate course in computer science, starting with a review of number systems and their relevance to digital computers, and finishing with calculating area and volume using calculus. Readers will find that the author’s visual approach should greatly improve their understanding as to why certain mathematical structures exist, together with how they are used in real-world applications.

This third edition includes new, full-colour illustrations to clarify the mathematical descriptions, and in some cases, equations are also coloured to reveal vital algebraic patterns. The numerous worked examples will help consolidate the understanding of abstract mathematical concepts.

Whether you intend to pursue a career in programming, scientific visualisation, artificial intelligence, systems design, or real-time computing, you should find the author’s literary style refreshingly lucid and engaging, and prepare you for more advanced texts.


Author(s): John Vince
Edition: 3
Publisher: Springer
Year: 2023

Language: English
Pages: 532
City: Cham
Tags: Foundation Mathematics; Modular Arithmetic; Combinatorics; Computer Games; Computer Graphics; Function Graphs; Counting; Number Systems; Set Theory; Probability; Trigonometry; Coordinate Systems; Determinants; Vectors; Complex Numbers; Matrices; Geometric Matrix Transformation; Calculus; Area; Volume

Preface
Contents
1 Visual Mathematics
1.1 Introduction
1.2 Visual Brains Versus Analytic Brains
1.3 Learning Mathematics
1.4 What Makes Mathematics Difficult?
1.5 Does Mathematics Exist Outside Our Brains?
1.6 Symbols and Notation
Reference
2 Numbers
2.1 Introduction
2.2 Counting
2.3 Sets of Numbers
2.4 Zero
2.5 Negative Numbers
2.5.1 The Arithmetic of Positive and Negative Numbers
2.6 Observations and Axioms
2.6.1 Commutative Law
2.6.2 Associative Law
2.6.3 Distributive Law
2.7 Types of Numbers
2.7.1 Natural Numbers
2.7.2 Integers
2.7.3 Rational Numbers
2.7.4 Irrational Numbers
2.7.5 Real Numbers
2.7.6 Algebraic and Transcendental Numbers
2.7.7 Imaginary Numbers
2.7.8 Complex Numbers
2.7.9 Quaternions and Octonions
2.8 Prime Numbers
2.8.1 The Fundamental Theorem of Arithmetic
2.8.2 Is 1 a Prime?
2.8.3 The Goldbach Conjecture
2.8.4 Prime Number Distribution
2.8.5 Infinity of Primes
2.8.6 Mersenne Numbers
2.9 Perfect Numbers
2.10 Triangular Numbers
2.11 Infinity
2.12 Worked Examples
2.12.1 Algebraic Expansion
2.12.2 Complex Numbers
2.12.3 Quaternions
References
3 Systems of Counting
3.1 Introduction
3.2 Decimal Positional System
3.2.1 Background
3.2.2 Binary Numbers
3.2.3 Octal Numbers
3.2.4 Hexadecimal Numbers
3.3 Converting Decimal to Binary, Octal and Hexadecimal
3.3.1 Converting Decimal to Binary
3.3.2 Converting Decimal to Octal
3.3.3 Converting Decimal to Hexadecimal
3.4 Converting Between Binary and Octal Numbers
3.5 Converting Between Binary and Hexadecimal Numbers
3.6 Adding and Subtracting Binary Numbers
3.6.1 Adding Binary Numbers
3.6.2 Subtracting Binary Numbers Using Two's Complement
3.7 Adding and Subtracting Decimal Numbers
3.7.1 Adding Decimal Numbers
3.7.2 Subtracting Decimal Numbers Using Ten's Complement
3.8 Adding and Subtracting Octal Numbers
3.8.1 Adding Octal Numbers
3.8.2 Subtracting Octal Numbers Using Eight's Complement
3.9 Summary
3.10 Worked Examples
3.10.1 Convert a Decimal Number into Binary
3.10.2 Convert a Decimal Number into Binary Using an Algorithm
3.10.3 Convert a Binary Number into Decimal
3.10.4 Convert a Binary Number into Octal
3.10.5 Convert an Octal Number into Binary
3.10.6 Convert an Octal Number into Hexadecimal
3.10.7 Convert a Hexadecimal Number into Octal
3.10.8 Convert a Decimal Number into Octal
3.10.9 Convert a Decimal Number into Octal Using an Algorithm
3.10.10 Convert a Decimal Number into Hexadecimal
3.10.11 Add Binary Numbers
3.10.12 Subtract Binary Numbers
3.10.13 Add Octal Numbers
3.10.14 Subtract Octal Numbers
3.10.15 Add Hexadecimal Numbers
4 Algebra
4.1 Introduction
4.2 Background
4.3 Notation
4.3.1 Solving the Roots of a Quadratic Equation
4.4 Indices
4.4.1 Laws of Indices
4.5 Logarithms
4.6 Further Notation
4.7 Functions
4.7.1 Explicit and Implicit Equations
4.7.2 Function Notation
4.7.3 Intervals
4.7.4 Function Domains and Ranges
4.7.5 Odd and Even Functions
4.7.6 Power Functions
4.8 Series
4.9 Binomial Theorem
4.10 Summary
4.11 Worked Examples
4.11.1 Algebraic Manipulation
4.11.2 Solving a Quadratic Equation
4.11.3 Factorising
4.11.4 Binomial Theorem
References
5 Logic
5.1 Introduction
5.2 Background
5.3 Truth Tables
5.3.1 Logical Connectives
5.4 Logical Premises
5.4.1 Material Equivalence
5.4.2 Implication
5.4.3 Negation
5.4.4 Conjunction
5.4.5 Inclusive Disjunction
5.4.6 Exclusive Disjunction
5.4.7 Idempotence
5.4.8 Commutativity
5.4.9 Associativity
5.4.10 Distributivity
5.4.11 de Morgan's Laws
5.4.12 Simplification
5.4.13 Excluded Middle
5.4.14 Contradiction
5.4.15 Double Negation
5.4.16 Implication and Equivalence
5.4.17 Exportation
5.4.18 Contrapositive
5.4.19 Reductio Ad Absurdum
5.4.20 Modus Ponens
5.4.21 Proof by Cases
5.5 Set Theory
5.5.1 Empty Set
5.5.2 Membership and Cardinality of a Set
5.5.3 Subsets, Supersets and the Universal Set
5.5.4 Set Building
5.5.5 Union
5.5.6 Intersection
5.5.7 Relative Complement
5.5.8 Absolute Complement
5.5.9 Power Set
5.6 Worked Examples
5.6.1 Truth Tables
5.6.2 Set Building
5.6.3 Sets
5.6.4 Power Set
6 Combinatorics
6.1 Introduction
6.2 Permutations
6.3 Permutations of Multisets
6.4 Combinations
6.5 Worked Examples
6.5.1 Eight-Permutations of a Multiset
6.5.2 Eight-Permutations of a Multiset
6.5.3 Number of Permutations
6.5.4 Number of Five-Card Hands
6.5.5 Hand Shakes with 100 People
6.5.6 Permutations of MISSISSIPPI
7 Probability
7.1 Introduction
7.2 Definition and Notation
7.2.1 Independent Events
7.2.2 Dependent Events
7.2.3 Mutually Exclusive Events
7.2.4 Inclusive Events
7.2.5 Probability Using Combinations
7.3 Worked Examples
7.3.1 Product of Probabilities
7.3.2 Book Arrangements
7.3.3 Winning a Lottery
7.3.4 Rolling Two Dice
7.3.5 Two Dice Sum to 7
7.3.6 Two Dice Sum to 4
7.3.7 Dealing a Red Ace
7.3.8 Selecting Four Aces in Succession
7.3.9 Selecting Cards
7.3.10 Selecting Four Balls from a Bag
7.3.11 Forming Teams
7.3.12 Dealing Five Cards
8 Modular Arithmetic
8.1 Introduction
8.2 Informal Definition
8.3 Notation
8.4 Congruence
8.5 Negative Numbers
8.6 Arithmetic Operations
8.6.1 Sums of Numbers
8.6.2 Products
8.6.3 Multiplying by a Constant
8.6.4 Congruent Pairs
8.6.5 Multiplicative Inverse
8.6.6 Modulo a Prime
8.6.7 Fermat's Little Theorem
8.7 Applications of Modular Arithmetic
8.7.1 ISBN Parity Check
8.7.2 IBAN Check Digits
8.8 Worked Examples
8.8.1 Negative Numbers
8.8.2 Sums of Numbers
8.8.3 Remainders of Products
8.8.4 Multiplicative Inverse
8.8.5 Product Table for Modulo 13
8.8.6 ISBN Check Digit
Reference
9 Trigonometry
9.1 Introduction
9.2 Background
9.3 Units of Angular Measurement
9.4 The Trigonometric Ratios
9.4.1 Domains and Ranges
9.5 Inverse Trigonometric Ratios
9.6 Trigonometric Identities
9.7 The Sine Rule
9.8 The Cosine Rule
9.9 Compound-Angle Identities
9.9.1 Double-Angle Identities
9.9.2 Multiple-Angle Identities
9.9.3 Half-Angle Identities
9.10 Perimeter Relationships
9.11 Worked Examples
9.11.1 Degrees to Radians
9.11.2 Sine Rule
9.11.3 Cosine Rule
9.11.4 Compound Angle
9.11.5 Double-Angle Identity
9.11.6 Perimeter Relationship
10 Coordinate Systems
10.1 Introduction
10.2 Background
10.3 The Cartesian Plane
10.4 Function Graphs
10.5 Shape Representation
10.5.1 2D Polygons
10.5.2 Areas of Shapes
10.6 Theorem of Pythagoras in 2D
10.6.1 Pythagorean Triples
10.7 3D Cartesian Coordinates
10.7.1 Theorem of Pythagoras in 3D
10.8 Polar Coordinates
10.9 Spherical Polar Coordinates
10.10 Cylindrical Coordinates
10.11 Barycentric Coordinates
10.12 Homogeneous Coordinates
10.13 Worked Examples
10.13.1 Area of a Shape
10.13.2 Distance Between Two Points
10.13.3 Polar Coordinates
10.13.4 Spherical Polar Coordinates
10.13.5 Cylindrical Coordinates
10.13.6 Barycentric Coordinates
Reference
11 Determinants
11.1 Introduction
11.2 Background
11.3 Linear Equations with Two Variables
11.4 Linear Equations with Three Variables
11.4.1 Sarrus's Rule
11.5 Mathematical Notation
11.5.1 Matrix
11.5.2 Order of a Determinant
11.5.3 Value of a Determinant
11.5.4 Properties of Determinants
11.6 Worked Examples
11.6.1 Determinant Expansion
11.6.2 Complex Determinant
11.6.3 Simple Expansion
11.6.4 Simultaneous Equations
12 Vectors
12.1 Introduction
12.2 Background
12.3 2D Vectors
12.3.1 Vector Notation
12.3.2 Graphical Representation of Vectors
12.3.3 Magnitude of a Vector
12.4 3D Vectors
12.4.1 Vector Manipulation
12.4.2 Scaling a Vector
12.4.3 Vector Addition and Subtraction
12.4.4 Position Vectors
12.4.5 Unit Vectors
12.4.6 Cartesian Vectors
12.4.7 Products
12.4.8 Scalar Product
12.4.9 The Dot Product in Lighting Calculations
12.4.10 The Scalar Product in Back-Face Detection
12.4.11 The Vector Product
12.4.12 The Right-Hand Rule
12.5 Deriving a Unit Normal Vector for a Triangle
12.6 Surface Areas
12.6.1 Calculating 2D Areas
12.7 Summary
12.8 Worked Examples
12.8.1 Position Vector
12.8.2 Unit Vector
12.8.3 Vector Magnitude
12.8.4 Angle Between Two Vectors
12.8.5 Vector Product
References
13 Complex Numbers
13.1 Introduction
13.2 Representing Complex Numbers
13.2.1 Complex Numbers
13.2.2 Real and Imaginary Parts
13.2.3 The Complex Plane
13.3 Complex Algebra
13.3.1 Algebraic Laws
13.3.2 Complex Conjugate
13.3.3 Complex Division
13.3.4 Powers of i
13.3.5 Rotational Qualities of i
13.3.6 Modulus and Argument
13.3.7 Complex Norm
13.3.8 Complex Inverse
13.3.9 Complex Exponentials
13.3.10 de Moivre's Theorem
13.3.11 nth Root of Unity
13.3.12 nth Roots of a Complex Number
13.3.13 Logarithm of a Complex Number
13.3.14 Raising a Complex Number to a Complex Power
13.3.15 Visualising Simple Complex Functions
13.3.16 The Hyperbolic Functions
13.4 Summary
13.5 Worked Examples
13.5.1 Complex Addition
13.5.2 Complex Products
13.5.3 Complex Division
13.5.4 Complex Rotation
13.5.5 Polar Notation
13.5.6 Real and Imaginary Parts
13.5.7 Magnitude of a Complex Number
13.5.8 Complex Norm
13.5.9 Complex Inverse
13.5.10 de Moivre's Theorem
13.5.11 nth Root of Unity
13.5.12 Roots of a Complex Number
13.5.13 Logarithm of a Complex Number
13.5.14 Raising a Number to a Complex Power
References
14 Matrices
14.1 Introduction
14.2 Geometric Transforms
14.3 Transforms and Matrices
14.4 Matrix Notation
14.4.1 Matrix Dimension or Order
14.4.2 Square Matrix
14.4.3 Column Vector
14.4.4 Row Vector
14.4.5 Null Matrix
14.4.6 Unit Matrix
14.4.7 Trace
14.4.8 Determinant of a Matrix
14.4.9 Transpose
14.4.10 Symmetric Matrix
14.4.11 Antisymmetric Matrix
14.5 Matrix Addition and Subtraction
14.5.1 Scalar Multiplication
14.6 Matrix Products
14.6.1 Row and Column Vectors
14.6.2 Row Vector and a Matrix
14.6.3 Matrix and a Column Vector
14.6.4 Square Matrices
14.6.5 Rectangular Matrices
14.7 Inverse Matrix
14.7.1 Inverting a Pair of Matrices
14.8 Orthogonal Matrix
14.9 Diagonal Matrix
14.10 Worked Examples
14.10.1 Matrix Inversion
14.10.2 Identity Matrix
14.10.3 Solving Two Equations Using Matrices
14.10.4 Solving Three Equations Using Matrices
14.10.5 Solving Two Complex Equations
14.10.6 Solving Three Complex Equations
14.10.7 Solving Two Complex Equations
14.10.8 Solving Three Complex Equations
15 Geometric Matrix Transforms
15.1 Introduction
15.2 Matrix Transforms
15.2.1 2D Translation
15.2.2 2D Scaling
15.2.3 2D Reflections
15.2.4 2D Shearing
15.2.5 2D Rotation
15.2.6 2D Scaling
15.2.7 2D Reflection
15.2.8 2D Rotation About an Arbitrary Point
15.3 3D Transforms
15.3.1 3D Translation
15.3.2 3D Scaling
15.3.3 3D Rotation
15.3.4 Rotating About an Axis
15.3.5 3D Reflections
15.4 Rotating a Point About an Arbitrary Axis
15.4.1 Matrices
15.5 Determinant of a Transform
15.6 Perspective Projection
15.7 Worked Examples
15.7.1 2D Scale and Translate
15.7.2 2D Rotation
15.7.3 Determinant of the Rotate Transform
15.7.4 Determinant of the Shear Transform
15.7.5 Yaw, Pitch and Roll Transforms
15.7.6 Rotation About an Arbitrary Axis
15.7.7 3D Rotation Transform Matrix
15.7.8 Perspective Projection
16 Calculus: Derivatives
16.1 Introduction
16.2 Background
16.3 Small Numerical Quantities
16.4 Equations and Limits
16.4.1 Quadratic Function
16.4.2 Cubic Equation
16.4.3 Functions and Limits
16.4.4 Graphical Interpretation of the Derivative
16.4.5 Derivatives and Differentials
16.4.6 Integration and Antiderivatives
16.5 Function Types
16.6 Differentiating Groups of Functions
16.6.1 Sums of Functions
16.6.2 Function of a Function
16.6.3 Function Products
16.6.4 Function Quotients
16.7 Differentiating Implicit Functions
16.8 Differentiating Exponential and Logarithmic Functions
16.8.1 Exponential Functions
16.8.2 Logarithmic Functions
16.9 Differentiating Trigonometric Functions
16.9.1 Differentiating tan
16.9.2 Differentiating csc
16.9.3 Differentiating sec
16.9.4 Differentiating cot
16.9.5 Differentiating arcsin, arccos and arctan
16.9.6 Differentiating arccsc, arcsec and arccot
16.10 Differentiating Hyperbolic Functions
16.10.1 Differentiating sinh, cosh and tanh
16.11 Higher Derivatives
16.12 Higher Derivatives of a Polynomial
16.13 Identifying a Local Maximum or Minimum
16.14 Partial Derivatives
16.14.1 Visualising Partial Derivatives
16.14.2 Mixed Partial Derivatives
16.15 Chain Rule
16.16 Total Derivative
16.17 Power Series
16.18 Worked Examples
16.18.1 Antiderivative 1
16.18.2 Antiderivative 2
16.18.3 Differentiating Sums of Functions
16.18.4 Differentiating a Function Product
16.18.5 Differentiating an Implicit Function
16.18.6 Differentiating a General Implicit Function
16.18.7 Local Maximum or Minimum
16.18.8 Partial Derivatives
16.18.9 Mixed Partial Derivative 1
16.18.10 Mixed Partial Derivative 2
16.18.11 Total Derivative
17 Calculus: Integration
17.1 Introduction
17.2 Indefinite Integral
17.3 Integration Techniques
17.3.1 Continuous Functions
17.3.2 Difficult Functions
17.4 Trigonometric Identities
17.4.1 Exponent Notation
17.4.2 Completing the Square
17.4.3 The Integrand Contains a Derivative
17.4.4 Converting the Integrand into a Series of Fractions
17.4.5 Integration by Parts
17.4.6 Integration by Substitution
17.4.7 Partial Fractions
17.5 Summary
17.6 Worked Examples
17.6.1 Integrating a Function Containing its Own Derivative
17.6.2 Dividing an Integral into Several Integrals
17.6.3 Integrating by Parts 1
17.6.4 Integrating by Parts 2
17.6.5 Integrating by Substitution 1
17.6.6 Integrating by Substitution 2
17.6.7 Integrating by Substitution 3
17.6.8 Integrating with Partial Fractions
18 Area
18.1 Introduction
18.2 Area Under a Graph
18.3 Calculating Areas
18.4 Positive and Negative Areas
18.5 Area Between Two Functions
18.6 Areas with the y-Axis
18.7 Area with Parametric Functions
18.8 The Riemann Sum
18.9 Surface of Revolution
18.9.1 Surface Area of a Cylinder
18.9.2 Surface Area of a Right Cone
18.9.3 Surface Area of a Sphere
18.9.4 Surface Area of a Paraboloid
18.10 Surface Area Using Parametric Functions
18.11 Double Integrals
18.12 Jacobians
18.12.1 1D Jacobian
18.12.2 2D Jacobian
18.12.3 3D Jacobian
18.13 Double Integrals for Calculating Area
18.14 Summary
18.14.1 Summary of Formulae
19 Volume
19.1 Introduction
19.2 Solid of Revolution: Disks
19.2.1 Volume of a Cylinder
19.2.2 Volume of a Right Cone
19.2.3 Volume of a Right Conical Frustum
19.2.4 Volume of a Sphere
19.2.5 Volume of an Ellipsoid
19.2.6 Volume of a Paraboloid
19.3 Solid of Revolution: Shells
19.3.1 Volume of a Cylinder
19.3.2 Volume of a Right Cone
19.3.3 Volume of a Sphere
19.3.4 Volume of a Paraboloid
19.4 Volumes with Double Integrals
19.4.1 Objects with a Rectangular Base
19.4.2 Rectangular Box
19.4.3 Rectangular Prism
19.4.4 Curved Top
19.4.5 Objects with a Circular Base
19.4.6 Cylinder
19.4.7 Truncated Cylinder
19.5 Volumes with Triple Integrals
19.5.1 Rectangular Box
19.5.2 Volume of a Cylinder
19.5.3 Volume of a Sphere
19.5.4 Volume of a Cone
19.6 Summary
19.6.1 Summary of Formulae
Appendix A Limit of (sinθ)/θ
Appendix B Integrating cosnθ
Index