[英語] false-positive

前エントリで書いたPhanだけど、公式ページの冒頭に以下のように書かれていた。

Phan is a static analyzer for PHP that prefers to minimize false-positives. Phan attempts to prove incorrectness rather than correctness.

ここで”false-positive”とはどういう意味なのか。

もともとは医学用語として使われていたらしい。以下のページの説明がわかりやすい。

False PositiveとFalse Negative – Qiita
https://qiita.com/steel_code/items/101c9d037d5e8c2b7876

たとえば、ある人がガンかどうかの検査をする場合
– 本当はガンの人はTrue Positive
– 本当はガンではない人はTrue Negative

誤検知されたケース
– テストでガンと判定されたけど、実はガンじゃなかった=False Positive
– テストでガンと判定されなかったけど、実はガンだった=False Negative

そういうことなのね。IT業界での用例は以下ページ。

フォールスポジティブ (false positive)とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
https://wa3.i-3-i.info/word15239.html

誤った判定 – 学校では教えてくれないバッドノウハウ英語 #13 – bkブログ
http://0xcc.net/blog/archives/000176.html

[PHP] Phanをセットアップする

PhanはPHPの静的解析ツール。

GitHub – phan/phan: Phan is a static analyzer for PHP. Phan prefers to avoid false-positives and attempts to prove incorrectness rather than correctness.
https://github.com/phan/phan

Phanのインストール

php-ast extensionが無いと叱られたので、以下のページの説明に倣ってphp-astをインストールする。

GitHub – nikic/php-ast: Extension exposing PHP 7 abstract syntax tree
https://github.com/nikic/php-ast#installation

Phanが動くようになったら設定ファイルを作って実行する。

参考サイト

Phanで静的解析 – Qiita
https://qiita.com/msmsny/items/46aaeda7e565cfc7ec48

Phan静的解析がもたらす大PHP型検査時代 – pixiv inside [archive]
https://devpixiv.hatenablog.com/entry/2016/11/11/202656