Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634794)
Контекстум
.
Инженерный журнал: наука и инновации  / №9 2014

Сравнение исходных текстов программ путем выравнивания последовательностей токенов (100,00 руб.)

0   0
Первый авторДубанов
ИздательствоМ.: Изд-во МГТУ им. Н.Э. Баумана
Страниц13
ID279865
АннотацияВ настоящее время весьма актуальна проблема обнаружения заимствований в текстах. В данной работе был модифицирован один из известных алгоритмов выравнивания последовательностей биополимеров для того, чтобы сравнивать исходные тексты программ и выявлять в них похожие фрагменты. Входными данными этого алгоритма являются исходные тексты программ, которые рассматриваются как последовательности символов. Лексические домены при этом соответствуют алфавиту имволов, составляющих эти последовательности. Алгоритм был реализован в виде программы, его работа продемонстрирована на фрагментах кода, написанных на языке Scheme. В статье обсуждаются перспективы и ограничения применения алгоритма.
УДКУДК 004.02
Дубанов, А.В. Сравнение исходных текстов программ путем выравнивания последовательностей токенов / А.В. Дубанов // Инженерный журнал: наука и инновации .— 2014 .— №9 .— URL: https://rucont.ru/efd/279865 (дата обращения: 25.04.2024)

Предпросмотр (выдержки из произведения)

УДК 004.02 Сравнение исходных текстов программ путем выравнивания последовательностей токенов © А.В. Дубанов МГТУ им. <...> Н.Э. Баумана, Москва, 105005, Россия В настоящее время весьма актуальна проблема обнаружения заимствований в текстах. <...> В данной работе был модифицирован один из известных алгоритмов выравнивания последовательностей биополимеров для того, чтобы сравнивать исходные тексты программ и выявлять в них похожие фрагменты. <...> Входными данными этого алгоритма являются исходные тексты программ, которые рассматриваются как последовательности символов. <...> Лексические домены при этом соответствуют алфавиту символов, составляющих эти последовательности. <...> Алгоритм был реализован в виде программы, его работа продемонстрирована на фрагментах кода, написанных на языке Scheme. <...> Ключевые слова: заимствование кода, выравнивание последовательностей, наибольшая общая подпоследовательность, динамическое программирование, лексический анализ, функциональное программирование. <...> Проблема поиска некорректных заимствований (в том числе в исходных кодах программ) является весьма злободневной задачей [1]. <...> В практике кафедры «Теоретическая информатика и компьютерные технологии» эта задача систематически возникает при проверке домашних заданий, результаты которых должны быть представлены в виде программ на языках программирования высокого уровня, и имеет целью выявление случаев «списывания». <...> Для решения этой задачи требуется разработать средства для сравнения исходных текстов, позволяющие находить похожие или идентичные фрагменты в исходных кодах программ, оценивать степень обнаруженного сходства и наглядно представлять результат сравнения. <...> Очевидно, что такая задача является обобщением задачи нахождения наибольшей общей подпоследовательности в двух последовательностях символов. <...> Различные методы нахождения наибольших общих или идентичных подпоследовательностей в исходном коде реализованы в ряде <...>