ΜΑΘΗΜΑΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΛΟΓΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Φυλλάδια 2&3: Κατηγορηµατική Λογική ΕΚΕΜΒΡΙΟΣ 2007 ΣΗΜΕΙΩΣΗ: ΟΙ ΛΥΣΕΙΣ ΠΟΥ ΑΚΟΛΟΥΘΟΥΝ ΕΧΟΥΝ ΟΘΕΙ ΑΠΟ ΣΥΝΑ ΕΛΦΟΥΣ ΣΑΣ ΤΩΝ ΟΠΟΙΩΝ ΤΑ ΟΝΟΜΑΤΑ ΑΝΑΓΡΑΦΟΝΤΑΙ. A. Θεωρείστε την ακόλουθη πρόταση. x.( p(x) q(x)) (p(x) q(x)) ώστε µια ερµηνεία που ικανοποιεί την πρόταση αυτή για ένα δικό σας σύµπαν και µια ερµηνεία που δεν την ικανοποιεί για το ίδιο σύµπαν. Απάντηση από Α. αλάτση: Σύµπαν: {α} Ικανοποιείται για {q(a)} εν ικανοποιείται για {p(a)} Απάντηση από Α.Παντελη Universe = {a} Ικανοποιείται για e1 = {} εν ικανοποιείται για e2 = {p(a),q(a)} B. είξτε αναλυτικά ποια από τα παρακάτω ζεύγη είναι ενοποιήσιµα a. p(x, b, f(y)), p(a,y, f(z)) b. p(f(x,b), g(y), f(z,a)), p(y, g(f(g(w),w)), f(w,z)) c. p(f(g(a)), x, f(h(z,z)), h(y,g(w))), p(y, g(z), f(v), h(f(w),x)) Απάντηση από Καζιολα Οδυσσέα:
a. p(x,b,f(y)) p(a,y,f(z)) s0={ },so ={x a},s1= s0 o s0 ={}o{x a}={x a} p(x, b, f(z))s1=p(a, b, f(y)) p(a, y, f(z))s1=p(a, y, f(z)) s1 ={y b},s2=s1 o s1 ={x a}o{y b}={x a, y b} p(a, b, f(y))s2=p(a, b, f(b)) p(a, y, f(z))s2=p(a, b, f(z)) f(b),f(z). s2 ={z b},s3=s2 o s2 ={x a, y b, z b} p(a, b, f(b))s3=p(a, b, f(b)) p(a, b, f(z))s3=p(a, b, f(b)) b. p(f(x, b), g(y), f(z, a)) p(y, g(f(g(w), w)), f(w, z)) s0={ }, s0 ={y f(x, b)},s1=s0 o s0 ={}o{y f(x, b)}= {y f(x,b)} p(f(x, b), g(y), f(z, a))s1=p(f(x, b), g(f(x, b)), f(z, a)) p(y, g(f(g(w), w)), f(w, z))s1= p(f(x, b), g(f(g(w), w)), f(w, z)) g(f(x, b)) g(f(g(w), w)) f(x, b) f(g(w), w),s1={x g(w)} f(x, b)s1=f(g(w), b) f(g(w), w)s1 =f(g(w), w),s1 ={w b}, s2 =s1 o s1 ={x g(w)} o {w b}={x g(b), w b}
f(g(w), b)s2= f(g(b), b) f(g(w), w)s2=f(g(b), b) s3=s1 o s2={y f(x, b)}o{x g(b), w b}={y f(g(b), b), x g(b), w b} p(f(x, b), g(f(x, b)), f(z, a))s3= p(f(g(b), b), g(f(g(b), b)), f(z, a)) p(f(x, b), g(f(g(w), w)), f(w, z))s3=p(f(g(b), b), g(f(g(b), b)), f(b, z)) f(z, a) f(b, z), s0={},s0 ={z b},s1= s0 o so ={z b} f(z, a)s1=f(b, a) f(b, z)s1=f(b, b).όµως, α διάφορο του b.άρα δεν ενοποιούνται c. p(f(g(a)), x, f(h(z, z)), h(y, g(w))) p(y, g(z), f(v), h(f(w),x)) s0={},s0 ={y f(g(a))},s1=s0 o s0 ={y f(g(a))} p(f(g(a)), x, f(h(z, z)), h(y, g(w)))s1= p(f(g(a)), x, f(h(z, z)), h(f(g(a)),g(w)) p(y, g(z), f(v), h(f(w),x))s1= p(f(g(a)), g(z), f(v), h(f(w),x)) x g(z),s1 ={x g(z)}, s2=s1 o s1 ={y f(g(a))}o{x g(z)}= {y f(g(a)), x g(z)} p(f(g(a)), x, f(h(z, z)), h(f(g(a)),g(w))s2= p(f(g(a)),g(z), f(h(z, z)), h(f(g(a)),g(w)) p(f(g(a)), g(z), f(v), h(f(w),x))s2= p(f(g(a)), g(z), f(v), h(f(w),g(z))) f((h(z, z)) f(v),s1={v h(z, z)}, s3=s2 o s1={y f(g(a)), x g(z)}o{v h(z, z)}= {y f(g(a)), x g(z),v h(z, z)} p(f(g(a)),g(z), f(h(z,z)),h(f(g(a)),g(w))s3= p(f(g(a)),g(z),
f(h(z, z)),h(f(g(a)),g(w)) p(f(g(a)), g(z), f(v), h(f(w),g(z)))s3= p(f(g(a)), g(z), f(h(z, z)), h(f(w),g(z))) h(f(g(a)),g(w)) h(f(w),g(z)) f(g(a)) f(w),s0={ }, s0 ={w g(a)}, s1=s0 o s0 ={w g(a)} h(f(g(a)),g(w))s1=h(f(g(a)), g(g(a))) h(f(w),g(z))s1=h(f(g(a)), g(z)) g(g(a)) g(z)),s1 ={z g(a)}, s2=s1 o s1 ={w g(a)}o{z g(a)}= {w g(a),z g(a)} h(f(g(a)), g(g(a)))s2=h(f(g(a)), g(g(a))) h(f(g(a)), g(z))s2=h(f(g(a)), g(g(a))) Άρα: s4=s3 o s2= {y f(g(a)), x g(z), v h(z, z)}o{w g(a),z g(a)}= {y f(g(a)), x g(g(a)), v h(z, z), w g(a),z g(a)} p(f(g(a)),g(z),f(h(z,z)),h(f(g(a)),g(w))s4= p(f(g(a)),g(g(a)),f(h(g(a), g(a))),h(f(g(a)),g(g(a))) p(f(g(a)), g(z), f(h(z, z)), h(f(w),g(z)))s4= p(f(g(a)),g(g(a)),f(h(g(a), g(a))),h(f(g(a)),g(g(a))) Αποφασίστε (µη δείξετε τη διαδικασία) ποιά από τα παρακάτω ζεύγη είναι ενοποιήσιµα
Απάντηση από Κυριακου Ανδρονίκη d. f(g(v),h(u,v)), f(g(w),h(w,j(x,y))) d. f(g(v),h(u,v)), f(g(w),h(w,j(x,y))) e. f(g(v),h(u,v)), f(g(w),h(w,j(x,u))) f. f(x,f(u,x)), f(f(y,a),f(z,f(b,z))) Το ζεύγος ενοποιείται και ο ενοποιητής είναι ο { u <- j(x, y), v <- j(x, y), w <- j(x, y)} e. f(g(v),h(u,v)), f(g(w),h(w,j(x,u))) εν υπάρχει ενοποιητής για αυτό το ζεύγος άρα δεν ενοποιείται. f. f(x,f(u,x)), f(f(y,a),f(z,f(b,z))) Το ζεύγος αυτό ενοποιείται και ο ενοποιητής είναι ο {x <- f(b, a), u <- a, y <- b, z <- a} (τα αρχικά γράµµατα της αλφαβήτου είναι σταθερές οντοτήτων, ενώ τα γράµµατα προς το τέλος της αλφαβήτου είναι µεταβλητές) Γ. Μετατρέψατε την παρακάτω πρόταση και την άρνησή της σε προτασιακή µορφή w. x.( y.( p(x, y) r(y)) z.(q(w, z))) Λύση από Α.Παντελη 1) w. x.( y.( p(x, y) r(y)) z.(q(w, z))) Σ. w. x.( ( z.(q(w, z))) y.( p(x, y) r(y))) Α. w. x.( z.( q(w, z))) y.( p(x, y) r(y))) Π. - Υ. x.( z.( q(a, z))) ( p(x, f(x)) r(f(x)))) K. q(a, z) ( p(x, f(x)) r(f(x))) E. ( q(a, z) p(x, f(x))) ( q(a, z) r(f(x))) T. { q(a, z), p(x, f(x))}, { q(a, z), r(f(x))} 2) ( w. x.( y.( p(x, y) r(y)) z.(q(w, z)))) Σ. ( w. x.( ( z.(q(w, z))) y.( p(x, y) r(y)))) Α. ( w. x.( z.( q(w, z)) y.( p(x, y) r(y))))
w. x. ( z.( q(w, z)) y.( p(x, y) r(y)))) w. x.( z.(q(w, z)) y.(p(x, y) r(y)))) Π. - Υ. w. (q(w, f(w)) y.(p(g(w), y) r(y)))) K. q(w, f(w)) (p(g(w), y) r(y)) E. - T.{q(w, f(w))}, {p(g(w), y), r(y)}. εδοµένων των παρακάτω υποθέσεων 1. x.(logician(x) coffee(x)) 2. x.( theorems(x) coffee(x)) 3. x.(logician(friend(x))) ώστε µια απόδειξη για το συµπέρασµα χρησιµοποιώντας (α) τη µέθοδο του Herbrand, (b) τον κανόνα της επίλυσης: x.(logician(x) coffee(x) theorems(x)) (α) Η µέθοδος Herbrand ΕΝ εφαρµόζεται λόγω του ότι το σύµπαν είναι άπειρο (εξαιτίας ύπαρξης συνασρτησιακού όρου) (β) Λύση από Κυριακου Ανδρονικη Μετατρέπουµε τις προτάσεις σε κανονική µορφή και έχουµε: 1. { logician(x), coffee(x)} 2. {theorems(x), coffee(x)} 3. {logician(friend(a))} Η άρνηση του συµπεράσµατος είναι: x.(logician(x) coffee(x) theorems(x)) Μετατρέπουµε την άρνηση του συµπεράσµατος σε κανονική µορφή και έχουµε: { logician(x), coffee(x), theorems(x)} Εφαρµόζουµε την επίλυση: 1. { logician(x), coffee(x)} 2. {theorems(x), coffee(x)}
3. {logician(friend(a))} 4. { logician(x), coffee(x), theorems(x)} 5. { logician(x), theorems(x)} (1, 4) 6. { logician(x), coffee(x)} (2, 5) 7. { logician(x)} (6, 1) 8. {} (7, 3) x friend(a) Ε. Tι µετατροπές θα κάνατε για την εφαρµογή της µεθόδου Herbrand? Κάντε τις αλλαγές που προτείνετε και εφαρµόσατε τη µέθοδο. Λύση από Α. Παντελη Θεώρηµα Herbrand : Ένα σύνολο προτάσεων δίχως ποσοδείκτες έχει µοντέλο αν και µόνο αν έχει Herbrand µοντέλο. 1. logician(friend(a)) coffee(friend(a))) 2. theorems(friend(a)) coffee(friend(a))) 3. logician(friend(a)) 4. logician(friend(a)) coffee(friend(a)) theorems(friend(a))) HU = {friend(a)} Ουσιαστικά θεωρεί και χρησιµοποιεί το friend(a) ) ώς σταθερά οντότητας «β» HB = {logician(friend(a)), coffee(friend(a)), theorems(friend(a))} H-Ερµηνείες 1 2 3 4 {} ν ν χ {logician(friend(a)} χ {coffee(friend(a)} ν χ
{theorems(friend(a)} ν Ν χ {logician(friend(a), coffee(friend(a)} ν Χ {logician(friend(a), theorems(friend(a)} χ {coffee(friend(a), theorems(friend(a)} ν Ν χ {logician(friend(a), coffee(friend(a), theorems(friend(a)} ν Ν ν χ Λύση από Μ.Πολυχρόνη (µε µια διόρθωση) Σύνολο Ικανοποίησης 1. x.(logician(x) coffee(x)) Υπόθεση 2. x.( theorems(x) coffee(x)) Υπόθεση 3. x.(logician(x)) Υπόθεση 4. (logician(a) coffee(a) theorems(a)) Skolemization Φτιάχνουµε στη συνέχεια το Hu σύµπαν και Hb βάση. Hu: {a} Hb:{logician(a), coffee(a), theorems(a)} Στη συνέχεια φτιάχνουµε όλες τις δυνατές ερµηνείες από το Hb και τα τοποθετούµε σε πίνακα και ελέγχουµε αν όλες οι ερµηνείες δεν ικανοποιούνται δηλ. το άτοπο αφού αρνηθήκαµε το συµπέρασµα πρέπει να αποδείξουµε το άτοπο δηλ. ότι καµία ερµηνεία δεν ικανοποιείται. Έτσι έχουµε : (logician(x) ( theorems(x) (logician(x)) ( logician(a) coffee(x)) coffee(x)) coffee(a) theorems(a)) Σ {} X X logician(a) X X
coffee(a) X X X theorems(a) X X logician(a),coffee(a) X X logician(a),theorems(a) X X coffee(a),theorems(a) X X logician(a),coffee(a),theorems(a ) X X ΣΤ. Κανόνας της επίλυσης: Αποδείξτε ότι για τις παρακάτω προτάσεις δεν υπάρχει µοντέλο α. { p(x, y), q(x, y, f(x,y))} { r(y, z), q(a, y, z)} {r(y, z), q(a, y, z)} {p(x, g(x)), q(x, g(x), z)} { r(x,y), q(x, w, z)} 1. { p(χ, Υ), q(χ, Υ, f(χ,υ))} 2. { r(υ, Ζ), q(a, Υ, Ζ)} 3. {r(υ, Ζ), q(a, Υ, Ζ)} 4. {p(χ, g(χ)), q(χ, g(χ), Ζ)} 5. { r(χ,υ), q(χ, W, Z)} 6. {q(x,g(x),f(x,g(x)))} 4,1 {Y<-g(X), Z<-f(X,g(X))} 7. { r(χ,υ)} 6,5 {W<-g(X), Z<-f(X,g(X))} { r(υ,z)} Μετονοµασία 8. { q(a,y,z)} 7,3 9. {} 8,6 {X<-a,Y<-g(a),Z<-f(a,g(a))} β. { r(x,y), r(y,z), r(x,z)} { p(x,y), q(y,z), r(x,z)} {p(a,b)} {q(b,c)} { r(a,c)}
Λύση 1. { r(x, y), r(y, z), r(x, z)} 2. { p(x, y), q(y, z), r(x, z)} 3. {p(a, b)} 4. {q(b, c)} 5. { r(a, c)} 6. { q(b, z), r(a, z)} (2, 3) 7. {r(a, c)} (6, 4) 8. {} (7, 5) Ζ. Μετατρέψατε τις προτασιακές µορφές της ΣΤ(β) σε προτάσεις της κατηγορηµατικής λογικής και αποδείξτε ότι δεν υπάρχει µοντέλο που να τις ικανοποιεί χρησιµοποιώντας το µοντέλο του Herbrand. Απάντηση από Α.Παντελη 1. r(x,y) r(y,z) r(x,z) 2. p(x,y) q(y,z) r(x,z) 3.p(a,b) 4.q(b,c) 5. r(a,c) HU = {a,b,c} Η µέθοδος Herbrand θα χρειαστεί ελεγχο 2 54 ερµηνειών που είναι πρακτικά αδύνατο. Παρατηρούµε όµως ότι οι προτάσεις γράφονται και 1. r(x,y) r(y,z) r(x,z) 2. p(x,y) q(y,z) r(x,z)
3. p(a,b) q(b,c) r(a,c) Παρατηρούµε ότι για x<-a, y<-b, z<- c η 3 είναι η άρνηση της 2, και αφού η 2 πρέπει να ισχύει για κάθε x,y,z το σύνολο δεν έχει Η-µοντέλο (άρα δεν έχει µοντέλο γενικά) Η. Αποδείξτε µε τον κανόνα της επίλυσης τα ακόλουθα α. Η πρόταση (Α (Β C)) & (A B) (A C) είναι µη-ικανοποιήσιµη β. Η Β είναι λογική συνέπεια από το σύνολο υποθέσεων ={ (Β Α), ((Β Γ) Α), ((Α Β) Γ) } γ. Ότι {( x( α(x) (β(x) γ(x)) )), ( x(α(x) δ(x) )} x (δ(x) γ(x)) Λύση από Ε.Μπουρνάκη α. (a<=>(b=>c))^(a<=>b)^(a<=> c) Σ (( a v (b=>c))^(a v (b=>c))) ^ ( a v b)^(a v b) ^ ( a v c)^(a v c) (( a v b v c)^(a v ( b v c))) ^ ( a v b)^(a v b) ^ ( a v c)^(a v c) A (( a v b v c)^(a v (b ^ c))) ^ ( a v b)^(a v b) ^ ( a v c)^(a v c) E ( a v b v c) ^ (a v (b ^ c)) ^ ( a v b) ^ (a v b) ^ ( a v c) ^ (a v c) ( a v b v c) ^ (a v b) ^ (a v c) ^ ( a v b) ^ (a v b) ^ ( a v c) ^ (a v c) T { a, b, c}, {a, b}, {a, c}, { a, b}, {a, b}, { a, c}, {a, c} Εφαρµογή της επίλυσης 1. { a, b, c} 2. {a, b} 3. {a, c} 4. { a, b} 5. {a, b} 6. { a, c} 7. {a, c} 8. {b} 2,4 9. { a, b} 1,6
10.{ b} 9,5 11.{} 8,10 β. Υποθέσεις β=>α (β^γ) => α α^β=> γ Συµπέρασµα β β=>α Σ β v α Α β v α Ε β v α Τ { β, α} (β^γ) => α Σ (β^γ) v α Α β v γ v α Ε β v γ v α Τ { β, γ, α} α^β=> γ Σ (α^β) v γ Α α v β v γ Ε α v β v γ Τ { α, β, γ}
Εφαρµογή επίλυσης 1. { β, α} Υπόθεση 2. { β, γ, α} Υπόθεση 3. { α, β, γ} Υπόθεση 4. {β} Άρνηση συµπεράσµατος 5. { α, β} 2,3 6. { β} 5,1 7. {} 6,4 γ. Υποθέσεις Χ(α(Χ) => (β(χ) ^ γ(χ))) Χ(α(Χ) ^ δ(χ)) Συµπέρασµα Χ(δ(Χ) ^ γ(χ)) Χ(α(Χ) => (β(χ) ^ γ(χ))) Σ Χ( α(χ) v (β(χ) ^ γ(χ))) Α Π Υ Κ α(χ) v (β(χ) ^ γ(χ)) Ε ( α(χ) v β(χ)) ^ ( α(χ) v γ(χ)) Τ { α(χ), β(χ)} { α(χ), γ(χ)}
Χ(α(Χ) ^ δ(χ)) Σ Α Π Υ α(α) ^ δ(α) Κ Ε Τ {α(α)} {δ(α)} Χ(δ(Χ) ^ γ(χ)) Σ Α Χ( δ(χ) v γ(χ)) Π Υ Κ δ(χ) v γ(χ) Ε Τ { δ(χ), γ(χ)} Εφαρµογή επίλυσης 1. { α(χ), β(χ)} Υπόθεση 1 2. { α(χ), γ(χ)} Υπόθεση 1 3. {α(α)} Υπόθεση 2 4. {δ(α)} Υπόθεση 2 5. { δ(χ), γ(χ)} Άρνηση συµπεράσµατος 6. { γ(α)} 5,4 7. { α(α)} 6,2 8. {} 7,3
Θ. Σας δίνονται οι ακόλουθες προτάσεις p(w) q(w) True p(x) r(x) q(y) s(y) r(z) s(z) Χρησιµοποιείστε τη µέθοδο του Herbrand για να δείξετε αν η s(a) είναι λογική συνέπεια των παραπάνω υποθέσεων. Λύση από Μ.Πολυχρόνη. Σύνολο Ικανοποίησης p(w) q(w) True p(x) r(x) q(y) s(y) r(z) s(z) s(a) 2. Φτιάχνουµε το Herbrand Universe και το Herbrand Base Hu:{a} και Hb:{p(a),q(a),r(a),s(a)} 3. Κατασκευάζουµε όλους τους συνδυασµούς του Hb και ελέγχουµε όλες τις ερµηνείες αν ικανοποιούνται. p(w) q(w) True p(x) q(y) r(z) s(z) s(a) Σύνολο r(x) s(y) {} x x p(a) x x q(a) X x
r(a) x x s(a) x x p(a), q(a) X x p(a), r(a) x x x p(a), s(a) x x x q(a), r(a) X x x q(a), s(a) x x r(a), s(a) x x p(a), q(a),r(a) X x x p(a), q(a),s(a) x x p(a), r(a),s(a) x x x q(a), r(a),s(a) x x p(a),q(a),r(a),s(a) x x Πράγµατι καµία ερµηνεία δεν ικανοποιείται. Συνεπώς φτάσαµε στο άτοπο. Άρα, πράγµατι η s(a) είναι λογική συνέπεια των πιο πάνω υποθέσεων