Asimptotik olarak,


17

Bir permütasyon düşünün σσ arasında [ 1 .. n ][1..n] . Ters çevirme, i < j ve σ ( i ) > σ ( j ) olacak şekilde bir çift indeks ( i , j ) olarak tanımlanır .(i,j)i<jσ(i)>σ(j)

Tanımla bir kAk permütasyon sayısı olduğu [ 1 .. n ][1..n] en ile kk inversiyonu.

Soru: A k için sıkı asimptotik sınır Aknedir?

İlgili bir soru daha önce sorulmuştur: Aynı Kendall-Tau mesafesine sahip permütasyon sayısı

Ancak yukarıdaki soru A k hesaplamasıyla ilgiliydi . Dinamik programlama kullanılarak hesaplanabilir, çünkü burada gösterilen yineleme ilişkisini karşılar: /programming/948341/dynamic-programming-number-of-ways-to-get-at-least-n-bubble -swap-SıralamaAk

Tam olarak kk inversiyonlu permütasyonların sayısı da incelenmiştir ve bir üretme fonksiyonu olarak ifade edilebilir: http://en.wikipedia.org/wiki/Permutation#Inversions

Ancak kapalı formülü veya asimtotik bir bağ bulamıyorum.


2
If you have a generating polynomial for a sequence, you can derive the generating polynomial for the prefix sums merely by multiplying the polynomial by 1/(1−x)1/(1−x). In your case, you'd use the polynomial you linked to that computes the exactly-k inversions.
— Suresh Venkat


1
@SureshVenkat Tavsiye için teşekkürler. Ama yine de bu gerçekten karmaşık polinomda n ve k açısından x k katsayısını bulmakta sıkışıp kalacağım ve bunu nasıl yapacağımı göremiyorum. xknk
— Vinayak Pathak

3
katsayısını elde etmek için x k almak k üreten polinomun türevi inci ve en değerlendirmek x = 0 . xkkx=0
— Sasho Nikolov

Yanıtlar:


12

According to Wikipedia, the number of permutations in SnSn with exactly kk inversions is the coefficient of XkXk in 1(1+X)(1+X+X2)⋯(1+X+⋯+Xn−1).

1(1+X)(1+X+X2)⋯(1+X+⋯+Xn−1).
Denote this by c(n,k)c(n,k). This shows that c(n+1,k)=k∑l=0c(n,k−l).
c(n+1,k)=∑l=0kc(n,k−l).
So the number of permutations in SnSn with at most kk inversions is equal to the number of permutations in Sn+1Sn+1 with exactly kk inversions. This has a neat combinatorial proof as well (hint: take π∈Sn+1π∈Sn+1 and remove n+1n+1).

If we are interested only in the coefficient of XkXk, then factors XmXm for m>km>k don't make any difference. So for n>kn>k, c(n,k)c(n,k) is the coefficient of XkXk in 1(1+X)⋯(1+X+⋯+Xk−1)(1+X+⋯+Xk+⋯)n−k=1(1+X)⋯(1+X+⋯+Xk−1)1(1−X)n−k=1(1+X)⋯(1+X+⋯+Xk−1)∞∑t=0(t+n−k−1t)Xt.

==1(1+X)⋯(1+X+⋯+Xk−1)(1+X+⋯+Xk+⋯)n−k1(1+X)⋯(1+X+⋯+Xk−1)1(1−X)n−k1(1+X)⋯(1+X+⋯+Xk−1)∑t=0∞(t+n−k−1t)Xt.
This implies the formula c(n,k)=k∑t=0(n+t−k−1t)c(k,k−t),n>k.
c(n,k)=∑t=0k(n+t−k−1t)c(k,k−t),n>k.

When kk is constant, the asymptotically most important term is the one corresponding to t=kt=k, and we have c(n,k)=(n−1k)+Ok(nk−1)=1k!nk+Ok(nk−1).

c(n,k)=(n−1k)+Ok(nk−1)=1k!nk+Ok(nk−1).
The same asymptotics work for c(n+1,k)c(n+1,k), which is what you were after.

For non-constant kk, using the fact that (n+t−k−1t)=(n+t−k−1n−k−1)(n+t−k−1t)=(n+t−k−1n−k−1) is increasing in tt and ∑kt=0c(k,t)≤k!∑kt=0c(k,t)≤k!, we get the bounds (n−1k)≤c(n,k)≤k!(n−1k).

(n−1k)≤c(n,k)≤k!(n−1k).
Better bounds are surely possible, but I'll leave that to you.

Using Stirling's Approximation and the binomial bounds we can simplify the last expression to c(n,k)≤k!(n−1k)≤ekk+1/2e−k(e(n−1)/k)kc(n,k)≤k!(n−1k)≤ekk+1/2e−k(e(n−1)/k)k so c(n,k)≤e√k(n−1)kc(n,k)≤ek−−√(n−1)k. This is not tight of course but it's a more elegant bound than I would expect from those approximations.
— SamM
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.