The fundamental assumption of the relational model is that all data is represented as mathematical "n"-ary relations, an "n"-ary relation being a subset of the Cartesian product of "n" domains. In the mathematical model, reasoning about such data is done in two-valued predicate logic, meaning there are two possible evaluations for each proposition: either "true" or "false" (and in particular no third value such as "unknown", or "not applicable", either of which are often associated with the concept of NULL). Data are operated upon by means of a relational calculus or relational algebra, these being equivalent in expressive power.