Skip to content
entropy logo

Entropy

entropy

Problem-solving strategies for entropy in information theory

SKILL.md

Full skill instructions

Entropy

When to Use

Use this skill when working on entropy problems in information theory.

Decision Tree

  1. Shannon Entropy

    • H(X) = -sum p(x) log2 p(x)
    • Maximum for uniform distribution: H_max = log2(n)
    • Minimum = 0 for deterministic (one outcome certain)
    • scipy.stats.entropy(p, base=2) for discrete
  2. Entropy Properties

    • Non-negative: H(X) >= 0
    • Concave in p
    • Chain rule: H(X,Y) = H(X) + H(Y|X)
    • z3_solve.py prove "entropy_nonnegative"
  3. Joint and Conditional Entropy

    • H(X,Y) = -sum sum p(x,y) log2 p(x,y)
    • H(Y|X) = H(X,Y) - H(X)
    • H(Y|X) <= H(Y) with equality iff independent
  4. Differential Entropy (Continuous)

    • h(X) = -integral f(x) log f(x) dx
    • Can be negative!
    • Gaussian: h(X) = 0.5 * log2(2pie*sigma^2)
    • sympy_compute.py integrate "-f(x)*log(f(x))" --var x
  5. Maximum Entropy Principle

    • Given constraints, max entropy distribution is least biased
    • Uniform for no constraints
    • Exponential for E[X] = mu constraint
    • Gaussian for E[X], Var[X] constraints

Tool Commands

Scipy_Entropy

uv run python -c "from scipy.stats import entropy; p = [0.25, 0.25, 0.25, 0.25]; H = entropy(p, base=2); print('Entropy:', H, 'bits')"

Scipy_Kl_Div

uv run python -c "from scipy.stats import entropy; p = [0.5, 0.5]; q = [0.9, 0.1]; kl = entropy(p, q); print('KL divergence:', kl)"

Sympy_Entropy

uv run python -m runtime.harness scripts/​sympy_compute.py simplify "-p*log(p, 2) - (1-p)*log(1-p, 2)"

Key Techniques

From indexed textbooks:

  • [Elements of Information Theory] Elements of Information Theory -- Thomas M_ Cover & Joy A_ Thomas -- 2_, Auflage, New York, NY, 2012 -- Wiley-Interscience -- 9780470303153 -- 2fcfe3e8a16b3aeefeaf9429fcf9a513 -- Anna’s Archive. What is the channel capacity of this channel? This is the multiple-access channel solved by Liao and Ahlswede.

Cognitive Tools Reference

See .claude/​skills/​math-mode/​SKILL.md for full tool documentation.