Skip to content

Журнал изменений

Version DECISION-0152 — межпакетная ссылка прочтения и цепочка кислотно-основного равновесия (06.09.2026)

  • Исправлен зазор грамматики и реализации (аддитивно). EBNF §38 допускала qualified_name у of §152 и у alternatives §155, а парсер отвергал (LDC-E0201 «вне v1») и lowering повторял отказ (LDC-E1105 «пока не поддержана»); прозы, объявляющей запрет, в §152–§157 не было. Теперь позиции ПРОВЕНАНСА и КОМПОЗИЦИИ (of, source_anchor, extends, alternatives) принимают pkg::Symbol §23 с проверкой состава экспорта §24 и ВИДА цели по exportKinds; interpretation добавлен в EXPORTABLE_KINDS (четыре зеркала), pub interpretation доносит видимость до узла. Позиция ЧЛЕНСТВА (include/exclude) остаётся локальной: каноническая экспансия объявления (E-0115) у соседа невычислима. Векторы T248–T251.
  • Не изменено. Семантика оценки: resolve_interpretations собирает словарь прочтений из всех узлов слитого мира, и чужая альтернатива попадает в него так же, как своя. Ни одного pub interpretation и ни одной квалифицированной ссылки этих позиций в корпусе и векторах не было — ни один contentHash не сдвинут.
  • Первый потребитель — цепочка кислот. openstax/chemistry-acids (закреплённые гл. 14 и §15.2 Chemistry 2e, CC BY-NC-SA 4.0, 23 pub fragment), chem/acid-base (три прочтения кислоты §152 группой exactly_one), chem/acid-strength (сила, гидролиз, буфер; вторая группа any_of), iupac/red-book-acids (глава IR-8 как кодекс), calc.acid_base (точная арифметика без логарифма). 56 сцен корпуса и 12 сцен вычислителя, обе реализации сходятся.
  • Errata E-0137 (компилятор). Правило, вложенное в interpretation, не проверялось на range restriction §190 — отказ обнаруживал только оракул на исполнении; проход §190 теперь спускается в члены прочтений, диагностика называет Прочтение/Правило; вектор T260; 84 пакета корпуса с прочтениями — ни одного нового красного.
  • Errata E-0139 (компилятор). Все межправиловые проходы страт (§110, §111/§113, §116, §149, §71, §87) видят членов прочтений и считаются с учётом членства §104.4 — по максимальным согласованным выборам прочтений; цикл через две альтернативы exactly_one не репортится (T261), внутри одного прочтения — репортится (T262). В корпусе найдены и исправлены два латентных поздних производителя §111 (grc/laws-of-thought, vat/paenitentia): десять читателей записаны defeasible.
  • Errata E-0140 (семантика оценки, обе реализации). INTERPRETATION_REQUIRED — статус результата, а не документа: его получают только зависимые truth-запросы (цель в замыкании по телам правил от голов заблокированных альтернатив); независимый вопрос под невыбранной группой exactly_one отвечается, issue в документе остаётся. Векторы ERR-E0140-EXACTLY-ONE-INDEPENDENT/-TRANSITIVE; T020 прежний. Дополнение: зависимость определена и для collect (предикаты литералов comprehension-терма) и positions (заблокированный производитель нормы либо активный производитель, читающий зависимый предикат); зависимый результат получает INTERPRETATION_REQUIRED статусом результата в обеих версиях семантики. Векторы ERR-E0140-COLLECT-INDEPENDENT/-DEPENDENT, ERR-E0140-POSITIONS-INDEPENDENT/-READS-Q/-BLOCKED.
  • Найдено попутно (замер 06.09.2026). Неразрешённая группа exactly_one гасит ВЕСЬ документ, а не только вопросы своей темы. Ось interpretation контекста §168.2 принимала только локальное имя (LDC-E1307) — закрыто §7 того же решения тем же днём.
  • DECISION-0152 §7 (аддитивно). Ось interpretation дела §168.2 и ожидание interpretations(…) §267.4 принимают пакет::Прочтение — та же квалификация, что у оси calendar (E-0127), с проверкой состава экспорта §24 и вида цели по exportKinds; отказы — LDC-E1105. Векторы T257–T259. Первый потребитель — мостовой набор chem/acid-strength.

Исполнено (DECISION-0151, 06.09.2026)

  • Семантика определений — Ф0–Ф3. Понижение definition пишет ребро provenance was_derived_from → символ понятия с {declaration, mode, part, alternative?} на правиле и ограничении (§144, T253–T256; голден LAY-L0-CONSTRAINT-NECESSARY перезаморожен, CLIR 11 пакетов и lilliput пересобраны). Proof-узел применения несёт attributes.definition (§180, T252 в SUPPORTED); lawc explain и MCP law_explain печатают «по определению X: достаточная часть». Вербализаторы обеих реализаций открывают такие узлы фразой «часть определения понятия …»: подъём всех восьми паков (ru 0.9.0, kk 0.5.0, en/ky/uz/ar/la/zh 0.3.0), пины консьюмеров подняты, VER-RU/KK/EN-L0-DEFINITION и VER-RU-GAP-DEFINITION. Раскрыватель терминов получил контракт docs/reference/authoring/UNFOLD.ru.md (обе полярности, ограничения по антецеденту, происхождение, граница мира), Rust-двойник lawc unfold и ворота check_unfold_differential.py с пятью голденами. В stacks/sheaf-cohomology — отрицательные головы refuted(cond) ⇒ not sheaf_of_sets_on и мост от покрытий: «не пучок» отвечает FALSE_ONLY, конфликт листа — NEITHER, две опоры — BOTH.

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.