Usi di quasi-PER / relazioni difunzionali / relazioni a zig-zag?


15

Dati gli insiemi e , una relazione difunzionale tra loro è definita come una relazione che soddisfa la seguente proprietà:AB ()A×B

Se e e , quindi . abababun''~B

Le relazioni differenziali sono una generalizzazione del concetto di relazioni di equivalenza parziali che consentono di definire una nozione di uguaglianza da insiemi diversi . Di conseguenza, sono anche noti come quasi-PER (QPER) e sono anche noti come relazioni a zig-zag, a causa della seguente immagine:foto di uno zigzag

Sto scrivendo un documento che li utilizza, ma ho avuto problemi a rintracciare buoni riferimenti per il loro uso in semantica.

  1. Martin Hoffman li usa nella correttezza delle trasformazioni dei programmi basate sugli effetti .
  2. Ho visto menzioni (ma nessuna buona referenza) che affermano che anche Tennant e Takeyama hanno proposto il loro uso.

Sono un'idea così carina che ho difficoltà a credere che il mio uso particolare di loro sia originale. Gradirei davvero ulteriori riferimenti.


Johan van Benthem ha usato il termine relazioni a zig-zag nella sua tesi per una nozione diversa simile alla bisimulazione.
Vijay D,

Chi si chiede come Neel abbia usato i QPER (come me) potrebbe voler esaminare "Interiorizzare la parametricità relazionale nel calcolo estensivo delle costruzioni" da lui e Dreyer.
Blaisorblade,

Risposte:


8

Makoto Takeyama e io abbiamo inviato quanto segue a data-refinement@etl.go.jp il 5 gennaio 1996:

Oggetto: che cos'è una relazione di perfezionamento dei dati?

Carissimi: qualcuno è ancora interessato all'affinamento dei dati?

Di recente, Mak e io abbiamo rivisto un'idea che abbiamo preso in considerazione molti mesi fa. La motivazione è quella di caratterizzare le relazioni logiche rilevanti per mostrare il raffinamento dei dati. Ciò è stato stimolato dalla consapevolezza che le relazioni logiche possono essere usate per mostrare la "sicurezza" delle interpretazioni astratte (vedi Sezione 2.8 del capitolo di Jones e Nielson nel volume 4 del Manuale di Logica in CS), ma tali relazioni sono più generali di quelli utilizzati per mostrare il perfezionamento dei dati.

Il mio ragionamento è il seguente. Se una relazione R sta stabilendo un raffinamento dei dati tra (tra) insiemi, allora deve indurre relazioni (parziali) di equivalenza su ciascuno degli insiemi, con queste classi di equivalenza in corrispondenza uno a uno e ogni elemento di una classe di equivalenza deve essere correlato a tutti gli elementi delle corrispondenti classi di equivalenza negli altri settori di interpretazione. L'idea è che ogni classe di equivalenza rappresenti un valore "astratto"; in un'interpretazione completamente astratta le classi di equivalenza sono singoli.

Possiamo dare una condizione semplice per garantire che una relazione n-ary R induca questa struttura. Definisci v ~ v 'nel dominio V se esiste un valore x in qualche altro dominio X (e valori arbitrari ... negli altri domini) tale che R (..., v, ..., x, ... ) e R (..., v ', ..., x, ...). Ciò definisce le relazioni simmetriche su ciascuno dei domini. L'imposizione della transitività locale ci darebbe quindi pers su ogni dominio, ma ciò non sarebbe sufficiente perché vogliamo garantire la transitività attraverso le interpretazioni. La seguente condizione raggiunge questo: se v_i ~ v'_i per tutti i, quindi R (..., v_i, ...) iff R (..., v'_i, ...) chiamo questo "zig- completezza zag "; nel caso n = 2, dice che se R (a, c) & R (a ', c') allora R (a, c ') iff R (a', c).

Proposizione. Se R e S sono relazioni complete a zig-zag, lo sono anche R x S e R -> S.

Proposizione. Supponiamo che t e t siano termini di tipo th nel contesto pi, e R sia una relazione logica completa a zig-zag; quindi, se il giudizio di equivalenza t = t 'è interpretato come segue:

per tutto u_i in V_i [[pi]],
R ^ {pi} (..., u_i, ...) implica che, per tutti i, V_i [[t]] u_i ~ V_i [[t ']] u_i

questa interpretazione soddisfa i soliti assiomi e regole per la logica equazionale.

L'intuizione qui è che i termini devono essere "equivalenti" sia all'interno di una singola interpretazione (V_i) sia attraverso le interpretazioni; vale a dire, i significati di t e t 'sono nella stessa classe di equivalenza indotta da R, indipendentemente dall'interpretazione utilizzata.

Domande:

  1. Qualcuno ha mai visto questo tipo di struttura prima?

  2. Quali sono le generalizzazioni naturali di queste idee ad altre proposizioni e categorie semantiche "arbitrarie"?

Bob Tennent rdt@cs.queensu.ca


6

Non conosco il campo della semantica, ma il concetto che menzioni è cruciale nella complessità del conteggio.

RRmm(X,y,y)=m(y,y,X)=XXy

FF

ΓΓΓΓ


Più precisamente, il concetto equivale ad avere un polimorfismo di Mal'tsev per le relazioni binarie, ma avere un polimorfismo di Mal'tsev naturalmente può essere applicato a qualsiasi arità mentre questa formulazione è specifica delle relazioni binarie. Inoltre, solo per sottolineare: questo non si applica solo al conteggio, ma a qualsiasi studio algebrico delle classi di relazioni. Ad esempio, i polimorfismi di Mal'tsev sono cruciali nello studio di linguaggi di vincoli trattabili (che sono classi di relazioni) anche in assenza di considerazioni di conteggio.
András Salamon,

@ AndrásSalamon La mia risposta riguarda le relazioni ternarie, non binarie. Come si definisce un polimorfismo di Mal'tsev per relazioni diverse dal ternario?
Tyson Williams,

Un polimorfismo viene applicato in modo componente. L'arità delle tuple non ha importanza.
András Salamon,

K3

Non sono sicuro di ciò a cui stai obiettando, ma ho detto che " avere un polimorfismo di Mal'tsev" può essere applicato a qualsiasi arità.
András Salamon,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.