Skip to content

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

NameDescription
DEFAULT_MAX_ARGUMENTSNo description.
DEFAULT_MAX_EXTENSIONSNo description.
DEFAULT_MAX_UNDECIDEDNo description.

Classes

NameDescription
ProfileLimitПревышен кап §274.2/§274.5 — fatal RESOURCE_LIMIT без частичного

Functions

NameDescription
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_labellingGrounded §274.5: наименьшая неподвижная точка in/out/undec.
preferred_extensionsPreferred §274.5: перебор подмножеств undec-ядра поверх grounded-in

DEFAULT_MAX_ARGUMENTSattributemodule attribute#

DEFAULT_MAX_ARGUMENTS = 64

DEFAULT_MAX_EXTENSIONSattributemodule attribute#

DEFAULT_MAX_EXTENSIONS = 8

DEFAULT_MAX_UNDECIDEDattributemodule attribute#

DEFAULT_MAX_UNDECIDED = 16

ProfileLimitclass#

class ProfileLimit(counter: str, limit: int)

Bases: Exception

Превышен кап §274.2/§274.5 — fatal RESOURCE_LIMIT без частичного вывода (дисциплина §238).

counterattributeinstance attribute#

counter = counter

limitattributeinstance attribute#

limit = limit

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]

Лист-факты §274.2: литералы, у которых есть accepted-опора §73 (сторона store, содержащая id принятого утверждения).

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.