इस समस्या को रैखिक प्रोग्रामिंग का उपयोग करके बहुपद समय में हल किया जा सकता है , और यह वास्तव में किसी भी आंशिक आदेश (एस, ले) के लिए सच है (S,≤)। वैसे, हम इंडक्शन द्वारा साबित कर सकते हैं कि किसी भी परिमित आंशिक ऑर्डर सेट (S,≤) , वहाँ एक परिमित सेट S′⊆N और एक bijection f:S→S′ , जैसे कि सभी s1,s2∈S,s1≤s2⇔f(s1)|f(s2) ।
Let \ mathcal {C} SC में श्रृंखलाओं द्वारा गठित सेट हो । याद दिलाना है कि सी एक है श्रृंखला सभी के लिए iff 'वी, वी में सी , वी \ le वी' या वी '\ le वीSCv,v′Cv≤v′v′≤v
अब प्रत्येक लिए एक बूलियन वेरिएबल बनाएं , और प्रत्येक चेन लिए बूलियन वेरिएबल । हम अपनी समस्या के लिए निम्न रेखीय कार्यक्रम लिख सकते हैं :
xvv∈SyCC(P)
Max∑v∈Sxvsubject to∑v∈Cxv≤1,∀C∈Cxv∈{0,1},v∈S
और इसका दोहरा :(D)
Min∑C∈CyCsubject to∑C:v∈CyC≥1,∀v∈SyC∈{0,1},C∈C
फिर जंजीरों द्वारा निर्धारित आदेश के न्यूनतम कवर को खोजने की समस्या हमारी समस्या का दोहरा है। दिलवर्थ के प्रमेय में कहा गया है कि
एक एंटीचिन ए मौजूद है, और एक परिवार के क्रम में विभाजन का P, श्रृंखलाओं की संख्या, जैसे कि विभाजन में श्रृंखलाओं की संख्या A की कार्डिनलिटी के बराबर होती है
जिसका अर्थ है कि इन दो समस्याओं का इष्टतम समाधान मेल खाता है:Opt(P)=Opt(D)
चलो ( resp। ) की छूट हो ( resp। ) यानी एक ही रैखिक कार्यक्रम है, जहां सभी की कमी ( resp। ) ने ले ली है ( resp। )। चलो और उनके इष्टतम समाधान हो। चूंकि हमारे पास है:
और कमजोर द्वैत प्रमेय उस(P∗) (D∗)(P) (D)xv∈{0,1} yC∈{0,1}xv∈[0,1] yC∈[0,1]Opt(P∗)Opt(D∗){0,1}⊆[0,1]
Opt(P)≤Opt(P∗) and Opt(D∗)≤Opt(D)
Opt(P∗)≤Opt(D∗)फिर हमारे पास सब कुछ एक साथ रखकर:
Opt(P)=Opt(P∗)=Opt(D∗)=Opt(D)
फिर, एलीपोसिड विधि का उपयोग करके , हम बहुपद समय में ( ) की गणना कर सकते हैं । बाधाओं की एक घातीय संख्या है, लेकिन एक बहुपद समय जुदाई ओरेकल मौजूद है। वास्तव में एक समाधान दिया गया है , हम सभी जोड़ों को गणना कर सकते हैं और जांच सकते हैं कि या है या नहीं , और इसलिए बहुपदीय समय में निर्णय लेते हैं कि क्या संभव है या अन्यथा श्रृंखला से जुड़ी बाधाएं का उल्लंघन किया गया है।Opt(P∗)=Opt(P)Xs1,s2∈Xs1≤s2s2≤s1X{v1,v2}