Erasing an element from a contraction #
Given a Wick contraction WickContraction n.succ
and a i : Fin n.succ
the
Wick contraction associated with n
obtained by removing i
.
If i
is contracted with j
in the new Wick contraction j
will be uncontracted.
Equations
- c.erase i = ⟨Finset.filter (fun (x : Finset (Fin n)) => Finset.map i.succAboveEmb x ∈ ↑c) Finset.univ, ⋯⟩
Instances For
theorem
WickContraction.mem_erase_uncontracted_iff
{n : ℕ}
(c : WickContraction n.succ)
(i : Fin n.succ)
(j : Fin n)
:
theorem
WickContraction.mem_not_eq_erase_of_isNone
{n : ℕ}
{a : Finset (Fin n.succ)}
(c : WickContraction n.succ)
(i : Fin n.succ)
(h : (c.getDual? i).isNone = true)
(ha : a ∈ ↑c)
:
∃ a' ∈ ↑(c.erase i), a = Finset.map i.succAboveEmb a'
Given a Wick contraction c : WickContraction n.succ
and a i : Fin n.succ
the (optional)
element of (erase c i).uncontracted
which comes from the element in c
contracted
with i
.
Equations
- c_2.getDualErase i_2 = none
- c_2.getDualErase i_2 = if hj : (c_2.getDual? i_2).isSome = true then some ⟨PhysLean.Fin.predAboveI i_2 ((c_2.getDual? i_2).get hj), ⋯⟩ else none
Instances For
@[simp]