Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  setsstruct2 Structured version   Visualization version   GIF version

Theorem setsstruct2 16520
 Description: An extensible structure with a replaced slot is an extensible structure. (Contributed by AV, 14-Nov-2021.)
Assertion
Ref Expression
setsstruct2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌)

Proof of Theorem setsstruct2
StepHypRef Expression
1 isstruct2 16492 . . . . . . 7 (𝐺 Struct 𝑋 ↔ (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)))
2 elin 3897 . . . . . . . . 9 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ↔ (𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)))
3 elxp6 7712 . . . . . . . . . . 11 (𝑋 ∈ (ℕ × ℕ) ↔ (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)))
4 eleq1 2877 . . . . . . . . . . . . 13 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
54adantr 484 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
6 simp3 1135 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
7 simp1l 1194 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (1st𝑋) ∈ ℕ)
86, 7ifcld 4470 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℕ)
98nnred 11647 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℝ)
106nnred 11647 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℝ)
11 simp1r 1195 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (2nd𝑋) ∈ ℕ)
1211, 6ifcld 4470 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℕ)
1312nnred 11647 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℝ)
14 nnre 11639 . . . . . . . . . . . . . . . . . . . . . 22 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℝ)
1514adantr 484 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (1st𝑋) ∈ ℝ)
16 nnre 11639 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℝ)
1715, 16anim12i 615 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
18173adant2 1128 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
1918ancomd 465 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ))
20 min1 12577 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
2119, 20syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
22 nnre 11639 . . . . . . . . . . . . . . . . . . . . . 22 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℝ)
2322adantl 485 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (2nd𝑋) ∈ ℝ)
2423, 16anim12i 615 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
25243adant2 1128 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
2625ancomd 465 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ))
27 max1 12573 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
2826, 27syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
299, 10, 13, 21, 28letrd 10793 . . . . . . . . . . . . . . . 16 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
30 df-br 5032 . . . . . . . . . . . . . . . 16 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ↔ ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
3129, 30sylib 221 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
328, 12opelxpd 5558 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ (ℕ × ℕ))
3331, 32elind 4121 . . . . . . . . . . . . . 14 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
34333exp 1116 . . . . . . . . . . . . 13 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3534adantl 485 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
365, 35sylbid 243 . . . . . . . . . . 11 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
373, 36sylbi 220 . . . . . . . . . 10 (𝑋 ∈ (ℕ × ℕ) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3837impcom 411 . . . . . . . . 9 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
392, 38sylbi 220 . . . . . . . 8 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
40393ad2ant1 1130 . . . . . . 7 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
411, 40sylbi 220 . . . . . 6 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
4241imp 410 . . . . 5 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
43423adant2 1128 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
44 structex 16493 . . . . . . 7 (𝐺 Struct 𝑋𝐺 ∈ V)
45 structn0fun 16494 . . . . . . 7 (𝐺 Struct 𝑋 → Fun (𝐺 ∖ {∅}))
4644, 45jca 515 . . . . . 6 (𝐺 Struct 𝑋 → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
47463ad2ant1 1130 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
48 simp3 1135 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
49 simp2 1134 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐸𝑉)
50 setsfun0 16518 . . . . 5 (((𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})) ∧ (𝐼 ∈ ℕ ∧ 𝐸𝑉)) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
5147, 48, 49, 50syl12anc 835 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
52443ad2ant1 1130 . . . . . 6 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐺 ∈ V)
53 setsdm 16516 . . . . . 6 ((𝐺 ∈ V ∧ 𝐸𝑉) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
5452, 49, 53syl2anc 587 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
55 fveq2 6650 . . . . . . . . . . . . . . . . 17 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = (...‘⟨(1st𝑋), (2nd𝑋)⟩))
56 df-ov 7143 . . . . . . . . . . . . . . . . 17 ((1st𝑋)...(2nd𝑋)) = (...‘⟨(1st𝑋), (2nd𝑋)⟩)
5755, 56eqtr4di 2851 . . . . . . . . . . . . . . . 16 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = ((1st𝑋)...(2nd𝑋)))
5857sseq2d 3947 . . . . . . . . . . . . . . 15 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
5958adantr 484 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
60 df-3an 1086 . . . . . . . . . . . . . . . . . 18 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) ↔ (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ))
61 nnz 11999 . . . . . . . . . . . . . . . . . . . . 21 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℤ)
62 nnz 11999 . . . . . . . . . . . . . . . . . . . . 21 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℤ)
63 nnz 11999 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℤ)
6461, 62, 633anim123i 1148 . . . . . . . . . . . . . . . . . . . 20 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ))
65 ssfzunsnext 12954 . . . . . . . . . . . . . . . . . . . . 21 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)))
66 df-ov 7143 . . . . . . . . . . . . . . . . . . . . 21 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)) = (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
6765, 66sseqtrdi 3965 . . . . . . . . . . . . . . . . . . . 20 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6864, 67sylan2 595 . . . . . . . . . . . . . . . . . . 19 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6968ex 416 . . . . . . . . . . . . . . . . . 18 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7060, 69syl5bir 246 . . . . . . . . . . . . . . . . 17 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7170expd 419 . . . . . . . . . . . . . . . 16 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7271com12 32 . . . . . . . . . . . . . . 15 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7372adantl 485 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7459, 73sylbid 243 . . . . . . . . . . . . 13 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
753, 74sylbi 220 . . . . . . . . . . . 12 (𝑋 ∈ (ℕ × ℕ) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7675adantl 485 . . . . . . . . . . 11 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
772, 76sylbi 220 . . . . . . . . . 10 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7877imp 410 . . . . . . . . 9 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
79783adant2 1128 . . . . . . . 8 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
801, 79sylbi 220 . . . . . . 7 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8180imp 410 . . . . . 6 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
82813adant2 1128 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8354, 82eqsstrd 3953 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
84 isstruct2 16492 . . . 4 ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ↔ (⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}) ∧ dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8543, 51, 83, 84syl3anbrc 1340 . . 3 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
8685adantr 484 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
87 breq2 5035 . . 3 (𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8887adantl 485 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8986, 88mpbird 260 1 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌)
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 209   ∧ wa 399   ∧ w3a 1084   = wceq 1538   ∈ wcel 2111  Vcvv 3441   ∖ cdif 3878   ∪ cun 3879   ∩ cin 3880   ⊆ wss 3881  ∅c0 4243  ifcif 4425  {csn 4525  ⟨cop 4531   class class class wbr 5031   × cxp 5518  dom cdm 5520  Fun wfun 6321  ‘cfv 6327  (class class class)co 7140  1st c1st 7676  2nd c2nd 7677  ℝcr 10532   ≤ cle 10672  ℕcn 11632  ℤcz 11976  ...cfz 12892   Struct cstr 16478   sSet csts 16480 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-sep 5168  ax-nul 5175  ax-pow 5232  ax-pr 5296  ax-un 7448  ax-cnex 10589  ax-resscn 10590  ax-1cn 10591  ax-icn 10592  ax-addcl 10593  ax-addrcl 10594  ax-mulcl 10595  ax-mulrcl 10596  ax-mulcom 10597  ax-addass 10598  ax-mulass 10599  ax-distr 10600  ax-i2m1 10601  ax-1ne0 10602  ax-1rid 10603  ax-rnegex 10604  ax-rrecex 10605  ax-cnre 10606  ax-pre-lttri 10607  ax-pre-lttrn 10608  ax-pre-ltadd 10609  ax-pre-mulgt0 10610 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-nel 3092  df-ral 3111  df-rex 3112  df-reu 3113  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4802  df-int 4840  df-iun 4884  df-br 5032  df-opab 5094  df-mpt 5112  df-tr 5138  df-id 5426  df-eprel 5431  df-po 5439  df-so 5440  df-fr 5479  df-we 5481  df-xp 5526  df-rel 5527  df-cnv 5528  df-co 5529  df-dm 5530  df-rn 5531  df-res 5532  df-ima 5533  df-pred 6119  df-ord 6165  df-on 6166  df-lim 6167  df-suc 6168  df-iota 6286  df-fun 6329  df-fn 6330  df-f 6331  df-f1 6332  df-fo 6333  df-f1o 6334  df-fv 6335  df-riota 7098  df-ov 7143  df-oprab 7144  df-mpo 7145  df-om 7568  df-1st 7678  df-2nd 7679  df-wrecs 7937  df-recs 7998  df-rdg 8036  df-1o 8092  df-oadd 8096  df-er 8279  df-en 8500  df-dom 8501  df-sdom 8502  df-fin 8503  df-pnf 10673  df-mnf 10674  df-xr 10675  df-ltxr 10676  df-le 10677  df-sub 10868  df-neg 10869  df-nn 11633  df-n0 11893  df-z 11977  df-uz 12239  df-fz 12893  df-struct 16484  df-sets 16489 This theorem is referenced by:  setsexstruct2  16521  setsstruct  16522
 Copyright terms: Public domain W3C validator