In this chapter I've presented precise definitions for the fundamental concepts tuple and relation. As I said in the introductory section, those definitions can be a little daunting at first, but I hope you were able to make sense of them after having read the first two chapters. I also discussed tuple and relation types, and showed some examples of tuple and relation selector invocations. And I discussed certain important consequences of the definitions:
Other consequences already covered in earlier chapters include:
I also gave some important pragmatic arguments in favor of prohibiting both duplicates and nulls. And I finished up by briefly introducing the very important degree-zero relations TABLE_DUM and TABLE_DEE; DUM means NO or FALSE, and DEE means YES or TRUE.