松岡 航太郎
for i from 0 to N-1 cᵢ = 0 for i from 0 to N-1 for j from 0 to N-1 if i+j<N cᵢ₊ⱼ += aᵢ⋅bⱼ else cᵢ₊ⱼ₋ₙ -= aᵢ⋅bⱼ (Nの下付きが打てないのでₙになっている)
b[X]−a[X]⋅s[X]=∑x=0N−1[bx−(∑i+j=x,0≤i,j≤N−1ai⋅sj)−(∑i+j=N+x,0≤i,j≤N−1−ai⋅sj)]Xxb[X]-\mathbf{a}[X]⋅ \mathbf{s}[X]=∑^{N-1}_{x=0} [b_x-(∑_{i+j=x,0≤i,j≤N-1}a_i⋅s_j)-(∑_{i+j=N+x,0≤i,j≤N-1}-a_i⋅s_j)]X^x b[X]−a[X]⋅s[X]=x=0∑N−1[bx−(i+j=x,0≤i,j≤N−1∑ai⋅sj)−(i+j=N+x,0≤i,j≤N−1∑−ai⋅sj)]Xx
b′=bxj∈[0,k)aji′={aj(x−i) if i≤x−aj(N+x−i) otherwise\begin{aligned} b'&=b_x\\ j\in[0,k) a'_{ji}&=\begin{cases} a_{j(x-i)}\ \mathrm{if}\ i≤x\\ -a_{j(N+x-i)}\ \mathrm{otherwise} \end{cases} \end{aligned} b′j∈[0,k)aji′=bx={aj(x−i) if i≤x−aj(N+x−i) otherwise
SampleExtractIndex((𝐚[X],b[X]),x) b̄ = bₓ 𝐚̄ = 0 for j from 0 to k-1 for i from 0 to x āⱼᵢ = aⱼ₍ₖ₋ᵢ₎ for i from x+1 to N-1 āⱼᵢ = -aⱼ₍ₙ₊ₓ₋ᵢ₎ //下付きにできないのでNが小文字になっている return (𝐚̄,b̄)
page_number: true