生成函式 母函式

2021-08-25 22:42:43 字數 2082 閱讀 1888

根據定義,這個序列作為函式的係數,稱g(x)就是序列的母函式。和一般意義上的函式相比,母函式的功能是計數。

有這樣一道例題:

到這一章為止,已知的計數法則就兩種,加法法則(或)和乘法法則(且)。前者是分類思想,後者是分步。

法1:分步來看,第乙個骰子有1-5種可能,因為兩個骰子之和是6,所以一旦第乙個骰子確定了,第二個骰子也就隨之確定。第乙個骰子的每一種可能性都僅對應第二個骰子的唯一確定的點數。因此5*1=5種。

法2:分類來看,有可能是1+5=5+1或2+4=4+2或3+3=3+3,累加起來,一共五種可能。

當然這個是最最簡單的例子,也很容易想,但如果骰子有很多呢?

這種情況下,挨個挨個地列舉顯然是愚蠢的。而伯努利在300年前已經研究過這個問題了,是關於「投擲m粒骰子時,點數總和為n的可能方案數」,這個問題乍看之下很複雜,令人懷疑人生。

那麼先從簡單情形考慮,兩個骰子擲出n點,有多少種可能。這相當於把n拆分成兩個數的和,這時候對n列舉就很複雜,所以對兩個骰子列舉。第乙個骰子,6種可能,相互之間是「或」的關係,對應的是加法,但是不能直接相加,因為這無法反映兩個骰子的疊加過程。

我們需要逐個分析乙個骰子的不同情況,對於乙個骰子,假如擲出2個點,就可以看作乙個分步策略,相當於——先擲乙個點,再擲乙個點,所以是(●)^2,當然這樣不習慣,於是用x2來表示。那四個點是x4,因此可以用指數對應點數。

這樣就可以用(x+x2+…+x6)表示乙個骰子的投擲過程,對於第二個骰子也是這樣,最後兩式相乘,x6前面的係數就是有多少種出現6點的方案。

最後的母函式求出來是

那麼回溯到最初伯努利提出的問題,m粒骰子就是m個多項式累乘

而要求點數總和為n的可能方案數,也就是求展開式中xn的係數。這可以看出來,對於這個多項式,我們並不關心它的值,現在關心的卻是它的係數了。(所以母函式確實是一位母親,計數序列作為係數就是她的孩子233)

所以母函式的定義我們可以進一步提煉出兩點

而這個定義是拉普拉斯在研究概率的時候,研究了母函式的方法和相關定義。(2023年拉普拉斯在著作《概率的分析理論》第一卷中系統地研究了母函式的方法和有關理論)

最後總結一下,母函式實際上是用來做什麼的,以及它和函式有什麼區別。

對於母函式

雖然形式上是函式,但「似函式,非函式」。

那——為什麼要引入乙個母函式呢?因為在現實世界裡,對於各種複雜的事件,我們要通過「對映」的方式將其簡化,比如說對於分數冪的運算十分困難,我們用乙個對數對映將其簡化,再求原問題的解,就相對容易了。

在母函式中同樣如此,在一開始思考的骰子問題裡,直接計算是十分困難的,後來發現通過分步來考慮的時候,把多項式引入,求出相應係數後再對應回來,就得到了解。

那麼是什麼原因使得母函式具備了計數的法則呢,在骰子那道題中,通過求係數來對應方案數是乙個例子。分析一下,對於一般的多項式,可以寫成

這種形式,展開後的某個冪次的係數可以分為兩部分,分別來自於兩個括號裡的某一項,這實際上就是對應的乘法法則

所以實質上是多項式的乘法運算使母函式具有了計數能力。

「母函式就是一列用來展示一串數字序列的掛衣架」

——赫伯特·維爾夫

生成函式(母函式)

參考部落格 在數學中,某個序列 a n 的母函式 又稱生成函式,英語 generating function 是一種形式冪級數,其每一項的係數可以提供關於這個序列的資訊。有三種物品,分別有 3 2,3個,問拿四個的方案數 f i j 表示當前第i個位置,已經選了j個物品的方案數 f 0 0 1 fo...

生成函式 母函式 學習筆記

普通型生成函式 首先我們有乙個序列 a 我們嘗試用函式 f x sum na ix i 來表示 a 這就得到了母函式 如果當 n rightarrow infty 時,f x sum infty a ix i 這就可以表示無限長的序列了 所以這東西有個 用啊?別忙,繼續往下看.我們可以由定義得到,序...

組合數與生成母函式

參考 母函式與排列組合 n1為最少數量陣列,n2為最大數量陣列,v為權值,p為最大值 為計算結果,b為中間結果。int a max b max 初始化a memset a,0,sizeof a a 0 1 for int i 1 i 17 i 迴圈每個因子 初始化a,因為有last,所以這裡無需初始...