Metamath Proof Explorer


Theorem strle1

Description: Make a structure from a singleton. (Contributed by Mario Carneiro, 29-Aug-2015)

Ref Expression
Hypotheses strle1.i 𝐼 ∈ ℕ
strle1.a 𝐴 = 𝐼
Assertion strle1 { ⟨ 𝐴 , 𝑋 ⟩ } Struct ⟨ 𝐼 , 𝐼

Proof

Step Hyp Ref Expression
1 strle1.i 𝐼 ∈ ℕ
2 strle1.a 𝐴 = 𝐼
3 1 nnrei 𝐼 ∈ ℝ
4 3 leidi 𝐼𝐼
5 1 1 4 3pm3.2i ( 𝐼 ∈ ℕ ∧ 𝐼 ∈ ℕ ∧ 𝐼𝐼 )
6 difss ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) ⊆ { ⟨ 𝐴 , 𝑋 ⟩ }
7 2 1 eqeltri 𝐴 ∈ ℕ
8 funsng ( ( 𝐴 ∈ ℕ ∧ 𝑋 ∈ V ) → Fun { ⟨ 𝐴 , 𝑋 ⟩ } )
9 7 8 mpan ( 𝑋 ∈ V → Fun { ⟨ 𝐴 , 𝑋 ⟩ } )
10 funss ( ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) ⊆ { ⟨ 𝐴 , 𝑋 ⟩ } → ( Fun { ⟨ 𝐴 , 𝑋 ⟩ } → Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) ) )
11 6 9 10 mpsyl ( 𝑋 ∈ V → Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) )
12 fun0 Fun ∅
13 opprc2 ( ¬ 𝑋 ∈ V → ⟨ 𝐴 , 𝑋 ⟩ = ∅ )
14 13 sneqd ( ¬ 𝑋 ∈ V → { ⟨ 𝐴 , 𝑋 ⟩ } = { ∅ } )
15 14 difeq1d ( ¬ 𝑋 ∈ V → ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) = ( { ∅ } ∖ { ∅ } ) )
16 difid ( { ∅ } ∖ { ∅ } ) = ∅
17 15 16 eqtrdi ( ¬ 𝑋 ∈ V → ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) = ∅ )
18 17 funeqd ( ¬ 𝑋 ∈ V → ( Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) ↔ Fun ∅ ) )
19 12 18 mpbiri ( ¬ 𝑋 ∈ V → Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) )
20 11 19 pm2.61i Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } )
21 dmsnopss dom { ⟨ 𝐴 , 𝑋 ⟩ } ⊆ { 𝐴 }
22 2 sneqi { 𝐴 } = { 𝐼 }
23 1 nnzi 𝐼 ∈ ℤ
24 fzsn ( 𝐼 ∈ ℤ → ( 𝐼 ... 𝐼 ) = { 𝐼 } )
25 23 24 ax-mp ( 𝐼 ... 𝐼 ) = { 𝐼 }
26 22 25 eqtr4i { 𝐴 } = ( 𝐼 ... 𝐼 )
27 21 26 sseqtri dom { ⟨ 𝐴 , 𝑋 ⟩ } ⊆ ( 𝐼 ... 𝐼 )
28 isstruct ( { ⟨ 𝐴 , 𝑋 ⟩ } Struct ⟨ 𝐼 , 𝐼 ⟩ ↔ ( ( 𝐼 ∈ ℕ ∧ 𝐼 ∈ ℕ ∧ 𝐼𝐼 ) ∧ Fun ( { ⟨ 𝐴 , 𝑋 ⟩ } ∖ { ∅ } ) ∧ dom { ⟨ 𝐴 , 𝑋 ⟩ } ⊆ ( 𝐼 ... 𝐼 ) ) )
29 5 20 27 28 mpbir3an { ⟨ 𝐴 , 𝑋 ⟩ } Struct ⟨ 𝐼 , 𝐼