università degli studi di siena facoltà di scienze matematiche, fisiche ...

università degli studi di siena facoltà di scienze matematiche, fisiche ... università degli studi di siena facoltà di scienze matematiche, fisiche ...

econ.pol.unisi.it
from econ.pol.unisi.it More from this publisher
11.06.2013 Views

all’istanza, tramite il quantificatore Q, il vincolo: Q×(V ) = Q(δ×(V )) . ♦ Esempio 29 . Negli esempi 5, 12 e 13 abbiamo visto come sia possibile rappresentare un Palio ed abbiamo imposto un vincolo affinché l’istanza I avesse senso: che i tempi fossero progressivi o nulli da un certo punto in poi. In realtà non sarebbe sbagliato pretendere che almeno una contrada vinca, abbia cioè un tempo sull’ultimo rilevamento T8 . Questo equivale a derivare dal dominio all’istanza, tramite il quantificatore Q∃ , il vincolo, sul dominio T8 , che vale 1 se t8 = null : VV ittoria = Q∃(V[t8=null]) (I) = (Q∃(δ×(V[t8=null]))) (I) . ♦ Per come è definito il vincolo derivato dal dominio all’istanza potrebbe sembrare che Q× sia equivalente alla più semplice applicazione Q(π). Cosí si passa direttamente dai dominî alle istanze, senza passare attraverso i records. Nell’esempio 25 di pagina 33 abbiamo visto però che questo è possibile solo per i quantificatori universali. Focalizziamo adesso l’attenzione sulle istanze e sui loro vincoli. In pratica, dato un prodotto cartesiano di dominî D1 × D2 × . . . × Dn andremo ad analizzare tutte le possibili funzioni da Pf(D1 × D2 × . . . × Dn) in {0, 1} . Cominciamo con una loro distinzione dal sapore geometrico. Definizione 24 . Dato un prodotto cartesiano D1 × D2 × . . . × Dn, un vincolo V sulle sue istanze si dice di dimensione 0 se esiste un dominio Di ∈ {D1, D2, . . ., Dn} , un vincolo VDi su di esso, e un quantificatore Q, tali che: V = Q(δ×(VDi )) . Si dice di dimensione 0 anche se è dato dalla composizione di vincoli di dimensione 0, per mezzo di qualsiasi operatore binario. ♦ Definizione 25 . Dato un prodotto cartesiano D1 × D2 × . . . × Dn, un vincolo V sulle sue istanze si dice di dimensione 1 se non è di dimensione 0 ed esiste un vincolo Vr su D1 ×D2 ×. . .×Dn, ed un quantificatore Q, tali che: V = Q(Vr) . Si dice di dimensione 1 anche se è dato dalla composizione di vincoli di dimensione 0 e 1 (almeno uno), per mezzo di qualsiasi operatore binario. ♦ 36

Definizione 26 . Dato un prodotto cartesiano D1 × D2 × . . . × Dn, un vincolo V sulle sue istanze si dice di dimensione 2 se non è di dimensione 0 né di dimensione 1. ♦ Nella definizione 5 di pagina 12 abbiamo introdotto gli schemi, che sono insiemi di istanze. É chiaro che ogni vincolo sulle istanze corrisponde ad uno schema, e viceversa. Si vede anche come, per definizione, la dimensione di un vincolo composto è il massimo delle dimensioni dei suoi componenti. Esempio 30 . Consideriamo la dimensione 0, il caso più comune è quello in cui il quantificatore è Q∀, si richiede cioè che tutti i valori di una ”colonna” rispettino una certa caratteristica. Ma un vincolo di dimensione 0 può essere anche molto diverso, avremo sempre a che fare con una sola colonna, ma la ampia disponibilità di quantificatori diversi ci permette varie soluzioni. Q e Q|, ad esempio, si disinteressano completamente del vincolo cui sono applicati, valutano solo se l’istanza ha cardinalità pari o dispari; ma proprio per questo la loro dimensione può essere considerata nulla. Lo stesso dicasi per Q∅, che si limita a riconoscere l’istanza vuota. Invece i quantificatori Q0 , Q|0 , Q1 e Q|1 , se composti con vincoli sui singoli dominî, possono dare luogo a vincoli abbastanza complessi. Solo apparentemente però, abbiamo già notato come un algoritmo consideri alla stessa stregua tutti i quantificatori. ♦ Esempio 31 . Può sembrare che, con tutti i quantificatori a disposizione, siano molto rari i vincoli di dimensione 2. Quando abbiamo trattato l’istanza sul Palio ne abbiamo già trovato uno: avere al massimo 10 records (il numero di contrade partecipanti). In effetti qualsiasi vincolo che limiti il numero dei records (a meno di volerne valutare parità o disparità) non può essere ottenuto con alcun quantificatore binario. Vedremo in seguito (esempio 38) come ”costruire” questo genere di vincoli. ♦ Esempio 32 . Un vincolo sulle istanze molto comune in informatica è la chiave su alcuni dominî. La limitazione imposta è che i valori di quei dominî (un sottoinsieme di quelli componenti il prodotto cartesiano, spesso solo uno) siano diversi per ogni ennupla: non devono cioè esistere due records diversi per i quali i valori su quei dominî siano uguali. Questo permetterà di riconoscere tutti i records da quei soli elementi, si potrà anche operare una proiezione su quei dominî, mantenendo invariata la cardinalità dell’istanza. 37

all’istanza, tramite il quantificatore Q, il vincolo:<br />

Q×(V ) = Q(δ×(V )) . ♦<br />

Esempio 29 . Negli esempi 5, 12 e 13 abbiamo visto come sia possibile<br />

rappresentare un Palio ed abbiamo imposto un vincolo affinché l’istanza I<br />

avesse senso: che i tempi fossero progressivi o nulli da un certo punto in poi.<br />

In realtà non sarebbe sbagliato pretendere che almeno una contrada vinca,<br />

abbia cioè un tempo sull’ultimo rilevamento T8 . Questo equivale a derivare<br />

dal dominio all’istanza, tramite il quantificatore Q∃ , il vincolo, sul dominio<br />

T8 , che vale 1 se t8 = null :<br />

VV ittoria = Q∃(V[t8=null]) (I) = (Q∃(δ×(V[t8=null]))) (I) . ♦<br />

Per come è definito il vincolo derivato dal dominio all’istanza potrebbe<br />

sembrare che Q× sia equivalente alla più semplice applicazione Q(π). Cosí si<br />

passa <strong>di</strong>rettamente dai dominî alle istanze, senza passare attraverso i records.<br />

Nell’esempio 25 <strong>di</strong> pagina 33 abbiamo visto però che questo è possibile solo<br />

per i quantificatori universali.<br />

Focalizziamo adesso l’attenzione sulle istanze e sui loro vincoli. In pratica,<br />

dato un prodotto cartesiano <strong>di</strong> dominî D1 × D2 × . . . × Dn andremo ad<br />

analizzare tutte le possibili funzioni da Pf(D1 × D2 × . . . × Dn) in {0, 1} .<br />

Cominciamo con una loro <strong>di</strong>stinzione dal sapore geometrico.<br />

Definizione 24 . Dato un prodotto cartesiano D1 × D2 × . . . × Dn, un<br />

vincolo V sulle sue istanze si <strong>di</strong>ce <strong>di</strong> <strong>di</strong>mensione 0 se esiste un dominio<br />

Di ∈ {D1, D2, . . ., Dn} , un vincolo VDi su <strong>di</strong> esso, e un quantificatore Q,<br />

tali che:<br />

V = Q(δ×(VDi )) .<br />

Si <strong>di</strong>ce <strong>di</strong> <strong>di</strong>mensione 0 anche se è dato dalla composizione <strong>di</strong> vincoli <strong>di</strong><br />

<strong>di</strong>mensione 0, per mezzo <strong>di</strong> qualsiasi operatore binario. ♦<br />

Definizione 25 . Dato un prodotto cartesiano D1 × D2 × . . . × Dn, un<br />

vincolo V sulle sue istanze si <strong>di</strong>ce <strong>di</strong> <strong>di</strong>mensione 1 se non è <strong>di</strong> <strong>di</strong>mensione 0<br />

ed esiste un vincolo Vr su D1 ×D2 ×. . .×Dn, ed un quantificatore Q, tali che:<br />

V = Q(Vr) .<br />

Si <strong>di</strong>ce <strong>di</strong> <strong>di</strong>mensione 1 anche se è dato dalla composizione <strong>di</strong> vincoli <strong>di</strong><br />

<strong>di</strong>mensione 0 e 1 (almeno uno), per mezzo <strong>di</strong> qualsiasi operatore binario. ♦<br />

36

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!