Metamath Proof Explorer


Theorem funop1

Description: A function is an ordered pair iff it is a singleton of an ordered pair. (Contributed by AV, 20-Sep-2020) (Avoid depending on this detail.)

Ref Expression
Assertion funop1 ( ∃ 𝑥𝑦 𝐹 = ⟨ 𝑥 , 𝑦 ⟩ → ( Fun 𝐹 ↔ ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ) )

Proof

Step Hyp Ref Expression
1 opeq12 ( ( 𝑥 = 𝑣𝑦 = 𝑤 ) → ⟨ 𝑥 , 𝑦 ⟩ = ⟨ 𝑣 , 𝑤 ⟩ )
2 1 eqeq2d ( ( 𝑥 = 𝑣𝑦 = 𝑤 ) → ( 𝐹 = ⟨ 𝑥 , 𝑦 ⟩ ↔ 𝐹 = ⟨ 𝑣 , 𝑤 ⟩ ) )
3 2 cbvex2vw ( ∃ 𝑥𝑦 𝐹 = ⟨ 𝑥 , 𝑦 ⟩ ↔ ∃ 𝑣𝑤 𝐹 = ⟨ 𝑣 , 𝑤 ⟩ )
4 vex 𝑣 ∈ V
5 vex 𝑤 ∈ V
6 4 5 funopsn ( ( Fun 𝐹𝐹 = ⟨ 𝑣 , 𝑤 ⟩ ) → ∃ 𝑎 ( 𝑣 = { 𝑎 } ∧ 𝐹 = { ⟨ 𝑎 , 𝑎 ⟩ } ) )
7 vex 𝑎 ∈ V
8 opeq12 ( ( 𝑥 = 𝑎𝑦 = 𝑎 ) → ⟨ 𝑥 , 𝑦 ⟩ = ⟨ 𝑎 , 𝑎 ⟩ )
9 8 sneqd ( ( 𝑥 = 𝑎𝑦 = 𝑎 ) → { ⟨ 𝑥 , 𝑦 ⟩ } = { ⟨ 𝑎 , 𝑎 ⟩ } )
10 9 eqeq2d ( ( 𝑥 = 𝑎𝑦 = 𝑎 ) → ( 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ↔ 𝐹 = { ⟨ 𝑎 , 𝑎 ⟩ } ) )
11 7 7 10 spc2ev ( 𝐹 = { ⟨ 𝑎 , 𝑎 ⟩ } → ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } )
12 11 adantl ( ( 𝑣 = { 𝑎 } ∧ 𝐹 = { ⟨ 𝑎 , 𝑎 ⟩ } ) → ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } )
13 12 exlimiv ( ∃ 𝑎 ( 𝑣 = { 𝑎 } ∧ 𝐹 = { ⟨ 𝑎 , 𝑎 ⟩ } ) → ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } )
14 6 13 syl ( ( Fun 𝐹𝐹 = ⟨ 𝑣 , 𝑤 ⟩ ) → ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } )
15 14 expcom ( 𝐹 = ⟨ 𝑣 , 𝑤 ⟩ → ( Fun 𝐹 → ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ) )
16 vex 𝑥 ∈ V
17 vex 𝑦 ∈ V
18 16 17 funsn Fun { ⟨ 𝑥 , 𝑦 ⟩ }
19 funeq ( 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } → ( Fun 𝐹 ↔ Fun { ⟨ 𝑥 , 𝑦 ⟩ } ) )
20 18 19 mpbiri ( 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } → Fun 𝐹 )
21 20 exlimivv ( ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } → Fun 𝐹 )
22 15 21 impbid1 ( 𝐹 = ⟨ 𝑣 , 𝑤 ⟩ → ( Fun 𝐹 ↔ ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ) )
23 22 exlimivv ( ∃ 𝑣𝑤 𝐹 = ⟨ 𝑣 , 𝑤 ⟩ → ( Fun 𝐹 ↔ ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ) )
24 3 23 sylbi ( ∃ 𝑥𝑦 𝐹 = ⟨ 𝑥 , 𝑦 ⟩ → ( Fun 𝐹 ↔ ∃ 𝑥𝑦 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ } ) )