{
  "version": "2026.09.26-1",
  "checkedAt": "2026-09-26",
  "tolerance": {
    "rel": 1e-9,
    "abs": 1e-9
  },
  "samples": 800,
  "minValidSamples": 500,
  "counts": {
    "identities": 44,
    "examples": 28,
    "pythagorean": 3,
    "reciprocal-and-quotient": 5,
    "cofunction": 6,
    "sum-and-difference": 7,
    "product-to-sum": 4,
    "sum-to-product": 4,
    "triangle": 1,
    "double-angle": 5,
    "half-angle": 5,
    "power-reducing": 4
  },
  "verification": [
    {
      "id": "pythagorean-1",
      "display": "sin²θ + cos²θ = 1",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "pythagorean-2",
      "display": "1 + tan²θ = sec²θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "pythagorean-3",
      "display": "1 + cot²θ = csc²θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "reciprocal-csc",
      "display": "csc θ = 1/sin θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "reciprocal-sec",
      "display": "sec θ = 1/cos θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "reciprocal-cot",
      "display": "cot θ = 1/tan θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "quotient-tan",
      "display": "tan θ = sin θ / cos θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "quotient-cot",
      "display": "cot θ = cos θ / sin θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "even-odd-sin",
      "display": "sin(−θ) = −sin θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "even-odd-cos",
      "display": "cos(−θ) = cos θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "even-odd-tan",
      "display": "tan(−θ) = −tan θ",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "cofunction-sin",
      "display": "sin θ = cos(90° − θ)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "cofunction-cos",
      "display": "cos θ = sin(90° − θ)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "cofunction-tan",
      "display": "tan θ = cot(90° − θ)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-sin",
      "display": "sin(A + B) = sin A cos B + cos A sin B",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "diff-sin",
      "display": "sin(A − B) = sin A cos B − cos A sin B",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-cos",
      "display": "cos(A + B) = cos A cos B − sin A sin B",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "diff-cos",
      "display": "cos(A − B) = cos A cos B + sin A sin B",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-tan",
      "display": "tan(A + B) = (tan A + tan B) / (1 − tan A tan B)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-tan-diff",
      "display": "tan(A − B) = (tan A − tan B) / (1 + tan A tan B)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 1.2303610563618922e-12
    },
    {
      "id": "sum-tan-alternate",
      "display": "tan A + tan B = sin(A + B) / (cos A cos B)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "prod-sin-cos",
      "display": "sin A cos B = ½[sin(A + B) + sin(A − B)]",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "prod-cos-sin",
      "display": "cos A sin B = ½[sin(A + B) − sin(A − B)]",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "prod-cos-cos",
      "display": "cos A cos B = ½[cos(A − B) + cos(A + B)]",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "prod-sin-sin",
      "display": "sin A sin B = ½[cos(A − B) − cos(A + B)]",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-prod-sin-sin",
      "display": "sin A + sin B = 2 sin((A + B)/2) cos((A − B)/2)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-prod-sin-diff",
      "display": "sin A − sin B = 2 cos((A + B)/2) sin((A − B)/2)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-prod-cos-cos",
      "display": "cos A + cos B = 2 cos((A + B)/2) cos((A − B)/2)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "sum-prod-cos-cos-diff",
      "display": "cos A − cos B = −2 sin((A + B)/2) sin((A − B)/2)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "triangle-area-sine",
      "display": "½ a b sin C = ½ b c sin A",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "double-sin",
      "display": "sin 2x = 2 sin x cos x",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "double-cos-1",
      "display": "cos 2x = cos²x − sin²x",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "double-cos-2",
      "display": "cos 2x = 2 cos²x − 1",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "double-cos-3",
      "display": "cos 2x = 1 − 2 sin²x",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "double-tan",
      "display": "tan 2x = 2 tan x / (1 − tan²x)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "half-sin",
      "display": "sin(x/2) = ±√((1 − cos x)/2)",
      "verdict": "conditional-equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "half-cos",
      "display": "cos(x/2) = ±√((1 + cos x)/2)",
      "verdict": "conditional-equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "half-tan-a",
      "display": "tan(x/2) = (1 − cos x)/sin x",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "half-tan-b",
      "display": "tan(x/2) = sin x/(1 + cos x)",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "half-tan-c",
      "display": "tan(x/2) = csc x − cot x",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "power-sin-2",
      "display": "sin²x = (1 − cos 2x)/2",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "power-cos-2",
      "display": "cos²x = (1 + cos 2x)/2",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "power-sin-3",
      "display": "sin³x = (3 sin x − sin 3x)/4",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    },
    {
      "id": "power-cos-3",
      "display": "cos³x = (3 cos x + cos 3x)/4",
      "verdict": "equal",
      "tested": 800,
      "worstRel": 0
    }
  ],
  "categories": [
    {
      "id": "pythagorean",
      "name": "Pythagorean identities",
      "blurb": "sin²θ + cos²θ = 1 and the two versions you get by dividing it.",
      "summary": "The three Pythagorean identities come from one equation: divide sin²θ + cos²θ = 1 by sin²θ or by cos²θ and you get 1 + tan²θ = sec²θ and 1 + cot²θ = csc²θ. Reach for them when a squared term has to disappear, when a 1 + (something)² shows up under a radical, or when you need to trade between sin/cos and tan/sec."
    },
    {
      "id": "reciprocal-and-quotient",
      "name": "Reciprocal and quotient identities",
      "blurb": "csc, sec, cot as reciprocals; tan = sin/cos and cot = cos/sin.",
      "summary": "These six definitions are the translation layer: they turn tan, sec and csc into sin and cos, which is where every other identity lives. Most stalled verifications restart here — write everything in sines and cosines, then look again."
    },
    {
      "id": "cofunction",
      "name": "Cofunction and even/odd identities",
      "blurb": "Complementary-angle pairs, and what happens to a negative angle.",
      "summary": "Cofunction identities say sin and cos are the same function read from the other acute angle of a right triangle: sin θ = cos(90° − θ). The even/odd identities say which functions flip sign when the angle does: cos and sec survive, sin, tan, cot and csc change sign."
    },
    {
      "id": "sum-and-difference",
      "name": "Sum and difference identities",
      "blurb": "sin(a ± b), cos(a ± b), tan(a ± b) expanded.",
      "summary": "Six formulas that split one angle into two, or fuse two angles into one. They are the source that double-angle, half-angle and power-reducing formulas are all derived from, and they are what you use when an angle like 15° or 75° has to be computed without a calculator."
    },
    {
      "id": "double-angle",
      "name": "Double-angle identities",
      "blurb": "sin 2x, the three forms of cos 2x, and tan 2x.",
      "summary": "Set b = a in the sum formulas. Cosine comes out in three equivalent shapes — cos²x − sin²x, 2cos²x − 1, 1 − 2sin²x — and picking the right one is half the work: the last two are what let you integrate cos²x or sin²x without a reduction formula."
    },
    {
      "id": "half-angle",
      "name": "Half-angle identities",
      "blurb": "sin(x/2) and cos(x/2) — with the sign condition spelled out.",
      "summary": "Solve the double-angle formulas for the half angle. The square root is unavoidable, so the sign is a real question: cos(x/2) = +√((1+cos x)/2) holds for x in (−180°, 180°) and fails outside it. Our pages state the condition instead of hiding it."
    },
    {
      "id": "product-to-sum",
      "name": "Product-to-sum identities",
      "blurb": "Products of sines and cosines rewritten as sums.",
      "summary": "Four formulas that turn sin A cos B and friends into sums. Integral calculus is the main customer: ∫sin 3x cos x dx is not approachable until the product is a sum, and the same trick handles ∫sin²x dx through cos²x = (1+cos 2x)/2."
    },
    {
      "id": "sum-to-product",
      "name": "Sum-to-product identities",
      "blurb": "Sums and differences rewritten as a single product.",
      "summary": "The reverse direction. Solving sin A + sin B = 0 or factoring a trig expression is where these pay off, because an equation with one product equal to zero can be split into two simple equations."
    },
    {
      "id": "power-reducing",
      "name": "Power-reducing identities",
      "blurb": "sin², cos², sin³, cos⁴ rewritten with no powers above one.",
      "summary": "Rearrangements of the double-angle formulas whose job is to lower a power. Integration almost always wants them: sin²x = (1 − cos 2x)/2 turns a squared trig term into something a first-year student can integrate in one line."
    },
    {
      "id": "triangle",
      "name": "Triangle identities",
      "blurb": "The area formula ½ab sin C and what it implies via the sine rule.",
      "summary": "These are the identities where the variables are not free angles: A, B, C must be the angles of one triangle and a, b, c its opposite sides. Our sampler generates valid triangles instead of six random numbers, because random numbers make these formulas fail."
    }
  ],
  "triggers": [
    {
      "id": "square-terms",
      "heading": "When your expression has squared terms",
      "question": "how to simplify sin squared plus cos squared",
      "explanation": "A squared sine or cosine is the single loudest signal in trigonometry. Either sin²θ + cos²θ = 1 kills the pair outright, or a power-reducing formula rewrites one of them without any power."
    },
    {
      "id": "one-plus-square",
      "heading": "When you see 1 + (something)²",
      "question": "when to use 1 + tan squared = sec squared",
      "explanation": "1 + tan²θ, 1 + cot²θ and their csc/sec partners come straight from the Pythagorean family. Under a square root — √(1 + tan²θ) — this is usually the whole problem."
    },
    {
      "id": "angle-sum",
      "heading": "When one angle is a sum or difference",
      "question": "when to use the sum formula for sine",
      "explanation": "sin(a + b), cos(a − b): expand when you need the pieces, collapse when you recognise the expansion. This is also how you compute sin 15° exactly."
    },
    {
      "id": "double-angle",
      "heading": "When the angle is doubled and you want the single angle",
      "question": "when to use double angle identities",
      "explanation": "sin 2x, cos 2x, tan 2x in the question but x in the answers means: rewrite in terms of x. Cosine's three forms are the choice to make."
    },
    {
      "id": "half-angle",
      "heading": "When the angle is halved, or a square root of 1 ± cos appears",
      "question": "when to use half angle formulas",
      "explanation": "√((1 − cos x)/2) is sin(x/2) with a sign condition. If the angle range is not given, the ± is part of the answer, not a footnote."
    },
    {
      "id": "product",
      "heading": "When two different functions are multiplied",
      "question": "when to use product to sum",
      "explanation": "sin A cos B, cos A cos B, sin A sin B: a product of different functions rarely integrates, rarely solves, and always benefits from becoming a sum."
    },
    {
      "id": "sum-of-same",
      "heading": "When the same function is added or subtracted",
      "question": "when to use sum to product",
      "explanation": "sin A + sin B, cos A − cos B: a sum of the same function becomes one product, which is what you need to factor an equation or evaluate a limit."
    },
    {
      "id": "power",
      "heading": "When a power of sine or cosine has to be integrated",
      "question": "power reducing formula for sin squared",
      "explanation": "Any power above one is reduced with the power-reducing identities: sin², cos², sin³, cos³, sin⁴, cos⁴ each become a sum of first powers of multiple angles."
    },
    {
      "id": "mixed-reciprocal",
      "heading": "When tan, sec, csc and cos are mixed together",
      "question": "how to verify a trig identity step by step",
      "explanation": "Mixed function families are the usual reason a verification stalls. Convert everything to sin and cos first, then apply the ordinary rules — this is the standard advice for a reason."
    },
    {
      "id": "cofunction",
      "heading": "When the angles add up to 90°",
      "question": "cofunction identities",
      "explanation": "sin 32° and cos 58° are the same number. Complementary angles are what cofunction pairs describe."
    },
    {
      "id": "negative-angle",
      "heading": "When a negative angle appears",
      "question": "sin of negative angle",
      "explanation": "Which functions change sign under x → −x decides a lot of homework answers. Cosine and secant are even; sine, tangent, cotangent and cosecant are odd."
    },
    {
      "id": "triangle",
      "heading": "When the letters are the angles and sides of one triangle",
      "question": "area of a triangle with sine",
      "explanation": "a, b, c and A, B, C are not independent: A + B + C = 180° and the sides follow the sine rule. Any identity in this family is only true under those constraints."
    }
  ],
  "identities": [
    {
      "id": "pythagorean-1",
      "slug": "sin-squared-plus-cos-squared",
      "name": "Pythagorean identity",
      "category": "pythagorean",
      "lhs": "sin(x)**2 + cos(x)**2",
      "rhs": "1",
      "display": "sin²θ + cos²θ = 1",
      "plain": "sin^2(t) + cos^2(t) = 1",
      "latex": "\\sin^2\\theta + \\cos^2\\theta = 1",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "square-terms"
      ],
      "rank": 1,
      "whenToUse": "Two squared trig terms of the same angle are added: the pair is exactly 1, so replace both with 1 — or, going the other way, replace a stubborn 1 with sin²θ + cos²θ to get a common denominator.",
      "whyTrue": "A point on the unit circle at angle θ has coordinates (cos θ, sin θ). Its distance from the origin is the radius, 1. Pythagoras on those coordinates is exactly sin²θ + cos²θ = 1.",
      "commonMistake": "Writing sin²θ = 1 − cos θ. The cosine is squared as well: 1 − cos²θ. A second classic is reading sin²θ as sin(θ²) — it means (sin θ)².",
      "usedFor": [
        "simplify",
        "verify",
        "solve"
      ],
      "proof": {
        "approach": "Unit circle",
        "intro": "Take the point P = (cos θ, sin θ) on the unit circle and drop a perpendicular to the x-axis. The right triangle formed has legs |cos θ| and |sin θ| and hypotenuse equal to the radius, 1.",
        "steps": [
          {
            "line": "leg₁ = cos θ, leg₂ = sin θ, hypotenuse = 1",
            "reason": "Definition of sine and cosine on the unit circle."
          },
          {
            "line": "cos²θ + sin²θ = 1²",
            "reason": "Pythagoras applied to that triangle."
          },
          {
            "line": "sin²θ + cos²θ = 1",
            "reason": "Same equation, reordered. Holds for every θ because the construction works in all four quadrants (squares absorb the signs)."
          }
        ],
        "outro": "The right-triangle picture only covers acute angles; the unit-circle version is what makes the identity true for every real angle, including 200° and −π/3."
      },
      "derivation": {
        "approach": "From the definition of sine and cosine",
        "intro": "You do not need to memorise this one — it is the Pythagorean theorem written in trigonometric notation. If you ever feel it is 'magic', the radius of the circle is the missing ingredient.",
        "steps": [
          {
            "line": "x² + y² = r²",
            "reason": "Equation of a circle centred at the origin."
          },
          {
            "line": "x = cos θ, y = sin θ, r = 1",
            "reason": "Unit-circle definitions."
          },
          {
            "line": "cos²θ + sin²θ = 1",
            "reason": "Substitute and simplify."
          }
        ]
      },
      "related": [
        "pythagorean-2",
        "pythagorean-3",
        "reciprocal-csc",
        "power-sin-2",
        "power-cos-2"
      ],
      "examples": [
        "ex-verify-basic-1",
        "ex-simplify-squared"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "pythagorean-2",
      "slug": "one-plus-tan-squared",
      "name": "Pythagorean identity (tangent form)",
      "category": "pythagorean",
      "lhs": "1 + tan(x)**2",
      "rhs": "sec(x)**2",
      "display": "1 + tan²θ = sec²θ",
      "plain": "1 + tan^2(t) = sec^2(t)",
      "latex": "1 + \\tan^2\\theta = \\sec^2\\theta",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "one-plus-square",
        "square-terms"
      ],
      "rank": 2,
      "whenToUse": "You see 1 + tan²θ — most often under a square root, √(1 + tan²θ), or as the product sec²θ appearing in a derivative. Replace the whole sum with sec²θ, or a lone sec²θ with 1 + tan²θ when the tangent form is what you need.",
      "whyTrue": "It is sin²θ + cos²θ = 1 divided through by cos²θ. The 1 comes from cos²θ/cos²θ, the tan²θ from sin²θ/cos²θ, and the right side is 1/cos²θ = sec²θ.",
      "commonMistake": "Believing the identity is true for every angle. Both sides blow up when cos θ = 0, so θ = 90° is excluded — the two sides are undefined together, not equal.",
      "usedFor": [
        "simplify",
        "verify",
        "integrate"
      ],
      "proof": {
        "approach": "Divide the Pythagorean identity",
        "intro": "Start from the one identity everybody knows and divide every term by cos²θ.",
        "steps": [
          {
            "line": "sin²θ + cos²θ = 1",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "sin²θ/cos²θ + cos²θ/cos²θ = 1/cos²θ",
            "reason": "Divide all three terms by cos²θ (allowed when cos θ ≠ 0)."
          },
          {
            "line": "tan²θ + 1 = sec²θ",
            "reason": "Quotient identity tan = sin/cos and reciprocal identity sec = 1/cos.",
            "uses": [
              "quotient-tan",
              "reciprocal-sec"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Same division, aimed forward",
        "intro": "If you have forgotten the formula, re-derive it in ten seconds: you want a relation involving tan, so force tan = sin/cos to appear by dividing by cos²θ.",
        "steps": [
          {
            "line": "Want tan²θ? Divide by cos²θ.",
            "reason": "tan²θ = sin²θ/cos²θ, so the division creates exactly the term you need."
          },
          {
            "line": "1/cos²θ is sec²θ",
            "reason": "Reciprocal identity.",
            "uses": [
              "reciprocal-sec"
            ]
          },
          {
            "line": "1 + tan²θ = sec²θ",
            "reason": "Collect the three pieces."
          }
        ]
      },
      "related": [
        "pythagorean-1",
        "pythagorean-3",
        "quotient-tan",
        "reciprocal-sec"
      ],
      "examples": [
        "ex-verify-tan-sec"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "pythagorean-3",
      "slug": "one-plus-cot-squared",
      "name": "Pythagorean identity (cotangent form)",
      "category": "pythagorean",
      "lhs": "1 + cot(x)**2",
      "rhs": "csc(x)**2",
      "display": "1 + cot²θ = csc²θ",
      "plain": "1 + cot^2(t) = csc^2(t)",
      "latex": "1 + \\cot^2\\theta = \\csc^2\\theta",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "one-plus-square",
        "square-terms"
      ],
      "rank": 3,
      "whenToUse": "The cotangent cousin: use it when 1 + cot²θ shows up, or when csc²θ has to become 1 + cot²θ. It is the same move as the tangent version, aimed at the sine side of the triangle.",
      "whyTrue": "Divide sin²θ + cos²θ = 1 by sin²θ instead of cos²θ. The three terms become cot²θ, 1 and csc²θ.",
      "commonMistake": "Mixing the two Pythagorean cousins: 1 + tan²θ goes with sec²θ, 1 + cot²θ goes with csc²θ. The initial letters match (t→s, c→c) — tangent/secant, cotangent/cosecant.",
      "usedFor": [
        "simplify",
        "verify",
        "integrate"
      ],
      "proof": {
        "approach": "Divide by sin²θ",
        "intro": "Identical to the tangent version, but dividing by the other square.",
        "steps": [
          {
            "line": "sin²θ + cos²θ = 1",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "sin²θ/sin²θ + cos²θ/sin²θ = 1/sin²θ",
            "reason": "Divide by sin²θ (valid when sin θ ≠ 0)."
          },
          {
            "line": "1 + cot²θ = csc²θ",
            "reason": "Quotient and reciprocal identities.",
            "uses": [
              "quotient-cot",
              "reciprocal-csc"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Force the cotangent to appear",
        "intro": "Cotangent is cos over sin, so dividing by sin²θ is the only division that produces it.",
        "steps": [
          {
            "line": "cot²θ = cos²θ/sin²θ",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-cot"
            ]
          },
          {
            "line": "1/sin²θ = csc²θ",
            "reason": "Reciprocal identity.",
            "uses": [
              "reciprocal-csc"
            ]
          },
          {
            "line": "1 + cot²θ = csc²θ",
            "reason": "Substitute both into the divided Pythagorean identity."
          }
        ]
      },
      "related": [
        "pythagorean-1",
        "pythagorean-2",
        "quotient-cot",
        "reciprocal-csc"
      ],
      "examples": [
        "ex-verify-cot-csc"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "reciprocal-csc",
      "slug": "csc-equals-1-over-sin",
      "name": "Reciprocal identity (cosecant)",
      "category": "reciprocal-and-quotient",
      "lhs": "csc(x)",
      "rhs": "1/sin(x)",
      "display": "csc θ = 1/sin θ",
      "plain": "csc(t) = 1/sin(t)",
      "latex": "\\csc\\theta = \\frac{1}{\\sin\\theta}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal"
      ],
      "rank": 20,
      "whenToUse": "Any time csc θ is in your way, the first move is to replace it with 1/sin θ. The reciprocal functions exist for notation, not for algebra — the algebra happens in sin and cos.",
      "whyTrue": "Cosecant is defined as the reciprocal of sine: in a right triangle, sin θ = opposite/hypotenuse, so its reciprocal is hypotenuse/opposite, which is named csc θ.",
      "commonMistake": "Reading csc θ as 'cosecant times θ' or as c(·)s(·)c(·). It is one function name: csc, the reciprocal of sin, not a product.",
      "usedFor": [
        "verify",
        "simplify"
      ],
      "proof": {
        "approach": "Definition",
        "intro": "Reciprocal identities are definitions, so the 'proof' is the naming convention made explicit.",
        "steps": [
          {
            "line": "sin θ = opp/hyp",
            "reason": "SOH.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "hyp/opp = 1/sin θ",
            "reason": "Take the reciprocal of both sides."
          },
          {
            "line": "csc θ = hyp/opp = 1/sin θ",
            "reason": "Definition of cosecant in the same triangle."
          }
        ]
      },
      "derivation": {
        "approach": "Flip the fraction",
        "intro": "If you are ever unsure which function is whose reciprocal, write the sine/cosine/tangent ratio and turn the fraction upside down.",
        "steps": [
          {
            "line": "sin θ = opp/hyp",
            "reason": "Right-triangle ratio."
          },
          {
            "line": "flip → hyp/opp",
            "reason": "Reciprocal of the ratio."
          },
          {
            "line": "hyp/opp is named csc θ",
            "reason": "Naming convention: csc goes with sin, sec with cos, cot with tan."
          }
        ]
      },
      "related": [
        "reciprocal-sec",
        "reciprocal-cot",
        "pythagorean-3"
      ],
      "examples": [
        "ex-verify-mixed"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "reciprocal-sec",
      "slug": "sec-equals-1-over-cos",
      "name": "Reciprocal identity (secant)",
      "category": "reciprocal-and-quotient",
      "lhs": "sec(x)",
      "rhs": "1/cos(x)",
      "display": "sec θ = 1/cos θ",
      "plain": "sec(t) = 1/cos(t)",
      "latex": "\\sec\\theta = \\frac{1}{\\cos\\theta}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal"
      ],
      "rank": 21,
      "whenToUse": "Convert sec θ to 1/cos θ whenever it shares an expression with tan θ, since tan θ is already sin/cos and a common denominator then appears.",
      "whyTrue": "Secant is the reciprocal of cosine by definition: cos θ = adjacent/hypotenuse, so hypotenuse/adjacent = sec θ.",
      "commonMistake": "Treating sec θ as sec·θ, or confusing it with cos⁻¹, which usually means the inverse function (arccos), not the reciprocal. Here 1/cos θ is the reciprocal; arccos θ is the angle.",
      "usedFor": [
        "verify",
        "simplify",
        "integrate"
      ],
      "proof": {
        "approach": "Definition",
        "intro": "Same argument as for cosecant, with the other leg of the triangle.",
        "steps": [
          {
            "line": "cos θ = adj/hyp",
            "reason": "CAH."
          },
          {
            "line": "hyp/adj = 1/cos θ",
            "reason": "Reciprocal of both sides."
          },
          {
            "line": "sec θ = hyp/adj",
            "reason": "Definition of secant."
          }
        ]
      },
      "derivation": {
        "approach": "Flip and name",
        "intro": "Secant is 'the reciprocal of cosine' wearing a different name; the derivation is the flip.",
        "steps": [
          {
            "line": "cos θ = adj/hyp",
            "reason": "Right-triangle ratio."
          },
          {
            "line": "1/cos θ = hyp/adj",
            "reason": "Algebra."
          },
          {
            "line": "hyp/adj is sec θ",
            "reason": "Naming."
          }
        ]
      },
      "related": [
        "reciprocal-csc",
        "reciprocal-cot",
        "pythagorean-2"
      ],
      "examples": [
        "ex-verify-tan-sec"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "reciprocal-cot",
      "slug": "cot-equals-1-over-tan",
      "name": "Reciprocal identity (cotangent)",
      "category": "reciprocal-and-quotient",
      "lhs": "cot(x)",
      "rhs": "1/tan(x)",
      "display": "cot θ = 1/tan θ",
      "plain": "cot(t) = 1/tan(t)",
      "latex": "\\cot\\theta = \\frac{1}{\\tan\\theta}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal"
      ],
      "rank": 22,
      "whenToUse": "cot θ becomes 1/tan θ, and in practice it usually becomes cos θ/sin θ instead — the quotient identity is more useful because it removes the fraction-in-fraction.",
      "whyTrue": "Cotangent is the reciprocal of tangent: tan θ = opp/adj, so adj/opp = cot θ.",
      "commonMistake": "Forgetting that cot θ is undefined where sin θ = 0 (θ = 0°, 180°) as well as where tan θ = 0. Both descriptions exclude the same points.",
      "usedFor": [
        "verify",
        "simplify"
      ],
      "proof": {
        "approach": "Definition",
        "intro": "The third reciprocal pair, and the only one where the ratio form matters twice.",
        "steps": [
          {
            "line": "tan θ = opp/adj",
            "reason": "TOA.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "adj/opp = 1/tan θ",
            "reason": "Reciprocal of both sides."
          },
          {
            "line": "cot θ = adj/opp",
            "reason": "Definition of cotangent — and also cos θ/sin θ.",
            "uses": [
              "quotient-cot"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Two roads to the same ratio",
        "intro": "Cotangent can be reached from tangent's reciprocal or from cos/sin; both routes agree, which is exactly what the quotient identity says.",
        "steps": [
          {
            "line": "cot θ = 1/tan θ",
            "reason": "Reciprocal."
          },
          {
            "line": "tan θ = sin θ/cos θ",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "cot θ = cos θ/sin θ",
            "reason": "Substitute and flip."
          }
        ]
      },
      "related": [
        "quotient-cot",
        "reciprocal-csc",
        "reciprocal-sec"
      ],
      "examples": [
        "ex-verify-mixed"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "quotient-tan",
      "slug": "tan-equals-sin-over-cos",
      "name": "Quotient identity (tangent)",
      "category": "reciprocal-and-quotient",
      "lhs": "tan(x)",
      "rhs": "sin(x)/cos(x)",
      "display": "tan θ = sin θ / cos θ",
      "plain": "tan(t) = sin(t)/cos(t)",
      "latex": "\\tan\\theta = \\frac{\\sin\\theta}{\\cos\\theta}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal"
      ],
      "rank": 19,
      "whenToUse": "The single most common first step in a verification: replace tan θ with sin θ/cos θ so the whole expression is in one function family and fractions can be combined.",
      "whyTrue": "In the unit circle, tan θ is the slope of the radius to the point (cos θ, sin θ), and a slope is rise over run: sin θ/cos θ.",
      "commonMistake": "Applying it where cos θ = 0. tan 90° has no value, and the right side has the same problem — 1/0 — which is why the identity is a definition and not a coincidence.",
      "usedFor": [
        "verify",
        "simplify",
        "solve"
      ],
      "proof": {
        "approach": "Slope of the radius",
        "intro": "Two ways to see it: the triangle ratio, or the slope on the unit circle.",
        "steps": [
          {
            "line": "sin θ = opp/hyp, cos θ = adj/hyp",
            "reason": "Right-triangle definitions."
          },
          {
            "line": "sin θ/cos θ = (opp/hyp)·(hyp/adj) = opp/adj",
            "reason": "Divide by multiplying by the reciprocal; hyp cancels."
          },
          {
            "line": "opp/adj = tan θ",
            "reason": "TOA — so tan θ = sin θ/cos θ."
          }
        ]
      },
      "derivation": {
        "approach": "Cancel the hypotenuse",
        "intro": "If you need to remove tangent from an expression, the question to ask is 'what is tangent made of?' — two ratios whose denominator cancels.",
        "steps": [
          {
            "line": "tan θ = opp/adj",
            "reason": "Definition."
          },
          {
            "line": "opp/adj = (opp/hyp)/(adj/hyp)",
            "reason": "Multiply top and bottom by 1/hyp."
          },
          {
            "line": "= sin θ/cos θ",
            "reason": "Recognise both ratios."
          }
        ]
      },
      "related": [
        "quotient-cot",
        "reciprocal-sec",
        "pythagorean-2"
      ],
      "examples": [
        "ex-verify-tan-sec",
        "ex-verify-mixed"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "quotient-cot",
      "slug": "cot-equals-cos-over-sin",
      "name": "Quotient identity (cotangent)",
      "category": "reciprocal-and-quotient",
      "lhs": "cot(x)",
      "rhs": "cos(x)/sin(x)",
      "display": "cot θ = cos θ / sin θ",
      "plain": "cot(t) = cos(t)/sin(t)",
      "latex": "\\cot\\theta = \\frac{\\cos\\theta}{\\sin\\theta}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal"
      ],
      "rank": 23,
      "whenToUse": "Same idea as tan = sin/cos with the roles swapped: use it when cot θ and csc θ appear together, because both then share the denominator sin θ.",
      "whyTrue": "Cotangent is adj/opp, and dividing cos θ by sin θ cancels the hypotenuse and leaves exactly adj/opp.",
      "commonMistake": "Writing cot θ = sin θ/cos θ — that is tangent. The mnemonic: cot starts with c, so it starts with cos.",
      "usedFor": [
        "verify",
        "simplify"
      ],
      "proof": {
        "approach": "Triangle ratios",
        "intro": "Mirror image of the tangent proof.",
        "steps": [
          {
            "line": "cos θ/sin θ = (adj/hyp)/(opp/hyp)",
            "reason": "Definitions."
          },
          {
            "line": "= adj/opp",
            "reason": "The hypotenuse cancels."
          },
          {
            "line": "adj/opp = cot θ",
            "reason": "Definition of cotangent."
          }
        ]
      },
      "derivation": {
        "approach": "Flip tangent",
        "intro": "cot θ is 1/tan θ; flipping sin/cos gives cos/sin.",
        "steps": [
          {
            "line": "cot θ = 1/tan θ",
            "reason": "Reciprocal identity.",
            "uses": [
              "reciprocal-cot"
            ]
          },
          {
            "line": "tan θ = sin θ/cos θ",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "cot θ = cos θ/sin θ",
            "reason": "Reciprocal of a fraction."
          }
        ]
      },
      "related": [
        "quotient-tan",
        "reciprocal-cot",
        "pythagorean-3"
      ],
      "examples": [
        "ex-verify-cot-csc"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "even-odd-sin",
      "slug": "sin-of-negative-angle",
      "name": "Sine is odd",
      "category": "cofunction",
      "lhs": "sin(-x)",
      "rhs": "-sin(x)",
      "display": "sin(−θ) = −sin θ",
      "plain": "sin(-t) = -sin(t)",
      "latex": "\\sin(-\\theta) = -\\sin\\theta",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "negative-angle"
      ],
      "rank": 30,
      "whenToUse": "A negative angle inside sine: pull the minus sign out front. This is the standard first move when a problem says sin(−x) and the answers are written with positive x.",
      "whyTrue": "On the unit circle, angle −θ is the reflection of θ across the x-axis. Reflection across the x-axis keeps the x-coordinate (cosine) and flips the y-coordinate (sine).",
      "commonMistake": "Applying the minus sign to cosine as well. Cosine is even: cos(−θ) = cos θ, no sign change.",
      "usedFor": [
        "simplify",
        "verify"
      ],
      "proof": {
        "approach": "Symmetry of the unit circle",
        "intro": "One geometric reflection proves all three even/odd facts at once.",
        "steps": [
          {
            "line": "P(θ) = (cos θ, sin θ)",
            "reason": "Unit-circle definition."
          },
          {
            "line": "P(−θ) = (cos θ, −sin θ)",
            "reason": "Reflecting the point across the x-axis negates only the y-coordinate.",
            "uses": [
              "even-odd-cos"
            ]
          },
          {
            "line": "sin(−θ) = −sin θ",
            "reason": "Read off the y-coordinate of P(−θ)."
          }
        ]
      },
      "derivation": {
        "approach": "Test with numbers, then generalise",
        "intro": "If you cannot remember which functions are odd, check 30° on the unit circle: sin(−30°) = −1/2 while sin 30° = 1/2.",
        "steps": [
          {
            "line": "sin 30° = 1/2",
            "reason": "Special angle."
          },
          {
            "line": "sin(−30°) = −1/2",
            "reason": "Same point reflected below the axis."
          },
          {
            "line": "sin(−θ) = −sin θ",
            "reason": "The pattern holds for every θ because the reflection argument is not about 30° specifically."
          }
        ]
      },
      "related": [
        "even-odd-cos",
        "even-odd-tan",
        "cofunction-sin"
      ],
      "examples": [
        "ex-negative-angle"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "even-odd-cos",
      "slug": "cos-of-negative-angle",
      "name": "Cosine is even",
      "category": "cofunction",
      "lhs": "cos(-x)",
      "rhs": "cos(x)",
      "display": "cos(−θ) = cos θ",
      "plain": "cos(-t) = cos(t)",
      "latex": "\\cos(-\\theta) = \\cos\\theta",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "negative-angle"
      ],
      "rank": 31,
      "whenToUse": "Drop the minus sign inside a cosine outright. Useful when simplifying cos(−x) + sin(−x), where the cosine keeps its sign and the sine does not.",
      "whyTrue": "Reflecting a unit-circle point across the x-axis does not change its x-coordinate, and that x-coordinate is the cosine.",
      "commonMistake": "Expecting every function to behave like sine. Secant is even too (it is 1/cos); tangent, cotangent and cosecant are odd.",
      "usedFor": [
        "simplify",
        "verify"
      ],
      "proof": {
        "approach": "Same reflection",
        "intro": "Read the x-coordinate off the reflected point.",
        "steps": [
          {
            "line": "P(θ) = (cos θ, sin θ)",
            "reason": "Definition."
          },
          {
            "line": "P(−θ) = (cos θ, −sin θ)",
            "reason": "Reflection across the x-axis."
          },
          {
            "line": "cos(−θ) = cos θ",
            "reason": "The x-coordinate is unchanged — cosine is even."
          }
        ]
      },
      "derivation": {
        "approach": "Numbers first",
        "intro": "cos 30° = cos(−30°) = √3/2: the wave is symmetric about the y-axis.",
        "steps": [
          {
            "line": "cos 30° = √3/2",
            "reason": "Special angle."
          },
          {
            "line": "cos(−30°) = √3/2",
            "reason": "Mirror point, same x-coordinate."
          },
          {
            "line": "cos(−θ) = cos θ",
            "reason": "Symmetry of the graph about the y-axis."
          }
        ]
      },
      "related": [
        "even-odd-sin",
        "even-odd-tan",
        "reciprocal-sec"
      ],
      "examples": [
        "ex-negative-angle"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "even-odd-tan",
      "slug": "tan-of-negative-angle",
      "name": "Tangent is odd",
      "category": "cofunction",
      "lhs": "tan(-x)",
      "rhs": "-tan(x)",
      "display": "tan(−θ) = −tan θ",
      "plain": "tan(-t) = -tan(t)",
      "latex": "\\tan(-\\theta) = -\\tan\\theta",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "negative-angle"
      ],
      "rank": 32,
      "whenToUse": "Pull the minus out of tan(−θ). Also the quickest way to see why tan is odd: sin flips, cos does not, so the ratio flips.",
      "whyTrue": "tan θ = sin θ/cos θ. Under θ → −θ the numerator changes sign and the denominator does not, so the quotient changes sign.",
      "commonMistake": "Forgetting the excluded angles: tan(−θ) is undefined exactly where tan θ is undefined (cos θ = 0), and the sign rule says nothing there.",
      "usedFor": [
        "simplify",
        "verify"
      ],
      "proof": {
        "approach": "Quotient of an odd and an even function",
        "intro": "Derived in two lines from the quotient identity.",
        "steps": [
          {
            "line": "tan(−θ) = sin(−θ)/cos(−θ)",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "= −sin θ/cos θ",
            "reason": "Sine is odd, cosine is even.",
            "uses": [
              "even-odd-sin",
              "even-odd-cos"
            ]
          },
          {
            "line": "= −tan θ",
            "reason": "Quotient identity again, backwards."
          }
        ]
      },
      "derivation": {
        "approach": "Odd divided by even",
        "intro": "Rule of thumb worth remembering: a ratio whose top flips sign flips sign too.",
        "steps": [
          {
            "line": "top: odd, bottom: even",
            "reason": "sin is odd, cos is even."
          },
          {
            "line": "ratio: odd",
            "reason": "−a/b = −(a/b)."
          },
          {
            "line": "tan(−θ) = −tan θ",
            "reason": "Apply to θ."
          }
        ]
      },
      "related": [
        "even-odd-sin",
        "even-odd-cos",
        "reciprocal-cot"
      ],
      "examples": [
        "ex-negative-angle"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "cofunction-sin",
      "slug": "sin-theta-equals-cos-complement",
      "name": "Cofunction identity for sine",
      "category": "cofunction",
      "lhs": "sin(x)",
      "rhs": "cos(pi/2 - x)",
      "display": "sin θ = cos(90° − θ)",
      "plain": "sin(t) = cos(90° - t)",
      "latex": "\\sin\\theta = \\cos\\left(\\frac{\\pi}{2} - \\theta\\right)",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "cofunction"
      ],
      "rank": 40,
      "whenToUse": "When the two angles in a problem add to 90° (π/2), the sine of one is the cosine of the other. Typical case: sin 32° asked as a cosine, or a calculus substitution that needs cos written as a shifted sine.",
      "whyTrue": "In a right triangle the two acute angles are complementary. The side opposite one is the side adjacent to the other, so 'opposite over hypotenuse' for one angle is 'adjacent over hypotenuse' for the other.",
      "commonMistake": "Pairing the wrong functions. Sine pairs with cosine, tangent with cotangent, secant with cosecant — always the complementary partner, never itself.",
      "usedFor": [
        "simplify",
        "evaluate",
        "verify"
      ],
      "proof": {
        "approach": "The two acute angles of a right triangle",
        "intro": "One triangle, two labels for the same ratio.",
        "steps": [
          {
            "line": "A + B = 90°",
            "reason": "Acute angles of a right triangle are complementary."
          },
          {
            "line": "sin A = opp(A)/hyp = adj(B)/hyp",
            "reason": "The side facing A is the side beside B."
          },
          {
            "line": "adj(B)/hyp = cos B",
            "reason": "Definition of cosine at B."
          },
          {
            "line": "sin A = cos(90° − A)",
            "reason": "Substitute B = 90° − A."
          }
        ]
      },
      "derivation": {
        "approach": "Measure from the other corner",
        "intro": "The 'co-' in cosine means complement: cos θ started as 'the sine of the complement of θ'.",
        "steps": [
          {
            "line": "sin of an angle = opp/hyp",
            "reason": "Definition."
          },
          {
            "line": "Same ratio from the other acute angle",
            "reason": "Opposite and adjacent swap roles."
          },
          {
            "line": "sin θ = cos(90° − θ)",
            "reason": "Name the swapped ratio."
          }
        ]
      },
      "related": [
        "cofunction-cos",
        "cofunction-tan",
        "even-odd-sin"
      ],
      "examples": [
        "ex-cofunction-complement"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "cofunction-cos",
      "slug": "cos-theta-equals-sin-complement",
      "name": "Cofunction identity for cosine",
      "category": "cofunction",
      "lhs": "cos(x)",
      "rhs": "sin(pi/2 - x)",
      "display": "cos θ = sin(90° − θ)",
      "plain": "cos(t) = sin(90° - t)",
      "latex": "\\cos\\theta = \\sin\\left(\\frac{\\pi}{2} - \\theta\\right)",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "cofunction"
      ],
      "rank": 41,
      "whenToUse": "The reverse direction of the sine cofunction: use it to move a cosine into a sine (or back) when only one of them is integrable or listed in a table.",
      "whyTrue": "Same complementary pair, read from the other acute angle of the triangle.",
      "commonMistake": "Writing cos θ = sin(θ − 90°). The complement is 90° − θ, and note that sin(θ − 90°) = −cos θ, the negative of what you wanted.",
      "usedFor": [
        "simplify",
        "evaluate",
        "integrate"
      ],
      "proof": {
        "approach": "Same triangle, other angle",
        "intro": "Mirror of the sine proof.",
        "steps": [
          {
            "line": "A + B = 90°",
            "reason": "Complementary acute angles."
          },
          {
            "line": "cos A = adj(A)/hyp = opp(B)/hyp",
            "reason": "Adjacent to A is opposite to B."
          },
          {
            "line": "opp(B)/hyp = sin B",
            "reason": "Definition of sine at B."
          },
          {
            "line": "cos A = sin(90° − A)",
            "reason": "Substitute."
          }
        ]
      },
      "derivation": {
        "approach": "Shift the graph",
        "intro": "The cosine curve is the sine curve moved left by π/2 — a fact used constantly in physics and AC circuits.",
        "steps": [
          {
            "line": "Compare the graphs of sin and cos",
            "reason": "Identical shape, offset by a quarter period."
          },
          {
            "line": "cos θ = sin(θ + π/2)",
            "reason": "Reading the offset one way."
          },
          {
            "line": "cos θ = sin(π/2 − θ)",
            "reason": "Reading it with the complement, which is the cofunction statement for acute angles."
          }
        ]
      },
      "related": [
        "cofunction-sin",
        "cofunction-tan",
        "even-odd-cos"
      ],
      "examples": [
        "ex-cofunction-complement"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "cofunction-tan",
      "slug": "tan-theta-equals-cot-complement",
      "name": "Cofunction identity for tangent",
      "category": "cofunction",
      "lhs": "tan(x)",
      "rhs": "cot(pi/2 - x)",
      "display": "tan θ = cot(90° − θ)",
      "plain": "tan(t) = cot(90° - t)",
      "latex": "\\tan\\theta = \\cot\\left(\\frac{\\pi}{2} - \\theta\\right)",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "cofunction"
      ],
      "rank": 42,
      "whenToUse": "Tangent and cotangent are the complementary pair. Appears in similar-triangle problems and in heights-of-objects word problems where the angle is measured from the other side.",
      "whyTrue": "Follows from the sine and cosine cofunctions: tan θ = sin θ/cos θ = cos(90°−θ)/sin(90°−θ) = cot(90°−θ).",
      "commonMistake": "Using it outside its domain: cot(90° − θ) is undefined when θ = 0° and tan θ is undefined at θ = 90° — the two sides fail at complementary points, they do not disagree.",
      "usedFor": [
        "simplify",
        "evaluate"
      ],
      "proof": {
        "approach": "Divide the two cofunction identities",
        "intro": "One line of division gives the tangent version.",
        "steps": [
          {
            "line": "sin θ = cos(90° − θ), cos θ = sin(90° − θ)",
            "reason": "Cofunction identities.",
            "uses": [
              "cofunction-sin",
              "cofunction-cos"
            ]
          },
          {
            "line": "sin θ/cos θ = cos(90° − θ)/sin(90° − θ)",
            "reason": "Divide the two equations."
          },
          {
            "line": "tan θ = cot(90° − θ)",
            "reason": "Quotient identity on both sides.",
            "uses": [
              "quotient-tan",
              "quotient-cot"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Build it from the pair you trust",
        "intro": "Rather than memorising a third cofunction, derive it by dividing the first two.",
        "steps": [
          {
            "line": "Take sin ↔ cos cofunctions",
            "reason": "Those have a geometric proof."
          },
          {
            "line": "Divide",
            "reason": "sin/cos is tan; cos/sin is cot."
          },
          {
            "line": "tan ↔ cot at complementary angles",
            "reason": "Conclusion."
          }
        ]
      },
      "related": [
        "cofunction-sin",
        "cofunction-cos",
        "quotient-tan"
      ],
      "examples": [
        "ex-cofunction-complement"
      ],
      "source": "OpenStax Precalculus, Ch. 7 · Paul's Online Math Notes, Trig Cheat Sheet",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-sin",
      "slug": "sine-of-a-sum",
      "name": "Sine of a sum",
      "category": "sum-and-difference",
      "lhs": "sin(a + b)",
      "rhs": "sin(a)*cos(b) + cos(a)*sin(b)",
      "display": "sin(A + B) = sin A cos B + cos A sin B",
      "plain": "sin(A + B) = sin(A)cos(B) + cos(A)sin(B)",
      "latex": "\\sin(A+B)=\\sin A\\cos B+\\cos A\\sin B",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 10,
      "whenToUse": "The angle itself is a sum and you need the functions separately — to evaluate exactly (sin 75° = sin(45° + 30°)), to expand, or to recognise the pattern running backwards.",
      "whyTrue": "Rotating by A + B is the same as rotating by A and then by B. Reading the vertical coordinate of that composed rotation gives the sine sum formula.",
      "commonMistake": "Writing sin(A + B) = sin A + sin B. The sine of a sum is not the sum of sines — check it with A = B = 45°: sin 90° = 1 but sin 45° + sin 45° ≈ 1.414.",
      "usedFor": [
        "evaluate",
        "expand",
        "verify"
      ],
      "proof": {
        "approach": "Rotation on the unit circle",
        "intro": "Place a point at angle A + B. It is the point at angle A, rotated further by B. Coordinates rotate linearly, which is exactly what the formula records.",
        "steps": [
          {
            "line": "P = (cos(A + B), sin(A + B))",
            "reason": "Unit-circle point at angle A + B."
          },
          {
            "line": "Start from Q = (cos A, sin A) and rotate by B",
            "reason": "A + B = A then B."
          },
          {
            "line": "rotation by B: (x, y) → (x cos B − y sin B, x sin B + y cos B)",
            "reason": "Standard rotation matrix, itself from the cofunction/length argument."
          },
          {
            "line": "y-coordinate = sin A cos B + cos A sin B",
            "reason": "Substitute x = cos A, y = sin A into the rotated y."
          },
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "The rotated y must equal sin(A + B)."
          }
        ]
      },
      "derivation": {
        "approach": "Two right triangles stacked",
        "intro": "The classical derivation drops perpendiculars from a point at angle A + B and reads the vertical leg as two pieces.",
        "steps": [
          {
            "line": "Draw angle A + B in standard position, unit hypotenuse",
            "reason": "Set-up."
          },
          {
            "line": "Split the vertical leg with a perpendicular at angle A",
            "reason": "Creates two right triangles whose angles are A and B."
          },
          {
            "line": "lower piece = sin A cos B",
            "reason": "Adjacent leg of the B-triangle times cos B."
          },
          {
            "line": "upper piece = cos A sin B",
            "reason": "Other leg, read with sin B."
          },
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "Add the two pieces."
          }
        ]
      },
      "related": [
        "diff-sin",
        "sum-cos",
        "double-sin",
        "sum-tan"
      ],
      "examples": [
        "ex-exact-sin-75",
        "ex-derive-double"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "diff-sin",
      "slug": "sine-of-a-difference",
      "name": "Sine of a difference",
      "category": "sum-and-difference",
      "lhs": "sin(a - b)",
      "rhs": "sin(a)*cos(b) - cos(a)*sin(b)",
      "display": "sin(A − B) = sin A cos B − cos A sin B",
      "plain": "sin(A - B) = sin(A)cos(B) - cos(A)sin(B)",
      "latex": "\\sin(A-B)=\\sin A\\cos B-\\cos A\\sin B",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 11,
      "whenToUse": "Same family with a minus. It is the sum formula with B replaced by −B, so the second term changes sign — handy for exact values like sin 15° = sin(45° − 30°).",
      "whyTrue": "Put −B in place of B in the sum formula and use that sine is odd while cosine is even: the first term keeps its sign, the second flips.",
      "commonMistake": "Flipping the wrong term. Only the second product changes sign; sin A cos B stays positive.",
      "usedFor": [
        "evaluate",
        "expand",
        "verify"
      ],
      "proof": {
        "approach": "Substitute −B into the sum formula",
        "intro": "One line of substitution, provided the even/odd facts are in hand.",
        "steps": [
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "Sine of a sum.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "B → −B",
            "reason": "A − B is A + (−B)."
          },
          {
            "line": "sin(A − B) = sin A cos(−B) + cos A sin(−B)",
            "reason": "Apply the substitution."
          },
          {
            "line": "= sin A cos B − cos A sin B",
            "reason": "Cosine is even, sine is odd.",
            "uses": [
              "even-odd-sin",
              "even-odd-cos"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Remember one formula, derive the other",
        "intro": "There is no need to memorise the sum and difference versions separately — the sign of the middle term follows from the sign inside the angle.",
        "steps": [
          {
            "line": "Sum version has '+' on both sides",
            "reason": "sin(A + B) = … + …"
          },
          {
            "line": "Difference version flips the second term",
            "reason": "Replace B by −B."
          },
          {
            "line": "Mnemonic: sine keeps the sign",
            "reason": "sin(A ± B) = … ± … mirrors the sign inside."
          }
        ]
      },
      "related": [
        "sum-sin",
        "diff-cos",
        "double-sin"
      ],
      "examples": [
        "ex-exact-sin-15"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-cos",
      "slug": "cosine-of-a-sum",
      "name": "Cosine of a sum",
      "category": "sum-and-difference",
      "lhs": "cos(a + b)",
      "rhs": "cos(a)*cos(b) - sin(a)*sin(b)",
      "display": "cos(A + B) = cos A cos B − sin A sin B",
      "plain": "cos(A + B) = cos(A)cos(B) - sin(A)sin(B)",
      "latex": "\\cos(A+B)=\\cos A\\cos B-\\sin A\\sin B",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 12,
      "whenToUse": "Expanding a cosine of a sum — and the reason cos 2A and the power-reducing formulas look the way they do. The sign here is minus, which surprises most students the first time.",
      "whyTrue": "Same rotation as the sine version, but read the horizontal coordinate: x cos B − y sin B with (x, y) = (cos A, sin A).",
      "commonMistake": "Keeping the plus sign. cos(A + B) has a minus in the middle, while sin(A + B) has a plus. Sine 'copies' the sign; cosine 'opposes' it.",
      "usedFor": [
        "evaluate",
        "expand",
        "verify"
      ],
      "proof": {
        "approach": "Rotation, horizontal coordinate",
        "intro": "The rotation of (cos A, sin A) by B gives both sum formulas at once.",
        "steps": [
          {
            "line": "x' = x cos B − y sin B",
            "reason": "Rotation formula for the horizontal coordinate."
          },
          {
            "line": "x = cos A, y = sin A",
            "reason": "Unit-circle point at angle A."
          },
          {
            "line": "x' = cos A cos B − sin A sin B",
            "reason": "Substitute."
          },
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "x' is the cosine of the rotated angle."
          }
        ]
      },
      "derivation": {
        "approach": "Derive the double-angle formula from it",
        "intro": "Setting B = A is the standard route to cos 2A, and from there to the three cosine double-angle forms.",
        "steps": [
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "Start.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "B = A",
            "reason": "Specialise."
          },
          {
            "line": "cos 2A = cos²A − sin²A",
            "reason": "Multiply matching functions.",
            "uses": [
              "double-cos-1"
            ]
          }
        ]
      },
      "related": [
        "diff-cos",
        "sum-sin",
        "double-cos-1",
        "power-cos-2"
      ],
      "examples": [
        "ex-exact-cos-15",
        "ex-derive-double"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "diff-cos",
      "slug": "cosine-of-a-difference",
      "name": "Cosine of a difference",
      "category": "sum-and-difference",
      "lhs": "cos(a - b)",
      "rhs": "cos(a)*cos(b) + sin(a)*sin(b)",
      "display": "cos(A − B) = cos A cos B + sin A sin B",
      "plain": "cos(A - B) = cos(A)cos(B) + sin(A)sin(B)",
      "latex": "\\cos(A-B)=\\cos A\\cos B+\\sin A\\sin B",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 13,
      "whenToUse": "The minus-inside case for cosine — and the origin of the law of cosines when you expand c² = |A − B|² with this formula.",
      "whyTrue": "Replace B by −B in the cosine sum formula: cosine is even, sine is odd, so the minus in the middle becomes a plus.",
      "commonMistake": "Assuming cosine behaves like sine and keeps the sign. Inside the parentheses the sign flips in the middle term: cos(A − B) has '+'.",
      "usedFor": [
        "evaluate",
        "verify"
      ],
      "proof": {
        "approach": "Substitute −B",
        "intro": "Mirror of the sine difference proof.",
        "steps": [
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "Cosine of a sum.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "B → −B",
            "reason": "A − B = A + (−B)."
          },
          {
            "line": "= cos A cos B − sin A sin(−B)",
            "reason": "cos(−B) = cos B.",
            "uses": [
              "even-odd-cos"
            ]
          },
          {
            "line": "= cos A cos B + sin A sin B",
            "reason": "sin(−B) = −sin B.",
            "uses": [
              "even-odd-sin"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Distance between two points on the circle",
        "intro": "Put two unit-circle points at angles A and B and compute the squared distance between them twice — once with the distance formula, once with the angle difference.",
        "steps": [
          {
            "line": "P = (cos A, sin A), Q = (cos B, sin B)",
            "reason": "Two points on the unit circle."
          },
          {
            "line": "PQ² = (cos A − cos B)² + (sin A − sin B)² = 2 − 2(cos A cos B + sin A sin B)",
            "reason": "Expand; sin² + cos² = 1 twice.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "PQ² = 2 − 2 cos(A − B)",
            "reason": "Central angle A − B, chord length."
          },
          {
            "line": "cos(A − B) = cos A cos B + sin A sin B",
            "reason": "Equate the two expressions."
          }
        ]
      },
      "related": [
        "sum-cos",
        "diff-sin",
        "prod-cos-cos"
      ],
      "examples": [
        "ex-exact-cos-15"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-tan",
      "slug": "tangent-of-a-sum",
      "name": "Tangent of a sum",
      "category": "sum-and-difference",
      "lhs": "tan(a + b)",
      "rhs": "(tan(a) + tan(b)) / (1 - tan(a)*tan(b))",
      "display": "tan(A + B) = (tan A + tan B) / (1 − tan A tan B)",
      "plain": "tan(A + B) = (tan(A) + tan(B)) / (1 - tan(A)tan(B))",
      "latex": "\\tan(A+B)=\\frac{\\tan A+\\tan B}{1-\\tan A\\tan B}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 14,
      "whenToUse": "When the problem is written in tangents — slopes of two lines, angles between lines, or exact values like tan 75°. Divide the sine sum by the cosine sum and this is what falls out.",
      "whyTrue": "tan = sin/cos. Expand sin(A + B) and cos(A + B), then divide numerator and denominator by cos A cos B; every term becomes a tangent.",
      "commonMistake": "Forgetting the denominator. tan(A + B) is not tan A + tan B. Also: the formula is undefined when A + B = 90°, or when the denominator 1 − tan A tan B is zero — same event, described twice.",
      "usedFor": [
        "evaluate",
        "verify",
        "solve"
      ],
      "proof": {
        "approach": "Divide the two sum formulas",
        "intro": "Three lines from the sine and cosine versions.",
        "steps": [
          {
            "line": "tan(A + B) = sin(A + B)/cos(A + B)",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "= (sin A cos B + cos A sin B)/(cos A cos B − sin A sin B)",
            "reason": "Both sum formulas.",
            "uses": [
              "sum-sin",
              "sum-cos"
            ]
          },
          {
            "line": "divide every term by cos A cos B",
            "reason": "Allowed when neither cosine is zero."
          },
          {
            "line": "= (tan A + tan B)/(1 − tan A tan B)",
            "reason": "Each term becomes a tangent."
          }
        ]
      },
      "derivation": {
        "approach": "Force tangents to appear",
        "intro": "The trick is the division by cos A cos B — it is what turns mixed sine/cosine products into tangents.",
        "steps": [
          {
            "line": "Every term should become tan",
            "reason": "Goal."
          },
          {
            "line": "tan = sin/cos needs a cos in the denominator",
            "reason": "So divide by the product cos A cos B."
          },
          {
            "line": "(sin A cos B)/(cos A cos B) = tan A",
            "reason": "Cancellation, term by term."
          }
        ]
      },
      "related": [
        "sum-tan-diff",
        "sum-tan-alternate",
        "double-tan",
        "quotient-tan"
      ],
      "examples": [
        "ex-exact-tan-75"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-tan-diff",
      "slug": "tangent-of-a-difference",
      "name": "Tangent of a difference",
      "category": "sum-and-difference",
      "lhs": "tan(a - b)",
      "rhs": "(tan(a) - tan(b)) / (1 + tan(a)*tan(b))",
      "display": "tan(A − B) = (tan A − tan B) / (1 + tan A tan B)",
      "plain": "tan(A - B) = (tan(A) - tan(B)) / (1 + tan(A)tan(B))",
      "latex": "\\tan(A-B)=\\frac{\\tan A-\\tan B}{1+\\tan A\\tan B}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "angle-sum"
      ],
      "rank": 15,
      "whenToUse": "Angle between two lines with slopes m₁ and m₁: set tan A = m₁, tan B = m₂ and this formula gives the tangent of the angle between them.",
      "whyTrue": "Replace B by −B in the sum version; tangent is odd, so the numerator loses and the denominator gains.",
      "commonMistake": "Mixing the two signs: the numerator and denominator use OPPOSITE signs here (− on top, + below).",
      "usedFor": [
        "evaluate",
        "verify"
      ],
      "proof": {
        "approach": "Substitute −B",
        "intro": "Same one-line move as the sine and cosine difference formulas.",
        "steps": [
          {
            "line": "tan(A + B) = (tan A + tan B)/(1 − tan A tan B)",
            "reason": "Sum version.",
            "uses": [
              "sum-tan"
            ]
          },
          {
            "line": "B → −B, tan(−B) = −tan B",
            "reason": "Tangent is odd.",
            "uses": [
              "even-odd-tan"
            ]
          },
          {
            "line": "tan(A − B) = (tan A − tan B)/(1 + tan A tan B)",
            "reason": "Substitute and simplify signs."
          }
        ]
      },
      "derivation": {
        "approach": "Sign bookkeeping",
        "intro": "Learn the sum version; get the difference version by flipping B's sign in one place.",
        "steps": [
          {
            "line": "Top: + becomes −",
            "reason": "tan B flips sign."
          },
          {
            "line": "Bottom: − tan A tan B becomes +",
            "reason": "Product with the flipped sign."
          }
        ]
      },
      "related": [
        "sum-tan",
        "double-tan",
        "even-odd-tan"
      ],
      "examples": [
        "ex-angle-between-lines"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-tan-alternate",
      "slug": "tan-a-plus-tan-b-form",
      "name": "Tangent sum as a single fraction",
      "category": "sum-and-difference",
      "lhs": "tan(a) + tan(b)",
      "rhs": "sin(a + b) / (cos(a) * cos(b))",
      "display": "tan A + tan B = sin(A + B) / (cos A cos B)",
      "plain": "tan(A) + tan(B) = sin(A + B) / (cos(A)cos(B))",
      "latex": "\\tan A+\\tan B=\\frac{\\sin(A+B)}{\\cos A\\cos B}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "mixed-reciprocal",
        "angle-sum"
      ],
      "rank": 16,
      "whenToUse": "When a sum of two tangents has to become one fraction — standard in verification exercises, because the right side collapses two terms into one.",
      "whyTrue": "Write both tangents over their own cosines, take the common denominator cos A cos B, and the numerator is exactly the sine sum formula.",
      "commonMistake": "Reversing it blindly: the identity needs both cosines non-zero, and it silently fails at A or B = 90°.",
      "usedFor": [
        "verify",
        "simplify"
      ],
      "proof": {
        "approach": "Common denominator",
        "intro": "Two fractions, one denominator.",
        "steps": [
          {
            "line": "tan A + tan B = sin A/cos A + sin B/cos B",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "= (sin A cos B + cos A sin B)/(cos A cos B)",
            "reason": "Common denominator."
          },
          {
            "line": "= sin(A + B)/(cos A cos B)",
            "reason": "Numerator is the sine sum.",
            "uses": [
              "sum-sin"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Ask what the numerator wants to be",
        "intro": "If a verification problem hands you tan A + tan B and asks for a single sine over a product of cosines, the middle step is always the common denominator.",
        "steps": [
          {
            "line": "Target numerator: sin(A + B)",
            "reason": "What the exercise asks for."
          },
          {
            "line": "Expand the target: sin A cos B + cos A sin B",
            "reason": "That is exactly what a common denominator produces.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "So the route is: quotient, then common denominator",
            "reason": "Conclusion."
          }
        ]
      },
      "related": [
        "sum-tan",
        "quotient-tan",
        "sum-sin"
      ],
      "examples": [
        "ex-verify-tan-sum"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "prod-sin-cos",
      "slug": "sin-a-cos-b-product-to-sum",
      "name": "Product to sum: sin A cos B",
      "category": "product-to-sum",
      "lhs": "sin(a)*cos(b)",
      "rhs": "(sin(a + b) + sin(a - b)) / 2",
      "display": "sin A cos B = ½[sin(A + B) + sin(A − B)]",
      "plain": "sin(A)cos(B) = (sin(A + B) + sin(A - B)) / 2",
      "latex": "\\sin A\\cos B=\\tfrac12[\\sin(A+B)+\\sin(A-B)]",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "product"
      ],
      "rank": 10,
      "whenToUse": "A product of sine and cosine that you must integrate, sum, or compare at two frequencies. In calculus this is the standard opening move on ∫sin 3x cos x dx.",
      "whyTrue": "Add and subtract the two sine sum formulas: sin(A + B) + sin(A − B) leaves exactly 2 sin A cos B standing.",
      "commonMistake": "Mixing up which pair to add: sine-cosine products become a sum of two SINES, cosine-cosine products become cosines.",
      "usedFor": [
        "integrate",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Add the two sine expansions",
        "intro": "Both expansions contain sin A cos B; adding keeps it and cancels the other term.",
        "steps": [
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "Sine sum.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "sin(A − B) = sin A cos B − cos A sin B",
            "reason": "Sine difference.",
            "uses": [
              "diff-sin"
            ]
          },
          {
            "line": "add: sin(A + B) + sin(A − B) = 2 sin A cos B",
            "reason": "The cos A sin B terms cancel."
          },
          {
            "line": "sin A cos B = ½[sin(A + B) + sin(A − B)]",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "Never memorise — re-derive in four lines",
        "intro": "There are four product-to-sum formulas and two directions. Memorising eight lines is worse than knowing the trick: expand the sum and the difference, then add or subtract.",
        "steps": [
          {
            "line": "Write the sum formula and the difference formula for the function you have",
            "reason": "sin here."
          },
          {
            "line": "Add them if the product is mixed (sin·cos)",
            "reason": "Mixed products survive addition."
          },
          {
            "line": "Subtract them if the product matches (sin·sin or cos·cos)",
            "reason": "Same-function products survive subtraction."
          },
          {
            "line": "Divide by 2",
            "reason": "Each surviving term appears twice."
          }
        ]
      },
      "related": [
        "prod-cos-sin",
        "prod-sin-sin",
        "prod-cos-cos",
        "sum-prod-sin-sin"
      ],
      "examples": [
        "ex-integrate-product",
        "ex-convert-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "prod-cos-sin",
      "slug": "cos-a-sin-b-product-to-sum",
      "name": "Product to sum: cos A sin B",
      "category": "product-to-sum",
      "lhs": "cos(a)*sin(b)",
      "rhs": "(sin(a + b) - sin(a - b)) / 2",
      "display": "cos A sin B = ½[sin(A + B) − sin(A − B)]",
      "plain": "cos(A)sin(B) = (sin(A + B) - sin(A - B)) / 2",
      "latex": "\\cos A\\sin B=\\tfrac12[\\sin(A+B)-\\sin(A-B)]",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "product"
      ],
      "rank": 11,
      "whenToUse": "Same family, reversed order — and this is where the sign flips. If your product is cos A sin B, the difference of sines is what you need.",
      "whyTrue": "Subtract the two sine expansions: sin(A + B) − sin(A − B) = 2 cos A sin B.",
      "commonMistake": "Using the sin A cos B formula (with a plus) for cos A sin B. Swapping which factor carries the plus is the whole content of this record.",
      "usedFor": [
        "integrate",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Subtract the two sine expansions",
        "intro": "Identical set-up to the previous identity, with subtraction instead of addition.",
        "steps": [
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "Sine sum.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "sin(A − B) = sin A cos B − cos A sin B",
            "reason": "Sine difference.",
            "uses": [
              "diff-sin"
            ]
          },
          {
            "line": "subtract: sin(A + B) − sin(A − B) = 2 cos A sin B",
            "reason": "The sin A cos B terms cancel."
          },
          {
            "line": "cos A sin B = ½[sin(A + B) − sin(A − B)]",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "Track which term cancels",
        "intro": "Addition keeps the terms that appear with the same sign in both expansions; subtraction keeps the ones that appear with opposite signs.",
        "steps": [
          {
            "line": "Expand both",
            "reason": "Standard move."
          },
          {
            "line": "Want cos A sin B? It has opposite signs",
            "reason": "So subtract."
          },
          {
            "line": "½[sin(A + B) − sin(A − B)]",
            "reason": "Result."
          }
        ]
      },
      "related": [
        "prod-sin-cos",
        "prod-cos-cos",
        "sum-prod-sin-sin"
      ],
      "examples": [
        "ex-convert-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "prod-cos-cos",
      "slug": "cos-a-cos-b-product-to-sum",
      "name": "Product to sum: cos A cos B",
      "category": "product-to-sum",
      "lhs": "cos(a)*cos(b)",
      "rhs": "(cos(a + b) + cos(a - b)) / 2",
      "display": "cos A cos B = ½[cos(A − B) + cos(A + B)]",
      "plain": "cos(A)cos(B) = (cos(A - B) + cos(A + B)) / 2",
      "latex": "\\cos A\\cos B=\\tfrac12[\\cos(A-B)+\\cos(A+B)]",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "product",
        "power"
      ],
      "rank": 12,
      "whenToUse": "Matching-function products. Set A = B and this is the power-reducing formula cos²A = ½[1 + cos 2A] — which is why it exists in a calculus course.",
      "whyTrue": "Add the two cosine expansions: the sin A sin B terms cancel and 2 cos A cos B remains.",
      "commonMistake": "Expecting a minus because cos(A + B) has one. In the sum of the two expansions the minuses cancel each other.",
      "usedFor": [
        "integrate",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Add the two cosine expansions",
        "intro": "Cosine sum plus cosine difference.",
        "steps": [
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "Cosine sum.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "cos(A − B) = cos A cos B + sin A sin B",
            "reason": "Cosine difference.",
            "uses": [
              "diff-cos"
            ]
          },
          {
            "line": "add: cos(A + B) + cos(A − B) = 2 cos A cos B",
            "reason": "Sine products cancel."
          },
          {
            "line": "cos A cos B = ½[cos(A − B) + cos(A + B)]",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "Specialise to get the power-reducing form",
        "intro": "Put B = A: cos(A − A) = cos 0 = 1 and cos(A + A) = cos 2A.",
        "steps": [
          {
            "line": "cos A cos A = ½[cos 0 + cos 2A]",
            "reason": "Set B = A.",
            "uses": [
              "prod-cos-cos"
            ]
          },
          {
            "line": "cos 0 = 1",
            "reason": "Unit circle."
          },
          {
            "line": "cos²A = ½(1 + cos 2A)",
            "reason": "Simplify — the power-reducing formula.",
            "uses": [
              "power-cos-2"
            ]
          }
        ]
      },
      "related": [
        "prod-sin-sin",
        "power-cos-2",
        "double-cos-2"
      ],
      "examples": [
        "ex-integrate-cos-squared",
        "ex-convert-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "prod-sin-sin",
      "slug": "sin-a-sin-b-product-to-sum",
      "name": "Product to sum: sin A sin B",
      "category": "product-to-sum",
      "lhs": "sin(a)*sin(b)",
      "rhs": "(cos(a - b) - cos(a + b)) / 2",
      "display": "sin A sin B = ½[cos(A − B) − cos(A + B)]",
      "plain": "sin(A)sin(B) = (cos(A - B) - cos(A + B)) / 2",
      "latex": "\\sin A\\sin B=\\tfrac12[\\cos(A-B)-\\cos(A+B)]",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "product",
        "power"
      ],
      "rank": 13,
      "whenToUse": "Products of two sines — and, with A = B, the power-reducing formula sin²A = ½[1 − cos 2A]. Also the orthogonality relation Fourier series are built on.",
      "whyTrue": "Subtract the two cosine expansions: cos(A − B) − cos(A + B) = (cos A cos B + sin A sin B) − (cos A cos B − sin A sin B) = 2 sin A sin B, so halving the difference of the cosines gives back the product.",
      "commonMistake": "Writing the sine pair as a sum of sines. A product of two sines becomes a difference of COSINES.",
      "usedFor": [
        "integrate",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Subtract the two cosine expansions",
        "intro": "Same pair as before, now subtracted.",
        "steps": [
          {
            "line": "cos(A − B) = cos A cos B + sin A sin B",
            "reason": "Cosine difference.",
            "uses": [
              "diff-cos"
            ]
          },
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "Cosine sum.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "subtract: cos(A − B) − cos(A + B) = 2 sin A sin B",
            "reason": "Cosine products cancel."
          },
          {
            "line": "sin A sin B = ½[cos(A − B) − cos(A + B)]",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "A = B gives sin²",
        "intro": "Specialising this formula is the usual way to reach the sin² reduction.",
        "steps": [
          {
            "line": "B = A",
            "reason": "Specialise."
          },
          {
            "line": "cos 0 = 1, cos 2A stays",
            "reason": "Simplify."
          },
          {
            "line": "sin²A = ½(1 − cos 2A)",
            "reason": "Power-reducing formula.",
            "uses": [
              "power-sin-2"
            ]
          }
        ]
      },
      "related": [
        "prod-cos-cos",
        "power-sin-2",
        "double-cos-3"
      ],
      "examples": [
        "ex-integrate-sin-squared",
        "ex-convert-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-prod-sin-sin",
      "slug": "sin-a-plus-sin-b-sum-to-product",
      "name": "Sum to product: sin A + sin B",
      "category": "sum-to-product",
      "lhs": "sin(a) + sin(b)",
      "rhs": "2*sin((a + b)/2)*cos((a - b)/2)",
      "display": "sin A + sin B = 2 sin((A + B)/2) cos((A − B)/2)",
      "plain": "sin(A) + sin(B) = 2 sin((A+B)/2) cos((A-B)/2)",
      "latex": "\\sin A+\\sin B=2\\sin\\tfrac{A+B}{2}\\cos\\tfrac{A-B}{2}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "sum-of-same"
      ],
      "rank": 10,
      "whenToUse": "You are solving sin A + sin B = 0 or simplifying a sum of two sines. One product equal to zero splits into two simple equations — that is the payoff.",
      "whyTrue": "Write A = (A+B)/2 + (A−B)/2 and B = (A+B)/2 − (A−B)/2, expand both with the sine sum/difference formulas and add: the mixed terms double.",
      "commonMistake": "Keeping two terms. The point of sum-to-product is that the right side is a single product — if your answer still has a '+', the reduction is unfinished.",
      "usedFor": [
        "solve",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Substitute u + v, u − v",
        "intro": "Set u = (A + B)/2 and v = (A − B)/2, so A = u + v and B = u − v.",
        "steps": [
          {
            "line": "sin A + sin B = sin(u + v) + sin(u − v)",
            "reason": "Substitution."
          },
          {
            "line": "= (sin u cos v + cos u sin v) + (sin u cos v − cos u sin v)",
            "reason": "Sine sum and difference.",
            "uses": [
              "sum-sin",
              "diff-sin"
            ]
          },
          {
            "line": "= 2 sin u cos v",
            "reason": "The cos u sin v terms cancel."
          },
          {
            "line": "= 2 sin((A + B)/2) cos((A − B)/2)",
            "reason": "Return to A and B."
          }
        ]
      },
      "derivation": {
        "approach": "Average and half-difference",
        "intro": "The pattern to remember: sum-to-product always talks about the average of the two angles and half their difference. Physically, that is the carrier frequency and the beat.",
        "steps": [
          {
            "line": "Take u = (A + B)/2, v = (A − B)/2",
            "reason": "Change of variables."
          },
          {
            "line": "Expand sin(u ± v)",
            "reason": "Sum and difference formulas."
          },
          {
            "line": "Add",
            "reason": "Odd terms cancel, even terms double."
          },
          {
            "line": "2 sin u cos v",
            "reason": "Result."
          }
        ]
      },
      "related": [
        "sum-prod-sin-diff",
        "sum-prod-cos-cos",
        "prod-sin-cos"
      ],
      "examples": [
        "ex-solve-sum-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-prod-sin-diff",
      "slug": "sin-a-minus-sin-b-sum-to-product",
      "name": "Sum to product: sin A − sin B",
      "category": "sum-to-product",
      "lhs": "sin(a) - sin(b)",
      "rhs": "2*cos((a + b)/2)*sin((a - b)/2)",
      "display": "sin A − sin B = 2 cos((A + B)/2) sin((A − B)/2)",
      "plain": "sin(A) - sin(B) = 2 cos((A+B)/2) sin((A-B)/2)",
      "latex": "\\sin A-\\sin B=2\\cos\\tfrac{A+B}{2}\\sin\\tfrac{A-B}{2}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "sum-of-same"
      ],
      "rank": 11,
      "whenToUse": "Differences of sines — and the limit of (sin A − sin B)/(A − B) as B → A, which is how the derivative of sine is obtained without the difference quotient of a single function.",
      "whyTrue": "Same substitution, but subtract the expansions: now the sin u cos v terms cancel and 2 cos u sin v survive.",
      "commonMistake": "Swapping cosine and sine. For a difference of sines the cosine carries the average and the sine carries the half-difference.",
      "usedFor": [
        "solve",
        "simplify",
        "convert"
      ],
      "proof": {
        "approach": "Subtract the expansions",
        "intro": "Identical to the sum case with the opposite operation.",
        "steps": [
          {
            "line": "sin A − sin B = sin(u + v) − sin(u − v)",
            "reason": "u = (A+B)/2, v = (A−B)/2."
          },
          {
            "line": "= 2 cos u sin v",
            "reason": "Subtract the two sine expansions.",
            "uses": [
              "sum-sin",
              "diff-sin"
            ]
          },
          {
            "line": "= 2 cos((A + B)/2) sin((A − B)/2)",
            "reason": "Return to A and B."
          }
        ]
      },
      "derivation": {
        "approach": "Keep the half-difference where the change is",
        "intro": "The term with (A − B)/2 is the 'small' one; that is the factor that vanishes when A = B, which is a good sanity check.",
        "steps": [
          {
            "line": "Check A = B: the right side must be 0",
            "reason": "sin 0 = 0 kills the product ✓."
          },
          {
            "line": "So sin((A − B)/2) has to be a factor",
            "reason": "Structural necessity."
          },
          {
            "line": "The other factor is the cosine of the average",
            "reason": "Symmetry of the two angles."
          }
        ]
      },
      "related": [
        "sum-prod-sin-sin",
        "sum-prod-cos-cos-diff"
      ],
      "examples": [
        "ex-solve-sum-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-prod-cos-cos",
      "slug": "cos-a-plus-cos-b-sum-to-product",
      "name": "Sum to product: cos A + cos B",
      "category": "sum-to-product",
      "lhs": "cos(a) + cos(b)",
      "rhs": "2*cos((a + b)/2)*cos((a - b)/2)",
      "display": "cos A + cos B = 2 cos((A + B)/2) cos((A − B)/2)",
      "plain": "cos(A) + cos(B) = 2 cos((A+B)/2) cos((A-B)/2)",
      "latex": "\\cos A+\\cos B=2\\cos\\tfrac{A+B}{2}\\cos\\tfrac{A-B}{2}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "sum-of-same"
      ],
      "rank": 12,
      "whenToUse": "Sums of two cosines, commonly when combining two waves of similar frequency: the product form makes the amplitude modulation visible.",
      "whyTrue": "Add the two cosine expansions with the u, v substitution: the sin u sin v terms cancel and 2 cos u cos v remain.",
      "commonMistake": "Reaching for a sine factor. Cosine plus cosine gives cosine times cosine — both functions stay cosines.",
      "usedFor": [
        "simplify",
        "convert",
        "solve"
      ],
      "proof": {
        "approach": "Add the cosine expansions",
        "intro": "u = (A + B)/2, v = (A − B)/2 again.",
        "steps": [
          {
            "line": "cos A + cos B = cos(u + v) + cos(u − v)",
            "reason": "Substitution."
          },
          {
            "line": "= (cos u cos v − sin u sin v) + (cos u cos v + sin u sin v)",
            "reason": "Cosine sum and difference.",
            "uses": [
              "sum-cos",
              "diff-cos"
            ]
          },
          {
            "line": "= 2 cos u cos v",
            "reason": "Sine products cancel."
          }
        ]
      },
      "derivation": {
        "approach": "Both cosines, both stay cosines",
        "intro": "Mnemonic: with a sum of cosines, nothing changes function; with a difference of cosines, everything does.",
        "steps": [
          {
            "line": "cos + cos → cos·cos",
            "reason": "Pattern."
          },
          {
            "line": "cos − cos → sin·sin with a minus",
            "reason": "The companion formula.",
            "uses": [
              "sum-prod-cos-cos-diff"
            ]
          }
        ]
      },
      "related": [
        "sum-prod-cos-cos-diff",
        "sum-prod-sin-sin",
        "prod-cos-cos"
      ],
      "examples": [
        "ex-solve-sum-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "sum-prod-cos-cos-diff",
      "slug": "cos-a-minus-cos-b-sum-to-product",
      "name": "Sum to product: cos A − cos B",
      "category": "sum-to-product",
      "lhs": "cos(a) - cos(b)",
      "rhs": "-2*sin((a + b)/2)*sin((a - b)/2)",
      "display": "cos A − cos B = −2 sin((A + B)/2) sin((A − B)/2)",
      "plain": "cos(A) - cos(B) = -2 sin((A+B)/2) sin((A-B)/2)",
      "latex": "\\cos A-\\cos B=-2\\sin\\tfrac{A+B}{2}\\sin\\tfrac{A-B}{2}",
      "slots": [
        "a",
        "b"
      ],
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "sum-of-same"
      ],
      "rank": 13,
      "whenToUse": "Differences of cosines — and the only sum-to-product formula with a leading minus sign. Forgetting that minus is the single most common error in this group.",
      "whyTrue": "Set u = (A + B)/2, v = (A − B)/2 and subtract: cos(u + v) − cos(u − v) = (cos u cos v − sin u sin v) − (cos u cos v + sin u sin v) = −2 sin u sin v. The cosine products cancel, the sine products add with a minus.",
      "commonMistake": "Dropping the minus. Quick check: take A = 0, B = 60°. Left side is 1 − 0.5 = 0.5 which is positive while sin(A/2)sin(B/2) is positive too — so the sign only works out once you test it; test it.",
      "usedFor": [
        "simplify",
        "convert",
        "solve"
      ],
      "proof": {
        "approach": "Subtract the cosine expansions",
        "intro": "Same substitution, subtraction this time.",
        "steps": [
          {
            "line": "cos A − cos B = cos(u + v) − cos(u − v)",
            "reason": "Substitution."
          },
          {
            "line": "= −2 sin u sin v",
            "reason": "Cosine products cancel, sine products double with a minus.",
            "uses": [
              "sum-cos",
              "diff-cos"
            ]
          },
          {
            "line": "= −2 sin((A + B)/2) sin((A − B)/2)",
            "reason": "Return to A and B."
          }
        ]
      },
      "derivation": {
        "approach": "Sanity-check with A = B",
        "intro": "When A = B the left side is 0 and the right side is 0 because sin 0 = 0 — consistent. Then one numeric test fixes the overall sign.",
        "steps": [
          {
            "line": "A = B: both sides 0",
            "reason": "Necessary condition ✓."
          },
          {
            "line": "A = 0, B = π: left = 1 − (−1) = 2",
            "reason": "Concrete test."
          },
          {
            "line": "right = −2 sin(π/2) sin(−π/2) = +2",
            "reason": "Matches only with the leading minus."
          }
        ]
      },
      "related": [
        "sum-prod-cos-cos",
        "sum-prod-sin-diff"
      ],
      "examples": [
        "ex-solve-sum-product"
      ],
      "source": "OpenStax Precalculus, Ch. 7.2–7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "triangle-area-sine",
      "slug": "triangle-area-two-ways",
      "name": "Triangle area in two pairings",
      "category": "triangle",
      "lhs": "(1/2)*a*b*sin(C)",
      "rhs": "(1/2)*b*c*sin(A)",
      "display": "½ a b sin C = ½ b c sin A",
      "plain": "(1/2)·a·b·sin(C) = (1/2)·b·c·sin(A)",
      "latex": "\\tfrac12 ab\\sin C = \\tfrac12 bc\\sin A",
      "conditions": [],
      "constraint": "triangle",
      "triggers": [
        "triangle"
      ],
      "rank": 6,
      "whenToUse": "Any two-side-plus-included-angle area computation in a triangle. Written equal like this, it is the sine rule in disguise: the area does not care which pair of sides you use.",
      "whyTrue": "½·(one side)·(height to that side) computes the area whichever side you call the base; expressing each height with a sine gives three formulas for the same area, so they are equal.",
      "commonMistake": "Treating a, b, c, A, B, C as six free numbers. They are not independent: A + B + C = 180° and the sides must follow the sine rule. Random values make this identity fail — that is exactly why our sampler generates real triangles.",
      "usedFor": [
        "solve",
        "evaluate"
      ],
      "proof": {
        "approach": "Same area, three choices of base",
        "intro": "Take the area formula ½·base·height and write each height as a sine of the adjacent angle times the other side.",
        "steps": [
          {
            "line": "Area = ½ · b · h_b",
            "reason": "Base b, height to it."
          },
          {
            "line": "h_b = a sin C",
            "reason": "The height from A onto side b, from the right triangle at C."
          },
          {
            "line": "Area = ½ a b sin C",
            "reason": "Substitute."
          },
          {
            "line": "Area = ½ b c sin A = ½ a c sin B",
            "reason": "Same argument with the other two sides as bases."
          },
          {
            "line": "½ a b sin C = ½ b c sin A",
            "reason": "Both equal the same area."
          }
        ]
      },
      "derivation": {
        "approach": "Divide to get the sine rule",
        "intro": "This identity is how the sine rule falls out: cancel the common factor in the area equations.",
        "steps": [
          {
            "line": "½ a b sin C = ½ b c sin A",
            "reason": "Equal areas.",
            "uses": [
              "triangle-area-sine"
            ]
          },
          {
            "line": "divide by ½ b",
            "reason": "Common factor."
          },
          {
            "line": "a sin C = c sin A → a/sin A = c/sin C",
            "reason": "Rearrange — the sine rule for two of the three pairs."
          }
        ]
      },
      "related": [
        "pythagorean-1",
        "sum-sin"
      ],
      "examples": [
        "ex-triangle-area"
      ],
      "source": "Standard triangle geometry (OpenStax Precalculus, Ch. 7.4 Law of Sines); constraint checked numerically 2026-09-26",
      "revised": "2026-09-26"
    },
    {
      "id": "double-sin",
      "slug": "sin-2x",
      "name": "Double-angle identity for sine",
      "category": "double-angle",
      "lhs": "sin(2*x)",
      "rhs": "2*sin(x)*cos(x)",
      "display": "sin 2x = 2 sin x cos x",
      "plain": "sin(2x) = 2 sin(x) cos(x)",
      "latex": "\\sin 2x = 2\\sin x\\cos x",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "double-angle"
      ],
      "rank": 1,
      "whenToUse": "The question is in 2x and the answer (or the next step) is in x — or you need to integrate/solve something containing sin x cos x, which is this formula run backwards.",
      "whyTrue": "It is the sine sum formula with both angles set equal: sin(x + x) = sin x cos x + cos x sin x = 2 sin x cos x.",
      "commonMistake": "Writing sin 2x = 2 sin x. The factor 2 multiplies only the angle inside, and the correct expansion has TWO factors: 2 sin x cos x.",
      "usedFor": [
        "simplify",
        "solve",
        "differentiate"
      ],
      "proof": {
        "approach": "Set B = A in the sum formula",
        "intro": "Two lines from the sine sum identity.",
        "steps": [
          {
            "line": "sin(A + B) = sin A cos B + cos A sin B",
            "reason": "Sine of a sum.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "A = B = x",
            "reason": "Specialise."
          },
          {
            "line": "sin 2x = sin x cos x + cos x sin x",
            "reason": "Substitute."
          },
          {
            "line": "sin 2x = 2 sin x cos x",
            "reason": "Combine the two identical terms."
          }
        ]
      },
      "derivation": {
        "approach": "Spot the pattern in a product",
        "intro": "Going the other way is the useful skill: whenever you see sin x cos x, multiply and divide by 2 and the double-angle form appears. This is how ∫sin x cos x dx is done in one line.",
        "steps": [
          {
            "line": "See sin x cos x",
            "reason": "Trigger."
          },
          {
            "line": "Write it as (1/2)·(2 sin x cos x)",
            "reason": "Multiply by 2 and divide by 2."
          },
          {
            "line": "= (1/2) sin 2x",
            "reason": "Double-angle form."
          }
        ]
      },
      "related": [
        "double-cos-1",
        "double-tan",
        "sum-sin",
        "power-sin-3"
      ],
      "examples": [
        "ex-double-from-sum",
        "ex-integrate-sin-cos"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "double-cos-1",
      "slug": "cos-2x-cos-squared-minus-sin-squared",
      "name": "Double-angle identity for cosine (form 1)",
      "category": "double-angle",
      "lhs": "cos(2*x)",
      "rhs": "cos(x)**2 - sin(x)**2",
      "display": "cos 2x = cos²x − sin²x",
      "plain": "cos(2x) = cos^2(x) - sin^2(x)",
      "latex": "\\cos 2x = \\cos^2 x - \\sin^2 x",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "double-angle"
      ],
      "rank": 2,
      "whenToUse": "The symmetric form — use it when both sin² and cos² are already present and you want to collapse them into one cosine.",
      "whyTrue": "Cosine sum formula with A = B = x: cos 2x = cos x cos x − sin x sin x.",
      "commonMistake": "Believing there is one double-angle cosine formula. There are three equivalent shapes and choosing the wrong one costs extra work — see the other two records.",
      "usedFor": [
        "simplify",
        "verify"
      ],
      "proof": {
        "approach": "Set B = A in the cosine sum",
        "intro": "Direct specialisation.",
        "steps": [
          {
            "line": "cos(A + B) = cos A cos B − sin A sin B",
            "reason": "Cosine of a sum.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "A = B = x",
            "reason": "Specialise."
          },
          {
            "line": "cos 2x = cos²x − sin²x",
            "reason": "Multiply matching functions."
          }
        ]
      },
      "derivation": {
        "approach": "From the symmetric form to the other two",
        "intro": "The other two cosine forms are this one plus the Pythagorean identity, used to eliminate whichever square you do not want.",
        "steps": [
          {
            "line": "cos²x = 1 − sin²x",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "Substitute into cos²x − sin²x",
            "reason": "Eliminate cosine."
          },
          {
            "line": "cos 2x = 1 − 2 sin²x",
            "reason": "Third form.",
            "uses": [
              "double-cos-3"
            ]
          }
        ]
      },
      "related": [
        "double-cos-2",
        "double-cos-3",
        "sum-cos",
        "power-sin-2"
      ],
      "examples": [
        "ex-double-from-sum"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "double-cos-2",
      "slug": "cos-2x-two-cos-squared-minus-one",
      "name": "Double-angle identity for cosine (form 2)",
      "category": "double-angle",
      "lhs": "cos(2*x)",
      "rhs": "2*cos(x)**2 - 1",
      "display": "cos 2x = 2 cos²x − 1",
      "plain": "cos(2x) = 2cos^2(x) - 1",
      "latex": "\\cos 2x = 2\\cos^2 x - 1",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "double-angle"
      ],
      "rank": 3,
      "whenToUse": "Cosine-only version: use it when the expression contains cos² and you want a single cosine, and as the source of the cos² power-reducing formula.",
      "whyTrue": "Replace cos²x in cos²x − sin²x with 1 − sin²x — or, equivalently, eliminate sin² with the Pythagorean identity.",
      "commonMistake": "Writing 2cos 2x − 1 or forgetting the square on the cosine: the 2 multiplies the function value, the square is on cos x.",
      "usedFor": [
        "simplify",
        "integrate"
      ],
      "proof": {
        "approach": "Eliminate sine from form 1",
        "intro": "One substitution.",
        "steps": [
          {
            "line": "cos 2x = cos²x − sin²x",
            "reason": "Form 1.",
            "uses": [
              "double-cos-1"
            ]
          },
          {
            "line": "sin²x = 1 − cos²x",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "cos 2x = cos²x − (1 − cos²x)",
            "reason": "Substitute."
          },
          {
            "line": "cos 2x = 2cos²x − 1",
            "reason": "Simplify."
          }
        ]
      },
      "derivation": {
        "approach": "Solve for cos²",
        "intro": "This is the standard route to the power-reducing formula for cosine.",
        "steps": [
          {
            "line": "cos 2x = 2cos²x − 1",
            "reason": "Start."
          },
          {
            "line": "cos 2x + 1 = 2cos²x",
            "reason": "Add 1 to both sides."
          },
          {
            "line": "cos²x = (1 + cos 2x)/2",
            "reason": "Divide by 2 — the power-reducing form.",
            "uses": [
              "power-cos-2"
            ]
          }
        ]
      },
      "related": [
        "double-cos-1",
        "double-cos-3",
        "power-cos-2"
      ],
      "examples": [
        "ex-integrate-cos-squared"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "double-cos-3",
      "slug": "cos-2x-one-minus-two-sin-squared",
      "name": "Double-angle identity for cosine (form 3)",
      "category": "double-angle",
      "lhs": "cos(2*x)",
      "rhs": "1 - 2*sin(x)**2",
      "display": "cos 2x = 1 − 2 sin²x",
      "plain": "cos(2x) = 1 - 2sin^2(x)",
      "latex": "\\cos 2x = 1 - 2\\sin^2 x",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "double-angle",
        "square-terms"
      ],
      "rank": 4,
      "whenToUse": "Sine-only version. It is the one to reach for when sin² is in the way, and the parent of the sin² power-reducing formula used constantly in calculus.",
      "whyTrue": "Replace sin²x in cos²x − sin²x by 1 − sin²x: the cosine disappears and 1 − 2sin²x is left.",
      "commonMistake": "Sign slip: it is 1 − 2sin²x, not 2sin²x − 1 (that is −cos 2x). Check with x = 0: cos 0 = 1, and 1 − 0 = 1 ✓.",
      "usedFor": [
        "simplify",
        "integrate"
      ],
      "proof": {
        "approach": "Eliminate cosine from form 1",
        "intro": "Symmetric to the previous proof.",
        "steps": [
          {
            "line": "cos 2x = cos²x − sin²x",
            "reason": "Form 1.",
            "uses": [
              "double-cos-1"
            ]
          },
          {
            "line": "cos²x = 1 − sin²x",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "cos 2x = 1 − 2sin²x",
            "reason": "Substitute and simplify."
          }
        ]
      },
      "derivation": {
        "approach": "Solve for sin²",
        "intro": "Rearranging gives the single most-used formula in integral trigonometry.",
        "steps": [
          {
            "line": "cos 2x = 1 − 2sin²x",
            "reason": "Start."
          },
          {
            "line": "2sin²x = 1 − cos 2x",
            "reason": "Move the sine term to the left."
          },
          {
            "line": "sin²x = (1 − cos 2x)/2",
            "reason": "Power-reducing formula.",
            "uses": [
              "power-sin-2"
            ]
          }
        ]
      },
      "related": [
        "double-cos-1",
        "double-cos-2",
        "power-sin-2"
      ],
      "examples": [
        "ex-integrate-sin-squared"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "double-tan",
      "slug": "tan-2x",
      "name": "Double-angle identity for tangent",
      "category": "double-angle",
      "lhs": "tan(2*x)",
      "rhs": "2*tan(x) / (1 - tan(x)**2)",
      "display": "tan 2x = 2 tan x / (1 − tan²x)",
      "plain": "tan(2x) = 2tan(x) / (1 - tan^2(x))",
      "latex": "\\tan 2x = \\frac{2\\tan x}{1 - \\tan^2 x}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "double-angle"
      ],
      "rank": 5,
      "whenToUse": "Everything in the problem is a tangent — solving tan 2x = 1, or rewriting a slope-doubling situation. Also the formula that shows why tan has period 180° but tan 2x compresses it.",
      "whyTrue": "Set B = A in the tangent sum formula: the numerator becomes 2 tan A, the denominator 1 − tan²A.",
      "commonMistake": "Undefined points: the right side blows up when tan²x = 1, i.e. x = 45°, which is exactly where 2x = 90° and tan 2x genuinely has no value.",
      "usedFor": [
        "solve",
        "simplify"
      ],
      "proof": {
        "approach": "Set B = A in the tangent sum",
        "intro": "One substitution in the tangent-of-a-sum identity.",
        "steps": [
          {
            "line": "tan(A + B) = (tan A + tan B)/(1 − tan A tan B)",
            "reason": "Tangent of a sum.",
            "uses": [
              "sum-tan"
            ]
          },
          {
            "line": "B = A = x",
            "reason": "Specialise."
          },
          {
            "line": "tan 2x = (tan x + tan x)/(1 − tan x·tan x)",
            "reason": "Substitute."
          },
          {
            "line": "tan 2x = 2 tan x/(1 − tan²x)",
            "reason": "Simplify both parts."
          }
        ]
      },
      "derivation": {
        "approach": "Or divide the other two",
        "intro": "If the tangent formula is not memorised: tan 2x = sin 2x / cos 2x, then substitute the sine and cosine double-angle forms and divide top and bottom by cos²x.",
        "steps": [
          {
            "line": "tan 2x = sin 2x/cos 2x",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "= 2 sin x cos x/(cos²x − sin²x)",
            "reason": "Both double-angle forms.",
            "uses": [
              "double-sin",
              "double-cos-1"
            ]
          },
          {
            "line": "divide by cos²x",
            "reason": "Turns each piece into a tangent."
          },
          {
            "line": "= 2 tan x/(1 − tan²x)",
            "reason": "Result."
          }
        ]
      },
      "related": [
        "sum-tan",
        "double-sin",
        "double-cos-1",
        "pythagorean-2"
      ],
      "examples": [
        "ex-solve-tan-double"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "half-sin",
      "slug": "sin-x-over-2",
      "name": "Half-angle identity for sine",
      "category": "half-angle",
      "lhs": "sin(x/2)",
      "rhs": "sqrt((1 - cos(x))/2)",
      "display": "sin(x/2) = ±√((1 − cos x)/2)",
      "plain": "sin(t/2) = ± sqrt((1 - cos(t))/2)",
      "latex": "\\sin\\frac{x}{2}=\\pm\\sqrt{\\frac{1-\\cos x}{2}}",
      "conditions": [
        {
          "var": "x",
          "fromDeg": 0,
          "toDeg": 360,
          "note": "the + root is the valid one for 0° < x < 360° (x/2 in the upper half-plane); outside that interval sin(x/2) is negative and the identity needs the − root"
        }
      ],
      "constraint": "free-angle",
      "triggers": [
        "half-angle"
      ],
      "rank": 1,
      "whenToUse": "A half angle appears, or an integral contains √(1 − cos x). Always decide the sign from the quadrant of x/2 BEFORE writing the root — that decision is the whole problem.",
      "whyTrue": "Start from cos 2u = 1 − 2sin²u, solve for sin u and rename u = x/2. The square root is unavoidable, which is exactly why a sign question comes with it.",
      "commonMistake": "Writing ± and moving on. In an exercise you are expected to choose: if x/2 is in the third quadrant, sin(x/2) is negative and the answer is the negative root.",
      "usedFor": [
        "integrate",
        "simplify",
        "evaluate"
      ],
      "proof": {
        "approach": "Solve cos 2u for sin u",
        "intro": "Rearranging the double-angle cosine, then a change of name.",
        "steps": [
          {
            "line": "cos 2u = 1 − 2sin²u",
            "reason": "Double-angle form 3.",
            "uses": [
              "double-cos-3"
            ]
          },
          {
            "line": "sin²u = (1 − cos 2u)/2",
            "reason": "Solve for sin²u."
          },
          {
            "line": "sin u = ±√((1 − cos 2u)/2)",
            "reason": "Take the root; sign unknown until the quadrant of u is known."
          },
          {
            "line": "u = x/2 → sin(x/2) = ±√((1 − cos x)/2)",
            "reason": "Rename 2u as x."
          }
        ],
        "outro": "With 0° < x < 360°, the half angle x/2 lies between 0° and 180° where sine is positive — so the + root is correct on that interval and only there."
      },
      "derivation": {
        "approach": "Quadrant decides the sign",
        "intro": "The mechanical part is easy; the sign is the judgement call, and it is made from the quadrant of the HALF angle, not of x.",
        "steps": [
          {
            "line": "Ignore the sign, write √((1 − cos x)/2)",
            "reason": "Magnitude from the identity."
          },
          {
            "line": "Ask: where is x/2?",
            "reason": "The half angle is the one whose sine you are computing."
          },
          {
            "line": "x/2 in Q1 or Q2 → +; in Q3 or Q4 → −",
            "reason": "Sine sign by quadrant."
          }
        ]
      },
      "related": [
        "half-cos",
        "half-tan-a",
        "double-cos-3",
        "power-sin-2"
      ],
      "examples": [
        "ex-half-angle-sign",
        "ex-integrate-root"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "half-cos",
      "slug": "cos-x-over-2",
      "name": "Half-angle identity for cosine",
      "category": "half-angle",
      "lhs": "cos(x/2)",
      "rhs": "sqrt((1 + cos(x))/2)",
      "display": "cos(x/2) = ±√((1 + cos x)/2)",
      "plain": "cos(t/2) = ± sqrt((1 + cos(t))/2)",
      "latex": "\\cos\\frac{x}{2}=\\pm\\sqrt{\\frac{1+\\cos x}{2}}",
      "conditions": [
        {
          "var": "x",
          "fromDeg": -180,
          "toDeg": 180,
          "note": "the + root holds for −180° < x < 180° (x/2 in the right half-plane). At x = 270°, for instance, cos 135° = −√2/2 while the + root gives +√2/2 — the identity fails, which our sampler verifies"
        }
      ],
      "constraint": "free-angle",
      "triggers": [
        "half-angle"
      ],
      "rank": 2,
      "whenToUse": "Half-angle cosine, or √(1 + cos x) under an integral. Same sign discipline as the sine version: the quadrant of x/2 decides.",
      "whyTrue": "Start from cos 2u = 2cos²u − 1, solve it for cos²u, take the root and rename u as x/2. The root is where the sign question comes from — the square loses the information about which half-plane x/2 lives in.",
      "commonMistake": "Confusing which root goes with which sign inside the radical: 1 − cos x belongs to sine, 1 + cos x belongs to cosine. Memory hook: cosine is the 'plus' one.",
      "usedFor": [
        "integrate",
        "simplify",
        "evaluate"
      ],
      "proof": {
        "approach": "Solve cos 2u for cos u",
        "intro": "Same rearrangement with the other double-angle form.",
        "steps": [
          {
            "line": "cos 2u = 2cos²u − 1",
            "reason": "Double-angle form 2.",
            "uses": [
              "double-cos-2"
            ]
          },
          {
            "line": "cos²u = (1 + cos 2u)/2",
            "reason": "Solve for cos²u."
          },
          {
            "line": "cos u = ±√((1 + cos 2u)/2)",
            "reason": "Root with a sign to be decided."
          },
          {
            "line": "u = x/2 → cos(x/2) = ±√((1 + cos x)/2)",
            "reason": "Rename."
          }
        ],
        "outro": "This is the identity our own test caught: the + version is not unconditional. On (−180°, 180°) it holds; at x = 270° it does not."
      },
      "derivation": {
        "approach": "Same quadrant rule, cosine's signs",
        "intro": "Cosine is positive in Q1 and Q4 — so x/2 must be there for the + root.",
        "steps": [
          {
            "line": "Magnitude: √((1 + cos x)/2)",
            "reason": "From the identity."
          },
          {
            "line": "Where is x/2?",
            "reason": "Q1/Q4 → +, Q2/Q3 → −."
          },
          {
            "line": "−180° < x < 180° puts x/2 in Q1/Q4",
            "reason": "Which is why the + version is quoted with that interval."
          }
        ]
      },
      "related": [
        "half-sin",
        "half-tan-a",
        "double-cos-2",
        "power-cos-2"
      ],
      "examples": [
        "ex-half-angle-sign"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "half-tan-a",
      "slug": "tan-x-over-2-first-form",
      "name": "Half-angle identity for tangent (form 1)",
      "category": "half-angle",
      "lhs": "tan(x/2)",
      "rhs": "(1 - cos(x))/sin(x)",
      "display": "tan(x/2) = (1 − cos x)/sin x",
      "plain": "tan(t/2) = (1 - cos(t))/sin(t)",
      "latex": "\\tan\\frac{x}{2}=\\frac{1-\\cos x}{\\sin x}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "half-angle"
      ],
      "rank": 3,
      "whenToUse": "The root-free half-angle tangent. Because there is no square root, there is no sign question — this form is the one to use when you want a definite expression.",
      "whyTrue": "Write tan(x/2) = sin(x/2)/cos(x/2), then multiply top and bottom by cos(x/2) and use the double-angle formulas: the numerator becomes sin x and the denominator 1 + cos x — the other form. Multiply instead by sin(x/2) to get this one.",
      "commonMistake": "Undefined points: sin x = 0 means x = 0° or 180°, and at those the half-angle tangent is 0 or undefined. The formula is not claiming values there.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Half-angle sine over half-angle cosine",
        "intro": "Divide sin(x/2) by cos(x/2) and clear the roots.",
        "steps": [
          {
            "line": "tan(x/2) = sin(x/2)/cos(x/2)",
            "reason": "Quotient identity.",
            "uses": [
              "quotient-tan"
            ]
          },
          {
            "line": "multiply numerator and denominator by 2cos(x/2)",
            "reason": "Chooses which double angle appears."
          },
          {
            "line": "= 2 sin(x/2)cos(x/2) / (2cos²(x/2))",
            "reason": "Rearrange."
          },
          {
            "line": "= sin x/(1 + cos x)",
            "reason": "Double-angle formulas.",
            "uses": [
              "double-sin",
              "double-cos-2"
            ]
          },
          {
            "line": "= (1 − cos x)/sin x",
            "reason": "Multiply top and bottom by (1 − cos x) and use 1 − cos²x = sin²x.",
            "uses": [
              "pythagorean-1"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Rationalise to switch forms",
        "intro": "The two tangent half-angle forms are the same fraction with the conjugate multiplied in — you never need to memorise both.",
        "steps": [
          {
            "line": "Start with sin x/(1 + cos x)",
            "reason": "One form."
          },
          {
            "line": "Multiply by (1 − cos x)/(1 − cos x)",
            "reason": "Rationalising factor."
          },
          {
            "line": "Bottom: 1 − cos²x = sin²x",
            "reason": "Pythagorean identity.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "Cancel one sin x → (1 − cos x)/sin x",
            "reason": "The other form.",
            "uses": [
              "half-tan-b"
            ]
          }
        ]
      },
      "related": [
        "half-tan-b",
        "half-tan-c",
        "double-sin",
        "pythagorean-1"
      ],
      "examples": [
        "ex-half-tan-forms"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "half-tan-b",
      "slug": "tan-x-over-2-second-form",
      "name": "Half-angle identity for tangent (form 2)",
      "category": "half-angle",
      "lhs": "tan(x/2)",
      "rhs": "sin(x)/(1 + cos(x))",
      "display": "tan(x/2) = sin x/(1 + cos x)",
      "plain": "tan(t/2) = sin(t)/(1 + cos(t))",
      "latex": "\\tan\\frac{x}{2}=\\frac{\\sin x}{1+\\cos x}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "half-angle"
      ],
      "rank": 4,
      "whenToUse": "The companion form; prefer it when the numerator sin x is already in your expression, and the one that leads directly to the tangent half-angle substitution used in integration.",
      "whyTrue": "Write tan(x/2) = sin(x/2)/cos(x/2), multiply top and bottom by 2cos(x/2), and the double-angle formulas hand you sin x on top and 1 + cos x below. It is form 1 one step earlier, before the conjugate multiplication.",
      "commonMistake": "Treating the two forms as different identities. They are equal wherever both are defined, because (1 − cos x)/sin x = sin x/(1 + cos x) after cross-multiplying with 1 − cos²x = sin²x.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Stop halfway",
        "intro": "The first four lines of the form-1 proof, without the last step.",
        "steps": [
          {
            "line": "tan(x/2) = sin(x/2)/cos(x/2)",
            "reason": "Quotient identity."
          },
          {
            "line": "multiply by 2cos(x/2)/2cos(x/2)",
            "reason": "Set up the double angles."
          },
          {
            "line": "= 2sin(x/2)cos(x/2)/(2cos²(x/2))",
            "reason": "Algebra."
          },
          {
            "line": "= sin x/(1 + cos x)",
            "reason": "Double-angle formulas.",
            "uses": [
              "double-sin",
              "double-cos-2"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Which form is convenient?",
        "intro": "Pick by what is already in your expression: a bare sin x on top suggests this form; a 1 − cos x suggests the other. Neither is more correct.",
        "steps": [
          {
            "line": "Numerator has sin x",
            "reason": "Then use this form."
          },
          {
            "line": "Denominator has 1 − cos x elsewhere in the problem",
            "reason": "Then use form 1.",
            "uses": [
              "half-tan-a"
            ]
          }
        ]
      },
      "related": [
        "half-tan-a",
        "half-tan-c",
        "pythagorean-1"
      ],
      "examples": [
        "ex-half-tan-forms"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "half-tan-c",
      "slug": "tan-x-over-2-csc-minus-cot",
      "name": "Half-angle identity for tangent (form 3)",
      "category": "half-angle",
      "lhs": "tan(x/2)",
      "rhs": "csc(x) - cot(x)",
      "display": "tan(x/2) = csc x − cot x",
      "plain": "tan(t/2) = csc(t) - cot(t)",
      "latex": "\\tan\\frac{x}{2}=\\csc x-\\cot x",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "half-angle",
        "mixed-reciprocal"
      ],
      "rank": 5,
      "whenToUse": "The compact textbook form, and the one that appears when integrating csc and cot. It is the same identity wearing reciprocal names.",
      "whyTrue": "Put (1 − cos x)/sin x over the common denominator sin x: 1/sin x − cos x/sin x, which is csc x − cot x.",
      "commonMistake": "Missing that this form hides the quotient structure; if you need to combine it with other fractions, expand back to (1 − cos x)/sin x first.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Split the fraction",
        "intro": "Three lines from form 1.",
        "steps": [
          {
            "line": "tan(x/2) = (1 − cos x)/sin x",
            "reason": "Half-angle form 1.",
            "uses": [
              "half-tan-a"
            ]
          },
          {
            "line": "= 1/sin x − cos x/sin x",
            "reason": "Split the numerator."
          },
          {
            "line": "= csc x − cot x",
            "reason": "Reciprocal and quotient identities.",
            "uses": [
              "reciprocal-csc",
              "quotient-cot"
            ]
          }
        ]
      },
      "derivation": {
        "approach": "Read the names off the pieces",
        "intro": "If you can derive form 1, this one is only naming: 1/sin is csc, cos/sin is cot.",
        "steps": [
          {
            "line": "1/sin x is csc x",
            "reason": "Reciprocal.",
            "uses": [
              "reciprocal-csc"
            ]
          },
          {
            "line": "cos x/sin x is cot x",
            "reason": "Quotient.",
            "uses": [
              "quotient-cot"
            ]
          },
          {
            "line": "Difference of the two",
            "reason": "Conclusion."
          }
        ]
      },
      "related": [
        "half-tan-a",
        "half-tan-b",
        "reciprocal-csc",
        "quotient-cot"
      ],
      "examples": [
        "ex-half-tan-forms"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "power-sin-2",
      "slug": "sin-squared-power-reducing",
      "name": "Power-reducing formula for sin²",
      "category": "power-reducing",
      "lhs": "sin(x)**2",
      "rhs": "(1 - cos(2*x))/2",
      "display": "sin²x = (1 − cos 2x)/2",
      "plain": "sin^2(t) = (1 - cos(2t))/2",
      "latex": "\\sin^2 x = \\frac{1-\\cos 2x}{2}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "power",
        "square-terms"
      ],
      "rank": 1,
      "whenToUse": "Almost always integration: ∫sin²x dx is not reachable as a power, but (1 − cos 2x)/2 integrates in two terms. Also for averaging sin² over a period.",
      "whyTrue": "The double-angle identity cos 2x = 1 − 2sin²x contains sin²x alone; solve for it and the power disappears, replaced by a cosine of twice the angle.",
      "commonMistake": "Losing the factor 1/2 on the cosine term, or writing cos²(2x). The argument doubles, the amplitude halves.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Rearrange the double-angle cosine",
        "intro": "One line of algebra from double-angle form 3.",
        "steps": [
          {
            "line": "cos 2x = 1 − 2sin²x",
            "reason": "Double-angle form 3.",
            "uses": [
              "double-cos-3"
            ]
          },
          {
            "line": "2sin²x = 1 − cos 2x",
            "reason": "Move sin² to the left, cos 2x to the right."
          },
          {
            "line": "sin²x = (1 − cos 2x)/2",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "Powers are eliminated by doubling the angle",
        "intro": "General rule of thumb in this family: a squared trig function becomes a constant plus a cosine of DOUBLE the angle. Cube powers become a difference of sines of x and 3x.",
        "steps": [
          {
            "line": "Need to lose sin²?",
            "reason": "Set-up."
          },
          {
            "line": "Find the double-angle formula containing sin²",
            "reason": "Form 3.",
            "uses": [
              "double-cos-3"
            ]
          },
          {
            "line": "Solve for sin²",
            "reason": "Algebra."
          }
        ]
      },
      "related": [
        "power-cos-2",
        "double-cos-3",
        "pythagorean-1",
        "power-sin-3"
      ],
      "examples": [
        "ex-integrate-sin-squared"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "power-cos-2",
      "slug": "cos-squared-power-reducing",
      "name": "Power-reducing formula for cos²",
      "category": "power-reducing",
      "lhs": "cos(x)**2",
      "rhs": "(1 + cos(2*x))/2",
      "display": "cos²x = (1 + cos 2x)/2",
      "plain": "cos^2(t) = (1 + cos(2t))/2",
      "latex": "\\cos^2 x = \\frac{1+\\cos 2x}{2}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "power",
        "square-terms"
      ],
      "rank": 2,
      "whenToUse": "The cosine twin: ∫cos²x dx, RMS values of a wave, and any average of cos² over a whole number of periods (the cosine term integrates to 0 and 1/2 is left).",
      "whyTrue": "Same move on the other cosine form: cos 2x = 2cos²x − 1 gives cos²x = (1 + cos 2x)/2, which is why the sign inside is opposite to the sine version.",
      "commonMistake": "Sign: cos² uses '+ cos 2x' while sin² uses '− cos 2x'. Adding them must give 1, which is a fast self-check.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Rearrange double-angle form 2",
        "intro": "Same algebra, other sign.",
        "steps": [
          {
            "line": "cos 2x = 2cos²x − 1",
            "reason": "Double-angle form 2.",
            "uses": [
              "double-cos-2"
            ]
          },
          {
            "line": "cos 2x + 1 = 2cos²x",
            "reason": "Add 1."
          },
          {
            "line": "cos²x = (1 + cos 2x)/2",
            "reason": "Divide by 2."
          }
        ]
      },
      "derivation": {
        "approach": "Check against the Pythagorean identity",
        "intro": "sin² + cos² from these two formulas must give 1 — the cos 2x terms cancel.",
        "steps": [
          {
            "line": "(1 − cos 2x)/2 + (1 + cos 2x)/2",
            "reason": "Add the two reduction formulas.",
            "uses": [
              "power-sin-2",
              "power-cos-2"
            ]
          },
          {
            "line": "= 2/2 = 1",
            "reason": "Cosine terms cancel — consistent with sin² + cos² = 1.",
            "uses": [
              "pythagorean-1"
            ]
          }
        ]
      },
      "related": [
        "power-sin-2",
        "double-cos-2",
        "prod-cos-cos",
        "power-cos-3"
      ],
      "examples": [
        "ex-integrate-cos-squared"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "power-sin-3",
      "slug": "sin-cubed-power-reducing",
      "name": "Reduction formula for sin³",
      "category": "power-reducing",
      "lhs": "sin(x)**3",
      "rhs": "(3*sin(x) - sin(3*x))/4",
      "display": "sin³x = (3 sin x − sin 3x)/4",
      "plain": "sin^3(t) = (3sin(t) - sin(3t))/4",
      "latex": "\\sin^3 x = \\frac{3\\sin x - \\sin 3x}{4}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "power"
      ],
      "rank": 3,
      "whenToUse": "Cubic powers: an integral of sin³x, or a Fourier-style rewrite. Odd powers reduce to a sum of sines of x, 3x, 5x … with binomial-looking coefficients.",
      "whyTrue": "From sin 3x = 3 sin x − 4 sin³x — which itself comes from the sine sum formula applied to x + 2x — and then solving for sin³x.",
      "commonMistake": "Guessing the coefficient pattern. For sin³ it is (3 sin x − sin 3x)/4; for cos³ it is (3 cos x + cos 3x)/4 — the signs differ between the two.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Expand sin 3x, then solve",
        "intro": "The triple-angle formula is a sine sum with 3x = x + 2x.",
        "steps": [
          {
            "line": "sin 3x = sin(x + 2x)",
            "reason": "Rewrite the angle."
          },
          {
            "line": "= sin x cos 2x + cos x sin 2x",
            "reason": "Sine of a sum.",
            "uses": [
              "sum-sin"
            ]
          },
          {
            "line": "= sin x(1 − 2sin²x) + cos x(2 sin x cos x)",
            "reason": "Both double-angle forms.",
            "uses": [
              "double-cos-3",
              "double-sin"
            ]
          },
          {
            "line": "= 3 sin x − 4 sin³x",
            "reason": "Collect, using cos²x = 1 − sin²x.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "sin³x = (3 sin x − sin 3x)/4",
            "reason": "Solve for sin³x."
          }
        ]
      },
      "derivation": {
        "approach": "Odd powers keep the same shape",
        "intro": "Every odd power of sine reduces to a sum of sines of odd multiples of x. The pattern is worth knowing even if you re-derive the coefficients.",
        "steps": [
          {
            "line": "sin¹: sin x",
            "reason": "Base case."
          },
          {
            "line": "sin³: (3 sin x − sin 3x)/4",
            "reason": "This identity."
          },
          {
            "line": "sin⁵: (10 sin x − 5 sin 3x + sin 5x)/16",
            "reason": "Next step of the same pattern — re-derive rather than memorise."
          }
        ]
      },
      "related": [
        "power-cos-3",
        "power-sin-2",
        "double-sin",
        "sum-sin"
      ],
      "examples": [
        "ex-integrate-sin-cubed"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    },
    {
      "id": "power-cos-3",
      "slug": "cos-cubed-power-reducing",
      "name": "Reduction formula for cos³",
      "category": "power-reducing",
      "lhs": "cos(x)**3",
      "rhs": "(3*cos(x) + cos(3*x))/4",
      "display": "cos³x = (3 cos x + cos 3x)/4",
      "plain": "cos^3(t) = (3cos(t) + cos(3t))/4",
      "latex": "\\cos^3 x = \\frac{3\\cos x + \\cos 3x}{4}",
      "conditions": [],
      "constraint": "free-angle",
      "triggers": [
        "power"
      ],
      "rank": 4,
      "whenToUse": "Cubic cosine — the sign is '+' here where the sine version is '−'. Used in integrals of cos³x and when analysing the third harmonic.",
      "whyTrue": "From cos 3x = 4cos³x − 3cos x (triple-angle formula) and solving for cos³x.",
      "commonMistake": "Copying the sine version's minus sign. Check at x = 0: cos³0 = 1 and (3 + 1)/4 = 1 ✓ — the plus sign is forced.",
      "usedFor": [
        "integrate",
        "simplify"
      ],
      "proof": {
        "approach": "Expand cos 3x, then solve",
        "intro": "Same route as the sine case with the cosine sum formula.",
        "steps": [
          {
            "line": "cos 3x = cos(x + 2x)",
            "reason": "Rewrite."
          },
          {
            "line": "= cos x cos 2x − sin x sin 2x",
            "reason": "Cosine of a sum.",
            "uses": [
              "sum-cos"
            ]
          },
          {
            "line": "= cos x(2cos²x − 1) − sin x(2 sin x cos x)",
            "reason": "Double-angle forms 2 and 1.",
            "uses": [
              "double-cos-2",
              "double-cos-1"
            ]
          },
          {
            "line": "= 4cos³x − 3cos x",
            "reason": "Collect, replacing sin²x with 1 − cos²x.",
            "uses": [
              "pythagorean-1"
            ]
          },
          {
            "line": "cos³x = (3 cos x + cos 3x)/4",
            "reason": "Solve."
          }
        ]
      },
      "derivation": {
        "approach": "Derive it at x = 0 sanity check",
        "intro": "If you cannot remember the sign, test the formula at x = 0 where all three cosines are known.",
        "steps": [
          {
            "line": "Left at x = 0: 1",
            "reason": "cos 0 = 1."
          },
          {
            "line": "(3 + 1)/4 = 1",
            "reason": "Plus sign works."
          },
          {
            "line": "(3 − 1)/4 = 1/2",
            "reason": "Minus sign does not."
          }
        ]
      },
      "related": [
        "power-sin-3",
        "power-cos-2",
        "double-cos-1"
      ],
      "examples": [
        "ex-integrate-cos-cubed"
      ],
      "source": "OpenStax Precalculus, Ch. 7.3 · Paul's Online Math Notes",
      "revised": "2026-09-26"
    }
  ]
}
