複合函數(英語:Function composition),又稱作合成函數,在數學中是指逐點地把一個函數作用於另一個函數的結果,所得到的第三個函數。例如,函數 f : X → Y 和 g : Y → Z 可以複合,得到從 X 中的 x 映射到 Z 中 g(f(x)) 的函數。直觀來說,如果 z 是 y 的函數,y 是 x 的函數,那麼 z 是 x 的函數。得到的複合函數記作 g ∘ f : X → Z,定義為對 X 中的所有 x,(g ∘ f )(x) = g(f(x))。[note 1] 直觀地說,複合兩個函數是把兩個函數鏈接在一起的過程,內函數的輸出就是外函數的輸入。
函數的複合是關係複合的一個特例,因此複合關係的所有性質也適用於函數的複合。[1] 複合函數還有一些其他性質。
定義
考慮到函數的值域跟定義域,要簡單的以「計算式」,如把所有 和 的有序對頭接尾的這樣直觀定義「合成」是會遇到問題的,像是把 取為實數,這樣把 很自然的對接到 然後開根號成 ,是會遇到對負數開根號,出現非單一值的問題(請參見棣莫弗公式),就算不考慮單一值的問題,我們期望的「合成函數」的值域到底該不該包含複數呢?所以 (1) 我們一開始就要把準備「合成」的兩個函數的值域跟定義域劃分清楚 (2) 要考慮到對接的時候,前面的值域跟後面的值域不一定相等的問題。
如果我們有兩個函數 和 ,而兩者的定義域分別是 和 ;值域分別是 和 。如果 ,那我們定義合成函數為
直觀上來說,如果 的「輸出範圍」是有一部分在 的「輸入範圍」,那我們就可以定義「先作用 再作用 」的函數,但這個「新合成」的函數的定義域可能會因此被限縮(輸出值處在兩者交集的那些 而已)。注意到每個 只會有一個輸出值 ,而每個 只會有一個輸出值 ,所以這樣「先作用 再作用 」的話,每個 只會有一個輸出值 而已,這確保了 符合我們對函數的要求。
例子
- 有限集上的函數複合:若 f = {(1, 3), (2, 1), (3, 4), (4, 6)},g = {(1, 5), (2, 3), (3, 4), (4, 1), (5, 3), (6, 2)},則 g ∘ f = {(1, 4), (2, 5), (3, 1), (4, 2)}.
- 無限集上的函數複合:若 f: ℝ → ℝ (其中 ℝ 是所有實數的集合)表達式為 f(x) = 2x + 4,而 g: ℝ → ℝ 表達式為 g(x) = x3,則:
- (f ∘ g)(x) = f(g(x)) = f(x3) = 2x3 + 4,且
- (g ∘ f)(x) = g(f(x)) = g(2x + 4) = (2x + 4)3.
- 如果一架飛機在 t 時刻的海拔為 h(t),而海拔 x 處的氧氣濃度為 c(x),那麼 (c ∘ h)(t) 描述了 t 時刻飛機周圍的氧氣濃度。
複合幺半群
假設我們有兩個(或多個)函數 f: X → X, g: X → X,定義域與到達域相同;這些函數一般稱作變換。於是,我們可以構造多個變換複合而成的鏈,比如 f ∘ f ∘ g ∘ f。這種鏈具有幺半群的代數結構,稱作變換幺半群或者複合幺半群。通常,變換幺半群可以具有非常複雜的結構。一個很有名的例子是德拉姆曲線。所有函數 f: X → X 的集合稱作 X 上的全變換半群[2]或對稱半群[3]。(我們其實可以定義兩個半群,這取決於定義半群運算為函數左複合和右複合的方式。[4])
如果變換是雙射(也就可逆),則這些函數所有可能的組合就構成了一個變換群;可以說這個群是由這些函數生成的。這就引出了群論裡面的凱萊定理從本質上表明,(在同構意義下)任何群都是某一置換群的子群。[5]
所有雙射函數 f: X → X(稱作置換)的集合構成了一個關於複合算子的群。這就是對稱群,有時稱作複合群。
在(所有變換的)對稱半群中,我們還可以發現一個較弱的、非唯一的逆變換(稱作偽逆),因為對稱子群是一個正則半群。[6]
函數冪
如果 Y ⊆ X,則 f: X→Y 有可能可以與自身複合;這有時候記作 f 2。即:
- (f ∘ f)(x) = f(f(x)) = f 2(x)
- (f ∘ f ∘ f)(x) = f(f(f(x))) = f 3(x)
- (f ∘ f ∘ f ∘ f)(x) = f(f(f(f(x)))) = f 4(x)
更一般地,對於 n ≥ 2 的自然數,n 次函數冪可以歸納定義為 f n = f ∘ f n−1 = f n−1 ∘ f. 這種函數與自身的反覆複合稱作迭代函數。
- 習慣上,f 0 定義為 f 定義域上的恆同映射,idX.
- 如果 Y = X,而 f: X → X 存在反函數 f −1,那麼對於 n > 0,負函數冪 f −n 定義為反函數的冪:f −n = (f −1)n.
注意:若 f 在一個環內取值(特別是對於實值或復值f),存在混淆的風險,因為 f n 也可以表示 f 的 n 次乘積,比如 f 2(x) = f(x) · f(x). 對於三角函數,通常會使用後者的含義,至少對於正指數是這樣。例如,在三角學中,使用三角函數 sin2(x) = sin(x) · sin(x) 的時候,這個上標記號表示標準的指數運算。不過,對於負指數(特別是 −1),則通常指的是反函數,例如,tan−1 = arctan ≠ 1/tan.
在一些情況下,對於給定函數 f,方程 g ∘ g = f 只有一個解 g 的時候,該函數可以定義為 f 的函數平方根,記作 g = f 1/2.
更一般地,當 gn = f 只有唯一解時(自然數 n > 0),f m/n可以定義為 gm.
在額外的限制下,這個想法還可以推廣,使得迭代函數可以是一個連續的參數;在此情形下,這樣的系統稱作流,由施羅德方程定義。迭代函數和流很自然地出現在分形和動力系統的研究中。
為避免混淆,有些數學家把 f 的 n 次迭代寫作 f °n.
其他記法
許多數學家,特別是群論方面的數學家,省去複合符號,把 g ∘ f 寫作 gf.[7]
在20世紀中葉,一些數學家認為用「g ∘ f 」來表示「首先施加 f,然後施加 g」太令人困惑,於是決定改變記法。他們用「xf」來代表「f(x)」,用「(xf)g」來代表「g(f(x))」。[8] 這在某些領域會比函數寫在左面更加自然和簡便—比如在線性代數中,當 x 為行向量,f 和 g 表示矩陣,而複合是通過矩陣乘法完成的時候。這種替代記法稱作後綴表示法。順序很重要,因為函數複合不一定是可交換的(比如矩陣乘法)。向右進行施加函數和複合的寫法複合從左到右的閱讀順序。
使用後綴表示法的數學家可能會寫「fg」,表示先施加 f 再施加 g,這樣就能與後綴表示法中的符號的順序保持一致,不過這就會讓「fg」這個記號有歧義了。計算機科學家可能用 f ; g 來表示 [1] ,這樣就能區分出複合的順序了。要把左複合算子和文本分好區分開來,在Z表示法(Z notation)中 ⨾ 字符用於左關係複合。[9] 由於所有函數都是二元關係,在函數複合中也應該用[粗]分號(參見 關係複合條目了解此記法的詳細內容)。
複合算子
給定函數 g,複合算子 Cg 定義為使得
的從函數映射到函數的算子。在算子理論領域會研究複合算子。
多元函數
對於多元函數來說,部分複合是有可能的。當函數 f 的部分參數 xi 由 g 換掉後得到的結果在一些計算機工程文獻中,記作 f |xi = g
當 g 是一個常數 b 時,複合退化為一個(部分)求值,其結果就會是限制或者輔因子。[10]
通常,多元函數的複合可能涉及若干其他函數作為參數,如原始遞歸函數的定義。給定 f,一個 n 元函數,n 個 m 元函數 g1, ..., gn,f 與 g1, ..., gn 的複合是 m 元函數
- .
這有時稱作 f 與 g1, ..., gn 的廣義複合。[11] 在這個一般化的情形中,可以通過把所有這些用作參數的函數合適地選為射影函數,只保留一個參數函數,就能得到前面提到的只有一個參數部分複合的函數。還要注意,在這個一般化情形中,g1, ..., gn 可以看作是單個向量或元組值函數,這樣理解的話,這就是複合函數的標準定義。[12]
某些基本集 X 上的一些有限性運算稱作克隆,它們需要包含所有射影,並且在廣義複合下封閉。請注意,克隆通常包含各種元數(arity)的運算。[11] 交換的概念在多元情形中葉有一個有意思的推廣:如果元數 n的函數 f 是保持 g 的同態函數(g 的元數為 m),則可以說 f與 g 是可交換的,反之亦然。例如:[13]
- .
一元運算總是與自己可交換,但二元(或者更多元)運算不一定如此。與自身可交換的二元(或更多元)運算稱為medial或entropic。[13]
推廣
複合可以推廣到任意二元關係。若 R ⊆ X × Y 與 S ⊆ Y × Z 是兩個二元關係,則它們的複合 S∘R 是定義為 {(x, z) ∈ X × Z : ∃y ∈ Y. (x, y) ∈ R ∧ (y, z) ∈ S}. 考慮二元關係的一個特殊情形(函數關係),複合函數滿足關係複合的定義。
偏函數的複合可是用相同方式定義的定義,有一個類似凱萊定理(Cayley's theorem)的定理叫做Wagner-Preston定理。[14]
具有態射函數的集合範疇叫做原型範疇(prototypical category)。範疇的公理實際上受到了複合函數的性質(和定義)啟發。[15] 由複合形成的結構在範疇論中被公理化和推廣,函數的概念換成了範疇論中的態射。公式 (f ∘ g)−1 = (g−1 ∘ f −1) 中的反序複合,同樣適用於使用逆關係的關係複合,因此在群論中也適用。這些結構形成了dagger範疇。
排版
複合算子 ∘ 編碼為U+2218 ∘ RING OPERATOR ,HTML:∘
。參見Degree symbol條目中外觀類似的Unicode字符。在TeX中,寫作\circ
。
參見
注釋
參考文獻
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.