Frage

Viele häufig nützliche Eigenschaften von Funktionen haben präzise Namen. Zum Beispiel, Assoziativität, Amtativität, Transitivität, etc.

Ich mache eine Bibliothek für die Verwendung mit Schneller Check Das liefert Kurzdefinitionen dieser und anderer Eigenschaften.

Die, über die ich eine Frage habe, ist idempotenz von unären Funktionen. Eine Funktion f ist idempotent iif ∀x. fx == f (fx).

Es gibt eine interessante Verallgemeinerung dieser Eigenschaft, für die ich Schwierigkeiten habe, einen ähnlich prägnanten Namen zu finden. Um die Auswahl des Namens der Menschen zu vermeiden, indem ich eine vorschlägt, werde ich es P nennen und die folgende Definition angeben:

Eine Funktion F hat die P -Eigenschaft in Bezug auf g iif ∀x. fx == f (gx). Wir können dies als eine Verallgemeinerung der Idempotenz sehen, indem wir idempotenz in Bezug auf P. eine Funktion f identotent iifin die P -Eigenschaft in Bezug auf sich selbst haben.

Um zu sehen, dass dies eine nützliche Eigenschaft ist, beobachten Sie, dass sie eine Umschreibenregel rechtfertigt, mit der eine Reihe gemeinsamer Optimierungen implementiert werden können. Dies entsteht oft, aber nicht immer, wenn G eine Art von Hadernisationsfunktion ist. Einige Beispiele:

  • length ist P in Bezug auf map f (für alle Auswahlmöglichkeiten von f)
  • Konvertieren auf CNF ist P in Bezug auf die Konvertierung auf DNF (und umgekehrt)
  • Unicode -Normalisierung Um NFC zu bilden, ist P in Bezug auf die Normalisierung zur Bildung von NFD (und umgekehrt)
  • minimum ist P in Bezug auf Kern

Wie würden Sie diese Eigenschaft nennen?

War es hilfreich?

Lösung

Man kann das sagen map f ist length-Ververschreibung oder das length ist unveränderlich unter map fing. Also wie wäre es mit:

  • G ist f-Präserversicherung.
  • F ist invariant unter (Anwendung) g.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top