AUTHORS:
Bases: sage.structure.unique_representation.UniqueRepresentation, sage.structure.parent.Parent
A class implementing a raw data structure for cartesian products of sets (and elements thereof). See cartesian_product for how to construct full fledge cartesian products.
Return the cartesian product of the given elements.
This implements Sets.CartesianProducts.ParentMethods._cartesian_product_of_elements().
INPUT:
Warning
This is meant as a fast low-level method. In particular, no coercion is attempted. When coercion or sanity checks are desirable, please use instead self(elements) or self._element_constructor(elements).
EXAMPLES:
sage: S1 = Sets().example()
sage: S2 = InfiniteEnumeratedSets().example()
sage: C = cartesian_product([S2, S1, S2])
sage: C._cartesian_product_of_elements([S2.an_element(), S1.an_element(), S2.an_element()])
(42, 47, 42)
Bases: sage.structure.element_wrapper.ElementWrapper
EXAMPLES:
sage: from sage.structure.element_wrapper import DummyParent
sage: a = ElementWrapper(DummyParent("A parent"), 1)
TESTS:
sage: TestSuite(a).run(skip = "_test_category")
sage: a = ElementWrapper(1, DummyParent("A parent"))
doctest:...: DeprecationWarning: the first argument must be a parent
See http://trac.sagemath.org/14519 for details.
Note
ElementWrapper is not intended to be used directly, hence the failing category test.
Return the projection of self on the -th factor of
the cartesian product, as per
Sets.CartesianProducts.ElementMethods.cartesian_projection().
INPUTS:
EXAMPLES:
sage: C = Sets().CartesianProducts().example(); C
The cartesian product of (Set of prime numbers (basic implementation), An example of an infinite enumerated set: the non negative integers, An example of a finite enumerated set: {1,2,3})
sage: x = C.an_element(); x
(47, 42, 1)
sage: x.cartesian_projection(1)
42
sage: x.summand_projection(1)
doctest:...: DeprecationWarning: summand_projection is deprecated. Please use cartesian_projection instead.
See http://trac.sagemath.org/10963 for details.
42
EXAMPLES:
sage: C = Sets().CartesianProducts().example(); C
The cartesian product of (Set of prime numbers (basic implementation),
An example of an infinite enumerated set: the non negative integers,
An example of a finite enumerated set: {1,2,3})
sage: C.an_element()
(47, 42, 1)
Return the cartesian factors of self.
EXAMPLES:
sage: cartesian_product([QQ, ZZ, ZZ]).cartesian_factors()
(Rational Field, Integer Ring, Integer Ring)
Return the natural projection onto the -th cartesian
factor of self as per
Sets.CartesianProducts.ParentMethods.cartesian_projection().
INPUT:
EXAMPLES:
sage: C = Sets().CartesianProducts().example(); C
The cartesian product of (Set of prime numbers (basic implementation), An example of an infinite enumerated set: the non negative integers, An example of a finite enumerated set: {1,2,3})
sage: x = C.an_element(); x
(47, 42, 1)
sage: pi = C.cartesian_projection(1)
sage: pi(x)
42
Deprecated: Use cartesian_projection() instead. See trac ticket #10963 for details.