# Morphisms Between Finite Algebras¶

class sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra_morphism.FiniteDimensionalAlgebraHomset(R, S, category=None)

Set of morphisms between two finite-dimensional algebras.

zero()

Construct the zero morphism of self.

EXAMPLES:

sage: A = FiniteDimensionalAlgebra(QQ, [Matrix()])
sage: B = FiniteDimensionalAlgebra(QQ, [Matrix([[1, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])])
sage: H = Hom(A, B)
sage: H.zero()
Morphism from Finite-dimensional algebra of degree 1 over Rational Field to
Finite-dimensional algebra of degree 2 over Rational Field given by matrix
[0 0]

class sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra_morphism.FiniteDimensionalAlgebraMorphism(parent, f, check=True, unitary=True)

Create a morphism between two finite-dimensional algebras.

INPUT:

• parent – the parent homset
• f – matrix of the underlying $$k$$-linear map
• unitary – boolean (default: True); if True and check is also True, raise a ValueError unless A and B are unitary and f respects unit elements
• check – boolean (default: True); check whether the given $$k$$-linear map really defines a (not necessarily unitary) $$k$$-algebra homomorphism

The algebras A and B must be defined over the same base field.

EXAMPLES:

sage: from sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra_morphism import FiniteDimensionalAlgebraMorphism
sage: A = FiniteDimensionalAlgebra(QQ, [Matrix([[1, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])])
sage: B = FiniteDimensionalAlgebra(QQ, [Matrix()])
sage: H = Hom(A, B)
sage: f = H(Matrix([, ]))
sage: f.domain() is A
True
sage: f.codomain() is B
True
sage: f(A.basis())
e
sage: f(A.basis())
0


Todo

An example illustrating unitary flag.

inverse_image(I)

Return the inverse image of I under self.

INPUT:

• IFiniteDimensionalAlgebraIdeal, an ideal of self.codomain()

OUTPUT:

FiniteDimensionalAlgebraIdeal, the inverse image of $$I$$ under self.

EXAMPLES:

sage: A = FiniteDimensionalAlgebra(QQ, [Matrix([[1, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])])
sage: I = A.maximal_ideal()
sage: q = A.quotient_map(I)
sage: B = q.codomain()
sage: q.inverse_image(B.zero_ideal()) == I
True

matrix()

Return the matrix of self.

EXAMPLES:

sage: A = FiniteDimensionalAlgebra(QQ, [Matrix([[1, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])])
sage: B = FiniteDimensionalAlgebra(QQ, [Matrix()])
sage: M = Matrix([, ])
sage: H = Hom(A, B)
sage: f = H(M)
sage: f.matrix() == M
True