next up previous Sommario
Next: 6.4 Aspetti implementativi Up: 6. Integrazione di NI Previous: 6.2.4 Correttezza e completezza   Sommario

6.3 Negazione di $P$ $=$ $< P^{+} , P^{-}>$

In questa sezione viene esposto un teorema che permette, dato un programma già rappresentato come una coppia, di calcolarne il complementare attraverso una trasformazione sintattica, senza ripercorrere i passi visti.

Teorema 6.4  

Dato il programma $P$ rappresentato come la coppia $< P^{+} , P^{-}>$


\begin{displaymath}Not(P) = <P^{-} , P^{+}>_{[p/ \sim p, \sim p / p]_{p \in \Pi}} \end{displaymath}



dim.

Valendo, secondo [MPRT90], un risultato analogo quando l'operatore $Not$ realizza solo la negazione intesionale, è sufficiente dimostrare che la relazione vale sul programma costituito dai predicati, e dalle relative clausole, che il criterio ha stabilito non terminare.

Si considerino quindi le clausole del tipo

\begin{displaymath}\sim p(x) \leftarrow not \ \ p(x) \end{displaymath}

ottenute dal processo di negazione costruttiva. Poiché $\leftarrow p(x)$ termina e l'unica clausola che definisce $\sim p$ è quella appena vista, anche $\leftarrow \sim p(x)$ termina. Quindi applicando la negazione costruttiva e assumendo che $\sim \sim p$ $=$ $p$, si ottiene la clausola che definisce $p$:

\begin{displaymath}p(x) \leftarrow not \ \ \sim p(x) \end{displaymath}

Tale clausola corrisponde a quella ottenuta secondo la trasformazione sintattica.

Poiché il programma finale si ottiene con l'unione dei complementari delle due partizioni, la relazione vale.

$\quad\Box$


next up previous Sommario
Next: 6.4 Aspetti implementativi Up: 6. Integrazione di NI Previous: 6.2.4 Correttezza e completezza   Sommario
Roberto Giungato 2001-03-14