Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

n environment to decompose the i-th Hochschild cohomology on some homogeneous varieties X=G/P by Hoschild-Kostant-Rosenberg.

383 views
License: GPL3
ubuntu2204
�

�pf����ddlTed��Zed��Zed��Zed��Zed��Zed��ZGd�d	e��Z	d
S)�)�*������c�H�eZdZee
fee
fee
fee
feefe	e	feefd�Z
dedej
jjdej
jjddfd�Zdefd�Zdefd	�Zdefd
�Zdejjjjp�ejjjjpmejjjjpWejjjjpAejjjjp+ejjjjpejjjjfd�Zdej
jjfd�Zde fd
�Z!de fd�Z"defd�Z#dS)�'minimal_irreducible_homogeneous_variety)�A�B�C�D�E�F�G�
Cartan_family�
Cartan_degree�
excluded_node�returnNc���||j���vsAJtdt|j�����zdz�����||_|t
vsJtd�����|j|\}}t|kr||ksPJtdt|��zdzt|��zdzt|��zdz�����||_|t
vsJtd�����|ttt|j��vs/Jtdt|j��zdz�����||_dS)	NzGThe input for ``Cartan_family`` needs to be a letter from the alphabet �.z7The input for ``Cartan_degree`` needs to be an integer.zIf the Cartan family is z8, then the input for ``Cartan_degree`` needs to between z and z7The input for ``excluded_node`` needs to be an integer.zCThe input for ``excluded_node`` needs to be in the range from 1 to )�ADMISSIBLE_CARTAN_FAMILIES�keys�
ValueError�str�_Cartan_family�ZZ�Lower_bound�_Cartan_degree�ellipsis_range�
_sage_const_1�Ellipsis�_excluded_node)�selfrrr�lower_bound�upper_bounds      �e/home/user/Kostant_decomposition/src/Kostant_decomposition/minimal_irreducible_homogeneous_variety.py�__init__z0minimal_irreducible_homogeneous_variety.__init__sJ���� ?� D� D� F� F�F�F�F�Xb�dm�nq�rv�rQ�rV�rV�rX�rX�nY�nY�dY�Z]�d]�Y^�Y^�F�F�F�+�����"�"�"�J�?x�4y�4y�"�"�"�$(�$C�M�$R�!��k��m�+�+�
��0L�0L�0L�^h�jD�EH�IV�EW�EW�jW�XR�jR�SV�Wb�Sc�Sc�jc�dk�jk�lo�p{�l|�l|�j|�}@�j@�_A�_A�0L�0L�0L�+�����"�"�"�J�?x�4y�4y�"�"�"�����4�K^�!`�!`�a�a�a�s}�D�EH�IM�I\�E]�E]�]�^a�a�tb�tb�a�a�a�+�����c�*�|j|j|jfS�N)rr r$�r%s r(�__repr__z0minimal_irreducible_homogeneous_variety.__repr__ s���"�T�%8�4�;N�N�Nr*c�p�|jdzt|j��zdzt|j��zS)N�_z/P_)rrr r$r-s r(�__str__z/minimal_irreducible_homogeneous_variety.__str__$s5���"�3�&�s�4�+>�'?�'?�?��E�c�$�J]�F^�F^�^�^r*c�:�|jt|j��zSr,)rrr r-s r(�
Cartan_stringz5minimal_irreducible_homogeneous_variety.Cartan_string(s���"�3�t�':�#;�#;�;�;r*c�D�t|�����Sr,)�
CartanTyper3r-s r(�Cartan_typez3minimal_irreducible_homogeneous_variety.Cartan_type,s���4�-�-�/�/�1�1�1r*c���tt�����������������}�fd�t���������������D��}t|��}||z
S)u�
        Return the dimension of ``self`.

        INPUT:
        - ``self`` -- minimal_irreducible_homogeneous_variety; the minimal irreducible homogeneous variety X=G/P.

        OUTPUT:
        - ``Output`` -- Integer; the dimension of X=G/P

        ALGORITHM:
        Thanks to the post by Pieter Belmans concerning the dimension of partial flag varieties
        from Jun 14th, 2017 on his blog (cf. to [Blog_PieterBelmans]_). The link is
        https://pbelmans.ncag.info/blog/2017/06/14/dimensions-of-partial-flag-varieties/
        (Date: Apr 21st, 2021).

        For the Borel group B ⊂ G: dim B = # of positive roots + rank (which accounts for the center)
        For G: dim G = # of roots in the root system + rank (which accounts for the center)
            i.e. # of roots in the root system = # of positive roots + # negative roots
            and # of positive roots = # negative roots
            so # of roots in the root system = 2 * # of positive roots

        For the Borel group B ⊂ G: dim B = # of positive roots + rank (which accounts for the center)
        For P: dim P = dim B + # of negative roots which are added to construct P

        REFERENCE:
        [Blog_PieterBelmans] https://pbelmans.ncag.info/blog/
        c�4��g|]}d�fd�|D��v�|��S)Fc�,��g|]\}}|�jk��S�)r$)�.0�node�coefficientr%s   �r(�
<listcomp>zPminimal_irreducible_homogeneous_variety.dimension.<locals>.<listcomp>.<listcomp>Os'���+r�+r�+r�M_�T�T_�T�T�5H�-H�+r�+r�+rr*r:)r;�
negative_rootr%s  �r(r>zEminimal_irreducible_homogeneous_variety.dimension.<locals>.<listcomp>NsC������]�"'�+r�+r�+r�+r�cp�+r�+r�+r�"r�"r�)�"r�"r�"rr*)�len�listr6�root_system�root_lattice�positive_roots�negative_roots)r%�number_of_positive_rootsrE�"number_of_available_negative_rootss`   r(�	dimensionz1minimal_irreducible_homogeneous_variety.dimension0s����:$'��d�.>�.>�.@�.@�.L�.L�.N�.N�.[�.[�.]�.]�.l�.l�.n�.n�(p�(p�#r�#r� �����d�D�DT�DT�DV�DV�Db�Db�Dd�Dd�Dq�Dq�Ds�Ds�EC�EC�EE�EE�?G�?G�����.1�.�-B�-B�*�'�*L�L�Lr*c�j�|j|���tt
kS)z>Test if the Cartan family of ``self`` is out of [ E , F , G ].)r�
Cartan_Familyr"�infinityr-s r(�Is_exceptionalz6minimal_irreducible_homogeneous_variety.Is_exceptionalUs*���.�t�/A�/A�/C�/C�D�]�T�X`�W`�`�`r*c�,�|���S)zBTest if the Cartan family of ``self`` is out of [ A , B , C , D ].)�Is_Exceptionalr-s r(�Is_ordinaryz3minimal_irreducible_homogeneous_variety.Is_ordinaryZs���&�&�(�(�(�(r*c�D�t|�����Sr,)�	WeylGroupr6r-s r(�
Weyl_groupz2minimal_irreducible_homogeneous_variety.Weyl_group_s���$�*�*�,�,�.�.�.r*)$�__name__�
__module__�__qualname__r"rK�
_sage_const_2�
_sage_const_3�
_sage_const_6�
_sage_const_8�
_sage_const_4rr�sage�rings�integer�Integerr)�tupler.r1r3�combinatrB�type_Ar5�type_B�type_D�type_E�type_F�type_Gr6rH�boolrLrOrRr:r*r(rrs�������+8�X�I�)G�+8�X�I�)G�+8�X�I�)G�+8�X�I�)G�+8�M�)L�+8�M�)L�+8�M�)L�
"#�"#��,��,�D�J�<N�<V�,�gk�gq�gy�hB�,�HL�,�,�,�,�O�U�O�O�O�O�_�C�_�_�_�_�<�#�<�<�<�<�2�4�=�#<�#C�#N�$i�rv�r�sL�sS�s^�$i�BF�BO�B[�Bb�Bm�$i�QU�Q^�Qj�Qq�Q|�$i�`d�`m�`y�`@�`K�$i�os�o|�oH�oO�oZ�$i�~B�~K�~W�~^�~i�2�2�2�2�"M�d�j�0�8�"M�"M�"M�"M�Ja�4�a�a�a�a�
)��)�)�)�)�
/�c�/�/�/�/�/�/r*rN)
�sage.all_cmdliner^r"rVrWrXrYrZ�objectrr:r*r(�<module>rjs����������
�
�
�G�G�A�J�J�M���PQ�
�
�
�dk�dk�lm�dn�dn�Ta�AH�AH�IJ�AK�AK�p}�]d�]d�ef�]g�]g�MZ�Y/�Y/�Y/�Y/�Y/��Y/�Y/�Y/�Y/�Y/r*