Math 板


LINE

給定一函數func, 參數是i, j, k. 輸出是x, y. 假設i, j, k, x, y 都可以定義的數(非0/0),且不是無限大。 用Python語法表示:x, y = func(i, j, k) 那是否可以針對任何func, 用電腦實作一個萬用反函數?我稱此反函數invFunc, 或者用比較數學的表示法func^-1 用Python語法表示:i, j, k = invFunc(func, x, y) 我想問invFunc是否一定可以由程式寫出來?因為目前沒看到相關的萬用反函數可用,因此猜想是無法,如果真的是無法的話,方便解說一下,爲什麼無法?謝謝。 ----- Sent from JPTT on my iPhone --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.13.57 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Math/M.1687058920.A.0EE.html
1F:→ m3791913 : 不是所有函數都存在反函數 06/18 11:53
2F:→ pmove : 我想到一個困難點,就是func 有可能超大,導致反函 06/18 11:56
3F:→ pmove : 數很難求。那假設func在程式碼1000行以下,那有辦法 06/18 11:56
4F:→ pmove : 實作萬用反函數嗎?目前我只知道,如果限定在三角函 06/18 11:56
5F:→ pmove : 數的話,sin^-1, cos^-1, tan^-1, …這些都有人寫好 06/18 11:56
6F:→ pmove : 了。另外求反矩陣,印像中也有公版的。 06/18 11:56
※ 編輯: pmove (1.161.13.57 臺灣), 06/18/2023 11:59:47
7F:→ pmove : 回1F,m大:那不存在反函數,可返回exception錯誤, 06/18 12:02
8F:→ pmove : 只處理有反函數就好的,可以麼? 06/18 12:02
9F:→ pmove : 印像中,數學上,反矩陣也不一定存在啊。但程式裡面 06/18 12:41
10F:→ pmove : 可以處理反矩陣存在時,才得到反矩陣。 06/18 12:41
11F:推 j0958322080 : 反矩陣可以看他的 det 是否為零或其他條件,反函數 06/18 12:44
12F:→ j0958322080 : 要看看到有沒有類似的條件可以讓你判斷 06/18 12:44
13F:→ freePrester : Google 陷門函數 06/18 12:44
14F:→ freePrester : 如果你辦得到的話你就能輕鬆進入絕大多數的電腦系統 06/18 12:45
15F:→ freePrester : RSA 等密碼系統的安全性就是建立在反函數難以求出 06/18 12:47
16F:推 arrenwu : 你方便說明一下什麼叫做「萬用反函數」嗎? 06/18 12:53
17F:推 wohtp : 先說說你的I,j,k定義域是啥不過反正你說要用電腦實 06/18 13:36
18F:→ wohtp : 作,就算都是float也只有有限多個值。 06/18 13:36
19F:→ wohtp : 那一般解也非常簡單,反正把整個定義域都算過一遍答 06/18 13:36
20F:→ wohtp : 案全部cache起來,反函數就是在cache裡面搜尋x ,y再 06/18 13:36
21F:→ wohtp : 反推回原來的I, j, k 06/18 13:36
22F:推 sunev : 如果是求一個程式,給定任何程式碼,以生成此程式碼 06/18 14:18
23F:→ sunev : 的反程式碼,那應該會回到停機問題。 06/18 14:18
24F:→ pmove : 回17樓,w大,把所有值cache起來,先不管效率問題, 06/18 14:56
25F:→ pmove : 當cache的數,有無理數,或精確度不足,會造成小數 06/18 14:56
26F:→ pmove : 點某幾位的數後面,被省略不記,如此會造成某些數, 06/18 14:56
27F:→ pmove : 沒有被cache到。也就是原本func(i, j, k), i, j, k 06/18 14:56
28F:→ pmove : 可以算完所有值域。但是輸出的x, y有可能被省略,使 06/18 14:56
29F:→ pmove : 得某些x, y沒被cache, 但不代表此時反函數不存在。 06/18 14:56
30F:→ pmove : 舉個例子,w = func(u) = u^2, 假設電腦只能表示小 06/18 17:08
31F:→ pmove : 數點後一位(我知道這跟真正的電腦表示法,不太一樣 06/18 17:08
32F:→ pmove : )那u =1時,w =1。u =1.1時,w=1.2 (1.21但只能表 06/18 17:08
33F:→ pmove : 示小數點後一位,省略0.01),我要問w=1.1時,不在c 06/18 17:08
34F:→ pmove : ache中,此時u 是多少?我只知道u 不是1,就是1.1, 06/18 17:08
35F:→ pmove : 但到底是多少,尤其當func 更複雜時,有時候很難判 06/18 17:08
36F:→ pmove : 斷 06/18 17:08
37F:推 arrenwu : 所以你想要的其實是一個 產生反函數的函數? 06/18 18:00
38F:→ pmove : 回樓上,其實很多大大都已回答,是卡在效率問題的樣 06/18 18:17
39F:→ pmove : ,所以目前沒有公版invFunc 06/18 18:17
40F:→ musicbox810 : 就取近似,線性差值 06/18 18:42
41F:→ musicbox810 : 如果你一開始的定義夠密,結果應該不會太差吧 06/18 18:43
42F:推 DreamYeh : 隨便舉例x=f(i)=i^4-i+1 請問x=0時i=? 四組答案? 06/18 21:53
43F:推 deathcustom : 除非在一個區間內,x to y是bijective(1-1 and onto 06/19 01:16
44F:→ recorriendo : Newton's method對我來說就是萬用反函數 :P 06/19 12:50
45F:推 sunev : 程式可以要求輸出preimage,不一定要 1-1 06/19 13:13
46F:推 LPH66 : 討論完可行性了, 我來說一聲: 這問法像是 XY 問題 06/19 19:54
47F:→ LPH66 : 原 PO 很有可能有一些跟反函數相關的工作要做 06/19 19:54
48F:→ LPH66 : 但不知何理由無法或希望不要個別地求反函數 06/19 19:55
49F:→ LPH66 : 因此來問有何可以不需個別索求反函數的方式 06/19 19:55
50F:→ LPH66 : 那經過這些可行性討論之後, 我想要問原 PO: 06/19 19:55
51F:→ LPH66 : 你最一開始會有需要反函數的需求是什麼? 06/19 19:56
52F:→ LPH66 : 就算只對特定類型的函數求逆都是相對簡單的問題 06/19 19:56
53F:→ LPH66 : 給出需求來大家會比較知道要建議你用什麼方法 06/19 19:57
54F:→ pmove : 確實是工作上需要求反函數,只是工作上的目前已經求 06/20 10:39
55F:→ pmove : 出來,好奇為何沒人寫一個公版求反函數,所以來問, 06/20 10:39
56F:→ pmove : 謝謝。 06/20 10:39
57F:推 LPH66 : 那麼這裡再補充一件事吧:效率問題其實是其次 06/20 15:34
58F:→ LPH66 : 有的函數根本上就是無法求得「一個」特定的反函數 06/20 15:34
59F:→ LPH66 : 都需要將原函數作一些範圍限定或條件限定之後 06/20 15:35
60F:→ LPH66 : 才能有「一個」反函數被定義出來 06/20 15:35
61F:→ LPH66 : 這件事和你的原函數的型式極度相關,因此我才會問 06/20 15:36
62F:→ LPH66 : 究竟原函數長怎樣,這樣才能夠知道要怎麼加條件 06/20 15:37
63F:→ LPH66 : 去得到那一個反函數,同時也有助於實際求值 06/20 15:37
64F:→ LPH66 : 給出型式也能知道是不是那些本質上很難求逆的東西 06/20 15:39
65F:推 wohtp : 唯一的一般解就是我說的窮舉法啊。float還可以讓你 06/20 20:39
66F:→ wohtp : 這樣搞,R連窮舉的機會都沒了。 06/20 20:39
67F:→ xcycl : 程式語言不是只能寫 float,是能夠寫 exact real 的 06/21 00:02
68F:推 Vulpix : 是computable number嗎? 06/21 01:31
69F:推 wohtp : 只是多幾個位數而已,哪可能真的用電腦實作實數。 06/21 20:34
70F:→ sunev : 電腦只能處理特定實數,不然就不會定義computable 06/21 21:02
71F:→ xcycl : 有點好奇心看到關鍵字搜尋就知道不是多幾位數而已 07/02 17:03
72F:→ xcycl : 可以說是 computable real 沒錯 07/02 17:04







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP