lawref.evaluator.argumentation
Профиль structured argumentation §274.1–§274.7 (law.argumentation/0.2, DECISION-0039; С-2 плана LAYERS-NEXT).
Отдельный вид запроса argumentation; baseline 0.1 не тронут — профиль
читает те же принятые утверждения §73 и правила пакета, но строит СВОЮ
семантику: рекурсивные структурные аргументы (стратификация §110 не
требуется), атаки rebut/undermine/undercut §274.3, побеждения по
§106-приоритетам last-link §274.4, grounded/preferred разметки §274.5 и
классы ответа §274.6.
Сила правила решает его роль (errata E-0237): strict | defeasible дают
шаги ЗА свою голову; defeater (голое unless §149, §107 п. 3) даёт
ДЕФИТЕР-АРГУМЕНТ — ту же структуру step, чьё заключение есть цель
поражения, а не довод: он не служит под-аргументом чужого шага, не входит
в argumentsFor и атакует defeasible-шаг той же головы undercut-ом. Терминируемость — запрет повторов ground-заключений на пути
(§274.2): чиcло ground-атомов конечно, глубина ограничена, множество
аргументов конечно; капы §274.2/§274.5 делают отказ от перебора явным
(fatal RESOURCE_LIMIT, частичный вывод не публикуется).
Детерминизм §211: структуры аргументов упорядочиваются каноническими байтами §208, id — порядковые; все списки результата отсортированы.
Attributes
| Name | Description |
|---|---|
DEFAULT_MAX_ARGUMENTS | No description. |
DEFAULT_MAX_EXTENSIONS | No description. |
DEFAULT_MAX_UNDECIDED | No description. |
Classes
| Name | Description |
|---|---|
ProfileLimit | Превышен кап §274.2/§274.5 — fatal RESOURCE_LIMIT без частичного |
Functions
| Name | Description |
|---|---|
answer_class | Класс ответа §274.6 для цели. |
build_arguments | Фикспойнт построения §274.2. Множество аргументов конечно (запрет |
compute_attacks | Атаки §274.3 и их побеждаемость §274.4 (last-link по §106-замыканию; |
eligible_rules | (пригодные правила с разобранными конъюнктами, skippedRules §274.1). |
evaluate_profile | Полный прогон профиля; результат — value-словарь §274.7. |
fact_leaves | Лист-факты §274.2: литералы, у которых есть accepted-опора §73 |
grounded_labelling | Grounded §274.5: наименьшая неподвижная точка in/out/undec. |
preferred_extensions | Preferred §274.5: перебор подмножеств undec-ядра поверх grounded-in |
DEFAULT_MAX_ARGUMENTSattributemodule attribute#
DEFAULT_MAX_ARGUMENTS = 64DEFAULT_MAX_EXTENSIONSattributemodule attribute#
DEFAULT_MAX_EXTENSIONS = 8DEFAULT_MAX_UNDECIDEDattributemodule attribute#
DEFAULT_MAX_UNDECIDED = 16ProfileLimitclass#
class ProfileLimit(counter: str, limit: int)Bases: Exception
answer_classfunction#
def answer_class(target: dict, ordered: list[dict], ids: dict[bytes, str], grounded: dict[str, list[str]], extensions: list[list[str]]) -> dictКласс ответа §274.6 для цели.
build_argumentsfunction#
def build_arguments(rules: list[dict], leaves: list[dict], max_arguments: int) -> list[dict]Фикспойнт построения §274.2. Множество аргументов конечно (запрет повторов на пути) и не зависит от порядка перебора; кап проверяется на числе РАЗЛИЧНЫХ аргументов, поэтому вердикт о превышении тоже порядко-независим.
compute_attacksfunction#
def compute_attacks(ordered: list[dict], ids: dict[bytes, str], reach: dict[str, set[str]]) -> list[dict]Атаки §274.3 и их побеждаемость §274.4 (last-link по §106-замыканию; взаимная достижимость = несравнимость, побеждение остаётся).
Точка-шаг атакуема только при силе defeasible: strict — restricted rebut, шаг дефитер-аргумента ничего не утверждает (E-0237). Rebut идёт от аргументов ЗА противоположный литерал, undercut — от дефитер-аргументов с тем же заключением; оба побеждают, если правило точки не старше правила атакующего (§107 п. 3).
eligible_rulesfunction#
def eligible_rules(nodes: list[dict], legal_time: str) -> tuple[list[dict], list[dict]](пригодные правила с разобранными конъюнктами, skippedRules §274.1).
evaluate_profilefunction#
def evaluate_profile(nodes: list[dict], store, registry, target: dict, legal_time: str, limits: dict | None = None) -> dictПолный прогон профиля; результат — value-словарь §274.7.
fact_leavesfunction#
def fact_leaves(store, registry) -> list[dict]grounded_labellingfunction#
def grounded_labelling(arg_ids: list[str], defeats: dict[str, set[str]]) -> dict[str, list[str]]Grounded §274.5: наименьшая неподвижная точка in/out/undec.
preferred_extensionsfunction#
def preferred_extensions(arg_ids: list[str], defeats: dict[str, set[str]], grounded: dict[str, list[str]], max_undecided: int, max_extensions: int) -> list[list[str]]Preferred §274.5: перебор подмножеств undec-ядра поверх grounded-in (каждое preferred содержит grounded-in и не содержит grounded-out), admissibility-фильтр, затем максимальность по включению.
Documentation for Arxo. Writings — blog.arxo.io.
Anonymous visit counts on stats.arxo.io, no cookies.