Skip to main content

Sets, Relations and Functions

  • Chapter
  • First Online:
Guide to Discrete Mathematics

Part of the book series: Texts in Computer Science ((TCS))

Abstract

This chapter provides an introduction to fundamental building blocks in mathematics such as sets, relations and functions. Sets are collections of well-defined objects; relations indicate relationships between members of two sets A and B; and functions are a special type of relation where there is exactly (or at most) one relationship for each element aA with an element in B. A set is a collection of well-defined objects that contains no duplicates. A binary relation R (A, B) where A and B are sets is a subset of the Cartesian product (A × B) of A and B. The notation aRb signifies that there is a relation between a and b and that (a, b) ∈R. A total function f: AB is a special relation such that for each element a ∈ A there is exactly one element b ∈ B. This is written as f(a) = b. A partial function differs from a total function in that the function may be undefined for one or more values of A.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 44.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 59.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    We distinguish between total and partial functions. A total function f: AB is defined for every element in A whereas a partial function may be undefined for one or more values in A.

  2. 2.

    There are mathematical objects known as multi-sets or bags that allow duplication of elements. For example, a bag of marbles may contain three green marbles, two blue and one red marble.

  3. 3.

    The British logician, John Venn, invented the Venn diagram. It provides a visual representation of a set and the various set theoretical operations. Their use is limited to the representation of two or three sets as they become cumbersome with a larger number of sets.

  4. 4.

    The natural numbers, integers and rational numbers are countable sets whereas the real and complex numbers are uncountable sets.

  5. 5.

    Cartesian product is named after René Descartes who was a famous 17th French mathematician and philosopher. He invented the Cartesian coordinates system that links geometry and algebra, and allows geometric shapes to be defined by algebraic equations.

  6. 6.

    We discuss permutations and combinations in Chap. 5.

  7. 7.

    Parnas made important contributions to software engineering in the 1970s. He invented information hiding which is used in object-oriented design.

  8. 8.

    We distinguish between total and partial functions. A total function is defined for all elements in the domain whereas a partial function may be undefined for one or more elements in the domain.

  9. 9.

    Higher order functions are functions take functions as arguments or return a function as a result. They are known as operators (or functionals) in mathematics, and one example is the derivative function dy/dx that takes a function as an argument and returns a function as a result.

  10. 10.

    Monads are used in functional programming to express input and output operations without introducing side effects. The Haskell functional programming language makes use of uses this feature.

  11. 11.

    This is the most common algorithm used to perform type inference. Type inference is concerned with determining the type of the value derived from the eventual evaluation of an expression.

  12. 12.

    Lisp is a multi-paradigm language rather than a functional programming language.

  13. 13.

    Iverson received the Turing Award in 1979 for his contributions to programming language and mathematical notation. The title of his Turing award paper was ‘Notation as a tool of thought’.

References

  1. Software Fundamentals. Collected Papers by David L. Parnas. Edited by Daniel Hoffman and David Weiss. Addison Wesley. 2001.

    Google Scholar 

  2. A Relational Model of Data for Large Shared Data Banks. E.F. Codd. Communications of the ACM 13 (6): 377–387. 1970.

    Google Scholar 

  3. An Introduction to Database Systems. 3rd Edition. C.J. Date. The Systems Programming Series. 1981.

    Google Scholar 

  4. Introduction to the History of Computing. Gerard O’Regan. Springer Verlag. 2016.

    Google Scholar 

  5. Miranda. David Turner. Proceedings IFIP Conference, Nancy France, Springer LNCS (201). September 1985.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gerard O’Regan .

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

O’Regan, G. (2016). Sets, Relations and Functions. In: Guide to Discrete Mathematics. Texts in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-319-44561-8_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-44561-8_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-44560-1

  • Online ISBN: 978-3-319-44561-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics