मैं एक ऐसा एप्लिकेशन बनाना चाहता हूं जो पहले ऑर्डर तर्क का उपयोग करके सरल तर्क कर सके। क्या कोई भी "इंजन" की सिफारिश कर सकता है जो अनियंत्रित एफओएल अभिव्यक्तियों को स्वीकार कर सकता है, और उन अभिव्यक्तियों की पूछताछ की अनुमति देता है (अधिमानतः पायथन के माध्यम से सुलभ)?पहला ऑर्डर लॉजिक इंजन
उत्तर
PyLog में Prolog वाक्य रचना:
PyLog पायथन में एक PROLOG इंजन सहित एक पहले के आदेश तर्क पुस्तकालय है।
पकाने की विधि 303,057: Pythologic - अजगर/http://code.activestate.com/recipes/303057/
जब तक आप पूरी तरह से करने के लिए है पहले क्रम तर्क (FOL) का उपयोग कर क्वेरी मत करो: प्रथम क्रम तर्क डिसाइडेबल नहीं है, लेकिन केवल अर्द्ध डिसाइडेबल, और इतने प्रश्नों अक्सर, अनिवार्य रूप से समाप्त नहीं होंगे।
Description logic अनिवार्य रूप से प्रथम क्रम तर्क का एक निर्णायक खंड है, इस तरह से सुधार किया गया है जो इकाई के वर्गों और उनके पारस्परिक संबंधों के बारे में बात करने के लिए अच्छा है। पाइथन में वर्णन तर्क के लिए कई इंजन हैं, उदाहरण के लिए ओडब्लूएल-डीएल के आधार पर seth।
यदि आप वास्तव में सुनिश्चित हैं कि आपको एफओएल की विशालता की आवश्यकता है, तो FLiP एक लायक है। मैंने इसका उपयोग नहीं किया है (वास्तव में पाइथन पर उत्सुक नहीं है, ईमानदार होने के लिए), लेकिन प्रोग्रामिंग भाषा में तर्क जांच करने के लिए यह एक अच्छा तरीका है।
ऐसा प्रतीत होता है कि न तो सेठ और न ही फ्लिप सक्रिय विकास में हैं। सेठ पैलेट का उपयोग करता है, जो अभी भी सक्रिय है, लेकिन मुझे सामान्य रूप से ओडब्लूएल-डीएल कारणों के लिए वास्तविक दुनिया के उपयोग पर बहुत कम दस्तावेज मिल रहा है। – Cerin
पायलोग और पायथोलॉजिक सुझावों के लिए धन्यवाद। हालांकि, मैं इनसे पहले ही परिचित हूं। मुझे स्पष्टीकरण देने की अनुमति दें। मैं गैर-खिलौने इंजन की तलाश में हूं। कुछ ऐसा जो स्केलेबल है, व्यापक रूप से उपयोग में है, और आसानी से डेटाबेस के साथ इंटरैक्ट करता है। इसे पाइथन में * कार्यान्वित * नहीं किया जाना चाहिए, केवल पायथन से ही सुलभ है। – Cerin