homalg-project/HigherHomologicalAlgebra

Extend scope of EmbeddingFunctorIntoDerivedCategory

Closed this issue · 3 comments

Do you think it is possible to update the attribute EmbeddingFunctorIntoDerivedCategory so that it works when applied on the AdditiveClosure of the LinearClosure of a ProsetAsCategory?

Here is an example :

ReadPackage( "DerivedCategories", "examples/pre_settings.g" );;

QQ := HomalgFieldOfRationals();;
k := HomalgFieldOfRationals();;
P := [ [ 1, 1, 1, 1 ], [ 0, 1, 0, 1 ], [ 0, 0, 1, 1 ], [ 0, 0, 0, 1 ] ];;
CP := ProSetAsCategory(P);;
kCP := LinearClosure(QQ, CP, ReturnTrue);;
AddkCP := AdditiveClosure(kCP);;
HP := HomotopyCategory(AddkCP);;

iota := EmbeddingFunctorIntoDerivedCategory( HP );
#! fail

There is at least two different ways:

  1. Implement an operation to compute the isomorphism functor from kCP into the algebroid associated to CP and extend it to additive closures, then to homotopy categories, then embedd the homotopy category of the additive closure of the algebroid in the derived category.

  2. Compute the algebroid by using the fact that the objects of the CP form a full strong exceptional collection:

gap> P1 := LinearClosureObject( kCP, 1/CP )/AddkCP/HP;
<An object in Homotopy category( Additive closure( LinearClosure( ProSet ) ) ) with active lower b\
ound 0 and active upper bound 0>
gap> P2 := LinearClosureObject( kCP, 2/CP )/AddkCP/HP;
<An object in Homotopy category( Additive closure( LinearClosure( ProSet ) ) ) with active lower b\
ound 0 and active upper bound 0>
gap> P3 := LinearClosureObject( kCP, 3/CP )/AddkCP/HP;
<An object in Homotopy category( Additive closure( LinearClosure( ProSet ) ) ) with active lower b\
ound 0 and active upper bound 0>
gap> P4 := LinearClosureObject( kCP, 4/CP )/AddkCP/HP;
<An object in Homotopy category( Additive closure( LinearClosure( ProSet ) ) ) with active lower b\
ound 0 and active upper bound 0>
gap> I := InclusionFunctorInAdditiveClosure( kCP );
Inclusion functor of LinearClosure( ProSet ) in its additive closure
gap> J := EmbeddingFunctorInHomotopyCategory( AddkCP );
Inclusion functor in homotopy category
gap> IJ := PreCompose( I, J );
Composition of Inclusion functor of LinearClosure( ProSet ) in its additive closure and Inclusion functor in homotop\
y category
gap> collection := CreateExceptionalCollection( [ P1, P2, P3, P4 ], [ "P1", "P2", "P3", "P4" ] );
<An exceptional collection defined by the objects of the Full subcategory generated by 4 objects in Homotopy ca\
tegory( Additive closure( LinearClosure( ProSet ) ) )>
gap> full := DefiningFullSubcategory( collection );
Full subcategory generated by 4 objects in Homotopy category( Additive closure( LinearClosure( ProSet ) )�[\
35m )
gap> U := RestrictFunctorToFullSubcategoryOfRange( IJ, full );
Restriction of a functor to a full subcategory of range
gap> V := IsomorphismOntoAlgebroid( collection );
Isomorphism functor from exceptional collection into algebroid
gap> UV := PreCompose( U, V );
Composition of Restriction of a functor to a full subcategory of range and Isomorphism functor from exceptional coll\
ection into algebroid
gap> AddUV := ExtendFunctorToAdditiveClosures( UV );
Extension of Composition of Restriction of a functor to a full subcategory of range and Isomorphism functor from exc\
eptional collection into algebroid to additive closures
gap> HoAddUV := ExtendFunctorToHomotopyCategories( AddUV );
Extension of a functor to homotopy categories
gap> L := EmbeddingFunctorIntoDerivedCategory( RangeOfFunctor( HoAddUV ) );
Equivalence functor from homotopy category into derived category
gap> W := PreCompose( HoAddUV, L );
Composition of Extension of a functor to homotopy categories and Equivalence functor from homotopy category into der\
ived category
gap> Display( W );
Composition of Extension of a functor to homotopy categories and Equivalence functor from homotopy category into der\
ived category:

Homotopy category( Additive closure( LinearClosure( ProSet ) ) )
  |
  V
Derived category( Quiver representations( End( P1 ⊕ P2 ⊕ P3 ⊕ P4 )^op ) )

Now you should be able to compute the functor

Thank you!