Equivalence extracting element from contraction #
The equivalence between WickContraction n.succ and the sigma type
(c : WickContraction n) × Option c.uncontracted formed by inserting
and erasing elements from a contraction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fintype instance of WickContraction 0 defined through its single
element empty.
Equations
- WickContraction.fintype_zero = { elems := {WickContraction.empty}, complete := WickContraction.fintype_zero._proof_1 }
The fintype instance of WickContraction n, for n.succ this is defined
through the equivalence extractEquiv.
For n = 3 there are 4 possible Wick contractions:
∅, corresponding to the case where no fields are contracted.{{0, 1}}, corresponding to the case where the field at position0and1are contracted.{{0, 2}}, corresponding to the case where the field at position0and2are contracted.{{1, 2}}, corresponding to the case where the field at position1and2are contracted.
The proof of this result uses the fact that Lean is an executable programming language
and can calculate all Wick contractions for a given n.
For n = 4 there are 10 possible Wick contractions including e.g.
∅, corresponding to the case where no fields are contracted.{{0, 1}, {2, 3}}, corresponding to the case where the fields at position0and1are contracted, and the fields at position2and3are contracted.{{0, 2}, {1, 3}}, corresponding to the case where the fields at position0and2are contracted, and the fields at position1and3are contracted.
The proof of this result uses the fact that Lean is an executable programming language
and can calculate all Wick contractions for a given n.