Metamath Proof Explorer


Theorem structcnvcnv

Description: Two ways to express the relational part of a structure. (Contributed by Mario Carneiro, 29-Aug-2015)

Ref Expression
Assertion structcnvcnv ( 𝐹 Struct 𝑋 𝐹 = ( 𝐹 ∖ { ∅ } ) )

Proof

Step Hyp Ref Expression
1 0nelxp ¬ ∅ ∈ ( V × V )
2 cnvcnv 𝐹 = ( 𝐹 ∩ ( V × V ) )
3 inss2 ( 𝐹 ∩ ( V × V ) ) ⊆ ( V × V )
4 2 3 eqsstri 𝐹 ⊆ ( V × V )
5 4 sseli ( ∅ ∈ 𝐹 → ∅ ∈ ( V × V ) )
6 1 5 mto ¬ ∅ ∈ 𝐹
7 disjsn ( ( 𝐹 ∩ { ∅ } ) = ∅ ↔ ¬ ∅ ∈ 𝐹 )
8 6 7 mpbir ( 𝐹 ∩ { ∅ } ) = ∅
9 cnvcnvss 𝐹𝐹
10 reldisj ( 𝐹𝐹 → ( ( 𝐹 ∩ { ∅ } ) = ∅ ↔ 𝐹 ⊆ ( 𝐹 ∖ { ∅ } ) ) )
11 9 10 ax-mp ( ( 𝐹 ∩ { ∅ } ) = ∅ ↔ 𝐹 ⊆ ( 𝐹 ∖ { ∅ } ) )
12 8 11 mpbi 𝐹 ⊆ ( 𝐹 ∖ { ∅ } )
13 12 a1i ( 𝐹 Struct 𝑋 𝐹 ⊆ ( 𝐹 ∖ { ∅ } ) )
14 structn0fun ( 𝐹 Struct 𝑋 → Fun ( 𝐹 ∖ { ∅ } ) )
15 funrel ( Fun ( 𝐹 ∖ { ∅ } ) → Rel ( 𝐹 ∖ { ∅ } ) )
16 14 15 syl ( 𝐹 Struct 𝑋 → Rel ( 𝐹 ∖ { ∅ } ) )
17 dfrel2 ( Rel ( 𝐹 ∖ { ∅ } ) ↔ ( 𝐹 ∖ { ∅ } ) = ( 𝐹 ∖ { ∅ } ) )
18 16 17 sylib ( 𝐹 Struct 𝑋 ( 𝐹 ∖ { ∅ } ) = ( 𝐹 ∖ { ∅ } ) )
19 difss ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹
20 cnvss ( ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹 ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹 )
21 cnvss ( ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹 ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹 )
22 19 20 21 mp2b ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹
23 18 22 eqsstrrdi ( 𝐹 Struct 𝑋 → ( 𝐹 ∖ { ∅ } ) ⊆ 𝐹 )
24 13 23 eqssd ( 𝐹 Struct 𝑋 𝐹 = ( 𝐹 ∖ { ∅ } ) )