1. Add CartesianProductEJA. 2. Check the axioms in the constructor when check != False?