class_docstr: Represents a morphism which is a composition of other morphisms.
  
  Explanation
  ===========
  
  Two composite morphisms are equal if the morphisms they were
  obtained from (components) are the same and were listed in the
  same order.
  
  The arguments to the constructor for this class should be listed
  in diagram order: to obtain the composition `g\circ f` from the
  instances of :class:`Morphism` ``g`` and ``f`` use
  ``CompositeMorphism(f, g)``.
  
  Examples
  ========
  
  >>> from sympy.categories import Object, NamedMorphism, CompositeMorphism
  >>> A = Object("A")
  >>> B = Object("B")
  >>> C = Object("C")
  >>> f = NamedMorphism(A, B, "f")
  >>> g = NamedMorphism(B, C, "g")
  >>> g * f
  CompositeMorphism((NamedMorphism(Object("A"), Object("B"), "f"),
  NamedMorphism(Object("B"), Object("C"), "g")))
  >>> CompositeMorphism(f, g) == g * f
  True
class_docstr_tok: ["Represents","a","morphism","which","is","a","composition","of","other","morphisms",".","Explanation","===========","Two","composite","morphisms","are","equal","if","the","morphisms","they","were","obtained","from","(","components",")","are","the","same","and","were","listed","in","the","same","order",".","The","arguments","to","the","constructor","for","this","class","should","be","listed","in","diagram","order",":","to","obtain","the","composition","`","g\\circ","f","`","from","the","instances","of",":","class",":","`","Morphism","`","``","g","``","and","``","f","``","use","``","CompositeMorphism","(","f",",","g",")","``",".","Examples","========",">",">",">","from","sympy.categories","import","Object",",","NamedMorphism",",","CompositeMorphism",">",">",">","A","=","Object","(","``","A","''",")",">",">",">","B","=","Object","(","``","B","''",")",">",">",">","C","=","Object","(","``","C","''",")",">",">",">","f","=","NamedMorphism","(","A",",","B",",","``","f","''",")",">",">",">","g","=","NamedMorphism","(","B",",","C",",","``","g","''",")",">",">",">","g","*","f","CompositeMorphism","(","(","NamedMorphism","(","Object","(","``","A","''",")",",","Object","(","``","B","''",")",",","``","f","''",")",",","NamedMorphism","(","Object","(","``","B","''",")",",","Object","(","``","C","''",")",",","``","g","''",")",")",")",">",">",">","CompositeMorphism","(","f",",","g",")","==","g","*","f","True"]
docstr: Returns the domain of this composite morphism.
  
  The domain of the composite morphism is the domain of its
  first component.
  
  Examples
  ========
  
  >>> from sympy.categories import Object, NamedMorphism
  >>> A = Object("A")
  >>> B = Object("B")
  >>> C = Object("C")
  >>> f = NamedMorphism(A, B, "f")
  >>> g = NamedMorphism(B, C, "g")
  >>> (g * f).domain
  Object("A")
docstr_tok: ["Returns","the","domain","of","this","composite","morphism",".","The","domain","of","the","composite","morphism","is","the","domain","of","its","first","component",".","Examples","========",">",">",">","from","sympy.categories","import","Object",",","NamedMorphism",">",">",">","A","=","Object","(","``","A","''",")",">",">",">","B","=","Object","(","``","B","''",")",">",">",">","C","=","Object","(","``","C","''",")",">",">",">","f","=","NamedMorphism","(","A",",","B",",","``","f","''",")",">",">",">","g","=","NamedMorphism","(","B",",","C",",","``","g","''",")",">",">",">","(","g","*","f",")",".domain","Object","(","``","A","''",")"]
code: def domain(self):
      """
      Returns the domain of this composite morphism.
  
      The domain of the composite morphism is the domain of its
      first component.
  
      Examples
      ========
  
      >>> from sympy.categories import Object, NamedMorphism
      >>> A = Object("A")
      >>> B = Object("B")
      >>> C = Object("C")
      >>> f = NamedMorphism(A, B, "f")
      >>> g = NamedMorphism(B, C, "g")
      >>> (g * f).domain
      Object("A")
  
      """
      return self.components[0].domain
  
imports: from sympy.core import S, Basic, Dict, Symbol, Tuple, sympify
  from sympy.core.symbol import Str
  from sympy.sets import Set, FiniteSet, EmptySet
  from sympy.utilities.iterables import iterable
label_desc: Use image node_id 4 for calling the CompositeMorphism obj's underlying member method code with example usage: obj.domain() and returns: self