# GIRL infinitesimal reinforcement learning

- **Registry ID:** `lincs-girl-family`
- **Book:** Machine Learning from Enforcing Compositionality
- **Documentation status:** `public-code-linked`
- **Experimental status:** controlled synthetic and policy-transport studies
- **Canonical documentation URL:** https://categorical-ai.sridharmahadevan.com/experiments/lincs-girl-family

## Purpose

Bellman-obstruction, regret, ranking, harmful-admission, transport, and post-shift tests.

## Book location

- Chapter 15: Infinitesimal Reinforcement Learning

## Documented studies

- Bellman-obstruction calibration
- Regret and ranking comparison
- Harmful-admission control
- Policy-transport study
- Post-shift recovery and abstention test

## Associated code packages

- `lincs-girl` — [LINCS GIRL package](https://github.com/sridharmahadevan/LINCS/tree/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl); **public**; Apache-2.0. Infinitesimal reinforcement learning, policy transport, and structural-admission experiments.

## Start here

These concrete files are selected from the complete resolved source surface. They orient the reader; they are not a claim that every family is independently reproducible.

- **implementation · public-pinned** — [`lincs-girl:scripts/run_smoke.sh`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/scripts/run_smoke.sh). Open the pinned public source file.
- **implementation · public-pinned** — [`lincs-girl:scripts/run_full.sh`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/scripts/run_full.sh). Open the pinned public source file.
- **implementation · public-pinned** — [`lincs-girl:src/girl/adversarial_online.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/adversarial_online.py). Open the pinned public source file.
- **implementation · public-pinned** — [`lincs-girl:src/girl/control.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/control.py). Open the pinned public source file.

## Entry points

- `scripts/run_smoke.sh`
- `scripts/run_full.sh`

## Result artifacts

- `full-suite reports`

## Resolved code surfaces (24)

- **implementation** — [`lincs-girl:scripts/run_full.sh`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/scripts/run_full.sh)
- **implementation** — [`lincs-girl:scripts/run_smoke.sh`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/scripts/run_smoke.sh)
- **implementation** — [`lincs-girl:src/girl/__init__.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/__init__.py)
- **implementation** — [`lincs-girl:src/girl/adversarial_online.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/adversarial_online.py)
- **implementation** — [`lincs-girl:src/girl/control.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/control.py)
- **implementation** — [`lincs-girl:src/girl/cotangent_repair.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/cotangent_repair.py)
- **implementation** — [`lincs-girl:src/girl/deep_advantage.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/deep_advantage.py)
- **implementation** — [`lincs-girl:src/girl/deep_localization.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/deep_localization.py)
- **implementation** — [`lincs-girl:src/girl/homomorphism_diagrams.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/homomorphism_diagrams.py)
- **implementation** — [`lincs-girl:src/girl/kan_admission.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/kan_admission.py)
- **implementation** — [`lincs-girl:src/girl/kan_fa.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/kan_fa.py)
- **implementation** — [`lincs-girl:src/girl/kan_interaction_admission.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/kan_interaction_admission.py)
- **implementation** — [`lincs-girl:src/girl/kan_validation.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/kan_validation.py)
- **implementation** — [`lincs-girl:src/girl/linear_eval.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/linear_eval.py)
- **implementation** — [`lincs-girl:src/girl/nonlinear_eval.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/nonlinear_eval.py)
- **implementation** — [`lincs-girl:src/girl/offpolicy_transport.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/offpolicy_transport.py)
- **implementation** — [`lincs-girl:src/girl/online_actor_critic.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/online_actor_critic.py)
- **implementation** — [`lincs-girl:src/girl/policy_bridge.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/policy_bridge.py)
- **implementation** — [`lincs-girl:src/girl/policy_quotient.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/policy_quotient.py)
- **implementation** — [`lincs-girl:src/girl/policy_transport_gate.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/policy_transport_gate.py)
- **implementation** — [`lincs-girl:src/girl/policy_visibility.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/policy_visibility.py)
- **implementation** — [`lincs-girl:src/girl/preference_obstruction.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/preference_obstruction.py)
- **implementation** — [`lincs-girl:src/girl/safe_recovery.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/safe_recovery.py)
- **implementation** — [`lincs-girl:src/girl/sampled_transport.py`](https://github.com/sridharmahadevan/LINCS/blob/c78bfe50ded8d40db90c614e40dd2e0e146a9875/packages/girl/src/girl/sampled_transport.py)

## Frozen run records (0)

- No frozen run-level record is registered. Consult the result-artifact list and evidence boundary above for the exact surviving evidence; absence of a run record is not evidence that no experiment was run.

## Evidence boundary

Evaluation-only exact utility is not available to the controller; missed thresholds and abstentions remain negative evidence.

A code or artifact link establishes traceability. It does not by itself establish independent reproduction, statistical adequacy, correctness, or support for a claim beyond this boundary.
