# Direct product diagrams are supposed to have at least length 1
direct_product := diagram[ 1 ];
for i in [ 2 .. Length( diagram ) ] do
direct_product := binary_direct_product_func( cat, direct_product, diagram[ i ] );
od;
return direct_product; end; end );
CAPAddPrepareFunction( CAP_PREFUNCTION_BINARY_DIRECT_PRODUCT_TO_DIRECT_PRODUCT, "BinaryDirectSumToDirectSum", "turns a binary direct sum function into a n-ary direct sum function" );
CAPAddPrepareFunction( CAP_PREFUNCTION_BINARY_DIRECT_PRODUCT_TO_DIRECT_PRODUCT, "BinaryDirectProductToDirectProduct", "turns a binary direct product function into a n-ary direct product function" );
CAPAddPrepareFunction( CAP_PREFUNCTION_BINARY_DIRECT_PRODUCT_TO_DIRECT_PRODUCT, "BinaryCoproductToCoproduct", "turns a binary coproduct function into a n-ary coproduct function" );
CAPAddPrepareFunction( GET_CAP_PREFUNCTION_PROJECTION_IN_FACTOR_OF_BINARY_DIRECT_PRODUCT_TO_PROJECTION_IN_FACTOR_OF_DIRECT_PRODUCT( DirectSum, "limit" ), "ProjectionInFactorOfBinaryDirectSumToProjectionInFactorOfDirectSum", "turns a projection in factor of binary direct sum function into a projection in factor of n-ary direct sum function",
[ "DirectSum" ] );
CAPAddPrepareFunction( GET_CAP_PREFUNCTION_PROJECTION_IN_FACTOR_OF_BINARY_DIRECT_PRODUCT_TO_PROJECTION_IN_FACTOR_OF_DIRECT_PRODUCT( DirectProduct, "limit" ), "ProjectionInFactorOfBinaryDirectProductToProjectionInFactorOfDirectProduct", "turns a projection in factor of binary direct product function into a projection in factor of n-ary direct product function",
[ "DirectProduct" ] );
CAPAddPrepareFunction( GET_CAP_PREFUNCTION_PROJECTION_IN_FACTOR_OF_BINARY_DIRECT_PRODUCT_TO_PROJECTION_IN_FACTOR_OF_DIRECT_PRODUCT( Coproduct, "colimit" ), "InjectionOfCofactorOfBinaryCoproductToInjectionOfCofactorOfCoproduct", "turns an injection of cofactor of binary coproduct function into an injection of cofactor of n-ary coproduct function",
[ "Coproduct" ] );
##
BindGlobal( "CAP_PREFUNCTION_UNIVERSAL_MORPHISM_INTO_BINARY_DIRECT_PRODUCT_TO_UNIVERSAL_MORPHISM_INTO_DIRECT_PRODUCT", function( universal_morphism_into_binary_direct_product_func, category )
return function( cat, diagram, test_object, tau )
local universal_morphism, i;
# Direct product diagrams are supposed to have at least length 1
universal_morphism := tau[ 1 ];
for i in [ 2 .. Length( diagram ) ] do
universal_morphism := universal_morphism_into_binary_direct_product_func( cat, universal_morphism, tau[ i ] );
od;
return universal_morphism; end; end );
CAPAddPrepareFunction( CAP_PREFUNCTION_UNIVERSAL_MORPHISM_INTO_BINARY_DIRECT_PRODUCT_TO_UNIVERSAL_MORPHISM_INTO_DIRECT_PRODUCT, "UniversalMorphismIntoBinaryDirectSumToUniversalMorphismIntoDirectSum", "turns a universal morphism into binary direct sum function into a universal morphism into n-ary direct sum function" );
CAPAddPrepareFunction( CAP_PREFUNCTION_UNIVERSAL_MORPHISM_INTO_BINARY_DIRECT_PRODUCT_TO_UNIVERSAL_MORPHISM_INTO_DIRECT_PRODUCT, "UniversalMorphismIntoBinaryDirectProductToUniversalMorphismIntoDirectProduct", "turns a universal morphism into binary direct product function into a universal morphism into n-ary direct product function" );
CAPAddPrepareFunction( CAP_PREFUNCTION_UNIVERSAL_MORPHISM_INTO_BINARY_DIRECT_PRODUCT_TO_UNIVERSAL_MORPHISM_INTO_DIRECT_PRODUCT, "UniversalMorphismFromBinaryCoproductToUniversalMorphismFromCoproduct", "turns a universal morphism from binary coproduct function into a universal morphism from n-ary coproduct function" );
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.489 Sekunden
(vorverarbeitet am 2026-10-14)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.