« Reseau inverse » : différence entre les versions
Aller à la navigation
Aller à la recherche
Ligne 87 : | Ligne 87 : | ||
Contraintes : pour tout séquent <math>\Delta</math> et nom de canal <math>x</math>, il existe au plus une formule <math>A</math> |
Contraintes : pour tout séquent <math>\Delta</math> et nom de canal <math>x</math>, il existe au plus une formule <math>A</math> |
||
telque <math>A^x</math> ou <math>\neg A^x</math>. |
telque <math>A^x</math> ou <math>\neg A^x</math>. Pour imposer cette contrainte, on tilse des contextes de typage des canaux: |
||
<math>\gamma := x_1 : A_1, \dots, x_n : A_n</math>. |
|||
Definition : <math>\Delta \otimes \Delta'</math> : |
Definition : <math>\Delta \otimes \Delta'</math> : |
||
<math>(\Gamma_1, \ldots, \Gamma_n) \otimes (\Gamma'_1, \ldots, \Gamma'_p) = \Gamma_1 . \Gamma'_1, \Gamma_1 . \Gamma'_2, \ldots, \Gamma_n . \Gamma'_p</math> |
<math>(\Gamma_1, \ldots, \Gamma_n) \otimes (\Gamma'_1, \ldots, \Gamma'_p) = \Gamma_1 . \Gamma'_1, \Gamma_1 . \Gamma'_2, \ldots, \Gamma_n . \Gamma'_p</math> |
||
===Logical rules=== |
|||
<math> |
<math> |
||
\frac{}{\vdash !z\leftarrow(x,y) : (A \times B)^z, \neg A^x, \neg B^y}\times_i |
\frac{}{z : A \times B, x:A, y : B, \gamma\vdash !z\leftarrow(x,y) : (A \times B)^z, \neg A^x, \neg B^y}\times_i |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash t : \Delta} |
\frac{x: A, y: B, \gamma \vdash t : \Delta} |
||
{\vdash ?z\rightarrow(x,y).t : \Delta[A^x := (A \vee B)^z, B^y := (A \vee B)^z]}\vee_i |
{z: A \vee B, \gamma \vdash ?z\rightarrow(x,y).t : \Delta[A^x := (A \vee B)^z, B^y := (A \vee B)^z]}\vee_i |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{}{\vdash !z\leftarrow L(x) : (A + B)^z, \neg A^x}+_i^L |
\frac{}{z : A + B, x:A, \gamma \vdash !z\leftarrow L(x) : (A + B)^z, \neg A^x}+_i^L |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{}{\vdash !z\leftarrow R(y) : (A + B)^z, \neg B^y}+_i^R |
\frac{}{z : A + B, y:B, \gamma \vdash !z\leftarrow R(y) : (A + B)^z, \neg B^y}+_i^R |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash t : \Delta \;\;\;\;\; \vdash u : \Delta'} |
\frac{x: A, \gamma \vdash t : \Delta \;\;\;\;\; y: B, \gamma \vdash u : \Delta'} |
||
{\vdash ?z\rightarrow(x.t + y.u) : \Delta[A^x := (A \wedge B)^z] \otimes \Delta[B^y := (A \wedge B)^z]}\wedge_i |
{z: A \wedge B, \gamma\vdash ?z\rightarrow(x.t + y.u) : \Delta[A^x := (A \wedge B)^z] \otimes \Delta[B^y := (A \wedge B)^z]}\wedge_i |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash t : \Delta}{\vdash ?z\rightarrow(x,\alpha).t : \Delta[A^x := (\forall \alpha A)^z]}\forall_i\;\;\; (\alpha \hbox{ non libre dans la conclusion}) |
\frac{x: A, \gamma \vdash t : \Delta}{z: \forall x,A, \gamma \vdash ?z\rightarrow(x,\alpha).t : \Delta[A^x := (\forall \alpha A)^z]}\forall_i\;\;\; (\alpha \hbox{ non libre dans la conclusion}) |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\ |
\frac{}{z : \exists x A, x : A[x:=t], \gamma \vdash \exists x A^z, \neg A[x:=t]^x}\exists_i |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{}{\vdash 1}\hbox{axiom} |
\frac{}{\gamma \vdash \emptyset : 1}\hbox{axiom} |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash \Gamma . \Gamma', \Delta}{\vdash A . \Gamma, \neg A . \Gamma', \Delta}\hbox{resolution} |
\frac{\gamma \vdash t : \Gamma . \Gamma', \Delta}{\gamma \vdash t : A^x . \Gamma, \neg A^x . \Gamma', \Delta}\hbox{resolution} |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash |
\frac{\gamma \vdash t : \Delta \;\;\;\;\; \gamma \vdash u : \Delta'}{\gamma \vdash t \mid u : \Delta \otimes \Delta'} |
||
</math> |
|||
===Simplification (structural) rules=== |
|||
<math> |
<math> |
||
\frac{\vdash \Delta}{\vdash A . \neg A . \Gamma, \Delta}\hbox{tautology elimination |
\frac{\gamma \vdash t : \Delta}{\vdash t : A . \neg A . \Gamma, \Delta}\hbox{tautology elimination} |
||
</math> |
</math> |
||
<math> |
<math> |
||
\frac{\vdash A . \neg A, \Delta}{\Delta}\hbox{reversed tautology elimination |
\frac{\vdash A . \neg A, \Delta}{\Delta}\hbox{reversed tautology elimination} |
||
</math> |
</math> |
||
Version du 21 octobre 2008 à 11:44
Syntaxe
Formules :
On quotiente les formules pas les lois de De Morgan.
Clauses (à démontrer) : (le point est une conjonction commutative et associative avec élément neutre)
Séquents : (la virgule est une dicjonction commutative et associative)
Règles logiques
Règles structurelles
Tentative de Calcul
Formules :
Clauses (à démontrer) : (le point est une conjonction commutative et associative avec élément neutre)
Séquents : (la virgule est une dicjonction commutative et associative)
Contraintes : pour tout séquent et nom de canal , il existe au plus une formule telque ou . Pour imposer cette contrainte, on tilse des contextes de typage des canaux: .
Definition : :
Logical rules
Règles structurelles