Conta rapidamente il numero di spanning tree


19

Sia t(G) il numero di spanning tree in un grafico G con n vertici. Esiste un algoritmo che calcola t(G) in operazioni aritmetiche . Questo algoritmo è di calcolare , dove è il Laplaciano di e è la matrice costituita esclusivamente da 's. Per ulteriori informazioni su questo algoritmo, consultare Biggs - Teoria dei grafi algebrici o questa domanda di Math SE .O(n3)QGJ11n2det(J+Q)QGJ1

Mi chiedo se esiste un modo per calcolare più velocemente. (Sì, esistono algoritmi più veloci di per il calcolo determinante, ma sono interessato a un nuovo approccio.)O ( n 3 )t(G)O(n3)

È anche interessato a considerare famiglie speciali di grafici (planare, forse?).

Ad esempio, per i grafici circolanti, può essere calcolato in operazioni aritmetiche tramite l'identità , dove sono autovalori diversi da zero della matrice laplaciana di , che possono essere calcolati rapidamente per i grafici circolanti. (Rappresentano la prima fila come un polinomio e poi calcolare su radici -esimo dell'unità - questo passaggio utilizza la trasformazione discreta di Fourier e può essere realizzata in operazioni aritmetiche.)O ( n lg n ) t ( G ) = 1t(G)O(nlgn)λiGnO(nlgn)t(sol)=1nλ1λn-1λiosolnO(nlgn)

Grazie mille!


Sergey, ho provato a modificare la tua domanda per migliorare la chiarezza. Verifica di aver compreso correttamente la tua domanda e di non aver riscontrato errori.
Tyson Williams,

1
Ecco un esempio più generale delle famiglie grafico in cui trovare complessità può essere fatto più velocemente: i grafici Cayley per gruppi abeliani con generatori impostati , in modo tale che . Sappiamo che gli autovalori di tale matrice sono , dove sono diversi caratteri del gruppo. Tutti i personaggi sono facili da trovare (per maggiori informazioni consultare questo documento ) il calcolo di questi caratteri è FFT dimensionale (vedi capitolo Cormen et al. Su FFT), cioè può essere fatto in O ( n lg n ) . solSS-1=SΣhSχ(h)χnO(nlgn)
Finsky,

Per ulteriori informazioni sui grafici di Cayley, consultare questo libro .
Finsky,

1
Fare algebra lineare con il Laplaciano piuttosto che una matrice generale è spesso più facile. Mi chiedo se questo possa essere rilevante.
Gil Kalai,

Potresti, per favore, essere più specifico, se possibile, fornire alcuni esempi, anche se non è direttamente correlato all'argomento in discussione. Grazie.
Finsky,

Risposte:


12

È noto che, per di larghezza dell'albero limitata, il polinomio Tutte T ( G ; x , y ) può essere valutato in qualsiasi ( x , y ) utilizzando operazioni aritmetiche O ( n ) . Se G è collegato, quindi t ( G ) = T ( G ; 1 , 1 ) .solT(sol;X,y)(x,y)O(n)Gt(G)=T(G;1,1)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.