chapter file                                        kind      lines seeds unseeded asserts  deps
ch01    l1_1_imitation_error.py                     listing      64     1        0       4  numpy
ch01    l1_2_mle_vs_reward.py                       listing      72     0        0       3  numpy,scipy
ch01    l1_3_kl_regularized_optimum.py              listing      51     1        0       2  numpy
ch01    l1_4_softmax_score_identity.py              listing      68     1        0       5  numpy
ch01    l1_5_reinforce_bandit.py                    listing      74     2        0       2  numpy
ch01    l1_6_exposure_bias.py                       listing     145     1        0       1  numpy
ch01    make_figures.py                             module       43     0        0       0  matplotlib,numpy
ch01    s1_exercises.py                             exercise     63     2        0       1  numpy,scipy
ch02    l2_1_tabular_mdp.py                         listing     103     1        0       7  numpy
ch02    l2_2_token_mdp.py                           listing      98     1        0       4  numpy
ch02    l2_3_optimal_token_policy.py                listing      52     0        0       3  numpy
ch02    l2_4_belief_update.py                       listing      86     1        0       3  numpy
ch02    l2_5_policy_iteration.py                    listing      38     1        0       2  numpy
ch02    s2_exercises.py                             exercise     49     2        0       2  numpy
ch03    l3_1_variance_vs_horizon.py                 listing      58     1        0       2  numpy
ch03    l3_2_optimal_baseline.py                    listing      56     1        0       3  numpy,scipy
ch03    l3_3_theorem_exact.py                       listing      92     1        0       2  numpy,torch
ch03    l3_4_sequence_gradient_check.py             listing      67     2        0       2  numpy,torch
ch03    l3_5_reinforce_training.py                  listing      53     2        0       1  numpy,torch
ch03    make_figures.py                             module       34     0        0       0  matplotlib,numpy
ch03    s3_exercises.py                             exercise     63     1        0       4  numpy
ch03    seq_policy.py                               module       50     0        0       0  torch
ch04    actor_critic.py                             module       59     0        0       0  torch
ch04    gae.py                                      module       31     0        0       0  numpy
ch04    l4_1_gae_identities.py                      listing      52     1        0       3  numpy
ch04    l4_2_bias_variance.py                       listing     108     2        0       1  numpy
ch04    l4_3_critic_regression.py                   listing      68     2        0       3  numpy,torch
ch04    l4_4_actor_critic_training.py               listing      71     2        0       0  numpy,torch
ch04    make_figures.py                             module       27     0        0       0  matplotlib,numpy
ch04    s4_exercises.py                             exercise     47     2        0       0  numpy,torch
ch05    exact_mdp.py                                module       67     1        0       0  torch
ch05    l5_1_performance_difference.py              listing      45     1        0       2  numpy,torch
ch05    l5_2_fisher_and_kl.py                       listing      52     1        0       1  torch
ch05    l5_3_natural_gradient.py                    listing      35     1        0       0  torch
ch05    l5_4_trpo_loop.py                           listing      71     1        0       0  numpy,torch
ch05    make_figures.py                             module       26     0        0       0  matplotlib,numpy
ch05    natural_gradient.py                         module       63     0        0       0  torch
ch05    s5_exercises.py                             exercise     72     3        0       0  numpy,torch
ch06    actor_critic.py                             module       59     0        0       0  torch
ch06    l6_1_clipped_objective.py                   listing      52     1        0       2  numpy,torch
ch06    l6_2_kl_estimators.py                       listing      64     1        0       1  numpy,torch
ch06    l6_3_clip_ablation.py                       listing      29     0        0       0  numpy
ch06    l6_4_kl_penalty.py                          listing      59     1        0       1  numpy,torch
ch06    make_figures.py                             module       25     0        0       0  matplotlib,numpy
ch06    ppo.py                                      module       87     2        0       0  numpy,torch
ch06    s6_exercises.py                             exercise     82     3        0       0  numpy,torch
ch07    l7_1_bradley_terry.py                       listing      86     3        0       0  numpy
ch07    l7_2_reward_model_training.py               listing      50     2        0       0  numpy,scipy,torch
ch07    l7_3_goodhart_theory.py                     listing      54     1        0       0  numpy,scipy
ch07    l7_4_overoptimization.py                    listing      78     1        0       0  numpy,torch
ch07    make_figures.py                             module       18     0        0       0  matplotlib,numpy
ch07    reward_model.py                             module       60     1        0       0  numpy,torch
ch07    s7_exercises.py                             exercise     58     4        0       0  numpy
ch08    l8_1_dpo_population.py                      listing      45     0        0       0  torch
ch08    l8_2_finite_data.py                         listing      57     1        0       0  numpy,torch
ch08    l8_3_loss_variants.py                       listing      47     1        0       0  numpy,torch
ch08    l8_4_offline_vs_online.py                   listing      78     3        0       0  numpy,torch
ch08    make_figures.py                             module       19     0        0       0  matplotlib,numpy
ch08    s8_exercises.py                             exercise     74     2        0       0  numpy,torch
ch08    seq_policy.py                               module       59     0        0       0  numpy,torch
ch08    tabular_pref.py                             module       38     1        0       0  numpy,torch
ch09    grpo_trainer.py                             module      100     2        0       0  numpy,torch
ch09    l9_1_group_baselines.py                     listing     106     2        0       1  numpy,torch
ch09    l9_2_length_bias.py                         listing      45     0        0       0  numpy
ch09    l9_3_group_trainer.py                       listing      22     0        0       0  numpy
ch09    make_figures.py                             module       12     0        0       0  matplotlib,numpy
ch09    s9_exercises.py                             exercise     48     1        0       0  numpy,scipy
ch10    group_trainer.py                            module       89     3        0       0  numpy,torch
ch10    l10_1_noisy_verifier_exact.py               listing      83     1        0       0  numpy,torch
ch10    l10_2_verifier_tests.py                     listing      65     0        0       7  
ch10    l10_3_noise_and_shaping.py                  listing      61     0        0       0  numpy,torch
ch10    make_figures.py                             module       15     0        0       0  matplotlib,numpy
ch10    s10_exercises.py                            exercise     48     1        0       0  numpy
ch10    verifiers.py                                module      131     0        0       0  
ch11    chain_task.py                               module       54     1        0       0  numpy
ch11    l11_1_variance_ladder.py                    listing      69     1        0       0  numpy
ch11    l11_2_outcome_vs_process.py                 listing      94     1        0       0  numpy
ch11    l11_3_prm_training.py                       listing      60     2        0       0  numpy,torch
ch11    make_figures.py                             module       13     0        0       0  matplotlib,numpy
ch11    s11_exercises.py                            exercise     37     0        0       0  numpy
ch12    l12_1_passk.py                              listing      58     1        0       1  numpy,scipy
ch12    l12_2_best_of_n.py                          listing      45     1        0       0  numpy,scipy
ch12    l12_3_majority.py                           listing      57     1        0       0  numpy
ch12    l12_4_uct.py                                listing     109     2        0       0  numpy
ch12    l12_5_allocation.py                         listing      47     1        0       0  numpy,scipy
ch12    make_figures.py                             module       24     0        0       0  matplotlib
ch12    s12_exercises.py                            exercise     41     0        0       0  numpy,scipy
ch13    l13_1_entropy_dynamics.py                   listing      81     1        0       0  numpy
ch13    l13_2_sharpening.py                         listing      85     1        0       0  numpy
ch13    l13_3_population.py                         listing      90     1        0       0  numpy
ch13    l13_4_exploration.py                        listing      67     1        0       0  numpy
ch13    make_figures.py                             module       33     0        0       0  matplotlib
ch13    s13_exercises.py                            exercise     48     0        0       0  numpy
ch14    agent_framework.py                          module      139     0        0       0  
ch14    l14_1_agent_loop.py                         listing     114     1        0       0  numpy
ch14    l14_2_belief_memory.py                      listing     114     0        0       0  numpy
ch14    l14_3_context_window.py                     listing      55     1        0       0  numpy
ch14    s14_exercises.py                            exercise     28     0        0       0  numpy,scipy
ch14    synth_world.py                              module       37     1        0       0  numpy
ch15    bisection_env.py                            module       46     0        0       0  numpy,torch
ch15    l15_1_variance_horizon.py                   listing      54     1        0       0  numpy
ch15    l15_2_multi_turn_trainer.py                 listing      81     2        0       0  numpy,torch
ch15    l15_3_hindsight.py                          listing     119     1        0       0  numpy
ch15    make_figures.py                             module       18     0        0       0  matplotlib,numpy
ch15    s15_exercises.py                            exercise    130     1        0       6  numpy
ch16    code_env.py                                 module       53     1        0       0  numpy
ch16    l16_1_code_environment.py                   listing      90     0        0       4  numpy
ch16    l16_2_task_generators.py                    listing      59     1        0       3  numpy
ch16    l16_3_curriculum.py                         listing      86     1        0       0  numpy
ch16    l16_4_test_adequacy.py                      listing      72     1        0       0  numpy
ch16    make_figures.py                             module       14     0        0       0  matplotlib,numpy
ch16    s16_exercises.py                            exercise     75     2        0       5  numpy
ch16    sandbox.py                                  module       59     0        0       0  
ch16    task_generators.py                          module       71     2        0       0  numpy
ch17    l17_1_learning_in_games.py                  listing     110     1        0       1  numpy,scipy
ch17    l17_2_ultimatum_selfplay.py                 listing      46     0        0       0  numpy
ch17    l17_3_debate.py                             listing      52     1        0       1  numpy
ch17    l17_4_cooperative.py                        listing      62     1        0       0  numpy
ch17    make_figures.py                             module       20     0        0       0  matplotlib,numpy
ch17    s17_exercises.py                            exercise     61     1        0       6  numpy
ch18    l18_1_goodhart.py                           listing      57     1        0       0  numpy,scipy
ch18    l18_2_kl_budget.py                          listing      58     1        0       1  numpy
ch18    l18_3_length_bias.py                        listing      56     1        0       0  numpy
ch18    l18_4_hacking_detectors.py                  listing      82     1        0       0  numpy
ch18    make_figures.py                             module       20     0        0       0  matplotlib,numpy
ch18    s18_exercises.py                            exercise     68     1        0       4  numpy,scipy
ch19    evalstats.py                                module       70     1        0       0  numpy,scipy
ch19    l19_1_evaluation_statistics.py              listing     104     1        0       0  numpy,scipy
ch19    l19_2_contamination.py                      listing      89     1        0       0  numpy,scipy
ch19    l19_3_judge_bias.py                         listing      82     2        0       0  numpy,scipy
ch19    make_figures.py                             module       22     0        0       0  matplotlib,numpy
ch19    s19_exercises.py                            exercise     60     1        0       1  numpy,scipy
ch20    l20_1_batching.py                           listing      42     1        0       1  numpy
ch20    l20_2_staleness.py                          listing      71     4        0       0  numpy
ch20    l20_3_async_pipeline.py                     listing      79     2        0       0  numpy
ch20    l20_4_memory.py                             listing      91     1        0       2  numpy,torch
ch20    l20_5_throughput.py                         listing      53     0        0       0  numpy
ch20    make_figures.py                             module       18     0        0       0  matplotlib,numpy
ch20    s20_exercises.py                            exercise     74     2        0       2  numpy,torch
ch21    l21_1_reward_model_uncertainty.py           listing      63     1        0       0  numpy
ch21    l21_2_constrained_rl.py                     listing      65     1        0       0  numpy,scipy
ch21    s21_exercises.py                            exercise     50     1        0       1  scipy

142 files, 8827 lines, 114 assertions
files with no seed construct: ['l1_2_mle_vs_reward.py', 'l2_3_optimal_token_policy.py', 'l6_3_clip_ablation.py', 'l8_1_dpo_population.py', 'l9_2_length_bias.py', 'l9_3_group_trainer.py', 'l10_2_verifier_tests.py', 'l10_3_noise_and_shaping.py', 's11_exercises.py', 's12_exercises.py', 's13_exercises.py', 'l14_2_belief_memory.py', 's14_exercises.py', 'l16_1_code_environment.py', 'l17_2_ultimatum_selfplay.py', 'l20_5_throughput.py']
files using unseeded global random calls: []
files with no assertions: ['l4_4_actor_critic_training.py', 's4_exercises.py', 'l5_3_natural_gradient.py', 'l5_4_trpo_loop.py', 's5_exercises.py', 'l6_3_clip_ablation.py', 's6_exercises.py', 'l7_1_bradley_terry.py', 'l7_2_reward_model_training.py', 'l7_3_goodhart_theory.py', 'l7_4_overoptimization.py', 's7_exercises.py', 'l8_1_dpo_population.py', 'l8_2_finite_data.py', 'l8_3_loss_variants.py', 'l8_4_offline_vs_online.py', 's8_exercises.py', 'l9_2_length_bias.py', 'l9_3_group_trainer.py', 's9_exercises.py', 'l10_1_noisy_verifier_exact.py', 'l10_3_noise_and_shaping.py', 's10_exercises.py', 'l11_1_variance_ladder.py', 'l11_2_outcome_vs_process.py', 'l11_3_prm_training.py', 's11_exercises.py', 'l12_2_best_of_n.py', 'l12_3_majority.py', 'l12_4_uct.py', 'l12_5_allocation.py', 's12_exercises.py', 'l13_1_entropy_dynamics.py', 'l13_2_sharpening.py', 'l13_3_population.py', 'l13_4_exploration.py', 's13_exercises.py', 'l14_1_agent_loop.py', 'l14_2_belief_memory.py', 'l14_3_context_window.py', 's14_exercises.py', 'l15_1_variance_horizon.py', 'l15_2_multi_turn_trainer.py', 'l15_3_hindsight.py', 'l16_3_curriculum.py', 'l16_4_test_adequacy.py', 'l17_2_ultimatum_selfplay.py', 'l17_4_cooperative.py', 'l18_1_goodhart.py', 'l18_3_length_bias.py', 'l18_4_hacking_detectors.py', 'l19_1_evaluation_statistics.py', 'l19_2_contamination.py', 'l19_3_judge_bias.py', 'l20_2_staleness.py', 'l20_3_async_pipeline.py', 'l20_5_throughput.py', 'l21_1_reward_model_uncertainty.py', 'l21_2_constrained_rl.py']
torch users: 41   scipy users: 21
