离散基础 (1). 从“访存模型”看“切比雪夫定理”

    xiaoxiao2021-04-12  38

    特殊情况下, 你还是可以用通常的解决方法, 但不可否认, 也一定有专属它的性感的方法

    1. 基本规则 分配律: kK(cak)=c(kKak)

    结合律: kK(ak+bk)=kK(ak)+kK(bk)

    交换律: kK(ak)+tK(bt)

    2. 例题

    1t<kn(akat)(bkbt)

    观察,如下我们构造的矩阵:

    A=a1,a1a2,a1an,a1a1,a2a2,a2an,a2a1,ana2,anan,an

    B=b1,b1b2,b1bn,b1b1,b2b2,b2bn,b2b1,bnb2,bnbn,bn

    发现1: 1t<kn(akat)(bkbt) 就是矩阵A和B的内部元素差之积。

    发现2:构造的矩阵A和B均为对角矩阵,其中 1t<kn(akat)(bkbt) 可以理解为下三角,相应地,上三角为 1k<tn(akat)(bkbt)

    3. 解题 令

    S=1t<kn(akat)(bkbt)

    SΔ=1k<tn(akat)(bkbt) ,

    因为对称矩阵的对称性,所以有,

    S=SΔ Swhole=S+SΔ+Sdiagonal

    进一步推出,

    2S=S+SΔ

    2S=SwholeSdiagonal

    2S=1kn1tn(akat)(bkbt)k=t1kn1tn(akat)(bkbt)

    2S=1kn1tn(akat)(bkbt)

    2S=1kn1tn(akbk)1kn1tn(akbt)1kn1tn(atbk)+1kn1tn(atbt)

    根据分配律,有,

    2S=(1tn1)(1kn(akbk))1kn1tn(akbt)1kn1tn(atbk)+(1kn1)(1tn(atbt))

    2S=n1kn(akbk)1kn1tn(akbt)1kn1tn(atbk)+n1tn(atbt)

    根据交换律,有,

    2S=n1kn(akbk)1kn1tn(akbt)1kn1tn(akbt)+n1kn(akbk)

    2S=2n1kn(akbk)21kn1tn(akbt)

    两边同时除以2,有,

    S=n1kn(akbk)1kn1tn(akbt)

    根据分配律,有,

    S=n1kn(akbk)1kn(ak)1tn(bt)

    4. 分析 重新排序

    1kn(ak)1tn(bt)=n1kn(akbk)S

    1kn(ak)1tn(bt)=n1kn(akbk)1t<kn(akat)(bkbt)

    切比雪夫定理: 若 f(x) g(x) 均为[a,b]上的单调非减函数,有,

    abf(x)abg(x)(ba)abf(x)g(x)

    发现1:切比雪夫定理分析的是连续数域,而本文恒等式分析的是离散数域。

    发现2:本文恒等式是切比雪夫定理的一个特例,换句话说,本文恒等式是切比雪夫定理在离散数域的一种表达方式。

    5. 应用 给定两单调且大小为n的数组A, B,问 sum(A)sum(B)=?

    方法一:

    sum(A)sum(B)=(1knA[k])(1knB[k])

    根据分配律,有,

    sum(A)sum(B)=(1kn1tn(A[k]B[t]))

    方法二:

    sum(A)sum(B)=(1knA[k])(1knB[k])

    根据本文恒等式,有,

    sum(A)sum(B)=n(1kn(A[k]B[k]))1t<kn(A[k]A[t])(B[k]B[t])

    发现1:两种不同的计算方式,虽然计算上是一样的输出结果,但却存在着各自不同的计算机访问内存的模式:方法一是一种全局扫描的访问内存的模式,方法二则由两种模式构成:其一是一对一的对齐的访存模型,其二是卷积运算。

    转载请注明原文地址: https://ju.6miu.com/read-667276.html

    最新回复(0)