7

स्वयं-गणित पंग्राम के लिए विकी आलेख बताता है कि उन्हें बाइनरी निर्णय आरेखों का उपयोग करके गणना की जाती है। मैं बीडीडी के बारे में पढ़ रहा हूं और मेरी समझ से आपको इसके लिए बीडीडी बनाने से पहले एक बूलियन फ़ंक्शन के रूप में कुछ समस्या का प्रतिनिधित्व करने की आवश्यकता है।मैं एक बूलियन फ़ंक्शन के रूप में एक आत्म-गणित पांग्राम का प्रतिनिधित्व कैसे कर सकता हूं?

मैं यह करने के बारे में कैसे जाउंगा?

मैं कुछ दिनों के लिए समस्या के बारे में सोच कर दिया गया है अब, और मैं बहुत आप एक सीधी एन्कोडिंग का उपयोग बूलियन फ़ंक्शन का इनपुट का प्रतिनिधित्व कर सकता है यकीन है:

10000 01010 01011 10101 ... 
16A's 10B's 11C's 21D's ... 
एक pangram शुरुआती के लिए

तो "सोलह ए, दस बी, ग्यारह सी, बीस डी डी", आप इसे 10000010100101110101 के रूप में प्रस्तुत कर सकते हैं ...

इसका मतलब यह होगा कि बूलियन फ़ंक्शन में 26 * 5 = 130 चर हैं, मानते हैं कि आप प्रतिबंधित हैं 32 घटनाओं के लिए एक चरित्र की अधिकतम आवृत्ति।

आउटपुट होना चाहिए कि प्रतिनिधित्व एक आत्म-गणित पंग्राम है या नहीं, यानी अगर वाक्य आवृत्तियों के अपने सेट का वर्णन करता है।

ऐसा करने के लिए, एक हैश तालिका (या कई) निश्चित रूप से रास्ते में आवश्यक होनी चाहिए।

तो अक्षर E के लिए, हैश तालिका शुरू कर सकते हैं:

one -> 1 
two -> 0 
three -> 2 
four -> 0 
five -> 1 
... 

कौन सा बाइनरी में, ऐसा दिखाई देगा:

1 -> 1 
10 -> 0 
11 -> 10 
100 -> 0 
101 -> 1 

ई हैश तालिका से सभी लुकअप का योग है ई के अनुरूप पांच इनपुट बिट्स के बराबर, तो स्वयं-गणना वाले पंग्राम का वह अनुभाग सही है। यदि सभी वर्ग सही हैं तो बूलियन फ़ंक्शन 1 उत्पन्न करना चाहिए, अन्यथा 0.

मुझे पूरा यकीन है कि मैं यह समझ सकता हूं कि बुलियन फ़ंक्शन का उपयोग करके अतिरिक्त कैसे किया जाए और कैसे जांचें कि दो संख्या बराबर हैं या नहीं। मुझे पता नहीं है कि एक बूलियन फ़ंक्शन के रूप में हैश तालिका का प्रतिनिधित्व करने के साथ कहां से शुरू करना है। साथ ही, सभी टुकड़ों को एक साथ जोड़ने से मुझे परेशान होने की संभावना है।

किसी भी विचार? विचार? सहयोग? मैं देखना चाहता हूं कि यह कहां जाता है।

अग्रिम धन्यवाद।

+1

में कुछ लीड हैं: http://www.fatrazie.com/EWpangram.html –

+1

यह वास्तव में एक दिलचस्प समस्या है, जिसे मैंने पिछले कुछ घंटों के बारे में सोचने का आनंद लिया है।व्यक्तिगत रूप से मैं कोशिश के साथ समस्या को हल करने और हल करने की बजाय कोशिश करता हूं और गणितीय रूप से इसे बुलियन कार्यों के साथ हल करता हूं। मैंने इस [लिंक] (http://scholar.google.com/scholar?q=pangram+search) पर उपलब्ध कुछ साहित्यों पर एक नज़र डाली है, और इन कागजात ने इसे और अधिक स्पष्ट रूप से हल करने के लिए रास्ता तय किया है मैं कर सकता था उम्मीद है कि मदद करता है, और बहुत ही रोचक विचारों के कुछ घंटों के लिए बहुत बहुत धन्यवाद। डेव – stormCloud

+1

वास्तव में बहुत दिलचस्प है। हो सकता है कि आप इस दस्तावेज़ को बाइनरी निर्णय आरेखों के बारे में उपयोगी पा सकें: http://www.voronkov.com/lics_doc.cgi?what=chapter&n=10 – cprogcr

उत्तर

1

जिस तरह से मैं इसे देखता हूं, बीडीडी का उपयोग, जैसा कि इस संदर्भ में उपयोग किया जाता है, केवल मूल्यांकन करने के लिए उपयोग की जाने वाली अभिव्यक्ति में हेरफेर करने में सहायता करने और सहायता करने का एक तरीका है, उदाहरण के लिए, यदि आपकी सजा स्वयं होने के लिए आवश्यकताओं को पूरा करती है -नुमेरेटिंग पंग्राम। उनको तरीकों से छेड़छाड़ करने के नियम हैं जो बूलियन बीजगणित में कथन में छेड़छाड़ करने वालों की तुलना में अवधारणात्मक रूप से आसान हैं, क्योंकि बूले के नोटेशन की तुलना में उस नोटेशन में उन्हें प्रतिनिधित्व करना आसान होता है, वैसे ही 8000 चर में बहुपद का सामना करना मुश्किल होता है किसी अन्य नोटेशन की तुलना में अपने सामान्य रूप में यह दर्शाता है कि यह कहां से आया था। कंप्यूटर एल्गोरिदम उन चारों में से किसी एक को छेड़छाड़ करने के लिए मौजूद हैं, इसलिए आपका सबसे अच्छा विकल्प शायद आपकी जरूरतों को देखने और अनुकूलित करने के लिए है। सहायक होने के लिए आपको this document मिल सकता है।

Google अतिरिक्त संसाधन खोजने में भी उपयोगी हो सकता है।