Публикации

Методы и инструменты конструирования и оптимизации программ

Под редакцией проф. Виктора Николаевича Касьянова
Серия "Конструирование и оптимизация программ"
Новосибирск 2005

Является двенадцатым в серии сборников, издаваемых Институтом систем информатики им. А.П.Ершова СО РАН. Описывает методы и инструменты конструирования и оптимизации программ.

Сборник представляет интерес для системных программистов, а также студентов и аспирантов, специализирующихся в области системного и теоретического программирования.




Статьи сборника

Батура Т.В., Корда О.В., Мурзин Ф.А., Позименко А.А.
Исследовательская система для анализа текстов на естественном языке

В статье кратко описывается исследовательская система для анализа текстов на естественном языке, разрабатываемая авторами.

Валеев Т.Ф.
Сравнительный анализ методов поиска регуляторных модулей в последовательностях ДНК, использующих данные микроэррэев

Данная статья посвящена проблеме поиска регуляторных модулей в последовательностях ДНК. Описана постановка задачи и произведён краткий сравнительный обзор трёх разработок, направленных на её решение: пакета TOUCAN, системы TELiS и Composite Module Analyst, отмечены достоинства и недостатки различных подходов.

Винокуров А.А., Ильин И.В., Мурзин Ф.А., Семич Д.Ф.
Расчет коэффициента нефтенасыщенности по результатам ядерного каротажа

В статье рассматриваются алгоритмы для расчета нефтенасыщенности по данным ядерного каротажа.

Волянская Т.А.
Интерфейс пользователей виртуального музея истории информатики в Сибири

Описывается пользовательский интерфейс виртуального музея истории информатики в Сибири. Разрабатываемый музей предназначен для накопления, систематизации и использования информации, относящейся к становлению и развитию информатики в Сибири. Музей создается в виде информационно-поисковой, справочной адаптивной гипермедиа-системы, доступной в Интернет. Рассматривается интерфейс управления информационными ресурсами: механизм навигации и просмотр информации, поиск, ввод и редактирование информации. Описывается интерфейс управления пользователями: регистрация, аутентификация, авторизация и администрирование пользователей.

Касьянова Е.В.
Вводный курс программирования на базе языка Zonnon

Кратко представлен вводный курс программирования на базе нового языка Zonnon, работа над которым ведется в Цюриховском институте информатики. Разрабатываемый язык задуман как современная альтернатива хорошо известному языку Оберон, являющемуся преемником языков Паскаль и Модула-2.

Курс предназначен главным образом для тех учебных заведений, в которых в настоящее время используется язык Паскаль в качестве языка начального обучения программированию и в которых есть желание плавно перейти к новому курсу программирования, охватывающему концепции современных языков программирования, таких как C#, Java и Ada.

Коновалова Т.Г., Комашко В.М.
Обработка данных микрочиповых экспериментов при помощи языка "R"

В данной статье рассматривается подход к решению задачи выделения генов, изменивших с определенной достоверностью уровень своей экспрессии на основе данных нескольких микрочиповых экспериментов.

На примере обработки данных с олигонуклеотидного чипа компании Affimetrix описан процесс нормализации и кластеризации данных в среде программирования языка R GUI с использованием пакетов Bioconductor.

Данная работа может быть использована как руководство по применению языка R и пакета BioConductor для обработки результатов микрочиповых экспериментов.

Малинина Ю.В.
Семантическая сеть как формальный метод описания и обработки текстов по преобразованиям программ

Электронные вычислительные машины в состоянии обрабатывать только формализованные языки. Так как естественный язык не формализован, то вычислительная система не в состоянии его обрабатывать. Автоматическая обработка смысла текста естественного языка возможна только при наличии его формализованного представления. В статье рассматриваются подход к извлечению и унификации информации, содержащейся в публикациях по преобразованиям программ. За основу берется автоматическое формирование смыслового портрета текста в виде ассоциативной (семантической) сети. Полученная в итоге семантическая сеть может быть использована в дальнейшем для навигации и реферирования текста.

Мельников Л.С., Петренко И.В.
Путевые ядра и разбиения в графах с малыми длинами циклов

Через τ(G) будем обозначать количество вершин в наиболее длинном пути графа G. Для некоторой пары натуральных чисел (a,b) такой, что a+b = τ(G), граф G является (a,b)-разбиваемым, если его множество вершин V(G) можно разбить на два класса {A,B} таким образом, что τ(G[A]) ≤ a, а τ(G[B]) ≤ b. Подмножество K множества V(G) называется Pn-ядром, если τ(G[K]) ≤ n-1 и каждая вершина v ∈ V(G)\K смежна с вершиной, которая является конечной для пути длины n-1 в графе G. Известно, что наличие Pn-ядра в графе G означает, что он является (τ(G)-n+1, n-1)-разбиваемым. В настоящей статье доказана теорема о том, что каждый граф имеет P9-ядро.

Несговорова Г.П.
Обзор виртуальных музеев в сети Интернет

Дается обзор существующих в сети Интернет так называемых виртуальных музеев и делается попытка установить различия между сайтами - представительствами реальных музеев и собственно виртуальными музеями.

Осмонов Р.А.
Метод распараллеливания алгоритмов унимодулярными преобразованиями

Цель данной статьи - представить теорию унимодулярных матриц, применяемую для распараллеливания циклов. Рассматриваемый в статье метод волнового фронта (Wavefront) включает в себя такие преобразования, как перестановка цикла, обращение цикла и скашивание цикла. В качестве программной модели берется гнездо из двух циклов с постоянными границами цикла. В статье изучается преобразование гнезда циклов посредством унимодулярной матрицы, действующей на индексные переменные. Показываются корректность применения перечисленных выше преобразований; сопоставление матриц соответствующим преобразованиям; возможность параллельного исполнения внешнего или внутреннего преобразованных циклов; существование матриц, позволяющих параллельное исполнение; вычисление границ цикла нового гнезда. Описываемые преобразования меняют относительный порядок исполнения итераций гнезда цикла и используются как для выявления параллелизма, так и для повышения его степени.

Пыжов К.А.
Блок редукции в компиляторе SISAL 3.0

Описан блок редуцирующих оптимизаций на внутреннем представлении IR1 для языка Sisal 3.0, т. е. оптимизирующих трансформаций IR1, гарантированно не ухудшающих каких-либо свойств программы. Реализованный блок оптимизаций выполняет такие высокоуровневые преобразования, как удаление общих подвыражений, свертка констант, протяжка констант, упрощение условных выражений, удаление мертвого кода и т.д.

Синяков А.И.
Анализ модульного подхода и его применение в различных языках программирования

В данной работе рассматриваются несколько основных подходов в программировании: модульный, структурный и объектно-ориентированный. Во второй части работы анализируется реализация модульности в некоторых языках программирования. В заключение приводится реализация модульности в функциональном языке Sisal 3.0.

Стасенко А.П.
Система интерфейсов транслятора во внутреннее представление IR1

В статье кратко описывается система COM (Component Object Model) интерфейсов, задающих трансляцию из некого текстового представления программы во внутреннее представление IR1, основанное на графовой модели IF1. Приводятся требования к желаемой функциональности системы интерфейсов и возможные направления её расширения.

Хан Ю.
Обзор средств отладки программ на функциональных языках

Функциональная парадигма вносит свои особенности в процесс отладки программ. К некоторым языкам традиционные методы отладки практически неприменимы. В данной статье рассматривается ряд систем программирования на функциональных языках и предпринимается попытка классифицировать их по применяемым методикам отладки.

Черемушкин Е.С.
Анализ различных участков ДНК с помощью автокорреляционной функции

Целью данной работы было изучение структуры ДНК с помощью автокорреляционного анализа: найти некоторые различия, которые возможно не будут способствовать распознаванию неизвестных участков, но которые характеризуют качественные различия ДНК разных функций.

В результате исследований выяснилось, что АКФ различных участков практически совпадают, но видимые различия статистически значимы. А именно, регуляторные районы более скоррелированны, чем экзоны (кодирующие районы), а те более скоррелированны, чем случайные последовательности.

Промоторы (регуляторные участки) - гораздо более разнообразны по своей информационной насыщенности, чем другие последовательности. Природе "выгодно" поддерживать общее однообразие ДНК и только функционально важные участки имеют свой "уникальный" паттерн.

Штокало Д.Н., Черемушкин Е.С.
Построение программного комплекса "Regulatory Sequences Analyzer" для распознавания цис-элементов в последовательностях ДНК

В данной статье представлена документация к программному комплексу "Regulatory Sequences Analyzer", разработанного авторами, для визуализации поиска потенциальных цис-элементов последовательности ДНК. Приводится краткое описание используемых программным комплексом алгоритмов Match и CoMatch, основанных на привлечении весовых матриц для поиска простых и двойных сайтов соответственно. Приводится описание матричных библиотек для данных алгоритмов.