लेन-देन तर्क: Difference between revisions
(Created page with "लेन-देन तर्क विधेय तर्क का एक विस्तार है जो तर्क कार्यक्रमों और [...") |
(TEXT) |
||
Line 1: | Line 1: | ||
लेन-देन तर्क [[विधेय तर्क]] का एक विस्तार है जो [[तर्क कार्यक्रम]] | लेन-देन तर्क [[विधेय तर्क|निर्धारक तर्क]] का एक विस्तार है जो [[तर्क कार्यक्रम|तर्क क्रमादेश]] और [[डेटाबेस]] में स्थिति परिवर्तन की परिघटना के लिए एक स्वच्छ और घोषणात्मक प्रकार से वर्णन करता है। यह विस्तार विशेष रूप से सरल कार्यों को सम्मिश्र लेनदेन में संयोजित करने और उनके निष्पादन पर नियंत्रण प्रदान करने के लिए प्रारुप किए गए संयोजनों को जोड़ता है। तर्क में एक प्राकृतिक [[मॉडल सिद्धांत|निदर्श सिद्धांत]] और एक ठोस और पूर्ण प्रमाण सिद्धांत है। लेन-देन तर्क में एक [[हॉर्न क्लॉज]] उपसमुच्चय है, जिसमें एक प्रक्रियात्मक और साथ ही एक घोषणात्मक शब्दार्थ है। तर्क की महत्वपूर्ण विशेषताओं में काल्पनिक और प्रतिबद्ध अद्यतन, लेन-देन निष्पादन पर गतिशील बाधाएँ, अनिर्धारिता और अधिकांश अद्यतन सम्मलित हैं। इस तरह, लेन-देन तर्क कई अतार्किक घटनाओं को स्पष्ट रूप से पकड़ने में सक्षम है, जिसमें कृत्रिम बुद्धि में [[प्रक्रियात्मक ज्ञान]], [[सक्रिय डेटाबेस]] और [[वस्तु डेटाबेस]] में अतिरिक्त प्रभाव के प्रकार सम्मलित हैं। | ||
लेन-देन तर्क मूल रूप से | लेन-देन तर्क मूल रूप से [http://www.cs.toronto.edu/~bonner/ एंथोनी बोनर] और [http://www.cs.stoneybrook.edu/~kifer/ माइकल किफ़र] द्वारा प्रस्तावित किया गया था <ref name="tr-iclp1993">A.J. Bonner and M. Kifer (1993), ''Transaction Logic Programming'', International Conference on Logic Programming (ICLP), 1993.</ref>और बाद में और अधिक विस्तार में वर्णित <ref>A.J. Bonner and M. Kifer (1994), ''An Overview of Transaction Logic'', Theoretical Computer Science, 133:2, 1994.</ref> किया गया था।<ref>A.J. Bonner and M. Kifer (1998), [http://www.cs.sunysb.edu/~kifer/TechReports/tr-chomicki.pdf ''Logic Programming for Database Transactions''] in Logics for Databases and Information Systems, J. Chomicki and G. Saake (eds.), Kluwer Academic Publ., 1998.</ref> सबसे व्यापक विवरण में दिखाई देता है।<ref>A.J. Bonner and M. Kifer (1995), [http://www.cs.sunysb.edu/~kifer/TechReports/transaction-logic.pdf ''Transaction Logic Programming (or A Logic of Declarative and Procedural Knowledge)'']. Technical Report CSRI-323, November 1995, Computer Science Research Institute, University of Toronto.</ref> | ||
बाद के वर्षों में, लेन-देन तर्क को विभिन्न | |||
2013 में, लेन-देन तर्क पर मूल | बाद के वर्षों में, लेन-देन तर्क को विभिन्न प्रकार से विस्तारित किया गया, जिसमें समवर्ती,<ref name="concurrentTR">A.J. Bonner and M. Kifer (1996), [http://www.cs.sunysb.edu/~kifer/TechReports/concurrent-trans-logic.pdf ''Concurrency and communication in Transaction Logic''], Joint Intl. Conference and Symposium on Logic Programming, Bonn, Germany, September 1996</ref> असफल तर्क,<ref>P. Fodor and M. Kifer (2011), [http://drops.dagstuhl.de/opus/volltexte/2011/3159/ ''Transaction Logic with Defaults and Argumentation Theories'']. In Technical communications of the 27th International Conference on Logic Programming (ICLP), July 2011.</ref> आंशिक रूप से परिभाषित क्रियाएं,<ref>M. Rezk and M. Kifer (2012), [https://link.springer.com/article/10.1007%2Fs13740-012-0007-8 ''Transaction Logic with Partially Defined Actions'']. Journal on Data Semantics, August 2012, vol. 1, no. 2, Springer.</ref> और अन्य विशेषताएं सम्मलित हैं।<ref>H. Davulcu, M. Kifer and I.V. Ramakrishnan (2004), [http://www.www2004.org/proceedings/docs/2p144.pdf CTR-S: A Logic for Specifying Contracts in Semantic Web Services''<nowiki/>'']. Proceedings of the 13-th World Wide Web Conference (WWW2004), May 2004.</ref><ref>P. Fodor and M. Kifer (2010), [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.184.6968 ''Tabling for Transaction Logic'']. In Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming (PPDP), July 2010.</ref> | ||
2013 में, लेन-देन तर्क पर मूल लेख <ref name="tr-iclp1993" />ने [https://www.cs.nmsu] [[तर्क प्रोग्रामिंग के लिए एसोसिएशन|तर्क क्रमादेशन के लिए संयोजन]] के 20-वर्षीय समय का परीक्षण पुरस्कार जीता है, जो पिछले 20 वर्षों में [http://www.informatik ICLP 1993 सम्मेलन] की कार्यवाही से सबसे प्रभावशाली लेख है। | |||
== उदाहरण == | == उदाहरण == | ||
=== | === आरेख रंगना === | ||
यहाँ {{mono|tinsert}} लेन-देन सम्मिलन के प्राथमिक अद्यतन संचालन को दर्शाता है। संयोजक {{mono|⊗}} को | यहाँ {{mono|tinsert}} लेन-देन सम्मिलन के प्राथमिक अद्यतन संचालन को दर्शाता है। संयोजक {{mono|⊗}} को क्रमिक संयोजन कहा जाता है। | ||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
colorNode <- // color one node correctly | colorNode <- // color one node correctly | ||
Line 17: | Line 19: | ||
colorGraph <- colorNode ⊗ colorGraph. | colorGraph <- colorNode ⊗ colorGraph. | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== पिरामिड स्टैकिंग === | === पिरामिड स्टैकिंग === | ||
प्राथमिक अद्यतन {{mono|tdelete}} | प्राथमिक अद्यतन {{mono|tdelete}} लेन देन संबंधी डिलीट संचालन का प्रतिनिधित्व करता है। | ||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
stack(N,X) <- N>0 ⊗ move(Y,X) ⊗ stack(N-1,Y). | stack(N,X) <- N>0 ⊗ move(Y,X) ⊗ stack(N-1,Y). | ||
Line 30: | Line 31: | ||
⊗ tinsert(on(X,Y)) ⊗ tdelete(clear(Y)). | ⊗ tinsert(on(X,Y)) ⊗ tdelete(clear(Y)). | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== काल्पनिक निष्पादन === | === काल्पनिक निष्पादन === | ||
यहाँ {{mono|<>}} संभावना का मोडल | यहाँ {{mono|<>}} संभावना का मोडल संचालक है: यदि {{mono|action1}} और {{mono|action2}} दोनों संभव हैं, तो {{mono|action1}} निष्पादित करें। अन्यथा, यदि केवल {{mono|action2}} संभव है, तो इसे निष्पादित करें। | ||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
execute <- <>action1 ⊗ <>action2 ⊗ action1. | execute <- <>action1 ⊗ <>action2 ⊗ action1. | ||
Line 39: | Line 39: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== भोजन दार्शनिक === | |||
=== भोजन | यहाँ {{mono|1={{!}} }} समवर्ती लेन-देन तर्क के समानांतर संयोजन का तार्किक संबंध है।<ref name="concurrentTR"/> | ||
यहाँ {{mono|1={{!}} }} समवर्ती लेन-देन तर्क के समानांतर संयोजन का तार्किक | |||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
diningPhilosophers <- phil(1) | phil(2) | phil(3) | phil(4). | diningPhilosophers <- phil(1) | phil(2) | phil(3) | phil(4). | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== कार्यान्वयन == | == कार्यान्वयन == | ||
लेन-देन तर्क के कई कार्यान्वयन | लेन-देन तर्क के कई कार्यान्वयन उपस्तिथ हैं: | ||
* मूल कार्यान्वयन।<ref>{{cite web |last= Hung |first= Samuel |date= 1996 |title= लेन-देन तर्क प्रोटोटाइप|publisher= University of Toronto, Department of Computer Science |url= http://www.cs.toronto.edu/~bonner/transaction-logic.html |access-date= 2021-05-10}}</ref> | * मूल कार्यान्वयन।<ref>{{cite web |last= Hung |first= Samuel |date= 1996 |title= लेन-देन तर्क प्रोटोटाइप|publisher= University of Toronto, Department of Computer Science |url= http://www.cs.toronto.edu/~bonner/transaction-logic.html |access-date= 2021-05-10}}</ref> | ||
* समवर्ती लेन-देन तर्क का कार्यान्वयन।<ref>{{cite web |last= Sleghel |first= Amalia F. |date= 2000 |title= समवर्ती लेनदेन तर्क प्रोटोटाइप|publisher= University of Toronto, Department of Computer Science |url= http://www.cs.toronto.edu/~bonner/ctr/index.html |access-date= 2021-05-10}}</ref> | * समवर्ती लेन-देन तर्क का कार्यान्वयन।<ref>{{cite web |last= Sleghel |first= Amalia F. |date= 2000 |title= समवर्ती लेनदेन तर्क प्रोटोटाइप|publisher= University of Toronto, Department of Computer Science |url= http://www.cs.toronto.edu/~bonner/ctr/index.html |access-date= 2021-05-10}}</ref> | ||
* | * लेन-देन तर्क [[ पेश |प्रस्तावित]] के साथ बढ़ाया गया हैं। [[फ्लोरा-2]] ज्ञान प्रतिनिधित्व और तर्क प्रणाली के भाग के रूप में लेनदेन तर्क का कार्यान्वयन भी सम्मलित किया गया है।<ref>{{cite web |title= Knowledge Representation & Reasoning with Flora-2 |publisher= Sourceforge.net |url= http://flora.sourceforge.net |access-date= 2021-05-10}}</ref> | ||
ये सभी कार्यान्वयन | ये सभी कार्यान्वयन मुक्त स्रोत हैं। | ||
== संदर्भ == | == संदर्भ == | ||
{{Reflist}} | {{Reflist}} | ||
== बाहरी संबंध == | == बाहरी संबंध == | ||
* [http://flora.sourceforge.net | * [http://flora.sourceforge.net फ्लोरा-2 वेब साइट], लेनदेन तर्क पर अतिरिक्त कागजात युक्त | ||
[[Category: तर्क प्रोग्रामिंग भाषाएँ]] [[Category: घोषणात्मक प्रोग्रामिंग भाषाएँ]] [[Category: ज्ञान निरूपण]] | [[Category: तर्क प्रोग्रामिंग भाषाएँ]] [[Category: घोषणात्मक प्रोग्रामिंग भाषाएँ]] [[Category: ज्ञान निरूपण]] | ||
Revision as of 11:19, 19 May 2023
लेन-देन तर्क निर्धारक तर्क का एक विस्तार है जो तर्क क्रमादेश और डेटाबेस में स्थिति परिवर्तन की परिघटना के लिए एक स्वच्छ और घोषणात्मक प्रकार से वर्णन करता है। यह विस्तार विशेष रूप से सरल कार्यों को सम्मिश्र लेनदेन में संयोजित करने और उनके निष्पादन पर नियंत्रण प्रदान करने के लिए प्रारुप किए गए संयोजनों को जोड़ता है। तर्क में एक प्राकृतिक निदर्श सिद्धांत और एक ठोस और पूर्ण प्रमाण सिद्धांत है। लेन-देन तर्क में एक हॉर्न क्लॉज उपसमुच्चय है, जिसमें एक प्रक्रियात्मक और साथ ही एक घोषणात्मक शब्दार्थ है। तर्क की महत्वपूर्ण विशेषताओं में काल्पनिक और प्रतिबद्ध अद्यतन, लेन-देन निष्पादन पर गतिशील बाधाएँ, अनिर्धारिता और अधिकांश अद्यतन सम्मलित हैं। इस तरह, लेन-देन तर्क कई अतार्किक घटनाओं को स्पष्ट रूप से पकड़ने में सक्षम है, जिसमें कृत्रिम बुद्धि में प्रक्रियात्मक ज्ञान, सक्रिय डेटाबेस और वस्तु डेटाबेस में अतिरिक्त प्रभाव के प्रकार सम्मलित हैं।
लेन-देन तर्क मूल रूप से एंथोनी बोनर और माइकल किफ़र द्वारा प्रस्तावित किया गया था [1]और बाद में और अधिक विस्तार में वर्णित [2] किया गया था।[3] सबसे व्यापक विवरण में दिखाई देता है।[4]
बाद के वर्षों में, लेन-देन तर्क को विभिन्न प्रकार से विस्तारित किया गया, जिसमें समवर्ती,[5] असफल तर्क,[6] आंशिक रूप से परिभाषित क्रियाएं,[7] और अन्य विशेषताएं सम्मलित हैं।[8][9]
2013 में, लेन-देन तर्क पर मूल लेख [1]ने [1] तर्क क्रमादेशन के लिए संयोजन के 20-वर्षीय समय का परीक्षण पुरस्कार जीता है, जो पिछले 20 वर्षों में ICLP 1993 सम्मेलन की कार्यवाही से सबसे प्रभावशाली लेख है।
उदाहरण
आरेख रंगना
यहाँ tinsert लेन-देन सम्मिलन के प्राथमिक अद्यतन संचालन को दर्शाता है। संयोजक ⊗ को क्रमिक संयोजन कहा जाता है।
colorNode <- // color one node correctly
node(N) ⊗ ¬ colored(N,_) ⊗ color(C)
⊗ ¬(adjacent(N,N2) ∧ colored(N2,C))
⊗ tinsert(colored(N,C)).
colorGraph <- ¬uncoloredNodesLeft.
colorGraph <- colorNode ⊗ colorGraph.
पिरामिड स्टैकिंग
प्राथमिक अद्यतन tdelete लेन देन संबंधी डिलीट संचालन का प्रतिनिधित्व करता है।
stack(N,X) <- N>0 ⊗ move(Y,X) ⊗ stack(N-1,Y).
stack(0,X).
move(X,Y) <- pickup(X) ⊗ putdown(X,Y).
pickup(X) <- clear(X) ⊗ on(X,Y) ⊗
⊗ tdelete(on(X,Y)) ⊗ tinsert(clear(Y)).
putdown(X,Y) <- wider(Y,X) ⊗ clear(Y)
⊗ tinsert(on(X,Y)) ⊗ tdelete(clear(Y)).
काल्पनिक निष्पादन
यहाँ <> संभावना का मोडल संचालक है: यदि action1 और action2 दोनों संभव हैं, तो action1 निष्पादित करें। अन्यथा, यदि केवल action2 संभव है, तो इसे निष्पादित करें।
execute <- <>action1 ⊗ <>action2 ⊗ action1.
execute <- ¬<>action1 ⊗ <>action2 ⊗ action2.
भोजन दार्शनिक
यहाँ | समवर्ती लेन-देन तर्क के समानांतर संयोजन का तार्किक संबंध है।[5]
diningPhilosophers <- phil(1) | phil(2) | phil(3) | phil(4).
कार्यान्वयन
लेन-देन तर्क के कई कार्यान्वयन उपस्तिथ हैं:
- मूल कार्यान्वयन।[10]
- समवर्ती लेन-देन तर्क का कार्यान्वयन।[11]
- लेन-देन तर्क प्रस्तावित के साथ बढ़ाया गया हैं। फ्लोरा-2 ज्ञान प्रतिनिधित्व और तर्क प्रणाली के भाग के रूप में लेनदेन तर्क का कार्यान्वयन भी सम्मलित किया गया है।[12]
ये सभी कार्यान्वयन मुक्त स्रोत हैं।
संदर्भ
- ↑ 1.0 1.1 A.J. Bonner and M. Kifer (1993), Transaction Logic Programming, International Conference on Logic Programming (ICLP), 1993.
- ↑ A.J. Bonner and M. Kifer (1994), An Overview of Transaction Logic, Theoretical Computer Science, 133:2, 1994.
- ↑ A.J. Bonner and M. Kifer (1998), Logic Programming for Database Transactions in Logics for Databases and Information Systems, J. Chomicki and G. Saake (eds.), Kluwer Academic Publ., 1998.
- ↑ A.J. Bonner and M. Kifer (1995), Transaction Logic Programming (or A Logic of Declarative and Procedural Knowledge). Technical Report CSRI-323, November 1995, Computer Science Research Institute, University of Toronto.
- ↑ 5.0 5.1 A.J. Bonner and M. Kifer (1996), Concurrency and communication in Transaction Logic, Joint Intl. Conference and Symposium on Logic Programming, Bonn, Germany, September 1996
- ↑ P. Fodor and M. Kifer (2011), Transaction Logic with Defaults and Argumentation Theories. In Technical communications of the 27th International Conference on Logic Programming (ICLP), July 2011.
- ↑ M. Rezk and M. Kifer (2012), Transaction Logic with Partially Defined Actions. Journal on Data Semantics, August 2012, vol. 1, no. 2, Springer.
- ↑ H. Davulcu, M. Kifer and I.V. Ramakrishnan (2004), CTR-S: A Logic for Specifying Contracts in Semantic Web Services. Proceedings of the 13-th World Wide Web Conference (WWW2004), May 2004.
- ↑ P. Fodor and M. Kifer (2010), Tabling for Transaction Logic. In Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming (PPDP), July 2010.
- ↑ Hung, Samuel (1996). "लेन-देन तर्क प्रोटोटाइप". University of Toronto, Department of Computer Science. Retrieved 2021-05-10.
- ↑ Sleghel, Amalia F. (2000). "समवर्ती लेनदेन तर्क प्रोटोटाइप". University of Toronto, Department of Computer Science. Retrieved 2021-05-10.
- ↑ "Knowledge Representation & Reasoning with Flora-2". Sourceforge.net. Retrieved 2021-05-10.
बाहरी संबंध
- फ्लोरा-2 वेब साइट, लेनदेन तर्क पर अतिरिक्त कागजात युक्त