Metamath Proof Explorer


Theorem frgrregorufr0

Description: In a friendship graph there are either no vertices having degree K , or all vertices have degree K for any (nonnegative integer) K , unless there is a universal friend. This corresponds to claim 2 in Huneke p. 2: "... all vertices have degree k, unless there is a universal friend." (Contributed by Alexander van der Vekens, 1-Jan-2018) (Revised by AV, 11-May-2021) (Proof shortened by AV, 3-Jan-2022)

Ref Expression
Hypotheses frgrregorufr0.v 𝑉 = ( Vtx ‘ 𝐺 )
frgrregorufr0.e 𝐸 = ( Edg ‘ 𝐺 )
frgrregorufr0.d 𝐷 = ( VtxDeg ‘ 𝐺 )
Assertion frgrregorufr0 ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )

Proof

Step Hyp Ref Expression
1 frgrregorufr0.v 𝑉 = ( Vtx ‘ 𝐺 )
2 frgrregorufr0.e 𝐸 = ( Edg ‘ 𝐺 )
3 frgrregorufr0.d 𝐷 = ( VtxDeg ‘ 𝐺 )
4 fveqeq2 ( 𝑥 = 𝑦 → ( ( 𝐷𝑥 ) = 𝐾 ↔ ( 𝐷𝑦 ) = 𝐾 ) )
5 4 cbvrabv { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = { 𝑦𝑉 ∣ ( 𝐷𝑦 ) = 𝐾 }
6 eqid ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } )
7 1 3 5 6 frgrwopreg ( 𝐺 ∈ FriendGraph → ( ( ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 ∨ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ ) ∨ ( ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 ∨ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ∅ ) ) )
8 1 3 5 6 2 frgrwopreg1 ( ( 𝐺 ∈ FriendGraph ∧ ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 ) → ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 )
9 8 3mix3d ( ( 𝐺 ∈ FriendGraph ∧ ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 ) → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )
10 9 expcom ( ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
11 fveqeq2 ( 𝑥 = 𝑣 → ( ( 𝐷𝑥 ) = 𝐾 ↔ ( 𝐷𝑣 ) = 𝐾 ) )
12 11 cbvrabv { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = { 𝑣𝑉 ∣ ( 𝐷𝑣 ) = 𝐾 }
13 12 eqeq1i ( { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ ↔ { 𝑣𝑉 ∣ ( 𝐷𝑣 ) = 𝐾 } = ∅ )
14 rabeq0 ( { 𝑣𝑉 ∣ ( 𝐷𝑣 ) = 𝐾 } = ∅ ↔ ∀ 𝑣𝑉 ¬ ( 𝐷𝑣 ) = 𝐾 )
15 13 14 bitri ( { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ ↔ ∀ 𝑣𝑉 ¬ ( 𝐷𝑣 ) = 𝐾 )
16 neqne ( ¬ ( 𝐷𝑣 ) = 𝐾 → ( 𝐷𝑣 ) ≠ 𝐾 )
17 16 ralimi ( ∀ 𝑣𝑉 ¬ ( 𝐷𝑣 ) = 𝐾 → ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 )
18 17 3mix2d ( ∀ 𝑣𝑉 ¬ ( 𝐷𝑣 ) = 𝐾 → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )
19 18 a1d ( ∀ 𝑣𝑉 ¬ ( 𝐷𝑣 ) = 𝐾 → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
20 15 19 sylbi ( { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
21 10 20 jaoi ( ( ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 ∨ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ ) → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
22 1 3 5 6 2 frgrwopreg2 ( ( 𝐺 ∈ FriendGraph ∧ ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 ) → ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 )
23 22 3mix3d ( ( 𝐺 ∈ FriendGraph ∧ ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 ) → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )
24 23 expcom ( ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
25 difrab0eq ( ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ∅ ↔ 𝑉 = { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } )
26 12 eqeq2i ( 𝑉 = { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ↔ 𝑉 = { 𝑣𝑉 ∣ ( 𝐷𝑣 ) = 𝐾 } )
27 rabid2 ( 𝑉 = { 𝑣𝑉 ∣ ( 𝐷𝑣 ) = 𝐾 } ↔ ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 )
28 26 27 bitri ( 𝑉 = { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ↔ ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 )
29 3mix1 ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )
30 29 a1d ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
31 28 30 sylbi ( 𝑉 = { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
32 25 31 sylbi ( ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ∅ → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
33 24 32 jaoi ( ( ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 ∨ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ∅ ) → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
34 21 33 jaoi ( ( ( ( ♯ ‘ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = 1 ∨ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } = ∅ ) ∨ ( ( ♯ ‘ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) ) = 1 ∨ ( 𝑉 ∖ { 𝑥𝑉 ∣ ( 𝐷𝑥 ) = 𝐾 } ) = ∅ ) ) → ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) ) )
35 7 34 mpcom ( 𝐺 ∈ FriendGraph → ( ∀ 𝑣𝑉 ( 𝐷𝑣 ) = 𝐾 ∨ ∀ 𝑣𝑉 ( 𝐷𝑣 ) ≠ 𝐾 ∨ ∃ 𝑣𝑉𝑤 ∈ ( 𝑉 ∖ { 𝑣 } ) { 𝑣 , 𝑤 } ∈ 𝐸 ) )