• No se han encontrado resultados

Parte I: Un nuevo esquema gen´ erico CFLP(D) para la progra-

4. Resoluci´ on de objetivos en el esquema CFLP(D)

4.2. El c´alculo de estrechamiento perezoso CLNC (D)

4.2.1. Respuestas y soluciones de objetivos

La siguiente definici´on permite representar, con un mayor nivel de detalle, los ob- jetivos para CFLP(D)-programas que han sido introducidos en la Secci´on 2.6, de forma que ahora sea posible describir mediante ellos cualquier posible estado del c´omputo durante el proceso de resoluci´on de objetivos. M´as concretamente, en vez de representar simplemente los objetivos en la forma G ≡ P 2 ∆, optamos ahora por hacer expl´ıcitas las variables intermedias que pueden ser introducidas en alg´un momento de la computaci´on como variables cuantificadas existencialmente ∃U , man- tenemos la parte P de las producciones con las mismas condiciones de admisibilidad que exig´ıamos en la Secci´on 2.6, distinguimos separadamente la parte C de las res- tricciones de ∆ que no son restricciones primitivas de la parte Π que s´ı que lo son, e introducimos finalmente una sustituci´on idempotente σ para ir almacenando los v´ınculos de todas aquellas variables cuyo valor ya ha sido calculado y forma parte de las respuestas que se van a computar.

Definici´on 17 (Objetivos Admisibles para CFLP(D)-programas) Un obje- tivo para un CFLP(D)-programa dado tiene la siguiente forma general G ≡ ∃U .

P 2 C 2 Π 2 σ, donde el s´ımbolo 2 se interpreta como conjunci´on, y:

U =def evar(G) es el conjunto de las denominadas variables existenciales del

objetivo G. Se trata de variables intermedias que podr´ıan vincularse a pa- trones parciales en una soluci´on. Se define tambi´en el conjunto f var(G) =def

var(G)\evar(G) de todas aquellas variables denominadas variables libres del objetivo G.

4.2.1 Respuestas y soluciones de objetivos 115

P ≡ e1 → t1, . . . , en → tn es una conjunci´on finita de producciones, donde ei

∈ ExpD y ti ∈ P atD para todo 1 ≤ i ≤ n. El conjunto de variables producidas

de G se define como pvar(P ) =def var(t1) ∪ . . . ∪ var(tn).

C ≡ δ1, . . . , δk es una conjunci´on finita de restricciones at´omicas (posible-

mente incluyendo apariciones de s´ımbolos de funci´on definida).

Π ≡ π1, . . . , πl es una conjunci´on finita de restricciones at´omicas primitivas, denominada restricci´on respuesta.

σ es una sustituci´on idempotente denominada sustituci´on respuesta, tal que

vdom(σ) ∩ var(P 2 C 2 Π) = ∅. Al par (Π2σ) se le denomina almac´en de

restricciones del objetivo G.

Adicionalmente, cualquier objetivo admisible debe satisfacer las siguientes condi- ciones de admisibilidad, denominadas invariantes del objetivo:

LN Cada variable producida es producida s´olo una vez, es decir, la tupla t1, . . . , tn

debe ser lineal.

EX Todas las variables producidas deben ser existenciales, es decir, pvar(P ) ⊆

evar(G).

NC El cierre transitivo de la relaci´on de producci´on ÀP (definido en la Secci´on

2.6) debe ser irreflexivo, o equivalentemente, un orden parcial estricto.

SL Ninguna variable producida entra en la sustituci´on respuesta, es decir, var(σ)

∩ pvar(P ) = ∅.

Un objetivo admisible G ≡ ∃U . P 2 C 2 Π 2 σ se denomina objetivo en forma

resuelta si y s´olo si P y C son vac´ıos y Π 2 σ es un almac´en de restricciones en

forma resuelta con respecto a un conjunto vac´ıo de variables cr´ıticas en el sentido explicado en la Definici´on 5 del Cap´ıtulo 2. Un objetivo inicial puede ser cualquier objetivo admisible.

Definici´on 18 (Respuestas) Una respuesta para un objetivo admisible G ≡ ∃U .

P 2 C 2 S 2 σ y un CFLP(D)-programa dado P es un almac´en de restricciones

de la forma Π 2 θ, donde Π ⊆ P ConD es una conjunci´on finita de restricciones

at´omicas primitivas, θ ∈ SubD es una sustituci´on idempotente tal que vdom(θ) ∩

var(Π) = ∅, y existe una sustituci´on θ0 =\evar(G) θ satisfaciendo las siguientes condi- ciones:

P `D (P 2 C)θ0 ⇐ Π,

116 4. Resoluci´on de objetivos en el esquema CFLP(D)

Xθ0 ≡ tθ0 para cada {X 7→ t} ∈ σ, abreviado como θ0 ∈ Sol(σ).

Un testigo M para el hecho de que el almac´en Π 2 θ sea una respuesta de G se define

como un multiconjunto formado por todas las CRWL(D)-pruebas mencionadas m´as

arriba. Escribiremos AnsP(G) para designar el conjunto de todas las respuestas de

G. Una respuesta (Π 2 θ) ∈ AnsP(G) se denomina trivial si InsatD(Π) y no-trivial

en otro caso.

Definici´on 19 (Soluciones) Sea G ≡ ∃U . P 2 C 2 S 2 σ un objetivo admisible

para un CFLP(D)-programa P dado. Decimos que una valoraci´on µ ∈ ValD es una

soluci´on del objetivo G si existe alguna valoraci´on µ0 =

\evar(G) µ que satisface las

siguientes condiciones:

P `D (P 2 C)µ0,

|=D Sµ0 (es decir, µ0 ∈ SolD(S)),

Xµ0 ≡ tµ0 para cada {X 7→ t} ∈ σ, abreviado como µ0 ∈ Sol(σ).

Escribimos SolP(G) para representar el conjunto de todas las soluciones de G.

An´alogamente, definimos el conjunto de soluciones para una respuesta Π 2 θ como:

SolD2 θ) =def { µ ∈ ValD | µ ∈ SolD(Π) ∩ Sol(θ) }.

A partir de las Definiciones 18 y 19 es f´acil demostrar que la noci´on de soluci´on es un caso particular de la noci´on de respuesta para un objetivo. M´as formalmente, si

G es un objetivo admisible y µ ∈ ValD entonces

µ ∈ SolP(G) ⇔ (∅ 2 µ) ∈ AnsP(G).

Razonando por inducci´on sobre la estructura sint´actica de G se puede demostrar tambi´en el siguiente resultado:

Lema 8 (Lema de Sustituci´on) Asumamos un CFLP(D)-programa P, un obje-

tivo admisible G para P, una sustituci´on σ ∈ SubD y una valoraci´on η ∈ V alD. Se

cumple entonces la siguiente equivalencia:

η ∈ SolP(Gσ) ⇔ ση ∈ SolP(G)

En vista del Teorema 4 de la Subsecci´on 3.4.1, el Lema 8 se puede considerar como una extensi´on del Lema 6 dado en la Subsecci´on 3.1.4 para objetivos, enfocado al caso en el que I es SP. Una consecuencia ´util del Lema 8 es la siguiente:

Corolario 7 Sean P, G, σ y η como en el enunciado del Lema 8. Si se cumple que

4.2.1 Respuestas y soluciones de objetivos 117 Demostraci´on 9 Por definici´on, la hip´otesis η ∈ Sol(σ) significa que ση = η. Por

otro lado, la hip´otesis η ∈ SolP(Gσ) equivale a ση ∈ SolP(G) por el Lema 8. Al ser

ση = η, se concluye que η ∈ SolP(G), como se quer´ıa demostrar.

2

Otro resultado t´ecnico que interesa enunciar para uso posterior es el siguiente lema, cuya demostraci´on se reduce a una comprobaci´on trivial a partir de la Definici´on 19: Lema 9 (Lema de Coincidencia) Sea G un objetivo admisible para un CFLP(D)-

programa P, y sean η, η0∈ V al

D dos valoraciones tales que η =f var(G)η0. Se cumple

entonces que η ∈ SolP(G) si y solo si η0∈ SolP(G).

El Lema 8, su Corolario 7 y el Lema 9 se utilizar´an impl´ıcitamente en las demostra- ciones del Ap´endice A.

Finalmente, otra relaci´on ´util entre respuestas y soluciones viene dada a trav´es de la siguiente proposici´on.

Proposici´on 8 Sea G ≡ ∃U . P 2 C 2 S 2 σ un objetivo admisible para un

CFLP(D)-programa P dado y (Π 2 θ) ∈ AnsP(G) una respuesta para G. Entonces,

SolD2 θ) ⊆ SolP(G). M´as a´un, si G es una forma resuelta entonces (S 2 σ)

∈ AnsP(G).

Demostraci´on 10 Puesto que (Π 2 θ) ∈ AnsP(G), existe alg´un θ0 satisfaciendo:

(a) θ0 =

\evar(G) θ,

(b) P `D (P 2 C)θ0 ⇐ Π,

(c) Π |=D Sθ0,

(d) θ0 ∈ Sol(σ).

Para probar que SolD2 θ) ⊆ SolP(G), asumimos cualquier valoraci´on µ tal que

(1) µ ∈ SolD(Π),

(2) µ ∈ Sol(θ).

Entonces, µ ∈ SolP(G) se cumple debido a que la valoraci´on µ0 = θ0µ verifica:

(a’) θ0µ =

\evar(G) µ, debido a (a) y θµ = µ (que se sigue de (2)),

(b’) P `D (P 2 C)θ0µ, debido a (b) y a la Propiedad de Implicaci´on del Lema 7

en el Cap´ıtulo 3 (obs´ervese que (P 2 C)θ0 ⇐ Π <

D (P 2 C)θ0µ se sigue de

118 4. Resoluci´on de objetivos en el esquema CFLP(D)

(c’) θ0µ ∈ SolD(S), o equivalentemente, µ ∈ SolD(Sθ0), debido a (1) y (c),

(d’) θ0µ ∈ Sol(σ), debido a (d).

Para probar la segunda parte de la proposici´on, vamos a asumir que P y C son

vac´ıos. Entonces, (S 2 σ) ∈ AnsP(G) se cumple debido a que σ0 = σ verifica

trivialmente σ0 =

\evar(G) σ, y tambi´en P `D (P 2 C)σ ⇐ S (puesto que P 2 C

es vac´ıo); S |=D Sσ (puesto que Sσ = S); y σ ∈ Sol(σ) (trivialmente).

¤