Come dovrei pensare alle reti di prova?


24

Nella sua risposta a questa domanda , Stephane Gimenez mi ha indicato un algoritmo di normalizzazione in tempo polinomiale per prove nella logica lineare. La prova nel documento di Girard usa reti di prova, che sono un aspetto della logica lineare di cui in realtà non so molto.

Ora, ho già provato a leggere articoli su reti di prova (come gli appunti di Pierre-Louis Curien su di essi), ma non li ho davvero capiti. Quindi la mia domanda è: come dovrei pensarci? Per "come pensare a loro" intendo sia l'intuizione informale dietro di loro (ad esempio, come si comportano computazionalmente, o come sono correlati ai sequenti), sia anche quali teoremi su di loro dovrei dimostrare a me stesso di ottenerli davvero.

Nel rispondere a questa domanda, puoi assumere (1) Conosco bene la teoria della dimostrazione della logica lineare (comprese cose come la dimostrazione dell'eliminazione del taglio e anche in forma focalizzata), (2) la loro semantica categoriale in termini di spazi di coerenza o via Day convolution, e (3) i rudimenti di base della costruzione GoI.


4
Intuizione: reti di prova = bella notazione per le prove. Intuizione più tecnica che chiarisce come si comportano: reti di prova = alcuni semplici sottocalcoli di -calculus. Sviluppo tecnico che vale la pena comprendere per inchiodare la comprensione delle reti di prova: una corrispondenza esatta tra un pi-calcolo tipizzato e reti di prova polarizzate di Honda e Laurent. π
Martin Berger,

4
@MartinBerger: perché non dare una risposta?
Dave Clarke,

Risposte:


15

Le reti di prova sono interessanti essenzialmente per tre motivi:

1) IDENTITÀ DELLE PROVE. Forniscono una risposta al problema "quando due prove sono uguali"? Nel calcolo sequenziale potresti avere molte prove diverse della stessa proposizione che differiscono solo perché il calcolo sequenziale forza un ordine tra le regole di detrazione anche quando non è necessario. Naturalmente, si può aggiungere una relazione di equivalenza su prove di calcolo sequenziali, ma poi si deve dimostrare che l'eliminazione del taglio si comporta correttamente sulle classi di equivalenza, ed è anche necessario passare alla riscrittura del modulo, che è molto più tecnico della semplice riscrittura. Le reti di prova risolvono il problema della gestione delle classi di equivalenza fornendo una sintassi in cui ogni classe di equivalenza è compressa su un singolo oggetto. Questa situazione è comunque un po 'idealistica, poiché per molte ragioni le reti di prova sono spesso estese con una qualche forma di equivalenza.

2) NESSUN PASSO COMMUTATIVO DI ELIMINAZIONE DEL TAGLIO. L'eliminazione del taglio sulle reti di prova ha un sapore molto diverso rispetto ai calcoli sequenziali perché scompaiono i passaggi commutativi di eliminazione del taglio. Il motivo è che nelle reti di prova le regole di detrazione sono collegate solo dalla loro relazione causale. I casi commutativi sono generati dal fatto che una regola può essere nascosta da un'altra regola causalmente non correlata. Questo non può accadere nelle reti di prova, dove le regole causalmente non correlate sono molto distanti. Poiché la maggior parte dei casi di eliminazione del taglio è commutativa, si ottiene una sorprendente semplificazione dell'eliminazione del taglio. Ciò è stato particolarmente utile per studiare i calcoli lambda con sostituzioni esplicite (perché esponenziali = sostituzioni esplicite). Ancora una volta, questa situazione è idealizzata poiché alcune presentazioni di reti di prova richiedono passaggi commutativi. Tuttavia,

3) CRITERI DI CORRETTEZZA. Le reti di prova possono essere definite mediante la traduzione di prove di calcolo sequenziali, ma di solito un sistema di reti di prova non è accettato come tale a meno che non sia dotato di un criterio di correttezza, vale a dire un insieme di principi teorico-grafici che caratterizzano l'insieme di grafici ottenuti traducendo un prova di calcolo sequenziale. La ragione per richiedere un criterio di correttezza è che il linguaggio grafico libero generato dall'insieme di costruttori di reti di prova (chiamati collegamenti) contiene "troppi grafici", nel senso che alcuni grafici non corrispondono a nessuna prova. La pertinenza dell'approccio ai criteri di correttezza è di solito completamente fraintesa. È importante perché fornisce definizioni non induttive di ciò che è una prova, fornendo prospettive sorprendentemente diverse sulla natura delle detrazioni. Il fatto che la caratterizzazione sia non induttiva è di solito criticato, mentre è esattamente ciò che è interessante. Certo, non è facilmente suscettibile alla formalizzazione, ma, di nuovo, questa è la sua forza: le reti di prova forniscono approfondimenti che non sono disponibili attraverso la solita prospettiva induttiva su prove e termini. Un teorema fondamentale per le reti di prova è il teorema di sequenzializzazione, che afferma che qualsiasi grafico che soddisfi il criterio di correttezza può essere scomposto induttivamente come prova di calcolo sequenziale (traducendo nuovamente nel grafico corretto).

Consentitemi di concludere che non è preciso affermare che le reti di prova sono una versione classica e lineare della deduzione naturale. Il punto è che risolvono (o tentano di risolvere) il problema dell'identità delle prove e che la deduzione naturale risolve con successo lo stesso problema per una logica intuizionistica minima. Ma le reti di prova possono essere fatte anche per sistemi intuitivi e per sistemi non lineari. In realtà, funzionano meglio per i sistemi intuitivi che per i sistemi classici.


14

-UNUN-UNUN

Girard notò che la deduzione naturale è asimmetrica esattamente in questo modo. Questo è il motivo per cui si abbina alla logica intuizionista. Le reti di prova rappresentano un tentativo di Girard di inventare una forma simmetrica di deduzione naturale.

ΓUNΓ,UN


Qualcosa che mi è sfuggito nella mia risposta originale: le reti di prova sono un modo di scrivere prove e sappiamo che le prove sono programmi. Quindi, le reti di prova sono anche un modo di scrivere programmi.

La tradizionale notazione funzionale per la scrittura di programmi è asimmetrica, proprio come lo è la deduzione naturale. Quindi, le reti di prova indicano un modo di scrivere programmi in forma simmetrica . Ecco come i calcoli di processo entrano in scena.

Un altro modo di rappresentare la simmetria è attraverso la programmazione logica, che ho esplorato in due articoli: una base tipizzata per programmi logici direzionali e aspetti di ordine superiore della programmazione logica


9

Mi concentro su come le reti di prova sono correlate al calcolo sequenziale, lasciando cose più dinamiche.

Reti di prova astratte prove di calcolo sequenziale: una rete di prova rappresenta una serie di prove di calcolo sequente. Le reti di prova dimenticano le differenze non importanti tra le prove di calcolo sequenziali (come la formula che è scomposta sotto la quale). Il teorema importante qui è "sequenzializzazione", che converte una rete di prova in una prova di calcolo sequenziale.


2
UN\PARUN,UNUN

9

Ciò si riferisce principalmente alla parte "come si comportano computazionalmente" della tua domanda. Un modo per comprendere bene le reti di prova dal punto di vista computazionale è guardare interpretazioni leggermente più concrete (ad es., Processo algebrico).

Potresti essere interessato a quanto segue:

Ci sono anche alcuni lavori relativi alle reti di prova e al calcolo lambda, che danno anche intuizioni sostanziali. Ad esempio, i seguenti di Delia Kesner e Stéphane Lengrand:

Potresti anche essere interessato a questo tipo di lavoro (molto orientato agli aspetti teorici) che si basa su Proof Structures per dimostrare in dettaglio la proprietà Strong Normalization di LL, di Michele Pagani e Lorenzo Tortora de Falco.

In generale, quali teoremi si dovrebbero studiare? Beh, non sono quasi un'autorità, ma potresti voler esaminare la "Sequenzializzazione" (relativa alle reti di prova e alle prove sequenziali; vedi il documento TCS originale su LL) e la forte prova di normalizzazione (piuttosto coinvolta, come previsto, ma molte importanti I teoremi PN sono correlati ad esso [o, usati per dimostrarlo]).

Se hai familiarità con la messa a fuoco, potresti anche essere interessato a questo articolo di Andreoli:

Spero che sia di aiuto. Ancora una volta, questi riferimenti sono davvero non esaustivi.

meglio, Dimitris


5

Recentemente è stato svolto un lavoro interessante sul rafforzamento della relazione tra rete di prova e calcoli focalizzati, usando varianti "multi-focalizzate" in cui si possono avere più buchi sinistri simultanei e studiando prove "focalizzate al massimo". Se scegli il calcolo giusto, le prove focalizzate al massimo possono corrispondere alle reti di prove MLL o, nella logica classica, alle prove di espansione ( L'isomorfismo tra prove di espansione e prove sequenziali multi-focalizzate , Kaustuv Chaudhuri, Stefan Hetzl e Dale Miller, 2013)


4

Puoi controllare il mio documento " Un sondaggio di reti di prova e matrici per logiche strutturali ".

Astratto:

Questo documento è un sondaggio di due tipi di schemi di prova "compressi", il \ emph {metodo a matrice} e \ emph {reti di prova}, applicati a una varietà di logiche che vanno lungo la gerarchia sostruttiva dalla classica fino alla sistema Lambek non associativo. Viene fornito un nuovo trattamento delle reti di prova per quest'ultima. Le descrizioni delle reti di prova e delle matrici sono riportate in una notazione uniforme basata su sequenze, in modo che le proprietà degli schemi per le varie logiche possano essere facilmente confrontate.


7
Forse potresti fornire maggiori dettagli qui, piuttosto che semplicemente dare un link, specialmente perché sembra che tu abbia una certa conoscenza sull'argomento.
Dave Clarke,
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.