docs← Back to article

Markdown for LLMs

Defeasible rules: corpus forms

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# Defeasible rules: corpus forms

Breakdown of real fragments: package identifier, human act name, form rating
(exemplary / debatable / wrong form choice) and why.

## Law

### 1. ILO Convention No. 138 — contrary proviso with measured difference (exemplary)

Package `intl.labour.c138` (ILO Convention No. 138, minimum age), scope and exclusions:

```law
rule WorkIsExcludable(w: Work) defeasible {
    ...
    when within_convention_reach(w);
    then excludable_work(w);
    unless hazardous_work(w) then not excludable_work(w);
}
```

Exemplary. The package comment records that the difference
of forms is measured: a bare `unless` would have removed the inference and
given Not established, not refuted, while what is needed here is established negation of
excludability — only the contrary clause `unless … then not …` gives
it. Absence of a fact is not its negation.

### 2. The 1789 Declaration — proviso in a presumption (exemplary)

Package `fr.declaration.rights_1789` (Declaration of the Rights of Man and of the Citizen, France, 1789), legality:

```law
presumption Innocence(who: Person) {
    ...
    when accused(who);
    presume innocent(who);
    unless declared_guilty(who) then not innocent(who);
}
```

Exemplary. The same `unless … then not …` clause inside a
presumption, not a rule: the expansion mechanics is one, the carrier is the
presumption of innocence (“until declared guilty”).

### 3. The 1916 requisition — comment on the form choice (exemplary)

Package `ru.empire.requisition_1916` (1916 requisition decree, Russian Empire), call-up:
`strict` “would have silently swallowed” the exemptions, so the form
`unless … then not …` was taken.

Exemplary as a documented decision: the author explicitly rejected a strict
rule in favour of a defeasible one with a contrary proviso.

### 4. German Civil Code — proviso-refusals in property law (exemplary)

Package `de.bgb.besitz_eigentum` (German Civil Code, possession and ownership):

```law
unless besitzer(s, p) and bewegliche_sache(s) and vermutung_des_1006_ausgeschlossen(s) then not eigentum_vermutet(s, p);
```

Exemplary. A contrary proviso with a compound condition — the ownership
presumption (paragraph 1006) is removed by an established refusal. Nearby
in the same package — the same form for registered rights.

## Custom

### 5. “Not caught — not a thief” proverb — proviso in a presumption (exemplary)

Package `ru.dal.poslovitsy` (Russian folk sayings), presumptions:

```law
presumption NePoymanNeVor(ch: Chelovek) {
    ...
    when podozrevaetsya(ch);
    presume chist_ot_tatby(ch);
    unless poyman_s_polichnym(ch) then not chist_ot_tatby(ch);
}
```

Exemplary. The exception-clause mechanics works outside written law: a folk presumption
with the same contrary carve-out as the 1789 declaration.

## Teaching packages

### 6. This section’s pair — bare proviso vs separate defeater (exemplary)

Package `research.constructs.defeasible_unless` (bare `unless
violation_found_last_year(e);`) and
package `research.constructs.standalone_defeater` (a separate
`rule ViolationRemovesExemption defeater` with
`defeat exempt_from_planned_inspection(e);`).

Exemplary as a demonstration: both forms give the same two answers
(Established / Not established, not refuted); the difference is the extension point (see the
[defeasible-rules page](/constructs/rule-defeasible-unless/), section 2).

## Measurements

`rule … defeasible` — 6 707 in 278 packages (a general norm with
exceptions); `rule … defeater` — 478 in 75 (an exception removing the
general norm); `defeat p(x)` in a defeater — 606 in 78 (“the ground is
gone”: suspension, seizure, moratorium); bare `unless F` in a rule — 584
in 77 (an article proviso “except in cases…”); `unless F then not p(x)` —
in 26 packages (a refusal proviso); `except_when` — 1 in 1 package
(deprecated; in corpus sources — only in comments).