Anwendungen metrischer Strukturen auf Posets / Gitter in der TheorieCS


17

Da der Begriff überladen ist, eine kurze Definition zuerst. Ein Poset ist eine Menge mit einer Teilordnung . Gegeben seien zwei Elemente a , b X , können wir definieren x y (Join) als ihre kleinste obere gebunden in X und in ähnlicher Weise definieren x y (treffen) (zusammen) als größte untere Schranke.Xa,bXxyXxy

Ein Gitter ist ein Poset, in dem zwei beliebige Elemente ein eindeutiges Treffen und eine eindeutige Verknüpfung haben.

Gitter (in dieser Form) tauchen in Theorie CS (kurz) in der Theorie der Submodularität (mit dem Teilmengengitter) und der Clusterbildung (dem Partitionsgitter) sowie in der Domänentheorie (die ich nicht so gut verstehe) und in der statischen Theorie auf Analyse.

Aber ich interessiere mich für Anwendungen, die metrische Strukturen auf Gittern verwenden. Ein einfaches Beispiel stammt aus der Clusterbildung, bei der jede antimonotone submodulare Funktion (antimonotone bedeutet, dass wenn x y , f ( x ) f ( y ) ) eine Metrik d ( x , y ) = 2 f ( x induziert y ) - f ( x ) - f ( y )f:XRxy,f(x)f(y)

d(x,y)=2f(xy)f(x)f(y)

Diese Metrik wurde ausgiebig verwendet, um zwei verschiedene Cluster eines Datensatzes zu vergleichen.

Gibt es andere Anwendungen von Gittern, die sich um metrische Strukturen kümmern? Ich habe mich für die Anwendung der Domänentheorie / statischen Analyse interessiert, aber bisher keine Notwendigkeit für Metriken gesehen .

Antworten:


12

Zunächst ein Kommentar. Ihre Frage hängt davon ab, wie geometrisch Sie das Wort "metrisch" bedeuten wollen. Es ist durchaus üblich, Ultrametrie in der Semantik und statischen Analyse zu verwenden, aber Ultrametrie tendiert eher zu einer kombinatorischen als zu einer geometrischen Interpretation. (Dies ist eine Variante der Beobachtung, dass die Domänentheorie eher den Geschmack einer kombinatorischen als einer geometrischen Verwendung der Topologie hat.)

Trotzdem gebe ich Ihnen ein Beispiel dafür, wie dies in Programm-Proofs auftaucht. Denken Sie zunächst daran, dass wir in einem Programmbeweis zeigen möchten, dass eine Formel, die ein Programm beschreibt, gilt. Im Allgemeinen muss diese Formel nicht unbedingt mit den Booleschen Werten interpretiert werden, sondern kann aus den Elementen eines Gitters von Wahrheitswerten abgeleitet werden. Dann ist eine wahre Formel nur eine, die der Spitze des Gitters entspricht.

Darüber hinaus kann es bei der Angabe sehr selbstreferenzieller Programme (z. B. Programme, die sich weitgehend selbst ändernden Codes zunutze machen) sehr schwierig werden. Normalerweise möchten wir eine rekursive Spezifikation des Programms angeben, aber es gibt möglicherweise keine offensichtliche induktive Struktur, an der die Definition aufgehängt werden kann. Um dieses Problem zu lösen, ist es oft hilfreich, das Wahrheitswertgitter mit einer zusätzlichen metrischen Struktur auszustatten. Wenn Sie dann zeigen können, dass das Prädikat, dessen Fixpunkt Sie wollen, streng kontrahierend ist, können Sie Banachs Fixpunktsatz heranziehen, um zu folgern, dass das gewünschte rekursive Prädikat gut definiert ist.

ΩN2nn

p:ΩΩn+1n=N


ah interessant. Als Antwort auf Ihre Frage geht es mir nur darum, dass die Metrik genau das ist: Sie erfüllt die Dreiecksungleichung. Ultrametrie ist also völlig in Ordnung. Es scheint mir jedoch (und dies ist mein Mangel in der Frage), dass die Verwendung der Metrik hier strukturell ist, um Zugang zu Banach zu erhalten. Sie interessieren sich nicht für die Metrik an sich (und daher sind Dinge wie die Annäherung an die Metrik oder die Berechnung irrelevant). Ist das richtig ?
Suresh Venkat

4
Ja, die Metrik interessiert uns nicht sonderlich. Tatsächlich ist dies ein Grund für Unbehagen bei metrischen oder schrittweise indizierten Modellen. Warum erfassen wir Informationen, die uns nicht wirklich interessieren? Das Zeigen, dass ein Modell unter einer Klasse von Annäherungen an die Metrik stabil ist (möglicherweise konservativ in Bezug auf Kontraktivität), würde den Komfort tatsächlich erhöhen.
Neel Krishnaswami

9

Als Alternative zu den am häufigsten verwendeten CPOs untersuchten Arnold und Nivat (vollständige) metrische Räume als Bereiche der Denotationssemantik [1]. In seiner Dissertation untersuchte Bonsangue [2] Dualitäten zwischen solcher Denotationssemantik und axiomatischer Semantik. Ich erwähne es hier, weil es ein sehr umfassendes Gesamtbild gibt.

[1]: A Arnold, M Nivat: Metrische Interpretationen unendlicher Bäume und Semantik nicht deterministischer rekursiver Programme. Theor. Comput. Sci. 11: 181 & ndash; 205 (1980).
[2]: MM Bonsangue Topological Duality in Semantics Band 8 von ENTCS, Elsevier 1998.


Fantastisch - ich wusste nicht, dass diese Arbeit online ist!
Neel Krishnaswami

3
Ich habe Marcello (Bonsangue) wissen lassen, dass über ihn gesprochen wird. (Vielleicht wird er mitmachen.)
Dave Clarke

5

Hier ist eine (zufällig ganz oben in meiner Leseliste):

Swarat Chaudhuri, Sumit Gulwani und Roberto Lublinerman. Kontinuitätsanalyse von Programmen. POPL 2010.

Die Autoren geben eine Bezeichnungssemantik für eine imperative Sprache mit einfachen Schleifen an und interpretieren Ausdrücke als Funktionen aus Werten in einem zugrunde liegenden Produktmetrikraum. Der Punkt ist, zu bestimmen, welche Programme kontinuierliche Funktionen darstellen, auch wenn "if" und Schleifen vorhanden sind. Sie erlauben sogar Fragen zur Kontinuität, die auf bestimmte Ein- und Ausgänge beschränkt sind. (Dies ist wichtig für die Analyse des Dijkstra-Algorithmus, dessen Pfadlänge stetig ist, der tatsächliche Pfad jedoch nicht.)

Ich habe noch nichts gesehen, das einen metrischen Raum erfordert - es scheint, dass dies bisher unter Verwendung der allgemeinen Topologie möglich gewesen wäre -, aber ich bin nur auf Seite 3. :)


1
Natürlich gibt es hier kein Poset oder Gitter, wie in der vorherigen Antwort. das ist was ich vermisse
Suresh Venkat

3

Entschuldigung für das Hinzufügen einer weiteren Antwort, aber diese hat nichts mit meiner anderen oben zu tun.

Eine Metrik, die ich routinemäßig verwende, um Schüler mit Nebenläufigkeit zu irritieren (oder zu erziehen?), Ist die von unendlichen Spuren. Es wird genau die Topologie induziert, mit der Alpern und Schneider [1] die Sicherheits- und Lebendigkeitseigenschaften als begrenzt bzw. dicht charakterisieren .

σ| iσi2-=0

d:Σω×ΣωR0(σ,τ)2sup{ iN | σ|i=τ|i }
σ|iσi2=0

Im Nachhinein ist mir klar, dass dieser Antwort auch der wesentliche Bestandteil einer Gitter- oder Posetstruktur fehlt. Eine solche Gitterstruktur liegt jedoch vor, wenn eine Ebene nach oben verschoben wird , was Clarkson und Schneider als Hypereigenschaften bezeichnen [2]. Zum Zeitpunkt des Schreibens ist mir jedoch nicht klar, wie ich die Metrik anheben soll.

[1] B Alpern und FB Schneider. Lebendigkeit definieren. IPL, 21 (4): 181–185, 1985.
[2] MR Clarkson und FB Schneider. Hypereigenschaften. CSF, S. 51-65, IEEE, 2008.


Hier können wir wie gewohnt LaTeX eingeben - setzen Sie Dollarzeichen um \ sum_ {k = 1} ^ nk = \ frac {k (k + 1)} {2} und wir erhalten . Weitere Informationen finden Sie in diesem Metapost . k=1nk=n(n+1)/2
Hsien-Chih Chang 張顯 之

@HCH danke, ich habe meinen Beitrag entsprechend bearbeitet und den krassen Schrei nach Formatierungshinweisen entfernt.
Kai

Schöne Formel!
Hsien-Chih Chang 張顯 之
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.