證明沒有全能防毒軟體

今天聽到一個證明, 他是要證「沒有一個軟體可以判斷出任何一種已知或未知的病毒」,
他大概的證明邏輯為:
1. 病毒是一個人寫的軟體
2. 這個判斷的程式也是人寫的軟體
3. 判斷的程式一定是設定一些條件, 當目標滿足設定的所有條件時, 就判斷他是個病毒.
4. 我可以寫一隻病毒, 設計為當不滿足你所設的所有條件時我才觸發我的病毒程式 (矛盾).
所以他得到「沒有一個軟體可以判斷出任何一種已知或未知的病毒」這個結論.
但是我覺得這個證明的不是很好的假設太多了:
1. 寫病毒的人必須知道掃瞄程式所有判斷的條件式.
2. 這個理論建構在「這隻病毒程式拿給一個專業人員, 他也沒辦法判斷這是隻病毒」的假設上.
不過說這個證明的老師似乎很滿意他的証明…

一則留言 »

  1. Y.C Cheng Said,

    五月 6, 2005 @ 9:53 am

    這個證明使用的是, 無限多元素, 可數集合裡面, 一個常用的數學證明方法.

    做證明的人必須玩弄形式邏輯, 因此 “判斷條件式” 的可列表特性, 是這一類證明的前提假設.

    大部分人 (包含我) 對這樣的証明, 多半只能說他在現實生活中, 不容易做到.

RSS feed for comments on this post · TrackBack 引用通告網址URI

Leave a Comment