Hacker News Digest

Тег: #lean

Постов: 8

Why formalize mathematics – more than catching errors (rkirov.github.io)

Формализация математики в системах вроде Lean полезна не только для обнаружения ошибок, как считают многие. Автор статьи, работающий над формализацией доказательств в Lean для учебника Тана по реальному анализу, проводит параллель с TypeScript: хотя статическая типизация в первую очередь нацелена на поиск багов, её истинная ценность в другом. TypeScript обеспечивает поддержку инструментов разработчика, служит языком проектирования и даёт немедленную обратную связь при написании кода.

Аналогично, формализация математики предлагает преимущества, выходящие за рамки проверки корректности. Во-первых, она создаёт мощную экосистему инструментов: навигацию по определениям, автоматическую генерацию документации, поиск и рефакторинг. Во-вторых, позволяет анализировать мета-математические тренды, визуализировать графы зависимостей теорем и автоматически находить альтернативные пути доказательств. В-третьих, внедрение системы контроля версий для математических результатов сделает эволюцию математических истин более управляемой. Цена такого прогресса — необходимость доказывать множество тривиальных утверждений, которых в неформальной математике обычно избегают.

by birdculture • 19 октября 2025 г. в 08:59 • 210 points

ОригиналHN

#lean#typescript#formal-verification#mathematics#proofs

Комментарии (70)

  • Lean и другие инструменты формализации делают математику доступной для «хоббистов», но не решают фундаментальной проблемы: формальная проверка не заменяет математическое мышление и не гарантирует, что вы доказываете именно то, что задумали.
  • Сообщество Lean-математиков стремится к полной формализации всей математики, но пока это выглядит как попытка «сделать ее удобной для компьютера»; критики считают, что это отвлекает от сути исследований и не решает проблему обучения доказательствам.
  • Теоретически, формальные доказательства должны быть полезны для обучения, но на практике большинство математиков не используют формальные доказательства как учебный материал.
  • Использование формальных верификаторов для обучения может привести к тому, что студенты будут полагаться на компьютер вместо развития интуиции.
  • Сообщество формальных верификаторов стремится к тому, чтобы их инструменты были доступны для математиков, но они не решают проблему, что делает доказательства формальными — это требует математического мышления, которое не может быть заменено компьютером.

ProofOfThought: LLM-based reasoning using Z3 theorem proving (github.com) 🔥 Горячее 💬 Длинная дискуссия

Нейросимволический синтез программ позволяет создавать надёжные и интерпретируемые системы рассуждений, объединяя нейросетевые подходы с символической логикой. Метод генерирует формальные доказательства для каждого шага рассуждения, что обеспечивает прозрачность и проверяемость результатов, критически важные для таких областей, как автоматизированное доказательство теорем и объяснимый ИИ.

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

by barthelomew • 04 октября 2025 г. в 18:34 • 311 points

ОригиналHN

#z3#prolog#smt#sympy#llm#json#lean#automated-theorem-proving#github

Комментарии (164)

  • Обсуждение фокусируется на гибридном подходе, сочетающем языковые модели (LLM) для генерации структурированных предположений (например, на JSON DSL или в логических синтаксисах, таких как SMT, Prolog) и последующей верификации этих выводов с помощью детерминированных решателей (таких как Z3) или теорем-проверов (как Lean).
  • Участники подчеркивают как потенциал этого подхода для повышения надежности и интерпретируемости рассуждений ИИ, так и его фундаментальные ограничения, такие как «проблема автоформализации» (autoformalization gap) — риск того, что LLM некорректно переведет запрос в формальную логику, что приведет к принципу «мусор на входе — мусор на выходе».
  • Приводятся практические примеры применения метода, включая проверку согласованности бизнес-политик, автоматизацию математических вычислений (например, с помощью SymPy) и синтез программ.
  • Высказываются критические замечания о природе LLM: они не являются «мыслящими» системами, а лишь статистическими моделями, генерирующими правдоподобные шаблоны, и их вывод принципиально не детерминирован и может быть неполным или ошибочным.
  • Обсуждаются технические детали и улучшения, такие как использование структурированных выходов API, ограниченное декодирование для повышения надежности генерации кода и необходимость более четких примеров в документации проектов.

Terence Tao: The role of small organizations in society has shrunk significantly (mathstodon.xyz) 🔥 Горячее 💬 Длинная дискуссия

Теренс Тао делится предварительными соображениями о текущих усилиях по формализации математики с использованием ИИ и языковых моделей. Он отмечает, что хотя автоматизированные системы доказательств, такие как Lean, уже способны проверять сложные математические утверждения, генерация оригинальных доказательств и интуитивных идей остаётся сложной задачей. Тао подчёркивает важность симбиоза между человеческой креативностью и машинной точностью, где ИИ помогает устранять ошибки и предлагает возможные пути решения, но ключевые прорывы по-прежнему исходят от математиков.

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

by bertman • 24 сентября 2025 г. в 16:32 • 956 points

ОригиналHN

#lean#llm#machine-learning#proof-verification#hypothesis-testing

Комментарии (482)

  • Упадок малых организаций и локальных сообществ из-за экономических изменений, включая рост двухдоходных семей и снижение волонтерства.
  • Консолидация рынков в пользу крупных корпораций, подкрепленная регуляторными рамками и финансовыми стимулами, ограничивающими малый бизнес.
  • Технологии и интернет одновременно упростили создание онлайн-сообществ, но также способствовали росту крупных платформ и снижению локальной активности.
  • Социальные последствия: потеря чувства общности, статуса в сообществе и роста ощущения изоляции и бессмысленности у индивидуумов.
  • Возможности для возрождения малых организаций через низкие барьеры входа в цифровую эпоху и осознание их ценности для общества.

What is algebraic about algebraic effects? (interjectedfuture.com)

В программировании «алгебра» — это не школьные уравнения, а способ давать коду строгую структуру через свойства операций. Если обычная композиция объектов ограничивается «они реализуют один интерфейс», то алгебраическая композиция требует, чтобы набор данных и операций удовлетворял фиксированным законам: замкнутость, ассоциативность, единица, обратные элементы и т.д. Набор «целые числа + сложение» образует группу, потому что все четыре закона выполняются; код, в котором сложение строк вдруг выдаёт число, группой не является.

Именно этим объясняется «алгебраичность» Algebraic Effects: набор эффектов и обработчиков строится как свободная алгебра с заданной сигнатурой операций, а значит любая программа сводится к выражению, подчиняющемуся строгим законам переписывания. Практический выигрыш — возможность комбинировать и вложенно перехватывать эффекты без «callback-ада», потому что поведение заранее ограничено алгебраическими законами.

by iamwil • 22 сентября 2025 г. в 14:30 • 82 points

ОригиналHN

#algebraic-effects#monads#ocaml#lean#julia#algebra#type-theory#functional-programming

Комментарии (32)

  • Обсуждается различие между "алгебраическими" в контексте типов данных и эффектов, подчеркивая, что последние связаны с алгеброй монад, а не просто наличием уравнений.
  • Участники предлагают ресурсы для изучения темы (статья "What is algebraic about algebraic effects and handlers?") и проводят аналогии с булевой алгеброй для лучшего понимания.
  • Отмечается сложность терминологии и необходимость перевода абстрактных математических концепций (операции над типами/эффектами) в более доступные для программистов термины.
  • Поднимается вопрос о синтаксическом представлении алгебраических типов (сумм и произведений) в разных языках программирования (OCaml, Lean).
  • Обсуждается практическое применение алгебраических операторов на примере пакета Algebra of Graphics для Julia.

Claude can sometimes prove it (galois.com)

Claude Code от Anthropic демонстрирует неожиданно высокую способность к интерактивному доказательству теорем (ITP) — области, где даже эксперты сталкиваются с трудоёмкими и сложными процессами. Этот ИИ-агент успешно справляется со многими сложными шагами доказательств самостоятельно, хотя пока требует руководства человека для полной формализации.

Такой прогресс открывает перспективы широкого использования инструментов вроде Lean без необходимости глубоких экспертных знаний, что может ускорить верификацию критических систем, криптографии и компиляторов. Практический совет: попробуйте сами инструменты вроде Claude Code или Gemini CLI на знакомых задачах — это обойдётся примерно в $20–100 в месяц.

by lairv • 17 сентября 2025 г. в 12:30 • 198 points

ОригиналHN

#lean#formal-verification#llm#machine-learning#claude-code#anthropic

Комментарии (60)

  • Участники обсуждают потенциал LLM (особенно Claude Code) в генерации формальных доказательств и кода с использованием инструментов вроде Lean, отмечая, что ИИ часто успешно справляется с первой частью задачи, но испытывает трудности с завершающими, самыми сложными этапами.
  • Подчеркивается фундаментальная проблема: сложность не в написании кода, а в создании точных и корректных спецификаций и требований, что является ключевым для формальной верификации и доказательства правильности программ.
  • Высказывается мнение, что сочетание генеративных ML-моделей с формальными методами — многообещающий путь вперед, так как LLM снижают усилия на реализацию, а формальные методы — на проверку, компенсируя слабые стороны друг друга.
  • Обсуждаются практические сложности: необходимость жесткого контроля за выводом ИИ, риск получения ложных доказательств, которые лишь выглядят корректно, и важность эмпирической валидации результатов, сгенерированных ИИ.
  • Отмечается, что архитектурные решения и изменяющиеся требования часто делают формальные доказательства непрактичными для большинства реальных проектов, где код не статичен, а правильное абстрагирование и разделение ответственности важнее тотальной корректности.

Rupert's Property (johncarlosbaez.wordpress.com)

Rupert’s property — возможность прорезать в выпуклом многограннике отверстие, достаточное для прохода точно такого же многогранника. До недавнего времени считалось, что это верно для всех выпуклых многогранников.

На этой неделе Steininger и Yurkevich нашли контрпример: выпуклый многогранник с 90 вершинами, не обладающий Rupert’s property.

  • 240 рёбер, 152 грани.
  • Проверено 18 млн вариантов отверстий + дополнительная математика.
  • Назван noperthedron (игра слов: «нет Rupert»).

Историческая справка
Принц Руперт предположил, что в единичном кубе можно вырезать отверстие, через которое пройдёт куб с ребром ≈ 1,06. Подтвердил Джон Уоллис; позже Ньивланд нашёл максимальный размер.

Анимации

  • Куб
  • Октаэдр
  • Видео — 26 многогранников с Rupert’s property и 5 подозрительных (включая триакис-тетраэдр, который всё-таки «проходит»).

Ссылка на статью
arXiv:2508.18475

by robinhouston • 28 августа 2025 г. в 22:02 • 78 points

ОригиналHN

#geometry#polyhedra#mathematics#arxiv#google#lean

Комментарии (16)

  • На SIGBOVIK-2025 Том7 опубликовал доказательство, что не всякий выпуклый многогранник обладает свойством Руперта: найден «Noperthedron», который не является Rupert.
  • Формулировка «Всякий ли выпуклый многогранник Rupert?» уже была добавлена в репозиторий формальных гипотез Google; обсуждается, насколько трудно будет формализовать новое доказательство в Lean.
  • Участники вспомнили, что Мэтт Паркер и Numberphile делали видео о том, как куб можно протянуть через такой же куб.
  • Имя «Noperthedron» дано в честь шуточного термина «Nopert» из статьи Том7.

Project to formalise a proof of Fermat’s Last Theorem in the Lean theorem prover (imperialcollegelondon.github.io)

%PDF-1.5  
9 0 obj  
stream  
…сжатое содержимое…  
endstream  
endobj  

54 0 obj  
stream  
…сжатое содержимое…  
endstream  
endobj  

102 0 obj  
stream  
…сжатое содержимое…  
endstream  
endobj  

127 0 obj  
stream  
…сжатое содержимое…  
endstream  
endobj  

by ljlolel • 20 августа 2025 г. в 18:27 • 118 points

ОригиналHN

#lean#formal-verification#mathematical-proof#theorem-proving#fermats-last-theorem

Комментарии (84)

  • Большинство участников считают, что Ферма либо ошибся, либо пошутил: за три десятилетия он не записал «элегантное» доказательство, а все последующие попытки найти простое решение провалились.
  • Обсуждаемый документ — это лишь «чертеж» (blueprint) будущего формализованного доказательства Великой теоремы Ферма в системе Lean; само доказательство займёт ещё несколько лет.
  • Ключевой мотивацией формализации называют повышение надёжности: компьютер сможет полностью проверить громоздкое доказательство, исключив человеческие ошибки.
  • Участники обеспокоены долговечностью кода и спрашивают, как предотвратить «захват» задач бездействующими участниками и избежать дублирования работы.
  • Для массового использования Lean требуются учебные материалы и «текстбы» на его основе; уже появляются книги и курсы, включая упражнения Теренса Тао.

Typechecker Zoo (sdiehl.github.io)

Проект «Zoo» — мини-реализации самых влиятельных статических систем типов последних 50 лет. Начнём с простых и дойдём до зависимых типов. Всё пишем на Rust — просто потому что удобно и забавно строить чисто функциональные языки на не-функциональном.

Это не учебник, а выходные развлечение. За теорией и доказательствами смотрите TAPL, ATTAPL, PFPL и оригинальные статьи (ссылки в приложении). Здесь же — грязные детали реализации: структуры данных, AST, логика, всё, что можно осилить за уик-энд.

Код — идиоматичный Rust с полноценным парсером и тестами (lalrpop, logos, ariadne). Примеры урезаны, но понятнее продакшен-реализаций. Парсинг и MLIR считаем решёнными задачами, поэтому не фокусируемся на них.

Четыре «зверька»:

  • Algorithm W (775 строк) — классический Hindley–Milner, полиморфный λ-исчисление.
  • System F (1090 строк) — второе λ-исчисление, параметрический полиморфизм, Mini-OCaml.
  • System F-ω (3196 строк) — высшие рода, паттерн-матчинг, дататипы, Haskell-lite.
  • Calculus of Constructions (6000 строк) — иерархия универсумов, индуктивные типы, крошечный Lean.

MIT-лицензия, хобби-проект. Нашли опечатку — присылайте pull-request.

by todsacerdoti • 15 августа 2025 г. в 19:11 • 161 points

ОригиналHN

#rust#type-systems#haskell#ocaml#lean#functional-programming#lambda-calculus#polymorphism

Комментарии (24)

  • Пользователи хвалят Elaboration Zoo как полезный ресурс для изучения нормализации по вычислению и вывода неявных переменных.
  • Просят аналогичный «зоопарк» для линейных типов и предлагают добавить быстрый вариант Hindley–Milner из OCaml.
  • Автору советуют включить тёмную тему для блоков кода и рассмотреть простой однонаправленный type-checker в духе Featherweight Java.
  • Уточняют, что присутствие индуктивных типов делает реализацию ближе к CIC, но Lean всё же сильнее за счёт аксиомы выбора.
  • Картинки с животными вызывают путаницу; большинство считают их просто AI-орнаментом без смысловой нагрузки.