Skip to content

Fix(GT-16j,#21903): screening 16j — modèle inversé, re-spécifier vers le résultat classique (non-distorsion au sommet) + re-exec #21968

Closed

Description

@jsboige

Grain: DEEP/notebook-python — lane myia-po-2023:CoursIA-2

Défaut (vérifié firsthand par NanoClaw, review 5606519934 sur PR #21906)

Le notebook MyIA.AI.Notebooks/QuantConnect/../GameTheory/GameTheory-16j-Screening-Loyer-Information-Python.ipynb enseigne le miroir exact du théorème de non-distorsion au sommet.

Le modèle posé (employeur, t = salaire versé à l'agent, V = θa au principal, C = a²/2θ, croisement simple) a pour solution classique (Mussa–Rosen / Maskin–Riley / Laffont–Martimort) :

  • pas de distorsion en haut : a_H = θ_H² = 4
  • distorsion vers le bas du type bas : a_L = 1 → 2/3
  • loyer de H fonction de a_L (le contrat inférieur) — c'est ce qui motive la distorsion de a_L

Le carnet, lui, pose a_H = 2 (abaissé), a_L = 1 (intact), loyer fonction de a_H — obtenu en liant IC_L (t_H = C(θ_L, a_H)). Or IC_L borne t_H par le haut (pour dissuader le type bas de prendre le contrat haut, on BAISSE t_H) : l'égalité n'a pas de justification dans le modèle standard de l'employeur-screening.

Contre-preuve (du review) : le menu classique (a_H = 4, t_H = 4.25) est faisable (IR_L = 0 ; IC_H liant : U_H = 0.25 ≥ 0.25 ; IC_L mou : −3.75 ≤ 0) et donne S_H = 3.75 > 2.00 — le « second optimum » du carnet est strictement dominé dans son propre modèle.

Contradiction interne : l'indice de l'Exercice 1 (« chaque type supérieur cumule les écarts de coût avec le type juste en dessous ») implique un loyer fonction du contrat inférieur (a_L) — contredit la formule §3 du carnet (fonction de a_H).

Chiffres cibles (modèle classique, mêmes paramètres θ_H = 2, θ_L = 1)

a_H = 4, a_L = 2/3, U_H = 1/9, coût attendu de l'asymétrie = 1/12 (loyer 1/18 + distorsion 1/36). Le partage 50/50 et la série convexe 0.195 / 2.00 / 9.00 ne valent que pour la variante inversée.

Scope du fix

  1. Re-dérivation en sens classique : lier IC_H (pas IC_L) ; a_H = θ_H² (non-distorsion au sommet) ; a_L distorsionné vers le bas ; loyer de H = f(a_L).
  2. Corriger la formule §3 (loyer fonction de a_L, pas a_H) + aligner l'indice de l'Exercice 1.
  3. Re-exécuter le carnet (8 cellules) avec les vraies sorties (C.2).
  4. 🟡 cell 15 : « croît de façon convexes » → « convexe » (accord) — subsumé par la réécriture de la section sensibilité.

Provenance

Ouvre comme issue de suivi nommée (avenue 3 de la discipline B.0) pour la réserve 🔴 substantielle de la review 5606519934 sur PR #21906. Le commit post-🔴 de la PR (266201808a) n'a corrigé que le rouge orphan_entry de navigation (chainer 16j dans le graphe), pas le modèle : la correction du modèle est reportée ici, sciemment.

Part of #21903 (livré en PR #21906, modèle inversé non corrigé)

Activity

  1. added a commit that references this issue on Oct 22, 2026
  2. jsboige commented on Oct 22, 2026

    @jsboige
    OwnerAuthor

    Absorbé dans la PR #21906 — le fix est livré sur sa branche.

    Le renversement du modèle de screening (non-distorsion au sommet : $a_H=4$, $a_L=2/3$, $U_H=f(a_L)=1/9$, coût espéré $1/12$) est livré en commit 3d2cdda922 directement sur la branche feature/gt16j-screening-info-rent de #21906, car le 🔴 de la review critiquait le modèle de cette PR. 15 cellules réécrites, 8 re-exécutées (papermill 8/8, sorties réelles).

    Cette issue se ferme au merge de #21906 (Closes #21968 dans le commit) — pas de fermeture anticipée.

  3. jsboige commented on Oct 22, 2026

    @jsboige
    OwnerAuthor

    Grain: DEEP/notebook-python — lane myia-po-2023:CoursIA-2 — prev: DEEP/notebook-python #22027

    [CLAIMED] lane myia-po-2023:CoursIA-2 -- re-derivation screening 16j en sens classique (non-distorsion au sommet a_H=4, a_L=2/3, loyer f(a_L)) + fix formule S3 + re-exec 8 cellules

  4. jsboige commented on Oct 22, 2026

    @jsboige
    OwnerAuthor

    [INFO] candidate-delivered — lane myia-po-2023:CoursIA-2

    Le travail demandé par cette issue est déjà livré dans la PR #21906 (mon PR, toujours ouverte), commit 3d2cdda922 — tête courante de la branche feature/gt16j-screening-info-rent :

    Fix(gametheory,#21968): 16j screening — renverse le modèle inversé vers la non-distorsion au sommet

    Vérification first-hand des 4 points du scope, sur le carnet GameTheory-16j-Screening-Loyer-Information-Python.ipynb à la tête 3d2cdda922 :

    1. Re-dérivation en sens classique — cellule 8 : a_H_2B = theta_H**2 (= 4, non déformé), a_L_2B distorsionné vers le bas (= 0.667 = 2/3), U_H = C(θ_L, a_L) − C(θ_H, a_L) (loyer fonction du contrat bas). ✓
    2. Formule §3 + Exercice 1 — cellule 7 : « le loyer d'information du type haut est alors une fonction du contrat du type bas : U_H = C(θ_L, a_L) − C(θ_H, a_L) » ; l'indice de l'Exercice 1 (cellule 16, « chaque type supérieur cumule les écarts de coût avec le type juste en dessous ») est désormais cohérent avec §3. ✓
    3. Re-exécution (C.2) — cellules 8 et 11 : execution_count = 3 / 4 (entiers), sorties fraîches : a_H = 4.00, a_L = 0.667, U_H = 0.111 (= 1/9), coût espéré 0.083 (= 1/12), loyer 67 % / distorsion 33 %. ✓
    4. Coquille cellule 15 — « croît de façon convexe » (plus de « convexes »). ✓

    Chiffres cibles de l'issue atteints : a_H = 4, a_L = 2/3, U_H = 1/9, coût espéré 1/12.

    Le correctif voyage à l'intérieur de #21906 (livré en rider, le commit ne porte pas Closes #21968) ; l'issue reste ouverte tant que #21906 n'est pas mergée. Je retire mon [CLAIMED] posé plus tôt dans le cycle (posé pour traiter le grain — le grain s'avère déjà livré) ; la clôture revient au coordinateur/adjoint, de préférence au merge de #21906.

  5. added a commit that references this issue on Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions