{
  "templateId": "quadratic-eq",
  "title": "이차방정식 풀이 AST 패턴",
  "gradeRange": ["m3", "h0"],
  "strategies": ["factoring", "quadratic-formula", "completing-square"],
  "errorPatterns": [
    {
      "stepId": "factoring",
      "label": "인수분해",
      "description": "ax²+bx+c = (px+q)(rx+s) 형태 분리",
      "exampleInput":  "x^2 + 5x + 6 = 0",
      "expectedOutput": "(x + 2)(x + 3) = 0",
      "canonicalForm":  "(x+2)(x+3)=0",
      "errorTag": "MC_FACTOR_ERROR",
      "wrongExamples": ["(x+6)(x+1)=0", "(x-2)(x-3)=0"],
      "tokenPattern": ["(","x","+","num",")(","x","+","num",")","=","0"]
    },
    {
      "stepId": "zero-product",
      "label": "영인수 법칙",
      "description": "AB=0 → A=0 또는 B=0",
      "exampleInput":  "(x + 2)(x + 3) = 0",
      "expectedOutput": "x = -2 또는 x = -3",
      "canonicalForm":  "x=-2,x=-3",
      "errorTag": "MC_SIGN_ERROR",
      "wrongExamples": ["x=2,x=3"],
      "tokenPattern": ["x","=","num"]
    },
    {
      "stepId": "quadratic-formula",
      "label": "근의 공식",
      "description": "판별식 b²-4ac 계산 및 ±√ 처리",
      "exampleInput":  "x^2 - 4x + 1 = 0",
      "expectedOutput": "x = (4 ± √12) / 2",
      "canonicalForm":  "x=(4±sqrt(12))/2",
      "errorTag": "MC_CALC_ERROR",
      "wrongExamples": ["x=(4±√16)/2"],
      "tokenPattern": ["x","=","(","num","±","sqrt","(","num",")",")","/","num"]
    }
  ],
  "difficultyWeights": { "+": 1, "-": 1, "*": 2, "/": 2, "^": 3, "sqrt": 4 }
}
