# Unit 23 Mathematics for Software Development

## Aim

To provide learners with an understanding of the underlying mathematical concepts that support the diverse fields supported by software engineers.

### Unit abstract

This Unit 23 Mathematics for Software Development is an introduction to some of the mathematical concepts and techniques that will be required by software engineers. To develop the mathematical skills necessary for software engineering learners must gain a range of mathematical skills, which are often applied in the creation of coded solutions to everyday problems. The unit will allow the learner to appreciate and prepare for the more advanced concepts of mathematics required in relation to software engineering. Learners taking this unit will explore areas of mathematics that are used to support programming. It will cover conditional statements, graphics and gaming (geometry and vectors), relationships in databases, the calling of methods (or procedures), matrices in the handling of arrays, large datasets and mapping, statistics, calculus and set theory.

### Learning outcomes

#### 1 Understand core mathematical skills for software engineers

• Algebra: basic notation and rules of algebra; multiplication and factorisation of algebraic expressions involving brackets, algebraic equations and simultaneous linear equations, quadratic equations involving real roots
• Geometry: types and properties of triangles, Pythagoras’ Theorem, geometric properties of a circle; trigonometry: eg sine, cosine and tangent functions, angular measure
• Vectors: representation of a vector by a straight line, equal and parallel vectors, magnitude of a vector, vector addition and subtraction, scalar multiplication, linear transformations, rotations, reflections, translations, inverse transformations, axioms of a vector space

#### 2 Understand the application of algebraic concepts

• Relations: domain, range, Cartesian product, universal relation, empty relation, inverse relation, reflexive, symmetric and transitive properties, equivalence relations
• Matrices: addition and subtraction, scalar multiplication, matrix multiplication, properties of addition and multiplication of matrices, transpose of a matrix, determinant, identify matrix, inverse of a matrix, condition for a matrix to be singular, solution of simultaneous linear equations
• Application in programming: use of variables and operators, using mathematics based commands, arrays, conditional statements, pseudo code, demonstration code.

#### 3 Be able to apply the fundamentals of formal methods

• Sets: definitions of set and element, representation of sets using Venn diagrams, universal and empty sets, finite and infinite sets, N, Z and R, operations on sets, subsets, notation, predicates; laws of set theory; idempotent, associative, commutative, distributive, identity, involution, complement, De Morgan’s laws
• Propositional calculus: simple and compound propositions, conjunction, disjunction, negation, implication and bi-implication, truth tables, validity, principle of mathematical induction, logical argument and deductive proof
• Boolean laws of propositional calculus: idempotent, associative, commutative, distributive, identity, involution, complement, De Morgan’s Laws

#### 4 Be able to apply statistical techniques to analyse data

• Techniques: frequency distribution, mean, median, variance, deviation, correlation probability, factorial notation, permutations and combinations, laws of probability, conditional probability, Bayesian Networks.

### Resources

#### Books

Press W et al – Numerical Recipes 3rd Edition: The Art of Scientific Computing (Cambridge University Press, 2007) ISBN-10: 0521880688
Press W et al – Numerical Recipes Source Code CD-ROM 3rd Edition: The Art of Scientific Computing (Cambridge University Press, 2007) ISBN-10: 0521706858
Golub G, Van Loan C – Matrix Computations (Johns Hopkins Studies in the Mathematical Sciences) (John Hopkins University Press, 1996) ISBN-10: 0801854148
Haggarty R – Discrete Mathematics for Computing (Addison Wesley, 2001) ISBN-10: 0201730472 Schwartz JT et al – Set Theory for Computing: From Decision Procedures to Declarative
Programming with Sets (Monographs in Computer Science) (Springer 2001) ISBN-10: 0387951970 Rothenberg R – Basic Computing for Calculus (McGraw Hill, 1985) ISBN-10: 007054011X

##### Websites

www.mathsandcomputing.com/

##### Our Features
• FULL TIME EXPERTS
• BEST QUALITY WORK
• TALK TO SUBJECT EXPERT
• PLAGIARISM FREE
• PART PAYMENT OPTION
##### Andes
5

Thank you so much

##### Aliza Smith
5

I was running short of time in writing assignment as I ha...

##### Kurt Low
4

Good Work, answer of the task is awesome. There are no si...

##### Related Solutions

Related solutions yet to come.