Mantıksal Programlama Nedir?

Mantıksal programlama, programcının bilgisayara matematiksel bir mantık kullanarak, örneğin bir matematiksel algoritma kullanarak nasıl karar vereceğine ilişkin talimatlar vermesi gereken bir bilgisayar programlama türüdür. Bilgisayar programları, bilgisayara ne yapmaları gerektiğini söyleyen koddan oluşur. Ancak nihayetinde bilgisayar nasıl devam edeceğine dair bir karar vermesi gereken bir durumla karşılaşacak ve bunun nasıl yapılacağına dair hiçbir bilgi olmadan, mevcut işlevini tamamlayamadı. Mantıksal programlama bu tür kararlarla ilgilenir ve bilgisayara talimatlar verir, böylece belirli bir duruma en iyi nasıl yanıt verileceği konusunda "mantıklı" bir karar verebilir. Mantık programlamasının çalışması için, kodu yazan programcının ifadelerinin mantıklı ve doğru olmasını sağlaması gerekir, bu nedenle mantıklıdır ve teorisyen olarak bilinen bir bilgisayar programının, programcının ifadelerinde karşılaştığı ifadelere dayanarak karar vermesi gerekir. kodu.

Bir teorem-prover teoremleri olarak bilinen matematiksel ifadeleri çözmek için tasarlanmış bir bilgisayar programı ifade eder. Teoremler önceki ifadelere dayanarak doğru olduğu gösterilen ifadelerdir. Mantıksal programlamada, teorem-prover, bilgisayar programcısı tarafından oluşturulan sonuçlara varmak için oluşturulan ifadelerle birlikte çalışır. Örneğin, kod A'nın B'ye ve B'ye eşit olduğunu belirtirse, teorem-prover, A'nın C'ye eşit olması gerektiği gibi mantıklı bir sonuca varır. A'nın C'ye eşit olduğunu, çünkü bilgisayar programının bu sonucu teorem-prover ve programcının orjinal ifadesinde kod kullanarak çizmesi gerekir.

Teoride, mantıksal programlamanın çalışması için, programcının sadece ifadelerinin doğru olmasını sağlaması gerekir ve teorem-prover'in yaratıcısının programın ifadeleri okumasını ve bunlara dayanarak en verimli kararları vermesini sağlamalıdır. Verimli bir karar verme yeteneği "mantıksal olarak" çalışan bir bilgisayar olarak adlandırılır. Gerçekte, iki çalışma alanı birbiriyle örtüşür ve mantıksal programlama yapanlar genellikle teorem-prover'ın istedikleri sonuçları elde etmek için nasıl çalıştığına dayanarak kodu değiştirmek ve değiştirmek zorunda kalırlar. Belli bir kararın nasıl verileceğine dair doğru ifadelerin basitçe verilmesi, bilgisayarın doğru işlevi alması için yeterli olmayabilir ve programcının kodunu test etmesi ve buna göre ayarlamalar yapması gerekir.

Mantıksal programlamanın çalışması için, aynı zamanda geriye doğru akıl yürütmeye de dayanır. Geriye dönük akıl yürütmede program, bir dizi veriye bakarak ve daha gelişmiş sonuçlara ulaşmak için bilinen genel ifadelerden çalışarak sonuca varır. Program iki bilginin doğru olduğunu biliyor olabilir ve bu iki bilginin doğru olduğundan, üçüncü bir bilginin de doğru olduğu anlamına gelir. Bu sürece verilen bilgiye dayanarak mantıklı bir sonuca ulaşana kadar devam eder. Çalışma şekli nedeniyle, mantıksal programlama, tanımlayıcı temsil dili üzerine kuruludur, yani program, bilgisayara ne yapması gerektiğini söyler, ancak istenen prosedürü gerçekleştirmenin en mantıklı ya da etkili yolunu belirlemek için teoremi kanıtlayana bırakır.