Metamath Proof Explorer


Theorem uspgredg2v

Description: In a simple pseudograph, the mapping of edges having a fixed endpoint to the "other" vertex of the edge (which may be the fixed vertex itself in the case of a loop) is a one-to-one function into the set of vertices. (Contributed by Alexander van der Vekens, 4-Jan-2018) (Revised by AV, 6-Dec-2020)

Ref Expression
Hypotheses uspgredg2v.v 𝑉 = ( Vtx ‘ 𝐺 )
uspgredg2v.e 𝐸 = ( Edg ‘ 𝐺 )
uspgredg2v.a 𝐴 = { 𝑒𝐸𝑁𝑒 }
uspgredg2v.f 𝐹 = ( 𝑦𝐴 ↦ ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) )
Assertion uspgredg2v ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) → 𝐹 : 𝐴1-1𝑉 )

Proof

Step Hyp Ref Expression
1 uspgredg2v.v 𝑉 = ( Vtx ‘ 𝐺 )
2 uspgredg2v.e 𝐸 = ( Edg ‘ 𝐺 )
3 uspgredg2v.a 𝐴 = { 𝑒𝐸𝑁𝑒 }
4 uspgredg2v.f 𝐹 = ( 𝑦𝐴 ↦ ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) )
5 1 2 3 uspgredg2vlem ( ( 𝐺 ∈ USPGraph ∧ 𝑦𝐴 ) → ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) ∈ 𝑉 )
6 5 ralrimiva ( 𝐺 ∈ USPGraph → ∀ 𝑦𝐴 ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) ∈ 𝑉 )
7 6 adantr ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) → ∀ 𝑦𝐴 ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) ∈ 𝑉 )
8 preq2 ( 𝑧 = 𝑛 → { 𝑁 , 𝑧 } = { 𝑁 , 𝑛 } )
9 8 eqeq2d ( 𝑧 = 𝑛 → ( 𝑦 = { 𝑁 , 𝑧 } ↔ 𝑦 = { 𝑁 , 𝑛 } ) )
10 9 cbvriotavw ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑛𝑉 𝑦 = { 𝑁 , 𝑛 } )
11 8 eqeq2d ( 𝑧 = 𝑛 → ( 𝑥 = { 𝑁 , 𝑧 } ↔ 𝑥 = { 𝑁 , 𝑛 } ) )
12 11 cbvriotavw ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) = ( 𝑛𝑉 𝑥 = { 𝑁 , 𝑛 } )
13 simpl ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) → 𝐺 ∈ USPGraph )
14 eleq2w ( 𝑒 = 𝑦 → ( 𝑁𝑒𝑁𝑦 ) )
15 14 3 elrab2 ( 𝑦𝐴 ↔ ( 𝑦𝐸𝑁𝑦 ) )
16 2 eleq2i ( 𝑦𝐸𝑦 ∈ ( Edg ‘ 𝐺 ) )
17 16 biimpi ( 𝑦𝐸𝑦 ∈ ( Edg ‘ 𝐺 ) )
18 17 anim1i ( ( 𝑦𝐸𝑁𝑦 ) → ( 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) )
19 15 18 sylbi ( 𝑦𝐴 → ( 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) )
20 19 adantr ( ( 𝑦𝐴𝑥𝐴 ) → ( 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) )
21 13 20 anim12i ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ( 𝐺 ∈ USPGraph ∧ ( 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) ) )
22 3anass ( ( 𝐺 ∈ USPGraph ∧ 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) ↔ ( 𝐺 ∈ USPGraph ∧ ( 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) ) )
23 21 22 sylibr ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ( 𝐺 ∈ USPGraph ∧ 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) )
24 uspgredg2vtxeu ( ( 𝐺 ∈ USPGraph ∧ 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) → ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑦 = { 𝑁 , 𝑛 } )
25 reueq1 ( 𝑉 = ( Vtx ‘ 𝐺 ) → ( ∃! 𝑛𝑉 𝑦 = { 𝑁 , 𝑛 } ↔ ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑦 = { 𝑁 , 𝑛 } ) )
26 1 25 ax-mp ( ∃! 𝑛𝑉 𝑦 = { 𝑁 , 𝑛 } ↔ ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑦 = { 𝑁 , 𝑛 } )
27 24 26 sylibr ( ( 𝐺 ∈ USPGraph ∧ 𝑦 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑦 ) → ∃! 𝑛𝑉 𝑦 = { 𝑁 , 𝑛 } )
28 23 27 syl ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ∃! 𝑛𝑉 𝑦 = { 𝑁 , 𝑛 } )
29 eleq2w ( 𝑒 = 𝑥 → ( 𝑁𝑒𝑁𝑥 ) )
30 29 3 elrab2 ( 𝑥𝐴 ↔ ( 𝑥𝐸𝑁𝑥 ) )
31 2 eleq2i ( 𝑥𝐸𝑥 ∈ ( Edg ‘ 𝐺 ) )
32 31 biimpi ( 𝑥𝐸𝑥 ∈ ( Edg ‘ 𝐺 ) )
33 32 anim1i ( ( 𝑥𝐸𝑁𝑥 ) → ( 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) )
34 30 33 sylbi ( 𝑥𝐴 → ( 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) )
35 34 adantl ( ( 𝑦𝐴𝑥𝐴 ) → ( 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) )
36 13 35 anim12i ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ( 𝐺 ∈ USPGraph ∧ ( 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) ) )
37 3anass ( ( 𝐺 ∈ USPGraph ∧ 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) ↔ ( 𝐺 ∈ USPGraph ∧ ( 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) ) )
38 36 37 sylibr ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ( 𝐺 ∈ USPGraph ∧ 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) )
39 uspgredg2vtxeu ( ( 𝐺 ∈ USPGraph ∧ 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) → ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑥 = { 𝑁 , 𝑛 } )
40 reueq1 ( 𝑉 = ( Vtx ‘ 𝐺 ) → ( ∃! 𝑛𝑉 𝑥 = { 𝑁 , 𝑛 } ↔ ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑥 = { 𝑁 , 𝑛 } ) )
41 1 40 ax-mp ( ∃! 𝑛𝑉 𝑥 = { 𝑁 , 𝑛 } ↔ ∃! 𝑛 ∈ ( Vtx ‘ 𝐺 ) 𝑥 = { 𝑁 , 𝑛 } )
42 39 41 sylibr ( ( 𝐺 ∈ USPGraph ∧ 𝑥 ∈ ( Edg ‘ 𝐺 ) ∧ 𝑁𝑥 ) → ∃! 𝑛𝑉 𝑥 = { 𝑁 , 𝑛 } )
43 38 42 syl ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ∃! 𝑛𝑉 𝑥 = { 𝑁 , 𝑛 } )
44 10 12 28 43 riotaeqimp ( ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) ∧ ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) ) → 𝑦 = 𝑥 )
45 44 ex ( ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) ∧ ( 𝑦𝐴𝑥𝐴 ) ) → ( ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) → 𝑦 = 𝑥 ) )
46 45 ralrimivva ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) → ∀ 𝑦𝐴𝑥𝐴 ( ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) → 𝑦 = 𝑥 ) )
47 eqeq1 ( 𝑦 = 𝑥 → ( 𝑦 = { 𝑁 , 𝑧 } ↔ 𝑥 = { 𝑁 , 𝑧 } ) )
48 47 riotabidv ( 𝑦 = 𝑥 → ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) )
49 4 48 f1mpt ( 𝐹 : 𝐴1-1𝑉 ↔ ( ∀ 𝑦𝐴 ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) ∈ 𝑉 ∧ ∀ 𝑦𝐴𝑥𝐴 ( ( 𝑧𝑉 𝑦 = { 𝑁 , 𝑧 } ) = ( 𝑧𝑉 𝑥 = { 𝑁 , 𝑧 } ) → 𝑦 = 𝑥 ) ) )
50 7 46 49 sylanbrc ( ( 𝐺 ∈ USPGraph ∧ 𝑁𝑉 ) → 𝐹 : 𝐴1-1𝑉 )