{
  "groups": {
    "smoke": [
      "add_zero_right"
    ],
    "broader": [
      "mul_add_distrib_right",
      "add_mul_distrib_left",
      "and_all_repeat_true",
      "sum_slow_append_slow",
      "map_double_slow_append_slow",
      "tree_leaves_mirror",
      "rev_slow_append_slow"
    ],
    "heldout": [
      "six_shift_eq_six_mul_add_one",
      "seven_add_eq_self_sum",
      "plus_slow_assoc",
      "mul_slow_add_left",
      "length_slow_map_succ_slow",
      "length_slow_rev_slow",
      "tree_size_mirror_sum_twice"
    ],
    "combined": [
      "mul_add_distrib_right",
      "add_mul_distrib_left",
      "and_all_repeat_true",
      "sum_slow_append_slow",
      "map_double_slow_append_slow",
      "tree_leaves_mirror",
      "rev_slow_append_slow",
      "six_shift_eq_six_mul_add_one",
      "seven_add_eq_self_sum",
      "plus_slow_assoc",
      "mul_slow_add_left",
      "length_slow_map_succ_slow",
      "length_slow_rev_slow",
      "tree_size_mirror_sum_twice"
    ],
    "negative_controls": [
      "mul_add_distrib_right",
      "add_mul_distrib_left",
      "mul_assoc_builtin",
      "mul_comm_builtin",
      "add_left_cancel_builtin",
      "filter_length_le_builtin"
    ],
    "challenge_v2_no_helper": [
      "challenge_v2_length_rev_no_helper",
      "challenge_v2_sum_rev_no_helper",
      "challenge_v2_map_succ_rev_no_helper"
    ],
    "challenge_v3_generalization": [
      "challenge_v3_rev_acc_generalization",
      "challenge_v3_sum_acc_generalization",
      "challenge_v3_tree_flatten_mirror",
      "challenge_v3_map_rev_append_combined"
    ],
    "challenge_transfer": [
      "challenge_v2_length_rev_no_helper",
      "challenge_v2_sum_rev_no_helper",
      "challenge_v2_map_succ_rev_no_helper",
      "challenge_v3_rev_acc_generalization",
      "challenge_v3_sum_acc_generalization",
      "challenge_v3_tree_flatten_mirror",
      "challenge_v3_map_rev_append_combined"
    ],
    "challenge_v4_count": [
      "challenge_v4_count_acc_generalization",
      "challenge_v4_count_rev_slow",
      "challenge_v4_count_flatten_mirror",
      "challenge_v4_count_mapSucc_rev"
    ],
    "challenge_v5_attribution": [
      "challenge_v5_tally_acc_pair",
      "challenge_v5_partition_count_length",
      "challenge_v5_filter_rev_count_combo",
      "challenge_v5_tree_tally_mirror"
    ],
    "challenge_v5_tree_tally": [
      "challenge_v5_tree_tally_mirror"
    ],
    "challenge_v13_decomposition_order": [
      "challenge_v13_partition_side_bundle_no_stats_flatten_mirror",
      "challenge_v13_partition_reordered_metrics_flatten_mirror",
      "challenge_v13_raw_count_length_sum_flatten_mirror",
      "challenge_v13_keep_drop_triple_metrics_append",
      "challenge_v13_partition_metrics_with_append_hyps_flatten_mirror",
      "challenge_v13_partition_metrics_from_side_hyps"
    ],
    "challenge_v14_metric_order_permutations": [
      "challenge_v14_order_count_length_sum_flatten_mirror",
      "challenge_v14_order_count_sum_length_flatten_mirror",
      "challenge_v14_order_length_count_sum_flatten_mirror",
      "challenge_v14_order_length_sum_count_flatten_mirror",
      "challenge_v14_order_sum_count_length_flatten_mirror",
      "challenge_v14_order_sum_length_count_flatten_mirror"
    ],
    "challenge_extended_transfer": [
      "challenge_v2_length_rev_no_helper",
      "challenge_v2_sum_rev_no_helper",
      "challenge_v2_map_succ_rev_no_helper",
      "challenge_v3_rev_acc_generalization",
      "challenge_v3_sum_acc_generalization",
      "challenge_v3_tree_flatten_mirror",
      "challenge_v3_map_rev_append_combined",
      "challenge_v4_count_acc_generalization",
      "challenge_v4_count_rev_slow",
      "challenge_v4_count_flatten_mirror",
      "challenge_v4_count_mapSucc_rev",
      "challenge_v5_tally_acc_pair",
      "challenge_v5_partition_count_length",
      "challenge_v5_filter_rev_count_combo",
      "challenge_v5_tree_tally_mirror",
      "challenge_v6_stats_acc_rev",
      "challenge_v6_tree_partition_mirror",
      "challenge_v6_mapSucc_rev_count_sum",
      "challenge_v6_mutual_depth_stats_mirror",
      "challenge_v7_partition_stats_acc_mirror",
      "challenge_v7_mutual_values_stats_acc_mirror",
      "challenge_v7_partition_reassemble_stats_acc_mirror",
      "challenge_v7_tree_mapSucc_stats_acc_mirror",
      "challenge_v8_stats_acc_flatten_mirror",
      "challenge_v8_keep_stats_acc_flatten_mirror",
      "challenge_v8_drop_stats_acc_flatten_mirror",
      "challenge_v8_partition_reassemble_stats_acc_list",
      "challenge_v9_keep_length_flatten_mirror",
      "challenge_v9_keep_sum_flatten_mirror",
      "challenge_v9_keep_length_sum_flatten_mirror",
      "challenge_v9_drop_length_flatten_mirror",
      "challenge_v9_drop_sum_flatten_mirror",
      "challenge_v9_drop_length_sum_flatten_mirror",
      "challenge_v10_stats_acc_reify_list",
      "challenge_v10_stats_acc_extensional_from_metrics",
      "challenge_v10_keep_count_flatten_mirror",
      "challenge_v10_drop_count_flatten_mirror",
      "challenge_v10_keep_stats_acc_from_metric_hyps",
      "challenge_v10_drop_stats_acc_from_metric_hyps",
      "challenge_v11_keep_metric_bundle_flatten_mirror",
      "challenge_v11_drop_metric_bundle_flatten_mirror",
      "challenge_v11_keep_stats_acc_from_metric_bundle",
      "challenge_v11_drop_stats_acc_from_metric_bundle",
      "challenge_v11_partition_metric_bundles_flatten_mirror",
      "challenge_v11_partition_stats_from_metric_bundles",
      "challenge_v12_partition_count_metrics_flatten_mirror",
      "challenge_v12_partition_length_metrics_flatten_mirror",
      "challenge_v12_partition_sum_metrics_flatten_mirror",
      "challenge_v12_partition_count_length_metrics_flatten_mirror",
      "challenge_v12_partition_count_sum_metrics_flatten_mirror",
      "challenge_v12_partition_length_sum_metrics_flatten_mirror",
      "challenge_v12_partition_count_length_sum_metrics_flatten_mirror",
      "challenge_v13_partition_side_bundle_no_stats_flatten_mirror",
      "challenge_v13_partition_reordered_metrics_flatten_mirror",
      "challenge_v13_raw_count_length_sum_flatten_mirror",
      "challenge_v13_keep_drop_triple_metrics_append",
      "challenge_v13_partition_metrics_with_append_hyps_flatten_mirror",
      "challenge_v13_partition_metrics_from_side_hyps",
      "challenge_v14_order_count_length_sum_flatten_mirror",
      "challenge_v14_order_count_sum_length_flatten_mirror",
      "challenge_v14_order_length_count_sum_flatten_mirror",
      "challenge_v14_order_length_sum_count_flatten_mirror",
      "challenge_v14_order_sum_count_length_flatten_mirror",
      "challenge_v14_order_sum_length_count_flatten_mirror",
      "challenge_v15_order_length_count_sum_from_metric_hyps",
      "challenge_v15_order_length_count_sum_from_side_hyps",
      "challenge_v15_order_length_count_sum_with_append_hyps",
      "challenge_v15_order_length_count_sum_with_append_and_reassembly_hyp",
      "challenge_v16_order_length_count_sum_with_top_level_packer",
      "challenge_v16_order_length_count_sum_with_pair_and_top_packers",
      "challenge_v16_order_length_count_sum_with_nat_scalar_packer",
      "challenge_v16_order_length_count_sum_with_named_metric_packers",
      "challenge_v17_pair_top_packers_with_coarse_plan_hints",
      "challenge_v17_pair_top_packers_with_detailed_plan_hints",
      "challenge_v17_named_metric_packers_with_coarse_plan_hints",
      "challenge_v17_named_metric_packers_with_detailed_plan_hints",
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v6_frontier": [
      "challenge_v6_stats_acc_rev",
      "challenge_v6_tree_partition_mirror",
      "challenge_v6_mapSucc_rev_count_sum",
      "challenge_v6_mutual_depth_stats_mirror"
    ],
    "challenge_v7_frontier": [
      "challenge_v7_partition_stats_acc_mirror",
      "challenge_v7_mutual_values_stats_acc_mirror",
      "challenge_v7_partition_reassemble_stats_acc_mirror",
      "challenge_v7_tree_mapSucc_stats_acc_mirror"
    ],
    "challenge_v8_diagnostics": [
      "challenge_v8_stats_acc_flatten_mirror",
      "challenge_v8_keep_stats_acc_flatten_mirror",
      "challenge_v8_drop_stats_acc_flatten_mirror",
      "challenge_v8_partition_reassemble_stats_acc_list"
    ],
    "challenge_v9_composition_gradient": [
      "challenge_v9_keep_length_flatten_mirror",
      "challenge_v9_keep_sum_flatten_mirror",
      "challenge_v9_keep_length_sum_flatten_mirror",
      "challenge_v9_drop_length_flatten_mirror",
      "challenge_v9_drop_sum_flatten_mirror",
      "challenge_v9_drop_length_sum_flatten_mirror"
    ],
    "challenge_v10_stats_reification": [
      "challenge_v10_stats_acc_reify_list",
      "challenge_v10_stats_acc_extensional_from_metrics",
      "challenge_v10_keep_count_flatten_mirror",
      "challenge_v10_drop_count_flatten_mirror",
      "challenge_v10_keep_stats_acc_from_metric_hyps",
      "challenge_v10_drop_stats_acc_from_metric_hyps"
    ],
    "challenge_v11_metric_composition": [
      "challenge_v11_keep_metric_bundle_flatten_mirror",
      "challenge_v11_drop_metric_bundle_flatten_mirror",
      "challenge_v11_keep_stats_acc_from_metric_bundle",
      "challenge_v11_drop_stats_acc_from_metric_bundle",
      "challenge_v11_partition_metric_bundles_flatten_mirror",
      "challenge_v11_partition_stats_from_metric_bundles"
    ],
    "challenge_v12_simultaneous_metrics": [
      "challenge_v12_partition_count_metrics_flatten_mirror",
      "challenge_v12_partition_length_metrics_flatten_mirror",
      "challenge_v12_partition_sum_metrics_flatten_mirror",
      "challenge_v12_partition_count_length_metrics_flatten_mirror",
      "challenge_v12_partition_count_sum_metrics_flatten_mirror",
      "challenge_v12_partition_length_sum_metrics_flatten_mirror",
      "challenge_v12_partition_count_length_sum_metrics_flatten_mirror"
    ],
    "challenge_v15_proof_shape_hints": [
      "challenge_v15_order_length_count_sum_from_metric_hyps",
      "challenge_v15_order_length_count_sum_from_side_hyps",
      "challenge_v15_order_length_count_sum_with_append_hyps",
      "challenge_v15_order_length_count_sum_with_append_and_reassembly_hyp"
    ],
    "challenge_v16_compact_reassembly_hints": [
      "challenge_v16_order_length_count_sum_with_top_level_packer",
      "challenge_v16_order_length_count_sum_with_pair_and_top_packers",
      "challenge_v16_order_length_count_sum_with_nat_scalar_packer",
      "challenge_v16_order_length_count_sum_with_named_metric_packers"
    ],
    "challenge_v17_proof_plan_hints": [
      "challenge_v17_pair_top_packers_with_coarse_plan_hints",
      "challenge_v17_pair_top_packers_with_detailed_plan_hints",
      "challenge_v17_named_metric_packers_with_coarse_plan_hints",
      "challenge_v17_named_metric_packers_with_detailed_plan_hints"
    ],
    "challenge_v18_prompt_only_skeleton_hints": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v19_bare_skeleton_names": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v20_description_only_skeleton": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v21_neutral_anchor_skeleton": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v22_code_like_anchor_skeleton": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v23_exact_labels_without_plan_prefix": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v24_plan_prefix_generic_labels": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ],
    "challenge_v25_step_prefix_exact_labels": [
      "challenge_v18_pair_top_packers_clean",
      "challenge_v18_named_metric_packers_clean"
    ]
  },
  "descriptions": {
    "smoke": "One quick theorem for setup and smoke checks.",
    "broader": "Seven broader fixtures covering Nat distribution, Bool/List recursion, list helpers, tree helpers, and reverse/append.",
    "heldout": "Seven original held-out transfer fixtures.",
    "combined": "The broader group followed by the heldout group.",
    "negative_controls": "Six fixtures where generic Nat/List hint candidates should fail Lean before fallback.",
    "challenge_v2_no_helper": "Three no-expected-proof challenge fixtures requiring local append/map helper lemma discovery.",
    "challenge_v3_generalization": "Four no-expected-proof theorem-generalization fixtures requiring accumulator generalization and multi-helper proof plans.",
    "challenge_transfer": "All v2/v3 challenge fixtures for proof-transfer experiments; no expected proofs are bundled.",
    "challenge_v4_count": "Four no-expected-proof count/list/tree fixtures covering occurrence counting, reverse preservation, tree mirror/flatten, and successor-map-after-reverse.",
    "challenge_v5_attribution": "Four no-expected-proof fixtures designed to separate seeded, unseeded, and direct repair on simultaneous invariants and multi-helper composition.",
    "challenge_v5_tree_tally": "The hardest v5 tree/tally mirror fixture for repeated attribution controls.",
    "challenge_extended_transfer": "All v2/v3/v4/v5/v6/v7/v8/v9/v10/v11/v12/v13/v14/v15/v16/v17/v18 challenge fixtures; no expected proofs are bundled.",
    "challenge_v6_frontier": "Four no-expected-proof frontier fixtures covering multi-accumulator reverse invariants, nested tree partition stats, successor-map reverse count/sum, and mutually recursive tree depth statistics.",
    "challenge_v7_frontier": "Four no-expected-proof frontier-plus fixtures combining nested tree partition/filter composition, stats accumulator generalization, mutually recursive traversals, and shifted successor-map statistics.",
    "challenge_v8_diagnostics": "Four no-expected-proof diagnostic fixtures isolating the v7 partition-heavy accumulator frontier into raw tree stats, keep-side mirror stats, drop-side mirror stats, and list-only partition reassembly.",
    "challenge_v9_composition_gradient": "Six no-expected-proof composition-gradient fixtures splitting keep/drop partition-through-mirror into scalar length/sum obligations and paired length+sum obligations.",
    "challenge_v10_stats_reification": "Six no-expected-proof statsAcc-reification fixtures isolating accumulator tuple normalization, metric extensionality, count metrics, and keep/drop stats equality from metric hypotheses.",
    "challenge_v11_metric_composition": "Six no-expected-proof metric-composition fixtures combining keep/drop metric bundles with statsAcc extensionality boundaries, stopping short of proving the full v7/v8 theorem outright.",
    "challenge_v12_simultaneous_metrics": "Seven no-expected-proof simultaneous-metric fixtures isolating keep/drop count-only, length-only, sum-only, pair, and triple metric bundles through tree mirror.",
    "challenge_v13_decomposition_order": "Six no-expected-proof decomposition/order fixtures isolating full-triple metric grouping, append/filter sub-lemmas, raw tree metrics, and conjunction reassembly.",
    "challenge_v14_metric_order_permutations": "Six no-expected-proof metric-order fixtures covering all count/length/sum permutations in the full simultaneous keep/drop tree-mirror theorem.",
    "challenge_v15_proof_shape_hints": "Four no-expected-proof proof-shape hint fixtures exposing metric-bundle, side-bundle, append/filter, and final reassembly hypotheses for the hardest length/count/sum order.",
    "challenge_v16_compact_reassembly_hints": "Four no-expected-proof compact reassembly-hint fixtures replacing the large v15 higher-order reassembly hypothesis with smaller generic or named first-order packers.",
    "challenge_v17_proof_plan_hints": "Four no-expected-proof proof-plan hint fixtures adding harmless True-valued skeleton names to compact v16-style packer hypotheses.",
    "challenge_v18_prompt_only_skeleton_hints": "Two no-expected-proof fixtures reusing v16 compact packer theorem statements while supplying detailed proof-plan skeleton names only through the seeded playbook context.",
    "challenge_v19_bare_skeleton_names": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying only bare skeleton-name bullets in the seeded playbook context.",
    "challenge_v20_description_only_skeleton": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying compact natural-language skeleton descriptions without plan labels in the seeded playbook context.",
    "challenge_v21_neutral_anchor_skeleton": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying neutral natural-language step anchors plus compact skeleton descriptions without plan labels in the seeded playbook context.",
    "challenge_v22_code_like_anchor_skeleton": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying compact skeleton descriptions plus code-like snake_case step anchors without the v18 plan_ prefix.",
    "challenge_v23_exact_labels_without_plan_prefix": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying the v18 detailed skeleton labels with only the detailed-plan prefix removed.",
    "challenge_v24_plan_prefix_generic_labels": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying compact descriptions plus generic plan_ labels that differ from v18 exact labels.",
    "challenge_v25_step_prefix_exact_labels": "Ablation group reusing the two clean v18 compact-packer fixtures while supplying compact descriptions plus step_ prefixed exact v18 label roots."
  }
}
