Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
Mantık Sistemleri ve Mantık Programlama
DERS - 2
2
Mantık Nedir? Mantık, akıl yürütmenin bilimi olarak tanımlanabilir.
ZİHİNSEL TEMSİL ✓ P ise Q ? P ise Q Tümevar ım Tümdeng elim EYLEM A L G I GÖZLEM AKIL YÜRÜTME ✓P ✓P ? Q ✓Q DIŞ DÜNYA
3
Matematikten Programlamaya ...
Her programı bir fonksiyon (F) olarak düşünelim: Tümdengelimli programlama: ✓ ✓ I O ? F I O F Tümevarımlı programlama: ? ✓ I ✓ O F
4
Mantıktan Programlamaya ... (Genel)
Modus Ponens: Tümdengelimli programlama: ✓ P Q P Q ✓ P Q P Q ? Tümevarımlı programlama: ? P Q P Q ✓ ✓
5
Mantıktan Programlamaya ... (Örnekler)
Ali gelecek veya Ayşe gelecek. Ali gelmeyecek. Ayşe gelecek. p q ¬p q ? p q p q ? Ali gelir ise Ayşe gelecek. Ali gelecek. Ayşe gelecek. Bütün öğrenciler gelecek. Ayşe bir öğrencidir. Ayşe gelecek. x[öğrenci(x) gelecek(x)] öğrenci(ayşe) gelecek(ayşe) ?
6
0th Order / Propositional Logic
Önermeler Mantığı 0th Order / Propositional Logic
7
Mantık ve Çıkarımlar Çıkarımlar, (argümanlar) akıl yürütmenin önemli araçlarıdır. Mantık biliminin görevi, doğru akıl yürütmenin ya da eş deyişle geçerli çıkarım oluşturmanın yasalarını tespit etmektir. Çıkarım, içlerinden bir tanesinin sonuç ve diğerlerinin öncül (aksiyom) olduğu, bir dizi yargı cümlesinden (ya da, daha kesin bir ifadeyle, bir dizi önermeden) oluşur. Eğer öncüllerinin doğru olması halinde sonucu doğru olmak zorundaysa, bu çıkarıma geçerli bir çıkarım denir.
8
Çıkarım Örnekleri (1) Ali partiye gelecek veya Ayşe partiye gelecek.
Ali partiye gelmeyecek. Ayşe partiye gelecek. Ali bir çocuk bakıcısı bulamazsa partiye gelmeyecek. Ali çocuk bakıcısı bulamadı. Bütün uçaklar düşebilir. Bütün F-16’lar uçaktır. Bütün F-16’lar düşebilir.
9
Çıkarım Örnekleri (2) Ali bir öğretmendir. Ali akıllıdır.
Bütün öğretmenler aptal değildir. Bütün balıklar memelidir. Moby Dick bir balıktır. Moby Dick memelidir.
10
Geçerlilik ve Öncüllerin/Sonucun Doğruluğu
Bir çıkarımın, geçerli olup olmadığını anlamak için öncüllerinin veya sonucun doğruluk değerini bilmek gerekmez (örn. Çıkarım 1). Geçerli bir çıkarımın, öncülleri veya sonucu açıkça yanlış olabilir (örn. Çıkarım 5). Geçersiz bir çıkarımın, bütün öncülleri doğru olabilir. Örnek: Bütün atlar memelidir. Bütün atlar otoburdur. Bütün memeliler otoburdur.
11
Çıkarım Şemaları (1) Aşağıdaki çıkarımlar geçerlidir:
Can partiye gelecek veya Ayşe partiye gelecek. Can partiye gelmeyecek. Ayşe partiye gelecek. Can derse gelecek veya Ayşe derse gelecek. Can derse gelmeyecek. Ayşe derse gelecek.
12
Çıkarım Şemaları (2) Eğer bütün alternatifleri denersek 1. çıkarım tipindeki çıkarımlarda yalnızca veya ve olumsuzluk takısının geçerliliği etkileyen öğeler olduğunu görürüz: Ali partiye gelecek veya Ayşe partiye gelecek. Ali partiye gelecek. Ayşe partiye gelecek. Ayşe partiye gelirse Ali partiye gelecek. Ali partiye gelmeyecek.
13
Çıkarım Şemaları (3) 1., 7. ve 8. çıkarımlar aşağıdaki çıkarım şemasının örnekleri olarak düşünülmelidir: A veya B B değil A Geçersiz ve geçerli birer çıkarım şeması: B ise A Bütün P’ler Q’dur. A değil a P’dir. B a Q’dur.
14
Mantık Sabitleri ve Mantık Sistemleri
Mantık sistemlerinin düzeyini belirleyen sahip oldukları mantık sabitleridir. MANTIK SABİTLERİ MANTIK SİSTEMLERİ ve, veya, ise, ancak ve ancak, değil Önermeler Mantığı her, bazı Yüklem Mantığı olasılıkla, kesinlikle Kip Mantığı -DI, -ECEK Zaman Mantığı inanmak, bilmek Epistemik Mantık
15
Önermeler Mantığı – Doğruluk Tabloları (1)
OLUMSUZLUK: φ ¬φ VE: φ ψ (φ ψ)
16
Önermeler Mantığı – Doğruluk Tabloları (2)
VEYA: φ ψ (φ ψ) İSE φ ψ (φ ψ)
17
Önermeler Mantığı – Doğruluk Tabloları (3)
ANCAK VE ANCAK: φ ψ (φ ψ)
18
Önermeler Mantığı – Bir Formel Dil-L0 (1)
SÖZDİZİM: A. Temel İfadeler 1. Mantık Sabitleri: ¬, , , , 2. Önerme Değişkenleri: p, q, r, p1, q1, r1, … B. Oluşum Kuralları 1. Her önerme değişkeni L0’a ait bir formüldür. 2. Eğer φ L0’a ait bir formül ise ¬φ da öyledir. 3. Eğer φ ve ψ L0’a ait formül iseler (φ ψ), (φ ψ), (φ ψ), (φ ψ) de öyledir. 4. Başka bir şey formül olamaz.
19
Önermeler Mantığı – Bir Formel Dil-L0 (2)
SEMANTİK: L0 için modelimiz bütün önerme değişkenlerine 1 yada 0 değerini atayan bir F fonksiyonudur. []F = F(), bütün önerme sabitleri için. Eğer [φ]F = 0 ise [¬φ]F = 1’dir (ve diğer durumlarda [¬φ]F = 0’dır). Eğer [φ]F = 1 veya [ψ]F = 1 ise [φ ψ]F = 1’dir. Eğer [φ]F = 1 ve [ψ]F = 1 ise [φ ψ]F = 1’dir. Eğer [φ]F = 0 veya [ψ]F = 1 ise [φ ψ]F = 1’dir. Eğer [φ]F = 1 ve [ψ]F = 1 veya [φ]F = 0 ve [ψ]F = 0 ise [φ ψ]F = 1’dir.
20
1. Dereceden Yüklem Mantığı
1st Order Logic
21
Daha Yüksek Bir İfade Gücü! (1)
L0 dili yardımıyla bir önceki dersteki (7. ve 8. çıkarımların yanında) 1. ve 2. çıkarımların geçerliliğini formelleştirebiliriz: p q ¬ p q ¬r ¬ p ¬ r
22
Daha Yüksek Bir İfade Gücü! (2)
İhtiyacımız olan yalnızca aşağıdaki iki çıkarım şemasıdır: A B ¬ A B A B A
23
Daha Yüksek Bir İfade Gücü! (3)
Fakat, 3., 4. ve 5. çıkarımları L0 diline dönüştürmek geçerliliklerini sağlayan anlamın önemli bir bölümünü kaybetmemize yol açacaktır. Benzer bir durumu aşağıdaki örnek üzerinde görebiliriz: Muhammed Ali, Richard Nixon’dan uzundur. Richard Nixon, Noam Chomsky’den uzundur. Muhammed Ali, Noam Chomsky’den uzundur. p q r
24
Önermelerin İçsel Yapısı
L0 dili ile ilgili sorun önermelerin içsel yapısına erişim olanağı vermemesidir. İhtiyacımız olan en azından önermelerin ilişki- argüman analizini sağlayabilecek bir yaklaşımdır: U(m, r) U(r, n) U(m, n) Ancak, bu bile yeterli değildir.
25
L1 Dili (1) SÖZDİZİM: A. Temel İfadeler Kategori Temel İfade İsimler d, n, j, ve m Tek-argümanlı yüklemler M, B Çift-argümanlı yüklemler K, L B. Oluşum Kuralları Eğer δ bir tek-argümanlı yüklem ve α bir isimse, δ(α) bir cümledir. Eğer γ bir çift-argümanlı yüklem ve α ve β isim iseler, γ(α, β) bir cümledir. Eğer φ bir cümleyse, ¬φ bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir.
26
L1 Dili (2) SEMANTİK: B. Semantik Kurallar A. Temel İfadeler:
[d] = Richard Nixon [n] = Noam Chomsky [j] = Jacque Chirac [m] = Muhammad Ali [M] = Bütün bıyıklı insanlar kümesi [B] = Bütün sarışın insanlar kümesi [K] = Birincinin ikinciyi tanıdığı bütün yaşayan insan çiftleri kümesi [L] = Birincinin ikinciyi sevdiği bütün yaşayan insan çiftleri kümesi B. Semantik Kurallar δ bir tek-argümanlı yüklem ve α bir isimse, δ(α) ancak ve ancak [α] [δ] ise doğrudur. γ bir çift-argümanlı yüklem ve α ve β isim iseler, γ(α, β) ancak ve ancak <[α], [β]> [γ] ise doğrudur. φ bir cümleyse, ¬φ ancak ve ancak φ doğru değilse doğrudur. φ ve ψ cümle iseler, [φ ψ] ancak ve ancak hem φ hem ψ doğru ise doğrudur. φ ve ψ cümle iseler, [φ ψ] ancak ve ancak φ veya ψ doğru ise doğrudur. φ ve ψ cümle iseler, [φ ψ] ancak ve ancak φ yanlış veya ψ doğru ise doğrudur . φ ve ψ cümle iseler, [φ ψ] ancak ve ancak ya hem φ hem ψ doğru ise yada hem φ hem ψ yanlış ise doğrudur.
27
Birinci Dereceden Yüklem Mantığı (1)
5. çıkarıma geri dönecek olursak, bu çıkarımın geçerliliğine ulaşmamızı sağlayan açıkça ifade edilmemiş olan fakat bizim genel bir bilgi olarak sahip olduğumuz aşağıdaki genellemedir: “Eğer a b’den uzunsa ve b de c’den uzunsa, a c’den uzundur.” Daha doğrusu, ‘uzun olma’ ilişkisinin geçişken bir ilişki olduğuna dair sahip olduğumuz bilgi söz konusu çıkarımı yapmamızı mümkün kılar.
28
Birinci Dereceden Yüklem Mantığı (2)
‘Uzun olma’ ilişkisinin geçişkenliğinin örneğe konu olan şahıslarla sınırlı olmadığı, ilişkiye argüman olabilecek bütün varlıklar için geçerli olduğu açıktır. Yani aşağıdaki türden bir genelleme yapmamız gerekmektedir: “Bütün a, b ve c’ler için, eğer a b’den uzunsa ve b de c’den uzunsa, a c’den uzundur.” Bu tür genellemeleri ifade edebilmek için, formel dilimize değişkenler ve niceleyiciler ekleyeceğiz. Değişkenlerimiz, değer olarak bireyleri alabilen değişkenler, niceleyicilerimiz ise varoluş niceleyicisi ve evrensel niceleyici olacaktır. Bu da bizi, Birinci Dereceden Yüklem Mantığına götürecektir.
29
L2 Dili (1) SÖZDİZİM: A. Temel İfadeler Kategori Temel İfade İsimler d, n, j, ve m Birey değişkenleri v1, v2, v3, ... Tek-argümanlı yüklemler M, U Çift-argümanlı yüklemler K, L B. Oluşum Kuralları Eğer δ bir tek-argümanlı yüklem ve α bir isimse, δ(α) bir cümledir. Eğer γ bir çift-argümanlı yüklem ve α ve β isim iseler, γ(α, β) bir cümledir. Eğer φ bir cümleyse, ¬φ bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ ve ψ cümle iseler, [φ ψ] bir cümledir. Eğer φ bir formül, ve u bir değiken ise, u φ bir formüldür. Eğer φ bir formül, ve u bir değişken ise, u φ bir formüldür.
30
L2 Dili (2) Eğer u L2’nin bir değişkeni ise, [u]M, g = g(u)’dur.
SEMANTİK: A. Temel İfadeler Eğer u L2’nin bir değişkeni ise, [u]M, g = g(u)’dur. Eğer L2’nin mantıksal olmayan bir sabiti ise, []M, g = F()’dır. B. Semantik Kurallar Eğer tek argümanlı bir yüklem ve bir terim ise, [()] M, g = []M, g([]M,g)’dir . Eğer iki argümanlı bir yüklem, ve birer terim ise, [( ,)] M, g = ([]M, g ([]M,g))([]M,g)’dir . Eğer bir formül ise, [] M, g = 1 eğer [] M, g = 0 ise; diğer durumlarda [] M, g = 0. Benzer yöntem ( ), ( ), ( ), ve ( ) formülleri için de geçerlidir.
31
L2 Dili (3) Eğer bir formül ve u bir değişken ise,
B. Semantik Kurallar (Devam) Eğer bir formül ve u bir değişken ise, u değişkenine atanan değer dışında diğer her durumda g ile aynı olan her g’ değer atama fonksiyonu için [] M,g’ = 1 ise [u] M,g = 1’dir. u değişkenine atanan değer dışında diğer her durumda g ile aynı olan bir g’ değer atama fonksiyonu için [] M,g’ = 1 ise [u] M,g = 1’dir.
32
L2 Dili (4) C. M’ye göre L2 formüllerinin doğruluk tanımlaması olarak aşağıdakiler kabul edilir: L2’nin herhangi bir formülü için, eğer tüm g değer atama fonksiyonları için []M, g = 1 ise []M = 1’dir. []M, g = 0 ise []M = 0’dır.
33
Birinci Dereceden Yüklem Mantığı
Her köpek bir kediyi kovaladı. 33
34
Mantık Programlama PROLOG
36
Mantıktan Programlamaya ... (Genel)
ÖNCÜL_1 . ÖNCÜL_N MANTIKSAL SONUÇ PROGRAM SORGU
37
Prolog Nedir? Alain Colmerauer ve Robert Kowalski tarafından yetmişli yıllarda geliştirilmiştir. Prolog = Programmation en Logique (Programming in Logic) Prolog, diğer birçok programlama dilinden farklı olarak deklaratif bir programlama dilidir. Geleneksel yapıdaki prosedürel programlama dillerinde programcı adım adım problemin çözüm yolunu betimlemelidir. Tamamen deklaratif olan programlama dillerinde, programcı problemin ne olduğunu belirtir ve gerisini programlamlama dilinin arka planındaki sisteme bırakır. Deklaratif bir programlama dili olan Prolog’da; Programcı erişilecek bir hedefi ortaya koyar / betimler Prolog sistemi bu hedefe nasıl ulaşacağını bulur.
38
Kullanım Alanları Doğal Dil İşleme Uzman Sistemler
Otomatik Akıl Yürütme Problem Çözme ...
39
Prolog’un Temel Yapıları
Terimler Önermeler Sabitler Değişkenler Gerçekler Kurallar Örn: ayşe öğrenci Örn: öğrenci(ayşe). Örn: gelecek(X):- öğrenci(X). Örn: X _ Bileşik Terimler Sorgular Örn: ?- gelecek(ayşe). Örn: öğrenci(ayşe)
40
Prolog’un Çıkarım Kuralları
Özdeşlik (Identity) Genelleme (Generalization) Örnekleme (Instantiation) Modus Ponens Örn: öğrenci(ayşe). ?- öğrenci(ayşe). Örn: öğrenci(ayşe). ?- öğrenci(X). Örn: varlık(X). ?- varlık(ayşe). Örn: öğrenci(ayşe). gelecek(X):- öğrenci(X). ?- gelecek(ayşe).
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.