Metamath Proof Explorer


Theorem prproropf1olem1

Description: Lemma 1 for prproropf1o . (Contributed by AV, 12-Mar-2023)

Ref Expression
Hypotheses prproropf1o.o 𝑂 = ( 𝑅 ∩ ( 𝑉 × 𝑉 ) )
prproropf1o.p 𝑃 = { 𝑝 ∈ 𝒫 𝑉 ∣ ( ♯ ‘ 𝑝 ) = 2 }
Assertion prproropf1olem1 ( ( 𝑅 Or 𝑉𝑊𝑂 ) → { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝑃 )

Proof

Step Hyp Ref Expression
1 prproropf1o.o 𝑂 = ( 𝑅 ∩ ( 𝑉 × 𝑉 ) )
2 prproropf1o.p 𝑃 = { 𝑝 ∈ 𝒫 𝑉 ∣ ( ♯ ‘ 𝑝 ) = 2 }
3 1 prproropf1olem0 ( 𝑊𝑂 ↔ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) )
4 simpr2 ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) )
5 prelpwi ( ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) → { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝒫 𝑉 )
6 4 5 syl ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝒫 𝑉 )
7 sopo ( 𝑅 Or 𝑉𝑅 Po 𝑉 )
8 7 adantr ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → 𝑅 Po 𝑉 )
9 simpr3 ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) )
10 po2ne ( ( 𝑅 Po 𝑉 ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) → ( 1st𝑊 ) ≠ ( 2nd𝑊 ) )
11 8 4 9 10 syl3anc ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → ( 1st𝑊 ) ≠ ( 2nd𝑊 ) )
12 fvex ( 1st𝑊 ) ∈ V
13 fvex ( 2nd𝑊 ) ∈ V
14 hashprg ( ( ( 1st𝑊 ) ∈ V ∧ ( 2nd𝑊 ) ∈ V ) → ( ( 1st𝑊 ) ≠ ( 2nd𝑊 ) ↔ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 ) )
15 12 13 14 mp2an ( ( 1st𝑊 ) ≠ ( 2nd𝑊 ) ↔ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 )
16 11 15 sylib ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 )
17 6 16 jca ( ( 𝑅 Or 𝑉 ∧ ( 𝑊 = ⟨ ( 1st𝑊 ) , ( 2nd𝑊 ) ⟩ ∧ ( ( 1st𝑊 ) ∈ 𝑉 ∧ ( 2nd𝑊 ) ∈ 𝑉 ) ∧ ( 1st𝑊 ) 𝑅 ( 2nd𝑊 ) ) ) → ( { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝒫 𝑉 ∧ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 ) )
18 3 17 sylan2b ( ( 𝑅 Or 𝑉𝑊𝑂 ) → ( { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝒫 𝑉 ∧ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 ) )
19 fveqeq2 ( 𝑝 = { ( 1st𝑊 ) , ( 2nd𝑊 ) } → ( ( ♯ ‘ 𝑝 ) = 2 ↔ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 ) )
20 19 2 elrab2 ( { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝑃 ↔ ( { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝒫 𝑉 ∧ ( ♯ ‘ { ( 1st𝑊 ) , ( 2nd𝑊 ) } ) = 2 ) )
21 18 20 sylibr ( ( 𝑅 Or 𝑉𝑊𝑂 ) → { ( 1st𝑊 ) , ( 2nd𝑊 ) } ∈ 𝑃 )