{
  "id": "root",
  "question": "What type of strategic interaction are you analyzing?",
  "options": [
    {
      "label": "Players choose actions simultaneously",
      "next_id": "simultaneous"
    },
    {
      "label": "Players choose actions sequentially",
      "next_id": "sequential"
    },
    {
      "label": "A designer sets the rules for players",
      "next_id": "mechanism"
    },
    {
      "label": "Players form coalitions",
      "next_id": "cooperative"
    }
  ],
  "nodes": [
    {
      "id": "simultaneous",
      "question": "Is information complete (all players know the payoff structure)?",
      "options": [
        {
          "label": "Yes",
          "next_id": "sim_complete"
        },
        {
          "label": "No",
          "next_id": "sim_incomplete"
        }
      ]
    },
    {
      "id": "sim_complete",
      "question": "Is the game zero-sum?",
      "options": [
        {
          "label": "Yes",
          "next_id": "result_minimax"
        },
        {
          "label": "No",
          "next_id": "sim_nonzero"
        }
      ]
    },
    {
      "id": "result_minimax",
      "result": "Zero-sum game — use the Minimax Theorem",
      "tutorials": [
        "tutorials/foundations/zero-sum-games-minimax-theorem/"
      ]
    },
    {
      "id": "sim_nonzero",
      "question": "Is the game repeated?",
      "options": [
        {
          "label": "Yes",
          "next_id": "sim_repeated"
        },
        {
          "label": "No — one-shot",
          "next_id": "result_nash"
        }
      ]
    },
    {
      "id": "result_nash",
      "result": "Normal-form game — find Nash equilibrium (pure or mixed)",
      "tutorials": [
        "tutorials/foundations/nash-equilibrium-pure/",
        "tutorials/foundations/nash-equilibrium-mixed/"
      ]
    },
    {
      "id": "sim_repeated",
      "question": "Is the horizon finite or infinite?",
      "options": [
        {
          "label": "Finite",
          "next_id": "result_finite_repeated"
        },
        {
          "label": "Infinite",
          "next_id": "result_folk_theorem"
        }
      ]
    },
    {
      "id": "result_finite_repeated",
      "result": "Finite repeated game — use backward induction from the last stage",
      "tutorials": [
        "tutorials/foundations/repeated-games-finite-vs-infinite/"
      ]
    },
    {
      "id": "result_folk_theorem",
      "result": "Infinite repeated game — apply the Folk Theorem",
      "tutorials": [
        "tutorials/foundations/folk-theorem-perfect-monitoring/"
      ]
    },
    {
      "id": "sim_incomplete",
      "question": "Do players have private types/information?",
      "options": [
        {
          "label": "Yes",
          "next_id": "result_bayesian"
        },
        {
          "label": "Partial/ambiguous",
          "next_id": "result_robust"
        }
      ]
    },
    {
      "id": "result_bayesian",
      "result": "Bayesian game — find Bayesian Nash equilibrium",
      "tutorials": [
        "tutorials/foundations/bayesian-nash-equilibrium/"
      ]
    },
    {
      "id": "result_robust",
      "result": "Consider robust mechanism design or global games",
      "tutorials": [
        "tutorials/foundations/higher-order-beliefs-global-games/"
      ]
    },
    {
      "id": "sequential",
      "question": "Is information perfect (each player observes all previous moves)?",
      "options": [
        {
          "label": "Yes",
          "next_id": "result_backward_induction"
        },
        {
          "label": "No",
          "next_id": "seq_imperfect"
        }
      ]
    },
    {
      "id": "result_backward_induction",
      "result": "Extensive-form game with perfect information — use backward induction / SPE",
      "tutorials": [
        "tutorials/foundations/backward-induction/"
      ]
    },
    {
      "id": "seq_imperfect",
      "question": "Are there signaling or belief-updating aspects?",
      "options": [
        {
          "label": "Yes",
          "next_id": "result_pbe"
        },
        {
          "label": "No",
          "next_id": "result_spe"
        }
      ]
    },
    {
      "id": "result_pbe",
      "result": "Signaling game — find Perfect Bayesian Equilibrium or Sequential Equilibrium",
      "tutorials": [
        "tutorials/foundations/perfect-bayesian-equilibrium/"
      ]
    },
    {
      "id": "result_spe",
      "result": "Extensive-form game — find Subgame Perfect Equilibrium",
      "tutorials": [
        "tutorials/foundations/subgame-perfect-nash-equilibrium/"
      ]
    },
    {
      "id": "mechanism",
      "question": "What is the designer's goal?",
      "options": [
        {
          "label": "Allocate goods/resources efficiently",
          "next_id": "mech_allocation"
        },
        {
          "label": "Match agents to each other",
          "next_id": "result_matching"
        },
        {
          "label": "Aggregate preferences (voting)",
          "next_id": "result_voting"
        }
      ]
    },
    {
      "id": "mech_allocation",
      "question": "Can the designer use monetary transfers?",
      "options": [
        {
          "label": "Yes",
          "next_id": "result_vcg"
        },
        {
          "label": "No",
          "next_id": "result_no_money"
        }
      ]
    },
    {
      "id": "result_vcg",
      "result": "Use VCG mechanism or Myerson optimal auction",
      "tutorials": [
        "tutorials/mechanism-design/"
      ]
    },
    {
      "id": "result_no_money",
      "result": "Mechanism design without money",
      "tutorials": [
        "tutorials/foundations/mechanism-design-without-money/"
      ]
    },
    {
      "id": "result_matching",
      "result": "Two-sided matching — use Gale-Shapley or Top Trading Cycles",
      "tutorials": [
        "tutorials/mechanism-design/"
      ]
    },
    {
      "id": "result_voting",
      "result": "Social choice / voting — consider Arrow's theorem and specific rules",
      "tutorials": [
        "tutorials/mechanism-design/"
      ]
    },
    {
      "id": "cooperative",
      "question": "Are payoffs transferable between coalition members?",
      "options": [
        {
          "label": "Yes (TU game)",
          "next_id": "result_shapley"
        },
        {
          "label": "No (NTU game)",
          "next_id": "result_ntu"
        }
      ]
    },
    {
      "id": "result_shapley",
      "result": "TU cooperative game — compute Shapley value, core, nucleolus",
      "tutorials": [
        "tutorials/cooperative-gt/"
      ]
    },
    {
      "id": "result_ntu",
      "result": "NTU cooperative game — use Nash bargaining solution",
      "tutorials": [
        "tutorials/cooperative-gt/"
      ]
    }
  ]
}
