<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bilgisayar Kavramları &#187; bilgisayar felsefesi</title>
	<atom:link href="http://www.bilgisayarkavramlari.com/category/bilgisayar-felsefesi/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bilgisayarkavramlari.com</link>
	<description>www.bilgisayarkavramlari.com</description>
	<lastBuildDate>Wed, 18 Aug 2010 21:13:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>WOLG (Genelliğini Kaybetmeden)</title>
		<link>http://www.bilgisayarkavramlari.com/2010/06/01/wolg-genelligini-kaybetmeden/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/06/01/wolg-genelligini-kaybetmeden/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 10:31:28 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Matematiği]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>
		<category><![CDATA[wolg]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/06/01/wolg-genelligini-kaybetmeden/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de temellerini oluşturan matematik&#8217;te kullanılan bir tabirdir. İngilizcede &#8220;without loss of generality&#8221; kelimelerinin baş harflerinden oluşur ve Türkçede &#8220;genelliğini kaybetmeden&#8221; şeklinde kullanılabilir. Genelde matematiksel bir ispat yapılması veya bir çıkarım sırasında kullanılır. Buradaki genellik ile kastedilen bir ispattan veya çıkarımdan önceki adımda kabul edilen genel durumun, ispatın sonuna [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimlerinin de temellerini oluşturan matematik&#8217;te kullanılan bir tabirdir. İngilizcede &#8220;without loss of generality&#8221; kelimelerinin baş harflerinden oluşur ve Türkçede &#8220;genelliğini kaybetmeden&#8221; şeklinde kullanılabilir.</p>
<p>Genelde matematiksel bir ispat yapılması veya bir çıkarım sırasında kullanılır. Buradaki genellik ile kastedilen bir ispattan veya çıkarımdan önceki adımda kabul edilen genel durumun, ispatın sonuna kadar saklanmasıdır.</p>
<p>Örneğin bir ispat sırasında x ve y şeklinde iki değişken rastgele olarak alınıyor. (bunlar birer sayı veya sembol de olabilir)</p>
<p>İspat sonucunda örneğin F(x,y) sonucunun doğru olduğu gösterilirse, genelliğini kaybetmeden F(y,x) sonucunun da doğru olduğu gösterilmiş olur. Burada ilk olarak seçilen x ve y sayılarının rast gele seçildiğini kabul edebilir ve bu rastgelelikten dolayı F(x,y) veya F(y,x) sonucunun elde edilmesi bu sayıların seçimindeki genelliğin kaybolmasını gerektirmez.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/06/01/wolg-genelligini-kaybetmeden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zamansal Mantıklarda Etki Alanı Yapısı (Temporal Domain Structure)</title>
		<link>http://www.bilgisayarkavramlari.com/2010/04/13/zamansal-mantiklarda-etki-alani-yapisi-temporal-domain-structure/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/04/13/zamansal-mantiklarda-etki-alani-yapisi-temporal-domain-structure/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 10:12:36 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[bilgisayar felsefesi]]></category>
		<category><![CDATA[yapay zeka (artificial intelligence)]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/04/13/zamansal-mantiklarda-etki-alani-yapisi-temporal-domain-structure/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin özellikle yapay zeka konusu altında yer alan ve zamansal modelleme / problem çözümü konularında kullanılan bir yapıdır. Bu yazıyı, zamansal mantıklar (temporal logic) üzerinde çalışan bir etki alanı sınıflandırması olarak düşünmek mümkündür. Yukarıdaki şekilde, bu seviyelendirme 3 katmanda gösterilmiştir. Buna göre bir zamansal mantığın (temporal logic) seviyesi, üzerine [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimlerinin özellikle yapay zeka konusu altında yer alan ve zamansal modelleme / problem çözümü konularında kullanılan bir yapıdır. Bu yazıyı, zamansal mantıklar (temporal logic) üzerinde çalışan bir etki alanı sınıflandırması olarak düşünmek mümkündür.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/041310_1012_ZamansalMan1.png" alt="" /></p>
<p>Yukarıdaki şekilde, bu seviyelendirme 3 katmanda gösterilmiştir. Buna göre bir <a href="http://www.bilgisayarkavramlari.com/2009/05/06/zamansal-mantik-temporal-logic/">zamansal mantığın (temporal logic)</a> seviyesi, üzerine kurulu olduğu mantık seviyesine bağlıdır. Klasik mantıkları seviyelendirirken 3 seviyeden bahsetmek mümkündür:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/041310_1012_ZamansalMan3.png" alt="" /></p>
<p>Yukarıdaki bu seviyelendirmede, <a href="http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/">birinci derece mantık (first order logic)</a> için düşük seviye mantık (lower order logic) veya <a href="http://www.bilgisayarkavramlari.com/2010/03/27/ikinci-derece-mantik-second-order-logic/">ikinci derece mantığa (second order logic) yüksek seviye mantık (higher order logic)</a> isimleri de verilmektedir. Sonuçta bir zamansal mantık yukarıda gösterilen 3 seviyeden herhangi birisi üzerine kurulu bir mantık olarak düşünülebilir.</p>
<p>Bu durumda bir zamansal mantığın seviyesinden bahsedilmesi demek, bu zamansal mantığın üzerine inşa edildiği mantığın seviyesinden bahsedilmesi demektir.</p>
<p>Bu yazıda incelenecek olan, zamansal mantıkların etki alanı yapısı ise, zamansal mantıklarda ortak olan ve ilişkileri analiz etmeye yarayan bir yaklaşımdır.</p>
<p>Bu yaklaşımda öncelikle temel işlem özelliklerini tanımlayabiliriz.</p>
<p>Örneğin iki zamansal belirleyici (quantifier) arasında tanımlı olan bir ilişkiye (relation) R ismini verecek olursak:</p>
<p>Geçişlilik özelliği  (transitivity) :<span>∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>xyz</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><em><span style="font-family:Times New Roman">z</span></em></span><span>⇒</span><span style="font-size:10pt"><em><span style="font-family:Times New Roman"> x </span></em><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>z<br />
</em></span></span></p>
<p>Yansımama özelliği (nonreflexivity) : <span>∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>x</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x<br />
</em></span></span></p>
<p>Doğrusallık özelliği (linearity) : <span>∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>xy</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">= </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x<br />
</em></span></span></p>
<p>Sol doğrusallık (left linearity)<span style="font-size:10pt"><span style="font-family:Arial"><br />
</span></span><span>∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>xyz</em></span><span style="font-family:Times New Roman">.</span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x </em></span></span><span>⇒</span><span style="font-size:10pt"><span style="font-family:Times New Roman"> </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">= </span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y</em></span></span></p>
<p>Sağ doğrusallık (right linearity)<span style="font-size:10pt"><span style="font-family:Arial"><br />
</span></span><span>∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>xyz</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>z </em></span></span><span>⇒</span><span style="font-size:10pt"><span style="font-family:Times New Roman"> </span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">= </span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Symbol"></span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y<br />
</em></span></span></p>
<p>Başlama (begin)<span style="font-size:10pt"><span style="font-family:Arial"><br />
</span></span><span>∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>x</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Symbol"></span></span><span>∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>y</em></span><span style="font-family:Times New Roman">.</span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x<br />
</em></span></span></p>
<p>Bitme (end)<span style="font-size:10pt"><span style="font-family:Arial"><br />
</span></span><span>∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>x</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Symbol"></span></span><span>∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>y</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y<br />
</em></span></span></p>
<p>Takip (precedence) <span style="font-size:10pt"><span style="font-family:Symbol">&#8220;</span><span style="font-family:Times New Roman"><em>x</em></span><span style="font-family:Times New Roman">.</span><span style="font-family:Arial"><br />
</span></span><span>∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>y</em></span><span style="font-family:Times New Roman">.</span><span style="font-family:Times New Roman"><em>y </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>x<br />
</em></span></span></p>
<p>Yoğunluluk (density)<span> ∀</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>xy</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y </em></span></span><span>⇒</span><span> ∃</span><span style="font-size:10pt"><span style="font-family:Times New Roman"><em>z</em></span><span style="font-family:Times New Roman">. </span><span style="font-family:Times New Roman"><em>x </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>z </em></span><span style="font-family:Arial">R </span><span style="font-family:Times New Roman"><em>y<br />
</em></span></span></p>
<p>Yukarıda sıralanan özelikler bir zamansal mantığın taşıyabileceği özelliklerdir. Genellikle bir zamansal mantıktaki bütün ilişkiler geçişli, yansımasız ve doğrusaldır.</p>
<p>Yukarıdaki özellikleri açıklamaya çalışalım.</p>
<p>Bir zamansal mantığın başlama / bitme özelliğinin bulunması bu mantığın zamanda bir geçmiş ve bir de gelecek limitinin olması anlamına gelir. Tam tersi olarak takip (precedence / successor ) ise zamanda sonsuz olduğu anlamına gelir. Yani bir zamansal mantığın geçmişte ve gelecekte bir sonunun olmaması demektir.</p>
<p>Bir zamansal mantığın yoğun olması, iki ilişki arasına üçüncü bir ilişki girebilmesi anlamına gelmektedir. Öte yandan kesikli olması bunun tam tersi şeklinde üçüncü bir ilişkinin, iki ilişki arasına girememesi anlamına gelir.</p>
<p>Yukarıda geçen doğrusallık ise 3 farklı şekilde anlaşılabilir. Zamanı doğrusal bir çizgi üzerine oturtursak iki yöne gidilen doğrusallık ve taraflardan birine gidilen doğrusallık şeklinde anlayabiliriz.</p>
<p>Örneğin aşağıda bu 3 farklı durum için gösterilen doğrusallık örnekleri bulunmaktadır:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/041310_1012_ZamansalMan5.png" alt="" /></p>
<p>Yukarıdaki şekillerden 1 numara ile gösterilen şekilde tam doğrusallıktan yani iki uca doğru giden doğrusallıktan bahsedilebilir. 2 numara ile gösterilen çizimde ise sol doğrusallık gösterilmektedir. Bu gösterimde dikkat edilirse sağ cihette bir doğrusallık bulunmamakta buna mukabil sola doğru bir doğrusal zaman çizgisi gösterilmektedir.</p>
<p>3 numaralı çizim, 2 numaralı çizimin tersine sağda doğrusallığın olduğu ve sol tarafta doğrusallığın olmadığı bir çizimdir. 4 numaralı çizim ise iki tarafta da doğrusallık bulunmayan dolayısıyla doğrusal olmayan çizimdir.</p>
<p>Yukarıda açıklanan zamansal mantık etki alanı yapılarına ilave olarak, zamansal mantıklarda bulunan fasıla işlemleri de ayrıca incelenmelidir. Bir zamansal mantıkta 13 temel fasıla bulunur. Bunlar aşağıdaki şekilde gösterilmiştir:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/041310_1012_ZamansalMan7.png" alt="" /></p>
<p>Yukarıdaki şekilde görülen bu temel 13 bağlantı hemen hemen bütün zamansal mantıklarda bulunan fasıla durumunu ifade eder.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/041310_1012_ZamansalMan8.png" alt="" /></p>
<p>Yukarıda P. Bellini tarafından yayınlanan ve &#8220;Temporal Logics for Real-Time System Specification&#8221; başlıklı çalışmadan alınan gösterimde de bir önceki şekilde bulunan çizimin biraz daha değiştirilmiş hali görülebilir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/04/13/zamansal-mantiklarda-etki-alani-yapisi-temporal-domain-structure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cardinality (Sayısallık)</title>
		<link>http://www.bilgisayarkavramlari.com/2010/03/31/cardinality-sayisallik/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/03/31/cardinality-sayisallik/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 18:27:42 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Matematiği]]></category>
		<category><![CDATA[algoritma analizi (teory of algorithms)]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>
		<category><![CDATA[cardinality]]></category>
		<category><![CDATA[countability]]></category>
		<category><![CDATA[rasyonel sayılar]]></category>
		<category><![CDATA[reel sayılar]]></category>
		<category><![CDATA[sayılabilirlik]]></category>
		<category><![CDATA[sayılamazlık]]></category>
		<category><![CDATA[sayısallık]]></category>
		<category><![CDATA[tam sayılar]]></category>
		<category><![CDATA[uncountable]]></category>
		<category><![CDATA[uncountablity]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/03/31/cardinality-sayisallik/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER 1. Rasyonel / Tamsayı ilişkisi 2. Sayılabilirlik (Countability) 3. Reel / Tamsayı ilişkisi Şayet aynı isme sayıp ERD (Entity relationship diagram) üzerindeki sayısallık konusu ile ilgili yazıyı arıyorsanız bu bağlantıdan erişebilirsiniz. Algoritma analizi (algorithm analysis) ve hesaplama teorisinde (theory of computation) sıkça kullanılan anlamıyla bir kümenin eleman sayısını belirtir. Ayrıca [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p class="shutter"><a href="#1">1. Rasyonel / Tamsayı ilişkisi</a><br />
<a href="#2">2. Sayılabilirlik (Countability)</a><br />
<a href="#3">3. Reel / Tamsayı ilişkisi</a></p>
<p>Şayet aynı isme sayıp ERD (Entity relationship diagram) üzerindeki sayısallık konusu ile ilgili yazıyı arıyorsanız <a href="http://www.bilgisayarkavramlari.com/2008/11/25/sayisallik-cardinality/">bu bağlantıdan </a>erişebilirsiniz.</p>
<p>Algoritma analizi (algorithm analysis) ve hesaplama teorisinde (theory of computation) sıkça kullanılan anlamıyla bir kümenin eleman sayısını belirtir.</p>
<p>Ayrıca matematik ve bilgisayar bilimleri açısından önemli bir yönü de kümelerin sonsuz olması durumunda kümeler arasındaki ilişkinin gösterilmesinde işe yaramasıdır.</p>
<p>Bu durumu öncelikle sonsuz iki küme tanımlayarak anlamaya çalışalım.</p>
<p>Tam sayılar kümesini ele alalım. Tam sayılar kümesi sonsuz eleman içermektedir. Eksi sonsuzdan 0&#8242;a kadar ve 0&#8242;dan da artı sonsuza kadar giden sayılardan oluşur.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality1.png" alt="" /></p>
<p>Dolayısıyla tam sayılar kümesinde, sonsuz eleman olduğunu söylememiz doğrudur.</p>
<p>Benzer şekilde pozitif tamsayılar kümesi sıfırdan artı sonsuza kadar sonsuz sayıda eleman içerir:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality3.png" alt="" /></p>
<p>Bu iki kümenin de sonsuz olduğunu söylediğimize göre gerçekten bu iki kümenin sonsuzlukları aynı mıdır? Yoksa kümelerden birisi daha büyük diğeri daha küçük sonsuz mudur?</p>
<p>Bu soru ile kardinallik (sayısallık, cardinality) konusuna başlayabiliriz. Bu soruyu cevaplamadan önce iki küme arasında eşit miktarda eleman bulunmasını tanımlamamız gerekir:</p>
<p>Sayısallık açısından iki küme birbirine bağlanmak istenirse, bunun anlamı bu kümeler arasında birebir (one-to-one) ve üzerine (onto) bağlantı bulunması demektir.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality5.png" alt="" /></p>
<p>Yukarıdaki örnekte, iki küme arasında bire bir ve örten bir bağlantı gösterilmektedir. Burada birebir olması, birinci kümeden her elemanın ikinci kümeden tek bir elemanı gösteriyor olmasını ve ikinci kümedeki her elemanın da birinci kümede tek elemanı gösteriyor olması demektir. Şayet örneğin &#8220;a&#8221; elemanı hem 1 hem de 2 ile ilişkilendirilmiş olsaydı bu durumda birebir ilişkiden bahsedilemezdi. Örten olma özelliği (onto) ise boşta hiç eleman kalmamış olması yani bütün elemanların bir şekilde diğer kümede ilişkilendirilmiş olması anlamındadır.</p>
<p><a href="http://www.bilgisayarkavramlari.com/2009/06/24/kume-teorisi-set-theory/">Kümeler teorisi (set theory)</a> ile ilgili bu kısa hatırlatmadan sonra konumuz olan sayısallık ilişkisine dönebiliriz.</p>
<p>Şayet kümelerin ikisi de yukarıdaki örnekte olduğu gibi sonlu değil de yazının başında verildiği gibi sonsuz ise bu durumda sayısallık bağlantısını nasıl kurabiliriz?</p>
<p>Sayısallık açısından, tam sayılar kümesi ve pozitif tam sayılar kümesinin eşit olduğunu söyleyebiliriz. Bunu göstermek için yukarıda bahsettiğimiz üzere, iki küme arasındaki ilişkinin örten ve birebir olduklarını göstermemiz gerekir.</p>
<p>Bunu daha iyi modelleyebilmek için sonsuzluk yönünü aynı tarafa çevirip ardından sayıları sıralayalım:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality7.png" alt="" /></p>
<p>Tamsayılar kümesini yukarıdaki şekilde çevirecek olursak kümenin elemanlarını aşağıdaki şekilde yazabiliriz:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality9.png" alt="" /></p>
<p>Yukarıdaki resimde solda gösterilen pozitif tam sayılar (Z+) kümesi ile sağda gösterilen tamsayılar kümesi (Z) arasında birebir ve örten bir ilişki kurulmuş olunur. Bunun sebebi iki kümedeki her eleman diğer kümedeki bir elemana mutlaka ilişkilendirilmiş ve bu ilişki birebir olmuştur.</p>
<p>Yukarıdaki bu görsel ilişkiyi matematiksel olarak aşağıdaki şekilde yazmak da mümkündür:</p>
<p>X e Z ve Y e Z+ olmak üzere X  = Y / 2 * ( -1 )  <sup>Y mod 2</sup></p>
<p>Yukarıdaki formülde tam sayı bölmesi yapıldığı kabul edilmiştir. (yani noktadan sonraki değerler göz ardı edilmiştir)</p>
<p>Gerçekten de Y = 1 için X = ½ *1 = 0 sonucu veya Y = 15 için X = 15 / 2 * -1 = -7 sonucu bulunmaktadır.</p>
<p>Bu bağlantının tersini yazmak da mümkündür:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality11.png" alt="" /></p>
<p>Örneğin X = 0 için Y = -1 * 0 * 2 + 1  = 1 olarak bulunur veya diğer bir örnek olarak X = -7 için Y = -1 * -7 *2 + 1= 15 olarak bulunur.</p>
<p>Görüldüğü üzere iki yönlüde bütün elemanları diğer kümedeki elemanlara bağlayan bir bağlantı yazılması mümkündür.</p>
<p>Böylelikle yukarıdaki şartımızı sağlamış ve iki küme arasında eşit miktarda eleman bulunduğunu göstermiş oluyoruz.</p>
<p>Bu konuyu anlatırken sorulmuş bir soruyu cevaplamak istiyorum: &#8220;Kümelerin venn diyagramlarında da, denklemlerin her ikisinde de Z kümesi, Z+ kümesine göre daha yavaş ilerliyor. Yani Y için 16 sayısına ulaşıldığında X için henüz 8 sayısına yeni ulaşılmış olunuyor. Bu durumda tam sayılar kümesi, pozitif tam sayılar kümesinden daha büyük değil midir?&#8221;</p>
<p>Bu soru ilk başta mantıklı gibi görülse de cevabı kesin olarak hayırdır. Bunun sebebi kümelerin sonsuz oluşudur. Yani sonsuzun sonu yoktur <span style="font-family:Wingdings">J</span> Bu durumu şöyle açıklayalım, yukarıdaki formülde yazılan X ve Y sayıları arasında neredeyse X=Y/2 veya Y = 2*X gibi bir bağlantı vardır. Bu durumda yukarıdaki soruya temel teşkil eden düşünceyi cevaplamak için sonsuzdaki bir sayıya n diyerek X=n için Y = 2n &#8216;dir sonucuna ulaşmak ve dolayısıyla n sonsuz ise 2n sonsuzdan daha büyük bir sonsuzdur gibi bir hataya düşmek mümkündür. Ancak buradaki hata iki türlü cevaplanabilir,</p>
<ol>
<li>Örnekteki n bir sayı olmak üzere, kümelerdeki son sayının n olduğunu söyleyemeyiz</li>
<li>Sayı kümesindeki n, sonsuzda bir sayı olmak şartıyla 2n&#8217;in sonsuzda olmadığını söyleyemeyiz.</li>
</ol>
<p>Dolayısıyla bu iki kümede de eşit sayıda eleman bulunur denilebilir.</p>
<p><strong><a name="1"></a>Rasyonel sayılar (kesirli sayılar, rational numbers) ile pozitif tam sayılar kümesi arasındaki sayısallık ilişkisi<br />
</strong></p>
<p>Yukarıdaki bu yaklaşım kullanılarak, kesirli sayılar ( rational numbers) kümesinin, tam sayılar kümesi ile aynı miktarda sonsuz eleman içerdiğini de ispatlayabiliriz. İhtiyacımız olan tek şey yukarıdaki örnekte bahsedildiği üzere pozitif tam sayılar kümesi, veya tam sayılar kümesi ile, kesirli sayılar (rasyonel sayılar) arasında bir bağlantı kurabilmek ve bu bağlantıyı modellemektir.</p>
<p>Öncelikle kesirli sayıları, iki boyutlu uzayda modellemekle işe başlayabiliriz. Kesirli sayılar kümesini aşağıdaki tabloda olduğu gibi yazmak mümkündür:</p>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width: 28px;"></col>
<col style="width: 38px;"></col>
<col style="width: 38px;"></col>
<col style="width: 38px;"></col>
<col style="width: 19px;"></col>
<col style="width: 38px;"></col>
</colgroup>
<tbody>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt"></td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">n</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/n</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2/1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2/2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2/3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt"></td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3/1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3/2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3/3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt"></td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt"></td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">n</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">.</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">n/n</td>
</tr>
</tbody>
</table>
<p>Yukarıdaki tabloda görüldüğü üzere ilk satır ve ilk sütun birer pozitif tam sayı içermek üzere, tablonun diğer elemanları bu iki sayının (üsttekinin soldakine) bölümüdür. Dolayısıyla aslında problemi aşağıdaki şekilde pozitif tamsayılar olarak modellemiş oluruz:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality13.png" alt="" /></p>
<p>Diğer bir deyişle şimdilik elimizde (Z+ x Z+) &lt;-&gt; Q+ şeklinde bir bağlantı bulunmaktadır. Bu bağlantıyı biraz daha ilerleterek Z &lt;-&gt; Q şeklinde çevirmeye çalışalım. Çünkü bu şekilde bir bağlantı bizim bu iki kümedeki eleman sayılarının eşit olduğunu kardinallik açısından ispatlamamız olacaktır.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/033110_1827_Cardinality15.png" alt="" /></p>
<p>Yukarıdaki şekilde gösterilen ok yönlerinde bu sayıları, pozitif tam sayılar kümesi ile ilişkilendirirsek hem bir bağlantı yakalamış hem de birebir ve örten bir ilişki elde etmiş oluruz. Bu durumda sayılarımızı aşağıdaki şekilde ilişkilendireceğiz:</p>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width: 66px;"></col>
<col style="width: 76px;"></col>
</colgroup>
<tbody>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Z+</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Q+</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/1</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2/1</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/2</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">4</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3/1</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">5</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1/3</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">6</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">4/1</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">7</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3/2</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
</tr>
</tbody>
</table>
<p>Yukarıda görüldüğü üzere, tam sayılar kümesindeki bütün sayılar, rasyonel sayılar kümesi ile ilişkilendirilmiştir. Ayrıca dikkat edilmesi gereken bir husus, 2/2 veya 3/3 gibi tam sayı karşılığı 1 olan ve aslında eşit olan sayıların bu ilişkide yer almamasıdır. Bu sayıların ilişkiye yerleştirilmesi durumunda birebir olma özelliği bozulacaktır.</p>
<p>Yukarıdaki gösterim sayesinde, bu iki kümenin, yani rasyonel sayılar kümesi ile tam sayılar kümesi arasında bir ilişki birebir ve örten olarak kurulmuş ve bu sayede bu iki kümenin eleman sayısının eşit olduğu ve dolayısıyla bu iki kümenin sayısallık (kardinallik, cardinality) açısından eşit olduğu söylenebilir.</p>
<p><strong><a name="2"></a>Sayılabilirlik (countability)<br />
</strong></p>
<p>Diğer bir deyişle rasyonel sayılar kümesi sayılabilir bir kümedir (countable set) denilebilir. Aslında sayılabilirliğin (countability) tanımı, bir kümenin pozitif tam sayılar kümesi ile aynı kardinalliğe getirilebilmesidir. Yani herhangi bir kümeyi, yukarıdaki örneklere benzer şekilde pozitif tam sayılar ile birebir ve örten bir şekilde ilişkilendirebiliyorsak bu küme sayılabilir kümedir, aksi halde sayılamaz bir kümedir (uncountable set).</p>
<p>Bu sayılamazlık durumunu ve dolayısıyla kardinallik açısından eşit olmayan iki sonsuz kümeyi aşağıda örneklemeye çalışalım. Bu sefer kullanacağımız örnek gerçek sayılar (real numbers, reel sayılar) ile tam sayılar kümesi (integers) olsun.</p>
<p><strong><a name="3"></a>Tam sayılar ve Reel sayılar arasında sayısallık ilişkisi<br />
</strong></p>
<p>Bu örnekte, tam sayılar kümesi ve reel sayılar kümesi arasında sayısallık açısından eşitlik olmadığını ispatlamaya çalışalım.</p>
<p>Öncelikle ispatımızı, <a href="http://www.bilgisayarkavramlari.com/2008/08/02/burhan-i-mutenakis-proof-by-contradiction-olmayana-ergi/">olmayana ergi (proof by contradiction)</a> olarak modelliyoruz. Yani öncelikle reel sayılar kümesinin sayılabilir olduğunu kabul edip, bu sayı kümesi ile pozitif tam sayılar kümesi arasında bir ilişki kuracağız. Ardından bu ilişkinin kurulamayacağını ispatlamaya çalışacağız.</p>
<p>Öncelikle ilişki gösterimini ve ispatı daha iyi anlayabilmek için bu ispatta <a href="http://www.bilgisayarkavramlari.com/2009/10/08/sayi-tabanlari-number-bases-2/">ikilik tabanda sayılar</a> kullanalım. Yani 2 sayısı ikilik tabanda 10 olarak gösterilir. Dolayısıyla 0.2 sayısı 0.10 olarak gösterilir. Benzer şekilde 0.15438 sayısı 0.11110001001110 olarak gösterilecektir. Aslında bu gösterimin herhangi özel bir önemli olmamakla birlikte ispatı daha görülür kılmak için kullanacağız.</p>
<p>Şimdi doğru çalışan bir ilişkimiz olduğunu kabul edelim ve aşağıdaki şekilde gösterildiği gibi, tam sayılar ile reel sayılar kümesini ilişkilendirelim:</p>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width: 37px;"></col>
<col style="width: 151px;"></col>
</colgroup>
<tbody>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Z+</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Q+</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.110101010100101…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.010101010110101…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.100100100101110…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">4</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.001010101010001…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">5</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.111110101010000…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">6</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.111000011111111…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
</tr>
</tbody>
</table>
<p>Yukarıdaki şekilde görüldüğü üzere, Z+ &lt;-&gt; Q+ ilişkisi kurulmuştur. Bu ilişkide herhangi bir matematiksel bağlantı bulunmadığı gibi sonuçta bütün ilişkilerde yukarıdakine benzer bir tablo ortaya çıkacaktır. Okuyucu birazdan yapacağımız ispatı, farklı sayılar veya herhangi bir matematiksel bağlantı için de deneyebilir sonuç değişmez.</p>
<p>Yukarıdaki şekilde tamsayılar ve reel sayılar arasında bir ilişki kurduktan sonra, kantor (Georg Cantor) tarafından ilk kez ispatlanan sayılamazlık durumu, köşegende (diagon) bulunan sayıların ters çevrilmesi ile elde edilir.</p>
<p>Yukarıdaki her sayının kaçıncı satırdaysa, o bitini alarak yeni bir sayı oluşturuyoruz.</p>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width: 37px;"></col>
<col style="width: 151px;"></col>
</colgroup>
<tbody>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Z+</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  solid black 0.5pt; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">Q+</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">1</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.<strong>1</strong>10101010100101…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">2</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.0<strong>1</strong>0101010110101…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">3</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.10<strong>0</strong>100100101110…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">4</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.001<strong>0</strong>10101010001…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">5</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.1111<strong>1</strong>0101010000…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">6</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">0.11100<strong>0</strong>011111111…</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  solid black 0.5pt; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
<td style="padding-left: 7px; padding-right: 7px; border-top:  none; border-left:  none; border-bottom:  solid black 0.5pt; border-right:  solid black 0.5pt">…</td>
</tr>
</tbody>
</table>
<p>Yukarıda, siyah renkle gösterilen bu sayılardan oluşan yeni sayımız: 0.110010… olarak belirlenebilir. Şimdi bu sayıdaki bütün bitlerin tersini alalım : 0.001101… olarak yeni bir sayı bulunacaktır.</p>
<p>Şimdi bu iki kümenin eşit olmadığını gösteren sorumuzu sorabiliriz, bulduğumuz bu yeni sayı, acaba yukarıdaki ilişkide hangi satırda yer almaktadır?</p>
<p>Cevap: Hiçbir satırda.</p>
<p>Bunun sebebi, her satırdan 1 bit alınarak oluşturulan yukarıdaki örnek sayının, tersi alındığında, her satırdan alınan bu bitin tersi alınmış ve dolayısıyla her satıra denk gelen bitin tersinden oluşan yeni bir sayı üretilmiş olmasıdır. Dolayısıyla hiçbir satırda ürettiğimiz bu yeni sayı bulunamaz.</p>
<p>Öyleyse, Z+ kümesi ile Q+ kümesini bağlamak için hangi bağlantı kullanılırsa kullanılsın, nasıl bir sayma yöntemi geliştirilirse geliştirilsin sonuçta yukarıdakine benzer bir durum olacak ve bu ilişkide bulunmayan bir reel sayı üretilerek iki küme arasındaki örten (onto) bağlantısı bozulacak ve reel sayılar kümesinde, tam sayılar kümesi ile ilişkilendirilmemiş bir eleman bulunacaktır.</p>
<p>Bu durumda reel sayılar kümesinin, tam sayılar kümesinden daha büyük olduğunu ve dolayısıyla sayılamaz olduğunu söyleyebiliriz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/03/31/cardinality-sayisallik/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>İkinci Derece Mantık (Second Order Logic)</title>
		<link>http://www.bilgisayarkavramlari.com/2010/03/27/ikinci-derece-mantik-second-order-logic/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/03/27/ikinci-derece-mantik-second-order-logic/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 13:17:23 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[bilgisayar felsefesi]]></category>
		<category><![CDATA[high order logic]]></category>
		<category><![CDATA[ikinci derece mantık]]></category>
		<category><![CDATA[predicate]]></category>
		<category><![CDATA[quantifier]]></category>
		<category><![CDATA[second oder logic]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/03/27/ikinci-derece-mantik-second-order-logic/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimleri de dahil olmak üzere, felsefe, matematik veya dilbilim gibi pek çok alanda kullanılan bir mantık modellemesinin ismidir. Buna göre modellenecek sistemdeki varlıklar ve bu varlıklar üzerine uygulanacak olan işlemler ayrı ayrı ele alınır ve sistemde modellenen hem varlıkların hem de işlemlerin geçerli olduğu bir etki alanından söz edilebilir. [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimleri de dahil olmak üzere, felsefe, matematik veya dilbilim gibi pek çok alanda kullanılan bir mantık modellemesinin ismidir. Buna göre modellenecek sistemdeki varlıklar ve bu varlıklar üzerine uygulanacak olan işlemler ayrı ayrı ele alınır ve sistemde modellenen hem varlıkların hem de işlemlerin geçerli olduğu bir etki alanından söz edilebilir.</p>
<p>İkinci derece mantığı anlamak için <a href="http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/">basitçe birinci derece mantık (first order predicate calculus, first order logic)</a> ile farkını anlamamız yeterlidir.</p>
<p>Birinci derece mantıkta, klasik mantıktan farklı olarak niceleyiciler (quantifiers) kullanılmakta ve bu niceleyicilerin geçerli olduğu bir etki alanından (domain) bahsetmek mümkündü. Ancak bu niceleyiciler üzerindeki tanımları ve işlemleri ifade eden <a href="http://www.bilgisayarkavramlari.com/2009/05/07/haber-predicate/">haberler (perdicates)</a> üzerinde herhangi belirleyici bir işlem yapılamıyordu.</p>
<p>Örneğin aşağıdaki birinci derece mantıkta modellenmiş iki gösterimi ele alalım:</p>
<p><span style="font-family:Cambria Math">∃</span>a (Şadi (a) <span style="font-family:Cambria Math">∧</span> Mühendis(a)) → Öyle bazı a&#8217;lar vardır ki, bu a&#8217;nın ismi Şadi&#8217;dir ve bu a mühendistir.</p>
<p><span style="font-family:Cambria Math">∀</span>a (Bilgisayar Mühendisi (a) <span style="font-family:Cambria Math">⇒</span> Mühendis(a)) → Bütün a&#8217;lar için, a şayet bilgisayar mühendisiyse; a, aynı zamanda mühendistir.</p>
<p>Yukarıdaki bu gösterimlerde dikkat edileceği üzere niceleyici (quantifier) olan a üzerinde bir etki alanı tanımlanmıştır buna mukabil <a href="http://www.bilgisayarkavramlari.com/2009/05/07/haber-predicate/">haberler (predicates)</a> üzerinde bir etki alanı tanımlanmamış ve bilgisayar mühendisi tanımı olduğu gibi bırakılmıştır. İşte ikinci derece mantık tam burada devreye girer ve bu haberlerin (predicates) üzerinde de etki alanı tanımını mümkün kılar.</p>
<p>Bu durumu aşağıdaki örnek üzerinden anlamaya çalışalım:</p>
<p><span style="font-family:Cambria Math">∃ Şekil (Ş</span>ekil (a)<span style="font-family:Cambria Math"> ∧</span> Şekil (b)) → Öyle bir şekilden bahsedilebilir ki, hem a hem de b aynı şekildedir.</p>
<p>Yukarıdaki bu durum birinci seviyede yazılamaz. Bunun sebebi şekil belirten haberin (predicate) her durumda aynı olması gerekliliğidir. Diğer bir deyişle birinci seviye mantıkta tek bir şekilden bahsedilebilir, özel bir şekil olamaz.</p>
<p>Bu durumu biraz daha iler götürürsek haberler (predicates) üzerinde de haberler tanımlamak mümkündür. Yani haberin haberi şeklinde bu durumu modelleyebiliriz.</p>
<p><span style="font-family:Cambria Math">∃ Şekil ( </span>Köşeli ( Şekil) <span style="font-family:Cambria Math">∧ Ş</span>ekil (a)<span style="font-family:Cambria Math"> ∧</span> Şekil (b))</p>
<p>Yukarıdaki bu tanımda, bir şeklin köşeli olacağı, ve bu durumda a ve b niceleyicilerinin bu şekilden olabileceği tanımı yapılmıştır.</p>
<p>Bu anlamda <a href="http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/">birinci seviye mantıktan</a> daha kapsamlı modellemeler yapılabilir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/03/27/ikinci-derece-mantik-second-order-logic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Birinci Derece Mantık (First Order Logic)</title>
		<link>http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 10:05:27 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Matematiği]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de aralarında bulunduğu, başta felsefe olmak üzere, matematik ve dilbilim gibi alanlarda kullanılan bir mantık modelidir. Bu modelin özelliği kıyas ve tümden gelim yaklaşımına göre ispatlanabilir özellikte olmasıdır (deductive). Yani bir makine, veya matematiksel model tarafından bu mantık modelindeki gösterimlerin ispatlanması (verification) veya reddedilmesi (falsification) mümkündür. Birinci derece [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimlerinin de aralarında bulunduğu, başta felsefe olmak üzere, matematik ve dilbilim gibi alanlarda kullanılan bir mantık modelidir. Bu modelin özelliği kıyas ve tümden gelim yaklaşımına göre ispatlanabilir özellikte olmasıdır (deductive). Yani bir makine, veya matematiksel model tarafından bu mantık modelindeki gösterimlerin ispatlanması (verification) veya reddedilmesi (falsification) mümkündür.</p>
<p>Birinci derece mantık, literatürde çeşitli isimlerle adlandırılmaktadır. Örneğin, mantığın üzerine inşa edildiği <a href="http://www.bilgisayarkavramlari.com/2009/05/07/haber-predicate/">yüklem ve haberlerden(predicate) </a> ismini alan  &#8220;birinci derece haber mantığı&#8221; (first order predicate logic) veya bu mantık üzerinde matematiksel işlemlere izin vermesinden dolayı birinci derece yüklem aritmetiği (first order predicate calculus) veya yine birinci derece kelimesinin sebebi olan ve mantıkta <a href="http://www.bilgisayarkavramlari.com/2007/11/29/onermeler-mantigi-propositional-logic/">kaziyeler mantığına (önermeler, propositional logic)</a> yakın olması dolayısıyla alçak haber mantığı (lower predicate calculus) isimleri gibi farklı isimler verilmektedir.</p>
<p>Birinci derece mantığın, klasik kaziye mantığından (önermeler mantığı, propositional logic) en önemli farkı, bu mantıkta kullanılan niceleyicilerin (quantifiers) veya bilgisayar bilimleri gözüyle <a href="http://www.bilgisayarkavramlari.com/2008/09/08/degisken-variable/">değişkenlerin (variable)</a> belirli bir tanım alanlarının olmasıdır (domain). Dolayısıyla birinci derece mantıkta yapılan modellemelerde kullanılan bütün niceleyiciler tanımlı bir alanda geçerlidir ve mantık modellerimiz bu alan için doğru veya yanlış olarak işlenir.</p>
<p>Bu tanımlı olma özelliğinin getirdiği bir zafiyet olarak, birinci derece mantıkta sonuz kümeler olan, doğal sayılar veya Kartezyen uzay gibi varlıkların modellenmesi ve çözümlenmesi mümkün olmamaktadır. Bu tür sonsuzluk içeren modellemeler için ikinci derece mantık (second order logic) benzeri daha kuvvetli mantık modellemelerinden yararlanmak mümkündür.</p>
<p>Haber mantığından birinci derece mantığa geçiş</p>
<p>Birinci derece mantık konusunu anlamak için öncelikle klasik, <a href="http://www.bilgisayarkavramlari.com/2007/11/29/onermeler-mantigi-propositional-logic/">kaziyeler mantığının (propositional logic)</a> nasıl çalıştığını hızlıca hatırlayalım.</p>
<p>Örneğin &#8220;Şadi mühendistir.&#8221; cümlesi, klasik mantık açısından bir kaziyedir (önermedir) ve doğru veya yanlıştır.</p>
<p>Benzer şekilde &#8220;Ali mühendistir.&#8221; Cümlesi de klasik mantık açısından bir kaziyedir ve tek başına ele alınarak doğruluğu veya yanlışlığı ortaya konulabilir.</p>
<p>Ancak klasik kaziye mantığında bu iki ayrı cümle (kaziye veya önerme) yine bu mantıkta tanımlı olan <a href="http://www.bilgisayarkavramlari.com/2009/05/20/islem-onceligi-operator-precedence/">klasik işlemler (operators)</a> dışında birleştirme ve modelleme yapılamaz.</p>
<p>Örneğin bu önermelerden birisine p ve diğerine q sembolü verilip mantıkta bulunan aşağıdaki durumlar modellenebilir:</p>
<p>p <span>⇒</span> q (Şadi mühendis ise Ali de mühendistir)</p>
<p>p <span>∧ </span><span style="font-family:Symbol"></span> q (Şadi de Ali de mühendistir)</p>
<p>p  <span>∨ </span>q (Şadi veya Ali mühendistir)</p>
<p><span>¬</span> p  (Şadi mühendis değildir)</p>
<p>Yukarıdaki bu modeller sonuçta doğru (True (T) ) veya yanlış (False (F, <span>⊥</span> )) sonuçlarından birisini üretir.</p>
<p>Birinci derece mantık, yukarıdaki bu modellemeyi öncelikle niceleyiciler (quantifier) üzerine taşır. Bu niceleyiciler, bilgisayar bilimlerindeki değişkenler (variables) olarak düşünülebilirler ve kabaca bir varlığa verilen ve mantık modelinde kullanılan isim olarak tanımlanabilir.</p>
<p>Yukarıdaki &#8220;Şadi mühendistir&#8221; cümlesini ele alacak olursak birinci derece mantıkta aşağıdaki şekilde göstermek mümkündür:</p>
<p>Şadi (a) <span>⇒</span> Mühendis(a)</p>
<p>Modeli okurken &#8220;öyle bir &#8220;a&#8221; vardır ki bu &#8220;a&#8221;&#8216;nın ismi Şadi&#8217;dir ve bu &#8220;a&#8221; mühendistir&#8221; şeklinde okuyabiliriz. Burada kullanılan a bir niceleyicidir (quantifier) ve bu niceleyici üzerinde bir haber(predicate) bildirilmiştir.  Bu modelde, klasik modele göre fark net bir şekilde görülmektedir. Tam bu noktada klasik mantıkta soramayacağımız ama birinci derece mantıkta sorulması gereken &#8220;bu a nasıl bir a&#8217;dır?&#8221; sorusu farkı ortaya koyar. Birinci derece mantıkta bu sorunun anlamı, bu bütün a&#8217;lar için geçerli midir, anlamındadır. Yukarıdaki tanımda da anlatıldığı üzere birinci derece mantıkta niceleyicilerin (quantifiers) bir etki alanının olması söz konusudur. Yani a ile sembolize edilen bu gösterici acaba her durum için geçerli bir sembol müdür?</p>
<p>Bu sorunun cevabını farkı anlayabilmek için açık bir şekilde hayır diye verebiliriz. Yukarıdaki a niceleyicisi her durumda doğru olsaydı, bütün ismi Şadi olanlar mühendistir sonucuna varılması gerekirdi ki bu doğru değildir.</p>
<p>İşte bu ayrım bize birinci derece mantıkta kullanılan iki önemli sembolü gösterir. Bunlardan birincisi &#8220;her&#8221; anlamına gelen (<span>∀</span>) sembol iken diğeri &#8220;öyle bazı&#8221; şeklinde okunabilecek (<span>∃</span>) semboldür.</p>
<p>Yukarıdaki örneğimizi düzenleyecek olursak aşağıdaki gösterim doğrudur ve sonucu da doğrudur:</p>
<p><span>∃</span>a (Şadi (a) <span>∧</span><span style="font-family:Symbol"></span> Mühendis(a)) <span style="font-family:Wingdings"></span>→ Öyle bazı a&#8217;lar vardır ki, bu a&#8217;nın ismi Şadi&#8217;dir ve bu a mühendistir.</p>
<p><span>∀</span>a (Bilgisayar Mühendisi (a) <span>⇒</span> Mühendis(a)) → Bütün a&#8217;lar için, a şayet bilgisayar mühendisiyse; a, aynı zamanda mühendistir.</p>
<p>Yine, yukarıdaki gösterim kullanılarak söylenebilecek doğru bir model de aşağıdaki gibi olabilir:</p>
<p><span>∃</span>a (Şadi (a) <span>∧</span><span style="font-family:Symbol"> </span><span>¬</span> Mühendis(a)) → Öyle bazı a&#8217;lar vardır ki, bu a&#8217;nın ismi Şadi&#8217;dir ve bu a mühendis değildir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/03/24/birinci-derece-mantik-first-order-logic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeki Vekiller (Akıllı Ajanlar, Intelligent Agents, Zeki Etmenler )</title>
		<link>http://www.bilgisayarkavramlari.com/2010/02/15/zeki-vekiller-akilli-ajanlar-intelligent-agents-zeki-etmenler/</link>
		<comments>http://www.bilgisayarkavramlari.com/2010/02/15/zeki-vekiller-akilli-ajanlar-intelligent-agents-zeki-etmenler/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 14:02:15 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Kavramları]]></category>
		<category><![CDATA[Yazılım Mühendisliği (Software Engineering)]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>
		<category><![CDATA[yapay zeka (artificial intelligence)]]></category>
		<category><![CDATA[agent]]></category>
		<category><![CDATA[intelligent agents]]></category>
		<category><![CDATA[vekil]]></category>
		<category><![CDATA[zeki etmenler]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2010/02/15/zeki-vekiller-akilli-ajanlar-intelligent-agents-zeki-etmenler/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Zeki vekiller (etmenler, ajanlar) kavram olarak, bilgisayar bilimlerine, felsefe, biyoloji ve ekonomi alanındaki çalışmalardan sonra girmiştir. Bu alanlardaki anlamı ve kullanımı, genellikle herhangi bir işin farklı bir vekil tarafından yürütülmesi olarak anlaşılabilir. Bilgisayar bilimlerin açısından zeki kelimesi, bir vekilin herhangi bir işlemi belirli inisiyatifler kullanarak yerine getirmesidir. Örneğin zeki olmayan [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Zeki vekiller (etmenler, ajanlar) kavram olarak, bilgisayar bilimlerine, felsefe, biyoloji ve ekonomi alanındaki çalışmalardan sonra girmiştir. Bu alanlardaki anlamı ve kullanımı, genellikle herhangi bir işin farklı bir vekil tarafından yürütülmesi olarak anlaşılabilir.</p>
<p>Bilgisayar bilimlerin açısından zeki kelimesi, bir vekilin herhangi bir işlemi belirli inisiyatifler kullanarak yerine getirmesidir. Örneğin zeki olmayan bir vekil, her adımda ve her işlemde kullanıcıya bir şeyler sorarken, zeki vekilde daha çok otonom bir yapıdan (autonomous) bahsedilebilir.</p>
<p>Bu anlamda her zeki vekilin (intelligent agent) , çalıştığı ortam ile iletişimini sağladığı ve bu iletişim üzerinde karar verdiği bir mekanizması vardır denilebilir.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/021510_1402_ZekiVekille1.png" alt="" /></p>
<p>Yukarıdaki temsili resimde, bir zeki vekil, çizgili alanda gösterilen üç ana unsurdan ibarettir. Bunlar kısaca vekilin çalıştığı ortamı gözlediği <a href="http://www.bilgisayarkavramlari.com/2008/10/04/sinir-aglarinda-katmanlar-neuron-layers/">algı (perception)</a> , vekilin bu ortamda bir işlem yapmasını sağlayan eylem (action) ve vekilin bu ortamdaki algısına göre nasıl bir eylem yapacağına karar vermesini sağlayan karar mekanizmasıdır. Bu karar mekanizması çoğu zaman bir kurallar listesi (rule base) olabileceği gibi bazı durumlarda basit bir if – else bloğu da olabilmektedir.</p>
<p>Russel ve Norving tarafından 2003 yılında yayınlanan yapay zeka kitabında, zeki vekiller 5 seviyede listelenmiştir. Bu seviyeleri basitten karmaşığa doğru aşağıdaki şekilde sıralayabiliriz:</p>
<ol>
<li>Fiil-i Münakıs Vekiller (reflex agents)</li>
<li>Fiil-i Münakıs Kalıp Vekiller (Model-based reflex agents)</li>
<li>Hedef  vekilleri ( goal-based agents)</li>
<li>Fayda vekilleri ( utility-based agents)</li>
<li>Öğrenen vekiller ( learning agents)</li>
</ol>
<p>Reflex Agents</p>
<p>Basit bir koşul ve eylem sıralamasından ibaret olan vekiller. Belirlenen koşul gerçekleşince yine daha önceden belirlenen fiili yerine getirir. Kurulu bir düzenek olarak düşünülebilir. Örneğin fare kapanı, bir insan için fareyi yakalayan bir vekildir ve farenin peyniri yemesiyle birlikte fareyi yakalar. Buradaki peynir yenmesi koşul ve farenin yakalanması fiil olarak düşünülebilir. Bazı refleks ajanlarında durum takibi de yapılabilir.  Örneğin fare kapanı misalinde olduğu gibi kapanın kurulu olma durumu, kapanın fareyi yakalamış  olma durumu gibi durumlar ayrı ayrı tahlil edilebilir.</p>
<p>Model Bazlı Refleks etkenler</p>
<p>Bu tip ajanlarda (etkenlerde) ise içinde çalışılan ortam modellenir. Yani ajan kendi yapısına göre ortamı anlamaya ve bir modelini kendi hafızasında tutmaya çalışır. Bu ajanlar modeldeki durumlara göre davranış sergilerler. Yani bir önceki tipte olan refleks ajanlarının ortamdan aldıkları doğrudan koşullarından farklı olarak bu ajanların modellerinde bazı refleksler tanımlıdır.</p>
<p>Hedef Güdümlü Vekiller</p>
<p>Bu vekiller ise belirli bir hedefe ulaşmak için bir dizi şart-fiil gerçekleştirirler. Basit bir durum-geçiş diyagramı (state transition diagram) olarak düşünülebilecek yapılarına göre, ortamı algılayarak mevcut yapılarındaki bir duruma benzetir ve bu durumu ulaşmak istedikleri hedefe en uygun şekilde eylemlerle değiştirmeye çalışır.</p>
<p>Çıkar Amaçlı Vekiller</p>
<p>Hedef amaçlı vekillerden farklı olarak, durumlar arasındaki geçişin oransal olması durumudur. Yani hedef güdümlü ajanlarda bir durumdan her zaman diğer duruma geçiş hedeflenir. Çıkar amaçlı vekillerde bundan farklı olarak oransal bir fonksiyon kullanılması söz konusudur. Bu fonksiyona çıkar fonksiyonu ( fayda fonksiyonu, utility function) ismi verilir.</p>
<p>Öğrenen Etkenler</p>
<p>Bu etken tipinde, ortamda yapılan bazı eylemlerin beklenen sonuca nasıl hizmet ettiğine göre yeni kurallar tanımlanır. Ajanın çalıştığı ortamın bilinmemesi halinde kullanılışlıdırlar.  Kendi kurallarını ve durum makinelerini oluşturabilir veya değiştirebilirler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2010/02/15/zeki-vekiller-akilli-ajanlar-intelligent-agents-zeki-etmenler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mere Paradoksu (Mere’s Paradox)</title>
		<link>http://www.bilgisayarkavramlari.com/2009/12/29/mere-paradoksu-mere%e2%80%99s-paradox/</link>
		<comments>http://www.bilgisayarkavramlari.com/2009/12/29/mere-paradoksu-mere%e2%80%99s-paradox/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 23:55:45 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[bilgisayar felsefesi]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2009/12/29/mere-paradoksu-mere%e2%80%99s-paradox/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Olasılık teorisinde kullanılan ve bir toplumun nüfusu ve yaşam standartları arasında bir çelişki oluşturan paradokstur. Paradoksun tanımında, bir toplumun refah seviyesinin yaşamaya yetecek kadar olması (yani olabilecek en düşük seviyede olması) ve nüfusunun azami seviyede olması (olabilecek en çok sayıda olması), topluluğun az nüfusa ve yüksek refah seviyesine sahip olmasına [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Olasılık teorisinde kullanılan ve bir toplumun nüfusu ve yaşam standartları arasında bir çelişki oluşturan paradokstur. Paradoksun tanımında, bir toplumun refah seviyesinin yaşamaya yetecek kadar olması (yani olabilecek en düşük seviyede olması) ve nüfusunun azami seviyede olması (olabilecek en çok sayıda olması), topluluğun az nüfusa ve yüksek refah seviyesine sahip olmasına göre tercih edilir.</p>
<p>Kısaca kalabalık ama kalitesiz bir nüfus, az ama müreffeh bir nüfusa yeğ tutulur.</p>
<p>Paradoksu görsel olarak ifade etmek gerekirse, mere aşağıdaki şekilde iki çizelgeden yararlanır:</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/122809_2355_MereParadok1.png" alt="" /></p>
<p>Yukarıdaki şekilde solda gösterilen (a), Amerika kıtası keşfedilmeden önce, Amerikan yerlilerinin ve avrupadaki insanların ayrı ayrı mutluluk oranlarıdır. Yani Amerikan yerlileri, avrupadaki insanlara göre çok daha mutludurlar.</p>
<p>Şeklin sağ tarafında gösterilen (b) çubuklar ise, amerikanın keşfinden sonra ulaşılan ortak mutluluk seviyesidir. Buna göre amerikadaki mutluluk azalmış ve avrupadaki mutluluk artmış ve daha büyük bir topluluğa ulaşılırken Amerikan halkı daha mutsuz olmuştur.</p>
<p>Mere paradoksu tam bu noktada devreye girer ve sonuçta ulaşılan sağ şekildeki toplam insanların ortalama mutluluğunun sol şekildekine göre daha yüksek olduğunu gösterir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2009/12/29/mere-paradoksu-mere%e2%80%99s-paradox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Güvercin Yuvası Kaidesi (Pigeonhole Principle)</title>
		<link>http://www.bilgisayarkavramlari.com/2009/12/10/guvercin-yuvasi-kaidesi-pigeonhole-principle/</link>
		<comments>http://www.bilgisayarkavramlari.com/2009/12/10/guvercin-yuvasi-kaidesi-pigeonhole-principle/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 03:15:17 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Matematiği]]></category>
		<category><![CDATA[algoritma analizi (teory of algorithms)]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2009/12/10/guvercin-yuvasi-kaidesi-pigeonhole-principle/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimleri de dahil olmak üzere pek çok matematik temelli bilim ve mühendislik alanında kullanılan oldukça basit bir umdedir. İsmini güvercin yuvalarından alan bu kaideye göre yuva sayısından fazla güvercin varsa, ve bütün güvercinler bir yuvaya girecekse, en az bir yuvaya birden fazla güvercin girmek zorundadır. Bu durumu sembollerle göstermemiz [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimleri de dahil olmak üzere pek çok matematik temelli bilim ve mühendislik alanında kullanılan oldukça basit bir umdedir. İsmini güvercin yuvalarından alan bu kaideye göre yuva sayısından fazla güvercin varsa, ve bütün güvercinler bir yuvaya girecekse, en az bir yuvaya birden fazla güvercin girmek zorundadır.</p>
<p>Bu durumu sembollerle göstermemiz gerekirse n tane yuva ve m tane güvercin için m &gt; n durumunda en az bir yuvada birden fazla güvercin bulunmalıdır.</p>
<p>Bilgisayar bilimlerinde çok sayıda sonsuz küme ile uğraşırken oldukça kullanışlı olan bu kaide, örneğin <a href="http://www.bilgisayarkavramlari.com/2008/05/26/ozetleme-fonksiyonlari-hash-function/">özetleme fonksiyonlarında (hashing function)</a> bir çakışma (collision) ihtimalinin hesaplanmasında ya da kayıpsız sıkıştırma algoritmasının (lossless compression algorithm) istatistiksel analizinde kullanılabilir.</p>
<p><strong>Örnek:</strong> N adet pozitif tam sayı arasında en az iki sayının farkı N-1&#8242;e tam bölünebilir.</p>
<p>Yukarıdaki iddiayı (hipotez) güvercin yuvası prensibi ile ispatlayalım. Öncelikle N adet tam sayımız olduğunu biliyoruz. Bu sayılara a<sub>1</sub>, a<sub>2</sub>, &#8230;, a<sub>N</sub> diyelim ve herhangi bir a<sub>i</sub> sayısı için N-1bölümünden kalan değerini r<sub>i</sub> diyelim. Yani r<sub>i</sub> = a<sub>i</sub> mod(N-1) olsun.</p>
<p>Şimdi güvercin yuvası prensibini kullanıyoruz ve diyoruz ki elimizde en fazla N-1 tane farklı kalan değeri olabilir. Yani r<sub>i</sub> değerinden en fazla N-1 tane olabilir. Sebebi ise basit, mod(N-1) içinde en fazla N-1 farklı sayı olabilir. Peki elimizde kaç sayı var ? N sayı. Dolayısıyla en az iki sayının bölümünden kalan değer aynı olacaktır. Diğer bir değişle N farklı sayının N-1 farklı kalana bölünmesi durumunda en az iki sayı aynı kalan sahip olacaktır. Bu sayıların farkı da aynı kalana sahip olacağından iddiamızı ispatlamış oluruz.</p>
<p><strong>Örnek:</strong> N pozitif tam sayı için, sayıların bir kısmının yada tamamının toplamı N ile kalansız bölünebilir.</p>
<p>Bu iddianın ispatında da sayıları matematiksel olarak modelleyelim. Öncelikle toplamları b ile ifade edersek, b<sub>1</sub> = (a<sub>1</sub>) mod(N), b<sub>2</sub> =(a<sub>1</sub> + a<sub>2</sub>) mod(N), b<sub>3</sub> = (a<sub>1</sub>+a<sub>2</sub>+a<sub>3</sub>) mod(N), &#8230;, b<sub>N</sub> = (a<sub>1</sub> + &#8230; + a<sub>N</sub>) mod(N) olarak göstermek mümkündür. Şayet sayılardan birisi 0 ise, yani b değerlerinden birisinin 0 olduğunu bulabiliyorsak, bu durumda zaten ispat yapılmış olur. Çünkü iddiamızda N ile kalansız bölünebileceğinden bahsediyorduk.</p>
<p>Şayet sayılardan birisi 0 değilse bu durumda toplamları elde ettiğimiz sayıların seçiminde a<sub>1</sub> &#8216;den başlayarak a<sub>i</sub> gibi bir sayıya kadar olanları almak yerine (a<sub>i+1</sub> + &#8230; + a<sub>j</sub>) mod(N) = 0, olduğunu gösterebiliriz.</p>
<p>Gerçekten de mod N işlemi sonucunda N-1 farklı sayı çıkacağını biliyoruz. Elimizde N sayı bulunduğunu düşünürsek o zaman yukarıdaki gösterime göre en az iki tane b değeri aynı olmalıdır. Örneğin bu değerler   b<sub>i</sub> = b<sub>j</sub> olsun ve i &lt; j olduğunu kabul edelim. Bu durumda (a<sub>i+1</sub> + &#8230; + a<sub>j</sub>) mod(N) = 0 olduğu gösterilmiş olur.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2009/12/10/guvercin-yuvasi-kaidesi-pigeonhole-principle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Satrançta Büyük Usta Problemi</title>
		<link>http://www.bilgisayarkavramlari.com/2009/09/15/satrancta-buyuk-usta-problemi/</link>
		<comments>http://www.bilgisayarkavramlari.com/2009/09/15/satrancta-buyuk-usta-problemi/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 14:28:58 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Veri Güvenliği(Cryptography)]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2009/09/15/satrancta-buyuk-usta-problemi/</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özellikle veri güvenliği konusunda kullanılan sıfır bilgi ispatı (zero knowledge proof) örneklerinden birisidir. Orijinal ismi chess grandmaster problem olarak geçer. Problemi basitçe şu şekilde tanımlayabiliriz. Bir gün satrancı hiç bilmeyen (veya büyük usta seviyesinde bilmeyen) bir oyuncu kalkıp size bir büyük ustayı yeneceğini veya en azından beraber kalacağını [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Bilgisayar bilimlerinde özellikle veri güvenliği konusunda kullanılan <a href="http://www.bilgisayarkavramlari.com/2009/06/22/sifir-bilgi-ispati-zero-knowledge-proof/">sıfır bilgi ispatı (zero knowledge proof)</a> örneklerinden birisidir.  Orijinal ismi chess grandmaster problem olarak geçer.</p>
<p>Problemi basitçe şu şekilde tanımlayabiliriz. Bir gün satrancı hiç bilmeyen (veya büyük usta seviyesinde bilmeyen) bir oyuncu kalkıp size bir büyük ustayı yeneceğini veya en azından beraber kalacağını söylerse bu inanması oldukça güç bir durum olur.</p>
<p>Bu yazı şadi evren şeker tarafından yazılmış ve bilgisayarkavramlari.com sitesinde yayınlanmıştır. Bu içeriğin kopyalanması veya farklı bir sitede yayınlanması hırsızlıktır ve telif hakları yasası gereği suçtur.</p>
<p>Ancak bu iddia aslında mümkündür. Burada iddiada bulunan kişi bir kurnazlık yapıp kaç maç yapacağını söylememiştir. Örneğin tek maç oynayıp yeneceğini iddia etseydi bunun imkansız olduğunu söylemekte serbesttiniz ancak maç sayısı belirsiz olan bu iddiada, iddia sahibi kişi aynı anda iki büyük usta ile oynayarak en azından beraberliği garantileyebilir.</p>
<p><img src="http://www.bilgisayarkavramlari.com/wp-content/uploads/2009/09/091509-1428-satrantabyk1.png" alt="" /></p>
<p>Yukarıdaki şekilde görüldüğü üzere satrancı hiç bilmeyen acemi oyuncumuz birinci ustanın yaptığı hamleleri ikinci ustayla oynadığı oyunda tekrar ederek ve ikinci ustanın hamlelerini de birinci ustanın maçında tekrar ederek aslında iki büyük ustanın karşılıklı oynamasına aracılık etmiş olur. İhtimalleri değerlendirecek olursak</p>
<ul>
<li>Maçı kaybedip 2. Maçı kazanabilir</li>
<li>Maçı kaybedip 1.maçı kazanabilir</li>
<li>Maçlar berabere bitebilir</li>
</ul>
<p>Her üç durumda da satrancı bilmeyen acemi oyuncu iddiasını kazanmış olur.</p>
<p>Yukarıdaki örnek bir sıfır bilgi ispatıdır ve <a href="http://www.bilgisayarkavramlari.com/2009/09/10/dolev-yao-saldirgan-modeli/">dolev-yao</a> veya <a href="http://www.bilgisayarkavramlari.com/2009/08/25/ortadaki-kisi-saldirisi-man-in-middle-attack/">man in middle (ortadaki adam saldırısı)</a> gibi saldırı modellerine örnek teşkil edebilir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2009/09/15/satrancta-buyuk-usta-problemi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Matematiksel Tümevarımın ikinci Teoremi (Second principle of mathematical induction)</title>
		<link>http://www.bilgisayarkavramlari.com/2009/07/21/matematiksel-tumevarimin-ikinci-teoremi-second-principle-of-mathematical-induction/</link>
		<comments>http://www.bilgisayarkavramlari.com/2009/07/21/matematiksel-tumevarimin-ikinci-teoremi-second-principle-of-mathematical-induction/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 09:43:14 +0000</pubDate>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
				<category><![CDATA[Bilgisayar Matematiği]]></category>
		<category><![CDATA[bilgisayar felsefesi]]></category>

		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/?p=2888</guid>
		<description><![CDATA[Yazan : Şadi Evren ŞEKER Temel olarak matematiksel tümevarımın kullandığı yaklaşıma benzer. Bir farkı ispatı bir seri veya seri üreten bir fonksiyon üzerinden değil de ayrı ayrı örnekler üzerine bina etmesidir.  Yani matematiksel tümevarım yönteminde aşağıdaki şekilde bir yazım mümkündür: Burada dikkat edilirse sayıların belirli bir üretici fonksiyondan çıkması ve sonucun bir fonksiyonda toparlanabilmesi hedeflenir. [...]]]></description>
			<content:encoded><![CDATA[<p>Yazan : Şadi Evren ŞEKER</p>
<p>Temel olarak matematiksel tümevarımın kullandığı yaklaşıma benzer. Bir farkı ispatı bir seri veya seri üreten bir fonksiyon üzerinden değil de ayrı ayrı örnekler üzerine bina etmesidir.  Yani <a href="http://www.bilgisayarkavramlari.com/2009/07/21/matematiksel-tumevarim-teoremi-mathematical-induction-principle/">matematiksel tümevarım yönteminde</a> aşağıdaki şekilde bir yazım mümkündür:</p>
<p><img class="alignnone size-full wp-image-2889" title="istikra" src="http://www.bilgisayarkavramlari.com/wp-content/uploads/2009/07/istikra.jpg" alt="istikra" width="126" height="67" /></p>
<p>Burada dikkat edilirse sayıların belirli bir üretici fonksiyondan çıkması ve sonucun bir fonksiyonda toparlanabilmesi hedeflenir. Dolayısıyla toplamın bir önceki terimi veya bir sonraki terimi bir fonksiyondan çıkar. Ancak bunun mümkün olmadığı durumlarda da tüme varım kullanılabilir.</p>
<p>Bu durumda ispat için aslında ispatın istendiği n sayının tamamının ispatlanması ve doğru olduğunun gösterilmesi gerekir. Diğer bir anlamda aşağıdaki şekilde n&#8217;e kadar olan bütün terimler için ispat gerekir:</p>
<p>P(1) Λ P(2) Λ&#8230; Λ P(n)</p>
<p>Bu terimlerin hepsinin doğru olmasının yanında şayet P(n+1)&#8217;inde doğru olduğunu gösterebilirsek bütün sayılar için doğru olduğunu ispatlamış oluruz.</p>
<p>Bu ikinci teorem kapsamında kullanacağımız yöntem öncelikle n sayı için doğruluğunun ispatıdır. Ve bu n sayı için ispat sırasında k gibi 1 &lt;k &lt;n sayısını alıp bu kısmı ispatlamaya çalışıyoruz.</p>
<p><strong>Örnek</strong></p>
<p>Örneğin bütün tam sayıların asal sayıların çarpımı şeklinde yazılabildiğini ispatlayalım. Yani n sayısı için n = a<sub>1</sub> a<sub>2</sub> &#8230; a<sub>k</sub> şeklinde k tane asal sayının çarpımı olduğunu kabul edersek bu eşitliğin doğruluğunu ispatlamaya çalışalım.</p>
<p>Başlangıç adımı (basis step) olarak en küçük asal sayı olan 2&#8242;yi alırsak, 2 sayısının yine kendisine eşit tek çarpanı vardır ve <a href="http://www.bilgisayarkavramlari.com/tag/kaziye/">kaziyemizi (önermemizi)</a> bozmaz.</p>
<p>İstikra adımı (inductive step) için P(n+1) durumunun doğruluğunu ispatlamamız gerekir. Burada iki ihtimal var denilebilir:</p>
<p>n+1 asal bir sayıdır. Bu durumda asal sayıların çarpımı olarak gösterilebilir tezimizi doğrular çünkü tek çarpanı vardır o da kendisidir.</p>
<p>n+1 asal bir sayı değildir. Bu durumda n+1 iki çarpan şeklinde yazılabilir (hatta bu çarpanlar en fazla eşit olabileceği (ve n+1 terimi bir kare terim (bir sayının karesi) olabileceği için ) 2 ≤ a ≤ b &lt; n+1 şeklinde yazmak da doğrudur)</p>
<p>şayet n+1 asal değilse ve</p>
<p>n+1 = ab</p>
<p>şeklinde iki sayının çarpımı olarak yazılabiliyorsa bu durumda</p>
<p>a veya b için de yukarıdaki şartlar doğrudur. Yani a veya b de birer asal sayıdır veya iki farklı sayının çarpımı olarak yazılabilir. Bu durum bütün sayılar çarpımlarına ayrılana kadar doğrudur.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bilgisayarkavramlari.com/2009/07/21/matematiksel-tumevarimin-ikinci-teoremi-second-principle-of-mathematical-induction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
