@@ -4154,28 +4154,24 @@ end
4154
4154
4155
4155
########
4156
4156
function ( cat_1, alpha_1 )
4157
- local morphism_attr_1_1, deduped_2_1, deduped_3_1, deduped_4_1;
4158
- deduped_4_1 := UnderlyingRing( cat_1 );
4159
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
4160
- deduped_2_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
4161
- morphism_attr_1_1 := UniqueRightDivide( HomalgIdentityMatrix( RowRankOfMatrix( deduped_3_1 ), deduped_4_1 ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_2_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_2_1 ), deduped_4_1 ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_2_1 ) ) );
4157
+ local morphism_attr_1_1, deduped_2_1;
4158
+ deduped_2_1 := AsHomalgMatrix( alpha_1 );
4159
+ morphism_attr_1_1 := UniqueRightDivide( HomalgIdentityMatrix( RowRankOfMatrix( deduped_2_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_2_1 ), deduped_2_1 ), BasisOfRows( deduped_2_1 ) ) );
4162
4160
return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, NumberRows( morphism_attr_1_1 ) ), morphism_attr_1_1, AsCapCategoryObject( cat_1, NumberColumns( morphism_attr_1_1 ) ) );
4163
4161
end
4164
4162
########
4165
4163
4166
- , 1811 : IsPrecompiledDerivation := true );
4164
+ , 805 : IsPrecompiledDerivation := true );
4167
4165
4168
4166
##
4169
4167
cat!.cached_precompiled_functions.InverseOfMorphismFromCoimageToImage :=
4170
4168
4171
4169
########
4172
4170
function ( cat_1, alpha_1 )
4173
- local deduped_1_1, deduped_2_1, deduped_3_1, deduped_4_1;
4174
- deduped_4_1 := UnderlyingRing( cat_1 );
4175
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
4176
- deduped_2_1 := RowRankOfMatrix( deduped_3_1 );
4177
- deduped_1_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
4178
- return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, deduped_2_1 ), UniqueRightDivide( HomalgIdentityMatrix( deduped_2_1, deduped_4_1 ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_1_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_1_1 ), deduped_4_1 ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_1_1 ) ) ), AsCapCategoryObject( cat_1, ColumnRankOfMatrix( deduped_3_1 ) ) );
4171
+ local deduped_1_1, deduped_2_1;
4172
+ deduped_2_1 := AsHomalgMatrix( alpha_1 );
4173
+ deduped_1_1 := RowRankOfMatrix( deduped_2_1 );
4174
+ return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, deduped_1_1 ), UniqueRightDivide( HomalgIdentityMatrix( deduped_1_1, UnderlyingRing( cat_1 ) ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_2_1 ), deduped_2_1 ), BasisOfRows( deduped_2_1 ) ) ), AsCapCategoryObject( cat_1, ColumnRankOfMatrix( deduped_2_1 ) ) );
4179
4175
end
4180
4176
########
4181
4177
@@ -4186,32 +4182,13 @@ end
4186
4182
4187
4183
########
4188
4184
function ( cat_1, I_1, alpha_1, C_1 )
4189
- local morphism_attr_1_1, deduped_2_1, deduped_3_1, deduped_4_1;
4190
- deduped_4_1 := UnderlyingRing( cat_1 );
4191
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
4192
- deduped_2_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
4193
- morphism_attr_1_1 := UniqueRightDivide( HomalgIdentityMatrix( RowRankOfMatrix( deduped_3_1 ), deduped_4_1 ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_2_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_2_1 ), deduped_4_1 ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_2_1 ) ) );
4194
- return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, NumberRows( morphism_attr_1_1 ) ), morphism_attr_1_1, C_1 );
4195
- end
4196
- ########
4197
-
4198
- , 1610 : IsPrecompiledDerivation := true );
4199
-
4200
- ##
4201
- cat!.cached_precompiled_functions.InverseOfMorphismFromCoimageToImageWithGivenObjects :=
4202
-
4203
- ########
4204
- function ( cat_1, I_1, alpha_1, C_1 )
4205
- local deduped_1_1, deduped_2_1, deduped_3_1, deduped_4_1;
4206
- deduped_4_1 := UnderlyingRing( cat_1 );
4207
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
4208
- deduped_2_1 := RowRankOfMatrix( deduped_3_1 );
4209
- deduped_1_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
4210
- return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, deduped_2_1 ), UniqueRightDivide( HomalgIdentityMatrix( deduped_2_1, deduped_4_1 ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_1_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_1_1 ), deduped_4_1 ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_1_1 ) ) ), C_1 );
4185
+ local deduped_1_1;
4186
+ deduped_1_1 := AsHomalgMatrix( alpha_1 );
4187
+ return AsCapCategoryMorphism( cat_1, I_1, UniqueRightDivide( HomalgIdentityMatrix( AsInteger( I_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_1_1 ), deduped_1_1 ), BasisOfRows( deduped_1_1 ) ) ), C_1 );
4211
4188
end
4212
4189
########
4213
4190
4214
- ;
4191
+ , 604 : IsPrecompiledDerivation := true ) ;
4215
4192
4216
4193
##
4217
4194
AddIsAutomorphism( cat,
@@ -7094,25 +7071,23 @@ end
7094
7071
7095
7072
########
7096
7073
function ( cat_1, alpha_1 )
7097
- local morphism_attr_1_1, deduped_2_1, deduped_3_1;
7098
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
7099
- deduped_2_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
7100
- morphism_attr_1_1 := UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_2_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_2_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_2_1 ) );
7074
+ local morphism_attr_1_1, deduped_2_1;
7075
+ deduped_2_1 := AsHomalgMatrix( alpha_1 );
7076
+ morphism_attr_1_1 := UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_2_1 ), deduped_2_1 ), BasisOfRows( deduped_2_1 ) );
7101
7077
return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, NumberRows( morphism_attr_1_1 ) ), morphism_attr_1_1, AsCapCategoryObject( cat_1, NumberColumns( morphism_attr_1_1 ) ) );
7102
7078
end
7103
7079
########
7104
7080
7105
- , 1609 : IsPrecompiledDerivation := true );
7081
+ , 603 : IsPrecompiledDerivation := true );
7106
7082
7107
7083
##
7108
7084
cat!.cached_precompiled_functions.MorphismFromCoimageToImage :=
7109
7085
7110
7086
########
7111
7087
function ( cat_1, alpha_1 )
7112
- local deduped_1_1, deduped_2_1;
7113
- deduped_2_1 := AsHomalgMatrix( alpha_1 );
7114
- deduped_1_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_2_1 ) );
7115
- return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, ColumnRankOfMatrix( deduped_2_1 ) ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_2_1 ), deduped_2_1 ), deduped_1_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_1_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( BasisOfRows( deduped_2_1 ), deduped_1_1 ) ), AsCapCategoryObject( cat_1, RowRankOfMatrix( deduped_2_1 ) ) );
7088
+ local deduped_1_1;
7089
+ deduped_1_1 := AsHomalgMatrix( alpha_1 );
7090
+ return AsCapCategoryMorphism( cat_1, AsCapCategoryObject( cat_1, ColumnRankOfMatrix( deduped_1_1 ) ), UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_1_1 ), deduped_1_1 ), BasisOfRows( deduped_1_1 ) ), AsCapCategoryObject( cat_1, RowRankOfMatrix( deduped_1_1 ) ) );
7116
7091
end
7117
7092
########
7118
7093
@@ -7123,29 +7098,13 @@ end
7123
7098
7124
7099
########
7125
7100
function ( cat_1, C_1, alpha_1, I_1 )
7126
- local morphism_attr_1_1, deduped_2_1, deduped_3_1;
7127
- deduped_3_1 := AsHomalgMatrix( alpha_1 );
7128
- deduped_2_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_3_1 ) );
7129
- morphism_attr_1_1 := UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_3_1 ), deduped_3_1 ), deduped_2_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_2_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( BasisOfRows( deduped_3_1 ), deduped_2_1 ) );
7130
- return AsCapCategoryMorphism( cat_1, C_1, morphism_attr_1_1, AsCapCategoryObject( cat_1, NumberColumns( morphism_attr_1_1 ) ) );
7131
- end
7132
- ########
7133
-
7134
- , 1408 : IsPrecompiledDerivation := true );
7135
-
7136
- ##
7137
- cat!.cached_precompiled_functions.MorphismFromCoimageToImageWithGivenObjects :=
7138
-
7139
- ########
7140
- function ( cat_1, C_1, alpha_1, I_1 )
7141
- local deduped_1_1, deduped_2_1;
7142
- deduped_2_1 := AsHomalgMatrix( alpha_1 );
7143
- deduped_1_1 := SyzygiesOfRows( SyzygiesOfColumns( deduped_2_1 ) );
7144
- return AsCapCategoryMorphism( cat_1, C_1, UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_2_1 ), deduped_2_1 ), deduped_1_1 ) * UniqueRightDivide( HomalgIdentityMatrix( NumberRows( deduped_1_1 ), UnderlyingRing( cat_1 ) ), UniqueRightDivide( BasisOfRows( deduped_2_1 ), deduped_1_1 ) ), AsCapCategoryObject( cat_1, RowRankOfMatrix( deduped_2_1 ) ) );
7101
+ local deduped_1_1;
7102
+ deduped_1_1 := AsHomalgMatrix( alpha_1 );
7103
+ return AsCapCategoryMorphism( cat_1, C_1, UniqueRightDivide( UniqueLeftDivide( BasisOfColumns( deduped_1_1 ), deduped_1_1 ), BasisOfRows( deduped_1_1 ) ), I_1 );
7145
7104
end
7146
7105
########
7147
7106
7148
- ;
7107
+ , 402 : IsPrecompiledDerivation := true ) ;
7149
7108
7150
7109
##
7151
7110
AddMorphismFromEqualizerToSink( cat,
0 commit comments