Случайное булево значение. Равная вероятность, абсолютная независимость. Фундаментальная единица логики.
Булево значение — это наименьшая возможная единица информации. Два состояния. Ничего между ними. ИСТИНА или ЛОЖЬ, 1 или 0, включено или выключено. Каждая генерация на этой странице полностью независима от всех предыдущих. После двенадцати последовательных результатов ИСТИНА вероятность ИСТИНЫ при тринадцатой генерации по-прежнему составляет ровно 50%. У булева значения нет памяти и предпочтений. Математический термин для этого — независимость, и она управляет каждым честным случайным процессом.
В 1854 году английский математик Джордж Буль опубликовал «Исследование законов мышления», переведя логические рассуждения в алгебраическую нотацию. ИСТИНА становится 1. ЛОЖЬ становится 0. Конъюнкция (И) становится умножением. Дизъюнкция (ИЛИ) становится ограниченным сложением. Эта система оставалась по большей части математической диковинкой почти столетие. Затем Клод Шеннон в своей магистерской диссертации 1937 года в MIT обнаружил, что электрические переключатели нативно реализуют булевы операции: замкнутый переключатель — это ИСТИНА, разомкнутый — ЛОЖЬ, последовательное соединение выполняет И, параллельное — ИЛИ. Каждый транзистор в вашем устройстве прямо сейчас вычисляет одно булево значение за раз, миллиарды раз в секунду, выполняя ту же оценку ИСТИНА/ЛОЖЬ, которую эта страница выполняет при каждом нажатии.
Шеннон также формализовал теорию информации в 1948 году, определив бит как фундаментальную единицу информации. Одна честная генерация булева значения производит ровно один бит энтропии: до генерации существуют два равновероятных исхода; после — известен ровно один. Каждый пароль, каждый ключ шифрования, каждое случайное число, которое генерирует ваш компьютер, построено из последовательностей таких отдельных битов. Генератор булевых значений на этой странице производит один свежий бит криптографически качественной энтропии за каждый клик — неделимый квант неопределённости.
Каждая генерация вызывает crypto.getRandomValues() — Web Cryptography API, специфицированный W3C и встроенный в каждый современный браузер. Этот API извлекает энтропию из физических процессов аппаратного уровня вашего устройства: теплового шума в кремнии, джиттера электрических таймингов и других явлений, которые квантовая механика доказывает как фундаментально непредсказуемые. Генерируется один случайный байт. Значения от 0 до 127 соответствуют одному исходу; значения от 128 до 255 — другому. Ровно 128 значений на каждую сторону. Результат — идеальное распределение 50/50, полностью сгенерированное на вашем устройстве. Сервер никогда не узнает ваш результат.
График сходимости выше отслеживает текущий процент результатов ИСТИНА за вашу сессию. Ранние генерации колеблются хаотично. После 50 или 100 генераций линия сужается вокруг отметки 50%. Это закон больших чисел в действии: частота в длительном периоде сходится к теоретической вероятности. Удивительный момент: самая длинная серия последовательных одинаковых результатов в 100 генерациях обычно составляет от 5 до 10. Последовательность без серии из 6 и более выглядела бы искусственно перемешанной. Настоящая случайность «кучкуется» сильнее, чем подсказывает интуиция.
Булевы значения — это ворота в вычислительное мышление. Спроецируйте эту страницу и выполните 50 генераций перед классом, отслеживая график сходимости в реальном времени. Учащиеся наблюдают, как процент сначала хаотично блуждает, а затем постепенно устанавливается около 50%. Попросите учащихся предсказать самую длинную серию перед началом. Фактическая серия почти всегда длиннее, чем они ожидают, что открывает продуктивный разговор об интуиции человека и подлинной случайности.
Для вводных уроков программирования свяжите результаты с условной логикой. «Если результат ИСТИНА — встаньте. Если ЛОЖЬ — сядьте.» Класс физически переживает ветвление. Объедините результаты попарно: оба ИСТИНА? Это И. Хотя бы один ИСТИНА? Это ИЛИ. Противоположность вашего результата? Это НЕ. Эти четыре операции, применённые к случайным булевым значениям, которые только что сгенерировали учащиеся, формируют полную основу цифровой логики. Инструмент не требует учётных записей, не собирает данные учащихся и не оставляет цифрового следа.
Этот генератор булевых значений работает полностью внутри вашего браузера. Сервер доставляет страницу. Ваше устройство обеспечивает случайность. История ваших генераций хранится в localStorage, только на вашем компьютере. Сервер не ведёт учётных записей пользователей, не сохраняет результаты и не устанавливает отслеживающих cookie. Поделившись этой ссылкой, вы даёте другому человеку идентичный инструмент. Его результаты берутся из источника энтропии его собственного устройства, полностью независимо от ваших.
Отправьте эту ссылку. Они получат тот же генератор, своё булево значение. Сравните серии.
Ежедневное вдохновение
Работы, отобранные жюри A' Design Award, представленные каждое утро.