obtain (rfl | hxa) := eq_or_ne x a
case refine_3
α✝ : Type u_1
β✝ : Type u_2
r s✝ s₁ s₂ : Set α✝
t t' t₁ t₂ : Set β✝
f✝¹ : α✝ → β✝
α : Type u_3
β : Type u_4
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f✝ : α → β
a✝ : α
b✝ : β
f : α → β
s : Set α
a : α
b : β
h : InjOn f (s \ {a}) ∧ (a ∈ s → ∀ x ∈ s, f x = b → x = a)
x : α
hx : x ∈ s
y : α
hy : y ∈ s
hxy : update f a b x = update f a b y
⊢ x = y
case refine_3.inl
α✝ : Type u_1
β✝ : Type u_2
r s✝ s₁ s₂ : Set α✝
t t' t₁ t₂ : Set β✝
f✝¹ : α✝ → β✝
α : Type u_3
β : Type u_4
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f✝ : α → β
a : α
b✝ : β
f : α → β
s : Set α
b : β
x : α
hx : x ∈ s
y : α
hy : y ∈ s
h : InjOn f (s \ {x}) ∧ (x ∈ s → ∀ x_1 ∈ s, f x_1 = b → x_1 = x)
hxy : update f x b x = update f x b y
⊢ x = y

case refine_3.inr
α✝ : Type u_1
β✝ : Type u_2
r s✝ s₁ s₂ : Set α✝
t t' t₁ t₂ : Set β✝
f✝¹ : α✝ → β✝
α : Type u_3
β : Type u_4
inst✝¹ : DecidableEq α
inst✝ : DecidableEq β
f✝ : α → β
a✝ : α
b✝ : β
f : α → β
s : Set α
a : α
b : β
h : InjOn f (s \ {a}) ∧ (a ∈ s → ∀ x ∈ s, f x = b → x = a)
x : α
hx : x ∈ s
y : α
hy : y ∈ s
hxy : update f a b x = update f a b y
hxa : x ≠ a
⊢ x = y