feat: make informal_definition and informal_lemma commands (#300)

* make informal_definition and informal_lemma commands
* drop the fields "math", "physics", and "proof" from InformalDefinition/InformalLemma and use docstrings instead
* render informal docstring in dependency graph
This commit is contained in:
KUO-TSAN HSU (Gordon) 2025-02-02 03:17:17 +08:00 committed by GitHub
parent 6aab0ba3cd
commit f8f94979ab
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
33 changed files with 666 additions and 1089 deletions

View file

@ -80,15 +80,19 @@ lemma tensorNode_coBispinorDown (p : complexCo) :
-/
informal_lemma contrBispinorUp_eq_metric_contr_contrBispinorDown where
math :≈ "{contrBispinorUp p | α β = εL | α α' ⊗ εR | β β'⊗ contrBispinorDown p | α' β' }ᵀ"
proof :≈ "Expand `contrBispinorDown` and use fact that metrics contract to the identity."
deps :≈ [``contrBispinorUp, ``contrBispinorDown, ``leftMetric, ``rightMetric]
/-- `{contrBispinorUp p | α β = εL | α α' ⊗ εR | β β'⊗ contrBispinorDown p | α' β' }ᵀ`.
Proof: expand `contrBispinorDown` and use fact that metrics contract to the identity.
-/
informal_lemma contrBispinorUp_eq_metric_contr_contrBispinorDown where
deps := [``contrBispinorUp, ``contrBispinorDown, ``leftMetric, ``rightMetric]
/-- `{coBispinorUp p | α β = εL | α α' ⊗ εR | β β'⊗ coBispinorDown p | α' β' }ᵀ`.
proof: expand `coBispinorDown` and use fact that metrics contract to the identity.
-/
informal_lemma coBispinorUp_eq_metric_contr_coBispinorDown where
math :≈ "{coBispinorUp p | α β = εL | α α' ⊗ εR | β β'⊗ coBispinorDown p | α' β' }ᵀ"
proof :≈ "Expand `coBispinorDown` and use fact that metrics contract to the identity."
deps :≈ [``coBispinorUp, ``coBispinorDown, ``leftMetric, ``rightMetric]
deps := [``coBispinorUp, ``coBispinorDown, ``leftMetric, ``rightMetric]
lemma contrBispinorDown_expand (p : complexContr) :
{contrBispinorDown p | α β}ᵀ.tensor =

View file

@ -31,29 +31,29 @@ namespace complexLorentzTensor
-/
/-- The covariant metric is symmetric `{η' | μ ν = η' | ν μ}ᵀ`. -/
informal_lemma coMetric_symm where
math :≈ "The covariant metric is symmetric {η' | μ ν = η' | ν μ}ᵀ"
deps :≈ [``coMetric]
deps := [``coMetric]
/-- The contravariant metric is symmetric `{η | μ ν = η | ν μ}ᵀ`. -/
informal_lemma contrMetric_symm where
math :≈ "The contravariant metric is symmetric {η | μ ν = η | ν μ}ᵀ"
deps :≈ [``contrMetric]
deps := [``contrMetric]
/-- The left metric is antisymmetric `{εL | α α' = - εL | α' α}ᵀ`. -/
informal_lemma leftMetric_antisymm where
math :≈ "The left metric is antisymmetric {εL | α α' = - εL | α' α}ᵀ"
deps :≈ [``leftMetric]
deps := [``leftMetric]
/-- The right metric is antisymmetric `{εR | β β' = - εR | β' β}ᵀ`. -/
informal_lemma rightMetric_antisymm where
math :≈ "The right metric is antisymmetric {εR | β β' = - εR | β' β}ᵀ"
deps :≈ [``rightMetric]
deps := [``rightMetric]
/-- The alt-left metric is antisymmetric `{εL' | α α' = - εL' | α' α}ᵀ`. -/
informal_lemma altLeftMetric_antisymm where
math :≈ "The alt-left metric is antisymmetric {εL' | α α' = - εL' | α' α}ᵀ"
deps :≈ [``altLeftMetric]
deps := [``altLeftMetric]
/-- The alt-right metric is antisymmetric `{εR' | β β' = - εR' | β' β}ᵀ`. -/
informal_lemma altRightMetric_antisymm where
math :≈ "The alt-right metric is antisymmetric {εR' | β β' = - εR' | β' β}ᵀ"
deps :≈ [``altRightMetric]
deps := [``altRightMetric]
/-!
@ -61,35 +61,41 @@ informal_lemma altRightMetric_antisymm where
-/
/-- The contraction of the covariant metric with the contravariant metric is the unit
`{η' | μ ρ ⊗ η | ρ ν = δ' | μ ν}ᵀ`.
-/
informal_lemma coMetric_contr_contrMetric where
math :≈ "The contraction of the covariant metric with the contravariant metric is the unit
{η' | μ ρ ⊗ η | ρ ν = δ' | μ ν}ᵀ"
deps :≈ [``coMetric, ``contrMetric, ``coContrUnit]
deps := [``coMetric, ``contrMetric, ``coContrUnit]
/-- The contraction of the contravariant metric with the covariant metric is the unit
`{η | μ ρ ⊗ η' | ρ ν = δ | μ ν}ᵀ`.
-/
informal_lemma contrMetric_contr_coMetric where
math :≈ "The contraction of the contravariant metric with the covariant metric is the unit
{η | μ ρ ⊗ η' | ρ ν = δ | μ ν}ᵀ"
deps :≈ [``contrMetric, ``coMetric, ``contrCoUnit]
deps := [``contrMetric, ``coMetric, ``contrCoUnit]
/-- The contraction of the left metric with the alt-left metric is the unit
`{εL | α β ⊗ εL' | β γ = δL | α γ}ᵀ`.
-/
informal_lemma leftMetric_contr_altLeftMetric where
math :≈ "The contraction of the left metric with the alt-left metric is the unit
{εL | α β ⊗ εL' | β γ = δL | α γ}ᵀ"
deps :≈ [``leftMetric, ``altLeftMetric, ``leftAltLeftUnit]
deps := [``leftMetric, ``altLeftMetric, ``leftAltLeftUnit]
/-- The contraction of the right metric with the alt-right metric is the unit
`{εR | α β ⊗ εR' | β γ = δR | α γ}ᵀ`.
-/
informal_lemma rightMetric_contr_altRightMetric where
math :≈ "The contraction of the right metric with the alt-right metric is the unit
{εR | α β ⊗ εR' | β γ = δR | α γ}ᵀ"
deps :≈ [``rightMetric, ``altRightMetric, ``rightAltRightUnit]
deps := [``rightMetric, ``altRightMetric, ``rightAltRightUnit]
/-- The contraction of the alt-left metric with the left metric is the unit
`{εL' | α β ⊗ εL | β γ = δL' | α γ}ᵀ`.
-/
informal_lemma altLeftMetric_contr_leftMetric where
math :≈ "The contraction of the alt-left metric with the left metric is the unit
{εL' | α β ⊗ εL | β γ = δL' | α γ}ᵀ"
deps :≈ [``altLeftMetric, ``leftMetric, ``altLeftLeftUnit]
deps := [``altLeftMetric, ``leftMetric, ``altLeftLeftUnit]
/-- The contraction of the alt-right metric with the right metric is the unit
`{εR' | α β ⊗ εR | β γ = δR' | α γ}ᵀ`.
-/
informal_lemma altRightMetric_contr_rightMetric where
math :≈ "The contraction of the alt-right metric with the right metric is the unit
{εR' | α β ⊗ εR | β γ = δR' | α γ}ᵀ"
deps :≈ [``altRightMetric, ``rightMetric, ``altRightRightUnit]
deps := [``altRightMetric, ``rightMetric, ``altRightRightUnit]
/-!

View file

@ -31,32 +31,32 @@ namespace complexLorentzTensor
-/
/-- Swapping indices of `coContrUnit` returns `contrCoUnit`: `{δ' | μ ν = δ | ν μ}ᵀ`. -/
informal_lemma coContrUnit_symm where
math :≈ "Swapping indices of coContrUnit returns contrCoUnit, i.e. {δ' | μ ν = δ | ν μ}.ᵀ"
deps :≈ [``coContrUnit, ``contrCoUnit]
deps := [``coContrUnit, ``contrCoUnit]
/-- Swapping indices of `contrCoUnit` returns `coContrUnit`: `{δ | μ ν = δ' | ν μ}ᵀ`. -/
informal_lemma contrCoUnit_symm where
math :≈ "Swapping indices of contrCoUnit returns coContrUnit, i.e. {δ | μ ν = δ' | ν μ}ᵀ"
deps :≈ [``contrCoUnit, ``coContrUnit]
deps := [``contrCoUnit, ``coContrUnit]
/-- Swapping indices of `altLeftLeftUnit` returns `leftAltLeftUnit`: `{δL' | α α' = δL | α' α}ᵀ`. -/
informal_lemma altLeftLeftUnit_symm where
math :≈ "Swapping indices of altLeftLeftUnit returns leftAltLeftUnit, i.e.
{δL' | α α' = δL | α' α}ᵀ"
deps :≈ [``altLeftLeftUnit, ``leftAltLeftUnit]
deps := [``altLeftLeftUnit, ``leftAltLeftUnit]
/-- Swapping indices of `leftAltLeftUnit` returns `altLeftLeftUnit`: `{δL | α α' = δL' | α' α}ᵀ`. -/
informal_lemma leftAltLeftUnit_symm where
math :≈ "Swapping indices of leftAltLeftUnit returns altLeftLeftUnit, i.e.
{δL | α α' = δL' | α' α}ᵀ"
deps :≈ [``leftAltLeftUnit, ``altLeftLeftUnit]
deps := [``leftAltLeftUnit, ``altLeftLeftUnit]
/-- Swapping indices of `altRightRightUnit` returns `rightAltRightUnit`:
`{δR' | β β' = δR | β' β}ᵀ`.
-/
informal_lemma altRightRightUnit_symm where
math :≈ "Swapping indices of altRightRightUnit returns rightAltRightUnit, i.e.
{δR' | β β' = δR | β' β}ᵀ"
deps :≈ [``altRightRightUnit, ``rightAltRightUnit]
deps := [``altRightRightUnit, ``rightAltRightUnit]
/-- Swapping indices of `rightAltRightUnit` returns `altRightRightUnit`:
`{δR | β β' = δR' | β' β}ᵀ`.
-/
informal_lemma rightAltRightUnit_symm where
math :≈ "Swapping indices of rightAltRightUnit returns altRightRightUnit, i.e.
{δR | β β' = δR' | β' β}ᵀ"
deps :≈ [``rightAltRightUnit, ``altRightRightUnit]
deps := [``rightAltRightUnit, ``altRightRightUnit]
end complexLorentzTensor