Кіріспе

Графиктер теориясында, жарты жазықтықтағы график орналасуы – графиктерді кітапқа ендірудің жалпылама түрі, яғни бірдей шекаралық сызығы бар жарты жазықтықтар жиынтығына ендіру. Әдетте, графиктің төбелері осы шекаралық сызықта орналасады, бұл сызық омыртқа деп аталады, ал қабырғалары бір жарты жазықтықтың ішінде болуы тиіс. Графиктердің кітап қалыңдығы – графиктердің кез келген кітапқа ендірілуі үшін қажетті жарты жазықтықтардың ең аз саны. Кітап қалыңдығы беттік нөмір, қаптама нөмірі немесе сыртқы қалыңдық деп те аталады. Кітапқа ендірулер басқа да бірнеше график инварианттарын анықтау үшін қолданылады, оның ішінде беттік ені және кітапты кесіп өту саны. N төбесі бар кез келген графиктің кітап қалыңдығы ең көп дегенде болады, және бұл формула толық графиктер үшін нақты кітап қалыңдығын көрсетеді. Кітап қалыңдығы бірге тең болатын графиктер – сыртқы жазықтық графиктер. Кітап қалыңдығы ең көп дегенде екі болатын графиктер – субгамильтондық графиктер, олар әрқашан жазықтықта болады; жалпы алғанда, кез келген жазықтық графиктің кітап қалыңдығы ең көп дегенде төртке тең. Барлық кіші жабық графтар отбасылары, әсіресе шектелген ағаш ені немесе шектелген туыстығы бар графтар, сондай-ақ шектелген кітап қалыңдығына ие. Графиктердің нақты кітап қалыңдығын анықтау, кітаптың омыртқасы бойымен орналасқан төбелердің белгілі бір ретін білген жағдайда да, NP қиын мәселе болып табылады. Графиктердің үш беттік кітапқа ендірілуінің болуын тексеру, ендірудің тірегі бойымен төбелердің белгілі бір ретін ескере отырып, есептеу күрделілігі белгісіз: ол полиномиалдық уақытта шешілетіні немесе NP қиын екені әлі белгілі емес. Кітапқа ендіруді зерттеудің бастапқы себептерінің бірі VLSI дизайнындағы қолданыстарды қамтиды, онда кітапқа ендірудің төбелері схеманың компоненттерін, ал сымдар олардың арасындағы байланыстарды көрсетеді. Кітапқа ендірудің графиктерді суреттеуде де қолданыстары бар, онда графиктер, доғалық диаграммалар және дөңгелек орналасу сияқты екі стандартты визуализация стилін кітапқа ендіру арқылы құруға болады. Көліктік жоспарлауда, жол және көлік ағынының әртүрлі бастапқы және соңғы нүктелері, жол айырысында кездесіп, өзара әрекеттесетін нүктелері, математикалық тұрғыдан графиктердің төбелері ретінде модельделуі мүмкін, ал қабырғалары әртүрлі бастапқы-соңғы жұптарды байланыстырады. Бұл графиктің кітапқа ендірілуі трафиктің қиылыстан мүмкіндігінше аз сигнал фазасымен өтуіне мүмкіндік беретін кесте жасау үшін пайдаланылуы мүмкін. РНК-ның бүктелу құрылымына қатысты биоинформатикалық мәселелерде, бір беттік кітапқа ендіру нуклеин қышқылының екінші құрылымының классикалық формаларын, ал екі беттік кітапқа ендіру псевдотүйіндерді көрсетеді. Кітапқа ендірудің басқа да қолданыстары абстрактілі алгебра және түйін теориясын қамтиды.

Тарих

Топологиялық кеңістік ретінде кітап ұғымын 1960 жылдары К.А. Персингер және Гейл Атнеозен анықтады. Осы жұмыстың бір бөлігі ретінде Атнеозен кітаптарға графтарды ендіруді қарастырды. Ол зерттеген ендірулер графтардың кез келген басқа топологиялық кеңістікке ендірілуімен бірдей анықтаманы қолданды: төбелер ерекше нүктелермен, қабырғалар қисықтармен бейнеленеді, ал екі қабырғаның қиылысуының жалғыз жолы – олардың ортақ нүктеде кездесуі. 1970 жылдардың басында Пол К. Кайнен және Л. Тейлор Оллман одан шектеулі ендіру түрін жасады, ол кейінгі зерттеулердің көп бөлігінде қолданылды. Олардың ұсынымында графтың төбелері кітаптың тірегімен орналасуы керек, ал әрбір қабырға бір бетке орналасуы керек. Кітапқа ендірудің кейінгі дамуындағы маңызды кезеңдердің бірі – 1980 жылдардың соңында Михалис Яннакакис жазық графтардың кітап қалыңдығы ең көп дегенде төрт екенін дәлелдегені. Ол бір ғана l сызығынан тұрады, ол кітаптың тірегі немесе арқасы деп аталады, сонымен қатар кітаптың беттері немесе жапырақтары деп аталатын бір немесе бірнеше жартылай жазықтықтар жиынтығы бар, олардың әрқайсысы тіректі шекара ретінде алады. Шекті беттері бар кітаптарды үш өлшемді кеңістікке ендіруге болады, мысалы, l сызығын карталық координаттар жүйесінің z осі ретінде таңдап, xz жазықтығына қатысты диэдр бұрышы A-ның бүтін еселігі болып табылатын k жартылай жазықтықты таңдау арқылы. G-ді B-ге ендіру – бұл G-ді B-ге ендіру графигін құрайтын кітап суреті. Яғни, бұл G-нің B-де қабырғалары қиылыспайтын кітап суреті. Кез келген шекті графты жеткілікті беттері бар кітапқа ендіруге болады. Мысалы, графтың әрбір қабырғасын жеке бетіне ендіруге болады. G-нің кітап қалыңдығы, бет саны немесе қабат нөмірі – G-ді кітапқа ендіру үшін қажетті ең аз бет саны. Кітапқа ендірудің сапасын өлшеу үшін, беттерінің санынан басқа, бет ені де маңызды. Бұл кесу еніне ұқсас, кітаптың бір бетінде тірегіне перпендикуляр сәулемен кесіп өтетін қабырғалардың ең көп саны ретінде анықталады. Балама түсіндіру (әрбір қабырға монотонды қисық ретінде салынған кітапқа ендіру үшін) – бұл бір беттегі қабырғалардың ең үлкен жиынтығы, мұнда қабырғалардың ұштарының жұптарымен тіректе анықталған аралықтардың барлығы бір-бірімен қиылысады. Бұл анықтамалар үшін қабырғалар кітаптың бір бетінде қалуы керек. Атнеозеннің байқауынша, егер қабырғалар кітаптың бір бетінен екінші бетіне тірегі арқылы өте алса, онда кез келген графты үш беттік кітапқа ендіруге болады, ал кейбір графтарға мұндай тірек қиылыстары қажет.

Жазықтық және сыртқы жазықтық

Берілген G графигінің кітап қалыңдығы ең көп дегенде бір, егер және тек G сыртқы жазықтық граф болса. Сыртқы жазықтық граф – барлық төбелері енудің сыртқы бетінде орналасқан жазықтық енуі бар граф. Мұндай граф үшін төбелерді омыртқа бойымен сыртқы бетінде пайда болатын ретпен орналастыру, берілген графтың бір беттік кітапқа енгізілуін қамтамасыз етеді. (Графтың тіреу нүктесі сыртқы бетінің төбелерінің циклдық ретінде міндетті түрде бірнеше рет пайда болуы мүмкін, бірақ кітапқа енгізілгенде осы көшірмелердің тек біреуі ғана қолданылуы керек.) Керісінше, бір беттік кітапқа енгізілу автоматты түрде сыртқы жазықтық енуі болып табылады. Себебі, егер граф бір бетке енгізілсе және бетті толық жазықтыққа дейін кеңейту үшін омыртқаға тағы бір жарты жазықтық қосылса, онда енудің сыртқы бетіне қосылған жарты жазықтықтың барлығы кіреді және барлық төбелер осы сыртқы бетте жатады. Егер графқа екі беттік енгізілу берілген болса, оны жазықтық Гамильтондық графқа кеңейтуге болады, омыртқа бойымен бір-біріне тікелей іргелес емес кез келген екі төбе арасына және бірінші және соңғы тірек төбелері арасына қосымша қабырғаларды қосу арқылы (қай бетке болса да). Голднер-Харри графигі кітап қалыңдығы екі емес жазықтық графтың мысалын көрсетеді: бұл максималды жазықтық граф, сондықтан жазықтықты сақтай отырып, оған қосымша қабырғалар қосу мүмкін емес, және оның Гамильтон циклі жоқ. Ең жоғары дәрежесі төрт болатын барлық жазықтық графтардың кітап қалыңдығы ең көп дегенде екі. Жазық 3 ағаштардың кітап қалыңдығы ең көп дегенде үш. Жалпы, барлық жазықтық графтардың кітап қалыңдығы төрт. Шындығында, кітап қалыңдығы дәл төрт болатын жазықтық графтар бар екені белгілі. Алайда, бұл мәлімдеменің толыққанды дәлелі, кейіннен журналда жарияланған, 2020 жылға дейін Bekos және тағы басқалар 4 ені бар ағаштарды ұсынғанға дейін белгісіз болды, олар кез келген кітапқа енгізілгенде төрт бетті қажет етеді.

Бөлімшелер бойынша мінез-құлық

Графиктің әрбір қабырғасын екі қабырға жолына бөлу, әр қабырғаның ішінде жаңа төбелерді қосу кейде оның кітап қалыңдығын арттыруы мүмкін. Мысалы, алмаз тәрізді графтың кітап қалыңдығы бірге тең (ол сыртқы жазықтықта жатыр), бірақ оның бөлінісінің кітап қалыңдығы екіге тең (ол жазықтықта жатыр және субгамильтондық, бірақ сыртқы жазықтықта емес). Дегенмен, бұл бөлу процесі кейде бөлінген графтың кітап қалыңдығын айтарлықтай азайтуы мүмкін. Мысалы, толық графтың Kn кітап қалыңдығы оның төбелерінің санымен пропорционал, бірақ оның әр қабырғасын екі қабырға жолына бөлу кітап қалыңдығы әлдеқайда кішірек бөлініс тудырады. Нақтырақ айтқанда, олар f функциясы бар деп болжады, кез келген G графы және G-дегі әр қабырғаны екі қабырға жолымен алмастыру арқылы құрылған H графы үшін, егер H-ның кітап қалыңдығы t болса, онда G-ның кітап қалыңдығы ең көп дегенде f(t) болады. Олардың болжамы жалған болып шықты: жұлдыздар мен үшбұрышты мозаикалардың декарт көбейтінділерінен құрылған графтардың кітап қалыңдығы шексіз, бірақ олардың қабырғаларын алты қабырға жолына бөлу олардың кітап қалыңдығын үшке дейін азайтады.

Басқа график инварианттарымен байланысы

Кітаптың қалыңдығы берілген графтың жиектерін жабу үшін қажетті жазықтық графтар санымен байланысты. G графының қалыңдығы θ, егер оны жазықтықта салуға болады, ал оның жиектері θ түспен боялған, бір-бірімен бірдей түсті жиектер қиыспайтындай етіп. Сол сияқты, G графының кітап қалыңдығы θ, егер оны жарты жазықтықта салуға болады, оның төбелері жарты жазықтықтың шекарасында, оның жиектері θ түспен боялған, бір түсті екі жиек арасында қиылыс болмаса. Бұл кітап қалыңдығының формулировкасында жиектердің түстері кітаптың беттеріне сәйкес келеді. Дегенмен, қалыңдық пен кітап қалыңдығы бір-бірінен өте әртүрлі болуы мүмкін: кітап қалыңдығы шексіз болатын графтар (толық графтардың бөліктері) бар, және бұл шек k > 2 үшін қатаң. Сондай-ақ, g туындаған графтардың кітап қалыңдығы бар. Жалпы алғанда, кез келген кіші жабық граф отбасының кітап қалыңдығы шектелген. Екінші жағынан, 1-жазықтық графтар, олар кішілер бойынша жабылмайды, бірақ кейбір 1-жазықтық графтар, соның ішінде K2,2,2,2 кітап қалыңдығы кем дегенде төртке тең. Кітап қалыңдығы шектелген графтың кез келген кіші графы - бұл сиректеу граф, оның жиектері мен төбелерінің арақатынасы тек кішінің тереңдігіне және кітап қалыңдығына байланысты тұрақтымен шектелген. Яғни, терминология бойынша, шектелген кітап қалыңдығы бар графтардың кеңеюі шектелген. Кітап қалыңдығы екіге тең графтар жазықтық графтар болғандықтан, олар жазықтық ажырату теоремасына бағынады: оларда ажырағыштар болады, төбелердің кіші жиыны, оларды алып тастау графты әрқайсысында 2n/3 төбесі бар бөліктерге бөледі, ажырағыштағы төбелерді ғана қалдырады. Мұнда n - графтың төбелерінің саны. Дегенмен, кітап қалыңдығы үшке тең, бірақ сызықтық емес өлшемдегі ажырағыштары жоқ графтар бар. Кітаптың бір бетіндегі жиектер кейбір жағдайларда стек деректер құрылымы сияқты әрекет етеді. Бұл стектегі түрту және шығару операцияларының кез келген тізбегін қарастыру және графты құру арқылы формальдастыруға болады, онда стек операциялары графтың төбелеріне сәйкес келеді, кітаптың енуінің тірегі бойында тізбек ретімен орналасқан. Егер x-ті шығаратын әрбір шығару операциясынан x-ті түрткен алдыңғы түрту операциясына жиек салсақ, алынған граф автоматты түрде бір беттік енуге ие болады. Осы себепті графтың беттік саны оның стек саны деп те аталады. Сол сияқты, кезек деректер құрылымының кезекке қосу және кезектен шығару операцияларының кез келген тізбегін қарастыруға болады және осы операцияларды бір беттің тірегінде орналастырылған, әрбір кезекке қосу операциясы мен сәйкес кезектен шығару арасында жиек бар графты құруға болады. Осы графта әр екі жиек тіректегі екі бөлікті қиып өтеді немесе екі бөлікті жабады. Аналогия бойынша, зерттеушілер графтың кезек енуін топологиялық кітапқа ену деп анықтады, онда әр төбе тіректе, әр жиек бір бетте жатыр, және бір беттегі әр екі жиек тіректегі аралықтарды қиып немесе жабады. Графтың кезек енуі үшін қажетті ең аз беттер саны оның кезек саны деп аталады.

Есептеу күрделілігі

Графиктің қалыңдығын табу NP қиын. Бұл ең үлкен жазықтық графиктердегі Гамильтондық циклдарды табу NP толық екендігінен туындайды. Максималды жазықтық графикте кітаптың қалыңдығы екіге тең, тек және ғана Гамильтондық цикл болса. Сондықтан, берілген максималды жазықтық графиктің кітап қалыңдығы екіге тең екенін тексеру де NP толық. Дегенмен, төрт немесе одан көп бет қажет болатын графиктер үшін, ең аз мүмкін беттер санымен кіріктіруді табу мәселесі, шеңберлік графиктерді бояудың және шеңбердің хордтарының қиылысу графиктерін бояудың NP қиын проблемасына эквиваленттілік арқылы NP қиын болып қалады. График G-дің, оның төбелері үшін белгілі бір тіректік реті берілгенде, осы төбелерді шеңбердің бойында бірдей ретпен салыстыру және G-дің қабырғаларын сызық сегменттері ретінде салу G-ні көрсететін хордтар жиынтығын жасайды. Содан кейін осы диаграмманың хордтарын төбелер және хордтардың қиылысқан жұптарын қабырғалар ретінде пайдаланып, шеңберлік графикті құруға болады. Шеңберлік графиктің бояуы G-нің қабырғаларын бір бетке қиылыспай салуға болатын жиынтықтарға бөлуді көрсетеді. Сондықтан, оңтайлы бояу оңтайлы кітап кіріктіруге тең. Шеңберлік графикті төрт немесе одан көп түспен бояу NP қиын болғандықтан және кез келген шеңберлік графикті осылайша қандай да бір кітап кіріктіру мәселесінен құруға болатындықтан, оңтайлы кітап кіріктіру де NP қиын. Екі беттік кітаптың суретіндегі тіректің белгілі бір реті үшін, бұл сан нөлге тең болғанда қиылыстар санын азайту да NP қиын. Алайда, тіректік рет пен қабырға бөлігі белгісіз болғанда, 2 беттік кіріктіруді табу NP толық. Графиктің кітаптық қиылыс санын табу да NP қиын, себебі 2 беттік қиылыс саны нөлге тең екенін тексерудің ерекше жағдайы NP толық. Шектелген кеңеюдің салдары ретінде, шектелген өлшемдегі үлгі графиктің үлкен графиктің кіші графигі ретінде бар-жоғын анықтау мәселесі (субграф изоморфизмі), үлкен графиктің кітап қалыңдығы шектелген болғанда сызықтық уақытта шешіледі. Үлгі графиктің үлкен графиктің индукцияланған кіші графигі немесе оның үлкен графикке гомоморфизмі бар-жоғын анықтау үшін де солай. Осы себепті, шектелген кітап қалыңдығы бар графиктің, бірінші реттік логиканың берілген формуласына бағынатынын тексеру мәселесі, тұрақты параметрмен шешіледі. Проблеманы Бульдік қанағаттандыру проблемасының мысалына түрлендіру және нәтижесінде алынған проблеманы шешу үшін SAT шешушіні қолдану арқылы оңтайлы кітап кіріктіруді табу жүйесін сипаттаңыз. Олардың жүйесі шамамен 20 минут ішінде 400 төбелі максималды жазықтық графиктер үшін оңтайлы кіріктіруді таба алатынын айтады. Кітап кіріктіруді VLSI компоненттерін схеманың қабаттарына жалғайтын сымдардың орналасуын модельдеу үшін де қолдануға болады.

Графиктік сызба

Кітапты кіріктіру желілік деректерді визуализациялауда жиі қолданылады. Графиктік сызбадағы екі стандартты орналасу – доғалық диаграммалар немесе сызықтық кіріктіру. Екі беттік кітап кіріктірілімі жоқ жазық графиктерді де ұқсас тәсілмен салуға болады, олардың қабырғаларын сызықтың үстінен және астынан бірнеше жартышеңберлермен көрсету арқылы. Мұндай сурет әдеттегі анықтама бойынша кітап кіріктірілісі емес, бірақ оны топологиялық кітап кіріктірілісі деп атайды. Кез келген жазық график үшін әр қабырғаның тіректің бойымен ең көп бір рет кесіп өтетіндей кіріктіруді табу әрқашан мүмкін. Басқа сурет салу стилі – шеңберлік орналасуда, графиктің төбелері шеңберге орналастырылады, ал қабырғалары шеңбердің ішінде немесе сыртында салынады. Тағы да, қабырғалардың шеңбердің ішінде орналасуы (мысалы, түзу сызық сегменттері түрінде) бір беттік кітап суретіне сәйкес келеді, ал шеңбердің ішінде де, сыртында да орналасу екі беттік кітап суретіне сәйкес келеді. Бір беттік суреттер үшін суреттің визуальдық жатақтығын азайту үшін кесісулер санын мүмкіндігінше азайту маңызды. Кесісулер санын азайту NP-толық мәселе, ал берілген графиктің цикломатикалық санымен немесе кесісулер саны мен графиктің енінің комбинациясымен параметрленгенде, бір немесе екі беттік кесісулер санын азайту тұрақты параметрмен шешіледі. Кесісу күрделігін азайту үшін эвристикалық әдістер де жасалды, мысалы, мұқият төбелерді енгізу ретіне және жергілікті оптимизацияға негізделген. Екі беттен артық кіріктірілген кітаптар графиктердің үш өлшемді суреттерін құру үшін де қолданылған. Атап айтқанда, графтарды кішкентай көлемді үш өлшемді торға кіріктіру әдісінің бір бөлігі ретінде әр беттегі әр төбелік дәрежесін төмен ұстайтын кітап кіріктірілісін құру пайдаланылды.

РНК бүктеу

РНК молекулаларының құрылымын қалыптастыру үшін қалай бүктелетінін зерттеуде, нуклеин қышқылының екінші құрылымының стандартты түрі сызбалық түрде көрсетілуі мүмкін: сызық бойымен салынған негіздер тізбегі (РНК тізбегінің өзі) және құрылымның негіз жұптарын сипаттайтын сызықтың үстіндегі аркалар жиынтығы. Яғни, бұл құрылымдардың нақты үш өлшемді пішіні күрделі болғанымен, олардың байланысы (екінші құрылым болған жағдайда) бір беттік кітапқа енгізу арқылы сипатталады. Дегенмен, барлық РНК бүктелулері осылай қарапайым болып келе бермейді. Кейбір РНК псевдотүйіндері үшін "екінші құрылым" деп аталатын, екі беттік кітапқа енгізу түрі ұсынылған: РНК тізбегі тағы да сызық бойымен салынған, бірақ негіз жұптары осы сызықтың үстінде де, астында да аркалар түрінде көрсетіледі. Екінші құрылымды қалыптастыру үшін, графтың максималды дәрежесі үштен аспауы керек: әрбір негіз базалық тізбектегі екі көршісіне қосымша, диаграммадағы бір ғана аркаға қатыса алады. Бұл формуланы пайдаланудың артықшылықтары – кеңістікте түйілген құрылымдарды жоққа шығару және көптеген белгілі РНК псевдотүйіндерімен сәйкес келуі. Омыртқа реті алдын ала белгілі болғандықтан, берілген негіз жұптасуы үшін екінші құрылымның болуын тексеру оңай. Екі бетке үйлесімді түрде жиектерді тағайындау мәселесін 2-қанағаттандыру мысалы ретінде немесе негіз жұптары төбелері және негіз жұптары арасындағы қиылыстарды сипаттайтын жиектері бар шеңбер графтың екі жақтылығын тексеру ретінде қоюға болады. Ал егер РНК құрылымы екінші емес, үшінші болса (яғни, диаграммасында екі беттен көп болса), онда бет нөмірін анықтау да NP қиын мәселе болып табылады.

Математиканың басқа салалары

Абстрактілік алгебрада кітап қалыңдығының қолданылуын зерттеу, шекті жергілікті сақинаның нөлдік бөлгіштерінен құрылған графтарды пайдалану арқылы: әрбір нөлдік бөлгіш үшін бір төбе және көбейтіндісі нөлге тең екі мән үшін бір қабырға жасау. Диников бірнеше мақаласында түйіндер мен байланыстардың топологиялық кітапқа енгізілуін зерттеді, осы енгізілімдерді символдардың комбинаторлық тізбектерімен сипаттауға болатынын және екі байланыстың топологиялық эквиваленттілігін енгізілімдерге жасалған жергілікті өзгерістер тізбегі арқылы көрсетуге болатынын дәлелдеді.