मान लीजिए मैं एक तथ्य से भर DB में कम से कम:कैसे डेटाबेस में सभी prolog नियमों को खोजने के लिए
fact1(A) :- !, A=ok.
fact2(B) :- !, B=ok.
मैं इस DB में सभी तथ्यों के माध्यम से कैसे की गणना कर सकते हैं? आदर्श रूप में मैं एक विधेय है कि मैं इस्तेमाल कर सकते हैं होगा:
?- all_rules(Head :- Tail).
Head=fact1(_G100),
Tail=(!, _G100=ok) ;
Head=fact2(_G101),
Tail=(!, _G101=ok)
....followed by all other predicates in other modules loaded...
मैं current_predicate/1 पाया, लेकिन मैं समझ नहीं क्या यह वास्तव में क्या कर रहा है ...
'मज़ेदार (पूर्वानुमान, नाम, धर्मार्थ)' – false
क्लॉज/2 पर विचार करें जो मैं ढूंढ रहा हूं! इस उदाहरण में, मुझे विश्वास है कि इसे क्लॉज (हेड, बॉडी) के साथ कॉल करना मुझे हेड = तथ्य (ए), बॉडी = (!, ए = ओके) – DaveEdelstein
@ फाल्स धन्यवाद, तय करेगा। – Kaarel