RUS  ENG
Полная версия
ВИДЕОТЕКА



Счёт вслепую. Занятие 1

М. А. Раскин



Аннотация: Пользуясь цифрами 0 и 1, несложно записать натуральное число. Сложение в столбик позволяет прибавить к этому числу единицу. Такой способ записи и изменения числа требует в некоторых ситуациях прочитать и изменить все цифры.
А если число большое и мы хотим читать и писать поменьше цифр, но можем быстро запросить любые цифры числа «вразбивку»? Разумеется, придётся изменить представление числа. С середины 20-го века известны коды Грея; нам всё равно потребуется иногда читать число целиком, зато менять надо будет лишь по одной цифре за раз.
А можно ли прибавить к числу единицу, не читая всего числа? Оказывается, можно. Известен способ, при котором увеличение числа из $n$ двоичных цифр на каждом из $2^n$ шагов оставляет непрочитанной одну цифру. Можно ли лучше? Наверное чуть лучше можно, точно не знаю. Но хотя бы половину цифр прочитать придётся. Причём увеличить запись, тратящую $n+1$ цифру на числа от 1 до $2^n$, можно прочитав лишь около $\log n$ цифр, но вот если использовать все комбинации, то придётся читать не меньше $\dfrac12 n$.
Конструкции — после того, как они были один раз предъявлены — объясняются совсем просто; а для нижней оценки надо пошаманить с перестановками и их чётностью, чем мы и займёмся.
Предварительных знаний не потребуется. Я надеюсь, что всем слушателям удастся понять из рассказанного не меньше, чем они пожелают.

Примерная программа курса
  • Коды Грея (прибавление единицы с изменением только одной цифры).
  • Запись чисел, бинарные деревья принятия решений и сложность операций.
  • Бинарные диаграммы принятия решений: ещё один канонический вид для функций с бинарными аргументами
  • Нижняя оценка класса «совесть надо иметь»: почему нельзя надеяться прочитать меньше логарифмического количества цифр.
  • Увеличение чисел в экономной записи без чтения целиком: что сказал полный перебор и как это запомнить.
  • Почему в экономной записи придётся прочитать половину цифр: перестановки, параллельные переносы и чётность.
  • Увеличение чисел без чтения целиком: медленное сложение в столбик для случая с лишней цифрой.
  • Прибавление единицы для записей, тратящих $n$ цифр на «почти» $2^n$ значений.


Website: https://www.mccme.ru/dubna/2017/courses/raskin.html
Цикл лекций


© МИАН, 2024