ADR 006: Neuro‑Symbolic Governance (Нейро-символьное управление)¶
Дата: 2026-04-23
Статус: Принято
Автор: Black Swan Core Architecture Team
1. Контекст¶
До версии 0.9 проверка изменений L3.1-инвариантов (производных правил) выполнялась вручную через Constitutional Debate Loop: LLM-дебаты между Red‑Team и Blue‑Team с последующей проверкой контрпримеров.
Этот подход имел критические недостатки:
- Тривиальные тавтологии. LLM (особенно
GLM‑5.1) склонна генерировать инварианты, которые истинны по определению (например, «i ≥ 0» для цикла, где переменная всегда неотрицательна). Z3 быстро доказывал их, создавая иллюзию корректной верификации. - Неполные спецификации. LLM могла упустить граничные условия или неявные предположения, делая доказательство неполным.
- Человеческий фактор. Дебаты требовали ручной интерпретации результатов, что несовместимо с полностью автономной системой Фазы 4+.
С переходом на DeepSeek‑V4 (ADR‑001) и её улучшенными reasoning-способностями появилась возможность автоматизировать полный цикл: от генерации формальной спецификации до её верификации.
2. Решение¶
Реализовать Neuro‑Symbolic Governance Layer — полностью автоматический конвейер генерации, фильтрации и верификации формальных доказательств для изменений L3.1.
Компоненты конвейера:
-
LLM‑генератор формальной спецификации.
Architectus(DeepSeek‑V4, 60% экспертов) получает структурированный промпт, содержащий:- Полный набор L3.0‑аксиом в SMT‑LIB2.
- Текущие L3.1‑инварианты.
- Предлагаемое изменение на естественном языке.
- Few‑shot примеры корректных спецификаций. На выходе — строго валидный SMT‑LIB2 или TLA+ код с определением нового предиката и утверждением его совместимости с L3.0.
-
Concolic Filtering. Кастомная обёртка над angr выполняет символьное выполнение спецификации. Цели:
- Отсеять тривиальные тавтологии: если инвариант выполняется на всех путях без сужения пространства состояний →
trivial→ отклонение. - Найти контрпример до тяжёлого SMT-солвера: если найден путь с нарушением →
invalid→ отклонение. Это снижает нагрузку на следующий этап на 30–40%.
- Отсеять тривиальные тавтологии: если инвариант выполняется на всех путях без сужения пространства состояний →
-
Multi‑Solver Verification. Спецификация проверяется тремя независимыми SMT‑солверами: Z3, CVC4, Yices. Решение принимается единогласно: все три должны вернуть
unsat(отсутствие контрпримера). Если хотя бы один находит модель → предложение отклоняется. -
Сохранение доказательства. Успешная спецификация сохраняется в IPFS, её CID записывается в
ConstitutionalPrincipleв Mem0g L2. Это позволяет перепроверить доказательство в будущем при изменении других L3.1.
Интеграция с Constitutional Evolution 2.0 (ADR‑004): В популяционном алгоритме NSGA‑II этот конвейер выполняет роль Z3‑Anchor — обязательного фильтра, через который проходят все мутации политик.
3. Последствия¶
Положительные¶
- Математическая строгость. Каждая поправка к L3.1 имеет формальное доказательство совместимости с L3.0, проверяемое тремя независимыми солверами.
- Устранение тривиальных доказательств. Concolic Filtering гарантирует, что Z3 проверяет содержательные инварианты.
- Полная автоматизация. Цикл от предложения до верификации занимает ≤ 5 минут без участия человека.
- Воспроизводимость. Proof Tree и CID доказательства позволяют повторить проверку в любой момент.
Отрицательные¶
- Высокие требования к LLM. Генерация корректного SMT‑LIB2 требует полной мощности
Architectus(60% экспертов). На ранних фазах (до Hardware Transition) это может создавать задержки. - Ложные отклонения. Concolic Filtering может отбрасывать валидные, но сложные инварианты, которые не укладываются в лимит времени символьного выполнения.
- Зависимость от трёх солверов. При расхождении их результатов требуется дополнительный анализ.
Нейтральные¶
- Необходимость поддержки актуальных версий Z3, CVC4, Yices и angr в изолированном sandbox.
4. Связь с другими документами¶
- Constitutional Evolution 2.0 (NSGA‑II + Z3‑Anchor): ADR_004_Constitutional_Evolution_2.md
- Concolic Filtering и Validation Pipeline: Validation_and_Verification.md
- Терминальные цели и L3-инварианты: Terminal_Goals_and_L3_Invariants.md
- Миграция на DeepSeek‑V4: ADR_001_Migration_to_DeepSeekV4.md