Regola di eliminazione basata sull'unificazione per l'uguaglianza


10

Qualche anno fa, ho incontrato la seguente regola di sinistra per l'uguaglianza nel calcolo sequenziale:

stθθ(Γ)θ(C)Γ,stC

Qui, calcola l'unificatore più generale θ per s e t , quindi applica la sottostazione alla conclusione C e tutte le ipotesi nel contesto Γ .stθθstCΓ

La cosa interessante di questa unificazione è che identifica trova una sostituzione per variabili universali (cioè skolem).

Tuttavia, non riesco a ricordare dove ho letto questo, e mi chiedevo se qualcuno potesse aiutarmi a trovare un riferimento ad esso.

Risposte:


9

L'ho spesso attribuito a Regole di riflessione definitiva di Schroeder-Heister, anche se l'idea va oltre quella a Girard e altri; la regola che stai cercando è un'istanza del primo display nella Sezione 4. Tuttavia, hai anche bisogno di una regola che dice che se l'istanza di unificazione è insoddisfacente, allora l'assunzione di uguaglianza ha la forza di una contraddizione.

Un resoconto più generale è stato recentemente utilizzato in molti lavori di Dale Miller, David Baelde e società (vedere, ad esempio, i punti minimi e massimi fissi nella logica lineare ). La formulazione più generale - che anche non ha origine con Miller et al - è che la regola è

{θcsu(t,s)θΓθC}Γ,tsC

csu(t,s)tS

θ.θt=θSθΓθCΓ,tSC

In ogni caso, in un termine lingua con unificazione decidibile in cui l'esistenza di un unificatore implica l'esistenza di un unificatore più generale, avere una di queste regole sopra può essere dimostrato essere equivalente ad avere queste due regole:

no mgu(t,S)Γ,tSCmgu(t,S)=θθΓθCΓ,tSC

(PS Frank ne ha discusso nel suo corso di programmazione logica nelle lezioni 6, 7 e 8, che potrebbe essere il luogo da cui lo ricordi.)


1
Grazie! Stavo guardando le carte sbagliate di Schroeder-Heister.
Neel Krishnaswami

2
Dovrei probabilmente aggiungere che ci ho pensato nel contesto del typechecking per GADT.
Neel Krishnaswami,

1
Huh. Ho scritto di questo nel contesto di OMG THESIS DEVE LAUREATO, quindi non mi è permesso di pensarci nel contesto del typechecking per GADT ;-).
Rob Simmons,
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.