Третий путь
Куда смотрели два первых пути
Часть II прошла к натуральному ряду два пути. Кардинальный путь (Глава II.2) получил ряд из повторимости акта различения: число есть длина списка совершённых различий. Иерархический путь (Глава II.3) получил тот же ряд из закона порядка: число есть уровень иерархии. Оба пути доведены до конца, и оба пришли к одному ряду.
Прежде чем открыть третий путь, стоит заметить, на что смотрел каждый из двух первых, — потому что третий путь будет смотреть иначе, и в этом ином взгляде всё дело.
Кардинальный путь смотрел на совершённые различия как на список: он спрашивал сколько их, и число было длиной этого списка. Иерархический путь смотрел на различия как на ступени: он спрашивал, как высоко поднялась иерархия, и число было уровнем. Разные вопросы — но в обоих случаях взгляд направлен наружу одного акта: акт различения берётся как нечто уже совершённое, как готовая единица, и считается, сколько таких единиц в списке или на какой они ступени. Что происходит внутри одного акта, ни тот ни другой путь не спрашивал.
Куда смотрит третий путь
Третий путь смотрит внутрь одного акта различения.
Он берёт не список актов и не их иерархию, а один акт — и спрашивает: как он устроен? Что происходит, когда совершается одно различение? И ответ — который будет получен в § 4.2 из законов логики — таков: всякий акт различения есть выбор из двух. Различить значит положить при — и ничего третьего: ни промежуточного, ни четвёртого. Один акт различения двоичен.
Из этой двоичности и развернётся третий путь к натуральному ряду. Если один акт есть двоичный выбор, то совершить актов значит совершить двоичных выборов; и число предстанет как количество двоичного выбора — как длина двоичной записи. На этом пути натуральное число обнаружит родство с понятием, которое математика и наука Нового времени называют информацией: ибо единица информации — бит — есть в точности один двоичный выбор.
Чем третий путь отличается от двух первых
Различие исходных точек стоит назвать прямо, потому что на нём держится независимость третьего пути.
Кардинальный и иерархический пути брали акт различения как целое и считали такие целые — в списке или в иерархии. Третий путь вскрывает акт: он смотрит не на то, сколько актов совершено, а на то, что есть один акт по своему внутреннему устройству. Его исходная точка — двоичность; ни кардинальный путь, ни иерархический о двоичности ничего не говорят, как третий путь ничего не говорит о длине списка и об уровне.
Это — третья независимая деривация. Она не опирается на две первые и не выводится из них: список различий и иерархия уровней в ней не участвуют. И потому, если третий путь придёт к тому же натуральному ряду — а он придёт, — это будет третьим независимым свидетельством того, что ряд есть структурная неизбежность, а не особенность одного приёма.
Что предстоит главе
Глава пройдёт бинарный путь шаг за шагом. Сначала будет установлено главное — что акт различения двоичен, и установлено не наблюдением, а выводом из законов логики и (§ 4.2). Затем — что один двоичный акт есть единица информации, бит, и что ToS приходит к биту своим путём, независимо от теории информации (§ 4.3). Далее — ядро пути: число как количество двоичного выбора, как длина двоичной записи (§ 4.4). Затем — что наращивание двоичной записи порождает натуральный ряд (§ 4.5). После этого бинарный путь будет сопоставлен с двумя пройденными: три пути, один ряд (§ 4.6). Будет показано, что индукция и здесь не аксиома (§ 4.7). И глава завершится переходом к четвёртому, последнему пути (§ 4.8).
Бинарный путь — третий путь ToS к натуральному ряду. Два первых пути смотрели на акт различения снаружи — как на готовую единицу, которую считают в списке или размещают в иерархии. Третий путь смотрит внутрь одного акта и берёт за основу его двоичность: всякое различение есть выбор из двух. Из двоичности акта развернётся число как количество двоичного выбора, и натуральный ряд обнаружит родство с понятием информации.
Двоичность акта различения
Что предстоит установить
Третий путь стоит на одном основании: акт различения двоичен. Если это основание прочно, дальше всё развернётся из него; если шатко, не устоит и путь. Поэтому двоичность акта будет здесь не объявлена и не взята из наблюдения, а выведена — из законов логики, уже установленных в Части I.
Двоичность означает определённое: всякий акт различения делит на ровно две части. Не на три, не на одну, не на сплошной ряд промежуточных оттенков — на две, и ровно на две. Это «ровно две» и нужно обосновать: показать, что частей не меньше двух и не больше двух. Первое даст закон , второе — закон .
Закон {L2}: частей не меньше двух
Приведём в его формулировке из Главы I.3. Закон Непротиворечия — утверждение, что нечто не может быть собой и не собой одновременно в одном отношении; формально, для произвольной пропозиции, — . Онтологически, как установила Глава I.3, есть структурное условие самой возможности разделения: без взаимного исключения положительной и отрицательной сторон само разделение распалось бы, ибо «положительная» и «отрицательная» стороны слились бы в одно.
Приложим это к акту различения. Различить значит выделить при
. Здесь нужна точность относительно того, что именно делает
. Сам факт двух сторон задаётся не законом , а
структурой различения: положительная и отрицательная стороны
уже присутствуют как две стороны акта — в записи Distinction
это поля positive и negative, в типе Side
из Binarity.v — два конструктора Marked и
Unmarked. Закон эти стороны не создаёт из
ничего; формально — это , и он
говорит о двух уже заданных сторонах: он запрещает им
сливаться, иметь место одновременно. Что же даёт для
двоичности? Он обеспечивает не «появление двух из ничего», а
раздельность двух сторон: то, что положено как , не есть
одновременно . Без этой раздельности двоичность распалась бы —
«положительная» и «отрицательная» стороны слились бы в одно, и
различения не было бы вовсе. Поэтому точная роль такова: он
удерживает раздельными две стороны, заданные структурой акта, и
тем гарантирует, что сторон в акте различения не меньше двух —
ибо две раздельные стороны не могут оказаться одной.
Закон {L3}: частей не больше двух
Приведём в его формулировке из Главы I.3. Закон Исключённого Третьего — утверждение, что при всяком разделении нечто есть либо , и третьего не дано; формально, для произвольной пропозиции, — . Онтологически, как установила Глава I.3, есть условие полноты разделения: при всяком акте различения, в котором уже работают тождество сторон () и их исключительность (), не остаётся места для «третьего» — чего-то, что не было бы ни положительной, ни отрицательной стороной.
Приложим это к акту различения. Различение выделило и .
Закон говорит, что этим выделением всё исчерпано: нет
третьей стороны — нет того, что не было бы ни , ни
. И здесь нужна та же точность, что и для . Формально
— это : утверждение о пропозиции и её
отрицании. Само по себе, в пустом пространстве,
не запрещает завести ещё один синтаксический ярлык: оно говорит,
что всякое есть либо так, либо отрицание, — но не
ограничивает наперёд, сколько вообще может быть «сторон». Точная
формулировка такова: действует не в пустом пространстве, а
внутри уже заданной рамки различения. Если стороны акта
представлены типом Side с конструкторами Marked и
Unmarked, то исчерпывает именно это
заданное пространство: всякий элемент типа Side есть
либо Marked, либо Unmarked, и иного
типом не предусмотрено. Так формальная запись фиксирует отсутствие
третьей стороны: не запретом «не вводить третий ярлык», а тем, что
рамка различения уже имеет ровно две стороны, и
утверждает их исчерпанность. А раз пространство сторон заранее есть
рамка из двух, и оно исчерпано, то сторон в акте различения не
больше двух.
Ровно две: акт различения двоичен
Сложим два вывода. По две стороны акта не сливаются — раздельны, и потому их не меньше двух. По заданная рамка из двух сторон исчерпана — третьей нет, и потому их не больше двух. Не меньше двух и не больше двух — значит ровно две.
Стоит точно назвать, как это зафиксировано формально, не приписывая
коду большего, чем в нём есть. В файле Binarity.v
Rocq-репозитория ToS стороны различения представлены не выводом из
Distinction, а отдельным типом: объявлен
Inductive Side := Marked | Unmarked — тип с двумя
конструкторами (Marked — положительная сторона,
Unmarked — отрицательная). Файл Binarity.v не
импортирует Distinction.v и не строит Side как
теорему из полей positive / negative /
exclusive / exhaustive записи Distinction.
Поэтому связь с и нужно изложить точно: в прозе
двоичность обосновывается через и —
удерживает стороны раздельными, исчерпывает заданную рамку;
в Binarity.v это обоснование фиксируется через
отдельный тип Side с двумя конструкторами и две леммы о них:
L2_exclusive (Marked <> Unmarked — конструкторы
различны) и L3_exhaustive (forall s : Side, s = Marked \/ s = Unmarked — всякий элемент типа
исчерпывается двумя случаями). Двоичность, таким образом, не
выведена в коде из записи Distinction — она
задана типом Side и подтверждена двумя
леммами, отвечающими и .1 Всякий акт различения делит ровно
на две части: на и , и более ни на что.
Акт различения двоичен, и это обосновано, не предположено. По
закону положительная и отрицательная стороны не сливаются —
сторон не меньше двух. По закону заданная рамка из двух
сторон исчерпана, третьей не дано — сторон не больше двух. Не меньше
и не больше двух есть ровно две: всякое различение делит на и
, и ни на что сверх. Формально это фиксирует тип Side
из Binarity.v — два конструктора и две леммы, отвечающие
и .
Этот вывод не означает, что ToS выбрала двоичную систему счисления среди прочих — двоичную предпочла троичной или десятичной. Выбора здесь нет (модус ToS — деривация, не выбор). Двоичность акта различения не есть система записи чисел; она есть устройство самого акта, и устройство это вынуждено законами и . Десятичная, троичная, любая иная запись числа — позднейшая условность, дело удобства; двоичность акта различения — не условность, а то, как акт устроен прежде всякой записи. На этом устройстве, а не на выбранной системе счисления, и стоит третий путь.
Что отсюда следует
Из двоичности акта следствие лежит близко, и им займётся весь остаток главы. Если один акт различения есть двоичный выбор — выбор из и , — то всякое различение есть ответ на один вопрос вида « или ?»: вопрос с двумя возможными ответами и никаким третьим. Совершить различений значит ответить на таких вопросов. И число предстанет на этом пути как количество двоичных вопросов, на которые отвечено, — количество двоичного выбора.
Но прежде, чем считать двоичные выборы, стоит назвать, чем является один такой выбор. Один ответ на вопрос « или ?» имеет имя — и имя это пришло из науки об информации. Следующий раздел показывает: один двоичный выбор есть бит, и ToS приходит к биту своим путём.
Различение как бит
Один двоичный выбор
Акт различения двоичен (§ 4.2): он есть выбор из двух — или , и ничего третьего. Назовём теперь, чем является один такой выбор, взятый сам по себе.
Один акт различения есть ответ на один вопрос вида « или ?» — вопрос, у которого ровно два возможных ответа. Совершить различение значит этот вопрос разрешить: положить одно из двух. До акта вопрос открыт — обе возможности налицо; после акта он закрыт — одна возможность стала положенной. Один акт различения снимает одну двузначную неопределённость.
Здесь стоит развести три вещи, которые легко слить и слитие которых сделало бы дальнейшее неточным. Первое — рамка различения: само наличие двух сторон, и , заданное структурой акта. Второе — исход различения: то, какая из двух сторон положена в данном акте. Третье — бит: зафиксированный один из двух возможных исходов. Рамка задаёт возможность двоичного исхода; исход эту возможность разрешает; бит соответствует именно одному разрешённому двоичному исходу. Когда ниже говорится «акт различения есть бит», имеется в виду эта связка: акт, взятый со своей двоичной рамкой и со своим разрешённым исходом, и есть один бит.
Бит
Снятие одной двузначной неопределённости — ответ на один вопрос «да или нет» — имеет в науке Нового времени точное имя. Оно называется бит.
Бит — единица информации, введённая в теории информации в середине двадцатого века. В строгом информационно-теоретическом смысле один бит информации соответствует двоичному выбору с равновозможными исходами: количество информации в ответе на вопрос «да или нет», у которого оба ответа имеют вероятность одна вторая. Это — бит в смысле Шеннона, и он предполагает вероятностную меру.
Бит, к которому приходит ToS, нужно ввести точнее — и отличить от шенноновского. Акт различения в ToS не сопровождается вероятностным распределением: он есть структурный выбор между двумя сторонами, и о вероятностях сторон ToS на этом пути ничего не утверждает. Поэтому ToS первично вводит структурный бит: одну двоичную позицию, один акт выбора между двумя сторонами, безотносительно к вероятностям. Структурный бит и шенноновский бит совпадают при условии: когда к двоичной позиции добавляется вероятностная мера с равновозможными исходами, один структурный бит несёт ровно один шенноновский бит информации. Без этого условия они различны — если один исход заранее почти известен, шенноновская мера меньше одного бита, тогда как структурный бит остаётся одним: одна двоичная позиция налицо независимо от вероятностей.
Сопоставим теперь с актом различения именно структурный бит. Акт различения, как показал § 4.2, есть один двоичный выбор: или . Структурный бит есть одна двоичная позиция: да или нет. Это — одно и то же: рамка « или ?» и рамка «да или нет?» суть одна двоичная рамка, и один разрешённый исход в ней есть один структурный бит. Один акт различения есть один структурный бит.
Независимое схождение, не заимствование
Сказать «акт различения есть бит» легко прочесть как заимствование: будто ToS берёт готовое понятие из теории информации и прикладывает его к различению. Прочтение это неверно, и поправить его важно.
ToS не заимствует бит. Бит выведен здесь заново, своим путём, — из законов и (§ 4.2). ToS не предполагала двоичной единицы и не искала её; она прослеживала устройство акта различения и обнаружила, что акт двоичен, — а двоичный выбор и есть то, что в другой традиции названо битом. Совпадение обнаружено, а не положено в основание.
И стоит видеть, в чём это совпадение глубже простого созвучия — но видеть точно, без несправедливости к теории информации. Теория информации принимает двоичный выбор как естественную минимальную единицу различимого сообщения и строит меру информации через логарифм по основанию два. Это не произвольный постулат: выбор двоичной единицы в теории информации хорошо мотивирован — он отвечает минимальному нетривиальному различению. Но теория информации приходит к двоичности со стороны задачи измерения сообщений; вопрос «почему минимальный акт различения вообще имеет две стороны» она перед собой не ставит — он лежит вне её предмета. ToS ставит именно этот вопрос и отвечает на него: по и акт различения не может быть не двоичным — троичная «единица различения» нарушила бы , а одночастная не была бы различением вовсе. Теория информации приходит к двоичному выбору из задачи измерения сообщений; ToS — из структуры акта различения. Это и есть схождение независимых путей: две дороги, разные по исходному вопросу, приводят к одной двоичной единице.
Один акт различения есть один структурный бит — одна двоичная позиция, одно снятие двузначной неопределённости. ToS не заимствует бит из теории информации: бит выведен заново, из законов и . Теория информации приходит к двоичной единице из задачи измерения сообщений; ToS — из структуры акта различения. Совпадение двух путей обнаружено, а не положено.
Граница схождения
Чтобы сопоставление осталось точным, стоит провести его границу.
Совпадает единица: и теория информации, и ToS приходят к двоичному выбору как к неделимой единице — к биту. На этом схождение и кончается. ToS не перенимает у теории информации ни её дальнейших построений, ни её предмета. Теория информации измеряет передачу сообщений по каналам связи, говорит о кодировании, о пропускной способности, о шуме — ничего этого ToS из совпадения не заимствует и в Часть II не вводит. Сходство касается одной точки — того, что единица есть двоичный выбор; всё, что теория информации строит поверх этой единицы, есть её собственное здание, к деривации натурального ряда отношения не имеющее.
ToS берёт из совпадения ровно одно: подтверждение, что двоичный выбор — естественная единица, к которой приходит не она одна. Дальше ToS пойдёт своим путём — считать двоичные выборы и получать из их количества натуральный ряд.
Мост к физическому тому
Двоичность акта различения — основание не только настоящей главы. В дальнейшем труде, в томе, посвящённом физике, она получает развитие, и на это стоит указать кратко — не разворачивая.
Если всякое различение есть один бит, то совокупность совершённых
различий измерима в битах — ей отвечает определённое количество
двоичного выбора. В дальнейшем труде, в томе, посвящённом физике, эта
линия будет развёрнута: количество различений, выраженное в битах,
связывается там с числом возможных микросостояний системы и с
энтропийной мерой — с тем, что физика называет мерой беспорядка. В
текущем репозитории уже есть формальные заготовки этого
моста: файл Binarity.v содержит функции two_pow и
microstates и леммы о том, что добавление ещё одного
различения удваивает число возможных состояний (рост числа
состояний как ). Это — комбинаторные леммы о степенях двойки
плюс комментарии, намечающие связь с энтропией; полный физический
вывод энтропийных законов в них ещё не содержится и относится к
физическому тому.
Подробнее этого Часть II не касается: энтропия, физические системы, законы их изменения — предмет иного тома, и здесь довольно указать, что мост намечен, а его формальные заготовки в репозитории есть. Для натурального ряда существенно лишь то, что уже установлено: акт различения двоичен, и один акт есть структурный бит.
Один двоичный выбор назван — это бит. Остаётся главное: считать двоичные выборы и увидеть, что их количество и есть натуральное число. Это — предмет следующего раздела.
Число как количество двоичного выбора
От одного бита к числу
Один акт различения есть один бит — один двоичный выбор (§ 4.3). Этого довольно, чтобы сделать главный шаг бинарного пути: показать, что натуральное число есть количество двоичного выбора.
Ход прост и идёт по образцу кардинального пути. Кардинальный путь (Глава II.2) считал акты различения как элементы списка: число есть длина списка. Бинарный путь считает акты различения как двоичные выборы: число есть количество совершённых двоичных выборов. Различие в том, чем взят акт: на кардинальном пути — неразложимой единицей списка, на бинарном — одним битом, одним «да или нет». Считается, однако, одно и то же: совершённые акты.
Число есть количество бит
Совершить ряд различений значит совершить ряд двоичных выборов: первый, второй, третий. Каждый выбор — один бит. Количество совершённых бит есть натуральное число: один бит — единица, два бита — двойка, три бита — тройка, и так далее.
Это можно сказать и через запись. Записать совершённые двоичные выборы значит выписать их подряд — каждый своим знаком, нулём или единицей, по тому, какая из двух сторон положена. Получается двоичная запись — строка двоичных знаков. И натуральное число на бинарном пути есть длина этой записи: число двоичных знаков в ней, число позиций. Три двоичных выбора — запись из трёх знаков — число три.
Подчеркнём, что именно длина. Натуральное число на бинарном пути не есть значение двоичной записи как кода — не есть то число, которое запись «обозначает» в двоичной системе счисления. Оно есть количество знаков в записи, длина строки двоичного выбора. Бинарный путь считает выборы, а не истолковывает их как цифры кода.
О формальном статусе двоичной записи.
Здесь нужна редакторская точность относительно того, что в коде уже
есть. Файл Binarity.v содержит тип Side (с леммами
/ ) и комбинаторные леммы о . Слой же
двоичных записей — определения Bit, BitString,
bit_length, add_bit и теоремы о длине записи и
положительном бинарном счёте — теперь построен поверх него, в
отдельном файле BitString.v. Это прямое перенесение
кардинального аппарата Главы II.2 на тип Side:
Definition Bit := Side.
Definition BitString := list Bit.
Definition bit_length (bs : BitString) : nat := length bs.
Definition add_bit (b : Bit) (bs : BitString) : BitString := b :: bs.
Lemma add_bit_increments_length : forall b bs,
bit_length (add_bit b bs) = S (bit_length bs).
Proof. reflexivity. Qed.
Definition positive_bit_count (bs : BitString) : Prop :=
(bit_length bs >= 1)%nat.
Lemma nonempty_positive_count :
forall bs, bs <> [] -> positive_bit_count bs.{
С этим слоем «один бит есть первый положительный счёт» получает прямой
якорь: запись one_bit := [Marked] с леммой
one_bit_length (); а
положительность счёта всякой непустой записи — лемму
nonempty_positive_count («непустая запись имеет
bit_length »). Счёт здесь берётся со стороны
записи (предикат positive_bit_count на
BitString), а не индексируется числом; число-сторона («для
всякого есть запись длины ») читается с него прямо и
параллельна уже доказанной positive_nat_is_distinction_count
из PrimalityOfOne.v. Весь слой — 7 теорем, без единой
аксиомы; формальным якорем бинарного пути служат теперь и тип
Side с / , и построенный над ним
BitString.v.}
Развилка: {K} двоичных выборов, не {2^K} исходов
Здесь бинарный путь проходит развилку, и важно видеть, каким из двух направлений он идёт, — потому что второе направление увело бы не к натуральному ряду, а в сторону.
Двоичный выбор связан с числом два дважды, и эти две связи легко смешать. С одной стороны, есть количество двоичных выборов — сколько бит совершено: бит. С другой стороны, есть число исходов — сколько различных строк длины можно составить из двоичных знаков: таких строк . Это разные величины. При трёх битах количество выборов есть три, а число возможных строк есть , то есть восемь.
Бинарный путь к натуральному ряду идёт через первую величину — через , количество совершённых двоичных выборов. Именно есть натуральное число этого пути: совершено три выбора — число три. Величина — число исходов — не есть то число, которое бинарный путь извлекает из двоичной записи. Само по себе тоже, разумеется, натуральное число; речь не о том, что оно «не число». Речь о том, что оно отвечает на другой вопрос: не «сколько выборов совершено», а «сколько различимых строк длины возможно». Это вопрос о комбинациях, и им ToS займётся позднее, строя из натуральных чисел структуры богаче ряда. Здесь же путь идёт строго через : число есть количество двоичного выбора, не число его возможных исходов. В терминах E/R/R это различение роли и элемента: — роль-количество, — мощность иного множества (§ 4.8.2).
Натуральное число на бинарном пути есть количество двоичного выбора — количество совершённых бит, длина двоичной записи. Это — сколько выборов сделано, а не — сколько строк они могли бы дать. Путь считает сами выборы, а не их возможные исходы.
Один бит есть первое положительное число
Бинарный путь, как и два прежних, начинается с единицы — и начало здесь ровно то же.
Наименьшее, что бинарный путь считает, — это один двоичный выбор: одно различение, один бит. Здесь нужна та же аккуратность, что в кардинальном пути (Глава II.2, § 2.3.3). Следует различать техническую длину пустой записи и положительный счёт совершённых выборов. Пустая двоичная запись — запись без единого бита — существует как полноправный объект формальной теории списков, и её длина есть : подсчёт пустой записи законно завершается нулём. Но положительный бинарный счёт — счёт совершённых двоичных выборов — начинается с одного бита: с первого совершённого двоичного выбора. Нуль здесь не первый бит и не положительный счёт; он есть техническая длина пустой записи — граница, а не первое число счёта. Первое, что бинарный путь считает как совершённое, — это один двоичный выбор, и ему отвечает единица: первое положительное число бинарного пути.
Здесь бинарный путь сходится с кардинальным и иерархическим в той же точке, в какой те сходились между собой. Кардинальный путь начинал ряд с единицы — с первого совершённого акта (Глава II.1, § 1.2). Иерархический начинал с единицы — с базового уровня (Глава II.3, § 3.3.5). Бинарный начинает с единицы — с первого совершённого двоичного выбора. Нуль и здесь не первое число счёта: «нуль бит» есть техническая длина пустой записи, не первый положительный бинарный счёт. Первичность единицы подтверждается с третьей, независимой стороны.
Натуральное число есть количество двоичного выбора, и счёт его начинается с единицы. Остаётся показать, как наращивание двоичной записи порождает весь натуральный ряд. Это — предмет следующего раздела.
Двоичная запись порождает ряд
От числа к ряду
Натуральное число есть количество двоичного выбора — длина двоичной записи (§ 4.4). Установлено это, так сказать, для отдельного числа: данной записи отвечает данное число. Теперь нужно показать, что бинарный путь даёт не отдельные числа, а весь ряд — что наращивание двоичной записи порождает целиком.
Ход здесь тот же, каким шли два прежних пути. Кардинальный путь порождал ряд присоединением различия к списку; иерархический — надстраиванием уровня. Бинарный путь порождает ряд добавлением бита — ещё одного двоичного выбора к уже совершённым.
Добавить бит есть перейти к следующему числу
Пусть совершено некоторое количество двоичных выборов — есть двоичная запись некоторой длины, и ей отвечает некоторое натуральное число. Совершим ещё один двоичный выбор — ещё одно различение, ещё один бит. Запись удлинилась на один знак.
Что это дало числу? Длина записи возросла на единицу: где было знаков, стало . А раз число есть длина записи (§ 4.4), то добавление одного бита увеличило число ровно на единицу. Добавить бит — значит перейти от числа к следующему за ним.
Добавление бита есть, стало быть, операция следования. То, что на
кардинальном пути было присоединением различия к списку, а на
иерархическом — надстраиванием уровня, на бинарном пути есть
удлинение двоичной записи на один знак. Три операции, и все три
суть одна операция следования S, взятая в трёх видах: S
есть «ещё одно различие в списке», «ещё один уровень над уровнем»,
«ещё один бит в записи». На бинарном пути S есть добавление
бита.
Стоит оговорить, с какой стороны бит добавляется. Для длины
записи это безразлично: добавляется ли новый бит слева
(b :: bs, в голову) или справа (bs ++ [b], в конец),
длина в обоих случаях возрастает ровно на единицу, — а бинарному
пути нужна именно длина. Для записи как строки знаков сторона
добавления, напротив, существенна, и тут есть два естественных
прочтения: если запись читается хронологически — первый
выбор, второй, третий слева направо, — новый бит удобно добавлять
справа, в конец; если запись читается как стек
совершённых выборов, новый бит добавляется слева, в голову, и
голова хранит последний сделанный выбор. Бинарный путь к натуральному
ряду опирается на длину и потому к стороне добавления безразличен; но
называть её прямо полезно, чтобы порядок знаков в записи не остался
двусмысленным.
Наращивание записи порождает ряд
Теперь порождение ряда видно вполне. Начинаем с наименьшего — с одного двоичного выбора, записи в один знак; ей отвечает единица. Добавляем бит — запись в два знака, число два. Добавляем ещё бит — запись в три знака, число три. Каждое добавление бита удлиняет запись на знак и увеличивает число на единицу; каждая достигнутая длина есть очередное натуральное число. Наращивание двоичной записи, начатое от записи в один знак и неограниченно продолжаемое, порождает весь натуральный ряд:
Две строки — одно движение. Наращивание двоичной записи и счёт по натуральному ряду суть одно и то же порождение, записанное в двух видах.
Третья манифестация одной структуры
Бинарный путь приходит здесь к тому же, к чему пришли два прежних, — и стоит назвать, к чему именно.
Натуральный ряд устроен из двух вещей: есть начальный элемент — единица, и есть операция следования, порождающая из каждого числа следующее (Глава II.2, § 2.5; Глава II.3, § 3.4). Все три пройденных пути дали ровно это устройство, разнясь лишь тем, чем на каждом оказались начальный элемент и операция следования. На кардинальном пути: начальный элемент — первое различие в списке, операция следования — присоединение различия. На иерархическом: начальный элемент — базовый уровень, операция следования — надстраивание уровня. На бинарном: начальный элемент — первый бит, операция следования — добавление бита.
Три пути — три манифестации одной и той же структуры: начальный элемент плюс операция следования. Бинарный путь не строит иного ряда и не строит ряд иначе устроенным — он показывает ту же структуру натурального ряда ещё раз, третьим её воплощением. В разборе E/R/R (§ 4.8.2) это одна ролевая структура числа на третьем носителе.
Наращивание двоичной записи порождает натуральный ряд: начатое
от записи в один знак (которой отвечает единица) и продолжаемое
добавлением бита (каждое увеличивает длину, а с ней число, на единицу),
оно даёт длину за длиной — число за числом. Добавление бита есть
операция следования S, взятая на бинарном пути. Это третья
манифестация одной структуры натурального ряда — начального элемента
и операции следования.
Бесконечность ряда двоичных длин
О бесконечности ряда, порождаемого наращиванием записи, нужно сказать то же, что Главы II.2 и II.3 сказали о бесконечности натурального ряда, — и по тому же основанию.
Наращивание записи неограниченно: ко всякой двоичной записи можно добавить ещё один бит — совершить ещё один двоичный выбор. Нет последней записи, дальше которой добавлять было бы нельзя. Но неограниченность наращивания не есть наличие завершённой совокупности всех двоичных записей сразу. По принципу — принципу конечной актуальности (Глава II.2, § 2.7) — актуальна на всякой стадии лишь конечная запись конечной длины; ряд двоичных длин бесконечен потенциально — как неограниченная продолжаемость наращивания, а не как готовая совокупность всех длин.
Бинарный путь приходит здесь к тому же, к чему пришли кардинальный и иерархический, и это одно и то же ограничение, увиденное с третьей стороны. Натуральный ряд — неисчерпаемая возможность добавлять бит, не исчерпанный итог такого добавления. Бинарный путь не добавляет к бесконечности натурального ряда ничего нового; он подтверждает с третьей стороны: ряд бесконечен потенциально, по .
Натуральный ряд порождён в третий раз — наращиванием двоичной записи. Остаётся сопоставить три пройденных пути и увидеть, что они дали один ряд. Это — предмет следующего раздела.
Сравнение с двумя пройденными путями
Чем три пути различны
Три пути к натуральному ряду пройдены: кардинальный в Главе II.2, иерархический в Главе II.3, бинарный в § 4.1–4.5. Настоящий раздел ставит их рядом — не выбирая лучшего и не проверяя один другим, а чтобы увидеть, что совпало и что это значит. Начать следует с того, чем три пути различны.
Различны они исходной точкой — тем, на что смотрят, и какой операцией порождают ряд.
Кардинальный путь смотрит на совершённые различия как на список и спрашивает, сколько их. Число — длина списка; операция следования — присоединение к списку различия.
Иерархический путь смотрит на различия как на ступени и спрашивает, как высока иерархия. Число — уровень; операция следования — надстраивание над уровнем уровня.
Бинарный путь смотрит внутрь одного акта и спрашивает, как он устроен. Число — количество двоичного выбора, длина двоичной записи; операция следования — добавление к записи бита.
Различие исходных точек существенно. Список, иерархия, двоичность акта — три разные вещи; ни один путь не берёт свою исходную единицу счёта из того, на что опирается другой. Кардинальный путь выводит единицу из совершённого акта-в-списке, иерархический — из ступени иерархии, бинарный — из внутренней двоичности одного акта. Три независимые деривации в источнике единицы, и ни одна не выводится из других.
Здесь, однако, нужна точность, иначе независимость будет преувеличена. Бинарный путь независим от первых двух по источнику единицы счёта: он берёт единицу из двоичности акта, не из списка актов и не из иерархии уровней. Но как только двоичные выборы записаны в строку, переход от строки к числу снова использует кардинальный механизм — длину записи. Длина двоичной записи есть та же операция, что длина списка различий в Главе II.2: подсчёт элементов выстроенной последовательности. Поэтому независимость бинарного пути — независимость в том, откуда берётся единица (бит, а не элемент списка и не уровень), а не в том, как из единиц собирается число. Операция сборки — длина — у бинарного и кардинального путей общая. Это не ослабляет бинарный путь: он действительно даёт новый, третий источник единицы счёта; но ряд из этих единиц он строит тем же механизмом длины, и честнее это назвать прямо.
В чём три пути совпали
При всём различии исходных точек итог трёх путей один, и совпадение точное — по самому устройству ряда.
Каждый путь дал ряд с началом — единицей — и операцией следования,
порождающей из каждого числа следующее. Кардинальный: единица —
первое различие, следование — присоединение различия. Иерархический:
единица — базовый уровень, следование — надстраивание. Бинарный:
единица — первый бит, следование — добавление бита. Начала всех трёх
путей суть одна и та же единица; операции следования всех трёх — одна
и та же операция S, взятая в трёх видах (§ 4.5.4). И
бесконечность во всех трёх случаях одна — потенциальная, по
.
Три пути расходятся в исходной точке и в том, чем предстаёт операция следования, — и сходятся в результате полностью. Три разные деривации привели к тождественному ряду: к одному и тому же .
Три пути, один ряд
Совпадение трёх независимых путей усиливает довод, ради которого Часть II их и проходит.
Глава II.3 (§ 3.6.5) уже отметила: совпадение двух независимых путей есть довод о структурной неизбежности натурального ряда — о том, что не изобретён, а обнаружен. Третий путь усиливает этот довод. Будь путей два, ещё можно было бы предполагать, что они неявно родственны — что обе деривации, при всём различии, как-то опираются на общее, не названное основание, и потому совпадение их итога не так уж удивительно. Третий путь, исходящий из совсем иного — из устройства одного акта, — такое предположение делает всё менее правдоподобным. К одному и тому же ряду ведут уже три дороги, проложенные из трёх разных мест: от списка, от иерархии, от двоичности. Чем больше независимых путей сходится в одной точке, тем яснее, что точка эта — не перекрёсток случайных дорог, а то, к чему дороги вынуждены приходить.
Три независимых пути — кардинальный, иерархический, бинарный — дают тождественный натуральный ряд: одну единицу в начале, одну операцию следования в трёх видах, одну потенциальную бесконечность по . Совпадение трёх путей усиливает довод о структурной неизбежности : чем больше независимых дорог сходится в одной точке, тем яснее, что к этой точке деривация ToS вынуждена приходить.
Задел к синтезу
Сопоставление трёх путей подводит к вопросу, который Часть II пока оставляет открытым, — и стоит его назвать, не разрешая здесь.
Три пути дают один ряд. Но почему они дают один ряд? Что именно делает список различий, иерархию уровней и двоичную запись тремя видами одного? Сказать, что все три дают структуру «начальный элемент плюс операция следования», ещё не объяснить, отчего столь разные деривации приходят к этой структуре. За совпадением трёх путей стоит, по-видимому, нечто общее — то, что делает натуральный ряд неизбежным итогом всякой из них.
Этого вопроса бинарный путь не разрешает: ему довольно показать, что третий путь к ведёт и приводит. Разрешить вопрос — дело синтеза, которым Часть II завершится: собрать четыре пути воедино и назвать то общее, ради чего они сходятся. Бинарный путь оставляет этот вопрос как задел.
Три пути сопоставлены. Остаётся показать, что индукция и на бинарном пути не аксиома, и подвести итог главы. Это — предмет следующих разделов.
Индукция по двоичной записи
Индукция и на третьем пути
Два прежних пути показали, что индукция в ToS не аксиома. Кардинальный путь обосновал её повторимостью акта: база — первый акт, шаг — ещё один акт (Глава II.2, § 2.6). Иерархический — устройством иерархии: база — основание, шаг — надстраивание (Глава II.3, § 3.7). Бинарный путь приходит к ряду третьей дорогой — через наращивание двоичной записи, — и индукцию здесь нужно обосновать заново, по устройству этого пути.
Индукция по двоичной записи
Принцип индукции для натурального ряда был приведён в Главе II.2 (§ 2.6.2): чтобы свойство было верно для всякого числа, довольно, чтобы оно было верно для первого числа (база) и чтобы из его верности для следовала верность для (шаг).
Раз число на бинарном пути есть длина двоичной записи (§ 4.4), тот же принцип читается по записям. Индукция по двоичной записи: чтобы свойство было верно для всякой двоичной записи, довольно двух вещей — чтобы оно было верно для записи в один знак (база), и чтобы из его верности для записи длины следовала верность для записи, удлинённой на один бит, длины (шаг). База и шаг вместе влекут: свойство верно для всякой двоичной записи.
База есть первый бит, шаг есть добавление бита
Почему индукция по двоичной записи правомерна — видно из того, как запись наращивается. Ответ той же природы, что на двух прежних путях, лишь составляющие иные.
Двоичная запись сложена из двух вещей, и других у неё нет (§ 4.4, § 4.5). Первое: есть наименьшая запись — запись в один знак, один бит. Второе: всякая запись длиннее одного знака получена из более короткой добавлением бита. Сопоставим это с индукцией. База индукции — свойство верно для записи в один знак; первая составляющая — есть запись в один знак. Шаг индукции — из верности для записи длины следует верность для записи длины ; вторая составляющая — всякая запись получена добавлением бита. База индукции отвечает первому биту; шаг индукции отвечает добавлению бита.
Отсюда и правомерность. Всякая двоичная запись либо есть запись в один знак, либо получена из более короткой конечным числом добавлений бита. Свойство, верное для записи в один знак (база) и сохраняемое добавлением бита (шаг), верно тогда вдоль всякой конечной цепочки добавлений — то есть для всякой записи. Индукция по двоичной записи властна над всеми записями не по особому могуществу принципа, а потому, что всякая запись и состоит из первого бита и добавлений к нему.
Индукция по двоичной записи не есть аксиома. База её отвечает наименьшей записи — одному биту, шаг — добавлению бита. Индукция есть словесная запись того, как двоичная запись наращивается — из первого бита и добавлений; и властна она над всеми записями потому, что всякая запись из них и состоит.
Здесь нужны два уточнения — о базе и о форме этой индукции.
База: одна позиция или одно содержание.
Сказанное «база — запись в один знак» точно для свойств, зависящих
только от длины записи: для них безразлично, какой именно бит
стоит в односимвольной записи. Но если доказываемое свойство зависит
от содержимого записи — от того, какие именно биты в ней
стоят, — база должна быть проверена для обеих односимвольных
записей: и для [Marked], и для [Unmarked]. Формально
база содержательного свойства есть не « для одной записи», а
forall b : Bit, P [b] — для всякой односимвольной
записи. Бинарный путь к натуральному ряду пользуется свойствами,
зависящими от длины, и для них достаточно базы «запись длины один»;
но там, где свойство затрагивает содержание записи, базу следует
брать в полной форме — по обоим односимвольным случаям.
Форма: индукция по непустым записям.
Индукция по двоичной записи с базой «один бит» не есть обычная
индукция по спискам. Стандартная list-индукция имеет базой пустой
список [], а здесь база — односимвольная запись. Поэтому
бинарному пути отвечает не стандартный list-принцип, а отдельный
принцип индукции по непустым двоичным записям — с базой по
односимвольным записям и шагом, сохраняющим непустоту. Формально его
можно записать так:
Lemma nonempty_bitstring_ind :
forall (P : BitString -> Prop),
(forall b : Bit, P [b]) ->
(forall b bs, bs <> [] -> P bs -> P (b :: bs)) ->
forall bs, bs <> [] -> P bs.Эта формулировка прямо отвечает прозе настоящего раздела: база —
forall b, P [b] (всякая односимвольная запись), шаг — из
для непустой записи следует для записи, удлинённой битом.
Стандартная индукция по nat (или эквивалентная ей индукция
по записям через условие ) даёт тот же
результат; принцип nonempty_bitstring_ind лишь записывает
его в форме, прямо отвечающей бинарному пути.2
Та же индукция, третье обоснование
Индукция по двоичной записи и индукция по числам — один принцип. Раз ряд двоичных длин есть натуральный ряд, индукция по записям и индукция по числам не могут быть двумя принципами: принцип индукции есть принцип для натурального ряда, а ряд один.
Но обоснование индукции на трёх путях — троякое, и в этом всё дело. Кардинальный путь вывел индукцию из повторимости акта; иерархический — из устройства иерархии; бинарный — из наращивания двоичной записи. Один принцип индукции получает на трёх путях три независимых обоснования. И это — то же, что было с самим натуральным рядом (§ 4.6): не три принципа, а один; не три пересказа одного рассуждения, а три независимых пути к одному принципу. Совпадение здесь свидетельствует так же, как свидетельствовало для ряда: индукция не есть произвольно принятая аксиома — она есть то, к чему ToS приходит, прослеживая устройство ряда, какой бы дорогой к этому устройству ни идти.
Бесконечность
О бесконечности на бинарном пути уже сказано (§ 4.5.5): наращивание двоичной записи неограниченно, но неограниченность эта потенциальна, по , — неисчерпаемая возможность добавить бит, а не завершённая совокупность всех записей. Повторять этот вывод нет нужды; стоит лишь связать его с индукцией.
Связь такая. Индукция по двоичной записи властна над всяким числом ряда именно потому, что ряд не есть завершённая совокупность. Индукция не обозревает все записи разом — их нельзя обозреть разом, их потенциально бесконечно много. Она устроена иначе: даёт свойство для первого бита и переносит его добавлением бита — и тем покрывает любую запись, до которой наращивание дойдёт. Индукция и потенциальная бесконечность согласованы: индукция есть как раз тот способ судить обо всём ряде, который не требует, чтобы ряд был завершён. То, что годилось для кардинального и иерархического путей (Глава II.2, § 2.7; Глава II.3, § 3.5), годится и здесь.
Бинарный путь пройден: натуральный ряд получен как ряд двоичных длин, сопоставлен с двумя прежними путями, и индукция на нём обоснована. Остаётся подвести итог главы и перейти к четвёртому, последнему пути. Это — предмет заключительного раздела.
Итог
Что прошла глава
Глава прошла третий из четырёх путей ToS к натуральному ряду — путь бинарный, или информационный.
Путь начался с иного взгляда на акт различения. Два первых пути брали акт как готовую единицу и считали такие единицы — в списке или в иерархии; третий путь обратился внутрь одного акта и спросил, как он устроен (§ 4.1). Ответ был получен не наблюдением, а выводом из законов логики: по закону положительная и отрицательная стороны не сливаются — сторон не меньше двух; по закону третьей стороны не дано — сторон не больше двух; значит, всякий акт различения двоичен, делит ровно на две части (§ 4.2). Один двоичный акт был назван битом — и показано, что ToS приходит к биту своим путём, выводя двоичность как необходимую там, где теория информации постулирует её как удобную; совпадение двух традиций обнаружено, не заимствовано, и указан мост к физическому тому (§ 4.3). Затем — ядро пути: натуральное число есть количество двоичного выбора, длина двоичной записи; путь идёт через — количество совершённых бит, — а не через , число их возможных исходов (§ 4.4). Это было пройдено в движении: добавление бита удлиняет запись на знак и увеличивает число на единицу, и наращивание записи, начатое от одного бита, порождает весь натуральный ряд — третья манифестация одной структуры «начальный элемент плюс операция следования» (§ 4.5). Три пути — кардинальный, иерархический, бинарный — были сопоставлены: различные исходной точкой, они дают тождественный ряд, и совпадение трёх независимых путей усиливает довод о структурной неизбежности (§ 4.6). Наконец, индукция и на бинарном пути оказалась не аксиомой: база её отвечает первому биту, шаг — добавлению бита (§ 4.7).
Так пройден бинарный путь: натуральное число есть количество двоичного выбора, и весь натуральный ряд порождается наращиванием двоичной записи — добавлением бит, выводимых из двоичности акта различения.
Разбор E/R/R: число-бит как система
{
Пройденный путь имеет E/R/R-устройство (Часть I), и его разбор
закрепляет итог главы. Заголовок опорного файла задаёт разметку:
элементы — стороны Side; правила — исключение
(), исчерпание (), рост.3 Ведём разбор в
онтологическом порядке Rules Roles Elements. Оговорка о
статусе: <<система>> здесь — содержательная интерпретация
(число-бит); в коде зафиксированы тип Side и леммы
/ (Binarity.v), а слой двоичной записи
(Bit, BitString, bit_length,
add_bit, nonempty_bitstring_ind) построен поверх
него в BitString.v (7 теорем, 0 аксиом; § 4.4).}
Rules — правила (законы , ).
Конституция системы — два закона, дающие ровно две стороны:
удерживает их раздельными (L2_exclusive:
Marked Unmarked), исчерпывает рамку
(L3_exhaustive: всякая сторона есть та или другая). Вместе они
конституируют бит — структурный, одну двоичную позицию (§ 4.3).
Второе правило — сборка: число есть количество бит, и
добавление бита есть операция следования S (§ 4.5); сборка
длиной общая с кардинальным путём. Сюда же — правило роста: бит
дают исходов (two_pow, microstates), но это
заготовка иной задачи (§ 4.4.3). Универсальные –
действуют и здесь; отличительны и .
Roles — значимость позиций (закон ). Роль бита — быть одной двоичной позицией, одним совершённым различением; роль записи — нести количество таких позиций. Число и есть эта роль-количество: бит — число . Роль конституируется правилом: коль скоро бит задан двумя законами, всякая запись занимает место по их числу. Различать здесь нужно троякое (§ 4.3.1): рамку (две стороны), исход (какая сторона положена) и бит (зафиксированный исход).
Elements — носители (закон и принцип
). Элементы — стороны Marked и Unmarked и
сложенные из них записи. По каждая сторона тождественна себе
(Side — тип с разрешимым равенством). По всякая
запись конечна — конечное число бит, — хотя ряд длин потенциально
бесконечен (§ 4.5.5). Стороны ToS не выводит из различения, а задаёт
отдельным типом Side, двоичность которого обоснована
законами / (§ 4.2).
Сведём разбор в таблицу.
| Компонент | Что фиксирует | E/R/R |
|---|---|---|
| (раздельность) + (исчерпанность) | конституция (бит) | Rule |
число = количество бит; добавление есть S | правило счёта | Rule |
удвоение two_pow/microstates () | заготовка (рост) | Rule |
| бит = одна позиция; запись из бит | роль-количество | Role |
стороны Marked/Unmarked; запись | носители (конечны, ) | Element |
| законы – (здесь , ) | универсальный слой | Rule (универс.) |
{ Хорошая сформированность. Разметка однозначна: стороны — элементы, количество бит — роль, / и сборка — правила; ни один слой не подменяет другого. Соблюдён принцип : запись составлена из сторон уровнем ниже, не из самой себя, а рамка, исход и бит не смешиваются в один уровень (§ 4.3.1). И здесь разбор оборачивается диагностикой — той самой развилкой § 4.4.3. Смешать количество совершённых выборов () с числом их возможных исходов () есть смешение категорий: — это роль-количество, ответ пути; — мощность иного множества элементов (всех строк длины ), вопрос о комбинациях, а не о счёте. Путь берёт роль-количество и потому идёт через . Так же различны структурный бит (одна позиция) и Shannon-бит (равновозможные исходы с мерой): первый — роль-позиция, второй добавляет вероятностный слой (§ 4.3.2).}
Что даёт разбор. Он показывает, что и третий путь несёт ту же ролевую структуру числа: число есть роль-количество, задаваемая начальным элементом и следованием, лишь носитель теперь иной — бит вместо элемента списка (Глава II.2) или уровня (Глава II.3). Это третья манифестация одной структуры (§ 4.5.4): одна система ролей на третьем носителе. И разбор проясняет родство числа и информации (§ 4.8.3): бит и единица счёта суть две стороны одной роли — одного совершённого различения. Четвёртый путь (Глава II.5) возьмёт число прямо как позицию в системе — то есть как роль в E/R/R-смысле — и сведёт все четыре воедино (§ 4.8.4).
Родство числа и информации
Бинарный путь дал, сверх натурального ряда, ещё одно — и стоит это назвать особо.
Путь показал, что натуральное число и понятие информации родственны по самому своему происхождению. Оба растут из одного корня — из двоичности акта различения. Бит, единица информации, есть один двоичный выбор; натуральное число есть количество таких выборов. Информация и счёт — не две посторонние области, лишь по случаю связанные двоичной записью, а две стороны одного: там, где совершается различение, есть и бит, и единица счёта, ибо различение по своему устройству есть и то и другое.
Это родство ToS не постулирует и не заимствует из теории информации. Оно выведено: из законов и , давших двоичность акта. И оно — задел вперёд: на нём, как указал § 4.3.5, физический том строит мост от счёта различений к физической мере беспорядка. Для Части II существенно скромнее: натуральный ряд, полученный третьим путём, несёт в себе родство с информацией как след того, из чего путь исходил.
Переход к четвёртому пути
Путей к натуральному ряду ToS насчитывает четыре. Три пройдены; остаётся один.
Четвёртый путь — структурный. Три пройденных пути смотрели на различия: как на список, как на ступени, как на двоичный выбор внутри акта. Четвёртый путь смотрит на иное — на систему, которую различия образуют, взятую как целое. Его исходная точка — не отдельный акт и не ряд актов, а устройство системы как системы: то, что всякая система по законам и есть упорядоченная совокупность различимых мест. Из этого устройства развернётся последний подход к натуральному ряду: число как позиция в системе, как место в структуре.
Четвёртым путём и завершится прохождение путей. Глава, ему посвящённая, сведёт затем все четыре пути воедино — назовёт то общее, ради чего они сходятся к одному ряду, и тем замкнёт Часть II. Четвёртому пути и синтезу посвящена следующая, заключительная глава Части II.
Часть: Часть II. Натуральные числа · Том: «Математика»
Понятия: Логика
Навигация: ← Глава 3. Иерархический путь: число как уровень · Глава 5. Структурный путь: число как позиция в системе →
Footnotes
-
Имеющаяся в
Binarity.vлеммаexactly_two_sidesпо формулировке совпадает сL3_exhaustive(она и доказана через неё) и потому фиксирует лишь исчерпанность, не различие сторон. Чтобы «ровно две» получило один формальный носитель — пару «различны и исчерпывают», — эти определения теперь построены: в файлеBitString.v(поверхBinarity.v) доказана синтетическая теоремаside_binarity := Marked <> Unmarked /\ (forall s, s = Marked \/ s = Unmarked)(изL2_exclusiveиL3_exhaustive); а для буквального «счёт сторон » — списокall_sides := [Marked; Unmarked]с леммами полноты (all_sides_complete) и длины (all_sides_length:length all_sides = 2). См. итог главы. ↩ -
Принцип
nonempty_bitstring_ind, как и весь слой двоичных записей (Bit,BitString,bit_length,add_bit), теперь построен — в файлеBitString.vповерхBinarity.v(последний даёт типSideи леммы / ). Принцип доказан там в точности в приведённой форме; см. итог главы. ↩ -
E/R/R-разметка в шапке файла
Binarity.v(объектыSide,two_pow,microstates; леммы /; рост). Здесь разворачивается по образцу Части I. ↩