用户:Peter Luschny/AignerTriangles
目录
Aigner三角形
操作Z N个 x Z轴 N个 → Z轴 N个
s: N个 → Z轴 t: N个 → Z轴
A(0,0)=1; A(0,k)=0; A(n,k)=A(n-1,k-1)+s(k)*A(n-1,k)+t(k+1)*A(n-1,k+1)。
定义ATri(s,t,dim): T=矩阵(SR,dim,dim) 对于范围(dim)内的n:T[n,n]=1 对于n in(1..dim-1): 对于k in(0..n-1): T[n,k]=T[n-1,k-1]+s(k)*T[n-1,k]+T(k+1)*T[n-1,k+1] 返回T
def ASeq(s,t,dim):返回ATri(s,tdim)。列(0)
修正的Charlier多项式
s=λn:n+1 t=λn:n+1
1 1个 3 3 1 9 12 6 1 33 51 34 10 1 135 237 193 79 15 1 609 1188 1132 584 160 21 1 2985 6381 6920 4268 1510 293 28 1 15747 36507 44213 31542 13576 3464 497 36 1
1、1、3、9、33、135、609、2985、15747、88761、531561。。。
定义IATri(s,t,dim): M=ATri(s,t,dim) return M.反转()
1 -1 1 0 -3 1 3 6 -6 1 -12 -9 26 -10 1 45 3 -109 71 -15 1 -198 81 501 -475 155 -21 1 1071 -786 -2663 3329 -1455 295 -28 1 -6984 6711 16510 -25495 13729 -3647 511 -36 1
C(n,x)=如果n>0,则(x-n)*C(n-1,x)-n*C(n-2,x) elif n=0,然后为1,否则为0。
def IASeq(s,t,dim):返回IATri
1, -1, 0, 3, -12, 45, -198, 1071, -6984, 53217, -462330, ..
正交多项式
A*(0,0)=1; A*(0,k)=0; A*(n+1,k)=A*(n,k-1)-s(n)A*。
定义IATri(s,t,dim): T=矩阵(SR,dim,dim) 对于范围(dim)内的n:T[n,n]=1 对于n in(0..dim-2): 对于k in(0..n): T[n+1,k]=T[n,k-1]-s(n)*T[n 返回T
第页 0 (x) =1; 第页 n+1 (x) =(x-s n个 )对 n个 (x) -吨 n个 第页 n-1个 (x) ●●●●。 (*)
定义多边形(s,t,n,x): 如果n<0:返回0 如果n==0:返回1 p=(x-s(n-1))*聚乙烯(s,t,n-1,x)-t(n-1 返回展开(p)
对于n in(0..7):多边形(s,t,n,x) 1 x-1 x^2-3*x x^3-6*x^2+6*x+3 x^4-10*x^3+26*x^2-9*x-12 x^5-15*x^4+71*x^3-109*x^2+3*x+45 x^6-21*x^5+155*x^4-475*x^3+501*x^2+81*x-198
相关的Hankel矩阵
T_0(T_0) T_1 0 T_2(T_2) 0 . .
定义T(T,dim): M=矩阵(SR,dim,dim) 对于范围内的n(dim): M[n,n]=mul(t(i)for i in(0..n)) 返回M
T(T,7) [ 1 0 0 0 0 0 0] [ 0 2 0 0 0 0 0] [ 0 0 6 0 0 0 0] [0 0 0 24 0 0] [ 0 0 0 0 120 0 0] [ 0 0 0 0 0 720 0] [ 0 0 0 0 0 0 5040]
定义Hankel(f,dim): H=矩阵(SR,dim,dim) 对于范围内的i(dim): 对于范围内的j(dim): H[i,j]=f[i+j] 返回H 定义汉字(s,t,dim): b=ASeq(s,t,2*dim-1)#广义Motzkin数wrt s,t。 返回汉克尔(b,dim)
[(1..7)中n的Han(s,t,n).det()] [1, 2, 12, 288, 34560, 24883200, 125411328000] [(1..7)中n的T(T,n).det()] [1, 2, 12, 288, 34560, 24883200, 125411328000]
定义总和(L): return add(L[k]表示范围内的k(len(L))) 定义AltSum(L): return abs(范围(len(L))中的k加上((-1)^k*abs(L[k]))
Motzkin数和移位切比雪夫多项式
s=λn:1 t=λn:1 ATri(s,t,9)# A064189号 A026300型 [ 1 0 0 0 0 0 0 0 0] [ 1 1 0 0 0 0 0 0 0] [ 2 2 1 0 0 0 0 0 0] [ 4 5 3 1 0 0 0 0 0] [ 9 12 9 4 1 0 0 0 0] [ 21 30 25 14 5 1 0 0 0] [ 51 76 69 44 20 6 1 0 0] [127 196 189 133 70 27 7 1 0] [323 512 518 392 230 104 35 8 1] ASeq(s、t、12)# A001006号 1, 1, 2, 4, 9, 21, 51, 127, 323, 835, 2188, 5798 ASum(s,t,12)# A005773号 1, 2, 5, 13, 35, 96, 267, 750, 2123, 6046, 17303 IATri(s,t,9)# A104562号 [ 1 0 0 0 0 0 0 0 0] [-1 1 0 0 0 0 0 0 0] [ 0 -2 1 0 0 0 0 0 0] [ 1 1 -3 1 0 0 0 0 0] [ -1 2 3 -4 1 0 0 0 0] [ 0 -4 2 6 -5 1 0 0 0] [ 1 2 -9 0 10 -6 1 0 0] [ -1 3 9 -15 -5 15 -7 1 0] [ 0 -6 3 24 -20 -14 21 -8 1] IASeq(s,t,12)# A049347号 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0 IA总和(s,t,12)# A056594号 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, -1, 0, [(1..7)中n的Han(s,t,n).det()] [1, 1, 1, 1, 1, 1, 1] # A000012号
加泰罗尼亚数和切比雪夫多项式
s=λn:0 t=λn:1 ATri(s,t,9)# A053121号 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ 1 0 1 0 0 0 0 0 0] [ 0 2 0 1 0 0 0 0 0] [ 2 0 3 0 1 0 0 0 0] [ 0 5 0 4 0 1 0 0 0] [ 5 0 9 0 5 0 1 0 0] [ 0 14 0 14 0 6 0 1 0] [14 0 28 0 20 0 7 0 1] ASeq(s,t,12)# A126120号 1, 0, 1, 0, 2, 0, 5, 0, 14, 0, 42, 0 ASum(s,t,12)# A001405号 1, 1, 2, 3, 6, 10, 20, 35, 70, 126, IATri(s,t,9)# A049310型 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ -1 0 1 0 0 0 0 0 0] [ 0 -2 0 1 0 0 0 0 0] [ 1 0 -3 0 1 0 0 0 0] [ 0 3 0 -4 0 1 0 0 0] [ -1 0 6 0 -5 0 1 0 0] [0-4 0 10 0-6 0 1 0] [1 0-10 0 15 0-7 0 1] IASeq(s,t,12)# A056594号 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, -1, 0, IA总和(s,t,12)# A010892号 1, 1, 0, -1, -1, 0, 1, 1, 0, -1, -1, 0, [(1..7)中n的Han(s,t,n).det()] [1, 1, 1, 1, 1, 1, 1] # A000012号
设置没有单例的分区
s=λn:n t=λn:n,如果n>0,否则为1 ATri(s,t,9)# A217537号 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ 1 1 1 0 0 0 0 0 0] [ 1 4 3 1 0 0 0 0 0] [ 4 11 13 6 1 0 0 0 0] [ 11 41 55 35 10 1 0 0 0] [ 41 162 256 200 80 15 1 0 0] [ 162 715 1274 1176 595 161 21 1 0] [ 715 3425 6791 7182 4361 1526 294 28 1] ASeq(s,t,12)# A000296年 1、0、1、1、4、11、41、162、715、3425、17722、98253, ASum(s,t,12)# A217924型 1, 1, 3, 9, 35, 153, 755, 4105, 24323, 155513, IATri(s,t,9) [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ -1 -1 1 0 0 0 0 0 0] [ 2 -1 -3 1 0 0 0 0 0] [-3 8 5-6 1 0 0 0] [ 4 -31 0 25 -10 1 0 0 0] [ -5 119 -56 -95 70 -15 1 0 0] [ 6 -533 455 364 -455 154 -21 1 0] [ -7 2904 -3326 -1428 3059 -1428 294 -28 1] IASeq(s,t,12)#(-1)^(n+1)* A023443号 (n) 1, 0, -1, 2, -3, 4, -5, 6, -7, 8, -9, 10, -11, 12, -13, IA总和(s,t,12)# A165900个 1, 1, -1, -1, 5, -11, 19, -29, 41, -55, 71, -89, 109, [(1..7)中n的Han(s,t,n).det()]# A000178号 [1, 1, 2, 12, 288, 34560, 24883200]
费曼图和修正的埃尔米特多项式
s=λn:0 t=λn:n+1 ATri(s,t,9)# A217538型 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ 2 0 1 0 0 0 0 0 0] [ 0 5 0 1 0 0 0 0 0] [ 10 0 9 0 1 0 0 0 0] [ 0 37 0 14 0 1 0 0 0] [74 0 93 0 20 0 1 0 0] [ 0 353 0 193 0 27 0 1 0] [ 706 0 1125 0 355 0 35 0 1] Aseq(s,t,13)#充气 A000698号 1, 0, 2, 0, 10, 0, 74, 0, 706, 0, 8162, 0, 110410, 阿斯姆(s,t,13)# 1, 1, 3, 6, 20, 52, 188, 574, 2222, 7626, 31350, IATri(s,t,9)# A137286号 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ -2 0 1 0 0 0 0 0 0] [ 0 -5 0 1 0 0 0 0 0] [ 8 0 -9 0 1 0 0 0 0] [ 0 33 0 -14 0 1 0 0 0] [ -48 0 87 0 -20 0 1 0 0] [ 0 -279 0 185 0 -27 0 1 0] [ 384 0 -975 0 345 0 -35 0 1] IASeq(s,t,12)#充气 A000165号 1, 0, -2, 0, 8, 0, -48, 0, 384, 0, -3840, 0 IASum(s,t,13)# 1, 1, -1, -4, 0, 20, 20, -120, -280, 800, 3600 [(1..7)中n的Han(s,t,n).det()]# A000178号 (n+1) [1, 2, 12, 288, 34560, 24883200, 125411328000]
施罗德第三问题与厄米特多项式
s=λn:0 t=λn:n,如果n>0,否则为1 ATri(s,t,9)# A099174号 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ 1 0 1 0 0 0 0 0 0] [ 0 3 0 1 0 0 0 0 0] [ 3 0 6 0 1 0 0 0 0] [ 0 15 0 10 0 1 0 0 0] [ 15 0 45 0 15 0 1 0 0] [ 0 105 0 105 0 21 0 1 0] [105 0 420 0 210 0 28 0 1] ASeq(s,t,13)# A123023号 1, 0, 1, 0, 3, 0, 15, 0, 105, 0, 945, 0, 10395, ASum(s,t,13)# A000085号 1、1、2、4、10、26、76、232、764、2620、9496, IATri(s,t,9)# A066325号 [ 1 0 0 0 0 0 0 0 0] [ 0 1 0 0 0 0 0 0 0] [ -1 0 1 0 0 0 0 0 0] [ 0 -3 0 1 0 0 0 0 0] [ 3 0 -6 0 1 0 0 0 0] [ 0 15 0 -10 0 1 0 0 0] [ -15 0 45 0 -15 0 1 0 0] [0-105 0 105 0-21 0 1 0] [ 105 0 -420 0 210 0 -28 0 1] IASeq(s,t,12)# A123023号 1, 0, -1, 0, 3, 0, -15, 0, 105, 0, -945, 0, 10395, IA总和(s,t,13)# A001464号 1, 1, 0, -2, -2, 6, 16, -20, -132, 28, 1216, 936, [(1..7)中n的Han(s,t,n).det()]# A000178号 [1, 1, 2, 12, 288, 34560, 24883200, 125411328000]
雅可比分数
#Jcf评估Jacobi类型的连续分数 #使用反向重复。 定义Jcf(s,t,n): c=0 对于范围(n,0,-1)中的k: a=1-s(k)*x b=t(k)*x ^2 c=b/(a-c) c=1/(1-s(0)*x-c) return c.simplify_full()
这个 加泰罗尼亚的例子 (s(n)=0,t(n)=1)给出了:
对于(0..6)中的n:Jcf(s,t,n) 1 -1/(x^2-1) (x^2-1)/(2*x^2-1) -(2*x^2-1)/(x^4-3*x^2+1) (x^4-3*x^2+1)/(3*x*4-4*x^2+1) -(3*x^4-4*x^2+1)/(x^6-6*x^4+5*x^2-1) (x^6-6*x^4+5*x^2-1)/(4*x^6-10*x^4+6*x^2-1)
对于n in(0..6):n,泰勒(Jcf(s,t,n),x,0,2*n) (0) 1 (1) 1+1*x^2 (2) 1+1*x^2+2*x^4 (3) 1+1*x^2+2*x^4+5*x^6 (4) 1+1*x^2+2*x^4+5*x^6+14*x^8 (5) 1+1*x^2+2*x^4+5*x^6+14*x^8+42*x^10 (6) 1+1*x^2+2*x^4+5*x^6+14*x^8+42*x^10+132*x^12
在 莫茨金案件 (s(n)=1,t(n)=1)我们发现:
对于(0..5)中的n:Jcf(s,t,n) 1/(x-1) (x-1)/(2*x-1) -(2*x-1)/(x^3+x^2-3*x+1) -(x^3+x^2-3*x+1)/(x^4-2*x^3-3*x^2+4*x-1) (x^4-2*x^3-3*x^2+4*x-1)/(4*x^4-2*x^3-6*x^2+5*x-1) -(4*x^4-2*x^3-6*x^2+5*x-1)/(x^6+2*x^5-9*x^4+10*x^2-6*x+1) 并进行了扩展: (0) 1 (1) 1+x+2*x^2 (2) 1+x+2*x^2+4*x^3+9*x^4 (3) 1+x+2*x ^2+4*x ^3+9*x ^4+21*x ^5+51*x ^6 (4) 1+x+2*x ^2+4*x ^3+9*x ^4+21*x ^5+51*x ^6+127*x ^7+323*x ^8
加权Motzkin路径
定义steps_to_string(S): Z=“” 对于s中的s: 如果s==0:Z+='H'#水平台阶 elif s==-1:Z+='D'#下一步 elif s==1:Z+='U'#上一步 返回Z 定义打印所有MotzkinPaths(n): P=iter(MotzkinPaths(n)) 对于p中的p: 打印步骤到字符串(p), 返回 打印所有MotzkinPaths(5) HHHHH HHHUD HHHHD HHUDH HUHH HUHD HUHHD HUUDD UHHHD UHHDH UHDH UHDUD UHUD UDHHH UDHU 乌德乌德乌德乌德乌德乌德
#版权所有(C)2011 Dan Drake。 此程序是免费软件: #您可以重新发布和/或根据以下条款修改它 #由Free发布的GNU通用公共许可证 #Software Foundation,许可证版本2,或(位于 #您的选项)任何更高版本。 请参见: http://www.gnu.org/licenses(http://www.gnu.org/licenses) 从sage.combinat.backtrack导入GenericBacktracker 类MotzkinPaths(GenericBacktracker): def __init__(self,n,h=无): GenericBacktracker__ init__(自身,[],(0,0)) 自我_ n=n 如果h不是None: self.max_ht=h 其他: self.max_ht=n 定义(自身、路径、状态)(_R): len,ht=状态 如果len<self_ 编号: #如果长度小于n,我们需要继续建造 #路径,所以新的长度将增加1,我们 #不要放弃这条路。 newlen=长度+1 #如果新高度不是 #超过剩余的新步骤数 如果ht<=自身_ n-纽伦: 屈服路径+[0],(newlen,ht),False #如果我们不接触x轴,我们可以得到一条路径 #最后一步是下降 如果ht>0: 屈服路径+[-1],(newlen,ht-1),False #如果新高度不超过 #剩余的新步骤数,如果没有 #在最大高度 如果ht+1<=自身_ n-newlen和ht<self.max_ht: 屈服路径+[1],(newlen,ht+1),False 其他: #如果长度为n,请将状态设置为“无”,以便停止尝试 #创造新的道路,让我们拥有 屈服路径,无,真 #丹·德雷克《MotzkinPaths》的结尾。
定义重量(s,t,P): h=0; w=1 对于p中的p: 如果p==1:h+=1 elif p==0:w*=s(h) elif p==-1:w*=t(h); h-=1; 返回w
(一) s(n)=n+1和t(n)=n+1(上面的第一个示例) (二) s(n)=1和t(n)=1(Motzkin情况) (三) s(n)=0和t(n)=1(加泰罗尼亚案例) [一] 【二】【三】 -------------------------- w(HHHH)=1|1|0 w(HHUD)=2|1|0 w(HUHD)=4|1|0 w(HUDH)=2|1|0 w(超高清)=8|1|0 w(UHDH)=4|1|0 w(UDHH)=2|1|0 w(UDUD)=4|1|1 w(UUDD)=6|1|1 -- - - 33 9 2
选定书目
M.Aigner、加泰罗尼亚语和其他数字:一个反复出现的主题。 收录于:代数组合数学与计算机科学,斯普林格2001年。 (我们称之为 这里的Aigner矩阵Aigner称为“递归矩阵”。 然而,该术语与 不同的含义。) P.Flajolet,连分式的组合方面, 离散数学。 32 (1980), 125-161 C.G.J.Jacobi,沃克,第六卷,第385-426页。 X.Viennot,Une theéorie组合 盖内罗,讲稿,蒙特利尔(1984年)。 H.Wronski,技术算法哲学:Loi supríme和universelle。 1815-1817年巴黎