issn 2079-3316 ПРОГРАММНЫЕ СИСТЕМЫ: ТЕОРИЯ И ПРИЛОЖЕНИЯ № 4(22), 2014, с. 105-121
УДК 004.222.3+517.13:510.25
Н. Н. Непейвода, И. Н. Григоревский, Е. П. Лилитко О представлении действительных чисел
Аннотация. Поставлена проблема представления численных данных в параллельной системе, в том числе ориентированной на обработку информации без промежуточного запоминания результатов. Проанализированы с конструктивной точки зрения позиционные системы счисления без перекрытия цифр (традиционные) и 5 перекрытием (введены в данной работе). Подробно разбирается проблема представления действительных чисел произвольной точности для целей параллельного выполнения операции сложения и гарантированной точности вычислений.
Ключевые слова и фразы: действительные числа, системы счисления, конструктивная математика, представление данных.
Введение
При алгебраической парадигме оперирования и моделирования важно [1] представление данных. Операции выполняются конкретными алгебраическими элементами, возможности найти «универсальное» представление нет. Действия нужно организовать так, чтобы необходимость запоминания промежуточных результатов возникала бы как можно реже. По возможности данные сразу же направляются на очередной обрабатывающий элемент. Если необходимо сохранить промежуточный результат, возникает «стена памяти», увеличивающая энергозатраты и выделение энергии на порядки, и снижающая скорость оперирования примерно в 100 раз.
В статье определено и проанализировано новое представление действительных чисел. Показано на примере сложения и нормализации, что можно параллельно и без промежуточной памяти обрабатывать числа любой точности. Предложенное представление обосновывается конструктивно и даются оценки сложности действий.
Проект проводится при финансовой поддержке государства в лице Минобр-науки России (идентификатор №И.РМЕР161314Х0030).
© Н. Н. Непейвода, И. Н. ГригорЕвский, Е. П. Лилитко, 2014 © Институт программных систем имени А. К. Айламазяна РАН, 2014 © Программные системы: теория и приложения, 2014
Рис. 1. Работа функционала согласно принципу конечной информации
Функции задаются в форме А-обозначений, стандартной для теоретической информатики. Формула Хх, у Б определяет функцию со значением $ и аргументами х, у. Переменные могут быть специфицированы своим типом данных. Другие переменные, входящие в становятся параметрами функции. Соответственно, как принято в функциональном программировании и в теоретической информатике, применение функции записывается списком (/ а Ь). В этом выражении первый элемент — функция, остальные — значения ее параметров.
1. Основные понятия
Здесь используется абстрактное понятие алгоритма, данное в [2]. Поэтому алгоритмические преобразования называются эффективными, как принято в логике при использовании абстрактных понятий вычислимости. Неразрешимость устанавливается с помощью принципа конечной информации, сформулированного в [2]:
1.1. Принцип конечной информации
Пусть Ф — эффективное преобразование объекта а в объект р. Тогда всякая конечная информация, которую можно
вычислить по Р, может быть вычислена, с использованием
Ф и конечной информации об а.
Таким образом, преобразование функций задает значения на вход функции-параметру и читает ее результаты, пока не получит на выходе значение результирующей функции. Это отражено на рис. 1.
Метод провокации, сформулированный в [2], используется для установления неразрешимости. Его формулировка здесь полностью соответствует оригинальной.
1.2. Метод провокации
Пусть дана проблема построения по каждому а, имеющему тип Т1, для которого выполнено свойство А(а), объекта Р типа Т2, удовлетворяющего свойству В (а, На конструктивном языке она в общем случае записывается формулой1
(1) Уа :Т1 (А(а) : Т2В(а,/3)).
или же, в частном случае, когда построенный объект заведомо конечен,
(2) Уа : Т1 (А(а) ^ В1(а) У •••У Вп(а)).
Пусть функционал Ф претендует на то, что он строит по каждому объекту а, удовлетворяющему свойству А(а), объект, удовлетворяющий свойству В (а, (Ф а)) либо на то, что Ф указывает верный член дизъюнкции. Чтобы установить, что данная проблема эффективно неразрешима, достаточно дать метод построения последовательности приближений (Ф п /), который работает следующим образом. Он вырабатывает вспомогательную последовательность приближений (/о п), не зависящую от Ф, подает ее на вход Ф ив момент, когда функционал Ф выдаст некоторое приближение к решению, обладающее заранее заданной заведомо достижимой характеристикой (например, некоторой точностью либо ответом на вопрос в конкретной точке), далее выдает в зависимости от этого ответа одну из конечного числа последовательностей приближений (^ п), показывающую ошибочность выданного ответа (например, если выдано число с некоторой точностью,
1Именно в общем случае! Если формулы А и В не являются чисто дескриптивными, то ситуация может осложниться. Более того, ниже разобранный случай с V относится именно к данной группе исключений.
дальнейшие наши приближения находятся вне интервала, в
котором может лежать данное число).
Структура провоцирующего функционала описана на рис. 2.
Квазипрограммное описание2 метода провокации показывает, что программа анализа и выдачи контрпримера вызывает опровергаемую программу как модуль и пользуется лишь «открытой» информацией, выдаваемой во внешний мир.
Для применения принципа конечной информации к действительным числам нужно определить понятие конечной информации о числе. В. А. Успенский в книге [3] проанализировал ряд определений с конструктивной точки зрения. Самым общим оказалось определение на базе стягивающихся сегментов, в дальнейшем использованное в ряде работ с легкими модификациями. Здесь мы также эквивалентно преобразовали его для удобства.
Определение 1 (Действительное число). Общее представление действительного числа х — эффективная функция, сопоставляющая каждому положительному рациональному числу £ рациональный сегмент [ае,Ье] длины не больше е, такая, что все вырабатываемые ею сегменты попарно пересекаются по ненулевой длине.
Представления эквивалентны, если любые два сегмента из них пересекаются. Конечной информацией о действительном числе является пересечение конечного числа сегментов из его представления.
В конструктивизме некорректен следующий шаг, автоматически применяемый в классической математике: действительное число — класс эквивалентности представлений. Множество не является конструктивным объектом.
Из принципа конечной информации следует теорема.
Теорема 1 (Непрерывность вычислимых функций). Для любого эффективного преобразования Ф действительных чисел из множества X в множество У для каждого х € X и для каждого рационального 6 > 0 найдется рациональное £ > 0, такое, что
2В публикациях часто всптречаются описания действий или процессов, внешне похожие на программы, использующие те же структуры управления, но на самом деле программами не являющиеся. Их естественно называть квазипрограммами. В данном случае нам безоразлично, как реализованы составляющие модули. В частности, они могут быть физическими процессами, а не алгоритмами.
для вычисления отрезка длины 5, на котором находится (Ф х), понадобится отрезок длины е, приближающий х.
Доказательство. По принципу конечной информации, для получения конечной информации о (Ф х) достаточно конечной информации об х. Применив определение 1, начинаем вычисление ((Ф х) 6). Затребованные Ф приближения к х в пересечении дадут отрезок ненулевой длины е. Он и будет искомым. □
Имеется порядка 20 разных вариантов теоремы непрерывности для разных модификаций вычислимого и алгоритмического анализа. Данное ее доказательство обобщает доказательство из [2] и унифицирует большинство из частных доказательств.
2. Традиционные позиционные системы
Определим (пока что для положительных чисел, чтобы избежать лишней несущественной техники) понятие позиционной системы и представления в ней числа.
Определение 2. Позиционная система — бесконечная в обе стороны последовательность натуральных чисел, такая, что щ ^ 2 для всех г. г-тая цифра — натуральное число от 0 до щ — 1. Представлением в позиционной системе будем называть пару из количества разрядов целой части числа т и последовательности Сг (г € [т, —ж) П Z, дающей для каждого разряда целой и дробной части цифру.
Таким образом, мы не ограничиваемся системами с постоянным основанием. Основания могут изменяться и в целой, и в дробной части. Последовательность цифр числа конечна вверх и бесконечна вниз. С конструктивной точки зрения количество разрядов целой части необходимо задать явно, поскольку любое конечное количество нулей не гарантирует того, что следующий разряд тоже окажется нулем.
Определение 3. Длина ^ разряда г определяется следующим образом:
Vо = 1, Щ+1 = щ • щ, Щ-1 =
4 1 ^г-1
Последний пункт вставлен, чтобы формально можно было вести рекурсию в обоих направлениях от 0. Чисто математически первые два уравнения однозначно определяют длины. Соответственно, каждая цифра разряда i задает отрезок размера vi_1 — диапазон значений чисел, имеющих одни и те же цифры вплоть до данной.
Определение 4. Диапазон [ki,li], определяемый очередной цифрой Ci числа, задается индуктивно. Цифру m + 1 по умолчанию можно считать 0 и взять за базис рекурсии.
[km+i, lm+1] = [0, vm+i] .
[ki, ¡i] = [ki+i + щ_1 ■ Ci, ki+i + щ_1 ■ (Ci + 1)] Диапазон, определяемый цифрой позиционного представления некоторого числа, будем называть естественным интервалом для данного представления.
Рассматриваются замкнутые отрезки, так как допускаются числа типа 0.999... в десятичной системе. Неоднозначность с необходимостью возникает при обобщении позиционной системы, поэтому нет смысла бороться с нею сейчас.
Конечная информация о числе в позиционной системе: конечный отрезок последовательности цифр.
Под данное определение подходят гиперэкспоненциальная, фак-ториальная и многие другие системы. Единственное, что предполагается: каждый раз ni цифр делят предыдущий отрезок длины а на ni равных частей длины a/ni, соответственно. Причиной рассмотрения общих представлений стала, в частности, роль систем счисления с переменным основанием в теории чисел и при преобразованиях в системе остаточных классов ([4]).
Теорема 2 (Общность). 3
(1) Имеется алгоритм преобразования чисел из любой позиционной системы в общее представление.
(2) Ни для какой позиционной системы нет алгоритма преобразования числа из общего представления в данную систему.
(3) Ни для какой позиционной системы нет алгоритмов сложения и умножения чисел.
3Первые четыре пункта Брауэр, 1921 [5] Банах, Мазур, 1937 [6, 7], Успенский, 1960 [3]; все утверждения обобщены.
(4) Алгоритм преобразования числа из позиционной системы а в систему @ имеется в том и лишь в том случае, если любой естественный отрезок системы @ представляется как конечное объединение отрезков системы а.
(5) Для любых двух позиционных систем счисления имеется алгоритм преобразования чисел из первой во вторую с любой наперед заданной погрешностью £ > 0.
В оригинальных формулировках рассматривались лишь системы с постоянным основанием и не всегда любые. Причиной неразрешимости является некорректность задач.
Лемма 1. Длины диапазонов стремятся к 0 при г ^ —ж.
Доказательство. Все щ ^ 2, а длина диапазона с отрицательным номером есть
—-- ^ 2*.
гь
3=1
□
Доказательство теоремы общности. (1) По каждому е > 0 выдаем диапазон цифры с наибольшим номером г, такой, что щ < е.
(2) В частности, не удастся вычислить целую часть числа. Пусть дан функционал Ф : (Real ^ N), решающий проблему нахождения целой части. Ф обрабатывает функцию, перерабатывающую точность в приближение, согласно принципу конечной информации, путем запроса ее значений. Будем подавать в ответ на е отрезок [1 — е/2,1 + е/2], одновременно запоминая минимум запрошенных е, пока Ф не выдаст целую часть. Если получена 1, запомним минимум ео и при запросах отрезка меньшей длины будем выдавать [1 — е/2,1 — е/4], если 0, то [1 + е/4,1+ е/2]. Тем самым, спровоцировав ответ Ф, мы его одурачили, изменив затем входную последовательность в противоречие данному ответу.
(3) Аналогично, целую часть не удается определить. Складываем два числа с целой частью 0, подавая у первого на вход максимальные цифры, у второго нули. Как только выдана целая часть числа, в случае результата 1 изменим последующие цифры первого числа на 0, в случае результата 0 — второго на максимальные. Для умножения используем тот же пример.
j
(4) Представление естественного отрезка второй системы, как конечного объединения отрезков первой, позволяет задать для каждого г число знаков системы а, достаточное для вычисления г-того знака в системе минимальный разряд отрезков представления. Если такого представления для некоторого естественного отрезка [а, Ь] системы @ нет, то а или Ь] не будет концом никакого естественного отрезка а, и в окрестности соответствующего числа применим метод провокации, подобно предыдущему пункту.
(5) Пусть даны две системы счисления Я и Т и представление числа х в системе Я. Будем обозначать характеристики разрядов в них с дополнительным верхним индексом системы. Пусть дано е > 0. Найдем, согласно лемме 1, г < е/3. Найдем такое у, что ^ < и?. Найдем конечный отрезок числа до цифры ] в системе Т, такой, что \_Щ, П [к?, I?] = 0. Он дает решение нашей задачи. □
Для работы с числами со знаком достаточно ввести знак числа и определять диапазоны цифр для отрицательных чисел через вычитание из верхней границы предыдущего диапазона.
Таким образом, традиционные системы представления чисел отнюдь не идеальны. Дополнительной «прелестью» их использования является необходимость запоминания переносов, а приведенные выше теоремы показывают, что избавиться от переносов или ограничить их глубину невозможно.
В случае, если числа принадлежат заранее известному отрезку [а,,Ь] (масштабированы либо нормализованы), естественно определяется система счисления на данном отрезке. Нулевой разряд — [а, Ь], и далее цифры идут вниз до —то. Здесь естественно, поскольку все разряды отрицательны, отбросить знак " —" у их номера. В неявной форме именно так представлены числа с плавающей запятой (отрезок определяется порядком, и последующие разряды делят этот отрезок).
3. Системы с перекрытиями
Известным методом обойти стену памяти являются аналоговые вычисления. Но аналоговые сигналы заранее ограничены достижимой точностью измерения (максимум 4-5 десятичными знаками). Здесь предлагается способ за счет изменения представления чисел обеспечить любую требуемую точность.
Вычисления, подобные аналоговым, требуют заранее известного диапазона представления чисел. Но, в отличие от аналоговых машин, у нас в ходе работы диапазон чисел может изменяться (как для чисел с плавающей запятой) и быть любым (как в интервальной арифметике).
Наша задача может рассматриваться как обращение задачи интервальной арифметики [8]. В интервальной арифметике интересуются, как получить гарантированные оценки точности при стандартном представлении чисел. Здесь система интервальных оценок превращена в представление чисел.
Определение 5. Системой с перекрытием представления чисел на отрезке [low, high] называется четверка
(low, high, v = Xi. щ, е = Xi. £i),
где
v : N+ ^ N+, £ : N+ ^ Q, Wi e N+ щ > 1, 3a e Q Wi e N+ 0 < £i < a < 1.
Числа щ называются основаниями, £j — перекрытиями. Если функции постоянны, то система называется равномерной, идентифицируется интервалом изменения, основанием п и перекрытием £.
Основание определяет, на сколько равных отрезков делится предыдущий разряд, а перекрытие — на какую долю пересекаются два соседних отрезка. Обычные позиционные системы на интервале являются частным случаем систем с перекрытием 0. Понятие естественного отрезка переносится на системы с перекрытиями.
Первым предложил подобную систему Л. Брауэр [5]. В его системе (0,1,2,0.5) отрезок [0,1] делится на пересекающиеся отрезки [0, 2/3], [1/3,1], те в свою очередь на такие же, например, [0, 2/3] на [0,4/9], [2/9,2/3].
Введем понятия, характеризующие диапазон г-того разряда в системах с перекрытиями, и вычислим основные характеристики разрядов и цифр.
Примем размер диапазона предыдущей цифры за 1, i — номер текущего разряда, 5 — сдвиг диапазона цифры относительно предыдущей из того же разряда, £ — длина диапазона цифры, е — длина
Рис. 3. Разбиение диапазона на цифры
перекрытия. Они связаны соотношениями:
(3) 6 = е — е; б = е ■ ^ (ч — 1) ■ 5+е = 1.
Тем самым получаем отношение размера диапазона следующей цифры к предыдущей:
(4) А. =_1_
к> £¿+1 (щ — 1) ■ (1 — £1+1)+ 1
Таким образом, длина диапазона уменьшается не меньше чем в 2 — а раз и стремится к 0 при г ^ то.
Теорема 3 (Вычислимость). Все вычислимые функции действительных чисел вычислимы на любом отрезке, на котором они ограничены, при любом представлении аргумента и 'результата в системах с перекрытиями, где все > е > 0.
Доказательство. Приближение к (/ х), в соответствии с принципом конечной информации, может быть получено по приближению к х, являющемуся рациональным отрезком. Пусть вычисляется г-тый знак (/ х). Два любых соседних отрезка цифр этого разряда пересекаются по длине С > 0. Вычислив результат с точностью С/2, оказываемся внутри какого-то отрезка цифры [кг, ] и можем выдать значение цифры. По теореме непрерывности, достаточно вычислить аргумент с точностью до некоторого 7. Поскольку длины разрядов стремятся к 0, то вычислив аргумент до разряда с длиной меньше 7, определяем искомую цифру. □
Из данной теоремы следует вычислимость умножения и сложения на любом отрезке, а деления на отрезках, не включающих 0, в позиционных системах с перекрытием.
4. Параллелизм сложения
Теперь рассмотрим операцию сложения чисел в равномерных системах с перекрытием. Так как отрезки линейно преобразуются друг в друга, достаточно рассмотреть случай чисел на [0,1]. Соответственно, результат сложения будет числом из отрезка [0, 2].
Теорема 4 (Параллельное сложение). В равномерной системе с основанием ^ 3 и перекрытием £ = 0.5 для вычисления г-той цифры результата достаточно знать г-тую и г + 1-ую цифры слагаемых.
Доказательство. Доказательство дано для первых цифр. Оно без изменений обобщается на другие. Пусть даны цифры г и Вычислим сумму двух диапазонов цифр:
(5) [5 • г + 5 • з, 5 • (г + 1) + 5 • Ц + 1)] = [5 • (г + Д 6 • (г + 3 +2)]
Согласно уравнению (5), цифра суммы определяется суммой цифр слагаемых г + ]. Обозначим это число I.
Для суммы сдвиг интервалов 6 становится в два раза больше. Следовательно, если I четно, то после сложения получаем интервал цифры I + 2. Если же I нечетно, то интервал суммы сдвинут на 6 вниз относительно (I +1) ^ 2 и вверх относительно (I — 1) ^ 2. Нужно рассмотреть следующие цифры слагаемых (вторые). Их сумма J может сдвинуть интервал на 6 вниз или вверх и тем самым поместить его внутрь интервала цифры главной суммы. Получаем дизъюнктивную систему неравенств, дающую критерий сложения с одним переносом. Выведем первое.
(6) '-с — 1Н1 — .) + ! > *
7 > 1-
(п — 1)-(1 — е) + 1
3 > (п — 1)-(1 — е) + 1
Аналогично выводим вторую возможность:
(7) 2 • п — 2 — 3 > (п — 1)^(1 — е) + 1 ^
J < 2 • п — 3 — (п — 1) • (1 — е)
Если = 0.5, то дизъюнктивные неравенства конкретизируются и упрощаются:
(8) 2^3 >п +1 V 2-7 < 3 • п — 5
Начиная с п = 3, для всех нечетных чисел имеет место по крайней мере одно из этих условий. □
Сложение в таком представлении выполняется за два такта передачи сигналов: размножить сигнал на две линии и передать на сумматор. В электронной реализации число тактов один: схема получает четыре цифры слагаемых и выдает цифру результата без необходимости ожидания дополнительных переносов. Ниже такты подсчитываются по сигналам.
Неравенства (6), (7) влекут критерий возможности параллельного сложения не более чем за два такта в системах с перекрытием.
Любое нечетное число из отрезка [0, 2 ■ п — 2] должно удовлетворять хотя бы одному из условий (6), (7).
Если выполнены оба неравенства, при сложении корректно выдать любую из цифр, соответствующих им.
Отношение длин разрядов в системе с основанием п и перекры-21
тием 0.5 равно -, сдвиг цифр 5 = -. Например, в двоичной
п +1 п +1
длина отрезка 2/3, в троичной 1/2, в четвертичной 2/5. При увеличении разрядности избыточность резко увеличивается. Поэтому аппаратную реализацию целесообразно рассмотреть для двоичной и троичной системы.
Выбор между ними оказывается однозначен.
Первое соображение. В двоичной системе условия сложения за два такта не удовлетворяются ни при каком значении перекрытия.
Второй аргумент. При сложении длина диапазона удваивается, и для дальнейшей работы может понадобится нормализация чисел: преобразование отрезков для уравнивания длин. В троичной системе при значении перекрытия 1/2 нормализация отрезков, длина которых различается на 2т, производится простым сдвигом. Это делается за один такт в параллельной вычислительной системе. Тем самым эффективность операции нормализации не ниже, чем в стандартной системе с плавающей точкой.
В самом деле, для (0,1,3,1/2} диапазон [0,1] разбивается на [0,0.5], [0.25, 0.75], [0.5,1].
Пользуясь равенством (3), можно получить £ =1/2 для других оснований. Например, для основания 4 имеем е = 2/3, и на отрезке [1/3, 2/3] перекрываются значения трех цифр.
Вычитание производится за два такта аналогично сложению.
Тем самым, если первоначально числа нормализованы до одинаковой длины отрезков, то сложение и вычитание любой совокупности чисел в системе ( а, Ь, 3,1/2} может производиться за 3 • т тактов, где т — длина массива чисел, независимо от точности представления слагаемых. По указанным причинам, системы (а,Ь, 3,1/2} назовем оптимальными (для сложения и вычитания).
Для реализации на базе двоичных элементов возможно применить систему (а,Ь, 4, 2/3}: одно из значений в представлении двумя битами все равно не используется. Тем самым есть надежда на незначительные преимущества в надежности и точности без усложнения аппаратной реализации, использования дополнительной памяти и уменьшения скорости вычислений.
Представление чисел с перекрытиями неоднозначно для почти всех. Исключения — концы интервала значений.
Пример 1. 01010101... и 10101010... — представления 1/2 в двоичной системе с перекрытием 1/2. В троичной это число представляется как 01111 . . ., 20000 . . ., 11111 . . . и бесконечным числом других способов.
Сложение за один такт передачи сигналов невозможно независимо от системы, даже с переменным основанием: сумма цифр 0 + 1 всегда выйдет за границы как интервала цифры 0, так и интервала цифры 1. Есть способ выбрать представление слагаемых так, чтобы в подинтервале значений реализовать сложение за один такт.
Определение 6. Представление числа х аккуратное, если х не менее чем на долю /2 отстоит от границ любого интервала любого его разряда.
Числа из интервала [е/2,1 — е/2] могут быть представлено аккуратно. Если система не двоичная, то это представление вычислимо. Сложение аккуратно представленных чисел можно осуществить один такт, но сумма может оказаться не аккуратной.
Преобразование чисел из систем с перекрытием в обычные просто. Сегмент цифры последнего разряда дает доказательно правильный сегмент возможных значений результата.
5. Выводы
Основной результат статьи: оптимальной системой для сложения с точки зрения баланса экономии представления данных,
надежности и быстроты операций является троичная система с перекрытием отрезков соседних цифр на 1/2 их длины.
Системы с перекрытием, насколько показал библиографический поиск, в теоретической информатике не использовались. В математике применялась брауэрова система (2, 1/2) как чисто теоретический инструмент в конструктивной математике. Оценок сложности выполнения операций не было.
В последнее время осознана необходимость применения различных нестандартных систем представления чисел. Неоднородные системы счисления с избыточностью достаточно широко применялись для работы с целыми числами. Они достаточно систематически исследованы в [9], также применяются в задачах кодирования, для немодулярных действий с числами в системе остаточных классов, при синтезе преобразователей напряжения [10] и так далее.
Замечание Ф. Ф. Чаусова: Отметим, что коммутационная аппаратура, включая переключатели и шаговые искатели, с перекрыванием кодирующих контактов, давно и успешно применяется в электромеханических системах автоматики, телемеханики и связи (пример: [11]). Однако в этих устройствах перекрывание кодовых полей применяется только для предотвращения разрыва цепи в процессе коммутации, а не для придания системе новых вычислительных свойств. Отличие вычислительных свойств системы с перекрыванием кодирующих интервалов от ранее исследованных систем впервые выявлено и исследовано в настоящей работе.
В качестве примера использования неравномерных систем для представления дробей стоит упомянуть работы Исупова К. С. ([12]). Их направление ортогонально данной: неперекрывающееся представление через систему остаточных классов. Эти два подхода представляются взаимно дополнительными.
Предварительные результаты данной работы частично анонсированы в [13-16]. Разработка систем с перекрытием и доказательство всех теорем принадлежит Н. Н. Непейводе, программная реализация вычислений в системах с перекрытием И.Н. Григоревскому и Е.П. Лилитко.
Задача аналогичного исследования возможностей эффективного выполнения других операций и требуемых для них представлений данных является в настоящее время актуальной в связи с необходимостью перехода к посткремниевым вычислениям.
Авторы благодарны Ю. С. Затуливетеру, С.В.Знаменскому и
Ф.Ф. Чаусову за ценные обсуждения, исторические замечания и
советы, как улучшить изложение работы.
Список литературы
[1] Н. Н. Непейвода. Алгебраический подход к управлению // Проблемы управления, 2013. Т. 6, с. 2-14. f 105.
[2] Н. Н. Непейвода. Конструктивная математика: обзор достоинств, недостатков и уроков I // Логические исследования, Т. 17. М.- Спб, 2011.— 191239 с. f 106, 109.
[3] В. А. Успенский. Лекции о вычислимых функциях. М.: Наука. Физматлит, 1960. —492 с. f 108, 110.
[4] K. A. Gbolagade. An O(n) Residue Number System, to Mixed Radix Conversion technique // IEEE International Symposium on Circuits and Systems ISCAS, 2009, p. 521-524. f 110.
[5] L.E.J. Brouwer. Besitzt jede reele Zahl eine dezimalbruchentwicklung? // Mathematische Annalen, 1921. Vol. 83, no. 3-4, p. 201-210. f 110, 113.
[6] S. Banach, S. Mazur. Sur les fonctions calculables // Ann. Soc. Pol. de Math., 1937. Vol. 16, p. 223-252. f 110.
[7] S. Mazur. Computable Analysis // Rozprawy Matematyczne, Vol. 33. Warsaw, 1963. f 110.
[8] С. П Шарый. Конечномерный интервальный анализ. Новосибирск: XYZ,
2013. —606 с. f 113.
[9] J.T. Butler, Ts. Sasao. Redundant Multiple-Valued Number Systems // The Proc. of the Japan Research Group on Multiple-Valued Logic, July 1997. Vol. 20, no. 14, p. 1-8. f 118.
[10] A. Kushnerov, S. A. Ben-Yaakov. Algebraic synthesis of Fibonacci ¡Switched Capacitor Converters // IEEE International Conference on Microwaves, Communications, Antennas and Electronics Systems (COMCAS), 2011, p. 1-4. f 118.
[11] В. И. Голдырев, Н. В. Плотников. Авторское свидетельство СССР на изобретение «Переключатель» № 930412, 23.05.1982. f 118.
[12] К. С Исупов. Методы и алгоритмы организации высокоточных вычислений в арифметике остаточных классов для универсальных процессорных платформ: Автореферат кандидатской диссертации. Пенза, 2014. -- 23 с. f 118.
[13] Н. Н. Непейвода. От алгебр программ к алгебраическим вычислениям // Технологии информатизации профессиональной деятельности. — Ижевск,
2014, с. 45-46. f 118.
[14] Н. Н. Непейвода, Ф. Ф. Чаусов. Алгебраическая парадигма вычислений // Суперкомпьютеры, 2014. Т. 3, с. 53-55. f 118.
[15] Н. Н. Непейвода, Ф. Ф. Чаусов, И. Н. Григоревский. Кристаллографические элементы как основа алгебраических вычислений: принципиально новый подход к суперкомпьютингу // Международный симпозиум «Physks of surface phenomena, Interface boundaries and space transitions». — Туапсе, 2014, с. 71-75. f 118.
[16] Е. П. Лилитко, Н. Н. Непейвода, И. Н. Григоревский. Представление действительных чисел, дающее возможность параллельного сложения // Вторая международная научно-практическая конференция «Технические науки: теория, методология и практика» г. Москва, 28 ноября 2014 г. сборник научных докладов. — Москва, 2014, с. 27-34. ^ 118.
Об авторах:
Николай Николаевич Непейвода
Главный научный сотрудник ИПС РАН, научный руководитель работ. Более 200 публикаций по конструктивной математике, логике, информатике
e-mail: [email protected]
Иван Николаевич Григоревский
Младший научный сотрудник ИПС РАН, программная реализация, 10 публикаций
e-mail: [email protected]
Евгений Петрович Лилитко
Главный специалист ИПС РАН, программная реализация. Интересы: языки программирования, автоматический синтез программ, верификация параллельных алгоритмов, построение больших вычислительных систем e-mail: [email protected]
Образец ссылки на эту публикацию:
Н. Н. Непейвода, И. Н. Григоревский, Е. П. Лилитко. О представлении действительных чисел // Программные системы: теория и приложения: электрон. научн. журн. 2014. T. 5, №4(22), с. 105-121.
URL http://psta.psiras.ru/read/psta2014_4_105-121.pdf
Nikolai Nepejvoda, Ivan Grigorevsky, Evgeny Lilitko. New Representation of Real Numbers.
Abstract. Overlaying number systems for real numbers are introduced and studied. It is shown that addition, subtraction and normalization can be done for the number system with radix 3 and overlay factor 0.5 in two tacts independently of number of digits. (In Russian).
Key Words and Phrases: real numbers, number systems, constructive mathematics, data structures.