Funzioni continue di Scott: una definizione alternativa


16

Sto davvero lottando con questa proprietà:

Let sia spazi coerenti e è una funzione monotona. è continuo se e solo se , per tutti tale che D sia un insieme diretto.X,Yf f ( x D x ) = x D f ( x ) D C l ( X ) Df:Cl(X)Cl(Y)ff(xDx)=xDf(x)DCl(X)D

Il set diretto viene definito in questo modo: D POSET è un set diretto iff \ forall x, x '\ in D \ esiste z \ in D tale x \ subseteq z e x' \ subseteq z . Cl (X) sta per cricche di X: \ {x \ subseteq | X | \ mid a, b \ in x \ Rightarrow a coerente b \} .z Dx,xD zDxzxz
Cl(X){x|X|a,bxab}

Molti libri danno ciò come una definizione delle funzioni continue di Scott , ma sfortunatamente non il mio insegnante. Ci ha dato questa definizione di continuo:

f:Cl(X)Cl(Y) è continuo se è monotono e xCl(X),bf(x),x0finx,bf(x0) ,
dove la monotonia è definita come: f è monotona iff abf(a)f(b)

Questa è la prova proposta che ho, ma non riesco a capire l'ultima equazione.

La prova di f continua implica f(D)=f(D) :
Sia bf(D) . Per definizione di continuità, x0finxbf(x0) . Si noti che x0 è l'unione di {xixiD} .
Se D è diretto, allora: zDxiz quindi x0z . Dalla definizione di monotonia, f(x0)f(z) così bf(z) (???) f(D) . E anche questo è vero dovremmo mostrare che f(D)=f(D) , non solo .

La prova dell'altra implicazione è ancora peggio, quindi non posso scriverla qui ... Puoi spiegarmi come può funzionare la prova?


5
@Raphael: questa è chiaramente informatica. Questi concetti sono usati per dare semantica ai linguaggi di programmazione. Spazi coerenti forniscono semantica per la logica lineare. Il documento originale appare in TCS.
Dave Clarke,

4
@Raphael: Non penso sia assolutamente necessario. La pagina sulla continuità di Scott afferma "Le funzioni di Scott-continue si manifestano nello studio della semantica denotazionale dei programmi per computer".
Dave Clarke,

1
@Raphael: Quella regola generale potrebbe anche essere il caso, ma ciò non si applica a questa domanda, che ho detto è in argomento.
Dave Clarke,

4
@Raphael ti assicuro che questa è una domanda sulla semantica denotazionale . La continuità di Scott prende il nome da un informatico per una ragione (beh, Scott si trovava a cavallo del confine tra matematica e CS, ma questo è il suo lavoro di CS).
Gilles 'SO- smetti di essere cattivo'

2
Che cos'è Cl (•)? Ritengo che sia la chiusura, ma questo è confuso, poiché il punto di questa configurazione sembra essere che gli insiemi diretti siano chiusi.
Louis,

Risposte:


11

La definizione di continuità usata dal tuo insegnante è la migliore. Ti dice abbastanza concretamente cosa significa continuità.

Supponiamo che . Ciò significa che, data tutta l'informazione di , possibilmente un insieme infinito di token (atomi), la funzione produce qualche elemento che ha l'informazione atomica . (Potrebbe avere anche altre informazioni, ma al momento non ci occupiamo di questo.) La definizione del tuo insegnante dice che non è necessario guardare tutte le informazioni infinite di per produrre le informazioni di output . Un sottoinsieme finito di è sufficiente per produrlo.x b x b xbf(x)xbxbx

(Il libro di Melvin Fitting "Teoria della computabilità, semantica e programmazione logica", Oxford, 1987, definisce questa compattezza della proprietà e definisce una funzione continua come monotona e compatta).

Questa è l' essenza della continuità. Per ottenere una quantità limitata di informazioni sull'output di una funzione, è necessaria solo una quantità limitata di informazioni sull'input. L'output prodotto dalla funzione per un input infinito viene ottenuto mettendo insieme le informazioni che produce per tutte le approssimazioni finite dell'input infinito. In altre parole, non si ottiene alcun salto magico nel passare dalle approssimazioni finite alla loro unione infinita. Qualunque cosa tu ottenga all'infinito, dovresti già arrivare a un certo stadio finito.

L'equazione standard è carina da guardare, ma non ti dice tutta l'intuizione che ho spiegato sopra. Tuttavia, matematicamente, equivale alla definizione del tuo insegnante.f(xDx)=xDf(x)

Per mostrare che , è sufficiente mostrare che è incluso in , per ogni . Ma ciò deriva direttamente dalla monotonia di perché . Quindi, questa è la direzione "facile".f ( x ) f ( x D x ) x D f x x D xxDf(x)f(xDx)f(x)f(xDx)xDfxxDx

L'altra direzione, dimostrata dal tuo insegnante, è quella interessante: . Per vedere questo, usa l'intuizione che ho menzionato sopra. Qualsiasi informazione atomica nella parte sinistra proviene da un'approssimazione finita dell'input: . Cioè, . Poiché è finito ed è incluso nell'unione dell'insieme diretto, deve esserci qualcosa nell'insieme diretto maggiore di , forse stesso. Chiama quell'elemento . Per monotonia, . Quindi,f(xDx)xDf(x)bx0finxDxbf(x0)x0x0x0zf(x0)f(z)bf(z). Poiché , . Quindi ora si vede che anche trova sul lato destro. QED.zDf(z)xDf(x)b

Come hai notato, mostrare che la continuità del tuo insegnante implica la bella equazione è la cosa più semplice. La parte più difficile è mostrare che la bella equazione, nonostante sembri che non stia dicendo molto, dice davvero tutto nella definizione del tuo insegnante.


1
L'altra definizione può essere meno concreta, ma funziona più in generale, mentre quella usata dall'insegnante richiede domini algebrici.
Andrej Bauer,

4

Mi è venuto in mente tardivamente, dopo aver scritto l'ultima risposta, che la definizione di continuità dell'insegnante che stavo spiegando nella mia risposta è la nozione topologica di continuità. La formulazione algebrica della continuità che è di solito menzionata nei libri di testo di Informatica nasconde tutte le intuizioni topologiche. (In effetti, Dana Scott ha spesso scritto di aver deliberatamente evitato le formulazioni topologiche perché gli informatici non ne hanno familiarità.)

Il legame tra le formulazioni algebriche e topologiche si chiama dualità della Pietra e sta diventando sempre più chiaro che questo legame stesso è estremamente importante per l'Informatica.

Per un'esposizione concettuale di queste connessioni (e molto altro), vedere Informazioni, processi e giochi di Abramsky .


Perché non lo modifichi nella tua risposta precedente?
Raffaello

@Raphael, in generale penso che sia giusto pubblicare risposte multiple quando si tratta di risposte diverse alla domanda. (Questo sembra un po 'al limite però.)
Kaveh

Pubblico una "risposta" separata quando penso che le persone che potrebbero aver già letto la vecchia risposta potrebbero forse beneficiare di quella nuova. Penso che la dualità di Stone sia un grosso problema e sembra che lo facciamo sempre senza pensarci consapevolmente.
Uday Reddy,
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.