Books / Law as Code in Practice: French Family Benefits / How to Read This Book
How to Read This Book
How to Read This Book

Contents of Law as Code in Practice: French Family Benefits
Chapters are numbered from 0, like the lessons of the online course, so a reference to “Chapter 9” means the same thing in both. Each chapter opens with a question, quotes the French text that answers it, shows the part of the model that carries it, and ends with what the answer gives the fund and an exercise. Solutions are at the end of the book: try the exercise first.
Three ways through
Read the book in order if you can. If you come with one job in mind, these paths keep the thread:
- Lawyers and policy staff — Chapters 0, 1, 4, 7, 8, 9, 12 and 13: which article decides each answer, where the text is silent, which reading was chosen, where a human must decide, and how a decision is explained.
- Programme analysts — Chapters 0, 3, 4, 5, 10, 11, 14 and 15: which fact changes an answer, how parameters and revaluations work, what a family’s file does over time, and what a draft reform does to stated files.
- Developers — Chapters 0, 2, 4, 5, 16, 17 and 18: how a rule becomes a question you can ask, how a scenario is written, how an answer is reproduced, and how an existing rulebook is migrated.
Every chapter opens with a short note naming what each of these readers should take from it.
Reading an answer
The model’s answers are more precise than “yes” and “no”. Each answer has two statuses, with the same names in every volume of the series. The first says what follows from the facts and rules:
- Established — the facts and rules support the statement and do not support its opposite. The answer names the rule and the article behind it.
- Not established — they support neither the statement nor its opposite. This is not zero and not a refusal: often a fact is missing, and the model names the open premise.
- Refuted — they support the opposite and do not support the statement. Not met in this book.
- Contradiction — they support both, for example because two records of the file disagree. The answer keeps both, with their sources, for review instead of choosing silently. Not met in this book; Volume 2 shows one (Chapter 8).
The second says whether the model could answer at all. Usually it could — the answer is computed, and the first status applies. If not, the answer says why:
- Requires judgment — the rules reserve a question for an authority, such as the paying body. The answer names the question and the authority it is addressed to.
- Refused — the model will not compute an amount where the text leaves a choice it has not been given, such as how to round an inexact division. The answer names the missing choice.
- A reading must be chosen — the answer depends on readings the file has not chosen between; the answer says which group of readings is open (Chapter 8).
The two go together: in Chapter 9, before the housing is assessed, the right is not established and the answer requires judgment.
Duties carry their own states: a duty can be active (it applies), satisfied (it has been met), violated (it has been breached) or undetermined (the evidence shows neither). An active duty is not a breached one: whether a duty exists and whether it has been performed are separate questions, and only evidence answers the second.
Readings
Where a text can be read in more than one way, the model declares the readings and the file chooses one by name. A chapter that depends on such a choice names it — for example, the reading that rounds each row of a published scale to the cent.
Commands
Some chapters end with the questions behind their answers, in the form law ask <case package> --case … --query-json …. The appendix on reproduction explains how to run them, and how law eval evaluates the saved answer again — without the source files or a rebuild — and must give the same bytes.
The households in this book
All the households are fictional. Each chapter says which file it uses; where a chapter switches files, it says so.
| Household | Chapters | What it shows |
|---|---|---|
| The Garniers — Nadia and Thomas, three children | 0, 4, 9, 10 | The running example: family allowances of €425.57, housing aid, the start of the right, the duties of each side, a change in May and the decency assessment |
| A single tenant | 1 | Two files, December 2020 and January 2021, read under two editions of the resource rule |
| The Moreaus | 2, 5, 17, 18 | The birth grant on teaching inputs: resources equal to the ceiling, a missing fact, a scenario, a replay and a migration register |
| Martin, Bernard and Petit | 3, 14, 15, 16, final exercise | Family allowances for two, three and four children: a revaluation, a draft reform, a screen and, for Martin, an assistant’s answer |
| Durand | 15 | A household with one child that the screen does not pass |
| A retired couple in a residence | 6 | The K coefficient of the housing formula for a logement-foyer |
| A single resident | 7 | A division by twelve that the text does not say how to round |
| A synthetic single-person test card | 8 | Two readings of the minimum personal contribution |
| The household of FamilleDansLeTemps | 11 | Payments, deductions and a time-barred debt, 2024 to 2026 |
| The Fontaines | 12, 13 | A remission request, its deadlines and an attached notice; three children, €40,000 resources, no age supplement, family allowances of €349.06 — a different file from the Garniers’ |
| Two prime d’activité files | 12 | Recovery during a challenge, with and without a suspensive appeal |
| People in the duty scenarios | 10 | A pregnancy declaration sent in time or late; a fee charged to a maintenance creditor |