質問

関数の一般的に有用なプロパティの多くには、簡潔な名前があります。例えば、 関連性, 通勤, 推移性, 、など

使用するライブラリを作成しています クイックチェック これらのプロパティなどの速記の定義を提供します。

私が質問をしているのはISです idempotence 単一関数の。関数fはiif∀xです。 fx == f(fx)。

同様に簡潔な名前を見つけるのに苦労しているこのプロパティの興味深い一般化があります。人々の名前の選択を提案することでバイアスを避けるために、私はそれに名前を付けて、次の定義を提供します。

関数fには、giif∀xに関してpプロパティがあります。 fx == f(gx)。これは、Pの観点からiDemopotenceを再定義することにより、等身性の一般化と見なすことができます。関数fは、それ自体に関してPプロパティを持っている場合、等程度です。

これが有用なプロパティであることを確認するには、多くの一般的な最適化を実装するために使用できる書き換えルールを正当化することを観察します。これは、Gが何らかの標準化関数の場合に常に発生するわけではありませんが、これは常に発生します。いくつかの例:

  • length に関してはpです map f (Fのすべての選択肢について)
  • に変換 CNF 変換に関してはpです DNF (およびその逆)
  • ユニコード正規化 NFCを形成することは、正規化に関してPであり、NFDを形成する(そしてその逆)
  • minimum に関してはpです nub

このプロパティに何と名前を付けますか?

役に立ちましたか?

解決

それを言うことができます map flength- プレセビング、またはそれ length 不変です map fing。だからどうですか:

  • Gはf-preServingです。
  • fは(適用)gの下で不変です。
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top