-- File: optlib/Optlib/Algorithm/ADMM/Lemma.lean
Theorem statement:
theorem extracted_formal_statement_70.{u_4} {E : Type u_4} [inst : NormedAddCommGroup E] (p q r : Set E) ⦃x : E⦄ (px : E)
  (hpx : px ∈ p) (py : E) (h1 : px + py = x) (qy : E) (hqy : qy ∈ q) (rz : E) (hrz : rz ∈ r) (h2 : qy + rz = py) :
  px + qy + rz = px + (qy + rz) := sorry

Tactic state before:
case right
E : Type u_4
inst✝ : NormedAddCommGroup E
p q r : Set E
x px : E
hpx : px ∈ p
py : E
h1 : px + py = x
qy : E
hqy : qy ∈ q
rz : E
hrz : rz ∈ r
h2 : qy + rz = py
⊢ px + qy + rz = px + (qy + rz)

Tactic: exact add_assoc px qy rz

Tactic state after:

Premises used:
add_assoc : ∀ {G : Type u_1} [inst : AddSemigroup G] (a b c : G), a + b + c = a + (b + c)