unlisted
ubuntu2004o
��c�� � @ sH d Z ddlmZ ddlZddlmZ ddlmZ ddlmZ ddl m
Z
ddlmZ dd l
mZ dd
lmZ ddlmZ ddlmZ d
dlmZmZmZmZmZ d
dlmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' d
dl(m)Z) d
dl*m+Z+m,Z,m-Z-m.Z. d
dl/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7 de,fdd�Z8de,fdd�Z9ede,fdd��Z:de,fdd�Z;de,fdd�Z<de,fdd�Z=de,fd d!�Z>de,fd"d#�Z?d$d%� Z@de,fd&d'�ZAd(d)� ZBdhd*d+�ZCd,d-� ZDed.d/� �ZEd0d1� ZFed2d3� �ZGede,fd4d5��ZHede,fd6d7��ZIed8d9� �ZJede,fd:d;��ZKede,fd<d=��ZLede,fd>d?��ZMde,fd@dA�ZNede,fdBdC��ZOdDdE� ZPee,fdFdG��ZQee,fdHdI��ZRedJdK� �ZSedLdM� �ZTdNdO� ZUede,fdPdQ��ZVde,fdRdS�ZWe,fdTdU�ZXedVdW� �ZYdXdY� ZZde,fdZd[�Z[de,fd\d]�Z\ede,fd^d_��Z]d`da� Z^dbdc� Z_ddde� Z`dfdg� ZadS )iz9
Faber-Zagier relations and pairing in tautological ring
� )�copyN)�cached_function)�span)�ZZ)�QQ)�matrix)�floor)�
Partitions)�IntegerVectors)�Permutations� )�multiply�insertion_pullback�kappa_multiple�psi_multiple� get_marks)�
all_strata�
num_strata�contraction_table�unpurify_map�single_stratum�autom_count�graph_count_automorphisms�R�X�Graph�num_of_stratum�graph_isomorphic��socle_evaluation)� MODULI_SM� MODULI_ST�MODULI_SMALL�dim_form)�get_memory_usage�dprint�remove_duplicates�subsequences�A_list�B_list�aut�simplify_sparse� c C sT t | t|�|�}|| }t| |||� t| |||� t| |||� t| |||� d S �N)r# �lenr r r )�g�r1�markings�moduli_type�r3�r2r, r, �:/home/user/Introduction lectures/admcycles/DR/relations.py�gorenstein_precompute s r6 c s� t �t����}|| }t�|���}t�|����t�|���}���fdd�t|�D ���fdd�t|�D �}t||k�} t|�D ]7}
t��D ]0}| r\|
|kr\|| |
||
|<