den-dynamiske-rettsstaten/CLAUDE.md
Kjell Tore Guttormsen 5d4557d912
docs(pdf): lead the slides with the tool and rebuild all PDFs from source
The slides now present the model as a tool right after the idea: a new
slide on what it finds (binding link and type of measure, how strong,
effect on the rest of the chain and on trust), the seven steps, and the
worked full-court example with the table from section 9.5 next to the
coordination figure. The findings follow as what the tool builds on. The
separate full-link slide is replaced by the example; 16 slides.

The font path for Inter is no longer a hard-coded Linux path, so the
slides build with TeX Live's copy of Inter.

main (57 pages), notat (2) and karusell (16) are rebuilt from the source
in this repository and replace the PDFs in pdf/. README, CHANGELOG and
CLAUDE.md state the new page counts and the verified build commands.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 13:20:00 +01:00

2.5 KiB

den-dynamiske-rettsstaten

Context

Concept note (Norwegian, LaTeX) and its simulation code. The principle: enforcement effort should track how much, and how seriously, laws are actually broken. Published as open, non-commercial material. Readers are Norwegian, so README and paper are in Norwegian (bokmål); CLAUDE.md and code comments may stay as they are.

Stack

  • paper/sim.py: Python 3, numpy + scipy (pinned in requirements.txt). Writes paper/data/*.dat, which pgfplots in the LaTeX source reads.
  • paper/*.tex: LaTeX. main.tex and notat.tex build with pdflatex, karusell.tex with xelatex (font Inter from TeX Live). main.tex = the note (inputs part1-part4, refs), notat.tex = 2-page summary, karusell.tex = slides. Shared preamble.tex. Bibliography is a hand-written thebibliography in refs.tex.
  • pdf/: the published PDFs. They are build output committed on purpose; rebuild and replace them together with source changes.

Conventions

  • The core sentence must be quoted verbatim everywhere: «Innsatsen for å håndheve lover og regler bør løpende stå i forhold til hvor mye, og hvor alvorlig, de faktisk brytes.» Short form of the clarification: «Straffebud og strafferammer ligger fast.»
  • Any change to sim.py must keep paper/data/ byte-identical unless the change is meant to alter results; then text, figures and PDFs change in the same commit.
  • Licensing is split: text (pdf/, paper/*.tex) is CC BY 4.0 (LICENSE-CC-BY-4.0.txt); code and data (paper/sim.py, requirements.txt, paper/data/) are MIT (LICENSE). New files follow the same split.
  • Never commit anything under private/ (working documents: peer review, change list, social-media drafts, original source zip).

Commands

  • Setup: python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
  • Run simulation (about 2 min, from paper/): ../.venv/bin/python sim.py
  • Reproduction check after a run: git status paper/data shows no changes (verified 2026-11-10: 22/22 files identical with Python 3.14.0, numpy 2.5.4, scipy 1.18.1)
  • LaTeX build (from paper/, TeX Live 2026 in /Library/TeX/texbin): pdflatex main.tex and pdflatex notat.tex three times each, xelatex karusell.tex twice; copy to pdf/ (verified 2026-11-10: main 57 pages, notat 2, karusell 16, no undefined references). Build in a scratch copy of paper/ to keep aux files out of the repo.

Workflow

  • Repository starts private under ktg/; moving it to open/ is the operator's decision.
  • Run the repo-standard skill before publishing.