Кіріспе

3 бөлініс проблемасы - компьютерлік ғылымдағы NP толық проблема. Мәселе - берілген бүтін сандар көп жиынтығын барлық тең сомаға ие үштікке бөлуге бола ма, жоқ па, оны шешу. Нақтырақ айтқанда: Кірісі: n оң бүтін элементтерден тұратын S көп жиынтығы. Шарттар: S m үштікке, S1, S2, Sm, мұндағы n = 3m бөлінуі тиіс. Бұл үштік S-ті олардың ажыратылған және S-ті қамтитын мағынада бөледі. Түпкілікті мәнді есептеу үшін S-тің барлық элементтерінің қосындысын алып, m-ге бөлінеді. Шығыс: S-тің бөлінісі бар ма, жоқ па, барлық үштік үшін әрбір үштік элементтерінің қосындысы T-ге тең. 3-ті бөлу мәселесі S-тің әрбір бүтін саны T/4 мен T/2 арасында қатаң түрде болады деген шектеумен NP толық болып қалады.

Мысал

Жинақты төрт жиынтыққа бөлуге болады , олардың әрқайсысының сомасы T = 90 . Жинақты екі жиынтыққа бөлуге болады, олардың әрқайсысының сомасы T = 15 . (S-тегі әрбір бүтін сан T/4 мен T/2 арасында қатаң болады): , сондықтан m=2, және T=15. 3 бөлінісі бар (S-тегі әрбір бүтін сан T/4 мен T/2 арасында қатаң түрде болады): , сондықтан m=2, және T=15. Ондай шешім жоқ.

НП толықтығының жоғары деңгейі

3 бөлу мәселесі, тіпті S-тегі бүтін сандар n-дегі көпмүшемен шектелген кезде де NP толық болып қалады. Басқаша айтқанда, кіріс инстанциясындағы сандарды униарлық түрде бейнелеген кезде де мәселе NP толық болып қалады. яғни, 3 бөлінісі NP толық күшті мағынада немесе күшті NP толық. Бұл қасиет және жалпы 3 бөлінісі сандар табиғи түрде бірлікте бейнеленген көптеген азайтуларда пайдалы.

3-Бөлшектеу және Бөлшектеу

3 бөлу мәселесі, мақсат S-ті тең сомамен екі қосалқы жиынтыққа бөлу және мақсат S-ті тең сомамен k қосалқы жиынтыққа бөлу, мұндағы k - тұрақты параметр. 3 бөлінісінде мақсат - S-ті m = n/3 қосалқы жиынтықтарға бөлу, тек қосалқы жиынтықтардың белгіленген саны емес, тең сомамен. Бөліну 3 Бөлінуден "ең оңай": 3 Бөліну NP-ге қатты қиын болса, Бөліну NP-ге әлсіз қиын, ол сандар бірлік емес жүйеде кодталғанда ғана қиын, ал n-де экспоненциалдық мәнге ие болады.

Нұсқалар

Шектелмеген енгізу нұсқасында енгізулер кез келген бүтін сандар болуы мүмкін; шектелген енгізу нұсқасында енгізулер (T/4, T/2) болуы тиіс. Шектелген нұсқа шектеусіз нұсқа сияқты қиын: шектеусіз нұсқаның Su инстанциясын беріп, шектеусіз нұсқаның жаңа инстанциясын құрастыру }. Su-ның әрбір шешімі Sr-дің шешімімен сәйкес келеді, бірақ T орнына 7 қосындысы бар, және Sr-дің әрбір элементі, оның ішінде, белгілі бір кіріс нұсқасында, кіріс (T/4, T/2) болуы керек, сонымен қатар, олардың барлығы да белгілі бір бүтін сандар болуы керек. Бұл да шектеусіз нұсқа сияқты қиын. Шектелмеген шығыс нұсқасында m шығыс қосалқы жиынтықтарының көлемі кез келген болуы мүмкін, міндетті түрде 3 емес (бірақ олардың сомасы T бірдей болуы керек). Шектелген шығыс нұсқасын шектелмеген нұсқаға дейін азайтуға болады: шектелген нұсқаның Sr инстанциясын беріп, 3m элементтері mT-ға дейін жинақталады, шектелмеген нұсқаның жаңа инстанциясын } құрастырады, 3m элементтері 7mT-ға дейін жинақталады және мақсатты сомасы 7. Sr-дің әрбір ерітіндісі табиғи түрде Su-ның ерітіндісіне сәйкес келеді. Керісінше, Su-ның әрбір шешімінде, мақсатты сома 7 болғандықтан және әрбір элемент , әр жиынтықта дәл 3 элемент болуы керек, сондықтан ол Sr-дің шешіміне сәйкес келеді. ABC бөлу мәселесі (шулай уҡ сандық 3d сәйкестендіру деп аталады) - 3 бүтін санды S жиынының орнына әрқайсысында m бүтін санды A, B, C үш жиыны бар нұсқасы. Барлық жиынтықтардағы сандардың қосындысы m T. Мақсат m үштік құрастыру, олардың әрқайсысында A, B және C элементтері бар, әр үштіктің қосындысы T. 4 бөлу мәселесі - бұл S құрамында n = 4 бүтін сан бар нұсқа, барлық бүтін сандардың қосындысы m T, және мақсат оны m төрттікке бөлу, барлығы T қосындысымен. Әрбір бүтін сан T/5 мен T/3 арасында қатаң болады деп болжауға болады. Дәл осыған ұқсас, ABCD parititon - әрқайсысында 4 кіріс жиынтығы бар және әр төртбұрышты әр жиынтықтан бір элемент болуы керек 4 бөлімнің нұсқасы.

Дәлелдендіру

Грей мен Джонсон (1975) бастапқыда 3 өлшеміне сәйкес келетін 3 өлшемді азайту арқылы 3 бөлуді NP толық деп дәлелдеді. Грей мен Джонсонның (1979) классикалық нұсқасы NP толықтығын дәлелдеуді сипаттайды, 3 өлшемді сәйкестендіруден 4 бөлікке дейін 3 бөлікке дейін азайтады. Логикалық тұрғыдан алғанда, қысқартуды бірнеше қадамға бөлуге болады.

Қолданбалар

3-бөлімнің NP қаттылығы тікбұрышты қаптаудың, сондай-ақ Tetris және басқа да жұмбақтардың, сондай-ақ кейбір жұмыс кестелеу мәселелерін дәлелдеу үшін пайдаланылды.