constructor
α : Program
ℓ ℓ' : TP α
⊢ ℓ = ℓ' ↔ ∀ τ ∈ (testsOfProgram α).attach, ℓ τ = ℓ' τ
case mp
α : Program
ℓ ℓ' : TP α
⊢ ℓ = ℓ' → ∀ τ ∈ (testsOfProgram α).attach, ℓ τ = ℓ' τ

case mpr
α : Program
ℓ ℓ' : TP α
⊢ (∀ τ ∈ (testsOfProgram α).attach, ℓ τ = ℓ' τ) → ℓ = ℓ'