可忽略函數
外觀
在數學中,可忽略函數(英語:Negligible function)是指
- 對於一個函數 ,如果對於任意一個正多項式,存在一個,使得對於所有的
那麼這個函數便是可忽略的(negligible)。通常我們把「存在一個,使得對於所有的」簡化為「對於所有足夠大的」。
歷史
[編輯]可忽略函數這個概念是和數學分析的形式化模型相關的。[註 1]第一個比較嚴格的定義是波爾查諾在1817年給出的。後來的柯西, 魏爾施特拉斯和海涅都用了基本相同的以下定義[註 2]:
- (連續函數) 一個實數函數在處連續,當對於任意一個正實數,有一個正實數,使時,有。
只要每步改變一項參數,此定義就可經數步轉換成為可忽略函數的定義。首先,當時,我們需要定義"足夠大"(sufficiently large),並定義無窮小量:
- (足夠大) 實數足夠大時一個數學命題為真,當且僅當存在一個實數,對所有的實數此數學命題為真。
然後我們把正實數換成正實數多項式函數。[註 4]
- (可忽略函數) 一個連續函數可忽略,當對任意足夠大的正實數,對任意正多項式,有
- 。
在基於計算複雜性理論的現代密碼學中,一個安全技術是數學上可證明安全(provably secure)的意思通常是,此安全技術的失敗[註 5]的概率是關於密鑰長度的一個可忽略函數(參見公鑰密碼學)。因為密鑰長度肯定是自然數,這就是為什麼開篇的定義把定義域改為自然數體的原因。[註 6]
註釋
[編輯]- ^ 儘管「連續函數」和「無窮小」的概念在牛頓和萊布尼茨時代(十七世紀八十年代)就有了,但直到十九世紀一十年代才為後來的數學家們給出嚴格的數學定義。
- ^ 其中所有數都在實數體中
- ^ 注意此處的倒數在定義域為實數體時並不需要加入,這樣寫是為了推導時看得清楚。
- ^ 因為數可以看作是度數為0的多項式函數,「可忽略函數」其實就是「函數值無窮小」在概念上的一個廣義定義。
- ^ 比如在多項式時間內將單向函數逆反,或在多項式時間內將密碼隨機數發生器產生的數和真正隨機數區別開來
- ^ 不過,此關於可忽略函數的數學定義從未規定函數輸入必須是密鑰長度。實際上在具體分析中,可以是任何事先規定好的系統的某個參數,然後可以通過數學上的分析揭示一些並不顯而易見的複雜系統的行為。
參考
[編輯]- Goldreich, Oded. Foundations of Cryptography: Volume 1, Basic Tools. Cambridge University Press. 2001 [2007-03-02]. ISBN 0-521-79172-3. (原始內容存檔於2020-08-11).
- Sipser, Michael. Section 10.6.3: One-way functions. Introduction to the Theory of Computation. PWS Publishing. 1997: 374–376. ISBN 0-534-94728-X.
- Papadimitriou, Christos. Section 12.1: One-way functions. Computational Complexity 1st. Addison Wesley. 1993: 279–298. ISBN 0-201-53082-1.
- Colombeau, Jean François. New Generalized Functions and Multiplication of Distributions. Mathematics Studies 84, North Holland. 1984. ISBN 0-444-86830-5.
- Bellare, Mihir. A Note on Negligible Functions. Dept. of Computer Science & Engineering University of California at San Diego. 1997. CiteSeerX 10.1.1.43.7900 .