From 75c8146ac99ecd799942346aa4657b945fe28de2 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Wed, 10 Jan 2024 02:39:51 +0100 Subject: [PATCH] Replace InstallValue and InstallGobalFunction by BindGlobal .. in many cases. Note that `InstallValue` is a somewhat dangerous operation that we hope to phase out in GAP on the long run. --- GradedModules/gap/BasicFunctors.gd | 29 ----------- GradedModules/gap/BasicFunctors.gi | 24 ++++----- GradedModules/gap/GradedStructureFunctors.gd | 49 ++--------------- GradedModules/gap/GradedStructureFunctors.gi | 36 ++++++------- GradedModules/gap/Koszul.gd | 18 +------ GradedModules/gap/Koszul.gi | 16 +++--- GradedModules/gap/OtherFunctors.gd | 55 -------------------- GradedModules/gap/OtherFunctors.gi | 54 +++++++++---------- GradedModules/gap/ToolFunctors.gd | 40 -------------- GradedModules/gap/ToolFunctors.gi | 32 ++++++------ Modules/gap/BasicFunctors.gd | 29 +---------- Modules/gap/BasicFunctors.gi | 24 ++++----- Modules/gap/ToolFunctors.gd | 40 -------------- Modules/gap/ToolFunctors.gi | 32 ++++++------ homalg/gap/BasicFunctors.gd | 13 ----- homalg/gap/BasicFunctors.gi | 10 ++-- homalg/gap/OtherFunctors.gd | 25 +-------- homalg/gap/OtherFunctors.gi | 20 +++---- homalg/gap/ToolFunctors.gd | 24 --------- homalg/gap/ToolFunctors.gi | 16 +++--- 20 files changed, 138 insertions(+), 448 deletions(-) diff --git a/GradedModules/gap/BasicFunctors.gd b/GradedModules/gap/BasicFunctors.gd index 68f50220b..1b4603f9e 100644 --- a/GradedModules/gap/BasicFunctors.gd +++ b/GradedModules/gap/BasicFunctors.gd @@ -12,35 +12,6 @@ # #################################### -## Cokernel -DeclareGlobalFunction( "_Functor_Cokernel_OnGradedModules" ); - -DeclareGlobalVariable( "functor_Cokernel_ForGradedModules" ); - -## ImageObject -DeclareGlobalFunction( "_Functor_ImageObject_OnGradedModules" ); - -DeclareGlobalVariable( "functor_ImageObject_ForGradedModules" ); - -## GradedHom -DeclareGlobalFunction( "_Functor_GradedHom_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_GradedHom_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_GradedHom_ForGradedModules" ); - -## TensorProduct -DeclareGlobalFunction( "_Functor_TensorProduct_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_TensorProduct_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_TensorProduct_ForGradedModules" ); - -## BaseChange -DeclareGlobalFunction( "_functor_BaseChange_OnGradedModules" ); - -DeclareGlobalVariable( "functor_BaseChange_ForGradedModules" ); - #################################### # # global functions and operations: diff --git a/GradedModules/gap/BasicFunctors.gi b/GradedModules/gap/BasicFunctors.gi index 8efefc373..e168fb529 100644 --- a/GradedModules/gap/BasicFunctors.gi +++ b/GradedModules/gap/BasicFunctors.gi @@ -17,7 +17,7 @@ ## ## -InstallGlobalFunction( _Functor_Cokernel_OnGradedModules, ### defines: Cokernel(Epi) +BindGlobal( "_Functor_Cokernel_OnGradedModules", ### defines: Cokernel(Epi) function( phi ) local S, R, U_phi, epi, positions, p2, p, coker_U_phi, coker, gen_iso, img_emb, emb; @@ -118,7 +118,7 @@ end ); ## <#GAPDoc Label="functor_Cokernel:code"> ## ## ## ## ## <#/GAPDoc> ## -InstallGlobalFunction( _Functor_RepresentationMapOfRingElement_OnGradedModules, ### defines: RepresentationMapOfRingElement (object part) +BindGlobal( "_Functor_RepresentationMapOfRingElement_OnGradedModules", ### defines: RepresentationMapOfRingElement (object part) function( l, M ) local S, R, r, d, bd, bdp1, r_mult; @@ -220,7 +220,7 @@ InstallMethod( RepresentationMapOfRingElement, end ); -InstallValue( Functor_RepresentationMapOfRingElement_ForGradedModules, +BindGlobal( "Functor_RepresentationMapOfRingElement_ForGradedModules", CreateHomalgFunctor( [ "name", "RepresentationMapOfRingElement" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -255,7 +255,7 @@ InstallFunctor( Functor_RepresentationMapOfRingElement_ForGradedModules ); ## ## <#/GAPDoc> ## -InstallGlobalFunction( _Functor_SubmoduleGeneratedByHomogeneousPart_OnGradedModules, ### defines: SubmoduleGeneratedByHomogeneousPart (object part) +BindGlobal( "_Functor_SubmoduleGeneratedByHomogeneousPart_OnGradedModules", ### defines: SubmoduleGeneratedByHomogeneousPart (object part) function( d, M ) local deg, submodule; @@ -277,7 +277,7 @@ InstallGlobalFunction( _Functor_SubmoduleGeneratedByHomogeneousPart_OnGradedModu end ); ## -InstallGlobalFunction( _Functor_SubmoduleGeneratedByHomogeneousPart_OnGradedMaps, ### defines: SubmoduleGeneratedByHomogeneousPart (morphism part) +BindGlobal( "_Functor_SubmoduleGeneratedByHomogeneousPart_OnGradedMaps", ### defines: SubmoduleGeneratedByHomogeneousPart (morphism part) function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) local result; @@ -342,7 +342,7 @@ InstallMethod( SubmoduleGeneratedByHomogeneousPartEmbed, end ); -InstallValue( Functor_SubmoduleGeneratedByHomogeneousPart_ForGradedModules, +BindGlobal( "Functor_SubmoduleGeneratedByHomogeneousPart_ForGradedModules", CreateHomalgFunctor( [ "name", "SubmoduleGeneratedByHomogeneousPart" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -377,7 +377,7 @@ end ); ## ## -InstallGlobalFunction( _Functor_TruncatedSubmodule_OnGradedModules, +BindGlobal( "_Functor_TruncatedSubmodule_OnGradedModules", function( d, M ) local deg, certain_deg1, certain_part, certain_deg2, mat, phi1, phi2, phi, M2; @@ -426,7 +426,7 @@ InstallGlobalFunction( _Functor_TruncatedSubmodule_OnGradedModules, end ); ## -InstallGlobalFunction( _Functor_TruncatedSubmodule_OnGradedMaps, +BindGlobal( "_Functor_TruncatedSubmodule_OnGradedMaps", function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) local truncated_source_embedding, truncated_range_embedding; @@ -438,7 +438,7 @@ InstallGlobalFunction( _Functor_TruncatedSubmodule_OnGradedMaps, end ); -InstallValue( Functor_TruncatedSubmodule_ForGradedModules, +BindGlobal( "Functor_TruncatedSubmodule_ForGradedModules", CreateHomalgFunctor( [ "name", "TruncatedSubmodule" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -484,7 +484,7 @@ end ); ## ## -InstallGlobalFunction( _Functor_TruncatedModule_OnGradedModules, +BindGlobal( "_Functor_TruncatedModule_OnGradedModules", function( d, M ) @@ -492,7 +492,7 @@ InstallGlobalFunction( _Functor_TruncatedModule_OnGradedModules, end ); -InstallValue( Functor_TruncatedModule_ForGradedModules, +BindGlobal( "Functor_TruncatedModule_ForGradedModules", CreateHomalgFunctor( [ "name", "TruncatedModule" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -526,7 +526,7 @@ end ); ## ## -InstallGlobalFunction( _Functor_TruncatedSubmoduleRecursiveEmbed_OnGradedModules, ### defines: TruncatedSubmoduleRecursiveEmbed (object part) +BindGlobal( "_Functor_TruncatedSubmoduleRecursiveEmbed_OnGradedModules", ### defines: TruncatedSubmoduleRecursiveEmbed (object part) function( d, M ) @@ -534,7 +534,7 @@ InstallGlobalFunction( _Functor_TruncatedSubmoduleRecursiveEmbed_OnGradedModules end ); -InstallValue( Functor_TruncatedSubmoduleRecursiveEmbed_ForGradedModules, +BindGlobal( "Functor_TruncatedSubmoduleRecursiveEmbed_ForGradedModules", CreateHomalgFunctor( [ "name", "TruncatedSubmoduleRecursiveEmbed" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -618,7 +618,7 @@ InstallMethod( RepresentationOfMorphismOnHomogeneousParts, end ); -InstallGlobalFunction( _Functor_HomogeneousPartOverCoefficientsRing_OnGradedModules, ### defines: HomogeneousPartOverCoefficientsRing (object part) +BindGlobal( "_Functor_HomogeneousPartOverCoefficientsRing_OnGradedModules", ### defines: HomogeneousPartOverCoefficientsRing (object part) function( d, M ) local S, k_graded, k, deg, emb, mat, map_having_submodule_as_its_image, @@ -738,7 +738,7 @@ end ); ## -InstallGlobalFunction( _Functor_HomogeneousPartOverCoefficientsRing_OnGradedMaps, ### defines: HomogeneousPartOverCoefficientsRing (morphism part) +BindGlobal( "_Functor_HomogeneousPartOverCoefficientsRing_OnGradedMaps", ### defines: HomogeneousPartOverCoefficientsRing (morphism part) function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) local S, k, d, mat, result; @@ -765,7 +765,7 @@ InstallGlobalFunction( _Functor_HomogeneousPartOverCoefficientsRing_OnGradedMaps end ); -InstallValue( Functor_HomogeneousPartOverCoefficientsRing_ForGradedModules, +BindGlobal( "Functor_HomogeneousPartOverCoefficientsRing_ForGradedModules", CreateHomalgFunctor( [ "name", "HomogeneousPartOverCoefficientsRing" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -810,7 +810,7 @@ end ); ## HomogeneousPartOfDegreeZeroOverCoefficientsRing ## -InstallGlobalFunction( _Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_OnGradedModules, ### defines: HomogeneousPartOfDegreeZeroOverCoefficientsRing (object part) +BindGlobal( "_Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_OnGradedModules", ### defines: HomogeneousPartOfDegreeZeroOverCoefficientsRing (object part) function( M ) @@ -820,14 +820,14 @@ end ); ## -InstallGlobalFunction( _Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_OnGradedMaps, ### defines: HomogeneousPartOfDegreeZeroOverCoefficientsRing (morphism part) +BindGlobal( "_Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_OnGradedMaps", ### defines: HomogeneousPartOfDegreeZeroOverCoefficientsRing (morphism part) function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) return HomogeneousPartOverCoefficientsRing( 0, phi ); end ); -InstallValue( Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_ForGradedModules, +BindGlobal( "Functor_HomogeneousPartOfDegreeZeroOverCoefficientsRing_ForGradedModules", CreateHomalgFunctor( [ "name", "HomogeneousPartOfDegreeZeroOverCoefficientsRing" ], [ "category", HOMALG_GRADED_MODULES.category ], diff --git a/GradedModules/gap/Koszul.gd b/GradedModules/gap/Koszul.gd index 8148d8a96..b11c01046 100644 --- a/GradedModules/gap/Koszul.gd +++ b/GradedModules/gap/Koszul.gd @@ -26,11 +26,7 @@ DeclareOperation( "RepresentationMatrixOfKoszulId", DeclareOperation( "RepresentationMatrixOfKoszulId", [ IsHomalgElement, IsHomalgModule ] ); -DeclareGlobalFunction( "_Functor_RepresentationObjectOfKoszulId_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_RepresentationObjectOfKoszulId_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_RepresentationObjectOfKoszulId_ForGradedModules" ); +DeclareGlobalName( "Functor_RepresentationObjectOfKoszulId_ForGradedModules" ); DeclareOperation( "RepresentationObjectOfKoszulId", [ IsList, IsStructureObjectOrObject ] ); @@ -80,12 +76,6 @@ DeclareOperation( "KoszulAdjointOnMorphisms", # #################################### -DeclareGlobalFunction( "_Functor_KoszulRightAdjoint_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_KoszulRightAdjoint_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_KoszulRightAdjoint_ForGradedModules" ); - DeclareOperation( "KoszulRightAdjoint", [ IsStructureObjectOrObject, IsHomalgRing, IsObject, IsObject ] ); @@ -98,12 +88,6 @@ DeclareOperation( "KoszulRightAdjoint", DeclareOperation( "KoszulRightAdjoint", [ IsHomalgGradedMap, IsObject, IsObject ] ); -DeclareGlobalFunction( "_Functor_KoszulLeftAdjoint_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_KoszulLeftAdjoint_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_KoszulLeftAdjoint_ForGradedModules" ); - DeclareOperation( "KoszulLeftAdjoint", [ IsStructureObjectOrObject, IsHomalgRing, IsObject, IsObject ] ); diff --git a/GradedModules/gap/Koszul.gi b/GradedModules/gap/Koszul.gi index c4523983a..8cdb9b2f0 100644 --- a/GradedModules/gap/Koszul.gi +++ b/GradedModules/gap/Koszul.gi @@ -116,7 +116,7 @@ end ); # # RepresentationObjectOfKoszulId # -InstallGlobalFunction( _Functor_RepresentationObjectOfKoszulId_OnGradedModules, ### defines: RepresentationObjectOfKoszulId (object part) +BindGlobal( "_Functor_RepresentationObjectOfKoszulId_OnGradedModules", ### defines: RepresentationObjectOfKoszulId (object part) function( d, M ) local S, A, Base, n, omega_A, V, AM_d, socle, phi; @@ -160,7 +160,7 @@ InstallGlobalFunction( _Functor_RepresentationObjectOfKoszulId_OnGradedModules, end ); -InstallValue( Functor_RepresentationObjectOfKoszulId_ForGradedModules, +BindGlobal( "Functor_RepresentationObjectOfKoszulId_ForGradedModules", CreateHomalgFunctor( [ "name", "RepresentationObjectOfKoszulId" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -527,7 +527,7 @@ end ); ## KoszulRightAdjoint ## -InstallGlobalFunction( _Functor_KoszulRightAdjoint_OnGradedModules, ### defines: KoszulRightAdjoint (object part) +BindGlobal( "_Functor_KoszulRightAdjoint_OnGradedModules", ### defines: KoszulRightAdjoint (object part) function( l, M ) local A, degree_lowest, degree_highest; @@ -553,7 +553,7 @@ end ); ## -InstallGlobalFunction( _Functor_KoszulRightAdjoint_OnGradedMaps, ### defines: KoszulRightAdjoint (morphism part) +BindGlobal( "_Functor_KoszulRightAdjoint_OnGradedMaps", ### defines: KoszulRightAdjoint (morphism part) function( l, phi ) local A, degree_lowest, degree_highest; @@ -576,7 +576,7 @@ InstallGlobalFunction( _Functor_KoszulRightAdjoint_OnGradedMaps, ### defines: Ko end ); -InstallValue( Functor_KoszulRightAdjoint_ForGradedModules, +BindGlobal( "Functor_KoszulRightAdjoint_ForGradedModules", CreateHomalgFunctor( [ "name", "KoszulRightAdjoint" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -731,7 +731,7 @@ end ); ## KoszulLeftAdjoint ## -InstallGlobalFunction( _Functor_KoszulLeftAdjoint_OnGradedModules, ### defines: KoszulLeftAdjoint (object part) +BindGlobal( "_Functor_KoszulLeftAdjoint_OnGradedModules", ### defines: KoszulLeftAdjoint (object part) function( l, M ) local A, degree_lowest, degree_highest; @@ -757,7 +757,7 @@ end ); ## -InstallGlobalFunction( _Functor_KoszulLeftAdjoint_OnGradedMaps, ### defines: KoszulLeftAdjoint (morphism part) +BindGlobal( "_Functor_KoszulLeftAdjoint_OnGradedMaps", ### defines: KoszulLeftAdjoint (morphism part) function( l, phi ) local A, degree_lowest, degree_highest; @@ -780,7 +780,7 @@ InstallGlobalFunction( _Functor_KoszulLeftAdjoint_OnGradedMaps, ### defines: Kos end ); -InstallValue( Functor_KoszulLeftAdjoint_ForGradedModules, +BindGlobal( "Functor_KoszulLeftAdjoint_ForGradedModules", CreateHomalgFunctor( [ "name", "KoszulLeftAdjoint" ], [ "category", HOMALG_GRADED_MODULES.category ], diff --git a/GradedModules/gap/OtherFunctors.gd b/GradedModules/gap/OtherFunctors.gd index 409520c2a..c984a950b 100644 --- a/GradedModules/gap/OtherFunctors.gd +++ b/GradedModules/gap/OtherFunctors.gd @@ -12,22 +12,11 @@ # #################################### -## DirectSum -DeclareGlobalFunction( "_Functor_DirectSum_OnGradedModules" ); - -DeclareGlobalVariable( "Functor_DirectSum_for_graded_modules" ); - ## LinearPart DeclareOperation( "LinearPart", [ IsHomalgMorphism ] ); -DeclareGlobalFunction( "_Functor_LinearPart_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_LinearPart_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_LinearPart_ForGradedModules" ); - ## ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree DeclareOperation( "ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree", @@ -36,10 +25,6 @@ DeclareOperation( "ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertai DeclareOperation( "ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree", [ IsHomalgElement, IsHomalgGradedModule ] ); -DeclareGlobalFunction( "_Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_OnGradedModules" ); - -DeclareGlobalVariable( "Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_ForGradedModules" ); - ## DirectSummandOfGradedFreeModuleGeneratedByACertainDegree DeclareOperation( "DirectSummandOfGradedFreeModuleGeneratedByACertainDegree", @@ -56,12 +41,6 @@ DeclareOperation( "DirectSummandOfGradedFreeModuleGeneratedByACertainDegree", DeclareOperation( "GeneralizedLinearStrand", [ IsList, IsHomalgMorphism ] ); -DeclareGlobalFunction( "_Functor_GeneralizedLinearStrand_OnFreeCocomplexes" ); - -DeclareGlobalFunction( "_Functor_GeneralizedLinearStrand_OnCochainMaps" ); - -DeclareGlobalVariable( "Functor_GeneralizedLinearStrand_ForGradedModules" ); - ## LinearStrand DeclareOperation( "LinearStrand", @@ -70,12 +49,6 @@ DeclareOperation( "LinearStrand", DeclareOperation( "LinearStrand", [ IsHomalgElement, IsHomalgMorphism ] ); -DeclareGlobalFunction( "_Functor_LinearStrand_OnFreeCocomplexes" ); - -DeclareGlobalFunction( "_Functor_LinearStrand_OnCochainMaps" ); - -DeclareGlobalVariable( "Functor_LinearStrand_ForGradedModules" ); - ## ConstantStrand DeclareOperation( "ConstantStrand", @@ -84,12 +57,6 @@ DeclareOperation( "ConstantStrand", DeclareOperation( "ConstantStrand", [ IsHomalgElement, IsHomalgMorphism ] ); -DeclareGlobalFunction( "_Functor_ConstantStrand_OnFreeCocomplexes" ); - -DeclareGlobalFunction( "_Functor_ConstantStrand_OnCochainMaps" ); - -DeclareGlobalVariable( "Functor_ConstantStrand_ForGradedModules" ); - ## LinearFreeComplexOverExteriorAlgebraToModule DeclareOperation( "LinearFreeComplexOverExteriorAlgebraToModule", @@ -104,8 +71,6 @@ DeclareOperation( "ExtensionMapsFromExteriorComplex", DeclareOperation( "CompareArgumentsForLinearFreeComplexOverExteriorAlgebraToModuleOnObjects", [ IsList, IsList ] ); -DeclareGlobalFunction( "_Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedModules" ); - DeclareOperation( "ConstructMorphismFromLayers", [ IsHomalgGradedModule, IsHomalgGradedModule, IsHomalgChainMorphism ] ); @@ -121,10 +86,6 @@ DeclareOperation( "CompleteKernelSquareByDualization", DeclareOperation( "SetNaturalMapFromExteriorComplexToRightAdjointForModulesOfGlobalSections", [ IsHomalgComplex, IsHomalgGradedModule ] ); -DeclareGlobalFunction( "_Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_LinearFreeComplexOverExteriorAlgebraToModule_ForGradedModules" ); - #backwards compatibility DeclareSynonym( "HomogeneousExteriorComplexToModule", LinearFreeComplexOverExteriorAlgebraToModule ); @@ -157,12 +118,6 @@ DeclareOperation( "ModuleOfGlobalSectionsTruncatedAtCertainDegree", DeclareOperation( "ModuleOfGlobalSectionsTruncatedAtCertainDegree", [ IsHomalgElement, IsHomalgGradedModule ] ); -DeclareGlobalFunction( "_Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_ForGradedModules" ); - DeclareAttribute( "NaturalMapFromExteriorComplexToRightAdjoint", IsHomalgComplex ); @@ -174,12 +129,6 @@ DeclareOperation( "NaturalMapToModuleOfGlobalSectionsTruncatedAtCertainDegree", ## ModuleOfGlobalSections -DeclareGlobalFunction( "_Functor_ModuleOfGlobalSections_OnGradedModules" ); - -DeclareGlobalFunction( "_Functor_ModuleOfGlobalSections_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_ModuleOfGlobalSections_ForGradedModules" ); - DeclareOperation( "ModuleOfGlobalSections", [ IsInt, IsHomalgGradedMap ] ); @@ -208,10 +157,6 @@ DeclareOperation( "GuessModuleOfGlobalSectionsFromATateMap", DeclareOperation( "GuessModuleOfGlobalSectionsFromATateMap", [ IsHomalgElement, IsHomalgGradedMap ] ); -DeclareGlobalFunction( "_Functor_GuessModuleOfGlobalSectionsFromATateMap_OnGradedMaps" ); - -DeclareGlobalVariable( "Functor_GuessModuleOfGlobalSectionsFromATateMap_ForGradedMaps" ); - #################################### # diff --git a/GradedModules/gap/OtherFunctors.gi b/GradedModules/gap/OtherFunctors.gi index 4324d9e94..2a6e7df1e 100644 --- a/GradedModules/gap/OtherFunctors.gi +++ b/GradedModules/gap/OtherFunctors.gi @@ -16,7 +16,7 @@ ## DirectSum ## -InstallGlobalFunction( _Functor_DirectSum_OnGradedModules, ### defines: DirectSum +BindGlobal( "_Functor_DirectSum_OnGradedModules", ### defines: DirectSum function( M, N ) local S, degMN, sum, iotaM, iotaN, piM, piN, natural, phi; @@ -71,7 +71,7 @@ InstallGlobalFunction( _Functor_DirectSum_OnGradedModules, ### defines: DirectSu end ); -InstallValue( Functor_DirectSum_for_graded_modules, +BindGlobal( "Functor_DirectSum_for_graded_modules", CreateHomalgFunctor( [ "name", "DirectSum" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -99,13 +99,13 @@ InstallFunctor( Functor_DirectSum_for_graded_modules ); ## ## (cf. Eisenbud, Floystad, Schreyer: Sheaf Cohomology and Free Resolutions over Exterior Algebras) -InstallGlobalFunction( _Functor_LinearPart_OnGradedModules, ### defines: LinearPart (object part) +BindGlobal( "_Functor_LinearPart_OnGradedModules", ### defines: LinearPart (object part) function( M ) return M; end ); ## -InstallGlobalFunction( _Functor_LinearPart_OnGradedMaps, ### defines: LinearPart (morphism part) +BindGlobal( "_Functor_LinearPart_OnGradedMaps", ### defines: LinearPart (morphism part) function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) local deg_s, deg_t, S, zero, mat, deg, i, j, result; @@ -154,7 +154,7 @@ InstallGlobalFunction( _Functor_LinearPart_OnGradedMaps, ### defines: LinearPart end ); -InstallValue( Functor_LinearPart_ForGradedModules, +BindGlobal( "Functor_LinearPart_ForGradedModules", CreateHomalgFunctor( [ "name", "LinearPart" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -176,7 +176,7 @@ InstallFunctor( Functor_LinearPart_ForGradedModules ); ## ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree ## -InstallGlobalFunction( _Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_OnGradedModules, +BindGlobal( "_Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_OnGradedModules", function( d, M ) local S, deg, l, mat, pi; @@ -211,7 +211,7 @@ InstallGlobalFunction( _Functor_ProjectionToDirectSummandOfGradedFreeModuleGener end ); -InstallValue( Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_ForGradedModules, +BindGlobal( "Functor_ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree_ForGradedModules", CreateHomalgFunctor( [ "name", "ProjectionToDirectSummandOfGradedFreeModuleGeneratedByACertainDegree" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -295,7 +295,7 @@ end ); ## GeneralizedLinearStrand ## -InstallGlobalFunction( _Functor_GeneralizedLinearStrand_OnFreeCocomplexes, +BindGlobal( "_Functor_GeneralizedLinearStrand_OnFreeCocomplexes", function( f, T ) local i, alpha, alpha2, T2; @@ -320,7 +320,7 @@ InstallGlobalFunction( _Functor_GeneralizedLinearStrand_OnFreeCocomplexes, end ); -InstallGlobalFunction( _Functor_GeneralizedLinearStrand_OnCochainMaps, +BindGlobal( "_Functor_GeneralizedLinearStrand_OnCochainMaps", function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) local f, i, alpha, f_i, alpha2, psi; @@ -347,7 +347,7 @@ InstallGlobalFunction( _Functor_GeneralizedLinearStrand_OnCochainMaps, end ); -InstallValue( Functor_GeneralizedLinearStrand_ForGradedModules, +BindGlobal( "Functor_GeneralizedLinearStrand_ForGradedModules", CreateHomalgFunctor( [ "name", "GeneralizedLinearStrand" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -374,14 +374,14 @@ InstallFunctorOnMorphisms( Functor_GeneralizedLinearStrand_ForGradedModules ); # returns the subcomplex of a free complex, # where cohomological degree + shift = internal degree -InstallGlobalFunction( _Functor_LinearStrand_OnFreeCocomplexes, +BindGlobal( "_Functor_LinearStrand_OnFreeCocomplexes", function( shift, T ) return GeneralizedLinearStrand( function( i ) return i + shift; end, T ); end ); -InstallGlobalFunction( _Functor_LinearStrand_OnCochainMaps, +BindGlobal( "_Functor_LinearStrand_OnCochainMaps", function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) return _Functor_GeneralizedLinearStrand_OnCochainMaps( F_source, F_target, [ function( i ) return i + arg_before_pos[1]; end ], phi, arg_behind_pos ); @@ -389,7 +389,7 @@ InstallGlobalFunction( _Functor_LinearStrand_OnCochainMaps, end ); -InstallValue( Functor_LinearStrand_ForGradedModules, +BindGlobal( "Functor_LinearStrand_ForGradedModules", CreateHomalgFunctor( [ "name", "LinearStrand" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -424,14 +424,14 @@ end ); ## ConstantStrand ## -InstallGlobalFunction( _Functor_ConstantStrand_OnFreeCocomplexes, +BindGlobal( "_Functor_ConstantStrand_OnFreeCocomplexes", function( d, T ) return GeneralizedLinearStrand( function( i ) return d; end, T ); end ); -InstallGlobalFunction( _Functor_ConstantStrand_OnCochainMaps, +BindGlobal( "_Functor_ConstantStrand_OnCochainMaps", function( F_source, F_target, arg_before_pos, phi, arg_behind_pos ) return _Functor_GeneralizedLinearStrand_OnCochainMaps( F_source, F_target, [ function( i ) return arg_before_pos[1]; end ], phi, arg_behind_pos ); @@ -439,7 +439,7 @@ InstallGlobalFunction( _Functor_ConstantStrand_OnCochainMaps, end ); -InstallValue( Functor_ConstantStrand_ForGradedModules, +BindGlobal( "Functor_ConstantStrand_ForGradedModules", CreateHomalgFunctor( [ "name", "ConstantStrand" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -700,7 +700,7 @@ InstallMethod( CompareArgumentsForLinearFreeComplexOverExteriorAlgebraToModuleOn end ); -InstallGlobalFunction( _Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedModules, +BindGlobal( "_Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedModules", function( reg_sheaf, lin_tate ) local i, deg, A, n, S, k, result, EmbeddingsOfHigherDegrees, RecursiveEmbeddingsOfHigherDegrees, lower_bound, jj, j, tate_morphism, psi, extension_map, var_s_morphism, T, T2, l, T2b, V1, V2, V1_iso_V2, isos, source_emb, map, certain_deg, t1, t2, phi, chain_phi, pos, Rresult, iso; @@ -1108,7 +1108,7 @@ end ); # Now we inductively construct maps from the submodules generated by a certain degree of F_source and F_target. # Since F_{>=j} = F_{>=j+1} \oplus we have the map starting from the direct sum and finally # also from the factor of this direct sum. -InstallGlobalFunction( _Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedMaps, +BindGlobal( "_Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnGradedMaps", function( F_source, F_target, arg_before_pos, lin_tate, arg_behind_pos ) local reg_sheaf, lower_bound, A, S, j, object, jj, RF_source, RF_target, lin_tate_source, lin_tate_target, nat_source, nat_target, alpha, @@ -1178,7 +1178,7 @@ InstallGlobalFunction( _Functor_LinearFreeComplexOverExteriorAlgebraToModule_OnG end ); -InstallValue( Functor_LinearFreeComplexOverExteriorAlgebraToModule_ForGradedModules, +BindGlobal( "Functor_LinearFreeComplexOverExteriorAlgebraToModule_ForGradedModules", CreateHomalgFunctor( [ "name", "LinearFreeComplexOverExteriorAlgebraToModule" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -1204,7 +1204,7 @@ InstallFunctor( Functor_LinearFreeComplexOverExteriorAlgebraToModule_ForGradedMo ## ## (cf. Eisenbud, Floystad, Schreyer: Sheaf Cohomology and Free Resolutions over Exterior Algebras) -InstallGlobalFunction( _Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedModules, +BindGlobal( "_Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedModules", function( truncation_bound, M ) local V2, map, UM, SOUM, C, reg, tate, B, reg_sheaf, t1, t2, psi, RM, id_old, phi, lin_tate, fit, HM, ii, i, hom_part; @@ -1340,7 +1340,7 @@ InstallGlobalFunction( _Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_O end ); ## -InstallGlobalFunction( _Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedMaps, +BindGlobal( "_Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_OnGradedMaps", function( F_source, F_target, arg_before_pos, mor, arg_behind_pos ) local truncation_bound, source, target, nat_source, nat_target, reg, lin_tate, reg_sheaf, H_mor; @@ -1538,7 +1538,7 @@ InstallMethod( NaturalMapToModuleOfGlobalSectionsTruncatedAtCertainDegree, end ); -InstallValue( Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_ForGradedModules, +BindGlobal( "Functor_ModuleOfGlobalSectionsTruncatedAtCertainDegree_ForGradedModules", CreateHomalgFunctor( [ "name", "ModuleOfGlobalSectionsTruncatedAtCertainDegree" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -1595,17 +1595,17 @@ end ); ## ModuleOfGlobalSections ## -InstallGlobalFunction( _Functor_ModuleOfGlobalSections_OnGradedModules, +BindGlobal( "_Functor_ModuleOfGlobalSections_OnGradedModules", function( M ) return ModuleOfGlobalSectionsTruncatedAtCertainDegree( HOMALG_GRADED_MODULES!.LowerTruncationBound, M ); end ); -InstallGlobalFunction( _Functor_ModuleOfGlobalSections_OnGradedMaps, +BindGlobal( "_Functor_ModuleOfGlobalSections_OnGradedMaps", function( F_source, F_target, arg_before_pos, mor, arg_behind_pos ) return ModuleOfGlobalSectionsTruncatedAtCertainDegree( HOMALG_GRADED_MODULES!.LowerTruncationBound, mor ); end ); -InstallValue( Functor_ModuleOfGlobalSections_ForGradedModules, +BindGlobal( "Functor_ModuleOfGlobalSections_ForGradedModules", CreateHomalgFunctor( [ "name", "ModuleOfGlobalSections" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -1672,7 +1672,7 @@ InstallMethod( GuessModuleOfGlobalSectionsFromATateMap, end ); -InstallGlobalFunction( _Functor_GuessModuleOfGlobalSectionsFromATateMap_OnGradedMaps, ### defines: GuessModuleOfGlobalSectionsFromATateMap (object part) +BindGlobal( "_Functor_GuessModuleOfGlobalSectionsFromATateMap_OnGradedMaps", ### defines: GuessModuleOfGlobalSectionsFromATateMap (object part) function( steps, phi ) local A, n, psi, deg, lin_tate, alpha, j, K, tate, i, tate2; @@ -1737,7 +1737,7 @@ InstallGlobalFunction( _Functor_GuessModuleOfGlobalSectionsFromATateMap_OnGraded end ); -InstallValue( Functor_GuessModuleOfGlobalSectionsFromATateMap_ForGradedMaps, +BindGlobal( "Functor_GuessModuleOfGlobalSectionsFromATateMap_ForGradedMaps", CreateHomalgFunctor( [ "name", "GuessModuleOfGlobalSectionsFromATateMap" ], [ "category", HOMALG_GRADED_MODULES.category ], diff --git a/GradedModules/gap/ToolFunctors.gd b/GradedModules/gap/ToolFunctors.gd index 558324345..e583c651a 100644 --- a/GradedModules/gap/ToolFunctors.gd +++ b/GradedModules/gap/ToolFunctors.gd @@ -12,46 +12,6 @@ # #################################### -## TheZeroMorphism -DeclareGlobalFunction( "_Functor_TheZeroMorphism_OnGradedModules" ); - -DeclareGlobalVariable( "functor_TheZeroMorphism_for_graded_modules" ); - -## MulMorphism -DeclareGlobalFunction( "_Functor_MulMorphism_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_MulMorphism_for_maps_of_graded_modules" ); - -## AddMorphisms -DeclareGlobalFunction( "_Functor_AddMorphisms_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_AddMorphisms_for_maps_of_graded_modules" ); - -## SubMorphisms -DeclareGlobalFunction( "_Functor_SubMorphisms_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_SubMorphisms_for_maps_of_graded_modules" ); - -## Compose -DeclareGlobalFunction( "_Functor_PreCompose_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_PreCompose_for_maps_of_graded_modules" ); - -## CoproductMorphism -DeclareGlobalFunction( "_Functor_CoproductMorphism_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_CoproductMorphism_for_maps_of_graded_modules" ); - -## ProductMorphism -DeclareGlobalFunction( "_Functor_ProductMorphism_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_ProductMorphism_for_maps_of_graded_modules" ); - -## PostDivide -DeclareGlobalFunction( "_Functor_PostDivide_OnGradedMaps" ); - -DeclareGlobalVariable( "functor_PostDivide_for_maps_of_graded_modules" ); - #################################### # # global functions and operations: diff --git a/GradedModules/gap/ToolFunctors.gi b/GradedModules/gap/ToolFunctors.gi index 3f8be4af9..b174e5135 100644 --- a/GradedModules/gap/ToolFunctors.gi +++ b/GradedModules/gap/ToolFunctors.gi @@ -16,7 +16,7 @@ ## TheZeroMorphism ## -InstallGlobalFunction( _Functor_TheZeroMorphism_OnGradedModules, ### defines: TheZeroMorphism +BindGlobal( "_Functor_TheZeroMorphism_OnGradedModules", ### defines: TheZeroMorphism function( M, N ) local psi; @@ -28,7 +28,7 @@ InstallGlobalFunction( _Functor_TheZeroMorphism_OnGradedModules, ### defines: Th end ); -InstallValue( functor_TheZeroMorphism_for_graded_modules, +BindGlobal( "functor_TheZeroMorphism_for_graded_modules", CreateHomalgFunctor( [ "name", "TheZeroMorphism" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -46,7 +46,7 @@ InstallValue( functor_TheZeroMorphism_for_graded_modules, ## MulMorphism ## -InstallGlobalFunction( _Functor_MulMorphism_OnGradedMaps, ### defines: MulMorphism +BindGlobal( "_Functor_MulMorphism_OnGradedMaps", ### defines: MulMorphism function( a, phi ) local a_phi; @@ -64,7 +64,7 @@ InstallGlobalFunction( _Functor_MulMorphism_OnGradedMaps, ### defines: MulMorphi end ); -InstallValue( functor_MulMorphism_for_maps_of_graded_modules, +BindGlobal( "functor_MulMorphism_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "MulMorphism" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -93,7 +93,7 @@ end ); ## AddMorphisms ## -InstallGlobalFunction( _Functor_AddMorphisms_OnGradedMaps, ### defines: AddMorphisms +BindGlobal( "_Functor_AddMorphisms_OnGradedMaps", ### defines: AddMorphisms function( phi1, phi2 ) local phi; @@ -107,7 +107,7 @@ InstallGlobalFunction( _Functor_AddMorphisms_OnGradedMaps, ### defines: AddMorph end ); -InstallValue( functor_AddMorphisms_for_maps_of_graded_modules, +BindGlobal( "functor_AddMorphisms_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "+" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -126,7 +126,7 @@ functor_AddMorphisms_for_maps_of_graded_modules!.ContainerForWeakPointersOnCompu ## SubMorphisms ## -InstallGlobalFunction( _Functor_SubMorphisms_OnGradedMaps, ### defines: SubMorphisms +BindGlobal( "_Functor_SubMorphisms_OnGradedMaps", ### defines: SubMorphisms function( phi1, phi2 ) local phi; @@ -140,7 +140,7 @@ InstallGlobalFunction( _Functor_SubMorphisms_OnGradedMaps, ### defines: SubMorph end ); -InstallValue( functor_SubMorphisms_for_maps_of_graded_modules, +BindGlobal( "functor_SubMorphisms_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "-" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -159,7 +159,7 @@ functor_SubMorphisms_for_maps_of_graded_modules!.ContainerForWeakPointersOnCompu ## Compose ## -InstallGlobalFunction( _Functor_PreCompose_OnGradedMaps, ### defines: PreCompose +BindGlobal( "_Functor_PreCompose_OnGradedMaps", ### defines: PreCompose function( pre, post ) local S, source, target, phi; @@ -178,7 +178,7 @@ InstallGlobalFunction( _Functor_PreCompose_OnGradedMaps, ### defines: PreCompose end ); -InstallValue( functor_PreCompose_for_maps_of_graded_modules, +BindGlobal( "functor_PreCompose_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "PreCompose" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -196,7 +196,7 @@ InstallValue( functor_PreCompose_for_maps_of_graded_modules, ## CoproductMorphism ## -InstallGlobalFunction( _Functor_CoproductMorphism_OnGradedMaps, ### defines: CoproductMorphism +BindGlobal( "_Functor_CoproductMorphism_OnGradedMaps", ### defines: CoproductMorphism function( phi, psi ) local phi_psi; @@ -208,7 +208,7 @@ InstallGlobalFunction( _Functor_CoproductMorphism_OnGradedMaps, ### defines: Cop end ); -InstallValue( functor_CoproductMorphism_for_maps_of_graded_modules, +BindGlobal( "functor_CoproductMorphism_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "CoproductMorphism" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -226,7 +226,7 @@ InstallValue( functor_CoproductMorphism_for_maps_of_graded_modules, ## ProductMorphism ## -InstallGlobalFunction( _Functor_ProductMorphism_OnGradedMaps, ### defines: ProductMorphism +BindGlobal( "_Functor_ProductMorphism_OnGradedMaps", ### defines: ProductMorphism function( phi, psi ) local phi_psi; @@ -238,7 +238,7 @@ InstallGlobalFunction( _Functor_ProductMorphism_OnGradedMaps, ### defines: Produ end ); -InstallValue( functor_ProductMorphism_for_maps_of_graded_modules, +BindGlobal( "functor_ProductMorphism_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "ProductMorphism" ], [ "category", HOMALG_GRADED_MODULES.category ], @@ -273,7 +273,7 @@ InstallValue( functor_ProductMorphism_for_maps_of_graded_modules, ## PostDivide ## -InstallGlobalFunction( _Functor_PostDivide_OnGradedMaps, ### defines: PostDivide +BindGlobal( "_Functor_PostDivide_OnGradedMaps", ### defines: PostDivide function( gamma, beta ) local N, psi, M_; @@ -299,7 +299,7 @@ InstallGlobalFunction( _Functor_PostDivide_OnGradedMaps, ### defines: PostDivid end ); -InstallValue( functor_PostDivide_for_maps_of_graded_modules, +BindGlobal( "functor_PostDivide_for_maps_of_graded_modules", CreateHomalgFunctor( [ "name", "PostDivide" ], [ "category", HOMALG_GRADED_MODULES.category ], diff --git a/Modules/gap/BasicFunctors.gd b/Modules/gap/BasicFunctors.gd index 99c93de6f..fe691e178 100644 --- a/Modules/gap/BasicFunctors.gd +++ b/Modules/gap/BasicFunctors.gd @@ -12,34 +12,7 @@ # #################################### -## Cokernel -DeclareGlobalFunction( "_Functor_Cokernel_OnModules" ); - -DeclareGlobalVariable( "functor_Cokernel_for_fp_modules" ); - -## ImageObject -DeclareGlobalFunction( "_Functor_ImageObject_OnModules" ); - -DeclareGlobalVariable( "functor_ImageObject_for_fp_modules" ); - -## Hom -DeclareGlobalFunction( "_Functor_Hom_OnModules" ); - -DeclareGlobalFunction( "_Functor_Hom_OnMaps" ); - -DeclareGlobalVariable( "Functor_Hom_for_fp_modules" ); - -## TensorProduct -DeclareGlobalFunction( "_Functor_TensorProduct_OnModules" ); - -DeclareGlobalFunction( "_Functor_TensorProduct_OnMaps" ); - -DeclareGlobalVariable( "Functor_TensorProduct_for_fp_modules" ); - -## BaseChange -DeclareGlobalFunction( "_functor_BaseChange_OnModules" ); - -DeclareGlobalVariable( "functor_BaseChange_for_fp_modules" ); +DeclareGlobalName( "Functor_Hom_for_fp_modules" ); #################################### # diff --git a/Modules/gap/BasicFunctors.gi b/Modules/gap/BasicFunctors.gi index 4d1f2a041..df518be64 100644 --- a/Modules/gap/BasicFunctors.gi +++ b/Modules/gap/BasicFunctors.gi @@ -17,7 +17,7 @@ ## ## -InstallGlobalFunction( _Functor_Cokernel_OnModules, ### defines: Cokernel(Epi) +BindGlobal( "_Functor_Cokernel_OnModules", ### defines: Cokernel(Epi) function( phi ) local R, T, p, rel, gen, coker, id, epi, gen_iso, img_emb, emb; @@ -106,7 +106,7 @@ end ); ## <#GAPDoc Label="functor_Cokernel:code"> ## ## ## ## ## ## ## B -InstallGlobalFunction( _Functor_Pullback_OnObjects, ### defines: Pullback(PairOfMaps) +BindGlobal( "_Functor_Pullback_OnObjects", ### defines: Pullback(PairOfMaps) function( chm_phi_beta1 ) local phi, beta1, phi_beta1, ApB_, emb, pb, S, pair; @@ -358,7 +358,7 @@ InstallGlobalFunction( _Functor_Pullback_OnObjects, ### defines: Pullback(PairOf end ); -InstallValue( functor_Pullback, +BindGlobal( "functor_Pullback", CreateHomalgFunctor( [ "name", "Pullback" ], [ "category", HOMALG.category ], @@ -394,7 +394,7 @@ end ); # v v # B_ ---------> ? -InstallGlobalFunction( _Functor_Pushout_OnObjects, ### defines: Pushout(PairOfMaps) +BindGlobal( "_Functor_Pushout_OnObjects", ### defines: Pushout(PairOfMaps) function( chm_alpha1_psi ) local psi, alpha1, alpha1_psi, epi, po, T, pair; @@ -455,7 +455,7 @@ InstallGlobalFunction( _Functor_Pushout_OnObjects, ### defines: Pushout(PairOfMa end ); -InstallValue( functor_Pushout, +BindGlobal( "functor_Pushout", CreateHomalgFunctor( [ "name", "Pushout" ], [ "category", HOMALG.category ], @@ -540,7 +540,7 @@ end ); ## AuslanderDual ## -InstallGlobalFunction( _Functor_AuslanderDual_OnObjects, ### defines: AuslanderDual +BindGlobal( "_Functor_AuslanderDual_OnObjects", ### defines: AuslanderDual function( M ) local d0; @@ -550,7 +550,7 @@ InstallGlobalFunction( _Functor_AuslanderDual_OnObjects, ### defines: AuslanderD end ); -InstallValue( functor_AuslanderDual, +BindGlobal( "functor_AuslanderDual", CreateHomalgFunctor( [ "name", "AuslanderDual" ], [ "category", HOMALG.category ], diff --git a/homalg/gap/ToolFunctors.gd b/homalg/gap/ToolFunctors.gd index 5b9dcb7a2..0e347b409 100644 --- a/homalg/gap/ToolFunctors.gd +++ b/homalg/gap/ToolFunctors.gd @@ -12,30 +12,6 @@ # #################################### -## AsATwoSequence -DeclareGlobalFunction( "_Functor_AsATwoSequence_OnObjects" ); - -DeclareGlobalVariable( "functor_AsATwoSequence" ); - -## PreCompose -DeclareGlobalFunction( "_Functor_PreCompose_OnObjects" ); - -DeclareGlobalVariable( "functor_PreCompose" ); - -## AsChainMorphismForPullback -DeclareGlobalFunction( "_Functor_AsChainMorphismForPullback_OnObjects" ); - -DeclareGlobalVariable( "functor_AsChainMorphismForPullback" ); - -## AsChainMorphismForPushout -DeclareGlobalFunction( "_Functor_AsChainMorphismForPushout_OnObjects" ); - -DeclareGlobalVariable( "functor_AsChainMorphismForPushout" ); - -## PreDivide -DeclareGlobalFunction( "_Functor_PreDivide_OnMorphisms" ); - -DeclareGlobalVariable( "functor_PreDivide" ); #################################### # diff --git a/homalg/gap/ToolFunctors.gi b/homalg/gap/ToolFunctors.gi index cc0b63e94..5323f0061 100644 --- a/homalg/gap/ToolFunctors.gi +++ b/homalg/gap/ToolFunctors.gi @@ -16,7 +16,7 @@ ## AsATwoSequence ## -InstallGlobalFunction( _Functor_AsATwoSequence_OnObjects, ### defines: AsATwoSequence +BindGlobal( "_Functor_AsATwoSequence_OnObjects", ### defines: AsATwoSequence function( phi, psi ) local pre, post, C; @@ -54,7 +54,7 @@ InstallGlobalFunction( _Functor_AsATwoSequence_OnObjects, ### defines: AsATwoSeq end ); -InstallValue( functor_AsATwoSequence, +BindGlobal( "functor_AsATwoSequence", CreateHomalgFunctor( [ "name", "AsATwoSequence" ], [ "category", HOMALG.category ], @@ -159,7 +159,7 @@ end ); # v v # B_ --(beta1)---> B -InstallGlobalFunction( _Functor_AsChainMorphismForPullback_OnObjects, ### defines: AsChainMorphismForPullback +BindGlobal( "_Functor_AsChainMorphismForPullback_OnObjects", ### defines: AsChainMorphismForPullback function( phi, beta1 ) local S, T, c; @@ -182,7 +182,7 @@ InstallGlobalFunction( _Functor_AsChainMorphismForPullback_OnObjects, ### define end ); -InstallValue( functor_AsChainMorphismForPullback, +BindGlobal( "functor_AsChainMorphismForPullback", CreateHomalgFunctor( [ "name", "AsChainMorphismForPullback" ], [ "category", HOMALG.category ], @@ -207,7 +207,7 @@ functor_AsChainMorphismForPullback!.ContainerForWeakPointersOnComputedBasicObjec # v v # B_ ---------> ? -InstallGlobalFunction( _Functor_AsChainMorphismForPushout_OnObjects, ### defines: AsChainMorphismForPushout +BindGlobal( "_Functor_AsChainMorphismForPushout_OnObjects", ### defines: AsChainMorphismForPushout function( alpha1, psi ) local S, T, c; @@ -230,7 +230,7 @@ InstallGlobalFunction( _Functor_AsChainMorphismForPushout_OnObjects, ### defines end ); -InstallValue( functor_AsChainMorphismForPushout, +BindGlobal( "functor_AsChainMorphismForPushout", CreateHomalgFunctor( [ "name", "AsChainMorphismForPushout" ], [ "category", HOMALG.category ], @@ -407,7 +407,7 @@ end ); ## PreDivide ## -InstallGlobalFunction( _Functor_PreDivide_OnMorphisms, ### defines: PreDivide +BindGlobal( "_Functor_PreDivide_OnMorphisms", ### defines: PreDivide function( epsilon, eta ) local gen_iso, eta0; @@ -438,7 +438,7 @@ InstallGlobalFunction( _Functor_PreDivide_OnMorphisms, ### defines: PreDivide end ); -InstallValue( functor_PreDivide, +BindGlobal( "functor_PreDivide", CreateHomalgFunctor( [ "name", "PreDivide" ], [ "category", HOMALG.category ],