4

I apologize if this question is on the wrong site, but hopefully I am asking this question on the correct site (and it's not, for example, for DBA professionals).

I am looking to learn a somewhat rigorous approach to relational algebra/calculus used for describing database theory. I already have a decent experience in the real-world with SQL and Database Design, but was wondering if there is a formal take on the mathematics behind it, and if so, a reference that I could use to self-teach.

It's also possible that this isn't a real math discipline worthy of a book/thesis-type discussion, in the same way that basic trigonometry could probably be covered in a few weeks in a Precalculus course and wouldn't require a full-length book to go over. (For reference, I have a background in calculus, linear algebra, and differential equations, so hopefully if it is its own math discipline I'll be suited to understanding it!) Thank you very much for your help and suggestions.

Arctic Char
  • 16,972
David542
  • 241
  • 1
    Abiteboul, Serge, et al. Foundations of Databases. 1st ed., Addison Wesley, 1995. – beroal Aug 18 '20 at 12:56
  • @beroal could you elaborate a bit please? Is this the book? https://wiki.epfl.ch/provenance2011/documents/foundations%20of%20databases-abiteboul-1995.pdf. And what topics / levels are discussed: what type of math would be a prerequisite? – David542 Aug 18 '20 at 19:11
  • @beroal for example, these topics here is says are introductory: https://imgur.com/a/FP4QN3i. ...and I really have no idea what it's talking about by sentence 3. – David542 Aug 18 '20 at 19:14

2 Answers2

1

Though it's not a reference in the traditional sense, this free Udacity course covers pretty much exactly what you mentioned (especially in lesson two): relational algebra and calculus.

Do note that I haven't taken the course myself, so I can't comment on the quality of the course, but I hope that it can help you out a bit.

Additionally, for the book that a commenter mentioned, you'll need at least an intermediate understanding of graph theory, computer science and abstract algebra.
The first seven chapters of this graph theory textbook are a good introduction, though a bit wordy at times. Additionally, this book on abstract algebra by Charles C. Pinter is a tad heavy on the lingo from time to time but a very good introduction to most structures you'll encounter in doing database management stuff. Not only that, but the concepts you'll encounter in these books are really good for getting a more "mathematical" insight in a lot of day-to-day things.

Good luck with the self-teaching!

simeondermaats
  • 464
  • 2
  • 10
  • thanks I'll check that out. From the link that beroal added in the comment, what type of math would the following understanding require? A binary relation over a (finite or infinite) set S is a subset R of S × S, the crossproduct of S with itself. We sometimes write R(x, y) or xRy to denote that (x, y) ∈ R. For example, if Z is a set, then inclusion (⊆) is a binary relation over the power set P(Z) of Z and also over the finitary power set Pfin(Z) of Z (i.e., the set of all finite subsets of Z). Viewed as sets, the binary...IN |= ∀y∀z(x ≈ y × z → (y ≈ S(0) ∨ z ≈ S(0)))[µ] – David542 Sep 01 '20 at 21:29
  • 1
    I'd say it's part set theory and part relational algebra. I seem to remember an excellent paper explaining these concepts very well but it might be in Dutch. Oh well. I'll go look for it anyway. Having a quick look through this article, it seems to start off with the basics (which you may or may not already know), and this one is quite a bit more in-depth. – simeondermaats Sep 01 '20 at 21:37
  • thanks! Is set theory usually its own undergraduate course, or is it usually covered as part of something else, such as discrete math (though discrete math seems to be more like a light survey of lots of math classes) ? – David542 Sep 01 '20 at 21:40
  • finally one last thing if you are interested in elaborating the answer a bit -- would you be able to briefly scan the first chapter in the book linked above -- https://wiki.epfl.ch/provenance2011/documents/foundations%20of%20databases-abiteboul-1995.pdf -- and let me know what prerequisites you think might be required to understand, as it looks like quite a rigorous treatment of the stuff (at least to me with a very light math background). – David542 Sep 01 '20 at 21:42
  • @David542 The first chapter of the book you linked is purely an introduction, including a bit of the history of how database structures came to be. The second chapter, however, which is the chapter featuring the maths you mentioned above is pretty heavy on abstract algebra,. graph theory and computer science. Any textbook that explains these abstract algebraic structures (such as lattices and sets and such) and the other concepts is likely what the book assumes you already know. – simeondermaats Sep 02 '20 at 06:20
  • thanks for taking a look do you know any good books or a link that would explain that? Or is it a combination of fields. Finally, do you want to add that all into the answer, and I'll go ahead and accept it? – David542 Sep 02 '20 at 18:01
  • I've just added some books, as well as some explanation on why they're useful. – simeondermaats Sep 02 '20 at 19:02
0

When I started of in high school I often found my classical text books with a lot of leap of faith kind of logic when it came to explaining certain theorems (and at times limited in terms of scope). To get your fundamentals correct I'd suggest the following two books:

  • Higher Algebra by Hall and Knight
  • Problems In Calculus Of One Variable by I. A. Maron

Best of luck learning!

  • thanks, for the Calculus book. Is that a book in Analysis, or a standard Calculus book? I was looking through the table of contents. – David542 Sep 02 '20 at 18:50
  • It's a standard calculus book for single variables. It's meant mostly for understanding the fundamentals of calculus – Kaustubh Sep 03 '20 at 01:34