Презентация (В. Савченко - Анализ алиасов), страница 3

PDF-файл Презентация (В. Савченко - Анализ алиасов), страница 3 Конструирование компиляторов (52979): Лекции - 7 семестрПрезентация (В. Савченко - Анализ алиасов) - PDF, страница 3 (52979) - СтудИзба2019-09-18СтудИзба

Описание файла

Файл "Презентация" внутри архива находится в папке "В. Савченко - Анализ алиасов". PDF-файл из архива "В. Савченко - Анализ алиасов", который расположен в категории "". Всё это находится в предмете "конструирование компиляторов" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 3 страницы из PDF

Òîãäà êàæäîé ïåðåìåííîé áóäåò ñîïîñòàâëåíîm-çíà÷íîå ÷èñëî. Èìåííî m áóäåò êîëè÷åñòâîì çàïóñêîâ, à i-ûéðàçðÿä áóäåò êàòåãîðèåé äàííîé ïåðåìåííîé â i-îì çàïóñêå.Èçâåñòíûå ðåøåíèÿÏîäõîä Ãîðâèö-Øàïèðî (97`)38 / 67Äëÿ äàííîé öåëè ìîæíî ïåðåíóìåðîâàòü êàæäóþ ïåðåìåííóþ ïîîñíîâàíèþ k. Òîãäà êàæäîé ïåðåìåííîé áóäåò ñîïîñòàâëåíîm-çíà÷íîå ÷èñëî. Èìåííî m áóäåò êîëè÷åñòâîì çàïóñêîâ, à i-ûéðàçðÿä áóäåò êàòåãîðèåé äàííîé ïåðåìåííîé â i-îì çàïóñêå.ÏðèìåðÏóñòü èìååòñÿ 4 ïåðåìåííûå a, b, c è d è k = 2. Ïðîíóìåðóåìïåðåìåííûå:a00 , b01 , c10 , d11Èçâåñòíûå ðåøåíèÿÏîäõîä Ãîðâèö-Øàïèðî (97`)38 / 67Äëÿ äàííîé öåëè ìîæíî ïåðåíóìåðîâàòü êàæäóþ ïåðåìåííóþ ïîîñíîâàíèþ k.

Òîãäà êàæäîé ïåðåìåííîé áóäåò ñîïîñòàâëåíîm-çíà÷íîå ÷èñëî. Èìåííî m áóäåò êîëè÷åñòâîì çàïóñêîâ, à i-ûéðàçðÿä áóäåò êàòåãîðèåé äàííîé ïåðåìåííîé â i-îì çàïóñêå.ÏðèìåðÏóñòü èìååòñÿ 4 ïåðåìåííûå a, b, c è d è k = 2. Ïðîíóìåðóåìïåðåìåííûå:a00 , b01 , c10 , d11Ïðè òàêîì ïîäõîäå èìååì m = blogk (n − 1)c + 1 è,ñîîòâåòñòâåííî, âðåìÿ âûïîëíåíèÿ O(logk (n)k2n).Èçâåñòíûå ðåøåíèÿÏîäõîä Ãîðâèö-Øàïèðî (97`)38 / 67ÐåçóëüòàòûÍà 25 òåñòàõ, ïðè èñïîëüçîâàíèè 3 êàòåãîðèé, ðåçóëüòèðóþùèåìíîæåñòâà, ïîëó÷åííûå ìåòîäîì Ãîðâèö-Øàïèðî, â ñðåäíåì â2.67 ðàç áîëüøå, ÷åì ìíîæåñòâà Àíäåðñåíà (äëÿ Ñòèíñãàðäà ýòîòìíîæèòåëü ðàâåí 4.75).Ïîäõîä Ãîðâèö-Øàïèðî ìåäëåííåå Ñòèíñãàðäà, íî îò 7 äî 25 ðàçáûñòðåå Àíäåðñåíà.Èçâåñòíûå ðåøåíèÿÏîäõîä Ãîðâèö-Øàïèðî (97`)39 / 67Èñïîëüçîâàíèå ïîòîêîâî- è êîíòåêñòíî-íå÷óâñòâèòåëüíûõàëãîðèòìîâÑîâðåìåííûå èññëåäîâàíèÿÒåíäåíöèè40 / 67Èñïîëüçîâàíèå ïîòîêîâî- è êîíòåêñòíî-íå÷óâñòâèòåëüíûõàëãîðèòìîâÐàçðàáîòêà áîëåå ãèáêîãî àíàëèçà, ÷åì ïðåäñòàâëåííûåðàíåå (ïîëå-÷óâñòâèòåëüíîñòü, ðàçäåëåíèå àãðåãàòîâ,ìîäåëèðîâàíèå êó÷è)Ñîâðåìåííûå èññëåäîâàíèÿÒåíäåíöèè40 / 67Èñïîëüçîâàíèå ïîòîêîâî- è êîíòåêñòíî-íå÷óâñòâèòåëüíûõàëãîðèòìîâÐàçðàáîòêà áîëåå ãèáêîãî àíàëèçà, ÷åì ïðåäñòàâëåííûåðàíåå (ïîëå-÷óâñòâèòåëüíîñòü, ðàçäåëåíèå àãðåãàòîâ,ìîäåëèðîâàíèå êó÷è)Èñïîëüçîâàíèå àëãîðèòìà Àíäåðñåíà, âåðíåå àëãîðèòìîâ,áåðóùèõ îò íåãî íà÷àëî (Andersen-style algorithms) èëè êàêèõ åùå íàçûâàþò àëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè(inclusion based)Ñîâðåìåííûå èññëåäîâàíèÿÒåíäåíöèè40 / 67Èñïîëüçîâàíèå ïîòîêîâî- è êîíòåêñòíî-íå÷óâñòâèòåëüíûõàëãîðèòìîâÐàçðàáîòêà áîëåå ãèáêîãî àíàëèçà, ÷åì ïðåäñòàâëåííûåðàíåå (ïîëå-÷óâñòâèòåëüíîñòü, ðàçäåëåíèå àãðåãàòîâ,ìîäåëèðîâàíèå êó÷è)Èñïîëüçîâàíèå àëãîðèòìà Àíäåðñåíà, âåðíåå àëãîðèòìîâ,áåðóùèõ îò íåãî íà÷àëî (Andersen-style algorithms) èëè êàêèõ åùå íàçûâàþò àëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè(inclusion based)Àíàëèç ôîðìû (shape analysis) è ðàçäåëÿþùàÿ ëîãèêà(separation logic)Ñîâðåìåííûå èññëåäîâàíèÿÒåíäåíöèè40 / 67Ãðàô îãðàíè÷åíèéÄëÿ ïîñòðîåíèÿ ðåçóëüòèðóþùèõ ìíîæåñòâ âñå ñîâðåìåííûåàëãîðèòìû äàííîãî òèïà èñïîëüçóþò ãðàô îãðàíè÷åíèé.ÎïðåäåëåíèåÃðàôîì îãðàíè÷åíèéáóäåì íàçûâàòü G =< M, E >, òàêîé ÷òîè E = {(p1, p2) : p1, p2 ∈ P ∧ Vp ⊆ Vp }Ïðè ýòîì êàæäàÿ âåðøèíà p ìàðêèðóåòñÿ ìíîæåñòâîì Vp.M =PÑîâðåìåííûå èññëåäîâàíèÿ12Àëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè41 / 67Ïðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;ABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;ABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;ABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;Îãðàíè÷åíèÿ:1VA ⊆ VDABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;Îãðàíè÷åíèÿ:12VA ⊆ VD∀T ∈ VD ⇒ VB ⊆ VTABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;Îãðàíè÷åíèÿ:123VA ⊆ VD∀T ∈ VD ⇒ VB ⊆ VT∀T ∈ VD ⇒ VT ⊆ VAABDCÏðèìåð: points-to ãðàôB = &A;A = &C;D = A;*D = B;A = *D;Îãðàíè÷åíèÿ:123ABDCVA ⊆ VD∀T ∈ VD ⇒ VB ⊆ VT∀T ∈ VD ⇒ VT ⊆ VAÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè42 / 67Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;ABDCÏðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;ABDC{A}Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;{C}ABDC{A}Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;{C}{C}ABDC{A}Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;{C}{C}ABDC{A}{A}Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;{C,A}{C,A}ABDC{A}{A}Ïðèìåð: ãðàô îãðàíè÷åíèéB = &A;A = &C;D = A;*D = B;A = *D;Ñîâðåìåííûå èññëåäîâàíèÿ{C,A}{C,A}ABDCÀëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè{A}{A}43 / 67Çàäà÷è ðàçðåøåíèÿ àëèàñîâ íà ãðàôå îãðàíè÷åíèé è points-toãðàôå ïðàêòè÷åñêè èäåíòè÷íû, òàê â ÷åì ñìûñë áûë âûáèðàòüèìåííî åãî?Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè44 / 67Çàäà÷è ðàçðåøåíèÿ àëèàñîâ íà ãðàôå îãðàíè÷åíèé è points-toãðàôå ïðàêòè÷åñêè èäåíòè÷íû, òàê â ÷åì ñìûñë áûë âûáèðàòüèìåííî åãî?Èíòåðåñíîå ñâîéñòâîÏóñòü â ãðàôå îãðàíè÷åíèé èìååòñÿ öèêë äëèíû n è p1ïðèíàäëåæèò ýòîìó öèêëó.

Òîãäà∃p2 , . . . , pn ∈ P : (p1 , p2 ), . . . , (pn−1 , pn ), (pn , p1 ) ∈ E . Èçîïðåäåëåíèÿ ãðàôà îãðàíè÷åíèé ïîëó÷àåì, ÷òîVp ⊆ Vp ⊆ · · · ⊆ Vp ⊆ Vp , îòêóäà î÷åâèäíî, ÷òîVp = Vp = · · · = Vp .12n12nÑîâðåìåííûå èññëåäîâàíèÿ1Àëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè44 / 67Çàäà÷è ðàçðåøåíèÿ àëèàñîâ íà ãðàôå îãðàíè÷åíèé è points-toãðàôå ïðàêòè÷åñêè èäåíòè÷íû, òàê â ÷åì ñìûñë áûë âûáèðàòüèìåííî åãî?Èíòåðåñíîå ñâîéñòâîÏóñòü â ãðàôå îãðàíè÷åíèé èìååòñÿ öèêë äëèíû n è p1ïðèíàäëåæèò ýòîìó öèêëó. Òîãäà∃p2 , .

. . , pn ∈ P : (p1 , p2 ), . . . , (pn−1 , pn ), (pn , p1 ) ∈ E . Èçîïðåäåëåíèÿ ãðàôà îãðàíè÷åíèé ïîëó÷àåì, ÷òîVp ⊆ Vp ⊆ · · · ⊆ Vp ⊆ Vp , îòêóäà î÷åâèäíî, ÷òîVp = Vp = · · · = Vp .12n12n1ÂûâîäÁåç ïîòåðè òî÷íîñòè àíàëèçà âñå óêàçàòåëè, âõîäÿùèå â öèêë,ìîæíî ñ÷èòàòü îäíîé âåðøèíîé â ãðàôå îãðàíè÷åíèé.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû, îñíîâàííûå íà âêëþ÷åíèè44 / 67Àëãîðèòì Õàéíòöå-Òàðäü¼ (01`)Ïðåäëîæåí Íåâèíîì Õàéíòöå è Îëèâåðîì Òàðäü¼ â 2001 ãîäó.ßâëÿåòñÿ Andersen-style àëãîðèòìîì è ïåðâûì ñðåäè òàêîãî ðîäààëãîðèòìîâ, ñïîñîáíûé àíàëèçèðîâàòü áîëüøèå ïðîåêòû íàïðàêòèêå (çà ðàçóìíîå âðåìÿ).Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)45 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Îñíîâíûå ìîìåíòû:Ïðè ïîñòðîåíèè ãðàôà:Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Îñíîâíûå ìîìåíòû:Ïðè ïîñòðîåíèè ãðàôà:1Êàæäîé âåðøèíå p ñîïîñòàâëÿåòñÿ ìíîæåñòâîBp = {q : p = &q }Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Îñíîâíûå ìîìåíòû:Ïðè ïîñòðîåíèè ãðàôà:1Êàæäîé âåðøèíå p ñîïîñòàâëÿåòñÿ ìíîæåñòâîBp = {q : p = &q }2Ïðèñâàèâàíèÿ âèäà *x = y è x = *y íàçûâàþòñÿ ñëîæíûìèè çàíîñÿòñÿ â îòäåëüíûé ñïèñîê CÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Îñíîâíûå ìîìåíòû:Ïðè ïîñòðîåíèè ãðàôà:1Êàæäîé âåðøèíå p ñîïîñòàâëÿåòñÿ ìíîæåñòâîBp = {q : p = &q }2Ïðèñâàèâàíèÿ âèäà *x = y è x = *y íàçûâàþòñÿ ñëîæíûìèè çàíîñÿòñÿ â îòäåëüíûé ñïèñîê CÄëÿ êàæäîãî îãðàíè÷åíèÿ âèäà *x = y íàõîäèì âîçìîæíûåàäðåñàòû {z} äëÿ x è ïðîâîäèì ðåáðî èç y â êàæäûé zÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Îñíîâíàÿ èäåÿÏîñòðîèòü ãðàô îãðàíè÷åíèé, ïðè äîáàâëåíèè íîâûõ ðåáåð èðàñïðîñòðàíåíèè points-to ìíîæåñòâ ïîïóòíî ñâîðà÷èâàòü öèêëûâ îäíó âåðøèíó.Îñíîâíûå ìîìåíòû:Ïðè ïîñòðîåíèè ãðàôà:1Êàæäîé âåðøèíå p ñîïîñòàâëÿåòñÿ ìíîæåñòâîBp = {q : p = &q }2Ïðèñâàèâàíèÿ âèäà *x = y è x = *y íàçûâàþòñÿ ñëîæíûìèè çàíîñÿòñÿ â îòäåëüíûé ñïèñîê CÄëÿ êàæäîãî îãðàíè÷åíèÿ âèäà *x = y íàõîäèì âîçìîæíûåàäðåñàòû {z} äëÿ x è ïðîâîäèì ðåáðî èç y â êàæäûé zÄëÿ êàæäîãî îãðàíè÷åíèÿ âèäà x = *y íàõîäèì âîçìîæíûåàäðåñàòû {z} äëÿ y è ïðîâîäèì ðåáðî èç êàæäîãî z â ∗y , èðåáðî èç ∗y â xÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)46 / 67Íàõîæäåíèå âîçìîæíûõ àäðåñàòîâÎò íà÷àëüíîé âåðøèíû x ïðîõîäèì â ãëóáèíó ïî âñåì âåðøèíàì,èçSêîòîðûõ èìåþòñÿ ðåáðà â x.

Ïðè ýòîì ñîáèðàåì ìíîæåñòâîBp , ãäå path - ìíîæåñòâî âñåõ ïðîéäåííûõ âåðøèí. Ïðèp∈pathïðîõîäå â ãëóáèíó ïîñåùåííûå âåðøèíû ïîìå÷àþòñÿ, ïðèâñòðå÷å ïîìå÷åííîé âåðøèíû öèêëè÷åñêàÿ ÷àñòü ãðàôàñëèâàåòñÿ â îäíó âåðøèíó.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Õàéíòöå-Òàðäü¼ (01`)47 / 67Íàõîæäåíèå âîçìîæíûõ àäðåñàòîâÎò íà÷àëüíîé âåðøèíû x ïðîõîäèì â ãëóáèíó ïî âñåì âåðøèíàì,èçSêîòîðûõ èìåþòñÿ ðåáðà â x. Ïðè ýòîì ñîáèðàåì ìíîæåñòâîBp , ãäå path - ìíîæåñòâî âñåõ ïðîéäåííûõ âåðøèí. Ïðèp∈pathïðîõîäå â ãëóáèíó ïîñåùåííûå âåðøèíû ïîìå÷àþòñÿ, ïðèâñòðå÷å ïîìå÷åííîé âåðøèíû öèêëè÷åñêàÿ ÷àñòü ãðàôàñëèâàåòñÿ â îäíó âåðøèíó.x4{e}x{a}{d}x3Ñîâðåìåííûå èññëåäîâàíèÿ{b}x1x2{c}Àëãîðèòì Õàéíòöå-Òàðäü¼ (01`)47 / 67Íàõîæäåíèå âîçìîæíûõ àäðåñàòîâÎò íà÷àëüíîé âåðøèíû x ïðîõîäèì â ãëóáèíó ïî âñåì âåðøèíàì,èçSêîòîðûõ èìåþòñÿ ðåáðà â x.

Ïðè ýòîì ñîáèðàåì ìíîæåñòâîBp , ãäå path - ìíîæåñòâî âñåõ ïðîéäåííûõ âåðøèí. Ïðèp∈pathïðîõîäå â ãëóáèíó ïîñåùåííûå âåðøèíû ïîìå÷àþòñÿ, ïðèâñòðå÷å ïîìå÷åííîé âåðøèíû öèêëè÷åñêàÿ ÷àñòü ãðàôàñëèâàåòñÿ â îäíó âåðøèíó.{b,c,d}{e}{a}x4Ñîâðåìåííûå èññëåäîâàíèÿxx1 , x2 , x3Àëãîðèòì Õàéíòöå-Òàðäü¼ (01`)47 / 67Àëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)Ïðåäëîæåí Äýâèäîì Ïèðñîì, Ïîëîì Êåëëè è Êðèñîì Õýíêèíîìâ 2004 ãîäó.ßâëÿåòñÿ ïåðâûì ïðèìåíèìûì ê ðåàëüíûì ïðîåêòàìïîòîêîâî-÷óâñòâèòåëüíûì Andersen-style àíàëèçîì.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)48 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:Vp ⊇ Vq ≡ p ⊇ qÑîâðåìåííûå èññëåäîâàíèÿ(p = q)Àëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:(p = q)q ∈ Vp ≡ p ⊇ {q} (p = &q)Vp ⊇ Vq ≡ p ⊇ qÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:(p = q)q ∈ Vp ≡ p ⊇ {q} (p = &q)Vp ⊇ Vq ≡ p ⊇ q∀t ∈ Vq ⇒ Vp ⊇ Vt ≡ p ⊇ ∗qÑîâðåìåííûå èññëåäîâàíèÿ(p = *q)Àëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:(p = q)q ∈ Vp ≡ p ⊇ {q} (p = &q)Vp ⊇ Vq ≡ p ⊇ q∀t ∈ Vq ⇒ Vp ⊇ Vt ≡ p ⊇ ∗q∀t ∈ Vp ⇒ Vt ⊇ Vq ≡ ∗p ⊇ qÑîâðåìåííûå èññëåäîâàíèÿ(p = *q)(*p = q)Àëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:(p = q)q ∈ Vp ≡ p ⊇ {q} (p = &q)Vp ⊇ Vq ≡ p ⊇ q(p = *q)∀t ∈ Vp ⇒ Vt ⊇ Vq ≡ ∗p ⊇ q (*p = q)∀t ∈ Vp ⇒ q ∈ Vt ≡ ∗p ⊇ {q} (*p = &q)∀t ∈ Vq ⇒ Vp ⊇ Vt ≡ p ⊇ ∗qÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Äëÿ óïðîùåíèÿ èñïîëüçóþòñÿ äðóãèå îáîçíà÷åíèÿ äëÿîãðàíè÷åíèé:(p = q)q ∈ Vp ≡ p ⊇ {q} (p = &q)Vp ⊇ Vq ≡ p ⊇ q(p = *q)∀t ∈ Vp ⇒ Vt ⊇ Vq ≡ ∗p ⊇ q (*p = q)∀t ∈ Vp ⇒ q ∈ Vt ≡ ∗p ⊇ {q} (*p = &q)∀t ∈ Vq ⇒ Vp ⊇ Vt ≡ p ⊇ ∗qÎãðàíè÷åíèÿ, ñîäåðæàùèå ∗, íàçûâàþòñÿ ñëîæíûìè.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)49 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ïðàâèëà ðàçðåøåíèÿ:Òðàíçèòèâíîñòü: τ1 ⊇τ {τ⊇2}{ττ3 }⊇ τ13Ñîâðåìåííûå èññëåäîâàíèÿ2Àëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ïðàâèëà ðàçðåøåíèÿ:Òðàíçèòèâíîñòü: τ1 ⊇τ {τ⊇2}{ττ3 }⊇ τ132Ðàçûìåíîâàíèå:Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ïðàâèëà ðàçðåøåíèÿ:Òðàíçèòèâíîñòü: τ1 ⊇τ {τ⊇2}{ττ3 }⊇ τ132Ðàçûìåíîâàíèå:1τ1 ⊇ ∗τ2 τ2 ⊇ {τ3 }τ1 ⊇ τ3Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ïðàâèëà ðàçðåøåíèÿ:Òðàíçèòèâíîñòü: τ1 ⊇τ {τ⊇2}{ττ3 }⊇ τ132Ðàçûìåíîâàíèå:1τ1 ⊇ ∗τ2 τ2 ⊇ {τ3 }τ1 ⊇ τ32∗τ1 ⊇ τ2 τ1 ⊇ {τ3 }τ3 ⊇ τ2Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67Òàêæå â ñîîòâåòñòâóþùåé ðàáîòå áûëè ñôîðìóëèðîâàíûôîðìàëüíûå ïðàâèëà ðàçðåøåíèÿ îãðàíè÷åíèé.Ïðàâèëà ðàçðåøåíèÿ:Òðàíçèòèâíîñòü: τ1 ⊇τ {τ⊇2}{ττ3 }⊇ τ132Ðàçûìåíîâàíèå:1τ1 ⊇ ∗τ2 τ2 ⊇ {τ3 }τ1 ⊇ τ32∗τ1 ⊇ τ2 τ1 ⊇ {τ3 }τ3 ⊇ τ23∗τ1 ⊇ {τ2 } τ1 ⊇ {τ3 }τ3 ⊇ {τ2 }Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)50 / 67 ðàáîòå ñäåëàíî îáîáùåíèå óòâåðæäåíèÿ ïðî öèêëû íà ñèëüíîãðàôà.Äîêàçàòåëüñòâî äàííîãî óòâåðæäåíèÿ àíàëîãè÷íî ïðåäûäóùåìó.ñâÿçíûå êîìïîíåíòûÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)51 / 67 ðàáîòå ñäåëàíî îáîáùåíèå óòâåðæäåíèÿ ïðî öèêëû íà ñèëüíîãðàôà.Äîêàçàòåëüñòâî äàííîãî óòâåðæäåíèÿ àíàëîãè÷íî ïðåäûäóùåìó.ñâÿçíûå êîìïîíåíòûÇàìå÷àíèåÒàê êàê ñëîæíîñòü âñåõ Andersen-style àíàëèçîâ ðàâíà O(n3), àñèëüíî ñâÿçíûå êîìïîíåíòû äëÿ ãðàôà G =< V, E > ìîãóò áûòüíàéäåíû çà O(|V | + |E|), òî ðàçóìíûì ðåøåíèåì áóäåòèñïîëüçîâàíèå äàííûõ àëãîðèòìîâ ïîèñêà ïðè ðåøåíèè.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)51 / 67 ðåçóëüòàòå ïðåäûäóùèõ çàìå÷àíèé ïîëó÷àåì ñëåäóþùóþïîñëåäîâàòåëüíîñòü äåéñòâèé:Ñâîðà÷èâàåì âåðøèíû èç ñèëüíî ñâÿçíûõ êîìïîíåíò,ïîëó÷åííûõ àëãîðèòìîì Òàðüÿíà (72`)Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)52 / 67 ðåçóëüòàòå ïðåäûäóùèõ çàìå÷àíèé ïîëó÷àåì ñëåäóþùóþïîñëåäîâàòåëüíîñòü äåéñòâèé:Ñâîðà÷èâàåì âåðøèíû èç ñèëüíî ñâÿçíûõ êîìïîíåíò,ïîëó÷åííûõ àëãîðèòìîì Òàðüÿíà (72`)Îáõîäèì âñå âåðøèíû ãðàôà â òîïîëîãè÷åñêîì ïîðÿäêå,ðàññìàòðèâàÿ âñå îãðàíè÷åíèÿ, ñâÿçàííûå ñ äàííîéâåðøèíîéÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)52 / 67 ðåçóëüòàòå ïðåäûäóùèõ çàìå÷àíèé ïîëó÷àåì ñëåäóþùóþïîñëåäîâàòåëüíîñòü äåéñòâèé:Ñâîðà÷èâàåì âåðøèíû èç ñèëüíî ñâÿçíûõ êîìïîíåíò,ïîëó÷åííûõ àëãîðèòìîì Òàðüÿíà (72`)Îáõîäèì âñå âåðøèíû ãðàôà â òîïîëîãè÷åñêîì ïîðÿäêå,ðàññìàòðèâàÿ âñå îãðàíè÷åíèÿ, ñâÿçàííûå ñ äàííîéâåðøèíîéÐàçðåøàåì èõ ñ ïîìîùüþ ïðàâèë ðàçûìåíîâàíèÿÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)52 / 67 ðåçóëüòàòå ïðåäûäóùèõ çàìå÷àíèé ïîëó÷àåì ñëåäóþùóþïîñëåäîâàòåëüíîñòü äåéñòâèé:Ñâîðà÷èâàåì âåðøèíû èç ñèëüíî ñâÿçíûõ êîìïîíåíò,ïîëó÷åííûõ àëãîðèòìîì Òàðüÿíà (72`)Îáõîäèì âñå âåðøèíû ãðàôà â òîïîëîãè÷åñêîì ïîðÿäêå,ðàññìàòðèâàÿ âñå îãðàíè÷åíèÿ, ñâÿçàííûå ñ äàííîéâåðøèíîéÐàçðåøàåì èõ ñ ïîìîùüþ ïðàâèë ðàçûìåíîâàíèÿÐàñïðîñòðàíÿåì ìíîæåñòâî ñâÿçàííîå, ñ ýòîé âåðøèíîé íàâñå âåðøèíû, êóäà åñòü ðåáðà èç ðàññìàòðèâàåìîé (ñïîìîùüþ ïðàâèëà òðàíçèòèâíîñòè)Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)52 / 67 ðåçóëüòàòå ïðåäûäóùèõ çàìå÷àíèé ïîëó÷àåì ñëåäóþùóþïîñëåäîâàòåëüíîñòü äåéñòâèé:Ñâîðà÷èâàåì âåðøèíû èç ñèëüíî ñâÿçíûõ êîìïîíåíò,ïîëó÷åííûõ àëãîðèòìîì Òàðüÿíà (72`)Îáõîäèì âñå âåðøèíû ãðàôà â òîïîëîãè÷åñêîì ïîðÿäêå,ðàññìàòðèâàÿ âñå îãðàíè÷åíèÿ, ñâÿçàííûå ñ äàííîéâåðøèíîéÐàçðåøàåì èõ ñ ïîìîùüþ ïðàâèë ðàçûìåíîâàíèÿÐàñïðîñòðàíÿåì ìíîæåñòâî ñâÿçàííîå, ñ ýòîé âåðøèíîé íàâñå âåðøèíû, êóäà åñòü ðåáðà èç ðàññìàòðèâàåìîé (ñïîìîùüþ ïðàâèëà òðàíçèòèâíîñòè)Ïîâòîðÿåì äî òåõ ïîð ïîêà èçìåíåíèÿ âíîñÿòñÿÑîâðåìåííûå èññëåäîâàíèÿÀëãîðèòì Ïèðñà-Êåëëè-Õýíêèíà (04`)52 / 67Àëãîðèòìû ëåíèâîãî è ãèáðèäíîãî îáíàðóæåíèÿöèêëîâ (07`)Ðàçðàáîòàíû è ïðåäñòàâëåíû Áåíîì Õàðäêîïôîì è ÊåëâèíîìËèíîì â 2007 ãîäó.Ñîåäèíÿþò ëó÷øèå èäåè ïðåäûäóùèõ ðàáîò è ïðåäñòàâëÿþòýâðèñòè÷åñêèé ïîäõîä ê ïîèñêó öèêëîâ.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)53 / 67 äàííîì ïîäõîäå èñïîëüçóåòñÿ íàáîð îãðàíè÷åíèé è ïðàâèëàðàçðåøåíèÿ àíàëîãè÷íûå ïîäõîäó Ïèðñà-Êåëëè-Õýíêèíà, çàèñêëþ÷åíèåì îãðàíè÷åíèÿ âèäà ∗p ⊇ {q}.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)54 / 67 äàííîì ïîäõîäå èñïîëüçóåòñÿ íàáîð îãðàíè÷åíèé è ïðàâèëàðàçðåøåíèÿ àíàëîãè÷íûå ïîäõîäó Ïèðñà-Êåëëè-Õýíêèíà, çàèñêëþ÷åíèåì îãðàíè÷åíèÿ âèäà ∗p ⊇ {q}.Îñóùåñòâëÿåòñÿ òàêæå íå ïîèñê öèêëîâ, à ïîèñê ñèëüíî ñâÿçíûõêîìïîíåíò (íåñìîòðÿ íà íàçâàíèå), îäíàêî, èñïîëüçóåòñÿ íåàëãîðèòì Òàðüÿíà, à åãî áîëåå ñîâðåìåííàÿ ìîäèôèêàöèÿ àëãîðèòì Íóóòèëû (95`).Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)54 / 67 äàííîì ïîäõîäå èñïîëüçóåòñÿ íàáîð îãðàíè÷åíèé è ïðàâèëàðàçðåøåíèÿ àíàëîãè÷íûå ïîäõîäó Ïèðñà-Êåëëè-Õýíêèíà, çàèñêëþ÷åíèåì îãðàíè÷åíèÿ âèäà ∗p ⊇ {q}.Îñóùåñòâëÿåòñÿ òàêæå íå ïîèñê öèêëîâ, à ïîèñê ñèëüíî ñâÿçíûõêîìïîíåíò (íåñìîòðÿ íà íàçâàíèå), îäíàêî, èñïîëüçóåòñÿ íåàëãîðèòì Òàðüÿíà, à åãî áîëåå ñîâðåìåííàÿ ìîäèôèêàöèÿ àëãîðèòì Íóóòèëû (95`).Äëÿ ðåàëèçàöèè ìíîæåñòâ èñïîëüçóþòñÿ áèíàðíûå äèàãðàììûðåøåíèé.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)54 / 67Àëãîðèòì ëåíèâîãî îáíàðóæåíèÿ öèêëîâÏîèñê öèêëîâ ÿâëÿåòñÿ íåîòúåìëèìîé ÷àñòüþ ñîâðåìåííûõAndersen-style àëãîðèòìîâ, îäíàêî, îí ïðîâîäèòñÿ íà êàæäîéèòåðàöèè àëãîðèòìà, ÷òî, ñêîðåå âñåãî, ÿâëÿåòñÿ èçáûòî÷íûì ⇒õîòåëîñü áû ïðåäúÿâèòü íåêîòîðóþ ýâðèñòèêó, ÷òîáû ðåøàòü,êîãäà ñòîèò çàïóñêàòü ïîèñê öèêëîâ.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)55 / 67Àëãîðèòì ëåíèâîãî îáíàðóæåíèÿ öèêëîâÏîèñê öèêëîâ ÿâëÿåòñÿ íåîòúåìëèìîé ÷àñòüþ ñîâðåìåííûõAndersen-style àëãîðèòìîâ, îäíàêî, îí ïðîâîäèòñÿ íà êàæäîéèòåðàöèè àëãîðèòìà, ÷òî, ñêîðåå âñåãî, ÿâëÿåòñÿ èçáûòî÷íûì ⇒õîòåëîñü áû ïðåäúÿâèòü íåêîòîðóþ ýâðèñòèêó, ÷òîáû ðåøàòü,êîãäà ñòîèò çàïóñêàòü ïîèñê öèêëîâ.Îñíîâíàÿ èäåÿÁóäåì çàïóñêàòü ïîèñê öèêëà, òîëüêî åñëè âñòðåòèëè äâåñîñåäíèõ âåðøèíû ñ îäèíàêîâûìè points-to ìíîæåñòâàìè.Äâàæäû ïî îäíîìó è òîìó æå ðåáðó ïîèñê öèêëîâ íåèíèöèèðóåòñÿ.Ñîâðåìåííûå èññëåäîâàíèÿÀëãîðèòìû ËÎÖ (LCD) è ÃÎÖ (HCD) (07`)55 / 67Àëãîðèòì ãèáðèäíîãî îáíàðóæåíèÿ öèêëîâÁûëî áû õîðîøî ïðîâîäèòü âîîáùå ëèøü åäèíè÷íûé ïîèñêöèêëîâ, íî ýòî íåâîçìîæíî, ò.ê.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее